1 / 94

Robot Lab: Robot Path Planning

Robot Lab: 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

paul
Download Presentation

Robot Lab: Robot Path Planning

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. Robot Lab:Robot Path Planning William RegliDepartment of Computer Science(and Departments of ECE and MEM)Drexel University Slide 1

  2. Introduction to Motion Planning • Applications • Overview of the Problem • Basics – Planning for Point Robot • Visibility Graphs • Roadmap • Cell Decomposition • Potential Field Slide 2

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

  4. Fundamental Question Are two given points connected by a path? Slide 4

  5. Basic Problem • Problem statement: Compute a collision-free path for a rigid or articulated moving object among static obstacles. • Input • Geometry of a moving object (a robot, a digital actor, or a molecule) and obstacles • How does the robot move? • Kinematics of the robot (degrees of freedom) • Initial and goal robot configurations (positions & orientations) • Output Continuous sequence of collision-free robot configurations connecting the initial and goal configurations Slide 5

  6. Example: Rigid Objects Slide 6

  7. Example: Articulated Robot Slide 7

  8. Is it easy? Slide 8

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

  10. Tool: Configuration Space Difficulty • Number of degrees of freedom (dimension of configuration space) • Geometric complexity Slide 10

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

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

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

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

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

  16. Framework Slide 16

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

  18. Visibility Graph • A visibility graphis 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 18

  19. A Simple Algorithm for Building Visibility Graphs Slide 19

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

  21. Framework Slide 21

  22. Breadth-First Search Slide 22

  23. Breadth-First Search Slide 23

  24. Breadth-First Search Slide 24

  25. Breadth-First Search Slide 25

  26. Breadth-First Search Slide 26

  27. Breadth-First Search Slide 27

  28. Breadth-First Search Slide 28

  29. Breadth-First Search Slide 29

  30. Breadth-First Search Slide 30

  31. Breadth-First Search Slide 31

  32. Other Search Algorithms • Depth-First Search • Best-First Search, A* Slide 32

  33. Framework Slide 33

  34. Summary • Discretize the space by constructing visibility graph • Search the visibility graph with breadth-first search Q: How to perform the intersection test? Slide 34

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

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

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

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

  39. Voronoi Diagram • Space O(n) • Run time O(n log n) Slide 39

  40. Other Roadmap Methods • Silhouette First complete general method that applies to spaces of any dimensions and is singly exponential in the number of dimensions [Canny 1987] • Probabilistic roadmaps Slide 40

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

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

  43. Trapezoidal Decomposition Slide 43

  44. Computational Efficiency • Running time O(n log n) by planar sweep • Space O(n) • Mostly for 2-D configuration spaces Slide 44

  45. Adjacency Graph • Nodes: cells • Edges: There is an edge between every pair of nodes whose corresponding cells are adjacent. Slide 45

  46. Summary • Discretize the space by constructing an adjacency graph of the cells • Search the adjacency graph Slide 46

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

  48. Quadtree Decomposition Slide 48

  49. Octree Decomposition Slide 49

  50. Algorithm Outline Slide 50

More Related