robot path planning
DESCRIPTION
Robot Path Planning. William Regli Department of Computer Science (and Departments of ECE and MEM) Drexel University. Introduction to Motion Planning. Applications Overview of the Problem Basics – Planning for Point Robot Visibility Graphs Roadmap Cell Decomposition Potential Field. - PowerPoint PPT PresentationTRANSCRIPT
Slide 1
Robot Path Planning
William RegliDepartment of Computer Science
(and Departments of ECE and MEM)Drexel University
Slide 2
Introduction to Motion Planning
• Applications• Overview of the Problem• Basics – Planning for Point Robot
– Visibility Graphs– Roadmap– Cell Decomposition– Potential Field
Slide 3
Motion planning is the ability for an agent to compute its own motions in order to achieve
certain goals. All autonomous robots and digital actors should eventually have this ability
Slide 4
Goals• Compute motion strategies, e.g.,
– Geometric paths – Time-parameterized trajectories– Sequence of sensor-based motion commands
• Achieve high-level goals, e.g.,– Go to the door and do not collide with obstacles– Assemble/disassemble the engine– Build a map of the hallway– Find and track the target (an intruder, a missing
pet, etc.)
Slide 5
Fundamental Question
Are two given points connected by a path?
Slide 6
Basic Problem Statement:
Compute a collision-free path for a rigid or articulated object among static obstacles
Inputs:•Geometry of moving object and obstacles•Kinematics of moving object (degrees of freedom)•Initial and goal configurations (placements)
Output:Continuous collision-free path connecting the initial and goal configurations
Slide 7
Types of Path Constraints
• Local constraints – Collision-free paths
• Differential constraints– A car cannot move sideways– Have bound curvature
• Global constraints– Shortest or optimal paths
Path Planning
Motion Planning
Slide 8
Non-Holonomic Constraints
v
θ
3 degrees of freedom, but…only 2 control parameters
Not every path in configuration space is valid...
Slide 9
On a Terrain
Planar motion, but 3-dimensional obstacles.
Slide 10
Multiple Robots
2RW
A
Robots translate and rotate
Collisions between robots.
)2,0[R
)2,0[R
)2,0[RC
2
2
2
'A
''A
Slide 11
Moving Obstacles
A
Add time dimension to C.
Only time-monotone paths are allowed
Slide 12
Movable Obstacles
A
Robot can change Cfree!
Slide 13
More
• Huge numbers of degrees of freedom.
• Group motions
• Deformable robots
• …
Slide 14
What is the number of DoF’s?
a polygon robot translating in the plane a polygon robot translating and rotating a spherical robot moving in space a spatial robot translating and rotating a snake robot in the plane with 3 links
Slide 15
Example: Rigid Objects
Slide 16
Piano Mover’s Problem
• 2D or 3D rigid models
Slide 17
• piano.mpg
• Bench6.avi
Slide 18
Example: Articulated Robot
Slide 19
Is it easy?
Slide 20
• Alpha.avi
• Alpha-another-path.avi
Slide 21
Hardness Results
• Several variants of the path planning problem have been proven to be PSPACE-hard.
• A complete algorithm may take exponential time.– A complete algorithm finds a path if one exists and
reports no path exists otherwise.
• Examples– Planar linkages [Hopcroft et al., 1984]– Multiple rectangles [Hopcroft et al., 1984]
Slide 22
Hardness The problem is hard when k is part of the
input [Reif 79], [Hopcroft et al. 84], … [Reif 79]: planning a free path for a robot
made of an arbitrary number of polyhedral bodies connected together at some joint vertices, among a finite set of polyhedral obstacles, between any two given configurations, is a PSPACE-hard problem
Translating rectangles, planar linkages
Slide 23
Complete solutions, I the Piano Movers series [Schwartz-Sharir 83],
cell decomposition: a doubly-exponential
solution, O(nd)3^k) expected time
assuming the robot complexity is constant,
n is the complexity of the obstacles and
d is the algebraic complexity of the problem
Slide 24
Complete solutions, II
roadmap [Canny 87]:
a singly exponential solution,
nk(log n)dO(k^2) expected time
Slide 25
Tool: Configuration Space
Difficulty– Number of degrees of freedom (dimension of
configuration space)– Geometric complexity
Slide 26
Extensions of the Basic Problem
• More complex robots– Multiple robots– Movable objects– Nonholonomic & dynamic constraints– Physical models and deformable objects– Sensorless motions (exploiting task mechanics)– Uncertainty in control
Slide 27
Extensions of the Basic Problem
• More complex environments– Moving obstacles
– Uncertainty in sensing
• More complex objectives– Optimal motion planning
– Integration of planning and control
– Assembly planning
– Sensing the environment• Model building• Target finding, tracking
Slide 28
Practical Algorithms
• A complete motion planner always returns a solution when one exists and indicates that no such solution exists otherwise.
• Most motion planning problems are hard, meaning that complete planners take exponential time in the number of degrees of freedom, moving objects, etc.
Slide 29
Practical Algorithms
• Theoretical algorithms strive for completeness and low worst-case complexity– Difficult to implement– Not robust
• Heuristic algorithms strive for efficiency in commonly encountered situations. – No performance guarantee
• Practical algorithms with performance guarantees– Weaker forms of completeness– Simplifying assumptions on the space: “exponential time”
algorithms that work in practice
Slide 30
Problem Formulation for Point Robot
• Input– Robot represented as a
point in the plane– Obstacles represented as
polygons– Initial and goal positions
• Output– A collision-free path
between the initial and goal positions
Slide 31
Motion planning:the basic problem
Let B be a system (the robot) with k degrees of freedom moving in a known environment cluttered with obstacles. Given free start and goal placements for B decide whether there is a collision free motion for B from start to goal and if so plan such a motion.
Slide 32
Configuration spaceof a robot system with k degrees of freedom
the space of parametric representation of all possible robot configurations
C-obstacles: the expanded obstacles the robot -> a point k dimensional space point in configuration space: free,
forbidden, semi-free path -> curve
[Lozano-Peréz ’79]
Slide 33
Some Examples
Slide 34
Visibility Graphs
Slide 35
Framework
Slide 36
Visibility Graph Method
• Observation: If there is a collision-free path between two points, then there is a polygonal path that bends only at the obstacles vertices.
• Why? – Any collision-free path can
be transformed into a polygonal path that bends only at the obstacle vertices.
• A polygonal path is a piecewise linear curve.
Slide 37
Visibility Graph
• A visibility graph is a graph such that– Nodes: qinit, qgoal, or an obstacle vertex.– Edges: An edge exists between nodes u and v if the
line segment between u and v is an obstacle edge or it does not intersect the obstacles.
Slide 38
A Simple Algorithm for Building Visibility Graphs
Slide 39
Computational Efficiency
• Simple algorithm O(n3) time• More efficient algorithms
– Rotational sweep O(n2log n) time– Optimal algorithm O(n2) time– Output sensitive algorithms
• O(n2) space
Slide 40
g
s
Issues With Visibility Graphs
Difficult to extend from point robots to rigid or articulated robots
A L-shaped robot
Slide 41
Framework
Slide 42
Breadth-First Search
Slide 43
Breadth-First Search
Slide 44
Breadth-First Search
Slide 45
Breadth-First Search
Slide 46
Breadth-First Search
Slide 47
Breadth-First Search
Slide 48
Breadth-First Search
Slide 49
Breadth-First Search
Slide 50
Breadth-First Search
Slide 51
Breadth-First Search
Slide 52
Other Search Algorithms
• Depth-First Search
• Best-First Search, A*
Slide 53
Framework
Slide 54
Summary• Discretize the space by constructing
visibility graph
• Search the visibility graph with breadth-first search
Q: How to perform the intersection test?
Slide 55
Summary
• Represent the connectivity of the configuration space in the visibility graph
• Running time O(n3)– Compute the visibility graph– Search the graph– An optimal O(n2) time algorithm exists.
• Space O(n2)
Can we do better?
Slide 56
Classic Path Planning Approaches
• Roadmap – Represent the connectivity of the free space by a network of 1-D curves
• Cell decomposition – Decompose the free space into simple cells and represent the connectivity of the free space by the adjacency graph of these cells
• Potential field – Define a potential function over the free space that has a global minimum at the goal and follow the steepest descent of the potential function
Slide 57
Roadmap
• Visibility graph Shakey Project, SRI
[Nilsson, 1969]
• Voronoi Diagram Introduced by
computational geometry researchers. Generate paths that maximizes clearance. Applicable mostly to 2-D configuration spaces.
Slide 58
Voronoi Diagram
• Space O(n)
• Run time O(n log n)
Slide 59
Other Roadmap Methods
• SilhouetteFirst complete general method that applies to spaces of any dimensions and is singly exponential in the number of dimensions [Canny 1987]
• Probabilistic roadmaps
Slide 60
Classic Path Planning Approaches
• Roadmap – Represent the connectivity of the free space by a network of 1-D curves
• Cell decomposition – Decompose the free space into simple cells and represent the connectivity of the free space by the adjacency graph of these cells
• Potential field – Define a potential function over the free space that has a global minimum at the goal and follow the steepest descent of the potential function
Slide 61
Cell-decomposition Methods
• Exact cell decomposition
The free space F is represented by a collection of non-overlapping simple cells whose union is exactly F
• Examples of cells: trapezoids, triangles
Slide 62
Point robot
www.seas.upenn.edu/~jwk/motionPlanning
Slide 63
Adjacency Graph
• Nodes: cells• Edges: There is an edge between every pair of
nodes whose corresponding cells are adjacent.
Slide 64
Trapezoidal Decomposition
Slide 65
Trapezoidal decomposition
c11
c1
c2
c4
c3
c6
c5c8
c7
c10
c9
c12
c13
c14
c15
www.seas.upenn.edu/~jwk/motionPlanning
Slide 66
Connectivity graph
c1 c10
c2
c3
c4 c5
c6
c7
c8
c9
c11
c12
c13
c14
c15
c11
c1
c2
c4
c3
c6
c5c8
c7
c10
c9
c12
c13
c14
c15
www.seas.upenn.edu/~jwk/motionPlanning
Slide 67
Computational Efficiency
• Running time O(n log n) by planar sweep
• Space O(n)
• Mostly for 2-D configuration spaces
Slide 68
Summary
• Discretize the space by constructing an adjacency graph of the cells
• Search the adjacency graph
Slide 69
Cell-decomposition Methods
• Exact cell decomposition
• Approximate cell decomposition– F is represented by a collection of non-
overlapping cells whose union is contained in F.
– Cells usually have simple, regular shapes, e.g., rectangles, squares.
– Facilitate hierarchical space decomposition
Slide 70
Quadtree Decomposition
Slide 71
Octree Decomposition
Slide 72
Algorithm Outline
Slide 73
Classic Path Planning Approaches
• Roadmap – Represent the connectivity of the free space by a network of 1-D curves
• Cell decomposition – Decompose the free space into simple cells and represent the connectivity of the free space by the adjacency graph of these cells
• Potential field – Define a potential function over the free space that has a global minimum at the goal and follow the steepest descent of the potential function
Slide 74
Potential Fields• Initially proposed for real-time collision avoidance
[Khatib 1986]. Hundreds of papers published.• A potential field is a scalar function over the free
space.• To navigate, the robot applies a force proportional to
the negated gradient of the potential field.• A navigation function is an ideal potential field that
– has global minimum at the goal– has no local minima– grows to infinity near obstacles– is smooth
Slide 75
Attractive & Repulsive Fields
Slide 76
How Does It Work?
Slide 77
Algorithm Outline
• Place a regular grid G over the configuration space
• Compute the potential field over G
• Search G using a best-first algorithm with potential field as the heuristic function
Slide 78
Local Minima
• What can we do?– Escape from local minima by taking
random walks– Build an ideal potential field – navigation
function – that does not have local minima
Slide 79
Question
• Can such an ideal potential field be constructed efficiently in general?
Slide 80
Completeness
• A complete motion planner always returns a solution when one exists and indicates that no such solution exists otherwise.– Is the visibility graph algorithm complete?
Yes.– How about the exact cell decomposition
algorithm and the potential field algorithm?
Slide 81
Why Complete Motion Planning?
• Probabilistic roadmap motion planning– Efficient– Work for complex
problems with many DOF
– Difficult for narrow passages
– May not terminate when no path exists
• Complete motion planning– Always terminate
– Not efficient– Not robust even for
low DOF
Slide 82
Path Non-existence Problem
Obstacle
GoalInitial
Robot
Slide 83
Main Challenge
Obstacle
GoalInitial
Robot
• Exponential complexity: nDOF
– Degree of freedom: DOF– Geometric complexity: n
• More difficult than finding a path– To check all possible paths
Slide 84
Approaches• Exact Motion Planning
– Based on exact representation of free space
• Approximation Cell Decomposition (ACD)
• A Hybrid planner
Slide 85
Configuration Space: 2D Translation
Workspace Configuration Space
xyRobot
Start
Goal
Free
Obstacle C-obstacle
Slide 86
ConfigurationSpace Computation
• [Varadhan et al, ICRA 2006]• 2 Translation + 1 Rotation• 215 seconds
Obstacle
Robot
x
y
Slide 87
Obstacles in C-spaceWorkspace Configuration Space
xyRobot
Start
Goal
Free
Obstacle C-obstacle
A 2D Translating Robot
Slide 88
Obstacles in C-space• A configuration q is collision-free, or free, if a
moving object placed at q does not intersect any obstacles in the workspace.
• The free space F is the set of free configurations.
• A configuration space obstacle (C-obstacle) is the set of configurations where the moving object collides with workspace obstacles.
Slide 89
Disc in 2-D Workspaceworkspace configuration
space
Slide 90
Polygonal Robot Translating in 2-D Workspace
workspace configuration space
Slide 91
Articulated Robot in 2-D Workspace
workspace configuration space
Slide 92
Fundamental Questionworkspace configuration space
Are two given points connected by a path?
Slide 93
Problem: Computing C-obstacles
• Input:– Polygonal moving object translating in 2-D
workspace – Polygonal obstacles
• Output: configuration space obstacles represented as polygons
Slide 94
Minkowski Sum
},|{ BbAabaBA
A B
Slide 95
Exercise
AB
A B = ?
Slide 96
Minkowski Sum
},|{ BbAabaBA
Slide 97
Minkowski Sum
Slide 98
Minkowski Sum
},|{ BbAabaBA
Slide 99
Minkowski Sum
• The Minkowski sum of two sets A and B, denoted by AB, is defined as A B = { a+b | a A, bB }
• Similarly, the Minkowski difference is defined as
A – B = { a–b | aA, bB }
p
q
Slide 100
Minkowski Sum of Non-convex Polyhedra
Slide 101
Configuration Space Obstacle• If P is an obstacle in the workspace and M is a
translating object. Then the C-space obstacle corresponding to P is P – M.
P -MObstacle
PRobot
M
C-obstacle
Classic result by Lozano-Perez and Wesley 1979
Slide 102
Minkowski Sum of Convex Polygons
• The Minkowski sum of two convex polygons A and B of m and n vertices respectively is a convex polygon A + B of m + n vertices.– The vertices of A + B are the “sums” of
vertices of A and B.
Slide 103
Complexity of Minkowksi Sum
• 2D convex polygons: O(n+m) • 2D non-convex polygons: O(n2m2)
– Decompose into convex polygons (e.g., triangles or trapezoids), compute the Minkowski sums, and take the union
• 3-D convex polyhedra: O(nm)• 3-D non-convex polyhedra: O(n3m3)
Slide 104
Complexity of Computing C-obstacles
• 3D rigid robots with both translational and rotational DOF– 6D C-space– Arrangement of non-linear surfaces– High combinatorial complexity
• Conclusion– Explicit computation of the boundary of C-obstacle is
difficult and impractical for robots more than 3 DOFs
Slide 105
C-spaceWorkspace Configuration Space
xyRobot
Initial
Goal
Free
Obstacle C-obstacle
A 2D Translating Robot
Slide 106
Computing C-Obstacles
• Difficult due to geometric and space complexity
• Practical solutions are only available for– Translating rigid robots: Minkowski sum– Robots with no more than 3 DOFs
Slide 107
Exact Motion Planning• Approaches
– Exact cell decomposition [Schwartz et al. 83]
– Roadmap [Canny 88]– Criticality based method [Latombe 99]– Voronoi Diagram– Star-shaped roadmap [Varadhan et al. 06]
• Not practical– Due to free space computation
– Limit for special and simple objects • Ladders, sphere, convex shapes• 3DOF
Slide 108
Approaches• Exact Motion Planning
– Based on exact representation of free space
• Approximation Cell Decomposition (ACD)
• A Hybrid Planner Combing ACD and PRM
Slide 109
Approximation Cell Decomposition (ACD)
• Not compute the free space exactly at once• But compute it incrementally
• Relatively easy to implement– [Lozano-Pérez 83]– [Zhu et al. 91]– [Latombe 91]– [Zhang et al. 06]
Slide 110
full mixed
empty
Approximation Cell Decomposition
• Full cell
• Empty cell
• Mixed cell– Mixed– Uncertain
Configuration Space
Slide 111
Connectivity GraphGf : Free Connectivity Graph G: Connectivity Graph
Gf is a subgraph of G
Slide 112
Finding a Path by ACD
Goal
Initial Gf : Free Connectivity Graph
Slide 113
Finding a Path by ACDL: Guiding Path• First Graph Cut Algorithm
– Guiding path in connectivity graph G
– Only subdivide along this path
– Update the graphs G and Gf
Described in Latombe’s book
Slide 114
First Graph Cut Algorithm
Only subdivide along L
L
Slide 115
Finding a Path by ACD
Slide 116
ACD for Path Non-existence
C-space
Goal
Initial
Slide 117
Connectivity Graph Guiding Path
ACD for Path Non-existence
Slide 118
ACD for Path Non-existence
Connectivity graph is not connected
No path!
Sufficient condition for deciding path non-existence
Slide 119
Two-gear Example
no path!
Cells in C-obstacle
Initial
Goal
Roadmap in F
Video 3.356s
Slide 120
Cell Labeling
• Free Cell Query– Whether a cell
completely lies in free space?
• C-obstacle Cell Query– Whether a cell
completely lies in C-obstacle?
full mixed
empty
Slide 121
Free Cell Query A Collision Detection Problem
•Does the cell lie inside free space?
• Do robot and obstacle separate at all configurations?
Obstacle
WorkspaceConfiguration space
?
Robot
Slide 122
Clearance
• Separation distance– A well studied geometric problem
• Determine a volume in C-space which are completely free
d
Slide 123
C-obstacle QueryAnother Collision Detection Problem
•Does the cell lie inside C-obstacle?
• Do robot and obstacle intersect at all configurations?
Obstacle
WorkspaceConfiguration space
?Robot
Slide 124
‘Forbiddance’
• ‘Forbiddance’: dual to clearance• Penetration Depth
– A geometric computation problem less investigated
• [Zhang et al. ACM SPM 2006]
PD
Slide 125
Limitation of ACD
• Combinatorial complexity of cell decomposition
• Limited for low DOF problem– 3-DOF robots
Slide 126
Approaches• Exact Motion Planning
– Based on exact representation of free space
• Approximation Cell Decomposition (ACD)
• A Hybrid Planner Combing ACD and PRM
Slide 127
Hybrid Planning• Probabilistic roadmap
motion planning+ Efficient+ Many DOFs
- Narrow passages- Path non-existence
• Complete Motion Planning+ Complete
- Not efficient
Can we combine them together?
Slide 128
Hybrid Approach for Complete Motion Planning
• Use Probabilistic Roadmap (PRM): – Capture the connectivity for
mixed cells– Avoid substantial subdivision
• Use Approximation Cell Decomposition (ACD)– Completeness – Improve the sampling on
narrow passages
Slide 129
Connectivity GraphGf : Free Connectivity Graph G: Connectivity Graph
Gf is a subgraph of G
Slide 130
Pseudo-free edges
Pseudo free edge for two adjacent cells
Goal
Initial
Slide 131
Pseudo-free Connectivity Graph:
Gsf
Goal
Initial
Gsf = Gf + Pseudo-edges
Slide 132
Algorithm
• Gf
• Gsf
• G
Slide 133
Results of Hybrid Planning
Slide 134
Results of Hybrid Planning
Slide 135
Results of Hybrid Planning• 2.5 - 10 times speedup
3 DOF 4 DOF 4 DOF
timing cells # timing cells # timing cells #
Hybrid 34s 50K 16s 48K 102s 164K
ACD 85s 168K ? ? ? ?
Speedup 2.5 3.3 ≥10 ? ≥10 ?
Slide 136
Summary • Difficult for Exact Motion Planning
– Due to the difficulty of free space configuration computation
• ACD is more practical– Explore the free space incrementally
• Hybrid Planning– Combine the completeness of ACD and
efficiency of PRM
Slide 137
Outline
• Approximate cell decomposition
• Sampling-based motion planning
Slide 138
Approximate Cell Decomposition (ACD)
• Not compute the free space exactly at once• But compute it incrementally
• Relatively easy to implement– [Lozano-Pérez 83]– [Zhu et al. 91]– [Latombe 91]– [Zhang et al. 06]
Octree decomposition
Slide 139
full mixed
empty
Approximate Cell Decomposition
• Full cell• Empty cell • Mixed cell
– Mixed– Uncertain
• Cell labelling algorithms– [Zhang et al 06]
Configuration Space
Slide 140
Finding a Path by ACD
Goal
Initial
Slide 141
Connectivity GraphGf : Free Connectivity Graph G: Connectivity Graph
Gf is a subgraph of G
Slide 142
Finding a Path by ACD
Goal
Initial Gf : Free Connectivity Graph
Slide 143
Finding a Path by ACDL: Guiding Path• First Graph Cut Algorithm
– Guiding path in connectivity graph G
– Only subdivide along this path
– Update the graphs G and Gf
Slide 144
First Graph Cut Algorithm
Only subdivide the cells along L
L : Guiding Path
new Gf
Slide 145
Finding a Path by ACDGf
• A channel
• Can be used for path smoothing.
Slide 146
ACD for Path Non-existence
C-space
Goal
Initial
Slide 147
Connectivity Graph Guiding Path
ACD for Path Non-existence
Slide 148
ACD for Path Non-existence
Connectivity graph is not connected
No path!
A sufficient condition for deciding path non-existence
Slide 149
• Live Demo– Gear-2DOF– Gear-3DOF
Slide 150
Five-gear Example
Video
Initial
Goal
roadmap in free space
Total timing 85s
# of total cells 168K
Slide 151
Two-gear Example
no path!
Cells in C-obstacle
Initial
Goal
Roadmap in F
Video 3.356s
Slide 152
Motion Planning Framework
• Continuous representation
• Discretization
• Graph search
Slide 153
Summary: Approximate Cell Decomposition
• Simple and easy to implement
• Efficient and practical for low DOF robots – Inefficient for 5 or more DOFs robot
• Resolution-complete– Find a path if there is one– Otherwise, report path non-existence– Up to some resolution of the cell
Slide 154
Outline
• Approximate cell decomposition
• Sampling-based motion planning
Slide 155
Motivation
• Geometric complexity• Space dimensionality
Slide 156
Probabilistic Roadmap (PRM)
free space
qqinitinit
qqgoalgoal
milestone
[Kavraki, Svetska, Latombe,Overmars, 95]
local path
Slide 157
Basic PRM AalgorithmInput: geometry of the moving object & obstaclesOutput: roadmap G = (V, E)
1: V and E .
2: repeat3: q a configuration sampled uniformly at random from C.4: if CLEAR(q)then5: Add q to V.6: Nq a set of nodes in V that are close to q.
6: for each q’ Nq, in order of increasing d(q,q’)7: if LINK(q’,q)then8: Add an edge between q and q’ to E.
Slide 158
Two Geometric Primitives in C-space• CLEAR(q)
Is configuration q collision free or not?
• LINK(q, q’)
Is the straight-line path between q and q’ collision-free?
Slide 159
Query Processing
• Connect qinit and qgoal to the roadmap
• Start at qinit and qgoal, perform a random walk, and try to connect with one of the milestones nearby
• Try multiple times
Slide 160
Two Tenets of PRM Planning Checking sampled configurations and
connections between samples for collision can be done efficiently. Hierarchical collision checking[Hierarchical collision checking methods were developed independently from PRM, roughly at the same time]
A relatively small number of milestones and local paths are sufficient to capture the connectivity of the free space. Exponential convergence in expansive
free space (probabilistic completeness)
Slide 161
Why does it work? Intuition• A small number of milestones almost
“cover” the entire free space.
Slide 162
Two Tenets of PRM Planning Checking sampled configurations and
connections between samples for collision can be done efficiently. Hierarchical collision checking[Hierarchical collision checking methods were developed independently from PRM, roughly at the same time]
A relatively small number of milestones and local paths are sufficient to capture the connectivity of the free space. Exponential convergence in expansive
free space (probabilistic completeness)
Slide 163
Narrow Passage Problem• Narrow passages are difficult to be
sampled due to their small volumes in C-space
Narrow passage
Alpha puzzle
qinitqgoal
2F
3F
Configuration Space
1F
Slide 164
Difficulty• Many small connected components
Slide 165
Strategies to Improve PRM
• Where to sample new milestones?– Sampling strategy
• Which milestones to connect?– Connection strategy
• Goal: – Minimize roadmap size to correctly answer
motion-planning queries
Slide 166
Sampling Strategies
Slide 167
small visibility sets
good visibility
poor visibility
Poor Visibility in Narrow Passages
• Non-uniform sampling strategies
Slide 168
But how to identify poor visibility regions?
• What is the source of information?– Robot and environment geometry
• How to exploit it?– Workspace-guided strategies– Dilation-based strategies– Filtering strategies– Adaptive strategies
Slide 169
Identify narrow passages in the workspace and map them into the configuration space
Workspace-guided strategies
Slide 170
F
O
Dilation-based strategies
• During roadmap construction, allow milestones with small penetration
• Dilate the free space– [Hsu et al. 98, Saha et al. 05, Cheng et al. 06, Zhang et al.
07]
A milestone with small penetration
Slide 171
Error
• If a path is returned, the answer is always correct.
• If no path is found, the answer may or may not be correct. We hope it is correct with high probability.
Slide 172
Weaker Completeness Complete planner Too slow Heuristic planner Too unreliable
Probabilistic completeness:If a solution path exists, then the probability that the planner will find one is a fast growing function that goes to 1 as the running time increases
Slide 173
Kinodynamic Planning
Slide 174
RRT for Kinodynamic Systems
• Rapidly-exploring Random Tree
• Randomly select a control input
Slide 175
More Examples
• Car pulling trailers (complicated kinematics -- no dynamics)
Slide 176
Summary: Sampling-based Motion Planning
+ Efficient in practice + Work for robots with many DOF (high-
dimensional configuration spaces)+ Has been applied for various motion planning
problems (non-holonomic, kinodynamic planning etc.)
- Narrow passages problems (one of the hot areas)
- May not terminate when no path exists
Slide 177
Summary
• Configuration space
• Visibility graph
• Approximate cell decomposition – Decompose the free space into simple cells and represent
the connectivity of the free space by the adjacency graph of these cells
• Sampling-based approach– High-dimensional Configuration Spaces– Capture the connectivity of the free space by sampling
Slide 178
References
• Books– J.C. Latombe. Robot Motion Planning, 1991.– S.M. LaValle, Planning Algorithms, 2006
• Free book: http://msl.cs.uiuc.edu/planning/
– H. Choset et al. Principles of Robot Motion: Theory, Algorithms, and Implementations, 2005
• Conferences– ICRA: IEEE International Conference on Robotics and
Automation– IROS: IEEE/RSJ International Conference on Intelligent RObots
and Systems– WAFR: Workshop on the Algorithmic Foundations of Robotics