Upload
sabina-newton
View
221
Download
0
Embed Size (px)
Citation preview
Computational Geometry
Piyush Kumar(Lecture 10: Robot Motion Planning)
Welcome to CIS5930
Reading
Chapter 13 in Textbook David Mount’s Lecture notes. Slides Sources
Lecture notes from Dr. Bayazit Dr. Spletzer, Dr. Latombe.Pictures from the web and David Mount’s notes.
Robots
Real WorldFiction
Robot Motion Planning
Free space
Obstacles
Robot Motion Planning
Work Space : Environment in which robot operates Obstacles : Already occupied spaces of the world. Free Space : Unoccupied space of the world.
Configuration Space OR C-space
Helps in determining where a robot can go.
Modelling a robotConfiguration: Values which
specify the position of a robotGeometric shape description
Motion Planning
Given a robot, find a sequence of valid configurationsthat moves the robot from the source to destination.
start
goal obstacles
Configuration Space
Configuration: Specification of the robot position relative to a fixed coordinate system.
Usually a set of values expressed as a vector of positions/orientations.
Configuration Space: is the space of all possible robot configurations.
Configuration Space Example
reference point
x
y
robotreference direction
workspace
– 3-parameter representation: q = (x,y,)
– In 3D? 6-parameters - (x,y,z,)
Configuration Space
X
Y
A robot which can translate in the plane
X
Y A robot which can translate and rotate in the plane
x
Y
C-space:
C-space:
2-D (x, y)
3-D (x, y, )
Euclidean space: 2R
Courtesy J.Xiao
C-Space
qq11
qq22
q = (q1,q2,…,q10)
Configuration Space /Obstacles
Circular Robot
C-Obstacles
Convex polygonal robot
Minkowski Sum
A B = { a+b | a A, b B }
Minkowski Sums
3D Minkowski sum difficult to compute
Many ApplicationsConfiguration Space Computation
Offset
Morphing
Packing and Layout
Friction model
Configuration Obstacle
Only for robots in 2d that can translate.
CP = { p | R(p) ∩ P ≠ Null }
C-Obstacles
Lemma : CP = P Lemma : CP = P (-R) (-R) Proof: Show that R(q) intersects
P iff q є P (-R). q є P (-R) iff there exists p є P
and (-r) є (-R) such that q = p – r R(q) intersects P iff there exists
r є R and p є P such that r+q = p.
Equ
ival
ent
An illustration
Computing Minkowski sum For a given convex polygonal
obstacle (with n vertices) and a convex footprint robot (with m vertices), how fast can we compute the CP?
O(m + n)O(m + n)Idea: Walk.Idea: Walk.
Complexity of Minkowski Sums? Can we bound the complexity
of the minkowski sum of disjoint convex obstacles with n vertices in the plane?
Naïve bound? Triangulate the obstacles : O(n) edges.
Minkowski sum of R with triangles =
O(nm)
Complexity of the union? O((nm)O((nm)22)?)?
Pseudodisks: Defn.
A set of convex objects {o1,o2,…,on} is called a collection of pseudodisks if for any two distinct objects oi and oj both of the set theoretic differences oi\oj and oj\oi are connected.
Lemma 1
Given a set of convex objects {T1, T2,…, Tn,} with disjoint
interiors and convex R, the set {Ti R | i = 1..n } is a collection of psedodisks.
Proof: On the chalkboard
Lemma 2
Given a collection of pseudodisks with n vertices, the complexity of their union is O(n).
Why?
Planning approaches in C-spaceRoadmap Approach:
Visibility Graph Methods
Cell Decomposition Approach
Potential Fields
Many other Algorithms…
Visibility Graph in C-space
start
goal
Each path in c-space from s to t represents a viable move from s to t of the Robot in the original space.
Visibility Graph in C-space
start
goal
Each path in c-space from s to t represents a viable move from s to t of the Robot in the original space.
Computation time?
Vis Graph in higher dimensions?
Will it work?
Cell Decomp: Trapezoidal Decomp.
GOAL
START
1
3
2
4
5 8
7
9
10
11
12
13
6
1) Decompose Region Into Cells
Cell Decomp: Trapezoidal Decomp.
1) Decompose Region Into Cells
GOAL
START
1
3
2
4
5 8
7
9
10
11
12
13
6
2) Construct Adjacency Graph
Cell Decomp: Trapezoidal Decomp.
GOAL
START
Cell Decomposition: Other approaches
Uniform Quadtree
Potential field approach
The field is modeled by a potential function U(x,y) over C
Motion policy control law is akin to gradient descent on the potential function
Next Class
Final Review: Q&A session.