Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki,...

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

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 Presentation

Transcript of Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki,...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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