Presented by Vera Bazhenova 2010 Computational Geometry and Geometric Computing
Steven M. LaValle
Robot Motion Planning Steven M. LaValle Presented by Vera - - PowerPoint PPT Presentation
Computational Geometry and Geometric Computing Robot Motion Planning Steven M. LaValle Presented by Vera Bazhenova 2010 Introduction Motion Planning Configuration Space Sampling-Based Motion Planning Comparaison of related
Steven M. LaValle
Page 2
Page 3
Page 4
Page 5
Page 6
Page 7
Page 8
Page 9
Page 10
Page 11
Page 12
Page 13
Page 14
Page 15
Page 16
Page 17
Page 18
Page 19
Page 20
Page 21
Page 22
Convex Non Convex Page 23
Page 24
Page 25
i = 1.. 4 m = 1.. 4 Page 26
Page 27
Page 28
Page 29
Page 30
Page 31
Page 32
Xt Yt
Page 33
Page 34
Page 35
Page 36
Page 37
Page 38
Page 39
Page 40
Page 41
Page 42
Page 43
Page 44
Page 45
Page 47
Page 48
Page 49
Roadmap
Potential field Cell decomp.
Page 50
Roadmap
Potential field Cell decomp.
Page 51
start goal
Roadmap
Potential field Cell decomp.
Page 52
start goal
Roadmap
Potential field Cell decomp.
Page 53
start goal start goal
Roadmap
Potential field Cell decomp.
Page 54
start goal start goal
Roadmap
Potential field Cell decomp.
Page 55
Roadmap
Potential field Cell decomp.
Page 56
Roadmap
Potential field Cell decomp.
Page 57
Roadmap
Potential field Cell decomp.
Page 58
Roadmap
Potential field Cell decomp.
Page 59
Roadmap
Potential field Cell decomp.
Page 60
Roadmap
Potential field Cell decomp.
Page 61
Roadmap
Potential field Cell decomp.
Page 62
Roadmap
Potential field Cell decomp.
Page 63
Roadmap
Potential field Cell decomp.
Page 64
Once the grid and neighborhoods have been defined, a discrete planning problem is obtained
Roadmap
Potential field Cell decomp.
Page 65
Roadmap
Potential field Cell decomp.
Page 66
Roadmap
Potential field Cell decomp.
Page 67
Roadmap
Potential field Cell decomp.
Page 68
Roadmap
Potential field Cell decomp.
Page 69
Roadmap
Potential field Cell decomp.
Page 70
Roadmap
Potential field Cell decomp.
Page 71
Roadmap
Potential field Cell decomp.
Page 72
Collision detection algorithms determine whether a configuration lies in Cfree Motion planning algorithms require that an entire path maps into Cfree The interface between the planner and collision detection usually involves validation of a path segment
Path Segment
SBPA Incremental Search
RRT PRM
Page 73
For a Path τs : [0, 1] → Cfree a sampling for the interval [0, 1] is calculated The collision checker is called only on the samples Problem: How a Resolution can be found? How to guarantee that the places where the path is not sampled are collision-free?
Path Segment
SBPA Incremental Search
RRT PRM
Page 74
A fixed ∆q > 0 is often chosen as the C-space step size Points t1, t2 ∈ [0,1] are chosen close enough together to ensure that ρ(τ(t1), τ(t2)) ≤ ∆q , ρ is a metric on C
Path Segment
SBPA Incremental Search
RRT PRM
Page 75
If ∆q is too small, considerable time is wasted
If ∆q is too large, then there is a chance that the robot could jump through a thin obstacle (2)
(1) (2) Path Segment
SBPA Incremental Search
RRT PRM
Page 76
Suppose that for a configuration q(xt,yt,O) the collision detection algorithm indicates that A(q) is at least d units away from collision Suppose that the next candidate configuration to be checked along τ is q’(x’t,y’t,O’) If no point on A travels more than distance d when moving from q to q’ along τ , then q’ and all configurations between q and q’ must be collision-free
Path Segment
SBPA Incremental Search
RRT PRM
Page 77
The bounds d can generally be used to set a step size ∆q for collision checking that guarantees the intermediate points lie in Cfree
Path Segment
SBPA Incremental Search
RRT PRM
Page 78
Path Segment
SBPA Incremental Search
RRT PRM
Page 79
Let G(V,E) represent an undirected search graph, for which V contains at least one vertex and E contains no edges. Typically, V contains
Path Segment
SBPA Incremental Search
RRT PRM
Page 80
For some qnew ∈ Cfree that may or may not be represented by a vertex in V attempt to construct a path τs : [0, 1] →
does not cause a collision. If this step fails to produce a collision-free path segment, then go to step 2.
Path Segment
SBPA Incremental Search
RRT PRM
Page 81
Insert τs into E, as an edge from qcur to
inserted
Determine whether G encodes a solution
single search tree, then this is trivial;
expensive
Path Segment
SBPA Incremental Search
RRT PRM
Page 82
Path Segment
SBPA Incremental Search
RRT PRM
Page 83
Path Segment
SBPA Incremental Search
RRT PRM
Page 84
Unidirectional (single-tree) methods: A* (A-Star)
Path Segment
SBPA Incremental Search
RRT PRM
Page 85
Path Segment
SBPA Incremental Search
RRT PRM
Page 86
Path Segment
SBPA Incremental Search
RRT PRM
Page 87
Path Segment
SBPA Incremental Search
RRT PRM
Page 88
The idea is to incrementally construct a search tree that gradually improves the resolution but does not need to explicitly set any resolution parameters Instead of one long path, there are shorter paths that are organized into a tree If the sequence of samples is random, the resulting tree is called a rapidly exploring random tree (RRT), which indicate that a dense covering
Path Segment
SBPA Incremental Search
RRT PRM
Page 89
Basic RRT Algorithm:
Path Segment
SBPA Incremental Search
RRT PRM
90
Basic RRT Algorithm:
Path Segment
SBPA Incremental Search
RRT PRM
Page 91
The algorithm for constructing RDTs (which includes RRTs) It requires the availability of a dense sequence, α, and iteratively connects from α(i) to the nearest point among all those reached by G
Path Segment
SBPA Incremental Search
RRT PRM
Page 92
If the nearest point in S lies in an edge (α), then the edge is split into two, and a new vertex is inserted into G
Path Segment
SBPA Incremental Search
RRT PRM
Page 93
Several main branches are first constructed as it rapidly reaches the far corners of the space More and more area is filled in by smaller branches The tree gradually improves the resolution as the iterations continue
Path Segment
SBPA Incremental Search
RRT PRM
Page 94
This behavior turns out to be ideal for sampling-based motion planning
Path Segment
SBPA Incremental Search
RRT PRM
Page 95
The RRT is dense in the limit (with probability one), which means that it gets arbitrarily to any point in the space
Path Segment
SBPA Incremental Search
RRT PRM
Page 96
SBPA Incremental Search
RRT PRM
Page 97
Path Segment
SBPA Incremental Search
RRT PRM
Page 98
Path Segment
SBPA Incremental Search
RRT PRM
Page 99
Path Segment
SBPA Incremental Search
RRT PRM
Page 101
Page 102
Approach
Complete Optimal Efficient World Updates Efficient Query Updates Good DOF Scalability A* yes grid no no no Visuality yes yes no no no Voronoi yes no yes yes no Potential Field yes no no no yes RRT yes no semi semi yes PRM yes graph no yes yes
Page 103 [1] D. Aarno, D. Kragic, and H. I. Christensen. Artificial potential biased probabilistic roadmap method. In Proceedings IEEE International Conference on Robotics & Automation, 2004 [2] R. Abgrall. Numerical discretization of the first-order Hamilton-Jacobi equation on triangular meshes. Communications on Pure and Applied Mathematics, 49(12):1339–1373, December 1996. [3] R. Abraham and J. Marsden. Foundations of Mechanics. Addison-Wesley, Reading,MA, 2002. [4] PLANNING ALGORITHMS, Steven M. LaValle University of Illinois / Available for downloading at http://planning.cs.uiuc.edu/ [5] Wikipedia