Presentation is loading. Please wait.

Presentation is loading. Please wait.

Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars.

Similar presentations


Presentation on theme: "Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars."— Presentation transcript:

1 Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars

2 Path planning Low-dimensionality (= few dof) cases are easy, fast – Translating robots Geometric solutions –Linkages Approximate cell decomposition High-dof situations problematic, due to computational / space complexity – potential field methods

3 Configuration Space Problems: Geometric complexity Space dimensionality Approximate the free space by random sampling  Probabilistic Roadmaps

4 Sampling Visibility Graph is a sampling approach, just not a random one. Cell decomposition used sampling in well-defined regions. Potential fields sample to approximate the line integral of the imposed field.

5 Free-Space and C-Space Obstacle How do we know whether a configuration is in the free space? –Computing an explicit representation of the free-space is very hard in practice. Solution: Compute the position of the robot at that configuration in the workspace. Explicitly check for collisions with any obstacle at that position: –If colliding, the configuration is within C-space obstacle –Otherwise, it is in the free space Performing collision checks is relative simple

6 Probabilistic roadmaps PRMs don’t represent the entire free configuration space, but rather a roadmap through it

7 Probabilistic roadmaps PRMs don’t represent the entire free configuration space, but rather a roadmap through it

8 Probabilistic roadmaps PRMs don’t represent the entire free configuration space, but rather a roadmap through it S G

9 Probabilistic roadmaps PRMs don’t represent the entire free configuration space, but rather a roadmap through it S G

10 Probabilistic roadmaps PRMs don’t represent the entire free configuration space, but rather a roadmap through it S G

11 Two geometric primitives in configuration space C LEAR(q) Is configuration q collision free or not? L INK(q, q’) Is the path between q and q’ collision-free?

12 Two geometric primitives in configuration space C LEAR(q) Is configuration q collision free or not? L INK(q, q’) Is the path between q and q’ collision-free?

13 PRM algorithm overview Roadmap is an undirected acyclic graph R = (N, E) Nodes N are robot configurations in free C-space, called milestones Edges E represent local paths between configurations

14 PRM algorithm overview Learning Phase Construction step: randomly generate nodes and edges Expansion step: improve graph connectivity in “difficult” regions Query Phase

15 Learning: construction overview 1. R = (N, E) begins empty 2. A random free configuration c is generated and added to N 3a. Candidate neighbors to c are partitioned from N 3b. Edges are created between these neighbors and c, such that acyclicity is preserved 4. Repeat 2-3 until “done”

16 General local planner 1. Connect the two configurations in C-space with a straight line segment 2. Check the joint limits 3. Discretize the line segment into a sequence of configurations c 1, …, c m such that for every (c i, c i+1 ), no point on the robot at c i lies further than  away from its position at c i+1 4. For each c i, grow robot by , check for collisions

17 Construction step example Graph after several iterations...

18 Construction step example 2. A random free configuration c is generated and added to N c

19 Construction step example 3a. Candidate neighbors to c are partitioned from N c

20 Construction step example 3b. Edges are created between these neighbors and c, such that acyclicity is preserved c

21 Construction step example 3b. Edges are created between these neighbors and c, such that acyclicity is preserved c

22 PRM algorithm overview Learning Phase Construction step: randomly generate nodes and edges Expansion step: improve graph connectivity in “difficult” regions Query Phase

23 Expansion step Problem: construction step generates uniform covering of free C- space, might fail to capture connectivity of narrow passages

24 Expansion step Solution: improve graph connectivity in “difficult” areas, measured heuristically

25 Random-bounce walk 1a. Pick a random direction of motion in C-space, move in this direction from c 1b. If collision occurs, pick a new direction and continue 2. The final configuration n and the edge (c, n) are inserted into the graph 3. Attempt to connect n to other nodes using the construction step technique

26 Random-bounce walk Path between c and n must be stored, since process is non- deterministic

27 Expansion step example Graph after construction step...

28 Expansion step example 3a. Select c such thatP(c is selected) = w(c).030.061.091.12.15

29 Expansion step example 3a. Select c such thatP(c is selected) = w(c).030.061.091.12.15

30 Expansion step example 3b. “Expand” c using a random-bounce walk.030.061.091.12.15

31 Expansion step example 3b. “Expand” c using a random-bounce walk.030.061.091.12.15

32 Expansion step example 3b. “Expand” c using a random-bounce walk.030.061.091.12.15

33 Expansion step example 3b. “Expand” c using a random-bounce walk.030.061.091.12.15

34 Expansion step example 3b. “Expand” c using a random-bounce walk.030.061.091.12.15

35 Another view Acyclicity not necessary From original paper –May make weird paths Allow connectivity up to a certain valence Expansion often skipped since it seems like a hack

36 Probabilistic Roadmap (PRM): free space local path milestone

37 Simpler Outline Input: geometry of the moving object & obstacles Output: roadmap G = (V, E) 1: V   and E  . 2: repeat 3: q  sampled at random from C. 4: if CLEAR(q)then 5: Add q to V. 6: N q  a set of nodes in V that are close to q. 6: for each q’  N q, in order of increasing d(q,q’) 7: if LINK(q’,q)then 8: Add an edge between q and q’ to E.

38 Why does it work? Intuition A small number of milestones almost “cover” the entire configuration space.

39 PRM algorithm overview Learning Phase Construction step: randomly generate nodes and edges Expansion step: improve graph connectivity in “difficult” regions Query Phase

40 Query phase Given start configuration s, goal configuration g, calculate paths Ps and Pg such that Ps and Pg connect s and g to nodes s and g that are themselves connected in the graph

41 Experimental results (briefly) Tested with up to 7-dof robot, both free- and fixed-base Given enough learning time, able to achieve 100% success, but not unreasonable results even with shorter learning periods Queries are fast (not more than a couple of seconds)

42 Conclusions Pros Once learning is done, queries can be executed quickly Complexity reduction over full C-space representation Adaptive: can incrementally build on roadmap Probabilistically complete, which is usually good enough

43 Conclusions Cons (?) Probabilistically complete Paths are not optimal -- can be long and indirect, depending on how graph was created; can apply smoothing, but...


Download ppt "Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars."

Similar presentations


Ads by Google