Sunteți pe pagina 1din 86

An overview of optimal control

methods with applications


F. Topputo and P. Di Lizia!
Dinamica Srl

DINAMICA srl!
Registered office

Rembrandt,
69 !
Piazza della Repubblica, 10 Via
- 20121
- Milan (Italy)

20147 - Milano
(Italy)!
Head office

Phone
02- 40091584!
Via Morghen,
13 - +39
20158
Milan (Italy)

Phone:
+39-02-8342-2930

Fax +39
02 4816277 !
Fax: +39-02-3206-6679

e-mail: dinamica@dinamicatech.com
e-mail: dinamica@dinamicatech.com

website:
www.dinamicatech.com
website: www.dinamicatech.com

Stardust - Opening Training School!


University of Strathclyde!
Glasgow, UK!
18-22 November 2013

The Company

Founded by 5 partners in January 2008


All partners have a PhD in Aerospace Engineering
Dinamica Srl has a strong connection with Academia
More than 30 years of accumulated space experience
Dinamica Srl is located in Milano

?D7C?97

INNOVATING TECHNOLOGY

Keywords
Analysis

Design
System engineering

Mission analysis

Simulation

Control

Optimization

Optimization

Autonomy

The mission
Italian SME, founded in 2008
The mission: ... to carry on developing methods and
advanced solutions within the Space field and to
transfer their use in other industrial sectors ...

?D7C?97

INNOVATING TECHNOLOGY

Space field

Technology transfer

Industrial sector

A Tangible Example

?D7C?97

INNOVATING TECHNOLOGY

Hubble

Used to reconstruct
unmodeled structural
dynamics
Used to reduce
vibrations in large
telescope satellites

Pharmaceutical industry

System
identification

Used to reconstruct a
pharmaceutical process
dynamics

Predictive
control

Used to minimize the


energy supply

Considerable savings (10-20%) compared to standard methods


7

Optimal Control Problem (1/2)

Consider the following dynamical system:!

!
where:

is the state vector and

is the control vector

Determine the m control functions such that the following


performance index is minimized:

where the initial and final state vectors,


and
the final time
, are not necessarily fixed

, as well as

Optimal Control Problem (2/2)

In addition to the previous statements suppose that the


following constraints are imposed!

Boundary conditions at final time tf : !


, where !

Path constraints on the control variables:!


, where

Two classical solution methods:!

Indirect methods: based on reducing the optimal control


problem to a Boundary Value Problem (BVP) !

Direct methods: based on reducing the optimal control


problem to a nonlinear programming problem

Example: Low-Thrust Earth-Mars Transfer

Given the dynamics of the controlled 2 body problem:

r+u
3
r

r =

Minimize:

Subject to equality constraints:

r(t0 ) = rE (t0 ) v(t0 ) = vE (t0 )


r(tf ) = rM (tf ) v(tf ) = vM (tf )

v1
v2

rM
vM

and the inequality


constraints

max

vE

rE

Indirect Methods (1/6)

Reconsider the optimal control problem:

Given the dynamical system!

Minimize:!

Subject to:

and

Constraints are added to the performance index J by


introducing two kinds of Lagrange multipliers:!

p -dimensional vector of constants

for the final constraints!

two n- and a q -dimensional vectors of functions and


(adjoint or costate variables) for dynamics and path constraints

Indirect Methods (2/6)

Augmented performance index:

The dynamics is included in the augmented performance


index as a constraint

Moreover, pertaining the costate variables for the path


inequality constraints , the generic component k must
satisfy the following relations:

Indirect Methods (3/6)

Integrating by parts the term

where

yields:

and

The problem is then reduced to identify a stationary point of


This is achieved by imposing the gradient to be zero. The
optimization variables are:!

State vector
and control vector!
Lagrange multipliers and costate variables ,
Unknown components of the initial state
,!
Final state and time
and

and!

Indirect Methods (4/6)


Dynamics

Constraints

Indirect Methods (5/6)

The problem consists on finding the functions


,
and
by solving the differential-algebraic system:
differential
Euler-Lagrange
equations
algebraic

Note: For the sake of a more compact notation, define the Hamiltonian

The previous equations read:

Indirect Methods (6/6)

The previous differential-algebraic system must be coupled to


the 2 n boundary conditions

given or

and to the p + q + 1 additional constraints

The optimal control problem is reduced to a boundary value


problem on a differential-algebraic system of equations (DAE)

Simple
Optimal
subject
to system
equationsControl

Problem

J = x2 (1)

timal control problem


with
HermiteSimpson
and certain
x 1 = 0.5x1 +method,
u
subjectistosolved
system
equations
e computation time and improving accuracy. Consider the problem of finding
(
5 2
2
nal time [0, 1] to minimize the cost
x 2 = u + x1 u +x 1 =
x 0.5x1 + u
Example 1: A Simple Optimal
Control
4 1 Problem
5 2
2
J
=
x
(1)
(68)
x

=
u
+
x
u
+
x
2
2
1
to theaboundary
conditions
sand
section,
simple optimal
control problem is solved with HermiteSimpson
4 1 method, and certai
Given the simple optimal control problem (Problem #1)
are set to speed-up the computation time and ximproving
accuracy. Consider the problem of findin
and to the boundary conditions 1 (0) = 1
(
with fixed initial
the cost
! and final time [0, 1] to minimize
x
(0)
=
0
2
x 1 = 0.5x1 + u
x1 (0) = 1
!
(69)
J = x2 (1)
(68
5of 2state and control
2
with the following
bound
box
variables
x
(0)
=
0
x 2 = u + x1 u + x1
2
4
!
ct to system equations
10 of
state
x1 (t) and
10control variables
(
with the following bound box
ons

Assignment #1

! Dynamics
init., final time
Obj.
fcn.
b. c.
1 x+
2 (t)
x 1 =10
0.5x
u 10
10 x1 (t) 10
! x1 (0) = 1
10

u(t)

10
5 2
(70)
2
10

x
(t)

10
x

=
u
+
x
u
+
x
2
x2 (0) = 0
2
1
1
4
Write the necessary conditions for10
optimality
u(t) 10and show that
of state
and the
control
variablessolution is
optimal
oxThe
the
boundary
conditions
analytical
solution
of this problem is

(
(69(

10 x1 (t) 10
(71)
x1 (0)
cosh(1
=
t) 1 is
The analytical solution
of
this
problem
(70
Optimal

10 x2 (t) 10 x1 (t) = cosh(1)
(72)
x2 (0) = 0
(
cosh(1
t) t)(73)
solution
10 u(t) 10
(tanh(1

t)
+
0.5)
cosh(1
x1 (t) =
the following bound box of state u(t)
and =
control variables
cosh(1)
(74)
cosh(1)
(tanh(1 t) + 0.5) cosh(1 t)
u(t)
=
10 x1 (t) 10
(71
his
problem
is
cosh(1)
3.1
Solution
by HermiteSimpson
method
10 x2 (t) 10
(72
cosh(1

t)
Thisx1problem
is solved by using the MATLAB function fmincon with interior-point algorithm. T
(t) =
u(t) 10
(73
3.1 Solution by10
HermiteSimpson
method

Low-Thrust Transfer to Halo Orbit (1/4)

Transfer the s/c from a given orbit (GTO raising) to a Halo orbit
around L1 of the Earth-Moon system

Dynamics:

Low-Thrust Transfer to Halo Orbit (2/4)

In canonical form, the dynamics reads:

Constraints: fixed

Euler-Lagrange equations:

Performance index: minimize the quadratic functional

and

, fixed final time

Low-Thrust Transfer to Halo Orbit (3/4)

Processing the last algebraic equation leads to:

which can be inserted in the differential equations


The DAE system is reduced to a ODE system

All constraints simply reduce to:

The original problem is reduced to a simple Two Point


Boundary Value Problem (TPBVP)

Low-Thrust Transfer to Halo Orbit (4/4)

Solution of the TPBVP:!

Transcribe the dynamics! (x,

Evaluate the control parameters

Couple the transcribed dynamics with the constraints on

and!

Solve the resulting system with a Newton method starting from a


suitable initial condition!

(u0 , ... , uN )

manifolds that act as separatrices for the states of motion

III.

Low-Thrust Propulsion and Attainable

End-to-end Tooptimization
finite
model the controlledw/
motion
of P thrust
under the gra
3

attractions of P1 , P2 , and the low-thrust propulsion, the


differential equations are considered:

GTO-to-halo fully optimized!

Switching fcn

Control

very difficult problem!


tens of spirals!
thrust saturation

Ty TO
@!3 Tx
@!MINGOTTI,
3
% ;
y" % 2x_ #
%
x" $ 2y_ #
@x
m
@y
m
B. Optimal Control Problem Denition
@!3 Tz
T
_ # $ the guidance law
z" #control
% aims
; at nding
m
The optimal
Isp g0
@z
m
! 2 #t ; t $, that minimizes
0

q!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Z !t
2
2
2 f T!!"
where T # Tx % TyJ %
% Tz is thed! present thrust m
t0 Ispacecraft
sp g0
Continuous variations of the
mass m are t
account through the last of Eqs. (7). This causes a singular
Itwhen
is easymto!
verify
through
the
last ofsolution
Eqs.singularities
(11) that J is given
the prob
Optimal
0 beside
the
well-known
mass;
is, J % m0 & mf , where m0 and mf are the initial an
of Pthat
3 with P1 or P2 (r1;2 ! 0). The guidance la
spacecraft masses. The thrust magnitude must not exc
!Tx !t"; Ty !t"; Tz !t"", t 2 't0 ; tf (, in Eqs. (7) is not given; r
maximum
threshold given by technological constraints. T
found through an optimal control step where objective fun
imposed along the whole transfer through
boundary conditions are specied (see Sec. IV). However,
construct a rst-guess solution,
the prole of T ove
T!t" ' Tmax
prescribed at this stage. Using tangential thrust, attainable
dened
in the
fashion asavailable
reachablethrust.
sets dened
in [3
where
Tmax
is same
the maximum
In additio
!x0constraints
; t0 ; t" be the
of system
(7)impacts
at time wt
Let #T!$"
following
path
are ow
imposed
to avoid
Earth
and moon
guidance
law along
T!$",the$ transfer:
2 't0 ; t(, and starting from !x0
_ 0 ; y_ 0 ; z_0 ; m0 ". p
The
generic point of a !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
px!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
0 # !x0 ; y0 ; z0 ; x
y2 ( z2 >
!x ( " & 1"2 ( y2 ( z2
!x ( ""2 (
low-thrust
trajectory
is RE ;

J = x2 (1)

timal control problem


with
HermiteSimpson method, and certain
subjectistosolved
system
equations
e computation time and improving accuracy. Consider the problem of finding
nal time [0, 1] to minimize the cost
x 1 = 0.5x1 + u

Assignment #2
Example 1: A Simple Optimal Control Problem

5
J = x2 (1)
x 2 = u2 + x1 u(68)
+ x21
s section, a Given
simple optimal
control
method, and certai
4
Problem
#1 problem is solved with HermiteSimpson
are set to speed-up the computation time and improving accuracy. Consider the problem of findin
to the boundary conditions
! and
with fixed initial
and final time [0, 1] to minimize the cost
x1 (0) = 1
!x 1 = 0.5x1 + u
(69)
J
=
x
(1)
(68
5 2
2
2
x2 (0) = 0
!x 2 = u + x1 u + 4 x1
ct to system equations
ons
! with the following bound box of state and control variables

init., final time


Obj.1 +
fcn.
b. c.
! Dynamics
x 1 = 0.5x
u
!
10 x1 (t) 10
x1 (0) = 1
!
5 2
(70)
2
!
10

x
(t)

10
x

=
u
+
x
u
+
x
2
x
(0)
=
0
2
1
1
2
!
4
!
10 u(t) 10
x
of
state
and
control
variables
o the boundary conditions
Solve the TPBVP associated
10 x1 (t) 10
(71)
x
(0)
=
1
1
The
Matlab
built-in
bvp4c,
bvp5c
analytical solution of this problem is
10 x2 (t) 10
(72)
x2 (0) = 0
10Sixth-order
cosh(1 t)
u(t) 10 method bvp_h6
(73)
x1 (t) =
the following bound
box of state
and control variables cosh(1)
(74)
available
at http://www.astrodynamics.eu/Astrodynamics.eu/Software.html

(69

(a) discrete solution and analytical time history of x1

0.9
0.8
0.7

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

1a

x1

0.9

(b) discrete solution and analytical time history of u

cosh(1 t)
x1 (t) =
3.1 Solution
cosh(1)

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

(c) error of x1 and u located at discrete points

0
(tanh(1
t) + 0.5) cosh(1 t)
5
u(t)
=
10 x1 (t) 10
10
cosh(1)
15
10 x2 (t) 10 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8

u(t) 10
by10
HermiteSimpson
method
(d)
reintegrate dynamics with discrete control solution
r))

his problem is

log10(abs(error))

(70

ua

x1 error
u error
0.9

(71
(72

(73

Indirect Methods: Remarks

Main Difficulties:!

Deriving Euler-Lagrange equations and transversality


conditions for the problem at hand!

Nonlinearity of the dynamics!

Lack of a plain physical meaning of Lagrange multipliers

Solution of the DAE system itself!


Solution of the boundary value problem on the DAE
system!

difficulty at identifying good first guesses for Lagrange


multipliers (primer vector theory)

Optimal Control Problem

Given a dynamical system:!

Determine u(t) which minimize the performance index:

and satisfy the constraints:

Two classical solution methods:!

Indirect methods: based on reducing the optimal control


problem to a Boundary Value Problem (BVP) !

Direct methods: based on reducing the optimal control


problem to a nonlinear programming problem

Nonlinear Programming Problem

Generally constrained optimization problem

Given a function!

f (x) = f (x1 , x2 , ..., xv )

Minimize:!

Subject to K equality constraints:!

f (x)
ck (x) = 0, k = 1, ..., K

and J inequality constraints:!

gj (x)

!
where

can exceed

0, j = 1, ..., J

(K

v)

Unconstrained Optimization (1/6)

Minimize: f (x)
The necessary condition for the identification of the
optimum is:
x

f =0

The optimization problem in the v variables x is reduced


to the solution of a system of v nonlinear equations!
Note: given the Hessian of f , Hf , a sufficient condition is:

x Hf x > 0,

The solution can be found using the Newton method

Newton Method (1/3)

Consider the problem:

F (x) = 0

The Newton method is an iterative method based on a


linearization of F around the current iterate!

1. Select an initial guess! x


2. Consider the first order approximation of! F

F (x) F (
x) + F (
x) (x

x
) = 0

3. Find the correction:!

x = (x

x
) =

[F (
x)]

F (
x)

4. Update current iterate and repeat from 2 until convergence

Newton Method (2/3)

Graphical interpretation:

F
x

x2 x1

Since it is based on a first


order approximation of F
the method is local
Different first guesses might
lead to different solutions

x0

x
x

x1,1 x0,1 x0,3 x0,2 x1,2

Newton Method (3/3)

Classical methods to stabilize the iteration!

Line Search:!
Instead of updating the current iterate using!

xnew = x +

Reduce the step size using a parameter

xnew = x +

!
where

is chosen such that!

:!

||F (
xnew )||

||F (
x)||

Trust region:!
The direction of the computed

is slightly modified

Unconstrained Optimization (2/5)

Solve:

f =0

Newton algorithm:!

Select an initial guess! x

While stopping criterion is not satisfied!

Find the corrections


the linear system!

!
where

Hf

x to the current solution by solving


x=

x f

! f =
Hf is the Hessian of f : H

Update the current solution:

x+

2
x

Unconstrained Optimization (3/5)


Important note:!

Consider the following optimization problem!

Minimize the quadratic form:!

!
!

1
xT Hf x +
2

T
f
x
x

Necessary optimality conditions:!

Hf

x+

f =0

which can be written as:

Hf

x=

x f

Finding the corrections x , i.e. the search direction, in the


original optimization problem is equivalent to minimizing the
previous quadratic form

Unconstrained Optimization (4/5)

Given the function to be minimized, f (x) , each iteration


of the Newton method is equivalent to:!

Approximate f around the current solution


quadratic form!

Find the offset,


quadratic form!

Use

x with a

x , to the zero-gradient point of the

as a correction in the original optimization problem


obj
x

x0

x1

x2 ...

Unconstrained Optimization (5/5)

f (x1 , x2 ) =

1 2
(x1 + x22 )
2
example1.m

f (x1 , x2 ) = 5 x1 + e

(x1 +5)

+ x22
example2.m

example3.m

Assignment #3
Numerically re-compute the three unconstrained
optimizations in the previous slide; i.e.,
!
!
!
1 2
2
!
f
(x
,
x
)
=
(x
+
x
1
2
1
2)
!
2
!
!
!
(x1 +5)
2
!
f
(x
,
x
)
=
5
x
+
e
+
x
1
2
1
2
!
!
!
!
!
Advice
Use Matlab built-in fminunc
Code a SQP solver

Earth-Mars 2-impulse Transfer (1/3)

Optimization variables: departure date t0 and time of flight ttof

Compute the positions of the starting and arrival planets


through the ephemerides evaluation:
(rE , vE ) = eph(t0 , Earth), (rM , vM ) = eph(t0 + ttof , M ars)

Solve the Lamberts problem to evaluate the escape


velocity v1 and the arrival one v2

Objective function:

V =

V1 +

V2

Earth-Mars 2-impulse Transfer (2/3)

Minimize: f (x) =

Necessary conditions for optimality:


V
V
=0
=0
ttof
t0

In a generic iteration, given the current estimate


x = {t0 , ttof }, evaluate the corrections x = { t0 ,

x=

Hf

x f

where Hf is:
2

2t
0
2

V
ttof t0

V (x) =

t0 ttof
2

2t
tof

V (t0 , ttof )
x

f =0

ttof }:

Earth-Mars 2-impulse Transfer (3/3)

Search space:
t0 [0, 1460] M JD2000 = 4 years
ttof [100, 600] day
objective function

exampleEM.m

Equality Constrained Optimization (1/5)

Minimize:!

f (x)

Subject to:

ck (x) = 0, k = 1, ..., K

(K

The classical approach to the solution of the previous


problem is based on the method of Lagrange multipliers

Method of Lagrange multipliers:

v)

Introduce the Lagrange function:

L(x, ) = f (x)
where L is a function of the
Lagrange multipliers

c(x)

variables

and the K

Equality Constrained Optimization (2/5)

The necessary conditions for the identification of the


optimum are:

x L(x, ) = x f (x) CT (x)


L(x, ) = c(x) = 0
where

=0

C(x) is the Jacobian of c(x)

The constrained optimization problem in the v variables


x has been reduced to the solution of a system of v + K
equations in the v + K variables (x, )

Solution by Newton method

Equality Constrained Optimization (3/5)


Algorithm:!

Select an initial guess!(x,

While stopping criterion is not satisfied!

Find the corrections ( x,


solving the linear system!

! HL
! C

C
0

) to the current solution by


=

x f
c

Karush-KuhnTucker (KKT)

where ! HL = 2xx f

k=1

Update the current solution:

2
k xx ck

(x, )

(x +

x, +

Equality Constrained Optimization (4/5)


Important note:!

Consider the following optimization problem:!

Minimize the quadratic form:!

!
!

1
xT HL x + (
2

Subject to the linear constraints:

C x=

T
f
)
x
x

Use the approach of Lagrange multipliers!

Lagrange function:

1
xT HL x + (x f )T x
2

(C x + c)

Equality Constrained Optimization (5/5)

Necessary optimality conditions:

HL x + x f

C x+c=0

which can be written as:

HL
C

C
0

CT

x f
c

=0

Karush-KuhnTucker (KKT)

Finding the corrections ( x,


) , i.e. the search direction,
in the original optimization problem using the KKT system is
equivalent to minimizing the previous quadratic form

Inequality Constrained Optimization


Minimize:!

f (x)

Subject to:

gj (x)

0, j = 1, ..., J

A possible approach!

Interior Point Method:

The inequality constraints are added to the objective function


as a penalty term

f(x) = f (x) +

j e

gj (x)

j=1

Solution is forced to move into the set of feasible solutions by


means of the barrier function e gj

Problem Set #3 (With Corrections)

Assignment #4
1. Consider the following NLP problem:

Solve the NLP problem(*)

!!
!!
!!
!!

min3 f (x) := x21 + x1 x2 + 2x22 6x1 2x2 12x3

xIR

s.t. g1 (x) := 2x21 + x22 15


g2 (x) := x1 2x2 x3 3
x1 , x2 , x3 0.

Using Matlab built-in fmincon


Use SQP algorithm, quasi-Newton
update, and line search
(a) Find an optimal solution x to this problem using the function fmincon in MATLA
Set Toolbox:
solution tol, function tol, constraint tol to 1e-7
Make
that to
thex0medium
scale
Specify
initialsure
guess
= (1, 1,
1) SQP algorithm, with Quasi-Newton update
the selected solver in fmincon;
Make sure g2 is treated as linear constraint by fmincon
Set the solution point tolerance, function tolerance and constraint tolerance in
"T
Solvew/o
providing gradient of obj !fcn and constraints;
then re-do
Specify the initial guess as x0 = 1 1 1
;
by providing
analytic gradients
Make sure that the inequality constraint g2 is treated as a linear constraint b
Repeat
optimization
from
x0; doapproximation
we find the ofsame
Solve
the NLP by
usinga adifferent
finite-dierence
the gradients of th
constraints
first.
Then, resolve
the problem by providing explicit expressio
optimal and
solution
found
previously?
Why?

(*)

of the objective function and constraints (ask fmincon to check for the gradi
the optimization in this latter case);
Make sure that the solver terminated successfully in each case.

B. Chachuat, Nonlinear and Dynamic Optimization, EPFL

Direct Methods

Direct methods are based on reducing the optimal control


problem to a nonlinear programming problem

The core of the reduction of the optimal control problem to


a nonlinear programming problem is:!

The parameterization of all continuous variables!


The transcription of the differential equations describing the
dynamics, into a finite set of equality constraints

Classical transcription methods:!

Collocation !
Multiple Shooting

The original optimal control problem is solved within the accuracy


of the parameterization and the transcription method used

Parameterization

The parameterization is based on the discretization of the


continuous variables on a mesh, typically settled up on the
time domain!

Discretize the time domain as:!

t0 = t1 < t2 < ... < tN = tf

Discretize the states and the controls over the previous mesh
by defining xk = x(tk ) and! uk = u(tk )

x(t)

u(t)

{x1 , x2 , ..., xN }

{u1 , u2 , ..., uN }

Consequently, a new vector of variables can be defined:

X = {tf , x1 , u1 , ..., xN , uN }

Transcription: Collocation (1/2)

Collocation methods are based on the transcription of the


differential equations into a finite set of defects constraints
using a numerical integration scheme

Simplest case: Eulers scheme!

But

x i,e

ti )
xi

, then:

xi+1 = xi + h f(xi , ui , ti )

x i+1

Solution is approximated
using a linear expansion

i ) (ti+1
xi+1 = xi + x(t
i) h
= xi + x(t

ti

which can be written in terms of defects constraints:

h i = xi+1

xi

h f(xi , ui , ti ) = 0

t i+1

Transcription: Collocation (2/2)

Other numerical integration schemes can be applied!

Runge-Kutta schemes:

h i = xi+1

xi

j fij

hi

=0

j=1

The optimal control problem has been parameterized:!

x(t)

and

Minimize:

Dynamics:

u(t)
ciao

X = {tf , x1 , u1 , ..., xN , uN }

ciao
ciao

Minimize:

J(X)

Subject to: h (X) = 0

Nonlinear Programming Problem

Transcription: Multiple Shooting (1/2)

Time domain in discretized:

t0 = t1 < t2 < ... < tN = tf

Within each time interval, splines are used to model the control
profile u(t)
each time interval contains M 1 subintervals,
where M is the number of points defining the splines

On a generic node, the vector of variables will be:


Xi = {xi , u1i , ..., uM
i

xi
xi

RK integration

u2i

u1i 1

ti

u...
i 1

xci

xi

RK integration

u1i

u...
i

1
uM
i 1

ti

xi+1

u i

2
iu

uM
i

ti+1

Transcription: Multiple Shooting (2/2)

Within a generic time interval, the splines are used to map the
u(t)
1
discrete values {u1i , ..., uM
into
continuous
functions
}
i
c
Numerical integration can be used to compute xi+1

The dynamics is transcribed into a set of defects constraints:

hi = xci

xi = 0

The vector of variables for the nonlinear programming problem is:

X = {tf , X1 , ..., XN }
xi

xi

RK integration

u2i

u1i 1

ti

u...
i 1

xci

xi

RK integration

u1i

u...
i

1
uM
i 1

ti

xi+1

u i

2
iu

uM
i

ti+1

timal control problem


with
HermiteSimpson method, and certain
subjectistosolved
system
equations
e computation time and improving accuracy. Consider the problem of finding
nal time [0, 1] to minimize the cost
x 1 = 0.5x1 + u

Assignment #5
Example 1: A Simple Optimal Control Problem

5
J = x2 (1)
x 2 = u2 + x1 u(68)
+ x21
s section, a simple optimal control problem is solved with HermiteSimpson
method, and certai
4
are set to speed-up
the computation
time direct
and improving
accuracy.
Consider
the problem of findin
Solve
#1 conditions
with
transcription
and
collocation
(a) discrete solution and analytical time history of x1
and toProblem
the boundary
with fixed initial and final time [0, 1] to minimize the cost
0.9
x
1a
x 1 = 0.5x1 + u
0.8
x
x
(0)
=
1
1
1
0.7
(69)
J
=
x
(1)
(68
5
2
0
0.1x2 (0)
0.2 =
0.30 0.4
0.5
0.6
0.7
0.8
0.9
1
x 2 = u2 + x1 u + x21
4
(b) discrete solution and analytical time history of u
ct to system equations
0
with the following bound box of state and control variables
ons
u

Dynamics

Obj.1 +
fcn.
x 1 = 0.5x
u

init., final time

b. c.

log10(abs(error))

log10(abs(error))

10
x1 (t) 10
2
0
0.4
0.5
0.6
0.7
0.8
0.9
1
(69
5 2 0.1 0.2 0.3(70)
2
x2 (t)
of10
x 2 = u + x1 u + x10
x2 (0)
= 0 method
(c) error
x and u located at discrete points
Use
Euler
for direct 4 01
10 u(t) 10
x error
transcription
5
x
of
state
and
control
variables
u error
o the boundary conditions
10
Provide analytic gradients and zero
15
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
10initial
x1 (t)
10
(71)
guess
x
(0)
=
1
The analytical solution of this1 problem is
(d) reintegrate dynamics with discrete control solution
(70
x2 (t) numerical
10
(72)
0
10Compare
vs analytical
x2 (0) = 0
x error
5
cosh(1

t)
solution
10
u(t) 10
(73)
x1 (t) = 10
15cosh(1)
the followingbound
of statebetween
and control
Makebox
trade-off
CPUvariables
time
0
0.1
0.2
0.3(74)
0.4
0.5
0.6
0.7
0.8
0.9
1
time
and solution accuracy
(tanh(1 t) + 0.5) cosh(1 t)
u(t)
=
10

x
(t)

10
1
Figure 11: Simulation results of Example 1, 100 points.(71
his problem is
cosh(1)
10 x2 (t) 10
(72
cosh(1 t)
half of the CPU time (17.2 s vs 8.7 s). In case 3, providing analytical Jacobin and Hes
x1 (t) =
u(t)
10of iterations and
(73
3.1 Solution by10
HermiteSimpson
method
both
the number
the computational time, which drops dramatically
cosh(1)
The structure of Jacobian is shown in Figure 3.2(a), where the rows are constraints
x1 (0) = 1

Low-Thrust Earth-Mars Transfer (1/2)

Optimal control problem:!

Given the dynamics of the controlled 2 body problem:

r =

Minimize:

Subject to:

r+u
3
r

r(t0 ) = rE (t0 ) v(t0 ) = vE (t0 )


r(tf ) = rM (tf ) v(tf ) = vM (tf )

Transcription technique:
Simple shooting

v1
v2

rM

Note: Simple shooting is


multiple shooting when N = 1

vM

vE

rE

Low-Thrust Earth-Mars Transfer (2/2)

Cubic splines for u(t) built on four points

Optimization variables:

M =4

Earths ephemerides are used to set i.c. for the integration of the
shooting method
constraints on x0 automatically satisfied

t0, tf , u1 , ..., u4

( dim(X) = 14 )

First guess: ballistic Lamberts arc

first guess

solution

Controlled Traj. in Relative Dynamics

Given the equations of the relative dynamics:

Minimize:

Subject to:

2ny 3n2 x
y + 2nx
z + n2 z

=
=
=

0
0
0

r(t0 ) = r0

r(tf ) = rf

v(t0 ) = v0

v(tf ) = vf

Note: r(t0 ), v(t0 ) = 0 , r(tf ), v(tf ) = 0

Formation depl.

r(t0 ), v(t0 ) = 0 , r(tf ), v(tf ) = 0

Formation reconf.

r(t0 ), v(t0 ) = 0 , r(tf ), v(tf ) = 0

Docking

Formation Flying Deployment

Transcription technique: Simple shooting


Cubic splines for u(t) built on six points
First guess: u(t) = 0

M =6

Reference orbit:!

a = 26570 km

Mars Aero-Gravity Assist (1/4)

Gravity assist

Aero-Gravity Assist

Mars Aero-Gravity Assist (2/4)

Dynamics:

Bank angle!

=
=
=
=

Planar maneuver

= CL /CL((L/D)max)

Control parameters:!

R =

Atmospheric entry conditions

V sin
V cos cos
R cos
V cos sin
R
D
G sin
m
L cos
V 2 cos
G cos +
m
R
V 2 tan cos cos
L sin

m cos
R

Mars Aero-Gravity Assist (3/4)

Optimal control problem

Find the optimal control law, (t), the free atmospheric entry
conditions and the final time tf to!
Maximize: !

Final heliocentric velocity

Vs+

Subject
to:!

atmospheric entry conditions


must be consistent with entry
conditions in planetary
sphere of influence
( V assigned )!

Convective heating at
stagnation point

qw0 = 1.35e 8

rn

"1/2

!
"
hw
max
3.04
q

V
1
< w0
H

Mars Aero-Gravity Assist (4/4)


Transcription technique: Multiple Shooting!

100
! dim(X)
N = 11 , M = 4
Cubic splines!
RK integration
x

First
guess
using
simple

u
i 1

shooting and evolutionary


algorithms

2
i 1

u1i 1

ti

120

100

2
Soln 1

Soln 2

xi
xci

xi
u1i

2
iu

u...
i

80

Soln 2

40

100

200

300
Time [s]

400

500

600

20
0

Soln 1
100

200

uM
i

ti+1

60

xi+1

u i

1
uM
i 1

Soln 3

5
0

RK integration

ti

Soln 3

u...
i 1

h [km]

300
Time [s]

400

500

GTOC II (1/3)

Optimal control problem:!

Given the dynamics of the controlled 2 body problem:

r+u
3
r

r =
Visit four given asteroids

Maximize: J = mf /(tf

Subject to:!

t0 ) , mf = m0 e

1
Isp g0

R tf
t0

|u|d

! dep,P ) = rP (tdep,P )
- r(t

v(tdep,P ) = vP (tdep,P )

!r(tarr,P ) = rP (tarr,P )

v(tarr,P ) = vP (tarr,P )

!
- u

- tdep,Pi

umax

tarr,Pi

90 days

GTOC II (2/3)

Transcription technique: Collocation

Optimization variables:!

Four departure epochs


(Earth and three asteroids)!

Four transfer times!

State parameters deriving


from transcription

Control parameters
deriving from transcription!

dim(X)

1000

GTOC II (3/3)

Identified solution:
Collocation methods
can better describe
discontinuities

Multiple Shooting vs Collocation

Both Multiple Shooting and Collocation can be considered


robust methods, even if highly nonlinear dynamics must
be dealt with !

Advantage of Collocation w.r.t. Multiple Shooting:!

Better management of discontinuities of the control


functions

Disadvantage of Collocation w.r.t. Multiple Shooting:!

Higher number of variables

Direct Methods vs Indirect Methods

Main Advantages of Direct Methods:!

No need of deriving the equations related to the


necessary conditions for optimality!

More versatility and easier implementation in black-box


tools

Main Disadvantage of Direct Methods:!

Need of numerical techniques to effectively estimate


Hessians and Jacobians

Approximate methods!

Avoid both indirect and direct!


Suboptimal solutions

Definition of the original problem


Find

minimizing

u(t),

[ti , tf ],

J = (x(tf ), tf ) +

u = (u1 , u2 , . . . , um )
tf

L(x, u, t) dt

ti

with dynamics
and boundary conditions

x = f (x, u, t),

x(ti ) = xi

x = (x1 , x2 , . . . , xn )

(x(tf ), u(tf ), tf ) = 0

Note: control saturation, path constraints, variable


final time, etc., not considered for simplicity

Solution of the original problem


Hamiltonian of the problem
x(t),

(t), u(t),

H(x, , u, t) = L(x, u, t) +

f (x, u, t)

that satisfy the necessary conditions


x =

H
x

H
=0
u
T

under

x(ti ) = xi

(tf ) =

(1)
(x(tf ), u(tf ), tf ) = 0

t=tf

Iterative methods used to solve (1)


Convergence depends on initial guess
Guessing i is not trivial (no physical meaning)
Difficult to treat (algebraic-differential system)
Deep knowledge of the problem required

Why approximate methods

Avoid solving problem (1)

Transform problem (1) into a simpler problem

Ease the computation of solutions

Deliver sub-optimal solutions

Examples
Direct transcription [Hargraves&Paris 1987, Enright&Conway, Betts 1998]
Generating function [Park&Scheeres, 2006]
SDRE [Pearson 1962, Wernli&Cook 1975, Mracek&Cloutier 1998]
ASRE [Cimen&Banks 2004]
...

(Time Varying) LQR


Dynamics:

x = A(t)x + B(t)u,

Objective function:

Initial condition:

1 T
1
J = x (tf )S(tf )x(tf ) +
2
2

tf

x(ti ) = xi

xT Q(t)x + uT R(t)u dt,

ti

Necessary conditions of optimality


x

= A(t)x + B(t)u,

Q(t)x

AT (t) ,

0 = R(t)u + B T (t) ,

A(t)
Q(t)

u=

B(t)R
AT (t)

(t)B T (t)

(t)B T (t)

Linear system of 2n differential equations

(2)

Solution of TVLQR by the STM


x(t) =

Exact solution of system (2):


( xi ,
xx ,

(t) =

initial state, costate)


x,

are the components


of the state transition matrix (STM)
x

STM subject to
with

xx (ti , ti )

If

xx

= In

x
n,

n,

x (ti , t)xi +

xx (ti , t)

(ti , t) =

A(t)
Q(t)

(ti , ti ) = 0n

xx (ti , t)xi

x (ti , t)

(t)B T (t)

B(t)R
AT (t)

x (ti , ti )

= 0n

(ti , t)

i,

(ti , t)

i,

(3)

(ti , t)
(ti , t)
xx

x
n,

(ti , ti ) = In

(t)

was known, it would be possible to compute x(t),


through (3), and u(t) with u = R 1 (t)B T (t)

i computed

by using (3) and the final condition (3 types)


SolveLQR.m

LQR solver available at http://www.astrodynamics.eu/Astrodynamics.eu/Software.html

Hard constrained problem (HCP)


x = A(t)x + B(t)u,

Final state given

1
J=
2

tf

x(ti ) = xi

xT Q(t)x + uT R(t)u dt,

x(tf ) = xf

ti

Statement of HCP

Write the first of (3) at t = tf ,


and solve for

; i.e.,

xf =

xx (ti , tf )xi

i (xi , xf , ti , tf )

1
x

(ti , tf )

(ti , tf ) [xf

Solving a HCP requires inverting the n

n matrix

i,

xx (ti , tf )xi ]

Soft constrained problem (SCP)


x = A(t)x + B(t)u,

Final state not given

x(ti ) = xi ,

1
1
J = xT (tf )S(tf )x(tf ) +
2
2

tf

(tf ) = S(tf )x(tf ),

xT Q(t)x + uT R(t)u dt

ti

Statement of SCP

Write (3) at t = tf ,
and solve for

i (xi , ti , tf )

x(tf )

xx (ti , tf )xi

S(tf )x(tf )

x (ti , tf )xi

(ti , tf )

i,

(ti , tf )

; i.e.,
=[

(ti , tf )

S(tf )

(ti , tf )]

Solving a SCP requires inverting the n

[S(tf )

xx (ti , tf )

n matrix [

x (ti , tf )] xi

(ti , tf )

S(tf )

(ti , tf )]

Mixed constrained problem (MCP)


Some components

x = A(t)x + B(t)u, x(ti ) = xi , xi (tf ) = xi,f ,

of final state given


(and some not)

1
1
J = xTj (tf )S(tf )xj (tf ) +
2
2
Statement of MCP (

tf

i,j (xi,j , ti , tf )=[

,j (ti , tf )

S(tf )

= S(tf )xj (tf ),

xT Q(t)x + uT R(t)u dt

ti

xgiven,
i

Write (3) at t = tf , write i = ( i,i , i,j )T, and solve for


and for i,j using j (tf ) = S(tf )xj (tf ) (SCP); i.e.,
1
i,i (xi,i , xf,i , ti , tf )= x ,i (ti , tf ) [xf,i

j (tf )

free)
xj

i,i using

xi,f (HCP)

xx,i (ti , tf )xi,i ] ,


x ,j (ti , tf )]

[S(tf )

xx,j (ti , tf )

Solving a SCP requires inverting the


matrices x ,i and [ ,j (ti , tf ) S(tf )

x,j (ti , tf )] xi,j

,j (ti , tf )]

Idea of the method


Re-write the nonlinear problem as
original dynamics

factorized dynamics

x = f (x, u, t),

J = (x(tf ), tf ) +

tf

x = A(x, t)x + B(x, u, t)u,

L(x, u, t) dt

original objective function

ti

J=

1 T
1
x (tf )S(x(tf ), tf )x(tf ) +
2
2

tf

factorized objective function

xT Q(x, t)x + uT R(x, t)u dt

ti

Idea: to use state-dependent matrices

A(x, t), B(x, u, t), Q(x, t), R(x, t)

such that for given arguments x(t), u(t) they depend on time only; i.e.,
A(x(t), t), B(x(t), u(t), t), Q(x(t), t), R(x(t), t)

A(t), B(t), Q(t), R(t)

The algorithm: iterations


Iteration 0 - Find x(0) (t), u(0) (t) solving Problem 0

x = xi , u = 0

x (0) = A(xi , t)x(0) + B(xi , 0, t)u(0) ,


1
1
J = x(0)T (tf )S(xi , tf )x(0) (tf ) +
2
2

tf

x(0)T Q(xi , t)x(0) + u(0)T R(xi , t)u(0) dt

ti

x = x(i

Iteration i - Find x(i) (t), u(i) (t) satisfying Problem i


x (i) = A(x(i
1 (i)T
J= x (tf )S(x(i
2

1)

(t), t)x(i) + B(x(i

1
1)
(i)
(tf ), tf )x (tf )+
2

tf
ti

1)

x(i)TQ(x(i

(t), u(i

1)

1)

1)

, u = u(i

1)

(t), t)u(i) ,

(t), t)x(i)+u(i)TR(x(i

1)

(t), t)u(i) dt

The algorithm: convergence


Problem i = TVLQR
Each problem corresponds to a time-varying linear

quadratic regulator (TVLQR)


The method requires solving a series of TVLQR
Iterations terminate when, for given ,

||x(i)

x(i

1)

||

(i)

= max {|xj (t)


t [ti , tf ]

(i 1)

xj

(t)|, j = 1, . . . , n}

the difference between each component of


the state, evaluated for all times, changes by
less than between two successive iterations

Numerical examples
!

Low-thrust dynamics in central vector field


Low-thrust rendez-vous
Low-thrust orbital transfer
Low-thrust stationkeeping of GEO satellites

Rendez-vous: statement and factorization


Dynamics

Rotating frame

x 1
x 2
x 3
x 4

= x3 ,
= x4 ,
= 2x4
= 2x3

with

r=

x1 radial displacement
x2 transversal displacement

(1 + x1 )(1/r3 1) + u1 ,
x2 (1/r3 1) + u2 ,
(x1 + 1)2 + x22

State

Control

x = (x1 , x2 , x3 , x4 )

u = (u1 , u2 )

Normalized units

length unit = orbit radius

time unit = 1/

Initial condition

xi = (0.2, 0.2, 0.1, 0.1)


[Park&Scheeres, 2006]

Factorization (dynamics)
x 1
x 2
x 3
x 4

0
0
0
0
0
f (x1 , x2 )(1 + 1/x1 )
0
f (x1 , x2 )

1
0
0
2

0
1
2
0

A(x)

with

f (x1 , x2 ) =

1/[(x1 + 1)2 + x22 ]3/2 + 1

x1
x2
x3
x4

0
0
1
0

0
0
0
1
B

u1
u2

Rendez-vous: HCP and SCP definition


HCP
1
J=
2

tf

SCP
1 T
1
J = x (tf )Sx(tf ) +
2
2

u u dt
T

ti

xf = (0, 0, 0, 0), ti = 0, tf = 1

tf

uT u dt

ti

S = diag(25, 15, 10, 10), ti = 0, tf = 1


x(tf ) free

Factorization (objective function)


with

1
1
J = xT (tf )S(tf )x(tf ) +
2
2

tf
ti

Termination tolerance
(valid for all examples show)

xT Q(t)x + uT R(t)u dt

= 10

Q = 04

4,

R = I2

(S not defined in HCP)

+ 1)2 + x22]3/2 + 1. Thus, the problem is put into the pseudo-LQR form
and B as in (41), and by setting in Q = 044 and R = I22 .

0.3

ound replicate those already know in literature,9, 10 so indicating the ef0.05


0.4
0
0.05
0.1
0.15
0.2
0.25
0.4
0.2
0
ed method.
xx1
xx 3
1

0.9586
0.5660

Iter CPU Time (s)


5
6

0.447
0.492

0.968

0.966

2
error
log
10

HCP
SCP

0.964
0.962

CPU Time referred to an Intel


Core 2 Duo 2 GHz with 4 GB
RAM running Mac OS X 10.6

2.5
2

0.4

0.96
0.958
1

uu1

JJ

0.2

Table 1. Rendez-vous solutions details


Problem

results (HCP)

uu 2

x4

xx 2

x4

e have been successfully solved with the ASRE method described above.Rendez-vous:
s of the
0.5
0.3 HCP and SCP, whose solutions are shown
0.3 in Figures 1 and 2,
J is0.25
the objective function associated
solution, Iter is x
xi to the optimal
0.2
0
i
arried0.2out to converge to the optimal solution, and0.1the CPU Time x
(comf
0.5
an Intel
Core
2
Duo
2
GHz
with
4
GB
RAM
running
Mac
OS
X
10.6.
0.15
0
1
9 . (The machine specifications and the termination
in (14)
0.1 is set to 10
0.1
1.5
other0.05twoxproblems
presented next, too).
f
0.2

4
6
8

3
iter

iter

10
1

3
iter

iter

SolveNL.m

+ 1)2 + x22]3/2 + 1. Thus, the problem is put into the pseudo-LQR form
and B as in (41), and by setting in Q = 044 and R = I22 .

results (SCP)

uu 2

x4

xx 2

x4

e have been successfully solved with the ASRE method described above.Rendez-vous:
s of0.25the HCP and SCP, whose solutions are shown
0.5
0.1 in Figures 1 and 2,
xi
J is the objective function associated
to the optimal
solution, Iter is xi
0.05
0
x(tf )
0.2 out to converge to the optimal solution, and the CPU Time (comarried
0
0.5
an Intel Core 2 Duo 2 GHz with 4 GB RAM running
Mac OS X 10.6.
0.05
0.15
in (14) is set to 109 . (The machine specifications
0.1 and the termination
1
other0.1two problems presented next, too).
0.15
x(tf )
1.5
0.2
ound replicate those already know in literature,9, 10 so indicating the ef2
0.05
0.25
1.5
0.05
0.1
0.15
0.2
0.25
0.3
0.2
0.1
0
0.1
0.2
ed method.
xx 1
xx 3
1

Table 1. Rendez-vous solutions details


Iter CPU Time (s)

0.569

0.5685

0.9586
0.5660

5
6

0.447
0.492

log
error 10

HCP
SCP

0.5695

0.568

JJ

Problem

0.5675

CPU Time referred to an Intel


Core 2 Duo 2 GHz with 4 GB
RAM running Mac OS X 10.6

0.5

0.5

4
6
8

0.567

10

0.5665
0.566
1

u1

u1

iter
iter

12
1

iter
iter

SolveNL.m

Orbital transfer: statement


Dynamics
x 1
x 2
x 3
x 4

Rotating frame (polar


coordinates)
x1 radial distance

= x3 ,
= x4 ,
= x1 x24 1/x21 + u1 ,
= 2x3 x4 /x1 + u2 /x1 .

State

Control

x = (x1 , x2 , x3 , x4 )

u = (u1 , u2 )

x2 angular phase

Normalized units

Objective function

length unit = initial orbit radius

time unit = 1/

(initial orbit)

Initial condition

1
J=
2

tf

uT u dt

ti

ti = 0

tf =

xi = (1, 0, 0, 1)

Final conditions
Problem A

xf = (1.52, , 0,

1/1.52)

Problem B

xf = (1.52, 1.5 , 0,

1/1.52)

The two HPC have been solved with the ASRE method. The solution
Table 2 whose columns have the same meaning as in Table 1. It can be seen
transfer:
results
an increasedOrbital
computational burden
is required to solve
this problem, esp
x2,f = 1.5. The two solutions reported in Table 2 are shown in Figures 3

0
0
0
0

1
0
0
1
0x1 x4
2x4 /x1 0
90

, B(x) =

90

30

180

150

210

Problem A

270

u1

120

1
30

60

30

210
240

300

270

330

210

control
Contol

-0.5

300

240
270

-1

0
1

u2

0.5

330

180

u
0.5

90 2

150

300

47.865

60

180

330
240

Contol
control

B x2,f = 1.5 4.8665 123

120

Iter CPU Time (s)

,A Qx2,f==04 40.5298
, R=
2.
22 I2 6.262

60

150

Problem

120

Results

0
0
0
0
1
0
0 1/x1

Problem B

A(x) =

0
0
1/x31
0

Table 2. EarthMars transfers details

Contol

Factorization

(a) Transfer trajectory.

2
Time

(b) Control pr

0.5

2
1
0

2
Time

time

3
0

Figure 3. Optimal EarthMars transfer (x2,f = )


1

Time
time

Stationkeeping: statement
x 1
x 2
x 3
x 4
x 5
x 6

= x4 ,
State
Dynamics
= x5 ,
x = (x1 , x2 , x3 , x4 , x5 , x6 )
= x6 ,
Control
1
2
2
+ x1 x6 + x1 (x5 + 1) cos x3 + a1 (x1 , x2 , x3 ) + u1 ,
=
2
u = (u1 , u2 , u3 )
x1
x4
a2 (x1 , x2 , x3 )
u2
= 2x6 (x5 + 1) tan x3 2 (x5 + 1) +
+
,
x1
x1 cos x3
x1 cos x3
a3 (x1 , x2 , x3 ) u3
x4
+ ,
= 2 x6 (x5 + 1)2 sin x3 cos x3 +
x1
x1
x1

Initial condition

Rotating frame (spherical coordinates)

xi = (1, 0.05

180/ , 0.05

x1 radial distance
x2 longitude deviation
x3 latitude

180/ , 0, 0, 0) ti = 0

Final condition

xf,1 = 1

xf,j free j = 2, . . . , 6

tf =

Objective function

Q = diag(0, 1, 1, 1, 1, 1),
R = diag(1, 1, 1),
S = 100 diag(1, 1, 1, 1, 1)

Normalized units

length unit = GEO radius

time unit = 1/ (initial orbit)

Reference longitude = 60 E

Perturbations

a1 , a2 , a3

Stationkeeping: factorization
Factorization
033
A(x) =

a41
0
a61

0
0
0

033

I33
0 0
0 a54
0 a64

a45
a55
a65

a46
a56
a66

B(x) =

1
0
0

0
r2

1
cos2

0
0
1
r2

with

a41
a45
a46
a54
a55

= x13 + 1 x26 + ( 2 x25 + 2 3 x5 + 1) cos2 x3 , a56


1
2
= [(1
a61
2 )x1 x5 + 2(1
3 )] cos x3 ,
= (1
a64
1 )x1 x6 ,
1
= x21 2(1
a65
2 ) x1 x5 ,
a66
= 2 1 x5 tan x3 2 2 xx41 ,
1,

2,

3,

1,

Can vary in [0, 1]

2,

1free parameters

= [2 + 2(1
1 )x5 ] tan x3 ,
= 2x1 1 sin 2x3 ,
1
= 2(1
1 ) x1 x6 ,
= [ 12 x5 1] sin 2x3 ,
= 2 1 xx41

[Topputo&Bernelli-Zazzera 2011]

Stationkeeping: results

RESULTS
Manoeuver
Free drift
TC

TFD

TSK
x 10

uu 2

Trajectory during 1 control cycle:


TFD of 2.5 days
TC of 0.5 day

uu 3

xx 3

0.5

0.5

Free drift (2.5 days)

Maneuver (0.5 day)


free drift
manoeuver
start control
end control

1 month simulation
uu 1

1.5

Control cycle

1.5
10

xx 2
2

5
x 10

x 10
2
1
0
0
x 10
1
0
1
0
x 10
5
0
5
0

10

15

20

25

10

15

20

25

10

15

20

25

time
Time

1 year stationkeeping simulated in [Topputo&Bernelli-Zazzera 2011]

Final Remarks

All the previous numerical techniques for optimization are


eventually based on the use of the Newton method:

Direct methods

Solution of the nonlinear system of


equations related to the necessary
conditions for optimality

Indirect methods

Solution of the boundary value


problem on the DAE system

Approx methods

Solution of TVLQR, no need of first


guess solution, but suboptimal

They suffer of the same disadvantages:!

Local convergence, i.e., they tend to converge to solutions


close to the supplied first guesses!
Need of good first guesses for the solution

Note: global optimization is another matter!

Selected references

Direct Methods:!

Enright, P.J., and Conway, B.A., Discrete Approximation to Optimal Trajectories Using Direct
Transcription and Nonlinear Programming, J. of Guid., Contr., and Dyn., 15, 9941001, 1992!
Betts, J.T., Survey of Numerical Methods for Trajectory Optimization, J. of Guid., Contr., and Dyn., 21,
193207, 1998!
Betts, J. T., Practical Methods for Optimal Control Using Nonlinear Programming, Society for Industrial
and Applied Mathematics, Philadelphia, PA, 2001!
Conway, B.A., Space Trajectory Optimization, Cambridge University Press, 2010

Indirect Methods:!

L. S. Pontryagin, V. G. Boltyanskii, R. V. Gamkrelidze, and E. F. Mishchenko, The Mathematical


Theory of Optimal Processes, John Wiley & Sons, New York, NY, USA, 1962!

Bryson, A.E., Ho, Y.C., Applied Optimal Control, Hemisphere Publishing Co., Washigton, 1975

ASRE Method:!

Cimen, T. and Banks, S.P., Global optimal feedback control for general nonlinear systems with
nonquadratic performance criteria, Systems and Control Letters, vol. 53, no. 5, pp. 327346, 2004.

S-ar putea să vă placă și