Download presentation
1
Path Planning for a Point Robot
Motion Planning Path Planning for a Point Robot (This slides are based on Latombe and Hwang slides)
2
Configuration Space: Tool to Map a Robot to a Point
3
Problem free space s free path g
4
Problem semi-free path
5
Types of Path Constraints
Local constraints: lie in free space Differential constraints: have bounded curvature Global constraints: have minimal length
6
Motion-Planning Framework
Continuous representation Discretization Graph searching (blind, best-first, A*)
7
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 function over the free space that has a global minimum at the goal configuration and follow its steepest descent
8
Roadmap Methods Visibility graph Introduced in the Shakey project at SRI in the late 60s. Can produce shortest paths in 2-D configuration spaces g s
9
Simple Algorithm Install all obstacles vertices in VG, plus the start and goal positions For every pair of nodes u, v in VG If segment(u,v) is an obstacle edge then insert (u,v) into VG else for every obstacle edge e if segment(u,v) intersects e then goto 2 Search VG using A*
10
Complexity Simple algorithm: O(n3) time Rotational sweep: O(n2 log n)
Optimal algorithm: O(n2) Space: O(n2)
11
Rotational Sweep Check the following page:
VISIBLE_VERTICES(PolygonSet S, Point p) 1. initialize balanced search tree T 2. initialize list L 3. Sort the obstacle vertices in set S according to the clockwise angle that the half-line from p to each vertex makes with the positive x-axis. In case of ties vertices closer to p should come before vertices farther from p. Let W1, ..., Wn be the sorted list. 4. Let r be the half-line parallel to the positive x-axis starting at p. Find the obstacle edges that are properly intersected by r, and store them in a balanced search tree T in the order in which they are intersected by r. 5. i = 1 // rotate the ray to the first vertex 6. while not (i > n) 7. Delete from T the obstacle edges incident to Wi that lie on the counterclockwise side of the half-line from p to Wi. 8. if (VISIBLE(p, Wi, T)) 9. L.append(Wi) 10. Insert into T the obstacle edges incident to Wi that lie on the clockwise side of the half-line from p to Wi. 11. increment i // rotate the ray to the next vertex 12. return L Check the following page:
12
Rotational Sweep
13
Rotational Sweep
14
Rotational Sweep
15
Rotational Sweep
16
Reduced Visibility Graph
can’t be shortest path tangent segments Eliminate concave obstacle vertices
17
Generalized (Reduced) Visibility Graph
tangency point
18
Three-Dimensional Space
Shortest path passes through none of the vertices locally shortest path homotopic to globally shortest path Computing the shortest collision-free path in a polyhedral space is NP-hard
19
Roadmap Methods Voronoi diagram Introduced by Computational Geometry researchers. Generate paths that maximizes clearance. O(n log n) time O(n) space
20
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 function over the free space that has a global minimum at the goal configuration and follow its steepest descent
21
Cell-Decomposition Methods
Two classes of methods: Exact cell decomposition The free space F is represented by a collection of non-overlapping cells whose union is exactly F Examples: Polygonal decomposition Trapezoidal decomposition
22
Polygonal Configuration Space
- represent the configuration space boundary and obstacles as polygons - polygons may be concave - decompose the free space into convex cells
23
Polygonal Configuration Space
cells form channels instead of line paths channels give the robot more information to avoid obstacles encountered at run time - cells form channels instead of line paths - the interior of the channel lies entirely in free space - an easy way to generate a path is to connect the midpoint of every cell boundary
24
Polygonal Configuration Space
qfinal qinit - to do a query, identify the cells where the initial and final configurations lie - look for a sequence of cells that connect the initial and final cells - connect the midpoints together - can apply spline curve fitting techniques if we want a smooth path
25
Trapezoidal decomposition
26
Trapezoidal decomposition
27
Trapezoidal decomposition
28
Trapezoidal decomposition
29
Trapezoidal decomposition
critical events criticality-based decomposition …
30
Trapezoidal decomposition
Planar sweep O(n log n) time, O(n) space
31
Generalization to 3 Dimensions
- the sweeping method can be generalized to 3D quite easily - instead of sweeping lines, we sweep planes, the result are parallelpiped cells - the figure here is crude because it is just lifted from the 2D case. In general, we put a plane when we come to a vertex in the sweep - the connectivity graph is generated much in the same way as the 2D case by connecting points on the cell boundaries
32
Cell-Decomposition Methods
Two classes of methods: Exact cell decomposition Approximate cell decomposition F is represented by a collection of non-overlapping cells whose union is contained in F Examples: quadtree, octree, 2n-tree
33
Octree Decomposition
34
Sketch of Algorithm Compute cell decomposition down to some resolution
Identify start and goal cells Search for sequence of empty/mixed cells between start and goal cells If no sequence, then exit with no path If sequence of empty cells, then exit with solution If resolution threshold achieved, then exit with failure Decompose further the mixed cells Return to 2
35
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 function over the free space that has a global minimum at the goal configuration and follow its steepest descent
36
Potential Field Methods
Approach initially proposed for real-time collision avoidance [Khatib, 86]. Hundreds of papers published on it. Goal Robot
37
Attractive and Repulsive fields
38
Local-Minimum Issue Perform best-first search (possibility of combining with approximate cell decomposition) Alternate descents and random walks Use local-minimum-free potential (navigation function)
39
Completeness of Planner
A motion planner is complete if it finds a collision-free path whenever one exists and return failure otherwise. Visibility graph, Voronoi diagram, exact cell decomposition, navigation function provide complete planners Weaker notions of completeness, e.g.: - resolution completeness (PF with best-first search) - probabilistic completeness (PF with random walks)
40
A probabilistically complete planner returns a path with high probability if a path exists. It may not terminate if no path exists. A resolution complete planner discretizes the space and returns a path whenever one exists in this representation.
41
Preprocessing / Query Processing
Preprocessing: Compute visibility graph, Voronoi diagram, cell decomposition, navigation function Query processing: - Connect start/goal configurations to visibility graph, Voronoi diagram - Identify start/goal cell - Search graph
42
Summary: Exact Cell Decomposition
43
Summary: Approximate Cell Decomposition
44
Summary: Potential Fields
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.