200 likes | 329 Views
Motion Planning i n Virtual Environments. Dan Halperin Yesha Sivan TA: Alon Shalita. Spring 2007. Basics of Motion Planning (D.H.). Motion planning: the basic problem.
E N D
Motion Planningin Virtual Environments Dan HalperinYesha Sivan TA: Alon Shalita Spring 2007 Basics of Motion Planning (D.H.)
Motion planning:the basic problem Let B be a system (the robot) with k degrees of freedom moving in a known environment cluttered with obstacles. Given free start and goal placements for B decide whether there is a collision free motion for B from start to goal and if so plan such a motion.
Configuration spaceof a robot system with k degrees of freedom [Lozano-Peréz ’79] • the space of parametric representation of all possible robot configurations • C-obstacles: the expanded obstacles • the robot -> a point • k dimensional space • point in configuration space: free, forbidden, semi-free • path -> curve
Point robot www.seas.upenn.edu/~jwk/motionPlanning
c14 c7 c4 c5 c8 c2 c15 c11 c1 c10 c13 c3 c9 c6 c12 Trapezoidal decomposition www.seas.upenn.edu/~jwk/motionPlanning
c14 c7 c4 c5 c8 c2 c15 c11 c1 c10 c11 c8 c2 c3 c4 c6 c1 c7 c9 c5 c13 c3 c9 c6 c12 c14 c12 c10 c13 c15 Connectivity graph www.seas.upenn.edu/~jwk/motionPlanning
Two major planning frameworks • Cell decomposition • Road map • Motion planning methods differ along additional parameters
Hardness • The problem is hard when k is part of the input [Reif 79], [Hopcroft et al. 84], … • [Reif 79]: planning a free path for a robot made of an arbitrary number of polyhedral bodies connected together at some joint vertices, among a finite set of polyhedral obstacles, between any two given configurations, is a PSPACE-hard problem • Translating rectangles, planar linkages
A complete solution roadmap [Canny 87]: a singly exponential solution, nk(log n)dO(k^2) expected time
What’s behind the maze solver that we saw last week: translational motion planning for a polygon among polygos using exact Minkowski sums
= Planar Minkowski sums Given two sets A and B in the plane, their Minkowski sum, denoted AB, is: A B = {a + b | a A, b B}
Convex-convex We are given two polygons P and Q with mandn vertices respectively. If both polygons are convex, the complexity of their sum is m + n, and we can compute it in (m + n) time using a very simple procedure.
When at least one is non-convex If only one of the polygons is convex, the complexity of their sum is (mn). If both polygons are non-convex, the complexity of their sum is (m2n2).
Q1 P1 Q P2 P Q2 PQ The decomposition method The prevailing method for computing the sum of two non-convex polygons: Decompose P and Q into convex sub- polygons, compute the pair-wise sums of the sub-polygons and obtain the union of these sums.
The maze solver that we saw last week uses CGAL’s Minkowski sum package
What is the number of DoF’s? • a polygon robot translating in the plane • a polygon robot translating and rotating • a spherical robot moving in space • a spatial robot translating and rotating • a snake robot in the plane with 3 links
How to cope with many degrees of freedom and more complicated robots? prevalent methods: sampling-based planners We start with the archetype: probabilistic roadmap (PRM)
milestone qg qb Probabilistic roadmaps free space [Kavraki, Svetska, Latombe,Overmars, 95]
Key issues • Collision checking • Node sampling • Finding nearby nodes • Node connection