Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Training at AI Frontiers 2018 - LaiOffer Self-Driving-Car-Lecture 3: Any-Angle Search

91 vues

Publié le

LaiOffer Self-Driving-Car-Lecture 3: Any-Angle Search

Publié dans : Technologie
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Training at AI Frontiers 2018 - LaiOffer Self-Driving-Car-Lecture 3: Any-Angle Search

  1. 1. ANY-ANGLE SEARCH AI Frontiers 2018
  2. 2. Source: Courtesy of Alex Nash
  3. 3. Source: Courtesy of Alex Nash
  4. 4. Source: Courtesy of Alex Nash
  5. 5. Source: Courtesy of Alex Nash
  6. 6. Source: Courtesy of Alex Nash
  7. 7. Source: Courtesy of Alex Nash
  8. 8. Source: Courtesy of Alex Nash
  9. 9. Source: Courtesy of Alex Nash
  10. 10. ANY-ANGLE TRADEOFFS Path Length ComputationTime
  11. 11. goal start A* (GRID GRAPHS)
  12. 12. goal start A* (GRID GRAPHS)
  13. 13. goal start A* (GRID GRAPHS)
  14. 14. goal start A* (GRID GRAPHS)
  15. 15. goal start A* (GRID GRAPHS)
  16. 16. goal start A* (GRID GRAPHS)
  17. 17. goal start A* (GRID GRAPHS)
  18. 18. goal start A* (GRID GRAPHS) Pros • Fast. Search is performed on a simple graph • Graph edges are implied by the grid • Each vertex has up to 8 neighbors Cons • Paths are long and unrealistic looking
  19. 19. ANY-ANGLE TRADEOFFS Path Length ComputationTime A* (grid graphs)
  20. 20. ANY-ANGLE TRADEOFFS Path Length ComputationTime A* (grid graphs) Can we do better? Hint: “Graphs don’t have to be grids”
  21. 21. goal start A* (VISIBILITY GRAPHS)
  22. 22. goal start A* (VISIBILITY GRAPHS)
  23. 23. goal start A* (VISIBILITY GRAPHS) Pros • Guaranteed to find a shortest path Cons • Slow. Search is performed on a complex graph • Determining graph edges requires line-of-sight checks • Each vertex can have lots of edges
  24. 24. goal start A* (VISIBILITY GRAPHS) Pros • Guaranteed to find a shortest path Cons • Slow. Search is performed on a complex graph • Determining graph edges requires line-of-sight checks • Each vertex can have lots of edges
  25. 25. ANY-ANGLE TRADEOFFS Path Length ComputationTime A* (grid graphs) A* (visibility graphs)
  26. 26. ANY-ANGLE TRADEOFFS Path Length ComputationTime A* (grid graphs) A* (visibility graphs) Can we do better? Hint: “Tighten slack ropes”
  27. 27. goal start A* (POST-SMOOTHING)
  28. 28. goal start A* (POST-SMOOTHING)
  29. 29. goal start A* (POST-SMOOTHING)
  30. 30. goal start A* (POST-SMOOTHING)
  31. 31. goal start A* (POST-SMOOTHING) Pros • Simple and fast Cons • Is often ineffective because search is decoupled from post-processing • A* often finds paths that cannot be smoothed
  32. 32. ANY-ANGLE TRADEOFFS Path Length ComputationTime A* (grid graphs) A* (visibility graphs) A* with post-smoothing
  33. 33. ANY-ANGLE TRADEOFFS Path Length ComputationTime A* (grid graphs) A* (visibility graphs) A* with post-smoothing Any other ideas?
  34. 34. FIELD D* • Field D* is an extension of A* • Propagates information along grid edges • Does not constrain paths to be formed by grid edges • Widely used by roboticists Dave Ferguson,Anthony Stentz: Using interpolation to improve path planning:The Field D* algorithm. J. Field Robotics 23(2): 79-101 (2006)
  35. 35. FIELD D* • Key idea: • The choice of a node to expand does not have to be grid nodes • It can be an intermediate node between grid nodes Dave Ferguson,Anthony Stentz: Using interpolation to improve path planning:The Field D* algorithm. J. Field Robotics 23(2): 79-101 (2006)
  36. 36. FIELD D* goal start Dave Ferguson,Anthony Stentz: Using interpolation to improve path planning:The Field D* algorithm. J. Field Robotics 23(2): 79-101 (2006)
  37. 37. FIELD D* goal start Dave Ferguson,Anthony Stentz: Using interpolation to improve path planning:The Field D* algorithm. J. Field Robotics 23(2): 79-101 (2006)
  38. 38. FIELD D* goal start Dave Ferguson,Anthony Stentz: Using interpolation to improve path planning:The Field D* algorithm. J. Field Robotics 23(2): 79-101 (2006) f = 1 + sqrt(5) = 3.24 f = sqrt(2) + 2 = 3.41
  39. 39. FIELD D* goal start Dave Ferguson,Anthony Stentz: Using interpolation to improve path planning:The Field D* algorithm. J. Field Robotics 23(2): 79-101 (2006) f = 1 + sqrt(5) = 3.24 f = sqrt(2) + 2 = 3.41 f = sqrt(10) = 3.16
  40. 40. FIELD D* goal start Dave Ferguson,Anthony Stentz: Using interpolation to improve path planning:The Field D* algorithm. J. Field Robotics 23(2): 79-101 (2006) f = 1 + sqrt(5) = 3.24 f = sqrt(2) + 2 = 3.41 f = sqrt(10) = 3.16
  41. 41. goal FIELD D* start Dave Ferguson,Anthony Stentz: Using interpolation to improve path planning:The Field D* algorithm. J. Field Robotics 23(2): 79-101 (2006)
  42. 42. goal FIELD D* start Pros • Interleaves smoothing with search Cons • Restricted to rectangular grids • Subject to interpolation error • Complex path extraction
  43. 43. FIELD D* The Field D* Algorithm 9 f a path from the initial state to the goal has been calculated, the path is extracted nitial position and iteratively computing the cell boundary point to move to next. erpolation technique, it is possible to compute the path cost of any point inside a he corners, which is useful for both extracting the path and getting back on track perfect (which is usually the case for real robots). See Section 6 for more on path a path planned using Field D* showing individual grid cells. Notice that the path is not nd exiting cells at corner points. 10 D. Ferguson and A. Stentz Fig. 11. Planning through a potential field of obstacles. At high grid resolutions, Field D* produces smoo curves through both uniform and non-uniform cost environments; this is not generally true of standard gr based planners. amount of computation required when updating the neighbors of a popped state (lines {09 - 14}) only considering those states actually affected by the new value of the popped state and how the states are affected. To do this, we keep track of a backpointer for each state, specifying from which states it curren derives its path cost. Since, in Field D*, the successor of each state is a point on an edge connecti two of its neighboring states, this backpointer needs to specify the two states that form the endpoin of this edge. We use bptr(s) to refer to the most clockwise of the two endpoint states relative ! Dave Ferguson,Anthony Stentz: Using interpolation to improve path planning:The Field D* algorithm. J. Field Robotics 23(2): 79-101 (2006)
  44. 44. ANY-ANGLE TRADEOFFS Path Length ComputationTime A* (grid graphs) A* (visibility graphs) A* with post-smoothing (grid graphs) Field D*
  45. 45. THETA* • Like Field D*,Theta* is also an extension of A* • It is (arguably) a simpler extension of A* • Like Field D*, it also propagates information along grid edges • Like Field D*, it also does not constrain paths to be formed by grid edges Alex Nash, Kenny Daniel, Sven Koenig,Ariel Felner:Theta*:Any-Angle Path Planning on Grids.AAAI 2007: 1177-1183 Kenny Daniel,Alex Nash, Sven Koenig,Ariel Felner:Theta*:Any-Angle Path Planning on Grids. J.Artif. Intell. Res. (JAIR) 39: 533-579 (2010)
  46. 46. THETA* • Key idea: • The parent of a node does not need to be its neighbor • When expanding a node s and generating a node s’, 
 typically, parent(s’) = s • Now, parent(s’) can be parent(s) if this path is shorter Alex Nash, Kenny Daniel, Sven Koenig,Ariel Felner:Theta*:Any-Angle Path Planning on Grids.AAAI 2007: 1177-1183 Kenny Daniel,Alex Nash, Sven Koenig,Ariel Felner:Theta*:Any-Angle Path Planning on Grids. J.Artif. Intell. Res. (JAIR) 39: 533-579 (2010)
  47. 47. goal start THETA*
  48. 48. goal start THETA*
  49. 49. goal start THETA*
  50. 50. goal start THETA*
  51. 51. goal start THETA*
  52. 52. goal start THETA*
  53. 53. goal start THETA* Pros • Interleaves smoothing with search Cons • Restricted to rectangular grids • Simpler path extraction
  54. 54. THETA* Field D* A* with post-smoothing Theta* Shortest paths found by three algorithms
  55. 55. ANY-ANGLE TRADEOFFS Path Length ComputationTime A* (grid graphs) A* (visibility graphs) A* with post-smoothing (grid graphs) Theta* Field D*

×