CS 326A: Motion Planning Kynodynamic Planning + Dealing with Moving Obstacles + Dealing with Uncertainty + Dealing with Real-Time Issues.

Slides:



Advertisements
Similar presentations
Reactive and Potential Field Planners
Advertisements

Planning with Non-Deterministic Uncertainty (Where failure is not an option) R&N: Chap. 12, Sect (+ Chap. 10, Sect 10.7)
Probabilistic Roadmaps. The complexity of the robot’s free space is overwhelming.
Motion Planning for Point Robots CS 659 Kris Hauser.
SA-1 Probabilistic Robotics Planning and Control: Partially Observable Markov Decision Processes.
NUS CS5247 Motion Planning for Camera Movements in Virtual Environments By Dennis Nieuwenhuisen and Mark H. Overmars In Proc. IEEE Int. Conf. on Robotics.
Emilio Frazzoli, Munther A. Dahleh and Eric Feron Jingru Luo.
Trajectory Generation
Kinodynamic Path Planning Aisha Walcott, Nathan Ickes, Stanislav Funiak October 31, 2001.
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.
Sampling and Connection Strategies for PRM Planners Jean-Claude Latombe Computer Science Department Stanford University.
EE631 Cooperating Autonomous Mobile Robots Lecture 5: Collision Avoidance in Dynamic Environments Prof. Yi Guo ECE Dept.
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.
Footstep Planning Among Obstacles for Biped Robots James Kuffner et al. presented by Jinsung Kwon.
Deadlock-Free and Collision- Free Coordination of Two Robot Manipulators Patrick A. O’Donnell and Tomás Lozano- Pérez by Guha Jayachandran Guha Jayachandran.
Presented by David Stavens. Manipulation Planning Before: Want to move the robot from one configuration to another, around obstacles. Now: Want to robot.
Motion Planning of Multi-Limbed Robots Subject to Equilibrium Constraints. Timothy Bretl Presented by Patrick Mihelich and Salik Syed.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Non-Holonomic Motion Planning.
CS 326 A: Motion Planning Coordination of Multiple Robots.
Rapidly Expanding Random Trees
CS 326 A: Motion Planning and Under-Actuated Robots.
1 Motion Planning Algorithms : BUG-family. 2 To plan a path  find a continuous trajectory leading from initial position of the automaton (a mobile robot)
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Probabilistic Roadmaps: Sampling Strategies.
1 On the Probabilistic Foundations of Probabilistic Roadmaps D. Hsu, J.C. Latombe, H. Kurniawati. On the Probabilistic Foundations of Probabilistic Roadmap.
CS 326 A: Motion Planning robotics.stanford.edu/~latombe/cs326/2003/index.htm Jean-Claude Latombe Computer Science Department Stanford University.
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.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Kinodynamic Planning and Navigation with Movable Obstacles.
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 robotics.stanford.edu/~latombe/cs326/2004/index.htm Jean-Claude Latombe Computer Science Department Stanford University.
Motion Planning in Dynamic Environments Jur van den Berg.
Robot Motion Planning Bug 2 Probabilistic Roadmaps Bug 2 Probabilistic Roadmaps.
1 Introducing Uncertainty (It is not the world that is imperfect, it is our knowledge of it) R&N: Chap. 3, Sect Chap. 13.
CS 326 A: Motion Planning Coordination of Multiple Robots.
CS 326 A: Motion Planning Kinodynamic Planning.
9.6 Other Heat Conduction Problems
Constraints-based Motion Planning for an Automatic, Flexible Laser Scanning Robotized Platform Th. Borangiu, A. Dogar, A. Dumitrache University Politehnica.
9/14/2015CS225B Kurt Konolige Locomotion of Wheeled Robots 3 wheels are sufficient and guarantee stability Differential drive (TurtleBot) Car drive (Ackerman.
© Manfred Huber Autonomous Robots Robot Path Planning.
1. 2 IMPORTANCE OF MANAGEMENT Some organizations have begun to ask their contractors to provide only project managers who have been certified as professionals.
Behrouz Haji Soleimani Dr. Moradi. Outline What is uncertainty? Some examples Solutions to uncertainty Ignoring uncertainty Markov Decision Process (MDP)
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.
December 9, 2014Computer Vision Lecture 23: Motion Analysis 1 Now we will talk about… Motion Analysis.
COMP322/S2000/L281 Task Planning Three types of planning: l Gross Motion Planning concerns objects being moved from point A to point B without problems,
Real-time motion planning for Manipulator based on Configuration Space Chen Keming Cis Peking University.
Non-Holonomic Motion Planning. Probabilistic Roadmaps What if omnidirectional motion in C-space is not permitted?
Tree-Growing Sample-Based Motion Planning
City College of New York 1 John (Jizhong) Xiao Department of Electrical Engineering City College of New York Mobile Robot Control G3300:
Randomized Kinodynamics Planning Steven M. LaVelle and James J
Autonomous Robots Robot Path Planning (3) © Manfred Huber 2008.
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.
Vision-Guided Humanoid Footstep Planning for Dynamic Environments P. Michel, J. Chestnutt, J. Kuffner, T. Kanade Carnegie Mellon University – Robotics.
Randomized KinoDynamic Planning Steven LaValle James Kuffner.
Autonomous Mobile Robots Autonomous Systems Lab Zürich Probabilistic Map Based Localization "Position" Global Map PerceptionMotion Control Cognition Real.
Vision-Guided Humanoid Footstep Planning for Dynamic Environments
Optimal Acceleration and Braking Sequences for Vehicles in the Presence of Moving Obstacles Jeff Johnson, Kris Hauser School of Informatics and Computing.
CS 326A: Motion Planning Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe,
CS b659: Intelligent Robotics
EE631 Cooperating Autonomous Mobile Robots Lecture: Collision Avoidance in Dynamic Environments Prof. Yi Guo ECE Dept.
CIS 488/588 Bruce R. Maxim UM-Dearborn
Locomotion of Wheeled Robots
Non-Holonomic Motion Planning
Real-Time Motion Planning
Probabilistic Map Based Localization
Configuration Space of an Articulated Robot
Presentation transcript:

CS 326A: Motion Planning Kynodynamic Planning + Dealing with Moving Obstacles + Dealing with Uncertainty + Dealing with Real-Time Issues

2 Kinodynamic Planning Problem Plan a robot’s trajectory that  satisfies a dynamic equation of motion of the form: s’ = f(s,u) where: –s is robot’s state configuration x velocity at time t –u is control input at time t  avoids collision with moving obstacles Outcome: (Piecewise-constant) control function u(t)

3 Problem Plan a robot’s trajectory that  satisfies a dynamic motion constraint of the form: s’ = f(s,u) where: –s is robot’s state configuration x velocity at time t –u is control input at time t  avoids collision with moving obstacles Outcome: (Piecewise-constant) control function u(t) Note similarity with non-holonomic constraint q’ = f(q,u)

Nonholonomic vs. Dynamic Constraints  Nonholonomic constraint: f(q,q’) = 0  Dynamic constraints: f(q,q’,q’’) = 0 s = (q,q’)  g(s,s’) = 0  Kinodynamic planning is done in state (configuration x velocity) space rather than in configuration space  The dimensionality of state space is twice that of configuration space

5  Similarity of Method  Construction of a tree, by integrating equation of motion with selected control inputs  However, planning occurs in state space, instead of configuration space  Hence, PRM-like planner rather than deterministic one, to deal with greater dimensionality of the space

6 air bearing gas tank air thrusters Robot created to study issues in robot control and planning in no-gravity space environment Example: Space Robot

7 Navigation Among Moving Obstacles

8 Model, Sensing, and Control  The robot and the obstacles are represented as disks moving in the plane  The position and velocity of each disc are measured by an overhead camera every 1/30 sec x y robot obstacles

9 Model, Sensing, and Control  The robot and the obstacles are represented as disks moving in the plane  The position and velocity of each disc are measured by an overhead camera within 1/30 sec  The robot controls the magnitude f and the orientation  of the total pushing force exerted by the thrusters x y  f robot obstacles

x y t Moving Obstacles in ConfigurationxTime Space

straight line segments Traditional PRM

12 s g Kinodynamic Planning with PRM in State x Time Space The roadmap is a tree oriented along the time axis (because of the moving obstacles) endgame region Bi-directional search? t=1 t=2 t=3 t=2 t=1 t=4 t=2 t=3 t=4 t=5 t=3

13 s g PRM in State x Time Space The roadmap is a tree oriented along the time axis endgame region Compare!

endgame region Sampling Strategy

Goal Region Bi-Directional Search: Forward & Backward Integration

16 Example Run t x y Obstacle map to cylinders in configuration  time space

17 Other Examples

18 But executing this trajectory is likely to fail... 1)The measured velocities of the obstacles are inaccurate 2)Tiny particles of dust on the table affect trajectories and contribute further to deviation  Obstacles are likely to deviate from their expected trajectories 3)Planning takes time, and during this time, obstacles keep moving  The computed robot trajectory is not properly synchronized with those of the obstacles  The robot may hit an obstacle before reaching its goal [Robot control is not perfect but “good” enough for the task]

19 But executing this trajectory is likely to fail... 1)The measured velocities of the obstacles are inaccurate 2)Tiny particles of dust on the table affect trajectories and contribute further to deviation  Obstacles are likely to deviate from their expected trajectories 3)Planning takes time, and during this time, obstacles are moving  The computed robot trajectory is not properly synchronized with those of the obstacles  The robot may hit an obstacle before reaching its goal [Robot control is not perfect but “good” enough for the task] Planning must take both uncertainty in world state and time constraints into account

20 Dealing with Uncertainty  The robot can handle uncertainty in an obstacle position by representing the set of all positions of the obstacle that the robot think possible at each time  For example, this set can be a disc whose radius grows linearly with time t = 0 t = T t = 2T Initial set of possible positions Set of possible positions at time 2T Set of possible positions at time T

21 Dealing with Uncertainty  The robot can handle uncertainty in an obstacle position by representing the set of all positions of the obstacle that the robot think possible at each time  For example, this set can be a disc whose radius grows linearly with time t = 0 t = T t = 2T The robot must plan to be outside this disc at time t = T

22 Dealing with Uncertainty  The robot can handle uncertainty in an obstacle position by representing the set of all positions of the obstacle that the robot think possible at each time (belief state)  For example, this set can be a disc whose radius grows linearly with time  The forbidden regions in configuration  time space are cones, instead of cylinders  The trajectory planning method remains essentially unchanged

23 Dealing with Planning Time  Let t=0 the time when planning starts. A time limit  is given to the planner  The planner computes the states that will be possible at t  and use them as the possible initial states  It returns a trajectory at some t , whose execution will start at t    Since the PRM planner isn’t absolutely guaranteed to find a solution within , it computes two trajectories using the same roadmap: one to the goal, the other to any position where the robot will be safe for at least an additional . Since there are usually many such positions, the second trajectory is at least one order of magnitude faster to compute

Safe Region endgame region Planning an Escape Trajectory

25 Are we done?  Not quite !  The uncertainty model may be itself incorrect, e.g.: There may be more dust on the table than anticipated Some obstacles have the ability to change trajectories  But if we are too careful, we will end up with forbidden regions so big that no solution trajectory will exist any more  So, it might be better to take some “risk” The robot must monitor the execution of the planned trajectory and be prepared to re-plan a new trajectory

26 Are we done? The robot must monitor the execution of the planned trajectory and be prepared to re-plan a new trajectory Execution monitoring consists of using the camera (at 30Hz) to verify that all obstacles are at positions allowed by the robot’s uncertainty model If an obstacle has an unexpected position, the planner is called back to compute a new trajectory. Note tradeoff between uncertainty model and number of re-plans

27 Experimental Run with Re-Planning

Experimental Run with Re-Planning

29 Another Experimental Run Total duration : 40 sec X

30 Another Experimental Run

31 Example in Simulation 8 replanning operations

32 Is this guaranteed to work? Of course not :  Thrusters might get clogged  The robot may run out of air or battery  The granite table may suddenly break into pieces  Etc... [Unbounded uncertainty]