310 likes | 422 Views
Probab ilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces. By Lydia E. Kavraki, Petr Svestka, Jean-Claude Latombe, Mark H. Overmars. Emre Dirican - 3440796. Outline. Introduction Related Work The General Method Customization of the Method Experiments Results
E N D
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces By Lydia E. Kavraki, Petr Svestka, Jean-Claude Latombe, Mark H. Overmars Emre Dirican - 3440796
Outline • Introduction • Related Work • The General Method • Customization of the Method • Experiments • Results • Conclusions and Assesments • Questions
Introduction • Collision-free paths for robots • Static workspace • Two phase approach • The learning phase • Generate random free configurations • Connect by a local planner • The query phase • Find a path from start to goal
Introduction • Experiments: robots with many DoFs • Efficient, reliable, practical planner • Local methods can be engineered further
Related Work • Potential Field Methods • Local minima • Computationaly expensive solutions • Impractical as the DoFs increase • Randomized Path Planner (RPP) • To escape local minima • Problems with narrow passages
Related Work • Single shot roadmap methods • Visibility graphs, Voronoi diagrams, Silhoutte • Either, limited to low dimensional spaces • Or, Less practical • Differences/Extensions • Many-DoF robots • Connectivity
The Method • The Learning Phase • Construction Step: uniform undirected graph • Expansion Step: increase connectivity • The Query Phase • Connect start(s) and goal(g) positions • Find a path between s and g • Assumption: Query after the learning
The Learning Phase - Step 1 • Construction Step • The graph, R = (N,E) • N: the set of configurations over C-free • E: the edges (paths) between two configurations • Repeatedly, generate random configurations • By local planner, connect a node to some others and add them to E.
The Learning Phase - Step 1 • Construction Algorithm D: a distance function Δ: a function to check whether a path exists or not
The Learning Phase - Step 1 • Creating random configurations: • Draw coordinates using uniform probability distribution over the intervals of DoFs • Check for collisions: • An obstacle • Bodies of the robot • Add to N if collision free
The Learning Phase - Step 1 • Local Path Planner: • Slow (powerful) vs. fast • Used also in query phase • Need fast response • Deterministic vs. nondeterministic • Need to store local paths with nondeterministic • Line segment between configurations • m discrete configurations on the line • Path is collision free if all m configurations are
The Learning Phase - Step 1 • Choosing neighbor nodes: • bounded by a max. number of neighbors • The distance function (D): • Where x is a point on the robot.
The Learning Phase - Step 2 • The Expansion Step • Increase the density of the roadmap around difficult regions, i.e. narrow passages • Short random-bounce walks • Pick a random direction from a configuration(c), • Move until a collision occurs, • Add new configuration and the edge to the graph, • Take new direction, repeat.
The Learning Phase - Step 2 • Selection of configurations to expand • For each node, a failure ratio is computed: • Then, a weight, proportional to failure ratio is: n(c) : number of times tried to connect f(c) : number of times failed
The Query Phase • Connect start(s) and goal(g) configurations • Similar to construction phase • Try to connect, by an increasing distance: • s to s’on R • g to g’ on R • Recompute, concatenate the local paths from s’ to g’
The Query Phase • Connection failure • Random-bounce walks • Frequent query failures • Connectivity on C-free • Increase time spent on learning phase
Customization of the Method • Application to Planar Articulated Robots • Customization with respect to joints at: • Local path planning • Distance computation • Customization at collision checking • 3D bitmaps to represent each link in 2D workspace • Check against the C-space bitmap
Experiment • Customized method with articulated robots • 2-D Scenes • Each scene with 8 different configurations • Trying to connect to 30 generated roadmaps • In 2.5 secs of query time • Attempt to connect to largest component of the roadmap : Time spent on construction step • : Time spent on expansion step
Results – Customized Method • Scene 1: Fixed based 7-DoF articulated robot
Results – Customized Method With expansion and No expansion
Results – Customized Method • Connecting configurations to one roadmap • Many collision checks, because of random-bounce walks before connection to roadmap
Results – Customized Method • Scene 2: Free based 7-DoF articulated robot
Results – Customized Method With expansion and No expansion
Experiment • The general method with articulated robots • 2-D scenes • 2 scenes, start and goal configuration • Attempt to connect to 30 roadmaps • 2.5 secs of query times
Experiment • Scene 3: 4 DoF articulated robot (left) • Scene 4: 5 DoF articulated robot (right) • Dark grey – Start configuration • White – Goal configuration
Results – General Method • Results for Scene 3 and 4 • Results for Scene 1
Conclusions and Assesments • Efficient in relatively complex 2D problems • Deals with many-DoF robots • Better query times compared to Randomized Path Planner (RPP) method • Customizable in local methods • Future work: Dynamic changes
Conclusions and Assesments • Assumption: Interwoven learning and query phases • Not much detail or results. • Applicable to 3D environments? • Learning time increases ( in order of minutes) • Still efficient enough?
Conclusions and Assesments • Similar approach used for car-like robotsby Svetska and Overmars, 1994 • Flexible – local method customizations • Efficient, but again in 2D • Path planning with straight lines • Lack of smooth motions
Conclusions and Assesments • Comparative studies and analysis for PRM by Geraerts and Overmars, 2002 and 2007 • Connectivity in difficult regions • Handled by random-bounce walks • Choice of techniques on local methods becomes important • Dependant on scenes or robot • Easy to implement and use? • Still needs customizations
Questions • Thanks for your patience. • Any questions or remarks?