Beruflich Dokumente
Kultur Dokumente
Robert Stengel Robotics and Intelligent Systems MAE 345, Princeton University, 2011
Optimization problems and criteria Cost functions Static optimality conditions Examples of static optimization
Copyright 2011 by Robert Stengel. All rights reserved. For educational use only. http://www.princeton.edu/~stengel/MAE345.html
Estimation Control
Find feedback control gains that minimize tracking error, !x , in presence of random disturbances
Find feedback control structure that guarantees stability (i.e., that prevents divergence)
Dynamic
Optimal state and control vary over time: J* = J[x*(t), u*(t)]
Optimal trajectory Optimal feedback strategy
Stochastic
Uncertainty in system model, parameters, initial conditions, disturbances, and resulting cost function Optimal control minimizes the expected value of the cost:
Optimal cost = E{J[x*, u*]}
Minimum
Maximum
Real-World Topography
dJ du
=0
u =u*
" !J !J =$ ! u u = u* $ ! u1 #
2
!J ! u2
2
...
Gradient
i.e., all the slopes are concurrently zero at the optimum point Example:
J = ( u1 ! 4 ) + ( u2 ! 8 ) dJ = 2 ( u1 ! 4 ) = 0 when u1 * = 4 du1 dJ = 2 ( u2 ! 8 ) = 0 when u2 * = 8 du2 # "J "J =% " u u = u* % " u1 $
J = (u ! 4 )
dJ = 2 (u ! 4 ) du = 0 when u* = 4
4 & ( $ 8 '
=# $ 0 0 & '
But the Slope can be Zero for More than One Reason
Minimum Maximum Minimum
d J du 2
>0
u =u*
d2J du 2
<0
u =u*
Either
Inection Point
Example:
J = (u ! 4 )
Example:
J = ! (u ! 4 )
dJ = 2 (u ! 4 ) du d2J =2>0 du 2
dJ = !2 ( u ! 4 ) du d2J = !2 < 0 du 2
!J ! u2
...
!2J ! u2
u = u*
Hessian matrix
!2J % ' ... ! u1! um ' ' !2J ' ... >0 ! u2 ! u m ' ' ... ... ' !2J ' ... ' 2 ! um ' & u = u*
3 x 3 example !q11 q12 q13 $ & # Q = #q21 q22 q23 & # % "q31 q32 q33 &
J ( u * + !u ) " J ( u *) + !J ( u *) + ! 2 J ( u *) + ...
q11 > 0,
q11
q12
q21 q22
q11 q12 q13 > 0, q21 q22 q23 > 0 q31 q32 q33
! 2 J ( u *) =
1 T !u 2
#"2J % 2 % $ "u
& ( !u ) 0 ' u = u* (
First variation is zero at the minimum Second variation is positive at the minimum
How Many Maxima/Minima does the Mexican Hat [z = (sin R)/R] Have?
" !J !J =$ ! u u = u* $ ! u1 #
" !2J $ 2 $ ! u1 $ 2 $ ! J = $ ! u2! u1 $ ... $ $ !2J $ ! um ! u1 $ #
Rosenbrock Function
Typical test function for numerical optimization algorithms
!J ! u2
!2J ! u1! u2 !2J 2 ! u2
... !2J ! u2 ! u m
...
2 R = u12 + u2
!2J ! u2
u = u*
!2J % ' ! u1! um ' ' 2 ! J ' ... > 0 ! u2 ! u m ' < ' ... ... ' 2 ' ! J ... ' 2 ! um ' & u = u*
...
Prior example
Gradient from Wolfram Alpha Maxima from Wolfram Alpha One maximum
One minimum
Example : min J
u1 , u2
subject to
J = u1 ! 2 u1u2 + 3u2 ! 40
2
J = u1 ! 2 u1u2 + 3u2 ! 40
2 2
Optimal solution
2
Constraint
= u1 ! 2 u1 ( u1 + 2) + 3( u1 + 2) ! 40
2
c = u2 ! u1 ! 2 = 0 " u2 = u1 + 2
= 2 u1 + 8 u1 ! 28 "J = 4 u1 + 8 = 0 "u1
2
u1* = !2 u2 * = 0 J* = !36
Add constraint to the cost function, weighted by Lagrange multiplier, ! c is required to be zero when JA is a minimum
! JA ! J !c = + "T =0 !x !x !x ! JA ! J !c = + "T =0 !u !u !u
J A ( x, u) = J ( x, u) + ! T c( x, u)
! JA =c=0 !"
c= x!u!2= 0
Partial derivatives
! *T = " or
# J $ #c ' & ) #x % #x (
"1
c ( x, u ) = 0
!J = "2u + 6 x !x !J = 2u " 2 x !u
!c =1 !x !c = "1 !u
! * = 2u " 6 x
( 2u ! 2 x ) + ( 2u ! 6 x ) ( !1)
"x = 0
u = !2
From constraint
Optimal solution
x* = 0 u* = !2 J * = !36