Non-Holonomic 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

Probabilistic Roadmaps. The complexity of the robot’s free space is overwhelming.
Motion Planning for Point Robots CS 659 Kris Hauser.
Non-holonomic Constraints and Lie brackets. Definition: A non-holonomic constraint is a limitation on the allowable velocities of an object So what does.
Feasible trajectories for mobile robots with kinematic and environment constraints Paper by Jean-Paul Laumond I am Henrik Tidefelt.
Kinematics & Grasping Need to know: Representing mechanism geometry Standard configurations Degrees of freedom Grippers and graspability conditions Goal.
Kinodynamic Path Planning Aisha Walcott, Nathan Ickes, Stanislav Funiak October 31, 2001.
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,
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.
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.
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.
CS 326 A: Motion Planning Coordination of Multiple Robots.
Paper by Kevin M.Lynch, Naoji Shiroma, Hirohiko Arai, and Kazuo Tanie
Rapidly Expanding Random Trees
1 Last lecture  Path planning for a moving Visibility graph Cell decomposition Potential field  Geometric preliminaries Implementing geometric primitives.
CS 326 A: Motion Planning and Under-Actuated Robots.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Probabilistic Roadmaps: Sampling Strategies.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Probabilistic Roadmaps: Basic Techniques.
CS 326A: Motion Planning Non-Holonomic Motion Planning.
CS 326 A: Motion Planning 2 Dynamic Constraints and Optimal Planning.
Introduction to ROBOTICS
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,
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.
Robot Motion Planning Bug 2 Probabilistic Roadmaps Bug 2 Probabilistic Roadmaps.
CS 326A: Motion Planning Basic Motion Planning for a Point Robot.
CS 326 A: Motion Planning Coordination of Multiple Robots.
CS 326 A: Motion Planning Kinodynamic Planning.
CS 326 A: Motion Planning Probabilistic Roadmaps Basic Techniques.
Lecture VII Rigid Body Dynamics CS274: Computer Animation and Simulation.
Motion Control (wheeled robots)
1 CMPUT 412 Motion Control – Wheeled robots Csaba Szepesvári University of Alberta TexPoint fonts used in EMF. Read the TexPoint manual before you delete.
© Manfred Huber Autonomous Robots Robot Path Planning.
Beyond trial and error…. Establish mathematically how robot should move Kinematics: how robot will move given motor inputs Inverse-kinematics: how to.
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.
CS B659: Principles of Intelligent Robot Motion Configuration Space.
Sect. 1.3: Constraints Discussion up to now  All mechanics is reduced to solving a set of simultaneous, coupled, 2 nd order differential eqtns which.
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,
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.
Non-Holonomic Motion Planning. Probabilistic Roadmaps What if omnidirectional motion in C-space is not permitted?
Tree-Growing Sample-Based Motion Planning
CS274 Spring 01 Lecture 7 Copyright © Mark Meyer Lecture VII Rigid Body Dynamics CS274: Computer Animation and Simulation.
Randomized Kinodynamics Planning Steven M. LaVelle and James J
Autonomous Robots Robot Path Planning (3) © Manfred Huber 2008.
Basilio Bona DAUIN – Politecnico di Torino
Randomized KinoDynamic Planning Steven LaValle James Kuffner.
Autonomous Robots Robot Path Planning (2) © Manfred Huber 2008.
Optimal Acceleration and Braking Sequences for Vehicles in the Presence of Moving Obstacles Jeff Johnson, Kris Hauser School of Informatics and Computing.
Classical Mechanics Lagrangian Mechanics.
Car-Like Robot: How to Park a Car? (Nonholonomic Planning)
CS 326A: Motion Planning Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe,
Degree of Freedom (DOF) :
Kinetics of Rigid Bodies in Three Dimensions
EE631 Cooperating Autonomous Mobile Robots Lecture: Collision Avoidance in Dynamic Environments Prof. Yi Guo ECE Dept.
Dynamic Planning / Optimal Control
Last lecture Configuration Space Free-Space and C-Space Obstacles
Kinematics of Rigid Bodies in Three Dimensions
Presented By: Aninoy Mahapatra
Sampling and Connection Strategies for Probabilistic Roadmaps
Probabilistic Map Based Localization
10 Angular Momentum The Vector Nature of Rotation
Planning and Navigation
Configuration Space of an Articulated Robot
xf = xi + vt Displacement is change in position Dx = xf - xi
Presentation transcript:

Non-Holonomic Motion Planning CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Non-Holonomic Motion Planning

Under-Actuated Robots Fewer controls than dimensions in configuration space What is a degree of freedom: number of dimensions of C-space (global) or number of controls (local)?

How can m controls generate span a C-space with n > m dimensions? By exploiting mechanics properties: - Rolling-with-no-sliding contact (friction), e.g.,: car, bicycle, roller skate - Conservation of angular momentum: satellite robot, under-actuated robot, cat Others: submarine, plane, object pushing Why is it useful? - Fewer actuators (less weight) - Design simplicity - Convenience (think about driving a car with 3 controls!)

Example: Car-Like Robot q f dx/dt = v cosq dy/dt = v sinq dq/dt = (v/L) tan f |f| < F dx sinq – dy cosq = 0 L q y x 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]

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

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

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

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

Lie Bracket Maneuver made of 4 motions -X -Y Y X (dt) Assuming this is just a repetition of the first presentation, otherwise, need more details…

Lie Bracket Maneuver made of 4 motions For example: dx/dt = v cosq dy/dt = v sinq dq/dt = (v/L) tan f |f| < F X: Going straight Y: Turning, angle f T Assuming this is just a repetition of the first presentation, otherwise, need more details…

Lie Bracket Maneuver made of 4 motions For example: -X X (dt) Y -X -Y [X,Y] (dt2 ) X: Going straight Y: Turning, angle f T Assuming this is just a repetition of the first presentation, otherwise, need more details… Lie bracket

Lie Bracket [X,Y] = dY.X – dX.Y X1/x X1/y X1/q dX = X2/x X2/y X1/q X2/x X2/y X2/q X (dt) Y -X -Y [X,Y] (dt2 ) Assuming this is just a repetition of the first presentation, otherwise, need more details… [X,Y]  Lin(X,Y)  the motion constraint is nonholonomic Lie bracket

Tractor-Trailer Example 4-D configuration space 2-D control/velocity space  two independent velocity vectors X and Y U = [X,Y]  Lin(X,Y) V = [X,U]  Lin(X,Y,U)

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

Path Deformation Holonomic path Nonholonomic path

Type 1 Maneuver  Allows sidewise motion CYL(x,y,dq,h) h = 2r tandq d = 2r(1/cosdq - 1) > 0 (x,y,q) dq h h (x,y) q r dq dq r When dq  0, so does d and the cylinder becomes arbitrarily small  Allows sidewise motion

Type 2 Maneuver  Allows pure rotation

Combination

Coverage of a Path by Cylinders q + q q’ y x

Path Examples

Drawbacks of Two-phase Planning Final path can be far from optimal Not applicable to robots that are not locally controllable (e.g., car that can only move forward)

Reeds and Shepp Paths

Reeds and Shepp Paths CC|C0 CC|C C|CS0C|C Given any two configurations, the shortest RS paths between them is also the shortest path

Example of Generated Path Holonomic Nonholonomic

Path Optimization

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

Control-Based Sampling Previous 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

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’

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.

Computed Paths

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

Application

Summary Two planning approaches: Path deformation: Fast but paths can be far from optimal. Restricted to “controllable” robots. Control-based sampling: Can generate better paths, but slower. Can be scaled to higher dimensional space using probabilistic sampling techniques (next lecture)