1 / 59

Motion and Manipulation

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)

donagh
Download Presentation

Motion and Manipulation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Motion and Manipulation Chapter 6: Combinatorial Motion Planning

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

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

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

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

  6. 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)

  7. Roadmap Methods • Approximate Roadmap Methods • Probabilistic Roadmap (general) • Potential Field (general) • Exact Roadmap Methods • Voronoi Diagram (2D) • Reduced Visibility Graph • Canny’s Roadmap (general)

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

  9. 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)

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

  11. Quadtree FULL E MIX F EMPTY Generalizes to higher dimensions.

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

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

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

  15. Trapezoidal Decomposition • Rays decompose Cfree into trapezoidal cells: 2-cells;vertical rays (bordering two 2-cells): 1-cells. O(n) cells and adjacencies

  16. Trapezoidal Decomposition • Add nodes in the interiors of 2-cells and 1-cells. • Connect nodes into a graph.

  17. Trapezoidal Decomposition • Add initial and goal configurations to graph. • Find path in resulting graph.

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

  19. Plane Sweep Computation • Events and sweep line status Extends to translating polygonal A; additional events.

  20. 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)

  21. 2D Cylindrical Decomposition • Extending vertical rays to +∞ and -∞

  22. 2D Cylindrical Decomposition • Free and forbidden cells alternate inside a single cylinder Cylindrical decompositions nicely generalize to higher dimensions

  23. 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)

  24. Triangulation Point robot in W=R2, so C=R2. • Triangles: 2-cells. • Edges shared by two triangles: 1-cells. O(n) cells and adjacencies

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

  26. 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)

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

  28. 3D Vertical Decomposition • Result: decomposition into cells bounded by four vertical walls and a top and bottom face belonging to obstacles.

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

  30. 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 θ.

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

  32. Translating and Rotating Ladder • Radar map: decomposition of [0,2π) into free, forbidden and contact placements.

  33. Translating and Rotating Ladder • Vary (x,y) and find critical changes of the radar map.

  34. Translating and Rotating Ladder • Critical curves of types 1 and 2 O(n) curves

  35. Translating and Rotating Ladder • Critical curves of types 3 and 4 O(n) curves of type 3, O(n2) curves of type 4.

  36. Translating and Rotating Ladder • Critical curves of types 5: Conchoid of Nicomedes O(n2) curves

  37. Translating and Rotating Ladder • Example decomposition by critical curves O(n4) intersections,O(n4) regions in W

  38. Translating and Rotating Ladder • Lifting the decomposition into configuration space: adjacencies of 3-cells O(n5) cells

  39. Translating and Rotating Ladder • Projected view of 3-cell adjacencies

  40. Translating and Rotating Ladder • Graph with cell adjacencies

  41. 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)

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

  43. Cylindrical Algebraic Decompositions • Projection phase: decomposition in Ri depends on intersections and vertical tangencies in Ri+1.

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

  45. Cylindrical Algebraic Decompositions • 2D example

  46. Cylindrical Algebraic Decompositions • Doubly-exponential: running time O(nO(1)d), where d is the dimension of C.

  47. Roadmap Methods • Approximate Roadmap Methods • Probabilistic Roadmap (general) • Potential Field (general) • Exact Roadmap Methods • Voronoi Diagram (2D) • Reduced Visibility Graph • Canny’s Roadmap (general)

  48. (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).

  49. (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.

  50. Voronoi Diagram • Roadmap for point robot amidst triangular obstacles

More Related