1 / 25

Robot Motion Planning

Robot Motion Planning. Bug 2 Probabilistic Roadmaps. H j. L j. Bugs 2. q target. M-line. New leave point condition: d<d(H j ,Target). q init. Bug 2 Algorithm. From point L j-1 move along M-line until: Target is reached. Stop An obstacle is hit at H j . Goto 2

marionmoore
Download Presentation

Robot Motion 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 Motion Planning Bug 2 Probabilistic Roadmaps

  2. Hj Lj Bugs 2 qtarget M-line New leave point condition: d<d(Hj,Target) qinit

  3. Bug 2 Algorithm • From point Lj-1 move along M-line until: • Target is reached. Stop • An obstacle is hit at Hj. Goto 2 • Turn left and follow the boundary until: • Target is reached. Stop • M-line met at distance d from target such that: d < dist(Hj,qtarget) Define Lj, set j=j+1, and goto 1. • If we return to Hjwithout meeting the M-line, stop. The target is trapped.

  4. A Hard Example for Bug 2

  5. Some results • Ni= number of intersections of Biwith M-line • Lemma: in Bug2, any segment of the boundary is passed at most Ni times • Theorem: the length of the path verifies

  6. Bug + Noncontact Sensors • Suppose the robot is provided with info within a disk of radius r • E.g.: vision, infra-red, ultrasonic • The robot reconstructs at each point, the path that would generate with no info • Result: smooth version of previous paths

  7. Bug + Non Contact Sensor

  8. Probabilistic Roadmaps • Path planning algorithm are expensive • If #DOFs’ is large, deterministic algorithms are not effective • Solution: use a probabilistic roadmap planner (PRM). • PRM are complete in a probabilistic sense • An heuristic planner: potential fields. Disadvantage: local minima. Solution: randomize to escape local minima

  9. PRM: Description • Roadmap = undirect graph R = (N, E ) • N : (nodes) set of selected configurations in Cfree • E : (edges) collection of simple paths. The Local Paths • Local paths are computed by the fast but not powerful local planner • Idea: connect qinitand qgoalwith qinit’and qgoal’ in N • Search R for a path

  10. Preprocessing Phase Three stages • Roadmap construction. Objectives: • Obtain reasonable connected graph • Be sure “difficult regions contain a few nodes • Roadmap expansion. Objectives: Improve graph connectivity by selecting nodes of R which lie in (heuristic) difficult regions and adding nodes there • Roadmap Component reduction. Optional. Attempts to simplify the graph

  11. Roadmap Construction • Initially R is empty • Repeatedly, generate & add a free configuration to R • For every new q, select some nodes in R and try to connect them to q using local planner • On success, add the edge (q, q’ ) to E : Cfree× Cfree {0,1} is a local function returned by local planner D: pseudo metric in Cfree

  12. Create random configurations

  13. Update Neighboring Nodes’ Edges

  14. Connected nodes End of Construction Step

  15. Expansion Step

  16. End of Expansion Step

  17. Select start and goal Start Goal

  18. Connect Start and Goal to Roadmap Start Goal

  19. Find the Path from Start to Goal Start Goal

  20. Roadmap construction algorithm How? • Nø – Eø • Loop • q  randomly selected free configuration • Nqa set of candidate neighbors of q from N • N = N  {q} •  q’ Nq in order of increasing D(q,q’ ), do • If q, q’ are not in the same connected comp. and(q,q’) =1, then EE  {(q, q’ )} • Update R’s connected components Meaning? Select Algorithm?

  21. Creation of Random Configurations • Nodes of R = uniform random sampling of Cfree • Obtain q by drqwing each of its coords. From allowed interval for the corresponding DOF • Check q for collisions • If q is collision-free, add it to N. Otherwise discard

  22. The Local Planner • Deterministic vs. Non-deterministic planner • Powerful planer = slower planner • Empirical results: use deterministic and simple but very fast planner • Example: connect two configurations by a straight line in configuration space • Check for collisions by bisection

  23. Node Neighbors • Choice of Nqis important. Local planner is used for all q’s in Nq • Nq={q’ N / MaxDist  D(q,q’)} • Skip nodes in the same connected component • Heuristics: bound the size of Nqby some K. This gives independence on the size of R

  24. Distance Function • Dis used for constructing & sorting Nq • Hopefully, D reflect the chance that the local planner will fail • Simple selection that works in practice: D(q,q’)=maxxRobot||x(q)-x(q’)||

  25. Roadmap Expansion • N should be a fair enough covering of Cfree • R often consists of a few large components and several small ones • Expansion = add nodes to form a large component with as many nodes as possible • Try to cover the “difficult” parts of Cfree • Define weight w(q). Large w q is in a difficult region • Add M nodes to the collection

More Related