Robot Lab: Robot Path Planning

# Robot Lab: Robot Path Planning

## Robot Lab: Robot Path Planning

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

20. Framework Slide 21

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

32. Framework Slide 33

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

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

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

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 37

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

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

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

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

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

42. Trapezoidal Decomposition Slide 43

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

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

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

46. 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. Octree Decomposition Slide 49

49. Algorithm Outline Slide 50