Title: Last lecture
1Last lecture
- Path planning for a moving
- Visibility graph
- Cell decomposition
- Potential field
- Geometric preliminariesImplementing geometric
primitives correctly and efficiently is tricky
and requires careful thought.
2Configuration Space
3What is a path?
4Rough idea
- Convert rigid robots, articulated robots, etc.
into points - Apply algorithms for moving points
5Mapping from the workspace to the configuration
space
workspace
configuration space
6Configuration space
- Definitions and examples
- Obstacles
- Paths
- Metrics
7Configuration space
- The configuration of a moving object is a
specification of the position of every point on
the object. - Usually a configuration is expressed as a vector
of position orientation parameters q (q1,
q2,,qn). - The configuration space C is the set of all
possible configurations. - A configuration is a point in C.
8Topology of the configuration pace
- The topology of C is usually not that of a
Cartesian space Rn.
9Dimension of configuration space
- The dimension of a configuration space is the
minimum number of parameters needed to specify
the configuration of the object completely. - It is also called the number of degrees of
freedom (dofs) of a moving object.
10Example rigid robot in 2-D workspace
workspace
robot
- 3-parameter specification q (x, y, q ) with q
?0, 2p). - 3-D configuration space
11Example rigid robot in 2-D workspace
- 4-parameter specification q (x, y, u, v) with
u2v2 1. Note u cosq and v sinq . - dim of configuration space ???
- Does the dimension of the configuration space
(number of dofs) depend on the parametrization? - Topology a 3-D cylinder C R2 x S1
- Does the topology depend on the parametrization?
3
12Example rigid robot in 3-D workspace
- q (position, orientation) (x, y, z, ???)
- Parametrization of orientations by matrix q
(r11, r12 ,, r33, r33) where r11, r12 ,, r33
are the elements of rotation matrix
with - r1i2 r2i2 r3i2 1 for all i ,
- r1i r1j r2i r2j r3i r3j 0 for all i ? j,
- det(R) 1
13Example rigid robot in 3-D workspace
- Parametrization of orientations by Euler angles
(f,q,y)
1 ? 2 ? 3 ? 4
14Example rigid robot in 3-D workspace
- Parametrization of orientations by unit
quaternion u (u1, u2, u3, u4) with u12 u22
u32 u42 1. - Note (u1, u2, u3, u4) (cosq/2, nxsinq/2,
nysinq/2, nzsinq/2) with nx2 ny2 nz2 1. - Compare with representation of orientation in
2-D(u1,u2) (cosq, sinq )
n (nx, ny, nz)
q
15Example rigid robot in 3-D workspace
- Advantage of unit quaternion representation
- Compact
- No singularity
- Naturally reflect the topology of the space of
orientations - Number of dofs 6
- Topology R3 x SO(3)
16Example articulated robot
- q (q1,q2,,q2n)
- Number of dofs 2n
- What is the topology?
An articulated object is a set of rigid bodies
connected at the joints.
17Example protein backbone
- What are the possible representations?
- What is the number of dofs?
- What is the topology?
18Configuration space
- Definitions and examples
- Obstacles
- Paths
- Metrics
19Obstacles in the configuration space
- A configuration q is collision-free, or free, if
a moving object placed at q does not intersect
any obstacles in the workspace. - The free space F is the set of free
configurations. - A configuration space obstacle (C-obstacle) is
the set of configurations where the moving object
collides with workspace obstacles.
20Disc in 2-D workspace
workspace
configuration space
workspace
21Polygonal robot translating in 2-D workspace
configuration space
workspace
22Polygonal robot translating rotating in 2-D
workspace
configuration space
workspace
23Polygonal robot translating rotating in 2-D
workspace
q
y
x
24Articulated robot in 2-D workspace
workspace
configuration space
25Configuration space
- Definitions and examples
- Obstacles
- Paths
- Metrics
26Paths in the configuration space
configuration space
workspace
- A path in C is a continuous curve connecting two
configurations q and q such that t(0) q
and t(1)q.
27Constraints on paths
- A trajectory is a path parameterized by time
- Constraints
- Finite length
- Bounded curvature
- Smoothness
- Minimum length
- Minimum time
- Minimum energy
-
28Free space topology
- A free path lies entirely in the free space F.
- The moving object and the obstacles are modeled
as closed subsets, meaning that they contain
their boundaries. - One can show that the C-obstacles are closed
subsets of the configuration space C as well. - Consequently, the free space F is an open subset
of C. Hence, each free configuration is the
center of a ball of non-zero radius entirely
contained in F.
29Semi-free space
- A configuration q is semi-free if the moving
object placed q touches the boundary, but not the
interior of obstacles. - Free, or
- In contact
- The semi-free space is a closed subset of C. Its
boundary is a superset of the boundary of F.
30Example
31Example
32Homotopic paths
- Two paths t and t with the same endpoints are
homotopic if one can be continuously deformed
into the otherwith h(s,0) t(s) and h(s,1)
t(s). - A homotopic class of pathscontains all paths
that arehomotopic to one another.
33Connectedness of C-Space
- C is connected if every two configurations can be
connected by a path. - C is simply-connected if any two paths connecting
the same endpoints are homotopic.Examples R2 or
R3 - Otherwise C is multiply-connected.Examples S1
and SO(3) are multiply- connected - In S1, infinite number of homotopy classes
- In SO(3), only two homotopy classes
34Configuration space
- Definitions and examples
- Obstacles
- Paths
- Metrics
35Metric in configuration space
- A metric or distance function d in a
configuration space C is a function such that - d(q, q) 0 if and only if q q,
- d(q, q) d(q, q),
- .
36Example
- Robot A and a point x on A
- x(q) position of x in the workspace when A is at
configuration q - A distance d in C is defined by d(q, q)
maxx?A x(q) - x(q) where x - y
denotes the Euclidean distance between points x
and y in the workspace.
q
37Examples in R2 x S1
- Consider R2 x S1
- q (x, y,q), q (x, y, q) with q, q ?
0,2p) - a min q - q , 2p - q - q
- d(q, q) sqrt( (x-x)2 (y-y)2 a2 ) )
- d(q, q) sqrt( (x-x)2 (y-y)2 (ar)2 ),
where r is the maximal distance between a point
on the robot and the reference point
a
38Summary on configuration space
- Parametrization
- Dimension (dofs)
- Topology
- Metric
39Minkowski Sum
40Problem
- Input
- Polygonal moving object translating in 2-D
workspace - Polygonal obstacles
- Output configuration space obstacles represented
as polygons
41Disc in 2-D workspace
workspace
configuration space
workspace
42Minkowski sum
- The Minkowski sum of two sets P and Q, denoted by
P?Q, is defined as PQ pq p
?P, q?Q - Similarly, the Minkowski difference is defined as
- P Q pq p?P, q?Q
q
p
43Minkowski sum of convex polygons
- The Minkowski sum of two convex polygons P and Q
of m and n vertices respectively is a convex
polygon P Q of m n vertices. - The vertices of P Q are the sums of vertices
of P and Q.
44Observation
- If P is an obstacle in the workspace and M is a
moving object. Then the C-space obstacle
corresponding to P is P M.
M
45Computing C-obstacles
46Computational efficiency
- Running time O(nm)
- Space O(nm)
- Non-convex obstacles
- Decompose into convex polygons (e.g., triangles
or trapezoids), compute the Minkowski sums, and
take the union - Complexity of Minkowksi sum O(n2m2)
- 3-D workspace