Discrete + continuous optimization

MIT 6.821: Underactuated Robotics
Spring 2023, Lecture 17
Follow live at https://slides.com/d/Yp1UjL4/live
(or later at https://slides.com/russtedrake/spring24-lec17)

Image credit: Boston Dynamics
Running example: Shortest path around an obstacle

start
goal


- Combinatorial (e.g. over homotopy classes)
- Smooth optimization (over curves)
Two aspects of the motion planning problem:
start
goal
Motion planning as a (nonconvex) optimization

start
goal
fixed number of samples
collision-avoidance
(outside the \(L^1\) ball)
nonconvex
Planning as a mixed-integer convex program

goal
start
disjunctive
constraints
Mixed-integer programs
"Convex relaxation" replaces this with:
"Mixed-integer convex" iff \(f\) and \(g\) are convex.
Convex relaxation is "tight" when the relaxed solution is a solution to the original problem.
Branch and bound
Convex relaxations provide lower bounds
Feasible solutions provide upper bounds
convex
convex
convex
convex
convex
Branch and bound performance
- Number of integer variables
- "Tightness" of the convex relaxation
- Motion planning transcription:
\(\Rightarrow\) Long solve times.
- Too many integer variables (false combinatorial complexity)
- Disjunctive programming leads to "loose" relaxations
Traditional Shortest Path as a Linear Program (LP)
\(\varphi_{ij} = 1\) if the edge \((i,j)\) in shortest path, otherwise \(\varphi_{ij} = 0.\)
\(c_{ij} \) is the (constant) length of edge \((i,j).\)
"flow constraints"
binary relaxation
path length
Graphs of Convex Sets
- For each \(i \in V: