610 likes | 1.03k Views
Motion and Manipulation. Chapter 6: Combinatorial Motion Planning. Motion Planning Methods. process the implicitly given free space to facilitate finding a curve τ between any two placements. Exact methods : find a path if one exists. (Hard to implement; slow)
E N D
Motion and Manipulation Chapter 6: Combinatorial Motion Planning
Motion Planning Methods process the implicitly given free space to facilitatefinding a curve τ between any two placements. • Exact methods: find a path if one exists. (Hard to implement; slow) • Approximate methods: not guaranteed to find a path. (Easy to implement; fast, but not always successful)
Types of Approaches • Roadmap methods: identify network of curves (roadmap) capturing the structure and connectivity of the free space. • Cell decomposition methods: decompose free space into simple subcells, and build a connectivity graph for these subcells. • (Potential field methods: robot moves from grid point to grid point guided by an artificial potential field, defined by the goal configuration and the obstacles.)
Roadmaps Graph G=(V,E), with S: set of all points on edges and vertices of G is a roadmap if • it is accessible: for all q ЄCfree, there exists a simple path τ: [0,1] -> Cfree with τ(0)=q and τ(1)=s with s ЄS S s τ q
Roadmap • and it preserves connectivity: assuming that there are simple paths from qinit to sinit ЄS and from qgoal to sgoal ЄS then if there exists a path τ: [0,1] -> Cfree with τ(0)= qinit and τ(1)= qgoal then there exists a path τ’ : [0,1] -> S with τ’(0)= sinit and τ’(1)= sgoal. S sgoal τ’ qinit qgoal τ sinit
Cell Decomposition • Approximate Cell Decomposition • Quad Tree (2D, translation) • Exact Cell Decomposition • Trapezoidal Decomposition (2D, translation) • Cylindrical Decomposition (2D, translation) • Triangulation (2D, translation) • Vertical Decomposition (3D, translation) • Piano Movers’ I (2D, translation + rotation) • Algebraic Cylindrical Decomposition (general)
Roadmap Methods • Approximate Roadmap Methods • Probabilistic Roadmap (general) • Potential Field (general) • Exact Roadmap Methods • Voronoi Diagram (2D) • Reduced Visibility Graph • Canny’s Roadmap (general)
Assumptions • Robot A has constant complexity. • Each obstacle BiЄ B has constant complexity,|B|= n. • A is a closed set. • Each Bi is a closed set.
Cell Decomposition • Approximate Cell Decomposition • Quad Tree (2D, translation) • Exact Cell Decomposition • Trapezoidal Decomposition (2D, translation) • Cylindrical Decomposition (2D, translation) • Triangulation (2D, translation) • Vertical Decomposition (3D, translation) • Piano Movers’ I (2D, translation + rotation) • Algebraic Cylindrical Decomposition (general)
Quadtree Translating robot in W=R2, so C=R2. Subdivide W into four equivalent cells, and recurse on each cell that is not entirely FULL or entirely EMPTY. Repeat until there is a path of EMPTY cells connecting the cells containing the initial and goal placements FULL MIX EMPTY
Quadtree FULL E MIX F EMPTY Generalizes to higher dimensions.
Quadtree Process does not terminate. Memory/time is limited, so stop at a certain level. • At each level: • path through EMPTY cells path found • no path through MIXED and EMPTY cells no path exists
Cell Decomposition • Approximate Cell Decomposition • Quad Tree (2D, translation) • Exact Cell Decomposition • Trapezoidal Decomposition (2D, translation) • Cylindrical Decomposition (2D, translation) • Triangulation (2D, translation) • Vertical Decomposition (3D, translation) • Piano Movers’ I (2D, translation + rotation) • Algebraic Cylindrical Decomposition (general)
Trapezoidal Decomposition Point robot in W=R2, so C=R2. • Extend rays upward and downward into Cfree from every vertex until an edge is hit.
Trapezoidal Decomposition • Rays decompose Cfree into trapezoidal cells: 2-cells;vertical rays (bordering two 2-cells): 1-cells. O(n) cells and adjacencies
Trapezoidal Decomposition • Add nodes in the interiors of 2-cells and 1-cells. • Connect nodes into a graph.
Trapezoidal Decomposition • Add initial and goal configurations to graph. • Find path in resulting graph.
Plane Sweep Computation • Sort vertices from left to right: event queue. • Sweep vertical line from left to right, maintaining sweep line status, here sequence of intersected edges from bottom to top; at a vertex: • report 1-cell, and closed 2-cell, • update status: • insert two edges • replace an edge by another edge • remove two edges • n events: total O(n log n) time O(log n) per cell O(log n) per update
Plane Sweep Computation • Events and sweep line status Extends to translating polygonal A; additional events.
Cell Decomposition • Approximate Cell Decomposition • Quad Tree (2D, translation) • Exact Cell Decomposition • Trapezoidal Decomposition (2D, translation) • Cylindrical Decomposition (2D, translation) • Triangulation (2D, translation) • Vertical Decomposition (3D, translation) • Piano Movers’ I (2D, translation + rotation) • Algebraic Cylindrical Decomposition (general)
2D Cylindrical Decomposition • Extending vertical rays to +∞ and -∞
2D Cylindrical Decomposition • Free and forbidden cells alternate inside a single cylinder Cylindrical decompositions nicely generalize to higher dimensions
Cell Decomposition • Approximate Cell Decomposition • Quad Tree (2D, translation) • Exact Cell Decomposition • Trapezoidal Decomposition (2D, translation) • Cylindrical Decomposition (2D, translation) • Triangulation (2D, translation) • Vertical Decomposition (3D, translation) • Piano Movers’ I (2D, translation + rotation) • Algebraic Cylindrical Decomposition (general)
Triangulation Point robot in W=R2, so C=R2. • Triangles: 2-cells. • Edges shared by two triangles: 1-cells. O(n) cells and adjacencies
Triangulation • Add nodes in the interiors of 2-cells and 1-cells. • Connect nodes into a graph. • Add initial and goal configurations to graph. • Find path in resulting graph.
Cell Decomposition • Approximate Cell Decomposition • Quad Tree (2D, translation) • Exact Cell Decomposition • Trapezoidal Decomposition (2D, translation) • Cylindrical Decomposition (2D, translation) • Triangulation (2D, translation) • Vertical Decomposition (3D, translation) • Piano Movers’ I (2D, translation + rotation) • Algebraic Cylindrical Decomposition (general)
Vertical Decomposition Translating polyhedral robot in W=R3 with polyhedral obstacles, so C=R3. • Space sweep: sweep a vertical plane from x=-∞ to x= ∞, and maintain 2D trapezoidal decomposition in cross-section (at x=X). • Topological changes of 2D trapezoidal decomposition occur at vertices.
3D Vertical Decomposition • Result: decomposition into cells bounded by four vertical walls and a top and bottom face belonging to obstacles.
Cell Decomposition • Approximate Cell Decomposition • Quad Tree (2D, translation) • Exact Cell Decomposition • Trapezoidal Decomposition (2D, translation) • Cylindrical Decomposition (2D, translation) • Triangulation (2D, translation) • Vertical Decomposition (3D, translation) • Piano Movers’ I (2D, translation + rotation) • Algebraic Cylindrical Decomposition (general)
Translating and Rotating Ladder Translating and rotating line segment in W=R2 with polygonal obstacles, so C=R2 x [0,2π). Schwartz and Sharir 1983: Piano Movers’ Problem I. Configuration q of A:position (x,y) of endpoint,orientation θ.
Translating and Rotating Ladder • Idea: decompose R2 into regions Г such that for any point p ЄГ, its lifting p x [0,2π) into C intersects the same sequence of robot-obstacle contact surfaces. C Г p
Translating and Rotating Ladder • Radar map: decomposition of [0,2π) into free, forbidden and contact placements.
Translating and Rotating Ladder • Vary (x,y) and find critical changes of the radar map.
Translating and Rotating Ladder • Critical curves of types 1 and 2 O(n) curves
Translating and Rotating Ladder • Critical curves of types 3 and 4 O(n) curves of type 3, O(n2) curves of type 4.
Translating and Rotating Ladder • Critical curves of types 5: Conchoid of Nicomedes O(n2) curves
Translating and Rotating Ladder • Example decomposition by critical curves O(n4) intersections,O(n4) regions in W
Translating and Rotating Ladder • Lifting the decomposition into configuration space: adjacencies of 3-cells O(n5) cells
Translating and Rotating Ladder • Projected view of 3-cell adjacencies
Translating and Rotating Ladder • Graph with cell adjacencies
Cell Decomposition • Approximate Cell Decomposition • Quad Tree (2D, translation) • Exact Cell Decomposition • Trapezoidal Decomposition (2D, translation) • Cylindrical Decomposition (2D, translation) • Triangulation (2D, translation) • Vertical Decomposition (3D, translation) • Piano Movers’ I (2D, translation + rotation) • Algebraic Cylindrical Decomposition (general)
Cylindrical Algebraic Decompositions • Project polynomials in Rn, dimension by dimension, down onto R1. • Repeatedly build a decomposition in Ri and then lift it into Ri+1. The (i+1)-dimensional polynomials decompose the resulting cylinders.
Cylindrical Algebraic Decompositions • Projection phase: decomposition in Ri depends on intersections and vertical tangencies in Ri+1.
Cylindrical Algebraic Decompositions Lifting phase: cell C in Ri, intersected by polynomials f1 < … < fk leads to cylinder in Ri+1 containing the (i+1)-dimensional cells { (p,xi+1) | p in C, fj(p) < xi+1 < fj+1(p) } and the i-dimensional cells { (p,xi+1) | p in C, fj(p) = xi+1 } 44
Cylindrical Algebraic Decompositions • 2D example
Cylindrical Algebraic Decompositions • Doubly-exponential: running time O(nO(1)d), where d is the dimension of C.
Roadmap Methods • Approximate Roadmap Methods • Probabilistic Roadmap (general) • Potential Field (general) • Exact Roadmap Methods • Voronoi Diagram (2D) • Reduced Visibility Graph • Canny’s Roadmap (general)
(Generalized) Voronoi Diagram Point or polygonal robot in R2 with polygonal obstacles, so C=R2. • Voronoi diagram subdivides Cfree into cells consisting of points with the same closest boundary feature (edge, vertex).
(Generalized) Voronoi Diagram • Curves: two equidistant features. • Vertices: three closest features. • Voronoi diagram is accessible and preserves connectivity. • Computable in O(n log n) time.
Voronoi Diagram • Roadmap for point robot amidst triangular obstacles