Tree-Growing Sample-Based Motion Planning

Slides:



Advertisements
Similar presentations
NUS CS5247 Motion Planning for Car- like Robots using a Probabilistic Learning Approach --P. Svestka, M.H. Overmars. Int. J. Robotics Research, 16: ,
Advertisements

Rapidly Exploring Random Trees Data structure/algorithm to facilitate path planning Developed by Steven M. La Valle (1998) Originally designed to handle.
Probabilistic Roadmaps. The complexity of the robot’s free space is overwhelming.
Motion Planning for Point Robots CS 659 Kris Hauser.
PRM and Multi-Space Planning Problems : How to handle many motion planning queries? Jean-Claude Latombe Computer Science Department Stanford University.
By Lydia E. Kavraki, Petr Svestka, Jean-Claude Latombe, Mark H. Overmars Emre Dirican
Anytime RRTs Dave Fergusson and Antony Stentz. RRT – Rapidly Exploring Random Trees Good at complex configuration spaces Efficient at providing “feasible”
LaValle, Steven M. "Rapidly-Exploring Random Trees A Цew Tool for Path Planning." (1998) RRT Navigation.
Kinodynamic Path Planning Aisha Walcott, Nathan Ickes, Stanislav Funiak October 31, 2001.
DESIGN OF A GENERIC PATH PATH PLANNING SYSTEM AILAB Path Planning Workgroup.
NUS CS5247 Randomized Kinodynamic Motion Planning with Moving Obstacles - D. Hsu, R. Kindel, J.C. Latombe, and S. Rock. Int. J. Robotics Research, 21(3): ,
Randomized Kinodynamics Motion Planning with Moving Obstacles David Hsu, Robert Kindel, Jean-Claude Latombe, Stephen Rock.
Randomized Motion Planning for Car-like Robots with C-PRM Guang Song and Nancy M. Amato Department of Computer Science Texas A&M University College Station,
Sampling and Connection Strategies for PRM Planners Jean-Claude Latombe Computer Science Department Stanford University.
1 Last lecture  Configuration Space Free-Space and C-Space Obstacles Minkowski Sums.
Nonholonomic Multibody Mobile Robots: Controllability and Motion Planning in the Presence of Obstacles (1991) Jerome Barraquand Jean-Claude Latombe.
David Hsu, Robert Kindel, Jean- Claude Latombe, Stephen Rock Presented by: Haomiao Huang Vijay Pradeep Randomized Kinodynamic Motion Planning with Moving.
“Visibility-based Probabilistic Roadmaps for Motion Planning” Siméon, Laumond, Nissoux Presentation by: Mathieu Bredif CS326A: Paper Review Winter 2004.
CS 326 A: Motion Planning Probabilistic Roadmaps Basic Techniques.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Non-Holonomic Motion Planning.
Finding Narrow Passages with Probabilistic Roadmaps: The Small-Step Retraction Method Presented by: Deborah Meduna and Michael Vitus by: Saha, Latombe,
1 Probabilistic Roadmaps CS 326A: Motion Planning.
CS 326 A: Motion Planning Probabilistic Roadmaps Sampling and Connection Strategies (2/2)
1 Single Robot Motion Planning - II Liang-Jun Zhang COMP Sep 24, 2008.
Rapidly Expanding Random Trees
CS 326 A: Motion Planning and Under-Actuated Robots.
On Delaying Collision Checking in PRM Planning G. Sánchez and J. Latombe presented by Niloy J. Mitra.
On Delaying Collision Checking in PRM Planning--Application to Multi-Robot Coordination Gildardo Sanchez & Jean-Claude Latombe Presented by Chris Varma.
1 On the Probabilistic Foundations of Probabilistic Roadmaps D. Hsu, J.C. Latombe, H. Kurniawati. On the Probabilistic Foundations of Probabilistic Roadmap.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Probabilistic Roadmaps: Basic Techniques.
CS 326A: Motion Planning Non-Holonomic Motion Planning.
Kinodynamic Planning Using Probabalistic Road Maps Steven M. LaValle James J. Kuffner, Jr. Presented by Petter Frykman.
CS 326 A: Motion Planning 2 Dynamic Constraints and Optimal Planning.
On Delaying Collision Checking in PRM Planning Gilardo Sánchez and Jean-Claude Latombe January 2002 Presented by Randall Schuh 2003 April 23.
Planning for Humanoid Robots Presented by Irena Pashchenko CS326a, Winter 2004.
1 Path Planning in Expansive C-Spaces D. HsuJ. –C. LatombeR. Motwani Prepared for CS326A, Spring 2003 By Xiaoshan (Shan) Pan.
Presented By: Huy Nguyen Kevin Hufford
RRT-Connect path solving J.J. Kuffner and S.M. LaValle.
NUS CS 5247 David Hsu1 Last lecture  Multiple-query PRM  Lazy PRM (single-query PRM)
Randomized Motion Planning for Car-like Robots with C-PRM Guang Song, Nancy M. Amato Department of Computer Science Texas A&M University College Station,
Feasible Trajectories for Mobile Robots with Kinematic and Environment Constraints Jean-Paul Laumond.
CS 326A: Motion Planning Kynodynamic Planning + Dealing with Moving Obstacles + Dealing with Uncertainty + Dealing with Real-Time Issues.
Path Planning in Expansive C-Spaces D. HsuJ.-C. LatombeR. Motwani CS Dept., Stanford University, 1997.
Sampling and Connection Strategies for PRM Planners Jean-Claude Latombe Computer Science Department Stanford University Abridged and Modified Version (D.H.)
Integrated Grasp and Motion Planning For grasping an object in a cluttered environment several tasks need to take place: 1.Finding a collision free path.
CS 326 A: Motion Planning Kinodynamic Planning.
CS 326A: Motion Planning Probabilistic Roadmaps: Sampling and Connection Strategies.
CS 326 A: Motion Planning Probabilistic Roadmaps Basic Techniques.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces Kavraki, Svestka, Latombe, Overmars 1996 Presented by Chris Allocco.
NUS CS5247 Motion Planning for Humanoid Robots Presented by: Li Yunzhen.
Dynamic-Domain RRTs: Efficient Exploration by Controlling the Sampling Domain Anna Yershova 1 Léonard Jaillet 2 Thierry Siméon 2 Steven M. LaValle 1 1.
Anna Yershova Dept. of Computer Science University of Illinois
Non-Holonomic Motion Planning & Legged Locomotion.
Dynamic-Domain RRTs Anna Yershova, Steven M. LaValle 03/08/2006.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars.
On Delaying Collision Checking in PRM Planning – Application to Multi-Robot Coordination By: Gildardo Sanchez and Jean-Claude Latombe Presented by: Michael.
Introduction to Motion Planning
Non-Holonomic Motion Planning. Probabilistic Roadmaps What if omnidirectional motion in C-space is not permitted?
Sampling-Based Planners. The complexity of the robot’s free space is overwhelming.
School of Systems, Engineering, University of Reading rkala.99k.org April, 2013 Motion Planning for Multiple Autonomous Vehicles Rahul Kala Rapidly-exploring.
Randomized Kinodynamics Planning Steven M. LaVelle and James J
Randomized KinoDynamic Planning Steven LaValle James Kuffner.
9/30/20161 Path Planning Cognitive Robotics David S. Touretzky & Ethan Tira-Thompson Carnegie Mellon Spring 2012.
Car-Like Robot: How to Park a Car? (Nonholonomic Planning)
Tree growing motion planners + optimizing planners
Dynamic Planning / Optimal Control
Non-Holonomic Motion Planning
Probabilistic Roadmap Motion Planners
Sampling and Connection Strategies for Probabilistic Roadmaps
Configuration Space of an Articulated Robot
Presentation transcript:

Tree-Growing Sample-Based Motion Planning

Probabilistic Roadmaps What if only a small portion of the space needs to be explored? What if omnidirectional motion in C-space is not permitted?

Tree-growing planners Idea: grow a tree of feasible paths from the start until it reaches a neighborhood of the goal Sampling bias toward “boundary” of currently explored region, helps especially if the start is in a region with poor visibility Many variants: Rapidly-exploring Random Trees (RRTs) are popular, easy to implement (LaValle and Kuffner 2001) Expansive space trees (ESTs) use a different sampling strategy (Hsu et al 2001) SBL (Single-query, Bidirectional, Lazy planner) often efficient in practice (Sanchez-Ante and Latombe, 2005)

RRT Build a tree T of configurations, starting at xstart Extend: Sample a configuration xrand from C at random Find the node xnear in T that is closest to xrand Extend a short path from xnear toward xrand T

RRT Build a tree T of configurations, starting at xstart Extend: Sample a configuration xrand from C at random Find the node xnear in T that is closest to xrand Extend a short path from xnear toward xrand xnear xrand

RRT Build a tree T of configurations, starting at xstart Extend: Sample a configuration xrand from C at random Find the node xnear in T that is closest to xrand Extend a short path from xnear toward xrand xnear xrand

RRT Build a tree T of configurations, starting at xstart Extend: Sample a configuration xrand from C at random Find the node xnear in T that is closest to xrand Extend a short path from xnear toward xrand xnear xrand

RRT Build a tree T of configurations, starting at xstart Extend: Sample a configuration xrand from C at random Find the node xnear in T that is closest to xrand Extend a short path from xnear toward xrand

RRT Build a tree T of configurations, starting at xstart Extend: Sample a configuration xrand from C at random Find the node xnear in T that is closest to xrand Extend a short path from xnear toward xrand xrand xnear

RRT Build a tree T of configurations, starting at xstart Extend: Sample a configuration xrand from C at random Find the node xnear in T that is closest to xrand Extend a short path from xnear toward xrand

RRT Build a tree T of configurations, starting at xstart Extend: Sample a configuration xrand from C at random Find the node xnear in T that is closest to xrand Extend a short path from xnear toward xrand Governed by a step size parameter d

Implementation Details Bottleneck: finding nearest neighbor each step O(n) with naïve implementation => O(n2) overall KD tree data structure O(n1-1/d) Approximate nearest neighbors often very effective Terminate when extension reaches a goal set Usually visibility set of goal configuration Bidirectional strategy Grow a tree from goal as well as start, connect when closest nodes in either tree can “see” each other

What is the sampling strategy? Probability that a node gets selected for expansion is proportional to the volume of its Voronoi cell

Planning with Differential Constraints (Kinodynamic Planning)

Paths for a Car-Like Robot 16

Setting dq/dt = Sk fk(q)uk Differential constraints Dynamics, nonholonomic systems dq/dt = Sk fk(q)uk Vector fields Controls We’ll consider fewer control dimensions than state dimensions

Example: 1D Point Mass Mass M x 2D configuration space (state space) Controlled force f Equations of motion: x v dx/dt = v dv/dt = f / M

Example: 1D Point Mass x v dx/dt = dv dv/dt = f / M Solution: v(t) = v(0)+t f /M x(t) = x(0)+t v(0) + ½ t2 f / M f=0 x

Example: 1D Point Mass x v dx/dt = dv dv/dt = f / M Solution: v(t) = v(0)+t f /M x(t) = x(0)+t v(0) + ½ t2 f / M f>0 x

Example: 1D Point Mass x v dx/dt = dv dv/dt = f / M Solution: v(t) = v(0)+t f /M x(t) = x(0)+t v(0) + ½ t2 f / M f<0 x

Example: 1D Point Mass x v dx/dt = dv dv/dt = f / M Solution: v(t) = v(0)+t f /M x(t) = x(0)+t v(0) + ½ t2 f / M |f|<=fmax x

Example: Car-Like Robot y x L q f dx/dt = v cosq dy/dt = v sinq dq/dt = (v/L) tan f |f| < F dx sinq – dy cosq = 0 Configuration space is 3-dimensional: q = (x, y, q) But control space is 2-dimensional: (v, f) with |v| = sqrt[(dx/dt)2+(dy/dt)2] 23

Example: Car-Like Robot y x L q f dx/dt = v cosq dy/dt = v sinq dq/dt = (v/L) tan f |f| < F dx sinq – dy cosq = 0 q = (x,y,q) q’= dq/dt = (dx/dt,dy/dt,dq/dt) dx sinq – dy cosq = 0 is a particular form of f(q,q’)=0 A robot is nonholonomic if its motion is constrained by a non-integrable equation of the form f(q,q’) = 0 24

Example: Car-Like Robot y x L q f dx/dt = v cosq dy/dt = v sinq dq/dt = (v/L) tan f |f| < F dx sinq – dy cosq = 0 Lower-bounded turning radius 25

How Can This Work? Tangent Space/Velocity Space x L q f x y q (x,y,q) (dx,dy,dq) (dx,dy) dx/dt = v cosq dy/dt = v sinq dq/dt = (v/L) tan f |f| < F q 26

How Can This Work? Tangent Space/Velocity Space x L q f x y q (x,y,q) (dx,dy,dq) (dx,dy) dx/dt = v cosq dy/dt = v sinq dq/dt = (v/L) tan f |f| < F q 27

Nonholonomic Path Planning Approaches Two-phase planning (path deformation): Compute collision-free path ignoring nonholonomic constraints Transform this path into a nonholonomic one Efficient, but possible only if robot is “controllable” Need for a “good” set of maneuvers Direct planning (control-based sampling): Use “control-based” sampling to generate a tree of milestones until one is close enough to the goal (deterministic or randomized) Robot need not be controllable Applicable to high-dimensional c-spaces 28

Control-Based Sampling PRM sampling technique: Pick each milestone in some region Control-based sampling: Pick control vector (at random or not) Integrate equation of motion over short duration (picked at random or not) If the motion is collision-free, then the endpoint is the new milestone Tree-structured roadmaps Need for endgame regions 29

Example dx/dt = v cosq dy/dt = v sinq dq/dt = (v/L) tan f |f| < F 1. Select a milestone m 2. Pick v, f, and dt 3. Integrate motion from m  new milestone m’ 30

Example Indexing array: A 3-D grid is placed over the configuration space. Each milestone falls into one cell of the grid. A maximum number of milestones is allowed in each cell (e.g., 2 or 3). Asymptotic completeness: If a path exists, the planner is guaranteed to find one if the resolution of the grid is fine enough. 31

Computed Paths Tractor-trailer Car That Can Only Turn Left jmax=45o, jmin=22.5o jmax=45o 32

Control-Sampling RRT Configuration generator f(x,u) Build a tree T of configurations Extend: Sample a configuration xrand from X at random Find the node xnear in T that is closest to xrand Pick a control u that brings f(xnear,u) close to xrand Add f(xnear,u) as a child of xnear in T

Weaknesses of RRT’s strategy Depends on the domain from which xrand is sampled Depends on the notion of “closest” A tree that is grown “badly” by accident can greatly slow convergence

Other strategies Dynamic-domain RRTs (Yershova et al 2008) Perturb samples in a neighborhood (EST, SBL) Lazy planning: delay expensive collision checks until end