Content uploaded by Jose A. Matute
Author content
All content in this area was uploaded by Jose A. Matute on Nov 15, 2018
Content may be subject to copyright.
Longitudinal Model Predictive Control with
Comfortable Speed Planner
Jose A. Matutea,b, Mauricio Marcanoa,b , Asier Zubizarretab, Joshue Pereza
aIndustry and Transport Division, Tecnalia Research & Innovation, San Sebastian, Spain
bAutomatic Control and System Engineering Department, University of the Basque Country, Bilbao, Spain
joseangel.matute@tecnalia.com, mauricio.marcano@tecnalia.com, asier.zubizarreta@ehu.eus, joshue.perez@tecnalia.com
Abstract—Guaranteeing simplicity and safety is a real chal-
lenge of Advanced Driver Assistance Systems (ADAS), being
these aspects necessary for the development of decision and
control stages in highly automated vehicles. Considering that a
human-centered design is generally pursued, exploring comfort
boundaries in passenger vehicles has a significant importance.
This work aims to implement a simple Model Predictive Control
(MPC) for longitudinal maneuvers, considering a bare speed
planner based on the curvature of a predefined geometrical path.
The speed profiles are constrained with a maximum value at
any time, in such way that total accelerations are lower than
specified constraint limits. A double proportional with curvature
bias control was employed as a simple algorithm for lateral
maneuvers. The tests were performed within a realistic simulation
environment with a virtual vehicle model based on a multi-body
formulation. The results of this investigation permits to determine
the capabilities of simplified control algorithms in real scenarios,
and comprehend how to improve them to be more efficient.
Index Terms—Model Predictive Control, Simulation Environ-
ment, Automated Driving.
I. INTRODUCTION
In the path of automated driving an efficient mobility
is a clear purpose of the intelligent transportation industry,
optimizing the use of vehicles and infraestructure to provide
safety and comfort within the driving experience. It has
been determined that passenger perception of comfort is very
subjective and vary due several factors, being the users driving
style pointed as the most important aspect [1]. The magnitude
of comfort is inversely propotional to vehicle’s acceleration
and its relative change (jerk), hence the higher these values
are, the more discomfortable should be the driving [2].
One of the typical requirements in vehicles automation is
the capability to follow specified routes being time effective,
comfortable and considering limits for traveling velocities. The
implementation of a speed planner that consider smoothness
in acceleration and jerk transition in curve paths is a very
useful way to improve comfort. Some strategies have been
employed as Jerk Limitation Method [3] or Quintic Bezier
Curve Method [4]. However these procedures mean additional
efforts that could be avoided using alternative strategies in
longitudinal control algorithms.
Model Predictive Control (MPC) is a concept based on
optimal control theory, where future behaviors of a test
platform can be predicted from its model. A reduced design
Copyright notice: 978-1-5386-5346-6/18/$31.00 2018 IEEE
model with this technique permits to obtain acceptable results,
having the versatility to specify constraints as acceleration
and jerk responses [5]. The present work aims to use a MPC
for longitudinal maneuvers, in order to take advance of its
prediction capacity without complex speed planner calculation.
This paper is organized as follows: Section II present the
control algorithm used for longitudinal control and its relation-
ship with the speed planner proposed. Section III describes the
simulation environment where tests are developed considering
the virtual vehicle used as test platform. Section IV shows the
obtained results followed by a proper discussion. Finally the
Section V summarizes the most important ideas.
II. CONTROL ALGORITHM
The design of control algorithms for path tracking applica-
tions based on passenger comfort is a very useful technique
on intelligent transportation systems. In this section, a novel
approach based on a speed planner, with special attetion in
standarization [2], and the proposed longitudinal MPC control
approach is presented.
Both algorithms are developed under a general automated
framework [6], a six block architecture which includes the
following modules: acquisition, perception, communication,
decision, control and actuation. This framework has been
previously used for different automated vehicle applications
such as path tracking lateral [7], validation of longitudinal
controllers [8] and overtaking maneuvers [9]. This architecture
is suitable for implementing a path tracking controller module
taking into account the passenger comfort.
A. Speed Planner
The speed planner is based in offline and online modules
as shown in Figure 1. Offline module comprises the local map
and static speed planner. The local map stage used in this work
is part of a decision module, where Bezier curves have been
used to generate a soft path along a route including straight
lines, turns and a lane change (Figure 2) [10]. Additionally, the
local map stage calculates the curvature (k) of each segment of
the road as parametric curves [11] delivering this information
along with nlocal map points (x, y)to static speed planner.
The objective of the proposed approach is to assure passen-
ger comfort during autonomous driving. The comfort param-
eter is obtained through a combination of longitudinal (ax),
Fig. 1. Speed Planner Framework
lateral (ay) and vertical (az) accelerations, considering certain
weights (n=nx=ny= 1.4) [2]:
aw=qnx.a2
x+ny.a2
y+a2
z(1)
Numerical values have been assigned to awindicating sev-
eral levels of umcomfortability: 0.315m/s2(Not), 0.63m/s2(a
little), 1.0m/s2(fairly), 1.6m/s2(uncomfortable) and 2.5m/s2
(very). The comfort parameter and maximum speed are related
using the curvature of each road segment defined as k:
Vmax =raw
n.k (2)
According to Equation 2, the speed reference is calculated
based on the curvature of the road limiting the speed to 15
km/h. The speed profile is generated as a function of the
distance traveled dtfrom a starting point (x0, y0). Figure 2
shows the curvature profile of the test scenario. From that
information a speed profile is generated using the Equation 2.
Once the speed profile is obtained (as a 2D vector relating
distance traveled (d)against speed (v)), it is sent to the online
reference generator, which supply the MPC with the longitu-
dinal speed references (see Section 2.B). While the vehicle is
moving it calculates the value of dtby integrating the current
speed, this value is passed to the reference generator along
with the prediction of the longitudinal displacement calculated
by the controller. This allows to calculate the appropriate
speed reference according to the vehicle position and its future
predictions based on distance traveled instead of time.
B. Model Predictive Control
Model Predictive Control approaches are based on the use
of a mathematical representation of the model to predict the
future behavior of a system in a finite time horizon. The
control action is obtained by minimizing a cost function which
can include constraints. The approach depends on a precise
characterization of the system in order to work correctly.
However, real-time implementation is possible, updating the
current state and solving the problem each sample time, thus
allowing the use of an approximated model. With this in mind,
a brief explanation of the control problem is presented.
A real-time implementation allows to work with a triple-
integrator model based on the speed (vl), acceleration (al)
and jerk (jl) of the vehicle seen as a particle in longitudinal
displacement (dl). The representation of the system in the
classical state-space description is shown in Equation 3.
˙
dl
˙vl
˙al
=
010
001
000
dl
vl
al
+
0
0
1
jl(3)
In this model the jerk acts as the control variable, how-
ever interest is over the predicted states of the longitudinal
acceleration which will be the input to the vehicle. Following
classical state space MPC formulation [12], the control law
can be calculated from the minimization of the following cost
function.
J=
Nh
X
s=1
kvl(t+s|t)−vref (t+s|t)k2(4)
Where tis the current time, sis the sample index starting
from time t,Nhis the number of samples of the prediction,
vl(t+s|t)represents sth longitudinal speed prediction calcu-
lated at time t, while vref is the reference speed including its
prediction delivered by the speed planner. Finally the vector
solution ¯
alis found and the command selector choose to
accelerate or decelerate depending on the sign; it also choose
the prediction index to use as control action to the simulated
vehicle. Future speed references of the online module of the
speed planner are calculated based on the past prediction of
the MPC as it can be shown in Figure 3 where the controller
general framework and speed profile generator are detailed.
-15 -10 -5 0 5 10 15
x-coordinate (m)
-50
-40
-30
-20
-10
0
10
20
30
40
50
y-coordinate (m)
Start Point (xo,yo)
0
0.05
0.1
0.15
0.2
0.25
0.3
Fig. 2. Curvatures in predefined circuit
Fig. 3. Model Predictive Control Framework integrated with Speed Planner
Lastly, constraints values of the controllers are fixed for
acceleration and jerk, however the speed constraints are based
on the speed planner predictions. Lrepresents an error allowed
for the solution of the speed vector.
vref (t+s)−L≤vl(t+s|t)≤vref (t+s) + L
amin ≤al(t+s|t)≤amax
jmin ≤jl(t+s|t)≤jmax
(5)
For solving previous constrained optimization problem, the
MPC solver ACADO toolkit [13] is used. It is a self-contained
library based on C++ designed to solve linear and non-linear
models under multi-objective optimization functions.
III. SIMULATION ENVIRONMENT
The developed approach is tested in Dynacar simulation
environment [14]. Dynacar features a vehicle physical model
based on multi-body formulation with a framework integrated
in Matlab-Simulink. The motion of the chassis and wheels are
considered into a model of fourteen degrees of freedom, being
possible for the chassis to translate and rotate in any cartesian
axis, and for each wheel to move in vertical direction and
rotate around its own axis. The suspension system degrees of
freedom are considered as macro-joints and their behavior is
modelled through look-up tables. The position and orientation
of wheels are important to calculate the suspension response,
therefore the values within the tables strongly depend on the
steering input and the roll angle [15].
The vehicle physical model has been designed to provide
each wheel with steering angle, and traction or braking torque,
being this an versatile to users due the possibility to test control
algorithms fitted to a model within a realistic environment. The
physical behavior of tire-ground contact was obtained through
the Magic Formula Tire Model [16].
In the following subsections the powertrain and brake
models implemented will be briefly detailed. The parameters
TABLE I
VIRT UAL VEH IC LE PARAMETERS
Mass (kg) 611.500
CG location x, y, z (m) -0.928, 0.000, 0.488
Wheelbase (m) 1.686
Trackwidth (m) 1.094
Inertia Ix, Iy, Iz (kg-m2)243.175, 430.166, 430.166
Front wheel radius (m) 0.265
Rear wheel radius (m) 0.281
of the virtual vehicle used as simulation testbed in this work
are depicted in Table I.
A. Powertrain model
Fig. 7 shows the simplified powertrain model employed.
A synchronous electric motor, a gearbox and a mechanical
differential are the only elements involved. The drivetrain type
is rear-wheel-drive of locked axle. The model behavior is
linearly dependent of the throttle pedal position (ut) which
goes from 0 to 1.
The selected electric motor can develop 57N-m of constant
traction torque (Te) before surpasing a speed of 220rad/sec,
providing a decreasing torque as the motor speed (ωe) in-
creases up to 785rad/sec. A regenerative braking torque (Tb)
is considered into the model, which delivers 8N-m constantly
Fig. 4. Powertrain model
if the motor speed is higher than 50rad/sec and utis zero.
This estimation was obtained from movement tests at several
speeds. Both traction and regenerative braking characteristics
are typical in this kind of motor [17], [18].
The automatic gearbox has a reduction of 1:9.23 permiting
reverse, neutral and drive positions. The differential changes
the power flow direction in 90 degrees to the rear wheels with
a 1:1 transmission ratio. Compact equations for traction (Ta)
and regenerative breaking (Tr) torques are shown in Eqs. 6-7.
Ta=TeηgdNg dsign(ut)−((Ie+Ig)N2
gd +IdN2
d)αw(6)
Tr=TbηgdNg d (7)
Where ηgd is the combined efficiency of the driveline, Nd,
Ndand Ngd are the gearbox, differential and combined trans-
mission ratio of the driveline, and Ie,Igand Idare the inertias
of engine, gearbox and differential. The angular acceleration
of the rear wheels (αw) is necessary to calculates the loss of
tractive force due to the inertia of driveline components [19].
B. Brake model
The braking behavior is related with brake pedal position
(ub) that goes from 0 to 1. The model consists of a reduced
single-circuit [20] where the braking torque depends of the
pressure over the braking disc exerted by the wheel cylinder
(Pw) as shown in Fig. 5. As the dynamic of a typical brake
line considers a lag associated to the hydraulic system (τb),
the pressure can be modeled as a discrete transfer function
with a defined time span (ts) as depicted in Eq. 8.
Pw(z)=(Kctsub)/(τbz+ (ts−τb)) (8)
Control valves in brake systems are generally used to adjust
pressure in rear brakes and prevents tires lock. This behavior is
introduced keeping a brake gain (Kbi) constant for rear wheels
when its value exceeds a selected limit. An hyperbolic tangent
function is used to control the orientation of the braking
torque, being this calculation dependent of the wheel speed
(ωw) as can be seen in Eq. 9
Tb=PwKbtanh(ωw)(9)
Fig. 5. Brake model
0
5
10
15
Speed (Km/h)
Reference Speed
Vehicle Speed
-2
0
2
4
Acceleration (m/s 2)
Longitudinal Acc
Lateral Acc
Total Acc
Comfort Constraint
0 20 40 60 80 100 120 140 160 180
Distance (m)
-4
-2
0
2
Jerk (m/s3)
Jerk
Jerk Constraint
Lane Change
Curve 1 Curve 2
Fig. 6. Not uncomfortable Accelerations (0.3m/s2)
IV. TES T AN D RES ULTS
In this section the proposed approach will be tested in
several scenarios, considering the test circuit depicted in
Figure 3. This circuit is suitable to evaluate the performance
of the proposed approach in different urban conditions, such
as straight lines, turns with different radios and lane change.
For the developed tests, the speed profiles are calculated
in such way that total accelerations are lower than specified
constraint limits, going from not uncomfortable (0.315m/s2)
to very uncomfortable (2.5m/s2) level. A permissible speed
error band of 0.1km/h around the speed profile depicted as
Lin Equation 5, accelerations limits of -4m/s2and 1m/s2,
and jerk boundaries of -2m/s3and 2m/s3were considered as
constraints within the MPC. The optimization problem was
solved with a sample time of 1s and 10 total samples.
Two tests were performed in the environment detailed in
Section II for evaluating the performance of the MPC speed
tracker with a speed planner. Test responses for comfort
parameters levels of Not Uncomfortable (aw= 0.3m/s2) and
Very Uncomfortable (aw= 2.5m/s2) are detailed as follows.
In both cases the speed of the vehicle follows the reference.
The MPC anticipates future changes at the entrance and exit
of turns and lane change situation. For Very Uncomfortable
level the lane change does not appears due higher accelerations
are permitted. Some inconsistencies are observed during curve
paths (close to d= 50m and d= 140m), and is because the
vehicle faces turns at high velocity and violent transitions are
needed to follow the speed reference.
0
5
10
15
Speed (Km/h)
Reference Speed
Vehicle Speed
-4
-2
0
2
4
Acceleration (m/s 2)
Longitudinal Acc
Lateral Acc
Total Acc
Comfort Constraint
0 20 40 60 80 100 120 140 160 180
Distance (m)
-4
-2
0
2
4
Jerk (m/s3)
Jerk
Jerk Constraint
Fig. 7. Very Uncomfortable Accelerations (2.5m/s2)
The acceleration component which comprises longitudinal
and lateral values succeeded while the vehicle circulates
through curve paths. For Not Uncomfortable level, some peaks
appear in longitudinal accelerations in order to follow the
speed planner before entrance and after exit of curves, having
this an impact in the level of comfort in total acceleration
value. However, the study is focused to achieve a desirable
comfort level exclusively during turns to adapt the safety user
perception under this circumstance. Peaks of acceleration are
not observed in Very Uncomfortable level because speed does
not need a violent transitions from curves to straight paths.
Jerk values are generally within limits in both comfort level
cases. The solver surpasses jerk constraint in order to achieve
reference speed under very short periods of time, where greater
priority is given to the MPC optimization function.
V. CONCLUSIONS
The results of this investigation permits to determine the
capabilities of simplified control algorithms in real scenarios,
and comprehend how to improve them to be more efficient.
An MPC speed tracker was evaluated and showed a good
performance while working together with an speed planner
based on curvature and comfort of passengers. At different
comfort levels the controller behaves properly and total ac-
celeration in curves were kept close to the reference limit. In
future investigations this simplified MPC will be evaluated and
configurated on real test platforms.
ACKNOWLEDGMENT
Authors want to acknowledge their organization.This project
has received funding from the Electronic Component Systems
for European Leadership Joint Undertaking under grant agree-
ment No 737469 (AutoDrive Project). This Joint Undertaking
receives support from the European Unions Horizon 2020
research and innovation programme and Germany, Austria,
Spain, Italy, Latvia, Belgium, Netherlands, Sweden, Finland,
Lithuania, Czech Republic, Romania, Norway. This work
was developed at Tecnalia Research & Innovation facilities
supporting this research.
REFERENCES
[1] J. Karjanto and N. Yusof, “Comfort determination in autonomous driving
style,” in AutomotiveUI’15, September 2015.
[2] “Mechanical vibration and shock – Evaluation of human exposure
to whole-body vibration – Part 1: General requirements,” standard,
International Organization for Standardization, Geneva, CH, May 1997.
[3] J. Villagra, V. Milans, J. Prez, and J. Godoy, “Smooth path and speed
planning for an automated public transport vehicle,” Robotics and
Autonomous Systems, vol. 60, no. 2, pp. 252 – 265, 2012.
[4] D. Gonzlez, V. Milans, J. Prez, and F. Nashashibi, “Speed profile
generation based on quintic bezier curves for enhanced passenger
comfort,” in 2016 IEEE 19th International Conference on Intelligent
Transportation Systems (ITSC), pp. 814–819, Nov 2016.
[5] F. Borrelli, P. Falcone, T. Keviczky, J. Asgari, and D. Hrovat, “Mpc-
based approach to active steering for autonomous vehicle systems,”
International Journal of Vehicle Autonomous Systems, vol. 3, 2005.
[6] D. Gonz´
alez and J. P´
erez, “Control architecture for cybernetic trans-
portation systems in urban environments,” in Intelligent Vehicles Sym-
posium (IV), 2013 IEEE, pp. 1119–1124, IEEE, 2013.
[7] R. Lattarulo, J. P ´
erez, and M. Dendaluce, “A complete framework
for developing and testing automated driving controllers,” IFAC-
PapersOnLine, vol. 50, no. 1, pp. 258–263, 2017.
[8] M. Marcano, J. A. Matute, R. Lattarulo, E. Martı, and J. P´
erez,
“Low speed longitudinal control algorithms for automated vehicles in
simulation and real platforms,”
[9] R. Lattarulo, M. Marcano, and J. P´
erez, “Overtaking maneuver for auto-
mated driving using virtual environments,” in International Conference
on Computer Aided Systems Theory, pp. 446–453, Springer, 2017.
[10] D. Gonz´
alez, J. P´
erez, R. Lattarulo, V. Milan´
es, and F. Nashashibi,
“Continuous curvature planning with obstacle avoidance capabilities in
urban scenarios,” in Intelligent Transportation Systems (ITSC), 2014
IEEE 17th International Conference on, pp. 1430–1435, IEEE, 2014.
[11] D. G. Bautista, Functional architecture for automated vehicles trajectory
planning in complex environments. PhD thesis, PSL Research University,
2017.
[12] E. F. Camacho and C. B. Alba, Model predictive control. Springer
Science & Business Media, 2013.
[13] B. Houska, H. J. Ferreau, and M. Diehl, “Acado toolkitan open-source
framework for automatic control and dynamic optimization,” Optimal
Control Applications and Methods, vol. 32, no. 3, pp. 298–312, 2011.
[14] I. Iglesias-Aguinaga, A. Martin-Sandi, and A. Pea-Rodriguez, “Vehicle
modelling for real time systems application. the virtual rolling chassis,”
DYNA, vol. 88, no. 2, pp. 206–215, 2013.
[15] J. Cuadrado, D. Vilela, I. Iglesias, A. Martin, and A. Pea, “A multibody
model to assess the effect of automotive motor in-wheel configuration
on vehicle stability and comfort,” ECCOMAS Thematic Conference
Multibody Dynamics 2013, pp. 457–458, 2013.
[16] H. B. Pacejka, “Preface,” in Tyre and Vehicle Dynamics (Second Edition)
(H. B. Pacejka, ed.), pp. v – vii, Oxford: Butterworth-Heinemann, second
edition ed., 2006.
[17] R. N. Jazar, Vehicle Dynamics. Theory and Application. Business Media
New York 2014, Springer Science, 2014.
[18] J. Nadeau, P. Micheau, and M. Boisvert, “Ideal regenerative braking
torque in collaboration with hydraulic brake system,” in 2017 Twelfth
International Conference on Ecological Vehicles and Renewable Ener-
gies (EVER), pp. 1–5, April 2017.
[19] T. Gillespie, Fundamentals of Vehicle Dynamics. Premiere Series Bks,
Society of Automotive Engineers, 1992.
[20] J. C. Gerdes and J. K. Hedrick, “Brake system modeling for simulation
and control,” Journal of Dynamic Systems, Measurement, and Control,
vol. 121, no. 3, pp. 496 – 503, 1999.