=
= +
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
RealTime 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 realtime 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.