Path Planning from text Fall 2005 1 Outline Point Robot Translational Robot Rotational Robot Fall 2005 2 Visibility Graph (Point Robot) goal start Edges between all pairs of visible vertices Use graph algorithm to find a path from start to goal Fall 2005 3 Free Space (Point Robot) Fall 2005 4 Path Planning (Point Robot) Fall 2005 5 Path Planning (cont) Fall 2005 6 Robot (translational) polygonal Fall 2005 7 C-space Obstacle of P Fall 2005 8 Minkowski Sum Fall 2005 Coordinate dependent! 9 Theorem CP is P(-R(0,0)) R(0,0) –R(0,0) Proof: R(x,y) intersect P (x,y)P(-R(0,0)) Fall 2005 10 A point q in intersecti on If intersect, (x,y) is in CP q R ( x, y ) q P q x, q y R(0,0) q x,q y R(0,0) x y x y q (x,y) R(0,0) q P q x , q y q x x,q y y Fallx2005 , y P ( R(0,0)) –R(0,0) 11 If (x,y) is in CP, R(x,y)&P intersect x, y P (R(0,0)) rx , ry R(0,0) px , p y P such that x, y px rx , p y ry That is, p p x x rx p y y ry (x,y) R(0,0) r –R(0,0) Fall 2005 12 Computing Minkowski Sum Fall 2005 13 Example [i,j] = (1,1) Add v1+w1 w4 w3 angle(v1v2) > angle(w1w2) j2 w1,w5 w2 v3 v2 Fallv1,v4 2005 14 [i,j] = (1,2) Add v1+w2 w4 w3 angle(v1v2) < angle(w2w3) i2 w1 w2 v3 v1 Fall 2005 v2 15 [i,j] = (2,2) Add v2+w2 w4 w3 angle(v2v3) > angle(w2w3) j3 w1 w2 v3 v1 Fall 2005 v2 16 [i,j] = (2,3) Add v2+w3 w4 w3 angle(v2v3) < angle(w3w4) i3 w1 w2 v3 v1 Fall 2005 v2 17 [i,j] = (3,3) Add v3+w3 w4 w3 angle(v3v4) > angle(w3w4) j4 w1 w2 v3 v2 Fall v4,v1 2005 18 [i,j] = (3,4) Add v3+w4 w4 w3 angle(v3v4) < angle(w4w5) i4 w5,w1 w2 v3 v2 Fallv4,v1 2005 19 [i,j] = (4,4) Add v4+w4 w4 w3 w5,w1 w2 v3 v2 Fall v4,v1 2005 20 Non-convex polygons Fall 2005 21 Time Complexity It is O(n+m) if both polygons are convex. It is O(nm) if one of the polygons is convex and one is non-convex. It is O(n2m2) if both polygons are nonconvex. Fall 2005 22 Example 2 [i,j] = (1,1) Add v1+w1 w4 w3 w2 angle(v1v2) < angle(w1w2) i2 w5,w1 v3 v2 Fall v4,v1 2005 23 [i,j] = (2,1) Add v2+w1 w4 w3 w2 angle(v2v3) > angle(w1w2) j2 w5,w1 v3 v2 Fall v4,v1 2005 24 [i,j] = (2,2) Add v2+w2 w4 w3 w2 angle(v2v3) > angle(w2w3) j3 w5,w1 v3 v2 Fall v4,v1 2005 25 [i,j] = (2,3) Add v2+w3 w4 w3 w2 angle(v2v3) < angle(w3w4) i3 w5,w1 v3 v2 Fall v4,v1 2005 26 [i,j] = (3,3) Add v3+w3 w4 w3 w2 angle(v3v4) > angle(w3w4) j4 w5,w1 v3 v2 Fall v4,v1 2005 27 [i,j] = (3,4) Add v3+w4 w4 w3 w2 angle(v3v4) < angle(w4w5) i4 w5,w1 v3 v2 Fall v4,v1 2005 28 [i,j] = (4,4) Add v4+w4 w4 w3 w2 w5,w1 v3 v2 Fall v4,v1 2005 29 Rotational Robot R (x, y, Ф) Ф: rotated anticlockwise through an angle Ф Fall 2005 30 Rotatonal Robot Motion Plan Piano mover applet Fall 2005 31 C-space of Rotational Robot Fall 2005 32 Path Planning (Rotational Robot) Each slice: R(0,0,fi): obtain a roadmap Project all roadmap to get “intersection” – a pure rotation from fi to fj Use a slight larger robot to ensure pure rotation won’t collide with obstacles Fall 2005 33 Homework P R [use the grid line to compute the result as accurate as possible] 1. Compute CP w.r.t. R 2. Compute CP w.r.t. R’ 3. R and R’ are exactly the same robot, differ only in reference point. Are CPs in 1 and 2 the same? 4. Do 1 and 2 obtain the same answer regarding to the intersection query? That is, the configuration shown left is reported as intersection in 1 & 2. R’ Fall 2005 34
© Copyright 2026 Paperzz