Trajectory Optimizationmaxim/classes/robotplanning_grad/...- Explicit integration to satisfy...
Transcript of Trajectory Optimizationmaxim/classes/robotplanning_grad/...- Explicit integration to satisfy...
Trajectory Optimizationor “How I stopped worrying and started loving the solvers”
some slides borrowed from Matthew Kelly
Ramkumar Natarajan
So far in the class...
Graph SearchSampling-Based
Trajectory Optimization
What is Trajectory Optimization?
?force
No actuation
An Optimal Trajectory
minimize: objective functionsubject to: dynamics and constraints
control(force)
state
An Optimal Trajectory
minimize: objective functionsubject to: dynamics and constraints
control(force)
state
An Optimal Trajectory
minimize: objective functionsubject to: dynamics and constraints
control(force)
state
Basic Form
Transcription
Direct Transcription
Complexity
u(t)
t0
t1 t2t3 t4
vs
z(k)
Complexity
u(t)
t0
t1 t2t3 t4
vs
Fundamentally Scalable- Only discrete in time (ALWAYS 1D)- No discretization in space- No exponential complexity/curse of
dimensionality
Decision Variables
subject to
What’s weird about
this?
t0 =
Decision Variables
subject toWhy is x(t) a
decision variable when
you have dynamics?
t0 =
Single Shooting
But x(t) can be written as a function of x0, u(t), f(x, u)
Assume linear system dynamics
Single ShootingThe optimization can be rewritten with unrolled dynamics and NO dynamics constraint
But hold on…
There is an An - Poor numerics- Ill-conditioning- Hard to set up the solver- Can be very powerful
Direct Collocation - Transcription
Direct Collocation - Transcription
The collocation constraints are in integral form using “quadrature” method
Can also use derivative form using “finite differences”
Direct Collocation - Transcription
Direct Collocation - Transcription
Direct Collocation - Interpolation
Initializing Trajectory Optimization
Basic Idea- Solve easier problem- Construct series of easier problems
Constructing Easier Problem- Neglect dynamics- Simplify objective- Omit constraints
Direct Collocation
Variants- Single shooting- Multiple shooting- Differential Dynamic
Programming
Classification
Trajectory Optimization
Direct Transcription
Shooting methods- Simulation- Explicit integration to
satisfy dynamics- Decision variables are
controls and boundary states
Simultaneous methods- Function
approximation- Dynamics are
constraints- Decision variables are
both states & controls
Variants- Direct collocation- Orthogonal collocation- Pseudospectral
collocation
Comparison
Graph SearchSampling-Based
Trajectory Optimization
- Strong theoretical properties- Simple to use- Global methods- Suitable to low dimensions
- Simple to use- Global methods- Scales to high dimensions- Relies on sampling strategy
- Very powerful capabilities- Local methods- Easily scales to very high dimensions- No guarantees on convergence/quality
Courses in RI16-745: Dynamic Optimization16-748: Underactuated Robotics
Transcribers
Solvers
IPOPT SNOPT FMINCON