Presentation is loading. Please wait.

Presentation is loading. Please wait.

Non-Holonomic Motion Planning

Similar presentations


Presentation on theme: "Non-Holonomic Motion Planning"— Presentation transcript:

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

2 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)?

3 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!)

4 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]

5 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 = 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

6 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

7 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

8 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

9 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…

10 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…

11 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

12 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

13 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)

14 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

15 Path Deformation Holonomic path Nonholonomic path

16 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

17 Type 2 Maneuver  Allows pure rotation

18 Combination

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

20 Path Examples

21 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)

22 Reeds and Shepp Paths

23 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

24 Example of Generated Path
Holonomic Nonholonomic

25 Path Optimization

26 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

27 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

28 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’

29 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.

30 Computed Paths

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

32 Application

33 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)


Download ppt "Non-Holonomic Motion Planning"

Similar presentations


Ads by Google