You are on page 1of 20

Non-linear Model Predictive Control

for Autonomous Vehicles


Muhammad Awais Abbas
Supervisor: Prof. Mikael Eklund
Co-Supervisor: Prof. Ruth Milman
TexPoint fonts used in EMF.
Read the TexPoint manual before you delete this box.: A
Presentation Outline
Autonomous Vehicles: Introduction
Autonomous Vehicle Framework
Vehicle Model
Model Validation
Gradient Descent Algorithm
Cost Function Formulation
Simulation Results
Obstacle Avoidance Tests
Real-Time Analysis
Reference Trajectory Criterion
Conclusion
Autonomous Vehicles: Introduction
Capable of navigating on its own.

Human not required for operation of the vehicle.

Types of autonomous vehicles:
Aerial Vehicles (UAVs), Ground Vehicles (UGVs)
Surface Vehicles (ASVs), Underwater Vehicles (AUV)

Technology of future

Require advanced control systems and sensing

In the U.S. State of Nevada autonomous vehicle can be legally
operated on roads.

Autonomous Vehicle Framework
Layered Architecture.

Trajectory may need to be replanned.
Unknown obstacles, vehicles.

Difference in type of information
available to Low Level and Replanning Layer.

Difference in sampling frequencies,
Controller intelligence.


Offline Trajectory
Generation
Layer 1
Online Trajectory
Replanning
Layer 2
Low Level
Control
Layer 3
Vehicle and
Environment
U
y
Model Predictive Control: Introduction
Optimal Control
Linear Quadratic Regulator (LQR)
Model Predictive Control (MPC)

Ability to look into the future

Advantages
Constraints
Nonlinear systems
Online control solution

Limitations
Computation time




PLAN
PLAN
PLAN
DO
DO
DO
t
t
t
Step 1
Step 3
Step 2
t k =
2 t k =
3 t k =
t k Nk = +
2 t k Nk = +
3 t k Nk = +
N
MPC Strategy
Cost Function
where
0
, , and are weighing matrices.
( )
1
0
( ) , ,
N
N k k k
k
J L u | q q

=
= +

0
Terminal Cost
( )
T
N N N
Q | q q q =
( )
Running Cost
, ,
T T T
k k k k k k k k k
Q L S u R u u q q q = + +
k sat
u u +
1
j
k
i
P
=
+

Vehicle Modeling
( )
[ , , , , ]
( ) [ ]
f
t X Y
u t
|
o
=
=
State vector :
Input vector :
dsfsaasf
( ) ( ) ( ) ( )
( )
f ,
0 0 0 1 0
. where
0 0 0 0 1
[ ]
t u t
C C
X Y
=
(
= =
(

=
t
t

( ) ( )
( ) ( )
( )
1
.f ,
k k
s k k
t t
T t u t
+ ~
+

2. Eulers
Discretization
1. Dynamic
Model
Model Validation
20 /
x
v km h =
40 /
x
v km h =
Also known as steepest descent

Well known and simplest method

Finds a local minimum

Plant input is decision variable of algorithm







Gradient Descent Algorithm
Downhill direction
Initial guess
Step
Size
A
.( ) J A V
x
) (x f
( ) f m
m
( ) ( )
1
,
k k k k
u u J x u
+
= A V
Model Predictive Control Setup
MPC Controller
Plant
*
( ) u t
( ) t
( ) t q
Optimizer
Cost Function
+
Constraints
Mathematical
Model
Simulation Environment
Simulation Results
Obstacle Avoidance 20km/h
Parameter Value
Sampling Time
Steering
Constraint


0.05
s
T =
0
Q
| |
0.1, 0; 0, 0.1
| |
0.05
( )
0 5 5
Q
R
S
| |
0.1, 0;0, 0.1
x
v
20 / km h
20
Simulation Results
Obstacle Avoidance 60km/h
Parameter Value
Sampling Time
Steering
Constraint


0.05
s
T =
0
Q
| |
0.1, 0; 0, 0.1
| |
0.05
( )
0 5 5
Q
R
S
| |
0.1, 0;0, 0.1
x
v
60 / km h
5
Simulation Results
Turning Move With N=20,40,60,80,100
60 left turn at 50
90 right turn at 90
X m
X m
=
=
77% decrease in simulation cost
1797% increase in computation cost
Real-Time Analysis
Cold start method Warm start method


| |
,
0, 0, 0, 0...0
init k
u =
*
, 1 init k k
u u

=
Parameter Cold
Start
Warm
Start
Comparison
Number of iterations for a 20s run 6539 4410 32.5% decrease
Avg. computation time per controller step 0.0393s 0.0275s 30% decrease
Number of 0.05s limit violations 70 38 45% decrease
Reference Trajectory Criteria
`
Start
Point
Obstacle
1 , k
q
Goal
Point
1 , , k d
q
3 , ,k d
q
2 , ,k d
q
3 , k
q
2 , k
q
`
Start
Point 1 , k
q
Goal
Point
Y k d , 1 , ,
q
X k d , 1 , ,
q
2 , k
q
X k d , 2 , ,
q
Y k d , 2 , ,
q
Method 1 Method 2
No goal point information
Goal point information included
,
Trajectory error variable
k d k k
q q q =
Reference Trajectory Criteria
Method 1
Method 2
Vehicle reaches goal
point successfully
Vehicle reaches goal
point successfully
Reference Trajectory Criteria
Method 1
Method 2
Vehicle retreat from a
large obstacle
Vehicle reaches goal
point successfully
Conclusion
Successfully controlled the vehicle dynamics for trajectory generation.

Used fully nonlinear CarSim vehicle model for simulations.

Various types of obstacles simulated.

NMPC controller was able to steer vehicle in an unknown environment with obstacles.

Tuning of weighing matrices time consuming process.

Value of horizon length N should be selected based on the available computation power and required
tracking performance.

The controller is real-time implementable at shorter horizon lengths.

Steering constraints need to be tightened with an increase in the speed.

Method 2 for trajectory tracking is found to be superior to Method 1.

Overall, the controller works well in realistic simulations and can be used for practical implementation.