probabilistic roadmaps for path planning in high-dimensional configuration spaces (1996) l. kavraki,...
DESCRIPTION
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars. Path planning. Low-dimensionality (= few dof) cases are easy, fast Translating robots Geometric solutions Linkages Approximate cell decomposition - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/1.jpg)
Probabilistic Roadmaps for Path Planning in High-
Dimensional Configuration Spaces (1996)
L. Kavraki, P. Švestka,J.-C. Latombe, M. Overmars
![Page 2: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/2.jpg)
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
![Page 3: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/3.jpg)
Configuration Space
Problems:• Geometric complexity• Space dimensionality
Approximate the free space by random sampling
Probabilistic Roadmaps
![Page 4: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/4.jpg)
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.
![Page 5: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/5.jpg)
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
![Page 6: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/6.jpg)
Probabilistic roadmapsPRMs don’t represent the entirefree configuration space, but rather a roadmap through it
![Page 7: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/7.jpg)
Probabilistic roadmapsPRMs don’t represent the entirefree configuration space, but rather a roadmap through it
![Page 8: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/8.jpg)
Probabilistic roadmapsPRMs don’t represent the entirefree configuration space, but rather a roadmap through it
S
G
![Page 9: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/9.jpg)
Probabilistic roadmapsPRMs don’t represent the entirefree configuration space, but rather a roadmap through it
S
G
![Page 10: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/10.jpg)
Probabilistic roadmapsPRMs don’t represent the entirefree configuration space, but rather a roadmap through it
S
G
![Page 11: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/11.jpg)
Two geometric primitives in configuration space
• CLEAR(q)Is configuration q collision free or not?
• LINK(q, q’) Is the path between q and q’ collision-free?
![Page 12: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/12.jpg)
Two geometric primitives in configuration space
• CLEAR(q)Is configuration q collision free or not?
• LINK(q, q’) Is the path between q and q’ collision-free?
![Page 13: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/13.jpg)
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
![Page 14: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/14.jpg)
PRM algorithm overview• Learning Phase• Construction step: randomly generate nodes and edges
• Expansion step: improve graph connectivity in “difficult” regions
• Query Phase
![Page 15: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/15.jpg)
Learning: construction overview1. R = (N, E) begins empty
2. A random free configuration c is generated and added to N3a. Candidate neighbors to c are partitioned from N3b. Edges are created between these neighbors and c, such that acyclicity is preserved
4. Repeat 2-3 until “done”
![Page 16: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/16.jpg)
General local planner1. 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 c1, …, cm such that for every (ci
, ci+1), no point on the robot at ci lies further than away from its position at ci+1
4. For each ci, grow robot by , check for collisions
![Page 17: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/17.jpg)
Construction step exampleGraph after several iterations...
![Page 18: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/18.jpg)
Construction step example2. A random free configuration c is generated and added to N
c
![Page 19: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/19.jpg)
Construction step example3a. Candidate neighbors to c are partitioned from N
c
![Page 20: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/20.jpg)
Construction step example3b. Edges are created between these neighbors and c, such that acyclicity is preserved
c
![Page 21: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/21.jpg)
Construction step example3b. Edges are created between these neighbors and c, such that acyclicity is preserved
c
![Page 22: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/22.jpg)
PRM algorithm overview• Learning Phase• Construction step: randomly generate nodes and edges
• Expansion step: improve graph connectivity in “difficult” regions
• Query Phase
![Page 23: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/23.jpg)
Expansion step• Problem: construction step generates uniform covering of free C- space, might fail to capture connectivity of narrow passages
![Page 24: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/24.jpg)
Expansion step• Solution: improve graph connectivity in “difficult” areas, measured heuristically
![Page 25: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/25.jpg)
Random-bounce walk1a. 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
![Page 26: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/26.jpg)
Random-bounce walk
• Path between c and n must be stored, since process is non-deterministic
![Page 27: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/27.jpg)
Expansion step exampleGraph after construction step...
![Page 28: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/28.jpg)
Expansion step example3a. Select c such that P(c is selected) = w(c)
.030
.030
.030
.061
.091
.091 .091
.091
.091
.12
.12
.15
![Page 29: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/29.jpg)
Expansion step example3a. Select c such that P(c is selected) = w(c)
.030
.030
.030
.061
.091
.091 .091
.091
.091
.12
.12
.15
![Page 30: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/30.jpg)
Expansion step example3b. “Expand” c using a random-bounce walk
.030
.030
.030
.061
.091
.091 .091
.091
.091
.12
.12
.15
![Page 31: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/31.jpg)
Expansion step example3b. “Expand” c using a random-bounce walk
.030
.030
.030
.061
.091
.091 .091
.091
.091
.12
.12
.15
![Page 32: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/32.jpg)
Expansion step example3b. “Expand” c using a random-bounce walk
.030
.030
.030
.061
.091
.091 .091
.091
.091
.12
.12
.15
![Page 33: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/33.jpg)
Expansion step example3b. “Expand” c using a random-bounce walk
.030
.030
.030
.061
.091
.091 .091
.091
.091
.12
.12
.15
![Page 34: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/34.jpg)
Expansion step example3b. “Expand” c using a random-bounce walk
.030
.030
.030
.061
.091
.091 .091
.091
.091
.12
.12
.15
![Page 35: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/35.jpg)
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
![Page 36: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/36.jpg)
Probabilistic Roadmap (PRM):
free spacelocal path
milestone
![Page 37: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/37.jpg)
Simpler OutlineInput: geometry of the moving object & obstaclesOutput: roadmap G = (V, E)1: V and E .2: repeat3: q sampled at random from C.4: if CLEAR(q)then5: Add q to V.6: Nq a set of nodes in V that are close
to q.6: for each q’ Nq, in order of increasing d(q,q’)7: if LINK(q’,q)then8: Add an edge between q and q’ to E.
![Page 38: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/38.jpg)
Why does it work? Intuition• A small number of milestones almost “cover”
the entire configuration space.
![Page 39: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/39.jpg)
PRM algorithm overview• Learning Phase• Construction step: randomly generate nodes and edges
• Expansion step: improve graph connectivity in “difficult” regions
• Query Phase
![Page 40: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/40.jpg)
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
![Page 41: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/41.jpg)
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)
![Page 42: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/42.jpg)
ConclusionsPros• 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
![Page 43: Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars](https://reader035.vdocuments.mx/reader035/viewer/2022062501/5681690f550346895de02631/html5/thumbnails/43.jpg)
ConclusionsCons (?)• Probabilistically complete• Paths are not optimal -- can be long and indirect, depending on how graph was created; can apply smoothing, but...