Professional Documents
Culture Documents
Indirect Methods
Direct Methods
Optimal Control Discretize the control problem, then apply NLP techniques to the resulting
Lecture 28: Indirect Solution Methods finite-dimensional optimization problem
A priori knowledge of the solution structure not required
Benoı̂t Chachuat <benoit@mcmaster.ca> But, approximate solution only (due to control parameterization)
Benoı̂t Chachuat (McMaster University) Indirect Methods Optimal Control 1/7 Benoı̂t Chachuat (McMaster University) Indirect Methods Optimal Control 2/7
Benoı̂t Chachuat (McMaster University) Indirect Methods Optimal Control 3/7 Benoı̂t Chachuat (McMaster University) Indirect Methods Optimal Control 4/7
Indirect Shooting Approach: Algorithm Indirect Shooting Approach: Application
Initialization: Class Exercise: Consider the optimal control problem:
Z 1
Choose initial estimates λ00 , ν 0 , tf0 , termination tolerance ǫ > 0; Set k ← 0 ∆ 1 2
minimize: J(u) = 2 u(t) dt
Main Step: 0
subject to: ẋ(t) = u(t)[1 − x(t)]; x(0) = −1; x(1) = 0
1 Calculate the defect F(λk0 , ν k , tfk ); If kF(λk0 , ν k , tfk )k < ǫ, Stop
2 Calculate the defect gradient ∇λ0 F(λk0 , ν k , tfk ), ∇ν F(λk0 , ν k , tfk ) and
1 Formulate the defect F(λk0 , ν k , tfk ) in the indirect shooting approach
∇tf F(λk0 , ν k , tfk )
3 Calculate the search direction via solution of the linear system,
T T
∇λ0 F(λk0 , ν k , tfk ) dkλ
T
= −F(λk0 , ν k , tfk )
k
∇ν F(λk0 , ν k , tfk ) dν
∇tf F(λk0 , ν k , tfk )
T dtkf
0
subject to: ẋ(t) = u(t)[1 − x(t)]; x(0) = −1; x(1) = 0 The defect gradient ∇λ0 F(λk0 , ν k , tfk ), ∇ν F(λk0 , ν k , tfk ) and
∇tf F(λk0 , ν k , tfk ) is needed to perform the Newton iteration
0 λ0 (1) − ν 0 = 0 0.8
x 0 (1) = 1 ◮ Use forward or reverse sensitivity analysis
0.6
λ1 (1) ν1
− = −1.62 × 10−1
x⋆ ◮ Or, apply a quasi-Newton method with Broyden update scheme to
λ⋆
-0.2
u(t), x(t), λ(t)
-0.2
-0.6 λ2 (1) − ν 2 = −3.45 × 10−2
x 2 (1) = −1.76 × 10−2
λ3 (1) − ν 3 = −3.95 × 10−4 -0.4
◮ Very high sensitivity towards the transversal conditions
x 3 (1) = −1.51 × 10−4
-0.8 λ(1) − ν = 0 -0.6 ◮ Calculate good estimates via a direct discretization approach!
x(1) = 0 -0.8
iterates
-1
-0.6 -0.5 -0.4 -0.3 -0.2 -0.1 0
-1
0 0.2 0.4 0.6 0.8 1
Difficulty 2. Hard to apply in the presence of singular arcs and/or
λ(0) t path constraints
◮ Optimal arc sequence not known a priori
◮ Optimality conditions at junction times give rise to multi-point
boundary value problems (MPBVP)
Benoı̂t Chachuat (McMaster University) Indirect Methods Optimal Control 6/7 Benoı̂t Chachuat (McMaster University) Indirect Methods Optimal Control 7/7