Non-Euclidean Motion Planning with Graphs of Geodesically-Convex Sets

Thomas Cohn, Mark Petersen, Max Simchowitz, Russ Tedrake

Robot Locomotion Group
(Broad) Outline
-
Motivation
- Robot Motion Planning
-
Context
- Mixed-Integer Optimization
- Optimization on Manifolds
-
Our Contributions
- Methodology
- Robot Results
- Generalization
Part 1
Motivation
Motion Planning
Broadly speaking
- How can I get from Point A to Point B?
- What makes a path good?
- Short length
- Short duration
- What constraints might we have?
- Collision avoidance
- Dynamics

Configuration-Space Planning

https://github.com/ethz-asl/amr_visualisations
Task Space
Configuration Space
Planning with Roadmaps
Michigan Robotics 320, Lecture 15



Planning with Roadmaps
Pathfinding with Rapidly-Exploring Random Tree, Knox

Trajectory Optimization
Underactuated Robotics

Control points of a trajectory are decision variables.
Use costs and constraints to enforce objectives, dynamics, and more.
Part 2
Context
Nonconvexity in TrajOpt

Planning through Convex Sets
Motion Planning around Convex Obstacles with Convex Optimization, Marcucci et. al.
Obstacle avoidance: nonconvex
Safe-set containment: convex
Obstacle avoidance guarantees!
- Piecewise-linear trajectories: just check endpoints
- Bezier curves: check control points



A Graph of Convex Sets
Configuration Space as a Manifold

Trajectory Optimization on Manifolds: A Theoretically-Guaranteed Embedded Sequential Convex Programming Approach, Bonalli et. al.
Geodesics: Shortest Paths
For a curve γ connecting two points p=γ(0),q=γ(1) on a manifold, its arc length is
L(γ)=∫01∣∣γ˙(t)∣∣dt

Geodesics on Surfaces by Variational Calculus, Villanueva

The Curvature and Geodesics of the Torus, Irons
This yields a distance metric
d(p,q)=inf{L(γ)∣γ∈Cpw1([0,1],M),γ(0)=p,γ(1)=q}
A geodesic is a (locally) length-minimizing curve.
Convex Sets
A set X⊆Rn is convex if ∀p,q∈X, the line connecting p and q is contained in X
Geodesically Convex Sets
A set X⊆M is strongly geodesically convex if ∀p,q∈X, there is a unique length-minimizing geodesic (w.r.t. M) connecting p and q, which is completely contained in X.


Convex Set, Wikipedia
Part 3a
Methodology
A Graph of Geodesically Convex Sets (GGCS)
A directed graph G=(V,E)
- For each vertex v∈V, there is a strongly geodesically convex manifold Yv
- For each edge e=(u,v)∈E, there is a cost function ℓeY:Yu×Yv→R
- ℓeY must be geodesically convex on Yu×Yv
GCS
GGCS
Transforming Back to a GCS

When is it Convex?
Have to consider the curvature of the manifold.

Positive curvature
E.g. Sn,SO(3),SE(3)
Negative curvature
E.g. Saddle, PSD Cone Sn
Zero curvature
E.g. Rn,Tn


?
Zero-Curvature is Still Useful
- All 1-dimensional manifolds
- Continuous revolute joints
- SO(2), SE(2)
- Products of flat manifolds
Fetch Robot Configuration
Space: SE(2)×T3×R7

Part 3b
Experimental Results
Part 3c
Generalization



Planning on PL Approximations
Black: Shortest path on PL approximation
Red: Shortest path on sphere
Shortest Paths in the Maze
Sample path between a start/goal pair.
The large gap in the center gives room for the block to reorient itself.

Bimanual Manipulation
Constrained Bimanual Planning with Analytic Inverse Kinematics, Thomas Cohn, Seiji Shaw, Max Simchowitz, and Russ Tedrake
Nonconvex Objectives
Planning Shorter Paths in Graphs of Convex Sets by Undistorting Parametrized Configuration Spaces, Shruti Garg, Thomas Cohn, and Russ Tedrake
Non-Euclidean Motion Planning with Graphs of Geodesically-Convex Sets

Thomas Cohn, Mark Petersen, Max Simchowitz, Russ Tedrake

Robot Locomotion Group
LIDS Student Conference Talk
By tcohn
LIDS Student Conference Talk
- 33