A method for generating an optimal driving profile for vehicles provided with electric propulsion; the method comprising the steps of: - providing input data comprising: a) first data (I1b) relating to characteristics of a pre-established route and comprising at least one arrival point (ATn); b) second data (I1a) relating to characteristics of a vehicle that must travel along said route; c) third data (I1c) indicative of at least one arrival time (On) to be met along said route; - dividing an available time period until said arrival time (On) into a sequence of consecutive time intervals (Δt(k)); - providing accelerations (ajk), in finite number, which the vehicle can hypothetically take in each of said time intervals (Δt(k)); - applying the equations of uniformly accelerated motion for each of said accelerations (ajk) and in the first of said time intervals, so as to calculate respective hypothetical future points, starting from an initial point defined by current position and speed of the vehicle; - repeating the application of the equations of uniformly accelerated motion for each of said accelerations (ajk) and in each of the subsequent time intervals, one after the other, to calculate respective hypothetical future points (P(k)), starting from each point (P(k-1)) which has been determined at the previous time interval, until reaching said arrival point (ATn); - for each of said time intervals (Δt(k)), a) providing one or more predefined constraints and, b) before repeating the application of the equations of uniformly accelerated motion in the subsequent time interval (Δt(k+1)), checking whether the calculated hypothetical future points (P(k)) meet all the predefined constraints; c) if the checking step has a negative outcome, the point (P(k)) being checked is eliminated from the plausible hypotheses; - for each of the remaining points that passed the checking step, calculating the energy consumption (ΔE) required to arrive at the remaining point, starting from the point that generated it; - obtaining a plurality of possible driving profiles, each defined by a respective sequence of remaining points, concatenated one with the other, up to the arrival point (ATn); - summing up said energy consumptions (ΔE) for each of said possible driving profiles, so as to determine a corresponding overall energy required to reach the arrival point (ATn); - selecting, from among said driving profiles, the one having the lowest overall energy. - providing input data comprising: a) first data (I1b) relating to characteristics of a pre-established route and comprising at least one arrival point (ATn); b) second data (I1a) relating to characteristics of a vehicle that must travel along said route; c) third data (I1c) indicative of at least one arrival time (On) to be met along said route; a) first data (I1b) relating to characteristics of a pre-established route and comprising at least one arrival point (ATn); b) second data (I1a) relating to characteristics of a vehicle that must travel along said route; c) third data (I1c) indicative of at least one arrival time (On) to be met along said route; - dividing an available time period until said arrival time (On) into a sequence of consecutive time intervals (Δt(k)); - providing accelerations (ajk), in finite number, which the vehicle can hypothetically take in each of said time intervals (Δt(k)); - applying the equations of uniformly accelerated motion for each of said accelerations (ajk) and in the first of said time intervals, so as to calculate respective hypothetical future points, starting from an initial point defined by current position and speed of the vehicle; - repeating the application of the equations of uniformly accelerated motion for each of said accelerations (ajk) and in each of the subsequent time intervals, one after the other, to calculate respective hypothetical future points (P(k)), starting from each point (P(k-1)) which has been determined at the previous time interval, until reaching said arrival point (ATn); - for each of said time intervals (Δt(k)), a) providing one or more predefined constraints and, b) before repeating the application of the equations of uniformly accelerated motion in the subsequent time interval (Δt(k+1)), checking whether the calculated hypothetical future points (P(k)) meet all the predefined constraints; c) if the checking step has a negative outcome, the point (P(k)) being checked is eliminated from the plausible hypotheses; a) providing one or more predefined constraints and, b) before repeating the application of the equations of uniformly accelerated motion in the subsequent time interval (Δt(k+1)), checking whether the calculated hypothetical future points (P(k)) meet all the predefined constraints; c) if the checking step has a negative outcome, the point (P(k)) being checked is eliminated from the plausible hypotheses; - for each of the remaining points that passed the checking step, calculating the energy consumption (ΔE) required to arrive at the remaining point, starting from the point that generated it; - obtaining a plurality of possible driving profiles, each defined by a respective sequence of remaining points, concatenated one with the other, up to the arrival point (ATn); - summing up said energy consumptions (ΔE) for each of said possible driving profiles, so as to determine a corresponding overall energy required to reach the arrival point (ATn); - selecting, from among said driving profiles, the one having the lowest overall energy.