RRT-Connect: An Efficient Approach to Single-Query Path Planning James J. Kuffner, Jr. Steven M. LaValle ICRA 2000 Presented by Manel Baradad 6.882 Embodied Intelligence Spring 2020
Problem Single-query path planning, from start to goal. In “high-dimensional” configuration spaces Find path from A to B Move an object: from State A to State B 2
Two Ingredients ● Rapidly-exploring random trees (RRT): ● 2 x RRT: One from start and one from goal Greedy Heuristic to connect them RRT Exploration 3
Rapidly-exploring random trees (RRT’s) K = 0 4
Rapidly-exploring random trees (RRT’s) K = T 5
Rapidly-exploring random trees (RRT’s) K = T q sampled uniformly at random over all space 6
Rapidly-exploring random trees (RRT’s) K = T Closest to q in the actual graph 7
Rapidly-exploring random trees (RRT’s) K = T q new :closest to q within Ɛ from q near 8 If no q new, repeat random q
Rapidly-exploring random trees (RRT’s) Repeat for K = T + 1 9
Rapidly-exploring random trees (RRT’s) Simple uniform sampling of q favors exploration P(node being q near ) ~ size of the Voronoi region ~ unexplored region 10
Rapidly-exploring random trees (RRT’s) Simple uniform sampling of q favors exploration P(node being q near ) ~ size of the Voronoi region ~ unexplored region High P of being q near Low P of being q near 11
2 x RRT How to dig a tunnel from A to B? Just start caving from each side Worse case you have two tunnels! Just build two RRT’s from start and goal. Have some attracting heuristic so that they meet. 12
RRT-Connect K = 0 13
RRT-Connect K = T 14
RRT-Connect K = T q at random uniformly 15
RRT-Connect K = T 16
RRT-Connect K = T 17
RRT-Connect K = T Connect B : Previous q new acts as q for B 18
RRT-Connect K = T Connect B : Previous q new acts as q for B 19
RRT-Connect K = T 20
RRT-Connect K = T + 1 Repeat, swapping behavior between A and B 21
Examples 22
Improvement: RRT* Idea: store and use a cost per node (distance to A/B). 1) Expand minimum costs: ~When adding nodes, add the ones of minimum cost. 23
Improvement: RRT* Idea: store and use a cost per node (distance to A/B). 2) Update costs: ~When a new node is added, look in its neighborhood to see if the tree can be rewired to reduce costs q new q new q A q A 24
RRT-connect A* (Shakey paper) Randomized Non-randomized Greedy heuristic Admissible heuristic Suboptimal Optimal Faster for “typical“ problems Slower but optimal 25
Open question Would it be useful to have N RTTs expanded from N states instead of just 2 (start and goal)? What these states would correspond to? How much could it be parallelized? 26
Recommend
More recommend