Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

mls94-complete[1]

.pdf
Скачиваний:
42
Добавлен:
10.06.2015
Размер:
2.8 Mб
Скачать

Appendix A

Lie Groups and Robot

Kinematics

Readers familiar with di erential geometry will have observed that most of the analytic tools we use in this text are derived from Lie group theory and Riemannian geometry. In this appendix, we give a brief introduction to the basics of Lie group theory and its connections with rigid body kinematics.

1Di erentiable Manifolds

We begin with a brief review of di erential geometry, based on the treatment given by Boothby [9]. The material here is intended primarily to fix the notation used in the subsequent sections.

1.1Manifolds and maps

Let U Rn and V Rm be open sets. A mapping f : U V is a smooth map if all partial derivatives of f , of any order, exist and are continuous. If m = n and f is bijective and both f and f 1 are smooth, then f is called a di eomorphism and U and V are said to be di eomorphic.

A manifold of dimension n is a set M which is locally homeomorphic to Rn. We parameterize the manifold by using a set of local coordinate charts. A local coordinate chart is a pair (φ, U ), where φ is a function which maps points in the set U M to an open subset of Rn. Two overlapping charts (φ, U ) and (ψ, V ) are Crelated if ψ1 φ is a diffeomorphism where it is defined. A collection of such charts with the additional property that the U ’s cover M is called a smooth atlas. A manifold M is a smooth manifold if it admits a smooth atlas.

403

The properties of mappings between manifolds are defined in terms of local coordinate charts. Let F : M N be a mapping between two smooth manifolds and let (U, φ) and (V, ψ) be coordinate charts for

 

 

 

 

 

 

 

˜

M and N , respectively. The mapping F : M N is smooth if F =

ψ

F

φ1

: φ(U )

˜

 

 

 

ψ(V ) is smooth for all choices of coordinate charts

on M and N . Similarly, F is a di eomorphism if F is a di eomorphism for all coordinate charts.

1.2Tangent spaces and tangent maps

Let M be a smooth manifold of dimension n and let p be a point in M . We write C(p) for the set of smooth, real-valued functions on M whose domain of definition includes some open neighborhood of p. A map Xp : C(p) R is called a derivation if, for all α, β R and f, g C(p), it satisfies

(i)

Xp(αf + βg) = α(Xpf ) + β(Xpg)

(linearity)

(ii)

Xp(f g) = (Xpf )g(p) + f (p)(Xpg)

(Leibniz rule)

The set of all derivations Xp : C(p) R defines a vector space over the reals with the operations

(Xp + Yp)f = Xpf + Ypf (αXp)f = α(Xpf ).

The tangent space of M at a point p, denoted TpM , is the set of all derivations Xp : C(p) R. Elements of the tangent space are called tangent vectors. Let (U, φ) be a coordinate chart on M with local coordinates (x1, . . . , xn). Then, the set of derivations {∂xi } forms a basis for TpM and hence we can write

Xp = X1

+ · · · + Xn

 

 

.

∂x1

∂xn

The vector (X1, . . . , Xn) Rn is a local coordinate representation of

Xp TpM .

Let F : M N be a smooth map. We define the tangent map of F at p as the linear map F p : TpM TF (p)N defined by

F pXp(f ) = Xp(f F ),

where Xp TpM and f C(F (p)). We also make use of the notation TpF to denote the tangent map of F at p. The tangent map satisfies the following properties:

1.If H = F G is the composition of two smooth maps F and G, then

H p = F G(p) G p or TpH = TG(p)F TpG.

404

2. If F : M N is a di eomorphism, then F p : TpM TF (p)N is an isomorphism of tangent spaces with inverse (F p)1 = (F 1) F (p).

If c : R M is a curve in M such that c(0) = p and c˙(0) := c t( ∂t)|t=0 = Xp, then TpF (Xp) = dtd F (c(t))|t=0.

Let M be a manifold of dimension n. The tangent bundle of M, denoted T M , is a manifold of dimension 2n defined by

[

T M = TpM.

p M

An element of T M will be written as (p, Xp) or simply Xp, where p M and Xp TpM . There is a natural projection π : T M M given by π(Xp) = p.

1.3Cotangent spaces and cotangent maps

Given the tangent space TpM to a manifold M at a point p, we define the cotangent space of M at p, denoted Tp M , as the set of all linear functions ωp : TpM R. Tp M is a vector space having the same dimension as TpM and elements of Tp M are called cotangent vectors. We write hωp, Xpi for the action of a cotangent vector ωp Tp M on a tangent

vector Xp TpM . If {

 

, . . . ,

} is a basis for TpM corresponding

∂x

1

∂xn

to local coordinates (x1, . . . , xn), the

dual basis for Tp M is given by

{dx1, . . . , dxn}, where

 

 

 

 

 

 

hdxi,

 

 

 

i = δij ,

i, j = 1, . . . , n.

 

∂xj

Given a function f : M R, we define a cotangent vector df (p)

Tp M by

hdf (p), Xpi = Xp(f ), Xp TpM.

df (p) is called the di erential of f . Relative to a chart (φ, U ) with local coordinates x = (x1, . . . , xn), df (p) is written as

df (x) =

∂f

(x)dx1

+ · · · +

∂f

(x)dxn,

 

 

∂x1

∂xn

where x = φ(p).

Let F : M N be a smooth map. The cotangent map of F is the linear map Fp : TF (p)N Tp M defined by

hFp αF (p), Xpi = hαF (p), F pXpi, αF (p) TF (p)N, Xp TpM.

We also make use of the notation Tp F to denote the cotangent map of F at p.

405

Let M be a manifold of dimension n. The cotangent bundle of a manifold M , denoted T M is a manifold of dimension 2n defined as

[

T M = Tp M.

p M

An element of T M will be written as (p, αp) or simply αp Tp M .

1.4Vector fields

A smooth vector field X on a manifold M is defined as a smooth map X : M T M satisfying π X = id, where π : T M M is the canonical projection and id : M M is the identity map on M . We let X(M ) denote the set of all smooth vector fields on M . Relative to a coordinate chart (φ, U ), a vector field is written as

X(x) = X1(x)

+ · · · + Xn(x)

,

 

 

∂x1

∂xn

where each Xi is a smooth function defined on an open neighborhood of x = φ(p). It is customary to write a vector field as a column vector

X1(x)

.

X(x) = . .

.

Xn(x)

Vector fields represent di erential equations on manifolds. Let c : (a, b) M be a curve on the manifold. The curve c is said to be an integral curve of the vector field X if

c˙(t) = X(c(t)).

By the existence and uniqueness theorem for ordinary di erential equations, the existence of integral curves for a given nonzero vector field is guaranteed locally. The vector field is said to be complete if the domain of definition of the integral curves can be chosen to be (−∞, ). In this case, the integral curves of a vector field define a one-parameter family of di eomorphisms Φt(q) : M M with the understanding that Φt(q) is the point on the integral curve starting from initial condition q at t = 0. This one parameter family of di eomorphisms is referred to as the flow of the vector field X.

Let X be a smooth vector field and f C(M ) a smooth function on M . The Lie derivative of f with respect to X is a new function Xf : M R defined by

Xf (p) = Xpf.

406

 

 

 

 

 

n

 

In coordinate chart (φ, U ), if we

write X =

Pi=1 Xi(x)

, then

 

 

n

 

 

∂xi

 

 

X

 

 

 

 

Xf (x) =

 

∂f

Xi(x),

 

 

i=1

∂xi

 

 

 

 

 

 

 

 

 

where all partial derivatives are evaluated at x = φ(p).

Let X and Y be two smooth vector fields. The Lie bracket of X and Y , denoted [X, Y ], is a new vector field defined by

[X, Y ]f = X(Y f ) Y (Xf ).

It is

not di cult to show

that [X, Y ]

satisfies all

the properties

of a

 

 

 

 

 

 

 

 

 

 

 

 

n

 

derivation.

In local coordinates, if we write X =

 

i=1 Xi(q)

and

 

∂xi

Y =

n

 

 

 

 

 

 

 

 

[X, Y ] is given by

i=1 Yi(q) ∂xi , then the Lie bracket vector fieldP

 

 

 

 

 

P

 

 

n

n ∂Yj

∂Xj

Yi!

 

 

 

 

 

 

 

 

X

X

 

 

 

 

 

 

 

 

 

[X, Y ] = j=1 i=1

∂xi

Xi

∂xi

∂xj

.

 

Let F : M N be a smooth mapping between manifolds and X X(M ), Y X(N ) smooth vector fields. We say that X and Y are F - related if they satisfy

YF (p) = F pXp.

If F is a di eomorphism, then given a vector field X X(M ) we can define a new vector field Y X(N ) via the push forward map F : T M T N defined by

(F X)q = F F 1(q)XF 1(q).

Similarly, if F : M N is a di eomorphism and Y is a vector field on N , we can define a new vector field on M as

(F Y )p = (F p)1YF (p).

The mapping F : T N T M is called the pull back map for F . The pull back is related to the push forward by the formula F = (F 1) .

Proposition A.1. Let X and Y be smooth vector fields on M and F : M N be a smooth map. Then

F [X, Y ] = [F X, F Y ].

A vector space V (over R) is a Lie algebra if there exists a bilinear operator V × V V , denoted [·, ·], satisfying

1. Skew-symmetry: [v, w] = [w, v] for all v, w V

407

2. Jacobi identity:

[[v, w], z] + [[z, v], w] + [[w, z], v] = 0 for all v, w, z V

A subspace W V is called a Lie subalgebra if [v, w] W for all v, w W . The vector space of all smooth vector fields on a manifold M is an infinite-dimensional Lie algebra under the Lie bracket operation on vector fields.

1.5Di erential forms

A smooth di erential one-form, on a manifold M is a smooth map α : M T M satisfying π α = id where π : T M M is the canonical projection and id : M M is the identity map. In local coordinates, a di erential form is written as

α(x) = α1(x)dx1 + · · · + αn(x)dxn

where each αi is a smooth function on M .

Let F : M N be a smooth mapping between manifolds and β :

N T N a smooth di erential one-form on N . We can define a new one-form α : M T M by

hαp, Xpi = hβF (p), F pXpi.

We call α the pull back of β by F and write α = F β. Note that the pull back of a one-form is defined for any smooth mapping F : M N , not just di eomorphisms.

2Lie Groups

This section collects some basic concepts of Lie groups which prove to be useful in robot kinematics and control. A more detailed treatment of these subjects can be found in Spivak [108]. Explicit formulas for SO(3) and SE(3) are given by Park and Murray [88].

2.1Definition and examples

A Lie group is a group G which is also a smooth manifold and for which the group operations (g, h) 7→gh and g 7→g1 are smooth. A Lie group is abelian if gh = hg for all g, h G. We will use the symbol e to denote the identity element of the group.

For every g G, we define left translation by g as the map Lg : G G given by Lg (h) = gh for h G. Similarly, right translation by g is defined

408

as the map Rg : G G satisfying Rg (h) = hg. Since Lg Lh = Lgh and Rg Rh = Rgh, we have that (Lg )1 = Lg1 and (Rg )1 = Rg1 . Thus,

both Lg and Rg are di eomorphisms of G for each g. Moreover, left and right translation commute: Lg Rh = Rh Lg . If the group is abelian then Lg = Rg .

Example A.1. The Euclidean space under addition

The Euclidean space Rn with group operation (x, y) 7→x+y is an abelian Lie group. The inverse of x Rn is denoted x, and the identity element is the zero vector. Since x + y = y + x, such a Lie group is abelian.

Example A.2. The general linear group, GL(n, R)

The group of all n×n nonsingular real matrices is called the general linear group and denoted GL(n, R). As a manifold, GL(n, R) can be regarded as an open subset of Rn2 . For A, B GL(n, R), the group operation is matrix multiplication

(A, B) 7→A · B

and inversion is given by the matrix inverse. Both operations are smooth since the formulas for the product and inverse of matrices are smooth in the matrix components. The identity element is the n×n identity matrix. Left and right translation are defined as left and right multiplication, respectively.

Example A.3. The special orthogonal group, SO(n)

The special orthogonal group is a subgroup of the general linear group, defined as

SO(n) = {R GL(n, R) : RRT = I, det R = +1}.

The dimension of SO(n) as a manifold is n(n 1)/2. For n = 3, the group SO(3) is also referred to as the rotation group on R3.

Example A.4. The special Euclidean group, SE(3)

The group of rigid transformations on R3 is defined as the set of mappings g : R3 R3 of the form g(x) = Rx + p, where R SO(3) and p R3. An element of SE(3) is written as (p, R) SE(3). SE(3) can be identified with the space of 4 × 4 matrices of the form

R p

g = 0 1 ,

where R SO(3) and p R3. SE(3) is a Lie group of dimension 6.

2.2The Lie algebra associated with a Lie group

Let X be a vector field on G. X is left invariant if (Lg ) X = X, that is

ThLg X(h) = X(gh) for all h G.

409

Let XL(G) be the set of left invariant vector fields on G. Then, for X, Y XL(G) we have

Lg [X, Y ] = [Lg X, Lg Y ] = [X, Y ].

Thus, XL(G) is a Lie subalgebra of the Lie algebra X(G), the set of all vector fields on G.

For each ξ TeG, we define a vector field Xξ on G by

Xξ (g) = TeLg ξ.

Since

Xξ (gh) = TeLgh · ξ = Te(Lg Lh) · ξ

= ThLg (TeLh · ξ) = ThLg (Xξ (h)),

Xξ is left invariant. The linear maps ρ1 : XL(G) TeG given by

ρ1(X) = X(e)

and ρ2 : TeG XL(G) given by

ρ2(ξ) = Xξ

satisfy ρ1 ρ2 = idTe G and ρ2 ρ1 = idXL (G). Hence XL(G) and TeG are isomorphic as vector spaces. Defining a Lie bracket in TeG by

1, ξ2] = [Xξ1 , Xξ2 ](e), ξ1, ξ2 TeG

(A.1)

makes TeG into a Lie algebra. The vector space TeG with this Lie algebraic structure is called the Lie algebra of G and is denoted g.

A Lie subalgebra of g is a subspace h g such that ξ, η h implies that [ξ, η] h. It can be shown that if H is a Lie subgroup of G with Lie algebra h, then h is a Lie subalgebra of g.

Example A.5. The Lie algebra of (Rn, +)

For the group Rn we have e = 0, T

0

Rn

 

Rn, and it is easy to see that

 

=

defined by v

 

T

 

Rn is the constant vector

the left invariant vector field n

 

 

 

 

 

0

 

n

 

n

field: Xv (x) = v for all x R

. Therefore, the Lie algebra ofn R

 

is R

 

itself, with the trivial Lie bracket [v1, v2] = 0 for all v1, v2 R .

 

 

 

Example A.6. The Lie algebra of GL(n, R)

The Lie algebra of GL(n, R) is the set of all n × n real matrices, denoted gl(n, R), with the bracket structure

[A, B] = AB BA A, B gl(n, R).

To derive this, note that GL(n, R) is an open subset of Rn×n and hence

e

 

Rn×n. A vector field on GL(n, R) can be written as

T

GL(n, R) =

 

 

X(x) =

X

 

 

 

Xij (x)

∂xij

 

 

 

i,j

 

 

410

where each xij represents a coordinate in Rn×n. One can now proceed to define left-invariant vector fields on Rn×n (relative to left matrix multiplication) and compute the Lie bracket from equation (A.1). See [108, pp. 509–511] for the details of this calculation.

Example A.7. The Lie algebra of SO(3)

The Lie algebra of SO(3), denoted so(3), may be identified with the 3 ×3 skew-symmetric matrices of the form

 

0

ω

 

ω2

 

 

ω =

ω3

0

3

ω1

(A.2)

b

ω2

ω1

 

0

 

 

with the bracket structure

 

 

 

ωb1, ωb2 so(3).

 

b1, ωb2] = ωb1ωb2 ωb2ωb1,

 

 

We can identify so(3) with R3 using the mapping in equation (A.2), which maps a vector ω R3 to a matrix ωb so(3). It is straight forward to show that

, ω

] = (ω

1 ×

ω

) ,

ω

, ω

2

R3.

b1

b2

 

2

 

1

 

 

Thus ω 7→ωb is a Lie algebra isomorphism between the Lie algebra (R3, ×) and the Lie algebra (so(3), [·, ·]).

Example A.8. The Lie algebra of SE(3)

The Lie algebra of SE(3), denoted se(3), can be identified with 4 × 4 matrices of the form

 

 

 

 

ξ =

ω

 

v

 

ω, v

 

R3

 

 

 

 

 

 

 

 

 

b

b

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

b

b b

b b

 

 

 

 

 

 

 

 

 

 

ω

b1

 

2

 

2

 

 

 

with the bracket structure [ξ1, ξ2] = ξ

1ξ2 −

ξ2

ξ1. Let

.

 

 

 

 

ξ1 =

01

0

 

and

ξ2 =

 

0

0

 

 

 

 

b

 

b

v

 

 

 

b

 

 

 

ω

 

v

 

 

 

 

Then

 

 

 

 

 

 

 

 

 

b

 

 

 

 

 

 

 

 

 

 

 

 

×0

 

 

 

 

×

 

 

 

 

 

1

, ξ2

] = ξ1ξ2

 

 

 

 

ω1

 

 

0

 

 

ξ2ξ1 = 1

 

ω2)

 

 

v2 ω2

× v1 .

 

b

b

b b

 

b b

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

The vector space se(3) is isomorphic to R6

 

 

 

 

 

 

 

ξ

ξ =

(v, ω) R6.

 

 

 

 

 

 

 

 

 

via the mapping b 7→

411

2.3The exponential map

For every ξ TeG, let φξ : R G denote the integral curve of the left invariant vector field Xξ passing through e at t = 0. That is, φξ (0) = e and dtd φξ (t) = Xξ ξ (t)). It follows from its definition that

φξ (s + t) = φξ (s)φξ (t),

which means that φξ (t) is a one-parameter subgroup of G. Indeed, as functions of t, both sides are equal at t = 0 and both satisfy the di erential equation σ˙ (t) = Xξ (σ(t)) by left invariance of Xξ , so they are equal by the uniqueness of integral curves. Using either left invariance or the fact that φξ (t + s) = φξ (t)φξ (s) shows that φξ (t) is defined for all t R.

The function exp : TeG G defined by exp(ξ) = φξ (1) is called the exponential map of the Lie algebra g into G. The exponential map takes the line ξs g, s R, into a one-parameter subgroup of G, i.e.,

exp(ξs) = φξ (s).

To verify this formula, note that for fixed s, the curve t 7→φξ (ts) which at t = 0 passes through e, satisfies the di erential equation

d

dt φξ (ts) = sXξ ξ (ts)) = X(t)).

Since φ(t) and φξ (ts) satisfy the same di erential equation and both pass through e at t = 0, it follows that φ(t) = φξ (ts). Putting t = 1 yields exp(ξs) = φξ (s). In fact, all connected one-parameter subgroups of G are obtained in this way.

Di erentiating the map exp(ξs) = φξ (s) with respect to s at s = 0 shows that Te exp = idTe G. Therefore, by the inverse function theorem, exp : g G is a local di eomorphism from a neighborhood of zero in g onto a neighborhood of e in G. If G is compact it can be shown that the exponential map is surjective.

Example A.9. The exponential map on (Rn, +)

Consider Rn with addition as the group operation. The Lie algebra of Rn is Rn with the trivial bracket and the integral curve of a left invariant vector field Xv (x) = v is given by φv (t) = vt. Thus, φv (t) x = x + vt and exp : Rn Rn is the identity.

Example A.10. The exponential map on GL(n, R)

Let G = GL(n, R) Rn×n so that g = gl(n, R) = Rn×n with [A, B] = AB BA. For every A gl(n, R), the mapping ΦA : R GL(n, R) given by

tnAn

X

 

ΦA(t) =

 

n=0

n!

 

412

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]