730 likes | 887 Views
An Efficient Motion Planner Based on Random Sampling. Jean-Claude Latombe Computer Science Department Stanford University. Main Collaborators. Lydia Kavraki (Rice U.) David Hsu (U. of North Carolina, Chapel Hill) Gildardo Sanchez (ITESM, Mexico) James Kuffner (U. of Tokyo)
E N D
An Efficient Motion PlannerBased on Random Sampling Jean-Claude Latombe Computer Science DepartmentStanford University
Main Collaborators • Lydia Kavraki (Rice U.) • David Hsu (U. of North Carolina, Chapel Hill) • Gildardo Sanchez (ITESM, Mexico) • James Kuffner (U. of Tokyo) • Rajeev Motwani (Stanford U.)
Goal of Motion Planning Answer queries about the connectivity of a space
Collision-free Kino-dynamic Stability Visibility Possible Constraints
The Beginning … Shakey (Nilsson, 1969): Visibility graph
Configuration Space Represent the robot as a point in a parameter space
Why Sampling-Based Planning? • Computing an explicit representation of the collision-free space is extremely time consuming and impractical • There exist fast collision-checking algorithms to test whether any given configuration or short path is collision-free, or not (0.001 sec or less)
Outline • General Approach • Specific Planner • Experimental Results • Other Applications
milestone mg mb Probabilistic Roadmap (PRM) admissible space [Kavraki, Svetska, Latombe,Overmars, 95]
Relation to Art-Gallery Problems [Kavraki, Latombe, Motwani, Raghavan, 95]
Easy Narrow Passage Issue Difficult
Probabilistic completeness Fast and reliable Probabilistic Completeness Under generally satisfied assumptions, if a solution path exists, the probability that a PRM planner fails to find one goes to 0 exponentially in the number of milestones. Full completeness Too costly Heuristic Too unreliable
Key Techniques • Collision checking / Distance computation • Sampling strategies
Key Techniques • Collision checking / Distance computation • Hierarchical approach • Feature-based approach • Sampling strategies
Performance • Collision checking takes between 0.0001 and .002 seconds for 2 objects of 500,000 triangles each on a 1-GHz Pentium III • Collision checking is faster when objects collide or are far apart, and gets slower when they get closer without colliding • Overall collision checking time grows roughly as the log of the number of triangles
Key Techniques • Collision checking / Distance computation • Sampling strategies • Multi-stage strategies • Obstacle-sensitive strategies • Multiple vs. single query strategies • Configuration vs. control sampling • Single vs. bi-directional sampling • Lazy collision checking • Probabilistic biases (e.g., medial axis transform)
Outline • General Approach • Specific Planner • Experimental Results • Other Applications
SBL Planner • Single-query Does not pre-compute a roadmap [Hsu, Latombe, Motwani, 1997] • Bi-directional sampling Constructs a roadmap by growing two trees of milestones rooted at the input query configuration [Hsu, 2000] • Lazy collision checking Postpone collision-checking operations until absolutely needed [Bohlin and Kavraki, 2000]
SBL Planner m m is picked at random among the milestones with a probabilistic distribution inverse to the local density of sampling
SBL Planner The collision-checking work is memorized
Why Postponing Collision Checking? • The a priori probability that a short edge be collision-free is rather large
Why Postponing Collision Checking? • The a priori probability that a short edge be collision-free is rather large • The test of an edge is most expensive when it is actually collision-free • Most edges of a roadmap do not end up in a solution path
Remedy • remove as many vertices as possible • add vertices as needed • Problems • too few vertices: get stuck • too many vertices: slow Path Optimization
Outline • General Approach • Specific Planner • Experimental Results • Other Applications
Single-Robot Examples nrob = 3,000 and nobs = 50,000 nrob = 5,000 and nobs = 21,000 nrob = 5,000; nobs = 83,000 nrob = 3,000; nobs = 50 nrob = 3,000 and nobs = 100
Videos nrobot =5,000; nobst = 21,000 Tav = 0.6 s
Videos nrobot =3,000; nobst = 50,000 Tav = 0.17 s nrobot =5,000; nobst = 83,000 Tav = 4.42 s
Videos nrobot =3,000; nobst = 100 Tav = 6.99 s nrobot =3,000; nobst = 50,000 Tav = 4.45 s
Experimental Data on One Example nrob = 5,000 nobs = 21,000 (1 GHz Pentium III processor)
1e 1d 1c 1b 1a Average Performance Averages over 100 runs (1GHz Pentium III processor)
Impact of Lazy Collision Checking Average performance with lazy collision checking Average performance without lazy collision checking
Average Running Times (1 GHz processor)
Centralized vs. Decoupled Planning Averages over 20 runs
Outline • General Approach • Specific Planner • Experimental Results • Other Applications
Design for Manufacturing/Servicing General Motors General Motors General Electric [Hsu, 2000]
Radio-Surgical Planning Cyberknife System (Accuray, Inc.) CARABEAMER Planner [Tombropoulos, Adler, and Latombe, 1997] Visibility constraints
•2000 < Tumor < 2200 • 2000 < B2 + B4 < 2200 • 2000 < B4 < 2200 • 2000 < B3 + B4 < 2200 • 2000 < B3 < 2200 • 2000 < B1 + B3 + B4 < 2200 • 2000 < B1 + B4 < 2200 • 2000 < B1 + B2 + B4 < 2200 • 2000 < B1 < 2200 • 2000 < B1 + B2 < 2200 T T B1 C B2 B4 • •0 < Critical < 500 • 0 < B2 < 500 B3 Radio-Surgical Planning