classical path planning
play

Classical Path Planning Robert Platt Northeastern University - PowerPoint PPT Presentation

Classical Path Planning Robert Platt Northeastern University Slides contain significant material from Uni Freiburg course Original slide author: Kai Arras Problem we want to solve Given: a point-robot (robot is a point in space)


  1. Classical Path Planning Robert Platt Northeastern University Slides contain significant material from Uni Freiburg course Original slide author: Kai Arras

  2. Problem we want to solve Given: – a point-robot (robot is a point in space) – description of obstacle space and free space – a start configuration and goal region Find: – a collision-free path from start to goal workspace configuration space

  3. Problem we want to solve Given: – configuration space – free space – start state – goal region Find: – a collision-free path , such that and workspace configuration space

  4. Problem we want to solve

  5. Method #1: Visibility Graphs n = num of obstacle vertices

  6. Question Can you think of an n^3 algorithm to compute the visibility graph?

  7. Method #2: Generalized Voronoi Diagram

  8. Method #2: Generalized Voronoi Diagram

  9. Question How many regions in a voronoi diagram with n objects?

  10. Method #2: Generalized Voronoi Diagram

  11. Method #3: Exact Cell Decomposition

  12. Method #3: Exact Cell Decomposition

  13. Question Do you need the vertices at the center of the trapezoids? Why/Why not?

  14. Method #4: Uniform Approximate Cell Decomposition c Uniform cell shape: e.g. wavefront planner

  15. Method #5: Quadtrees Non-Uniform cell shape: e.g. quadtree decomposition

  16. Method #5: Quadtrees define G = Decompose(G,resolution): Collision-check: check whether 1. if G null: each cell is completely free or not 2. create coarse grid 3. collision-check G 4. for all occupied cells c in G: 5. delete c from G 6. subdivide c into four cells (sub) 7. add sub into G 8. collision-check sub define FindPath(maxresolution): 1. for resolution = coarse to maxresolution: 2. G = Decompose(G,resolution) 3. if Check-for-path(G) == True: 4. Success! Why do you think this method is called “quadtree”?

  17. Method #5: Octomaps Same as quadtrees, but in three dimensions...

  18. Examples of solutions found using octomaps

  19. Exact vs approximate cell decomposition

  20. Method #6: Potential Functions

  21. Method #6: Potential Functions

  22. Method #6: Potential Functions

  23. Method #6: Potential Functions After computing U, follow the negative gradient:

  24. Potential Function Limitations

  25. Potential Function Limitations

  26. Applications to manipulators Compute potential function in Cartesian space: Project into joint space: Compute goal velocities at different points on the arm: x d Pull eff toward goal and obstacle away from obstacles x 2 Push x1 and x2 away x 1 from obstacles 0 z

  27. Applications to manipulators Can you draw a bug-trap-like scenario where this approach won’t work? x d obstacle x 2 x 1 0 z

Recommend


More recommend