Potential Improvements for the IRIS Algorithm in C-Space
Peter Werner, Thomas Cohn, Rebecca Jiang
March 15, 2024
IRIS-NP
IRIS-NP
IRIS-NP
SNOPT
Â
IRIS-NP
IRIS-NP
IRIS-NP
The Current GCS Workflow
Make Regions with IRIS-NP
Motion Planning with GCS
Motion Planning with FPP
GCS-A*
Nonconvex Variants of GCS
GCS as a Policy
GCS + MCTS
Make Regions with C-IRIS
Clique Seeding
Everything Built on IRIS-NP
Shortcomings of IRIS-NP
- Slow Runtime
 - Poor Scaling with World Complexity
 - Not Actually Collision-Free
Initializing SNOPT is hard, and many programs must be run to imply collision-free
Need to run programs for every collision pair, so potentially quadratic runtime in number of geometries
Mostly in corners of regions. Due to pathologies and simply scale issues
Key Idea: Collision Checking a Single Configuration is Fast!
Algorithm 1: GreedyIRIS
Intuition: It's hard for SNOPT to push an infeasible initialization to infeasibility
Â
Key idea: Only start SNOPT at points known to be in collision by drawing samples
Â
Algorithm 1 -- GreedyIRIS
Algorithm 1 -- GreedyIRIS
Algorithm 1 -- GreedyIRIS
Algorithm 1 -- GreedyIRIS
Algorithm 1 -- GreedyIRIS
Algorithm 1 -- GreedyIRIS
Algorithm 1: GreedyIRIS
Some notes...
Â
- Need an okay starting polytope
- Run an iteration of IRIS-NP with very weak settings
- Batch structure -- repeatedly draw batches of samples until all are collision-free
- Run a SNOPT program for each collision pair in a particle (may not be the best option)
Algorithm 2 -- FastIRIS
- Goals:
- Make Iris scale with compute
- Exploit parallelism
- Approach:
- Use simple heuristic to solve closest point program
Algorithm 2 -- FastIRIS
sample
Algorithm 2 -- FastIRIS
find collisions
Algorithm 2 -- FastIRIS
parallel bisection search
Algorithm 2 -- FastIRIS
rank samples by distance under the metric
Algorithm 2 -- FastIRIS
 place faces in order
Algorithm 2 -- FastIRIS
resample and repeat
Algorithm 2 -- FastIRIS
repeat until no collisions found
Algorithm 2 -- SensitivityÂ
Quality of candidates matters
Algorithm 2 -- SensitivityÂ
 smaller regions, more faces
Algorithm 3 -- RayIRIS
Raycasting to find collisions
Preliminary Results
Iris benchmarks
2
3
5
6
7
7
7
14
DoF Increasing
DoF Increasing
Preliminary Results
Preliminary Results
Algorithm Settings IrisInConfigurationSpace
Preliminary Results
Algorithm Settings GreedyIris
Preliminary Results
Algorithm Settings FastIris
Preliminary Results
HARD TO CALIBRATE
A Spectrum of Algorithms
Faster
Smaller Volume More Faces
Slower
Larger Volume
Fewer Faces
FastIRIS
RayIRIS ?
IRIS-NP
GreedyIRIS
C-IRIS
Some Other Ideas
- Use signed distance to optimize instead of pairwise collision programs. (Hongkai has worked on this.)
- Use samples along SNOPT path as new initial guesses.
- Use machine learning?
- Global optimization. (The IRIS hyperplanes feel a lot like the cuts used in branch-and-cut.)
Better IRIS (RLG Long Talk 3/15/24)
By tcohn
Better IRIS (RLG Long Talk 3/15/24)
- 25