Path Planning from text
description
Transcript of Path Planning from text
![Page 1: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/1.jpg)
Fall 2005 1
Path Planning from text
![Page 2: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/2.jpg)
Fall 2005 2
Outline
Point RobotTranslational RobotRotational Robot
![Page 3: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/3.jpg)
Fall 2005 3
Visibility Graph (Point Robot)
start
goal
Edges between all
pairs of visible vertices
Use graph algorithm to find a path from start to goal
![Page 4: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/4.jpg)
Fall 2005 4
Free Space (Point Robot)
![Page 5: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/5.jpg)
Fall 2005 5
Path Planning (Point Robot)
![Page 6: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/6.jpg)
Fall 2005 6
Path Planning (cont)
![Page 7: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/7.jpg)
Fall 2005 7
Robot (translational)
polygonal
![Page 8: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/8.jpg)
Fall 2005 8
C-space Obstacle of P
![Page 9: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/9.jpg)
Fall 2005 9
Minkowski Sum Coordinate
dependent!
![Page 10: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/10.jpg)
Fall 2005 10
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))
![Page 11: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/11.jpg)
Fall 2005 11
R(0,0)
–R(0,0)
PqyxRq
q
),(
onintersectiin point A
)0,0(, Ryqxq yx
)0,0(, Ryqxq yx
(x,y)
If intersect, (x,y) is in CPIf intersect, (x,y) is in CP
))0,0((,
,,
RPyx
yqxqqq
Pq
yxyx
q
![Page 12: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/12.jpg)
Fall 2005 12
R(0,0)
–R(0,0)
))0,0((, RPyx
(x,y)
If (x,y) is in CP, R(x,y)&P intersectIf (x,y) is in CP, R(x,y)&P intersect
p
yy
xx
ryp
rxp
is,That
r
yyxx
yxyx
rprpyx
PppRrr
,,such that
, )0,0(,
![Page 13: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/13.jpg)
Fall 2005 13
Computing Minkowski Sum
![Page 14: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/14.jpg)
Fall 2005 14
Example
v1,v4
v2
v3
w1,w5 w2
w3
w4
[i,j] = (1,1)
Add v1+w1
angle(v1v2) > angle(w1w2)
j2
![Page 15: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/15.jpg)
Fall 2005 15v1v2
v3
w1 w2
w3
w4
[i,j] = (1,2)
Add v1+w2
angle(v1v2) < angle(w2w3)
i2
![Page 16: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/16.jpg)
Fall 2005 16v1v2
v3
w1 w2
w3
w4
[i,j] = (2,2)
Add v2+w2
angle(v2v3) > angle(w2w3)
j3
![Page 17: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/17.jpg)
Fall 2005 17v1v2
v3
w1 w2
w3
w4
[i,j] = (2,3)
Add v2+w3
angle(v2v3) < angle(w3w4)
i3
![Page 18: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/18.jpg)
Fall 2005 18v4,v1
v2
v3
w1 w2
w3
w4
[i,j] = (3,3)
Add v3+w3
angle(v3v4) > angle(w3w4)
j4
![Page 19: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/19.jpg)
Fall 2005 19v4,v1
v2
v3
w5,w1 w2
w3
w4
[i,j] = (3,4)
Add v3+w4
angle(v3v4) < angle(w4w5)
i4
![Page 20: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/20.jpg)
Fall 2005 20v4,v1
v2
v3
w5,w1 w2
w3
w4
[i,j] = (4,4)
Add v4+w4
![Page 21: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/21.jpg)
Fall 2005 21
Non-convex polygons
![Page 22: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/22.jpg)
Fall 2005 22
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 non-convex.
![Page 23: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/23.jpg)
Fall 2005 23
Example 2
v4,v1
v2
v3
w5,w1
w2
w3
w4
[i,j] = (1,1)
Add v1+w1
angle(v1v2) < angle(w1w2)
i2
![Page 24: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/24.jpg)
Fall 2005 24v4,v1
v2
v3
w5,w1
w2
w3
w4
[i,j] = (2,1)
Add v2+w1
angle(v2v3) > angle(w1w2)
j2
![Page 25: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/25.jpg)
Fall 2005 25v4,v1
v2
v3
w5,w1
w2
w3
w4
[i,j] = (2,2)
Add v2+w2
angle(v2v3) > angle(w2w3)
j3
![Page 26: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/26.jpg)
Fall 2005 26v4,v1
v2
v3
w5,w1
w2
w3
w4
[i,j] = (2,3)
Add v2+w3
angle(v2v3) < angle(w3w4)
i3
![Page 27: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/27.jpg)
Fall 2005 27v4,v1
v2
v3
w5,w1
w2
w3
w4
[i,j] = (3,3)
Add v3+w3
angle(v3v4) > angle(w3w4)
j4
![Page 28: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/28.jpg)
Fall 2005 28v4,v1
v2
v3
w5,w1
w2
w3
w4
[i,j] = (3,4)
Add v3+w4
angle(v3v4) < angle(w4w5)
i4
![Page 29: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/29.jpg)
Fall 2005 29v4,v1
v2
v3
w5,w1
w2
w3
w4
[i,j] = (4,4)
Add v4+w4
![Page 30: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/30.jpg)
Fall 2005 30
Rotational Robot
R (x, y, Ф)Ф: rotated anti-clockwise through an angle Ф
![Page 31: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/31.jpg)
Fall 2005 31
Rotatonal Robot Motion Plan
Piano mover applet
![Page 32: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/32.jpg)
Fall 2005 32
C-space of Rotational Robot
![Page 33: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/33.jpg)
Fall 2005 33
Path Planning (Rotational Robot)
Each slice: R(0,0,i): obtain a roadmapProject all roadmap to get “intersection” – a pure rotation from i to j
Use a slight larger robot to ensure pure rotation won’t collide with obstacles
![Page 34: Path Planning from text](https://reader035.fdocuments.net/reader035/viewer/2022062301/56815a9a550346895dc8181c/html5/thumbnails/34.jpg)
Fall 2005 34
Homework
P
R
[use the grid line to compute the result as accurate as possible]
1. Compute CP w.r.t. R2. 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’