Motion Planning in Dynamic Environments Jur van den Berg.

Slides:



Advertisements
Similar presentations
Reactive and Potential Field Planners
Advertisements

Lecture 7: Potential Fields and Model Predictive Control
Inevitable Collision States in Replanning with Sampling-based Algorithms Kostas Bekris Computer Science and Engineering May 7, ICRA 2010.
Complete Motion Planning
Motion Planning for Point Robots CS 659 Kris Hauser.
By Lydia E. Kavraki, Petr Svestka, Jean-Claude Latombe, Mark H. Overmars Emre Dirican
Slide 1 Robot Lab: Robot Path Planning William Regli Department of Computer Science (and Departments of ECE and MEM) Drexel University.
Presented By: Aninoy Mahapatra
Probabilistic Roadmap
Situational Planning for the MIT DARPA Challenge Vehicle Thomas Coffee Image Credit: David Moore et al.
Kinodynamic Path Planning Aisha Walcott, Nathan Ickes, Stanislav Funiak October 31, 2001.
DESIGN OF A GENERIC PATH PATH PLANNING SYSTEM AILAB Path Planning Workgroup.
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.
Multi-Robot Motion Planning Jur van den Berg. Outline Recap: Configuration Space for Single Robot Multiple Robots: Problem Definition Multiple Robots:
1 Last lecture  Configuration Space Free-Space and C-Space Obstacles Minkowski Sums.
EE631 Cooperating Autonomous Mobile Robots Lecture 5: Collision Avoidance in Dynamic Environments Prof. Yi Guo ECE Dept.
Visibility-based Motion Planning Lecture slides for COMP presented by Georgi Tsankov.
David Hsu, Robert Kindel, Jean- Claude Latombe, Stephen Rock Presented by: Haomiao Huang Vijay Pradeep Randomized Kinodynamic Motion Planning with Moving.
Buron Florian CS223b Target finding Visibility-Based Pursuit-Evasion in a Polygonal Environment. L.J. Guibas, J.C. Latombe, S.M. LaValle, D. Lin, and R.
1 Single Robot Motion Planning - II Liang-Jun Zhang COMP Sep 24, 2008.
Rapidly Expanding Random Trees
Multi-Robot Motion Planning #2 Jur van den Berg. Outline Recap: Composite Configuration Space Prioritized Planning Planning in Dynamic Environments Application:
Robotics R&N: ch 25 based on material from Jean- Claude Latombe, Daphne Koller, Stuart Russell.
1 Motion Planning for Multiple Robots B. Aronov, M. de Berg, A. Frank van der Stappen, P. Svestka, J. Vleugels Presented by Tim Bretl.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces Kavraki, Svestka, Latombe, Overmars 1996 Presented by Dongkyu, Choi.
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.
Planning for Humanoid Robots Presented by Irena Pashchenko CS326a, Winter 2004.
Randomized Planning for Short Inspection Paths Tim Danner Lydia E. Kavraki Department of Computer Science Rice University.
RRT-Connect path solving J.J. Kuffner and S.M. LaValle.
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,
CS 326A: Motion Planning Kynodynamic Planning + Dealing with Moving Obstacles + Dealing with Uncertainty + Dealing with Real-Time Issues.
CS 326A: Motion Planning Basic Motion Planning for a Point Robot.
CS 326 A: Motion Planning Coordination of Multiple Robots.
CS 326A: Motion Planning Probabilistic Roadmaps: Sampling and Connection Strategies.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces Kavraki, Svestka, Latombe, Overmars 1996 Presented by Chris Allocco.
1 Single Robot Motion Planning Liang-Jun Zhang COMP Sep 22, 2008.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces Lydia E. Kavraki Petr Švetka Jean-Claude Latombe Mark H. Overmars Presented.
Robot Motion Planning Computational Geometry Lecture by Stephen A. Ehmann.
Constraints-based Motion Planning for an Automatic, Flexible Laser Scanning Robotized Platform Th. Borangiu, A. Dogar, A. Dumitrache University Politehnica.
World space = physical space, contains robots and obstacles Configuration = set of independent parameters that characterizes the position of every point.
© Manfred Huber Autonomous Robots Robot Path Planning.
Using the Corridor Map Method for Path Planning for a Large Number of Characters Roland Geraerts, Arno Kamphuis, Ioannis Karamouzas, Mark Overmars MIG’08.
Robotics Chapter 5 – Path and Trajectory Planning
Path Planning for a Point Robot
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars.
Motion Planning in Games Mark Overmars Utrecht University.
Introduction to Motion Planning
UNC Chapel Hill M. C. Lin Introduction to Motion Planning Applications Overview of the Problem Basics – Planning for Point Robot –Visibility Graphs –Roadmap.
Real Time Motion Planning and Safe Navigation in Dynamic Environments* Kadir F. Uyanik CENG585 Fundamentals of Autonomous Robotics * Based on:
Robotics Chapter 5 – Path and Trajectory Planning
Randomized Kinodynamics Planning Steven M. LaVelle and James J
Planning Under Uncertainty. Sensing error Partial observability Unpredictable dynamics Other agents.
Planning Tracking Motions for an Intelligent Virtual Camera Tsai-Yen Li & Tzong-Hann Yu Presented by Chris Varma May 22, 2002.
Department of Computer Science Columbia University rax Dynamically-Stable Motion Planning for Humanoid Robots Paper Presentation James J. Kuffner,
Randomized KinoDynamic Planning Steven LaValle James Kuffner.
Lecture 4: Improving the Quality of Motion Paths Software Workshop: High-Quality Motion Paths for Robots (and Other Creatures) TAs: Barak Raveh,
Autonomous Robots Robot Path Planning (2) © Manfred Huber 2008.
Finding Critical Changes in Dynamic Configuration Spaces Yanyan Lu and Jyh-Ming Lien George Mason University.
O PTIMAL A CCELERATION -B OUNDED T RAJECTORY P LANNING IN D YNAMIC E NVIRONMENTS A LONG A S PECIFIED P ATH Jeff Johnson and Kris Hauser School of Informatics.
Optimal Acceleration and Braking Sequences for Vehicles in the Presence of Moving Obstacles Jeff Johnson, Kris Hauser School of Informatics and Computing.
CS b659: Intelligent Robotics
EE631 Cooperating Autonomous Mobile Robots Lecture: Collision Avoidance in Dynamic Environments Prof. Yi Guo ECE Dept.
Last lecture Configuration Space Free-Space and C-Space Obstacles
Presented By: Aninoy Mahapatra
Sampling and Connection Strategies for Probabilistic Roadmaps
Real-Time Motion Planning
Planning.
Presentation transcript:

Motion Planning in Dynamic Environments Jur van den Berg

Outline Recap – Configuration Spaces, PRM Moving obstacles Configuration-time space Time constraints Exact methods PRM? RRT Roadmap based Multi-Robot Motion Planning

Configuration Space Static environment Dimension = #DOF WorkspaceConfiguration Space Translating in 2D Minkowski Sums

Configuration Space Articulated Robots (2 Rotating DOF) Hard to compute explicitly WorkspaceConfiguration Space

Probabilistic Roadmap Method Collision-test Preprocessing: create roadmap Query: find path in roadmap (multiple-shot) PreprocessingQuery

Probabilistic Roadmap Method High-dimensional Configuration Spaces Probabilistically complete 6 DOF Articulated Robot6 DOF (3T + 3R) Freeflying Robot

Dynamic Environments Moving Obstacles + Static Obstacles Frogger6 DOF Articulated Robot

Configuration-Time Space One additional dimension: time Obstacles are stationary in CT-space Configuration SpaceConfiguration-Time Space

Path Constraints Cannot go backward in time Maximum velocity 2D Configuration-Time Space3D Configuration-Time Space

Goal Specification Specific configuration and moment in time Specific configuration, as fast as possible g = (x, y, t)g = (x, y)

Exact Algorithms Cell decomposition (2D Translation + time) Piecewise linear motions of obstacles No bound on velocity of robot

Exact Algorithms Asteroid Avoidance (2D Translation + time) Constant linear motions of obstacles Constant number of obstacles Bound on velocity of robot Time-minimal path Polynomial time algorithm

Exact Algorithms Robots with more degrees of freedom Rotating obstacles At least exponential running time General problem PSPACE-hard

Other Approaches Path-velocity decomposition First: plan path in configuration space Then: tune velocity along path Workspace2D Configuration-Time Space

Path-Velocity Decomposition Reduces problem to 2D Cell decomposition, visibility graph Cell decomposition(Adapted) Visibility Graph

Probabilistic Approaches PRM?

Probabilistic Approaches PRM? Directed Edges

Probabilistic Approaches PRM? Directed Edges Transitory Configuration Space Multiple-shot paradigm does not hold

Probabilistic Approaches Repetitive dynamic environments Specific class of problems Period is least common multiple of obstacles Roadmap in Configuration-Time SpaceResulting Path

Probabilistic Approaches (Rapid Random Trees) RRT Single-shot Build tree oriented along time-axis

Probabilistic Approaches Advantages –Any dimensional configuration-spaces –Any behavior of obstacles –Only requirement: is robot configured at c collision- free at time t ? Disadvantages –Narrow passages –All effort in query phase

Roadmap-based Approaches Roadmap-velocity decomposition First: build roadmap in configuration space Then: find trajectory on roadmap avoiding moving obstacles Roadmap in WorkspaceRoadmap-Time Space

Roadmap-based Approaches Discretize Roadmap- time space –Select time step  t –Constrain velocity to be {-v max, 0, v max } Find shortest path using A*

Roadmap-based Approaches

Multi-Robot Motion Planning Environment: static obstacles (possibly dynamic obstacles as well) N robots with start and goal position 12 Robots24 Robots

Composite Configuration Space Configuration space C = C 1  C 2  …  C N Dimension is sum of DOFs of all robots Very high-dimensional Cylindrical obstacles Composite Configuration Space 3 Robots, 1 DOF each

Prioritized Multi-Robot Planning Assign priorities to robots Plan path for robot in order of priorities Treat previously planned robots as moving obstacles Problematic Case 24 Robots

Next Class Unknown obstacle motions Online planning Continuous “push” by real-world time

References Introduction –M. de Berg, M. van Kreveld, M. Overmars, O. Schwarzkopf. Computational Geometry, Algorithms and Applications (book) –S. LaValle. Planning Algorithms (book – freely available on-line) –J. van den Berg. Path Planning in Dynamic Environments (PhD thesis) Exact Planning with Moving Obstacles –J. Reif, M. Sharir. Motion Planning in the Presence of Moving Obstacles –K. Fujimura, H. Samet. Planning a Time-Minimal Motion among Moving Obstacles Path-Velocity Decomposition –K. Kant, S. Zucker. Toward Efficient Trajectory Planning: the Path-Velocity Decomposition –K. Fujimura. Time-Minimum Routes in Time-Dependent Networks Probabilistic Approaches –D. Hsu, R. Kindel, J.-C. Latombe, S. Rock. Randomized Kinodynamic Motion Planning with Moving Obstacles –J. van den Berg, M. Overmars. Path Planning in Repetitive Environments Roadmap-Based Approaches –J. van den Berg, M. Overmars. Roadmap-Based Motion Planning in Dynamic Environments Prioritized Multi-Robot Motion Planning –J. van den Berg, M. Overmars. Prioritized Motion Planning for Multiple Robots

Motion Planning in Dynamic Environments #2 Jur van den Berg

Outline Recap Configuration-Time space Offline vs. Online (real-time) Anytime (partial) planning Known vs. Unknown Trajectories Continuous cycle of sensing and planning Static vs. Dynamic Estimating future trajectories

Configuration-Time Space Natural space for planning problem Time as additional dimension Configuration SpaceConfiguration-Time Space

Offline vs. Online Planning Offline: “enough” time for planning Online: plan while the world is changing –Real world time and time modeled in CT space are related Applications offline: –Multi-robot motion planning Applications online: –Real-time vehicle navigation

Online Real-Time Planning t = 0 Configuration Space Configuration-Time Space

Online Real-Time Planning t = 0.5 Configuration Space Configuration-Time Space

Online Real-Time Planning t = 1 Configuration Space Configuration-Time Space

Online Real-Time Planning t = 1.5 Configuration Space Configuration-Time Space

Online Real-Time Planning t = 2 Configuration Space Configuration-Time Space

Online Real-Time Planning t = 2.5 Query! Move from s to g asap. v = 1 Configuration Space Configuration-Time Space

Online Real-Time Planning t = 3 Planning in progress… Configuration Space Configuration-Time Space

Online Real-Time Planning t = 3.5 Planning in progress… Configuration Space Configuration-Time Space

Online Real-Time Planning t = 4 Planning ready! Configuration Space Configuration-Time Space

Online Real-Time Planning t = 4.5 Configuration Space Configuration-Time Space

Online Real-Time Planning t = 5 Configuration Space Configuration-Time Space

Online Planning Planning takes time! If query (s, g) is posed at real-world time t w Reserve  time for planning Find path in CT beginning at (s, t w +  ) Start planning at real-world time t w Requirement: planning must finish before real-world time t w +  has come

Problem! Planners do not guarantee to finish within a preset amount of time  –RRT –Roadmap-based

Anytime or Partial Planning Not necessarily plan all the way to the goal Returns “best” initial path when time runs out Continue planning while executing path Planning must always be “ahead” of execution t =  t >  t >> 

Issue How to choose a good value for t –Large t: large latency –Small t: risky – small look-ahead

Example (James Kuffner, CMU)

Unknown Trajectories Obstacles have unknown future trajectories Available information: –Past trajectories –Current observations (velocity)

Trajectory Estimation Estimate future trajectory based on past trajectory and current observation knownassume staticworst caseextrapolation

Trajectory Estimation Estimated trajectories are less valuable further away in the future Continuously updating estimations

Continuous cycle of sensing and planning Receive query (s, g) at time t w Read sensor input at time t w Reserve  time for planning Plan path with start configuration-time (s, t w +  ) based on estimations acquired at time t w Start planning at time t w

Continuous cycle Finish planning at time t w +  Resulting path: p 0 : T  C Start executing path p 0 at time t w +  Read sensor input at time t w +  Reserve  time for planning Plan path with start configuration-time (p 0 (t w + 2 , t w + 2  ) based on estimations acquired at time t w +  Start planning at time t w + 

Continuous cycle Finish planning at time t w + 2  Resulting path: p 1 : T  C Start executing path p 1 at time t w + 2  Read sensor input at time t w + 2  Reserve  time for planning Plan path with start configuration-time (p 1 (t w + 3 , t w + 3  ) based on estimations acquired at time t w + 2  Start planning at time t w + 2 

Continuous cycle Finish planning at time t w + k  Resulting path: p k – 1 : T  C Start executing path p k – 1 at time t w + k  Read sensor input at time t w + k  Reserve  time for planning Plan path with start configuration-time (p k – 1 (t w + (k + 1) , t w + (k + 1)  ) based on estimations acquired at time t w + k  Start planning at time t w + k 

Continuous cycle Until the goal has been reached A path whose planning starts at time t is used between t +  and t + 2  Paths must be valid for at least  time Estimates must be valid for at least 2  time

Example Linear extrapolation of obstacles’ trajectories Configuration spaceConfiguration-time space

A good value for  Large  –Large look-ahead –Heavy reliance on estimates –Slow reaction on changes in environment (may be unsafe) –Spends much time on (portions of) path that will not be used –Important decisions in near-future based on unreliable estimates of far future Small  –Small look-ahead (may be unsafe) –Hard to bias the search in the direction of the goal Current works –Choose  based on “dynamicity” of the environment

Worst-case estimates Obstacles have known maximum velocity Region containing them is a growing disc, or a cone in CT- space

Planning amidst growing discs Paths avoiding the growing discs are inherently safe, regardless of value of 

Planning amidst growing discs Space fills up quickly: continuous replanning Robot must move faster than obstacles O(n 3 log n) algorithm – very fast in practice

Advanced trajectory estimation Based on statistical data

Obstacle avoidance Highly reactive No planning (no look-ahead) Velocity Obstacles

Obstacle avoidance Example

Next Class Kinodynamic Motion Planning State Space Planning in Dynamic Environments with Kinodynamic Constraints

References Introduction –J. van den Berg. Path Planning in Dynamic Environments (PhD thesis) Online Motion Planning in Unknown Environments –S. Petty, T. Fraichard. Safe Motion Planning in Dynamic Environments –D. Hsu, R. Kindel, J.-C. Latombe, S. Rock. Randomized Kinodynamic Motion Planning with Moving Obstacles –J. van den Berg, D. Ferguson, J. Kuffner. Anytime Path Planning and Replanning in Dynamic Environments Planning among Growing Discs –J. van den Berg, M. Overmars. Planning the Shortest Safe Path amidst Unpredictably Moving Obstacles Trajectory Estimation –D. Vasquez, F. Large, T. Fraichard, C. Laugier. Moving obstacles’ motion prediction for autonomous navigation. Velocity Obstacles –P. Fiorini, Z. Shiller. Motion Planning in Dynamic Environments using Velocity Obstacles –F. Large, S. Sckhavat, Z. Shiller, C. Laugier. Using non-linear velocity obstacles to plan motions in a dynamic environment