Theory of two-dimensional transformations

Calhoun: The NPS Institutional Archive
DSpace Repository
Faculty and Researchers
Faculty and Researchers Collection
1998-10
Theory of two-dimensional transformations
Kanayama, Yutaka J.
http://hdl.handle.net/10945/41296
Downloaded from NPS Archive: Calhoun
IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 14, NO. 5, OCTOBER 1998
[11] F. L. Lewis, K. Liu, and A. Yesildirek, “Neural net robot controller with
guaranteed tracking performance,” IEEE Trans. Neural Networks, vol.
6, pp. 703–715, May 1995.
[12] S. S. Ge, T. H. Lee, and C. J. Harris, Adaptive Neural Network Control
of Robotic Manipulators. Singapore: World Scientific, 1998.
[13] S. S. Ge and I. Postlethwaite, “Adaptive neural network controller design
for flexible joint robots using singular perturbation technique,” Trans.
Inst. Meas. Contr., vol. 17, no. 3, pp. 120–131, 1995.
Theory of Two-Dimensional Transformations
Yutaka J. Kanayama and Gary W. Krahn
Abstract—This paper proposes a new “heterogeneous” two-dimensional
(2-D) transformation group
;
to solve motion analysis/planning
problems in robotics. In this theory, we use a 3
1 matrix to represent
a transformation as opposed to a 3
3 matrix in the homogeneous
formulation. First, this theory is as capable as the homogeneous theory.
Because of the minimal size, its implementation requires less memory
space and less computation time, and it does not have the rotational
matrix inconsistency problem. Furthermore, the raw rotation angle is more useful than the trigonometric values, cos and sin , in the
homogeneous transformations. This paper also discusses how to apply
the group
;
to solve problems related to motion analysis/planning,
trajectory generation, and others. This heterogeneous formulation has
been successfully implemented in the MML software system for the autonomous mobile robot Yamabico-11 developed at the Naval Postgraduate
School.
hT i
2
2
hT i
Index Terms—Group theory, heterogeneous transformations, trajectory
generation, transformation, two-dimensional transformation.
I. INTRODUCTION
The three-dimensional (3-D) homogeneous transformation theory
has been extensively used in the robotics field [1], [2]. Therefore,
when we need a two-dimensional (2-D) transformation theory to
deal with the problems in mobile robot motion control or computer
graphics, a natural consequence is to apply the 2-D version of the
3-D homogeneous transformation formalism [3].
The general format of 2-D homogeneous transformations is
R11
T = R21
0
R12
R22
x
y
0
1
=
cos sin 0
0 sin cos 0
x
y
827
theory is as capable as the homogeneous theory, we can expect this
theory to be an optimal one. The rotational information is contained in
a 2 2 2 matrix in the homogeneous theory, however, in the proposed
theory it is contained in one real number in the proposed theory.
Since we do not use the “homogeneous” matrix operations in this
new theory, we call this new formulation heterogeneous.
This paper reports four major results on the heterogeneous 2-D
transformation theory:
1) a formulation that is as capable as the homogeneous transformation;
2) this formulation requires less memory space and less computation time than the homogeneous formulation and it does not
have the rotation matrix consistency problem;
3) the explicit angle representation carries more information;
4) there are several applications of this theory in autonomous
vehicle motion control.
More detailed discussions are given in Section III.
In the motion planning research, the concept of “configuration,”
(x; y; ) has been widely used [5]. It should be noted that this
concept is distinct from that of the heterogeneous transformations. A
configuration describes the “static” positioning of a rigid body where
(x; y; 0) and (x; y; 2 ) are equivalent. For a transformation of a rigid
body, however, there is a clear distinction between a no-rotation and
a 2 -rotation.
In the 3-D transformations, to avoid its singular point, the quaternian algebra was introduced [6], [7]. In the 2-D transformations,
however, there is no singular point in both the homogeneous and
heterogeneous formulations and we do not need any special consideration in this respect.
The authors have implemented this heterogeneous transformation
formulation as a part of the MML software system for the autonomous
robot “Yamabico-11” at the Naval Postgraduate School [8], [9].
The simple function set (the inverse and composition functions)
solves numerous motion planning/analyzing problems including the
examples described in Section IV.
II. HETEROGENEOUS TRANSFORMATION THEORY
Let < denote the set of all real numbers. A transformation, q , is
defined by
q
(1)
1
where a transformation is represented by a 3 2 3 matrix. As opposed
to this classical method, in this paper, we propose a new 2-D
transformation group hT ; i [4]. Each transformation in this theory
is the 3 2 1 matrix q = (x; y; )T , where x; y; 2 <. Since
a transformation in a plane has three degrees of freedom (two for
translation and one for rotation), this 3 2 1 form is the minimal
mathematical structure we need. Therefore, if this new transformation
Manuscript received July 19, 1994; revised June 1, 1998. This paper was
recommended for publication by Associate Editors Y. Nakamura, V. Kumar,
and A. De Luca and Editor A. Goldenberg upon evaluation of the reviewers’
comments.
Y. Kanayama is with the Computer Science Department, Naval Postgraduate School, Monterey, CA 93943 USA (e-mail: [email protected]. navy.mil).
G. Krahn is with the Department of Mathematical Sciences, United States
Military Academy, West Point, NY 10996 USA (e-mail: ag2609@usma2.
usma.edu).
Publisher Item Identifier S 1042-296X(98)07319-4.
x
y
(2)
where x; y; 2 <. The set of all transformations is denoted by
T . For example, (2; 1; =6)T , (2; 4; =4)T 2 T (M T denotes the
transposition of the matrix M ). A transformation q is interpreted
as a 2-D coordinate transformation from one Cartesian coordinate
system to another. Furthermore, q is interpreted as a composition of
a translational transformation (x; y ) and a rotational transformation .
Definition: The transformation group hT ; i consists of the set T
of transformations, where
T = f(x; y; )T jx; y; 2 <g
and the binary operator (composition function), , is defined as
follows: Let q1 = (x1 ; y1 ; 1 )T , q2 = (x2 ; y2 ; 2 )T 2 hT ; i, then
q1
1042–296X/98$10.00  1998 IEEE
q2 0
x1 + x2 cos 1 y2 sin 1
y1 + x2 sin 1 + y2 cos 1
1 + 2
:
(3)
828
IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 14, NO. 5, OCTOBER 1998
Fig. 1. Composition.
Furthermore, we write q1 = q2 if and only if x1 = x2 , y1 = y2 , and
1 = 2 .
Notice that this relation is the most general equivalence relation
in hT ; i. In this section we show that the transformation system
hT ; i is an algebraic nonabelian group.
The interpretation of q1 q2 in the domain of 2-D coordinate
transformations is the composition of the coordinate transformations
q1 and q2 (Fig. 1). For instance, if
q1 =
8
5
and q2 =
6
6
2
arguments of the composite function is important. The composition
function satisfies the laws of closure, associativity, identity, and
inverse as shown below.
Lemma 1—Closure: For any q1 ; q2 2 hT ; i, q1 q2 2 hT ; i.
Proof: Follows directly from the definition of the composition
function given in (3).
Lemma 2—Associativity: For any q1 ; q2 ; q3 2 hT ; i
4
then their compositions are
q1
q2 =
p
7 + 3p 3
8+ 3
5
and q2 q1 =
6+
p3
2+
p
2
13
5
12
2
Thus, the composite function is not commutative. The following is
an immediate result from the definition of hT ; i.
Corollary 1: For any q = (x; y; )T 2 hT ; i
x
x
0
q= y = y 0 :
(4)
0
Therefore, a transformation (x; y; )T can always be decomposed
into a translation (x; y; 0)T and a rotation (0; 0; )T . Notice,
however, that in general q 6= (0; 0; )T (x; y; 0)T . The order of two
:
(q1
q2 ) q3 =
=
=
=
(5)
Proof: See (6) at the bottom of this page.
12
(q1
q2 ) q3 = q1 (q2 q3):
0
x1 + x2 cos 1 y2 sin 1
y1 + x2 sin 1 + y2 cos 1
1 + 2
0
x3
y3
3
0
x1 + x2 cos 1 y2 sin 1 + x3 cos(1 + 2 ) y3 sin(1 + 2 )
y1 + x2 sin 1 + y2 cos 1 + x3 sin(1 + 2 ) + y3 cos(1 + 2 )
1 + 2 + 3
x1 + (x2 + x3 cos 2
y1 + (x2 + x3 cos 2
x1
y1
1
0 y3 sin 2 ) cos 1 0 (y2 + x3 sin 2 + y3 cos 2 ) sin 1
0 y3 sin 2 ) sin 1 + (y2 + x3 sin 2 + y3 cos 2 ) cos 1
0
1 + (2 + 3 )
x2 + x3 cos 2 y3 sin 2
y2 + x3 sin 2 + y3 cos 2
2 + 3
= q1
(q2 q3)
(6)
IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 14, NO. 5, OCTOBER 1998
Let a transformation e
2 hT ; i be defined as
e
0
0
0
III. COMPARISONS BETWEEN TWO FORMULATIONS
:
(7)
2 hT ; i
q e = e q = q:
Lemma 3—Identity: For any q
Before we compare the two transformation theories, let us briefly
present the 2-D homogeneous transformation theory. The general
form of a 3-D homogeneous transformation [1] is
0x cos 0 y sin x sin 0 y cos 0
i.
:
(9)
Lemma 4—Inverse: For any q = (x; y; )T
; , q 01 is the
inverse element of q .
Proof: Clearly, q 01
; . In addition, as shown in (9a)
at the bottom of this page. Hence, q 01 is the inverse for each
q
; .
For example, the inverse of a transformation (8; 5; =6)T is
2 hT i
2 hT i
2 hT i
p
02:5 0 4 3
09:428
p
00:330 :
4 0 2:5 3
=
0 6
0 6
6
Proposition 1: The set, T , of transformations with the binary
operation (composition function), , is a group denoted by hT ; i.
Proof: The algebraic structure hT ; i satisfies the closure law
8
5
A. Homogeneous Two-Dimensional Transformations
(8)
Therefore, e = (0; 0; 0)T is the identity element in hT ;
For any q = (x; y; )T 2 hT ; i, q 01 is defined as
q 01 =
01
by Lemma 1, the associative law by Lemma 2, the identity by Lemma
3, and the existence of inverses by Lemma 4.
It is worth summarizing some useful consequences of the four laws
required in a group with the following well-known propositions [2],
[10].
Proposition 2: In any group
= hG; 3i, where q; r; s 2 G, we
have the following:
1) Left cancellation law: If q 3 r = q 3 s, then r = s.
2) Right cancellation law: If r 3 q = s 3 q , then r = s.
3) The identity element is unique.
4) The inverse of any element q is unique.
5) (q 3 r)01 = r01 3 q 01 .
6) (q 01 )01 = q .
q01 =
and
q 01
q =
0
0
x + ( x cos y + ( x cos R11
T = R21
H
0
R13
R23
R33
x
y
z
0
0
0
1
R12
R22
x
y
0
1
R12
R22
x
y
0
0
1
2
0 + R12 R21
0
R11 R11
0
0
= R21 R11 + R22 R21
0
R11
0
R21
0
(10)
=
cos sin 0
0 sin x
y :
cos 0
(11)
1
2<
2H
and
0 sin R11
R21
R12
R22
=
cos sin 0
R11
0
R21
0
R12
0
R22
=
cos 0
sin cos 0
0 sin 0 0
cos :
(13)
It is verified that
0 + R12 R0 = R21 R0 + R22 R0
R11 R11
21
12
22
0(R11 R0
12
and
0
+ R12 R
22
0
= cos( + )
0
) = R21 R
0
11 + R22 R21
0
= sin( + )
x + x0 R11 + y 0 R12 = x + x0 cos y + x0 R21 + y 0 R22 = y + x0
0 y0 sin 0
sin + y
cos :
(14)
(15)
(16)
(17)
Therefore, H is closed under its composition operation. The inverse
transformation of a homogeneous transformation T is also obtained as
0 y sin ) cos 0 (x sin 0 y cos ) sin 0 y sin ) sin + (x sin 0 y cos ) cos 0
R11
R21
0
R12
R22
R32
Let
be the set of transformations of in this form, T , for some
.
x; y; Notice that and + 2n represents the same homogeneous
transformation T for any integer n, because each Rij is given by
sin or cos .
is obtained
The composition of two transformations T; T 0
through the standard matrix multiplication [11] as shown in (12) at
the bottom of this page. If, for some and 0 ,
0x cos 0 y sin + x cos(0) 0 y sin(0)
x sin 0 y cos + x sin(0) + y cos(0)
0 + T 2 T0 =
R11
R21
R31
where the left-top 3 2 3 submatrix represents rotation and the righttop 3 2 1 submatrix a translation. Then its 2-D version becomes
G
q
829
0
R12
0
R22
0
0
0
0
0
0
0
(9a)
x0
y0
1
0 + R12 R22
0
R11 R12
0
0
R21 R12 + R22 R22
0
=
=
x + x0 R11 + y 0 R12
y + x0 R21 + y 0 R22
1
(12)
830
IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 14, NO. 5, OCTOBER 1998
the inverse matrix. Note that the determinant D of the homogeneous
matrix is always 1
T 01 =
=
R11
R21
R12
R22
x
y
0
0
1
R11
R12
R21
R22
0
0
01
0xR22 + yR12
xR21 0 yR11
:
(18)
1
Thus, H is also closed under the inverse operation.
Let f : T ! H be a function that maps each heterogeneous
transformation q = (x; y; )T into a homogeneous transformation T
f (q ) =
cos sin 0
0 sin cos 0
x
y
1
=T
2 H:
(19)
Fig. 2. Counterclockwise and clockwise rotations.
Notice that
f (x; y; ) = f (x; y; + 2n )
(20)
for any integer n, and hence, there is not a one-to-one correspondence
between T and H. Furthermore,
Proposition 3: For any heterogeneous transformations, q; q0 2 H,
1) f (q ) 2 f (q 0 ) = f (q q 0 ).
2) f (q 01 ) = (f (q ))01 .
3) hH; 2i is a group.
4) hH; 2i is homomorphic to hT ; i, but is not isomorphic to it.
This Proposition reveals that the homogeneous group is a subgroup
of the heterogeneous group.
Example 1: Fig. 2 depicts two continuous motions of a vehicle
(among other possible ones) from an initial positioning to a destination. The distance between the two points is a unit distance and
the two orientations are opposite. Considering only the first and last
positionings, we represent the two motions by two heterogeneous
transformations. One motion is represented as qa = (01; 0; )T ,
because its net rotation is . The other one is represented by
qb = (01; 0; 0 )T , because its net rotation is 0 . Thus, these
two distinct transformations are well represented by two distinct
heterogeneous transformations.
On the other hand, both heterogeneous transformations are mapped
into the same homogeneous transformation
We observe several advantages of the heterogeneous transformation
group hT ; 2i over the homogeneous transformation group hH; 2i,
which are based on two facts:
1) the matrix size difference;
2) the use of raw rotation angle versus its trigonometric values.
1) Minimum Sizeness and Redundancy: To implement these theories, a heterogeneous transformation in T is represented by a
3 2 1 matrix, while a homogeneous transformation theory needs
a 3 2 3 matrix. Although the homogeneous transformation uses a
larger matrix, it does not perform any additional functionality above
the heterogeneous theory. Thus, the larger matrix is actually contains
less information and causes adversary effects.
Obviously the heterogeneous matrix needs less memory space. The
computation time for composition or inverse in the heterogeneous
formulation is much less than that in the homogeneous theory.
The redundant representation of rotation by a 2 2 2 matrix in the
homogeneous transformation causes another problem. After a composition operation, the rotational matrix [Rij ] i; j = 1; 2 is computed as
polynomial functions of the two argument matrix components (12),
where these R-elements must satisfy the trigonometric constraints,
2
2
R11
+ R12 = 1. However, because of the floating point arithmetic
errors, this condition may not always hold. This inconsistency never
occurs in the heterogeneous theory.
2) Rotation Angles: There may be a question on the use of the
raw rotation angle (in the heterogeneous theory) rather than its
trigonometric values, sin and cos (in the homogeneous theory).
Our basic viewpoint is that the raw angle has more information than
its trigonometric values (rotation of 2 or 4 is explicitly indicated).
The following examples illustrate this concept.
01
f (qa ) = f (qb ) =
B. Comparisons
0
0
01
0
01
:
0
1
0
Therefore, differentiating a counterclockwise rotation from a clockwise rotation for a rigid body is impossible in the homogeneous
formulation.
When we navigate a vehicle, whether the vehicle should turn left
(counterclockwise) or right (clockwise) is the essential information.
The ambiguity inherent in the homogeneous transformation is not
appropriate in real navigation applications.
Example 2: Consider a heterogeneous transformation qc =
T
(x; y; ) , which includes a rotation of . If we apply this
transformation two times, we obtain
x
x
0
qc 2 = qc qc = y y =
(21)
0
2
which is a pure rotation of 2 . Independent of x and y , it returns to
the original point (0, 0) with the net rotation of 2 (this fact itself is
interesting). This result seems quite reasonable.
The same transformation qc is translated into a homogeneous
transformation
cos 0 sin x
01 0 x
Mc = f (qc ) = sin cos y =
0 01 y :
0
0
1
0
0
1
0
1
0
0
0
1
When we apply this transformation twice
Mc 2 =
01
0
0
0
01
0
x
y
1
2
01
0
0
0
01
0
x
y
1
=
1
0
0
:
Therefore, the final result is an identity transformation without any
rotational information. We interpret this result as a loss of important
IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 14, NO. 5, OCTOBER 1998
831
Fig. 3. Positioning of rigid bodies as transformation.
information. We have recognized the capability of the heterogeneous
theory as more informative and “natural.”
Example 3: As discussed in the next section, the dead reckoning
capability of a vehicle can be perfectly implemented by the heterogeneous transformation group theory. The vehicle’s incremental
motion is composed of the current transformations to obtain the next
transformation (positioning). Therefore, by accumulating incremental
angular changes, its value is not limited in the range of [0; 2]
or [0; ]. Actually the value keeps the history of rotations from
the beginning of the world. This is implemented in the Yamabico
robot control and we have seen this practice to be informative and
useful. Angles = 02; 0; 2; 4; 1 1 1 are considered distinct. This
is related to the fact that the third component of the composite
transformation in (3) is 1 + 2 and can be algebraically indefinitely
large or small.
If we use the homogeneous transformations for the dead reckoning
task, the rotation angle information is partially lost. In some applications, it does not matter. There are situations, however, where that
loss is not allowable.
This heterogeneous transformation theory is a powerful tool to
analyze rigid body motions in robotics. This section focuses on only
the results related to the concept of “relative transformations.” This
is just one small portion of many useful applications of this theory.
A. Relative Transformations
When there is a robot vehicle in the global plane, we define a
vehicle transformation
(22)
where a local Cartesian coordinate system is fixed on the vehicle,
and the origin’s position (xV ; yV ) and the direction V of its
X -axis determines the transformation given in (22) (Fig. 3). This
transformation completely represents the three degrees of freedom
that a rigid body possesses in a plane [5]. Suppose there exists another
object or another vehicle in the plane. Each rigid body object has its
own transformation
q0 = (x0 ; y0 ; 0 )T
of the object with respect to the vehicle coordinate system. Note that
there exists a relation
qV
q3 = q0
(25)
between qV , q0 , and q 3 . The exact values of the components of the
relative transformation q 3 are obtained as follows:
Proposition 4: If the transformation of a vehicle and an object
are qV = (xV ; yV ; V )T and q0 = (x0 ; y0 ; 0 )T , respectively, the
relative transformation q 3 of the object with respect to the vehicle is
3
q =
=
x3
y3
3
(x0 0 xV ) cos V + (y0 0 yV ) sin V
0(x0 0 xV ) sin V + (y0 0 yV ) cos V
0 0 V
:
(26)
Proof: Since
IV. RIGID BODY MOTION ANALYSIS
qV = (xV ; yV ; V )T
in the global coordinate system. We compute the relative transformation
(24)
q 3 = (x3 ; y 3 ; 3 )T
(23)
qV
by applying qV 01 , we have
q3 = q0
q 3 = qV01 q0
01 x
xV
0
= yV
y0
V
0
xV cos V
yV sin V
=
xV sin V
yV cos V
V
(x0
xV ) cos V + (y0
=
(x0
xV ) sin V + (y0
0 V
0
0
0
0
0
0
0
0
x0
y0
0
0 yV ) sin V
0 yV ) cos V
:
(27)
This result is useful in numerous situations, especially when
the vehicle is moving. The relative transformation q 3 provides the
positional relations between the vehicle and the object. If x3 > 0,
the object is in front of the vehicle and if x3 < 0, the object is in
the rear of the vehicle. Similarly, if y 3 > 0, the object is on the left
832
IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 14, NO. 5, OCTOBER 1998
Fig. 5. Circular transformation.
Fig. 4. Sequence of transformations.
0
side of the vehicle and if y 3 < , the object is on its right side. To
determine the timing when the vehicle “passes” the object, the method
of checking the sign of x3 is more informative than computing the
Euclidean distance between the vehicle and the object, and finding
its minimal point.
B. Motion Description
(
)
Let a transformation of a rigid body robot be q x; y; T . If
the body moves, the transformation q t is a function of time t. One
method to describe a rigid body’s motion over time is to specify a
sequence of transformations [8], [9], [12]. In Fig. 4, a sequence
()
(q0 ; q1 ; q2 ; q3 ; q4 ; q5 ; q6 ; q7 )
(28)
of eight transformations is shown. Instead of “absolute transformations,” we can use relative transformations. When the vehicle is at
qi , instead of the next transformation qi+1 , we can give a relative
transformation ri=1 that satisfies
qi ri+1 = qi+1 :
(29)
If qi and qi+1 are known, the equation
ri+1 = qi 01 qi+1
(30)
allows us to solve for the unknown ri+1 . From a vehicle pilot’s
viewpoint, specifying the next motion with a relative transformation
with respect to the current positioning is more useful than specifying
an equivalent global transformation.
C. Trajectory Generation
The “relative transformation” concept can be applied to generate
smooth trajectories or motions. The vehicle’s positioning is defined
by a transformation q
x; y; T . When the vehicle is moving, q
is a function of time
qt
x t ; y t ; t T:
(31)
=(
)
( ) = ( ( ) ( ) ( ))
If we know the incremental motion 1q (a relative transformation)
in the last sampling-time interval, we can compose its current
transformation q with 1q to obtain the next transformation q 0
q0 = q 1q:
(32)
Fig. 6. Cornu spiral (clothoid curve).
To implement the odometry (or dead-reckoning) capacity for autonomous vehicles, we must evaluate q at every sampling interval
T (the same principle applies for drawing a curve whose curvature
is known). The question is how to evaluate the incremental motion
(incremental transformation) q .
Assume that we can measure the traveling distance ` of the
vehicle’s reference point and the direction change of the vehicle
in T . (For instance, on a differential-drive vehicle, ` and are
obtained by the incremental traveling distances, l and r, of the
left and right wheels.) Since an incremental transformation q has
three degrees of freedom, precisely speaking, it is not possible to
determine q from only ` and . However, if we assume that the
curvature along this short curve segment is constant (and hence, the
curve is a circular arc), we can compute the exact value of q . The
method to evaluate q
q `; is shown below. In Fig. 5, the
1
1
1
1
1
1
1
1
1 =1 ( )
1
IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 14, NO. 5, OCTOBER 1998
833
Fig. 7. Cubic spiral.
circular arc is placed with its beginning at the origin, since we are
evaluating the relative incremental transformation q .
Assume that 6
as shown in Fig. 5. The radius r of the circular
arc is
1
=0
r= `:
Therefore
1q(`; ) =
x1
y1
(33)
2
(s) = A s0
2
4 0s
r sin (34)
=
On the other hand, if 0, the “circular arc” becomes a straight
line segment and combining these two cases
`
1( )
0
0
sin `
1 0 cos `
if
=0
(35)
if
6= 0:
Therefore, q `; is represented by (35). However, if we know empirically jj is small, the Taylor expansion unifies the two equations.
Note that
sin = 0 3 =3! + 5 =5! 0 1 1 1
and
2
=1 0 4
+ 0 111
3! 5!
1 0 cos = 1 0 (1 0 2 =2! + 4 =4! 0 6 =6! + 1 1 1)
2
4
1
= 2! 0 4! + 6! 0 1 1 1 :
1 0 3! + 5! 0 1 1 1
1 0 2 + 4 0 1 1 1
2! 4! 6!
2
4
:
V. CONCLUSION
We have proved that the set of a new 2-D “heterogeneous”
transformations forms a group. This group theory provides an elegant
algebraic structure that allow robot motion analysis to be more
transparent. Furthermore, it has been demonstrated that this new
formulation is superior to the conventional “homogeneous” transformation formulation, because of its small size, no redundancy, and
explicit angle representation.
This theory can be applied to analyze problems in several aspects
on robotics. Only a few example areas are given in this paper:
problems related to relative transformations and discrete generation
of trajectories. The authors have successfully applied these algorithms
in constructing the software system for the autonomous mobile robot
Yamabico-11 at the Naval Postgraduate School. Furthermore, only
the composition and inverse functions were needed to implement.
REFERENCES
(37)
`
`
where A is a nonzero constant. Therefore, the cornu spiral has one
inflection point and the cubic spiral has two inflection points. Both
curve classes are useful for motion planning for autonomous vehicles
[8], [14].
(36)
With these formulas, we can rewrite (35) as follows:
1q(`; ) =
1
(s) = As
= r(1 0 cos )
sin `
= 1 0 cos ` :
1q(`; ) =
Approximating a small curved motion by a circular arc was first
proposed by Wang [13]. However, the method shown here (defining
q and composing it to the vehicle transformation) is theoretically
more transparent and easier to implement.
The effectiveness of this curve generation method is demonstrated
with two example curves in Figs. 6 and 7. The first one is a cornu
spiral (clothoid) and the second a cubic spiral. Their curvatures are a
linear and a quadratic function of arc length s, respectively
(38)
[1] R. P. Paul, Robot Manipulators: Mathematics, Programming, and Control. Cambridge, MA: MIT Press, 1984.
[2] N. Bloch, Abstract Algebra with Applications. Englewood Cliffs, NJ:
Prentice-Hall, 1987.
[3] J. D. Foley and A. Van Dan, Fundamentals of Interactive Computer
Graphics. Reading, MA: Addison-Wesley, 1984.
[4] Y. Kanayama, D. L. MacPherson, and G. W. Krahn, “Two dimensional
transformations and its application to vehicle motion control and analysis,” in Proc. Int. Conf. Robot. Automat., Atlanta, GA, May 2–7, 1993,
pp. 13–18.
[5] T. Lozano-Perez, “Spatial planning: A configuration space approach,”
IEEE Trans. Comput., vol. C-32, pp. 108–119, Feb. 1983.
[6] K. W. Spring, “Euler parameters and the use of quaternion algebra in
the manipulation of finite rotations: A review,” Mech. Mach. Theory,
vol. 21, no. 5, pp. 365–373, 1986.
834
IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 14, NO. 5, OCTOBER 1998
[7] J. Funda, R. H. Taylor, and R. P. Paul, “On homogeneous transforms, quaternions, and computational efficiency,” IEEE Trans. Robot.
Automat., vol. 6, pp. 382–388, June 1990.
[8] Y. Kanayama and B. I. Hartman, “Smooth local path planning for
autonomous vehicles,” in Proc. IEEE Int. Conf. Robot. Automat., 1989,
pp. 1265–1270.
[9] Y. Kanayama and M. Onishi, “Locomotion functions in the mobile robot
language, MML,” in Proc. IEEE Int. Conf. Robot. Automat., 1991, pp.
1110–1115.
[10] I. N. Herstein, Topics in Algebra, 2nd ed. New York: Wiley, 1975.
[11] G. Strang, Linear Algebra and Its Applications, 3rd ed. New York:
HBJ College, 1986.
[12] Y. Kanayama, “Two dimensional wheeled vehicle kinematics,” in Proc.
Int. Conf. Robot. Automat., San Diego, CA, May 8–13, 1994, pp.
3079–3084.
[13] C. M. Wang, “Location estimation and uncertainty analysis for mobile
robots,” in Proc. Int. Conf. Robot. Automat., Philadelphia, PA, Apr.
24–29, 1988, pp. 1230–1235.
[14] Y. Kanayama and N. Miyake, “Trajectory generation for mobile robots,”
in Robotics Research. Cambridge, MA: MIT Press, 1986, vol. 3, pp.
333–340.
Quadratic Normal Forms of Redundant Robot
Kinematics with Application to
Singularity Avoidance
Krzysztof Tchoń
Abstract— We derive a rank condition under which the redundant
robot kinematics around a corank 1 singular configuration can be given
a quadratic normal form. This normal form is further exploited to introduce new sufficient conditions for local avoidability and unavoidability
of singular configurations.
Index Terms— Kinematics, redundant robotic manipulator, normal
form, singular configuration, singularity avoidance.
I. INTRODUCTION
The problem of characterizing the behavior of robotic manipulators
in a neighborhood of singular configurations affects significantly
both trajectory planning and control of robots. To cope with this
problem we have initiated in [1] a normal form approach rooted
in singularity theory. Benefits of the normal form approach lie in
providing simple mathematical models of kinematics around singular
configurations, called normal forms, that are locally equivalent to
the original kinematics. Until now the normal form approach has
delivered a fairly complete collection of mathematical models of
singularities of nonredundant kinematics [2], [3], [4] and proved to be
capable of providing a new solution to the singular inverse kinematic
problem [5] as well as to the problem of singularity avoidance in
robot kinematics that have the redundancy degree 1 [6].
Manuscript received January 27, 1997; revised May 29, 1998. This research
has been done in part within a research project “Singular and nonholonomic
robots: mathematical models, control algorithms and trajectory planning,”
supported by the Polish State Committee of Scientific Research. This paper
was recommended for publication by Associate Editor Y. F. Zheng and Editor
A. Goldenberg upon evaluation of the reviewers’ comments.
The author is with the Institute of Engineering Cybernetics, Wroc law
University of Technology, Wroc law 50-372, Poland (e-mail: [email protected].
wroc.pl).
Publisher Item Identifier S 1042-296X(98)07433-3.
In this article, we shall derive a rank condition under which the
redundant robot kinematics around a corank 1 singular configuration
can be transformed to a quadratic normal form, generalizing the
condition established in [2] for the nonredundant case. Furthermore,
as a peculiar by-product of the normal form approach we shall present
new sufficient conditions for avoidability and unavoidability that
extend results obtained in [6] to the kinematics with arbitrary degree
of redundancy.
The idea of using normal forms of kinematics to solve the
singularity avoidance problem comes from [6] and seems to be
more powerful than the dynamical system approach developed in
[6], [7], and [8]. Recently, sufficient local avoidability conditions,
conceptually close to ours, have been obtained in [9].
There are two key concepts underlying this article: a normal form
and a local singularity avoidance, that will be defined below. Let
y = k(x) denote a coordinate representation of the kinematics of
a robotic manipulator. We expose the kinematics to jointspace and
taskspace coordinate changes x ! '(x); y ! (y ) transforming
the kinematics to the form
k0 (x) = k '01 (x):
The simplest map k0 (x) that can be produced in this way is called the
normal form of k, while the relation between k and any k0 defined
above is referred to as RL-equivalence [10].
The local singularity avoidance will be comprehended in the
following way. A singular configuration x is defined as locally
avoidable if there exists in a neighborhood of x a nonsingular
configuration x0 such that x0 2 k01 k(x). Similarly, x will be called
locally unavoidable, if in a certain neighborhood of x there are no
nonsingular configurations x0 verifying x0 2 k01 k(x). The concepts
of local avoidability/unavoidability are applicable if one needs to
avoid a singular configuration by a small modification of the robot’s
trajectory. Clearly, a singular configuration that cannot be avoided
locally may still appear to be globally avoidable. In this article, the
avoidability/unavoidability will always be meant as local.
This article is composed as follows. Section II presents main
results concerned with the quadratic normal form and the singularity
avoidance. These results are exemplified in Section III. Section IV
concludes the article.
II. MAIN RESULTS
Let k : Rn ! Rm ; y = k(x) = (k1 (x); k2 (x); 1 1 1 ; km (x)) repre-
sent the kinematics of an unlimited robotic manipulator with respect
to certain coordinate systems in the joint and in the task manifolds.
The map k is analytic. A vector x = (x1 ; x2 ; 1 1 1 ; xn ) 2 Rn denotes
positions of the joints, called manipulator’s configurations. A vector
y = (y1 ; y2 ; 1 1 1 ; ym ) 2 Rm stands for the position and orientation of
the end-effector. We shall always assume that n m. The difference
n 0 m will be referred to as the redundancy degree of the kinematics.
Let us recall that a configuration x 2 Rn is called regular if the
Jacobian matrix of the kinematics
has maximum rank at
x,
J (x) = @k (x)
@x
(1)
i.e.,
rank
J (x) = m
(2)
otherwise the configuration x is singular. Singular configurations can
be distinguished by their coranks defined as
1042–296X/98$10.00  1998 IEEE
x
corank( ) =
l , rank J (x) = m 0 l:
(3)