Content uploaded by Zhaoxuan Zhu
Author content
All content in this area was uploaded by Zhaoxuan Zhu on Apr 13, 2023
Content may be subject to copyright.
A GPU Implementation of a Look-Ahead Optimal Controller for
Eco-Driving Based on Dynamic Programming
Zhaoxuan Zhu∗, Shobhit Gupta, Nicola Pivaro, Shreshta Rajakumar Deshpande and Marcello Canova
Abstract— Predictive energy management of Connected and
Automated Vehicles (CAVs), in particular those with multiple
power sources, has the potential to significantly improve energy
savings in real-world driving conditions. In particular, the eco-
driving problem seeks to design optimal speed and power usage
profiles based upon available information from connectivity and
advanced mapping features to minimize the fuel consumption
between two designated locations.
In this work, the eco-driving problem is formulated as a
three-state receding horizon optimal control problem and solved
via Dynamic Programming (DP). The optimal solution, in terms
of vehicle speed and battery State of Charge (SoC) trajectories,
allows a connected and automated hybrid electric vehicle to
intelligently pass the signalized intersections and minimize
fuel consumption over a prescribed route. To enable real-time
implementation, a parallel architecture of DP is proposed for
an NVIDIA GPU with CUDA programming. Simulation results
indicate that the proposed optimal controller delivers more
than 15% fuel economy benefits compared to a baseline control
strategy and that the solver time can be reduced by more than
90% by the parallel implementation when compared to a serial
implementation.
I. INTRODUCTION
Connected and Automated Vehicles (CAVs) have the po-
tential to increase safety, driving comfort as well as fuel
economy, by exploiting features such as advanced map-
ping, GPS location, and information available via vehicle-
to-vehicle (V2V) and vehicle-to-infrastructure (V2I) com-
munication [1], [2]. Meanwhile, Hybrid Electric Vehicles
(HEVs) increase the overall powertrain efficiency by includ-
ing battery pack(s) and electric motor(s) as alternative energy
storage and power generation devices [3]. Combining the two
technologies could further improve the fuel economy, how-
ever, poses a greater challenge from the planning&control
perspective.
In this context, finding the optimal powertrain control
strategy that minimizes the total fuel consumption and the
travel time between origin and destination is known in
literature as the eco-driving problem [4]. The contributions
made in this field distinguish among two aspects, namely
powertrain configurations and traffic scenarios. Regarding
powertrain configuration, the difference is in whether the
∗Corresponding author. Email: zhu.1083@osu.edu
The authors are with the Center for Automotive Research, The Ohio State
University, Columbus, OH 43212, USA
This version has been accepted for publication in Proc. European Control
Conference (ECC), 2021. Personal use of this material is permitted. Per-
mission from EUCA must be obtained for all other uses, in any current or
future media, including reprinting/republishing this material for advertising
or promotional purposes, creating new collective works, for resale or
redistribution to servers or lists, or reuse of any copyrighted component
of this work in other works.
powertrain is equipped with a single power source [5], [6],
[7], [8] or features a hybrid architecture [9], [10], [11].
The latter requires a more complex control algorithm, as
the battery State-of-Charge (SoC) needs to be regulated and
utilized efficiently.
The difference in traffic scenarios lies in whether the
controller is capable of processing the real-time Signal Phase
and Timing (SPaT) information at signalized intersections.
Ozatay et al. [5] proposed a framework providing advisory
speed profile using online optimization conducted on a cloud-
based server without considering the real-time traffic light
variability. Olin et al. [10] used Dynamic Programming
(DP) to solve the eco-driving problem. As traffic lights are
not explicitly considered in these studies, the control logic
requires assistance from other decision-making agents, such
as human drivers or adaptive cruise control (ACC) systems.
Other studies have explicitly modeled and considered SPaT,
for example Jin et al. [6] formulated the problem as a Mixed
Integer Linear Programming (MILP) for a conventional ve-
hicle. Asadi et al. [12] used traffic simulation models and
proposed to solve the problem considering probabilistic SPaT
with DP. Sun et al. [8] formulated the eco-driving problem as
a distributionally robust stochastic optimization problem with
collected real-world data and solved it with DP. Guo et al.
[9] proposed a hierarchical control framework with a hybrid
vehicle. Bae [11] extended the work in [8] by including a
heuristic HEV supervisory controller.
Many of the aforementioned studies used DP [13] as the
technique to either solve the optimization within the receding
horizon of a MPC or the entire problem. Unfortunately, the
existing use of DP either focus on enabling the vehicle with
single power source to pass the signalized intersections [12],
[8] or on optimally splitting the power demand between
engine and electrical motor [10] without considering SPaT
information. In [8], two states, namely vehicle speed and
travel time, are included in their DP formulation, whereas in
[10], velocity and SoC are considered as the DP states. Since
the number of DP states is subject to curse of dimensionality
[13], including one extra state often results in intractable
computational requirements, preventing from online imple-
mentation in rapid prototyping control systems.
In this study, the DP formulation proposed in [8] and [10]
are merged to develop an eco-driving control strategy for
HEVs that is also able to optimally cross signalized inter-
sections, given real-time SPaT information. To mitigate the
computational burden from the additional state, an efficient
parallel implementation is developed for a NVIDIA GPU
with CUDA programming.
arXiv:2104.01284v1 [eess.SY] 3 Apr 2021
𝑔𝑒𝑎𝑟
Vehicle
Dynamics
Transmission
(Gear Box)
Engine
BSG
Battery
Transmission Control
Module
Torque
Converter
𝑇
!"#
𝜔$%&
𝑇
$%& 𝑣
𝜔!"#
𝑇'(#
𝑇
)&
𝑇'(#
*!( 𝜔'(#
𝑇
!"#
*!(
𝑃'(#
𝑇
&
𝜔&
Obta ined from the
model (feedback)
𝑙𝑜𝑐𝑘
𝑆𝑂𝐶
Plant Mod el
Fig. 1: Block Diagram of 48V P0 Mild-Hybrid Drivetrain.
II. MOD EL DEVELOPMENT AND VALIDATION
In this work, a forward-looking dynamic powertrain model
is utilized for performance and fuel economy prediction
over real-world routes [10]. The model considers a P0 mild-
HEV with a 48V Belted Starter Generator (BSG) performing
torque assist, regenerative braking and start-stop functions.
As shown in Fig. 1, the inputs to the vehicle dynamics and
powertrain (VD&PT) model are obtained from a simplified
model of the Engine Control Module (ECM), which contains
the essential functions to convert the driver’s input (pedal
position) to torque commands. The outputs of the ECM, the
desired BSG torque (Tdes
bsg ) and desired engine torque (Tdes
eng )
are obtained from a production torque split strategy, which
is used as the baseline for fuel economy evaluation.
The vehicle simulator contains low-frequency dynamic
models of the powertrain and longitudinal vehicle dynamics.
The battery is modeled as a zero-th order equivalent circuit,
from which the battery State-of-Charge (SoC) is calculated;
the vehicle longitudinal dynamics are described by the road
load equation [3]. Low-frequency, quasi-static models are
developed for the engine (fuel and friction maps), BSG,
torque converter and transmission (efficiency maps).
The vehicle model was validated based on chassis dy-
namometer data. Fig. 2 shows a verification over the drive
cycle FTP-75, where the vehicle velocity, battery SoC (ξ)
and fuel consumption are compared against test data. Small
mismatches in the battery SoC profiles are attributed to sim-
plification of the 12V electrical system, where the auxiliary
loads are modeled using a constant current bias. The fuel
consumption over FTP-75 is well predicted, with cumulative
error less than 4%.
III. PROB LEM FO RMU LATIO N AND SOLUTION ME THO DS
The objective of the eco-driving problem, formulated in
the spatial domain, is to minimize the fuel consumed by the
vehicle over an entire route consisting of N steps:
min
Teng,s,Tbsg,s
s=N
X
s=1
(γ·˙mf,s + (1 −γ)) ·∆ts,(1)
where sis the discrete index for the vehicle longitudinal
position, γis the weighing factor between the fuel consump-
tion and the travel time, and ˙mf,s is the instantaneous fuel
consumption. ∆tsis the travel time per step computed as
-10
-5
0
5
10
t [%]
0
10
20
30
Velocity [m/s]
Model
Experimental Data
0 200 400 600 800 1000 1200 1400
Time [s]
0
200
400
600
800
Fuel Consumed [g]
Final Error = 3.746 %
Fig. 2: Validation of Vehicle Velocity, SoC and Fuel Con-
sumed over FTP-75.
follows:
∆ts=∆d
¯vs
,(2)
where ∆dis the distance step, i.e. ∆d=ds+1 −ds,
calculated from dsthe distance traveled along the route, and
¯vs=vs+vs+1
2is the average velocity. The state and action
space are subject to the constraints as described in [10].
A primary benefit of the spatial formulation [14] is that
it inherently aids in the incorporation of distance-based
route features, such as speed limits, grade, traffic light and
stop sign locations. However, the spatial-domain formulation
would make it difficult to incorporate time-based informa-
tion such as SPaT received from V2I communication. This
requires one to augment the state space with time as an
additional state, which will be elaborated later in this section.
Consider a case where a CAV is approaching a signal-
ized intersection and would receive a traffic light phase
(red/green) through V2I communication. To avoid boundary
cases and ensure feasibility, the yellow phase is assumed to
be a part of the green phase if the distance to the traffic
light is close to the critical braking distance as formulated in
[15]. The time remaining in the current phase or transitioning
to the next phase would change as the vehicle approaches
the signalized intersection. In this section, tGR,s and tRG,s
will represent time for a green-red and red-green transition
respectively at position s, as shown in the Fig. 3. In this
work it is assumed that the positions of all the traffic lights
in the route are known a priori from a navigation system,
and contained in the set DTL.
Assume that the discretized state dynamics for the eco-
driving problem has the following form:
xs+1 =fs(xs, us), s = 1,· · · , N −1.(3)
where xs∈ Xs⊆Rpand us∈ Us⊆Rqare the state and
control action, respectively.
Fig. 3: Possible Cases of Traffic Light Phase Encountered
by the Vehicle.
In this work, the state variables are the vehicle velocity
(vs), battery SoC (ξs)and travel time (ts). The control
actions are the engine torque (Teng,s)and BSG torque
(Tbsg,s):
xs= [vs, ξs, ts]T(4a)
us= [Teng,s, Tbsg,s ]T(4b)
The equations describing the state dynamics fs(xs, us)are:
vs+1 =sv2
s+ 2∆d·Ftr,s −Froad,s(vs)
M(5a)
ξs+1 =ξs−∆d
¯vs
·¯
Ibat,s
Cnom
(5b)
ts+1 =(ts+tRG,s , s ∈ DTL and ¯vs= 0
ts+∆d
¯vs, s /∈ DTL
(5c)
where Ftr,s is the tractive force produced by the powertrain
[10]. Froad,s is the road load resistive force, Mis the total
vehicle mass, ¯
Ibat,s is the average current evaluated over a
distance step, Cnom is the nominal battery capacity, tsis
the travel time at a position s. Intuitively, Eqn. (5c) shows
the time is teleported to the end of the red phase when the
vehicle stops at the traffic light.
The eco-driving optimization problem is formulated as
a receding horizon optimal control problem where the full
route of Nsteps is solved over a reduced horizon NH(<<
N). At any given position s= 1, . . . , N −NH, the optimiza-
tion problem is formulated as:
J∗(xs) = min
{µk}s+NH−1
k=s
s+NH−1
X
k=s
c(xk, µk(xk)) + cT(xs+NH),
c(xk, µk(xk)) = (γ·˙mf,k(xk, µk(xk)) + (1 −γ)) ·∆tk
(6)
where µk:X → U is the admissible control policy at the
step kin the prediction horizon, c:X × U → Ris the
stage cost function defined as the weighted average of the
fuel consumption and the travel time, cT:X → Ris the
terminal cost function.
The state space and action space are subject to following
1
1
1
1
1
1
1
0
0
1
1
1
0
0
Fig. 4: Travel Time Constraint at the Signalized Intersection
in a NHHorizon.
constraints: ∀s= 1, . . . , N −NH,∀k=s, . . . , s +NH:
vk∈[vmin
k, vmax
k],(7a)
ξk∈[ξmin
k, ξmax
k],(7b)
tk∈ TG,k,(7c)
ak∈[amin, amax ],(7d)
Teng,k ∈[Tmin
eng (vk), T max
eng (vk)],(7e)
Tbsg,k ∈[Tmin
bsg (vk), T max
bsg (vk)],(7f)
where vmin
s, vmax
sare the minimum and maximum route
speed limits respectively, ξmin
s, ξmax
sare the static limits
applied on battery SoC, TG,s represents the feasible set
on the travel time at the signalized intersection, amin, amax
represent the limits imposed on the acceleration for comfort,
Tmin
eng (vs), T max
eng (vs)are the minimum and maximum engine
torque limits, and Tmin
bsg (vs), T max
bsg (vs)are the minimum
and maximum BSG torque limits, respectively. To ensure
SoC neutrality over the entire itinerary, a terminal constraint
ξ1=ξNis applied to the battery.
Consider a case where a NHhorizon (k=s, . . . , s +
NH−1) comprises of a signalized intersection located at
kTL as shown in Fig. 4. The travel time at the beginning
of the horizon is given by tsand a maximum travel time tf
is imposed at the end of the horizon. tfis chosen such that
the ego vehicle does not impede the traffic flow. This can
be computed as an expectation from multiple historical trips
along the same route [16]. In this work, tfis assumed to
be 80s for a 200m horizon to ensure feasibility. The status
of the traffic light is then sampled into an indicator vector
IG,k of size tf/∆twith each element representing no traffic
light or green phase with 1 and red phase with 0. Note that
∆there is the constant time discretization for sampling. The
feasible set TG,k is then defined as follows:
TG,k =t:ts+ ∆t·z|(IG,k)z= 1, z = 1, ..., tf/∆t,
(8)
where (IG,k)zrepresents the zth element of the vector. The
size of the sampled traffic light status vector is chosen to
be the same as the grid size of the DP solver in the time
dimension, which will be explained in the next section.
Powertrain Model
Battery Model
Fig. 5: Serial DP Architecture
Knowing the driving conditions within the receding hori-
zon, the optimization problem can be solved offline via DP.
Following the nomenclature in [17], the optimal policy µ∗
k,
along with the optimal cost-to-go function Jk:X → R,
∀k=s, . . . , s +N−1can be calculated through backward
recursion as follows:
Js+N(x) = cT(x) + φT(x),(9a)
Fk(x, u) = ck(x, u) + φk(x) + Jk+1(fk(x, u)),(9b)
µ∗
k= argmin
µk
Fk(x, µk(x)),(9c)
Jk(x) = Fk(x, µ∗
k(x)),(9d)
where ckand cTare the discretized stage and terminal
cost function respectively; φkand φTare penalty functions
introduced to ensure that the trajectory stays feasible. In
this paper, an approximate offline solution of a full-route
optimization under partial information is initially obtained
via DP and used as a terminal cost approximation. Other
techniques, such as manual calibration or reinforcement
learning techniques [18], [19] may also be employed. The
benefit of using this method is that it provides the closed-
loop optimal policy that inherently adds robustness against
approximated plant dynamics or other modeling errors [7].
Further, DP can solve highly nonlinear and hybrid problems
while ensuring constraint satisfaction.
IV. ARCHITECTURES FOR DP I MPLEMENTATION
For the eco-driving optimization problem, a serial DP
architecture can be constructed, where each state-action
combination is evaluated in a 5-layer nested loop, as shown
in Fig. 5. The powertrain model takes the current vehicle
speed, the engine torque and the BSG torque as the inputs
and calculates the change in vehicle speed ∆vs, the change
in time ∆ts, BSG power demand Pbat (input to the battery
model) and the stage cost c(xs, µ(xs)). The battery model
takes Pbat and calculates the change in battery SoC ∆ξfor
the nodes in the SoC grid. If an infeasibility is encountered
for a state-action combination, the cost-to-go is set to a value
that is orders of magnitude larger than the stage cost.
To maintain a reasonable accuracy, the grid size is set
to be (nx1, nx2, nx3, nu1, nu2) = (35,26,40,23,30). As
a result, the number of execution of the innermost loop
is on the order of 107for each DP backward recursion
step. Meanwhile, with ∆d= 10m, 20 recursion steps
are required per distance step. Without any parallelization,
GPU(Device)
Kernel 1:Powertrain Model
DP backward recursion:
CPU(Host)
Interact with other modules;
Defineconstraints within prediction horizon;
Kernel 2:Battery Model and Cost-to-go Update
Total number of threads:
Total number of threads:
Constraints
Fig. 6: Parallel DP Architecture
the computational requirement becomes intractable for most
automotive applications.
To mitigate the issue, a parallel architecture is proposed in
this work, and implemented on a NVIDIA GPU with CUDA
C++ programming language. Fig. 6 shows the architecture of
the parallel implementation. With comparable expense and
power consumption, a CPU is faster at performing complex
and long computing sequences thanks to the more resources
dedicated to memory caching and control flow, whereas a
GPU saves more resources on processors that can be run in
parallel [20].
In CUDA programming, CPU and GPU are referred to as
host and device, respectively, while the Kernel is the function
that is launched by the host and executed in parallel by the
device. Each thread represents a sub-process running on GPU
with unique inputs. To have an efficient implementation, the
data transfer frequency between host and device should be
minimized and, in the current framework, such data transfer
occurs only once per DP optimization call.
In the first Kernel, each thread represents a combina-
tion of (vs, Teng,s, Tbsg,s )on the 3D grid and calculates
the corresponding ∆vs,∆ts,Pbat,s and c(xs, us)for the
second Kernel. Each thread launched by the second Kernel
represents a combination of the three states (vs, ξs, ts), and
it loops through the control inputs, determines ∆ξbased on
Pbsg from the first Kernel, and finally determines whether to
update the cost-to-go matrix and the optimal control matrix
following [17]. As Eqn. (9c) requires minimization to find the
optimal control action, the nested loops for control actions
are kept to avoid race conditions.
Route 19
Route 15
Fig. 7: Route 15 and 19 on OpenStreetMap
V. SIMULATION AND EVAL UATI O N OF RE SULTS
In this paper, two real-world routes representing urban
(Route 15) and mixed-urban (Route 19) driving conditions
have been selected for the simulation and analysis. Both
routes are located in Columbus, OH, USA as shown in Fig. 7
[10]. The mixed-urban route is 7km in length and comprises
5 traffic lights and 3 stop signs, while the urban route is
7.5km in length and includes 22 traffic lights and 3 stop
signs.
For the comparison of results, a baseline controller was
considered for the VD&PT model. This controller consists
of a heuristic Enhanced Driver Model (EDM) [15] calibrated
to control the vehicle velocity in such a way that the ego
vehicle is able to follow a lead vehicle (when detected
within a fixed line of sight) and to stop at traffic lights. The
EDM parameters can represent different driver styles and can
be tuned to match a real-world driver [2]. The production
(rule-based) mHEV energy management controller was also
considered in the VD&PT model for the baseline case.
The 3-state DP-based MPC was then integrated into the
vehicle simulator. As indicated above, a terminal cost approx-
imation was obtained by computing a full route optimization
offline via DP and storing the value function [10]. Fig. 8
and Fig. 9 show the comparisons of the trajectories from
the baseline and DP-based MPC controller on urban and
highway driving, respectively. With comparable travel time,
the optimized VD&PT controller is able to reduce the fuel
consumption by 15% and 23%, respectively, by optimizing
the energy stored in battery and planning the speed trajectory
in a way that avoids unnecessary braking events. Note that
the serial and parallel implementation are also compared in
Fig. 8 and Fig. 9. As expected, no differences in the results
are present in the two different implementations.
Table I shows the mean, variance and the maximum values
of the solver time obtained by the serial and the parallel
implementations. To perform a comparison of the computa-
Fig. 8: Comparison of VD&PT State Trajectories and Cu-
mulative Fuel Consumption on Urban Driving (Route 15)
TABLE I: Solver Time Comparison
Route 15 Route 19
Serial Parallel Serial Parallel
Mean (ms) 1600 98 1638 101
Variance (ms2)112 11 287 13
Maximum (ms) 2210 118 2312 123
tion throughput, both implementations were compiled in C++
code. The serial and the parallel implementations were then
executed on a desktop PC with 2.9 GHz Intel Core i7 CPU
and a NVIDIA RTX 2080 GPU, respectively. Besides the
more than 90% reduction in averaged solver time, the parallel
implementation has a lower variance and maximum of the
solver time as well. This is because the serial implementation
has multiple break conditions in the nested loop and these
conditions are dependent on the specific driving scenario
and SPaT sequence encountered during the route. In the
meantime, the parallel implementation goes through all the
possible combinations by parallel threads, and thus is less
subject to the driving conditions. Although both the CPU
and GPU implementations benefit of the improved compu-
tational capabilities than typical rapid prototyping units, the
benefits of utilizing GPU-based parallel computing are very
appealing, especially considering that onboard GPUs are an
indispensable development tool for the control of self-driving
features in autonomous vehicles [21].
Fig. 9: Comparison of VD&PT State Trajectories and Cu-
mulative Fuel Consumption on Mixed Driving (Route 19)
VI. CONCLUSION
In this work, an eco-driving optimization problem was
formulated for a mHEV with V2I communication and lon-
gitudinal automation. The problem was cast as a receding
horizon optimal control problem with three states, namely
vehicle velocity, battery SoC and travel time. A MPC imple-
mentation was then developed and solved using DP. Com-
pared to previous studies where the predictive optimization is
applied to control the vehicle velocity or to perform energy
management of the hybrid powertrain, the work described in
this paper integrates all elements of the eco-driving problem
into a single controller.
To accommodate the increased computational requirement
from inclusion of additional states, a parallel implementation
of DP is developed with CUDA programming on a NVIDIA
GPU. The implementation reduces the computation time by
more than 90% (average, variance, and maximum of the
solver time), compared to the serial counterpart. Simulation
results indicate that the proposed controller decreases the fuel
consumption by more than 15% compared to the baseline
controller, while keeping comparable travel time.
Future work includes the implementation of the algorithm
on rapid-prototyping systems and the study on how to
optimally obtain the terminal cost function.
ACKNOWLEDGMENT
The authors acknowledge the support from the United
States Department of Energy, Advanced Research Projects
Agency – Energy (ARPA-E) NEXTCAR project (Award
Number DE-AR0000794).
REFERENCES
[1] J. Guanetti, Y. Kim, and F. Borrelli, “Control of connected and
automated vehicles: State of the art and future challenges,” Annual
Reviews in Control, vol. 45, pp. 18–40, 2018.
[2] S. Gupta, S. R. Deshpande, D. Tufano, M. Canova, G. Rizzoni,
K. Aggoune, P. Olin, and J. Kirwan, “Estimation of fuel economy on
real-world routes for next-generation connected and automated hybrid
powertrains,” SAE Technical Paper, no. 2020-01-0593, 2020.
[3] L. Guzzella, A. Sciarretta et al.,Vehicle propulsion systems. Springer,
2007, vol. 1.
[4] A. Sciarretta, G. De Nunzio, and L. L. Ojeda, “Optimal ecodriving
control: Energy-efficient driving of road vehicles as an optimal control
problem,” IEEE Control Systems Magazine, vol. 35, no. 5, pp. 71–90,
2015.
[5] E. Ozatay, S. Onori, J. Wollaeger, U. Ozguner, G. Rizzoni, D. Filev,
J. Michelini, and S. Di Cairano, “Cloud-based velocity profile op-
timization for everyday driving: A dynamic-programming-based so-
lution,” IEEE Transactions on Intelligent Transportation Systems,
vol. 15, no. 6, pp. 2491–2505, 2014.
[6] Q. Jin, G. Wu, K. Boriboonsomsin, and M. J. Barth, “Power-based
optimal longitudinal control for a connected eco-driving system,” IEEE
Transactions on Intelligent Transportation Systems, vol. 17, no. 10, pp.
2900–2910, 2016.
[7] J. Han, A. Vahidi, and A. Sciarretta, “Fundamentals of energy efficient
driving for combustion engine and electric vehicles: An optimal
control perspective,” Automatica, vol. 103, pp. 558–572, 2019.
[8] C. Sun, J. Guanetti, F. Borrelli, and S. Moura, “Optimal eco-driving
control of connected and autonomous vehicles through signalized
intersections,” IEEE Internet of Things Journal, 2020.
[9] L. Guo, B. Gao, Y. Gao, and H. Chen, “Optimal energy manage-
ment for hevs in eco-driving applications using bi-level mpc,” IEEE
Transactions on Intelligent Transportation Systems, vol. 18, no. 8, pp.
2153–2162, 2016.
[10] P. Olin, K. Aggoune, L. Tang, K. Confer, J. Kirwan, S. R. Deshpande,
S. Gupta, P. Tulpule, M. Canova, and G. Rizzoni, “Reducing fuel con-
sumption by using information from connected and automated vehicle
modules to optimize propulsion system control,” SAE Technical Paper,
no. 2019-01-1213, 2019.
[11] S. Bae, Y. Choi, Y. Kim, J. Guanetti, F. Borrelli, and S. Moura, “Real-
time ecological velocity planning for plug-in hybrid vehicles with
partial communication to traffic lights,” in 2019 IEEE 58th Conference
on Decision and Control (CDC). IEEE, 2019, pp. 1279–1285.
[12] B. Asadi and A. Vahidi, “Predictive cruise control: Utilizing upcoming
traffic signal information for improving fuel economy and reducing
trip time,” IEEE Transactions on Control Systems Technology, vol. 19,
no. 3, pp. 707–714, 2011.
[13] D. P. Bertsekas, Dynamic programming and optimal control. Athena
scientific Belmont, MA, 2005, vol. 1, no. 3.
[14] B. Saerens, “Optimal control based eco-driving-theoretical approach
and practical applications,” Ph. D. Thesis, Katholieke Universiteit
Leuven, 2012.
[15] S. Gupta, S. R. Deshpande, P. Tulpule, M. Canova, and G. Rizzoni,
“An enhanced driver model for evaluating fuel economy on real-world
routes,” IFAC-PapersOnLine, vol. 52, no. 5, pp. 574–579, 2019.
[16] Y. Jiang and X. Li, “Travel time prediction based on historical
trajectory data,” Annals of GIS, vol. 19, no. 1, pp. 27–35, 2013.
[17] O. Sundstrom and L. Guzzella, “A generic dynamic programming mat-
lab function,” in 2009 IEEE control applications,(CCA) & intelligent
control,(ISIC). IEEE, 2009, pp. 1625–1630.
[18] R. S. Sutton and A. G. Barto, Reinforcement learning: An introduction.
MIT press, 2018.
[19] Z. Zhu, Y. Liu, and M. Canova, “Energy management of hybrid eletric
vehicles via deep q networks,” in 2020 American Control Conference
(ACC). IEEE, 2020.
[20] “CUDA C++ programming guide,” https://docs.nvidia.com/cuda/
cuda-c- programming-guide/index.html, Aug. 2020.
[21] W. Perez, A. Ruhela, and P. Tulpule, “Benchmarking computational
time of dynamic programming for autonomous vehicle powertrain
control,” SAE Technical Paper, no. 2020-01-0968, 2020.