+ All Categories
Home > Documents > Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm...

Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm...

Date post: 16-Jul-2020
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
50
CHAPTER 9 Feedback Linearizing Control of Affine Nonlinear Systems In section 3 of chapter 1 we introduced an example in which a control technique known as feedback lineariza- tion was used to make the two-wheeled cart in Fig. 1 track a desired trajectory. It was shown that feedback linearization provided better control performance than controls based on a local linearization of the system in that tracking could be assured from initial conditions that were far from the desired trajectory. The result- ing control scheme, therefore, provided global assurances on performance that could not be achieved using local linearizations. The objective of this chapter is to present the justification for these feedback linearizing controllers and establish conditions under which we know these methodologies are guaranteed to work well. x y FIGURE 1. Two Wheeled Robot Feedback linearization is based on the idea that a nonlinear state feedback law can be viewed as a nonlinear variable transformation of the original system to an equivalent ”linear system”. This approach is applicable to affine nonlinear systems ˙ x = f (x)+ P m i=1 g i (x)u i y = h(x) (200) whose vector fields f,g 1 ,...,g m satisfy conditions that allow one to decompose the state space into ”slices” that contain system states that are reachable in finite time T from the initial state x 0 . These ”slices” can be seen as smooth ”distortions” of the reachable subspaces found in linear dynamical systems and so the ability is feedback linearize a system is closely related to that system’s local reachability. As is the case in linear systems, one can discuss an affine system’s observability as a concept that is dual to its reachability. This approach therefore provides a powerful way to synthesize controllers that assure output tracking and regulation. 265
Transcript
Page 1: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

CHAPTER 9

Feedback Linearizing Control of Affine Nonlinear Systems

In section 3 of chapter 1 we introduced an example in which a control technique known as feedback lineariza-tion was used to make the two-wheeled cart in Fig. 1 track a desired trajectory. It was shown that feedbacklinearization provided better control performance than controls based on a local linearization of the systemin that tracking could be assured from initial conditions that were far from the desired trajectory. The result-ing control scheme, therefore, provided global assurances on performance that could not be achieved usinglocal linearizations. The objective of this chapter is to present the justification for these feedback linearizingcontrollers and establish conditions under which we know these methodologies are guaranteed to work well.

x

y

FIGURE 1. Two Wheeled Robot

Feedback linearization is based on the idea that a nonlinear state feedback law can be viewed as a nonlinearvariable transformation of the original system to an equivalent ”linear system”. This approach is applicableto affine nonlinear systems

x = f(x) +Pm

i=1 gi(x)ui

y = h(x)(200)

whose vector fields f, g1, . . . , gm satisfy conditions that allow one to decompose the state space into ”slices”that contain system states that are reachable in finite time T from the initial state x0. These ”slices” canbe seen as smooth ”distortions” of the reachable subspaces found in linear dynamical systems and so theability is feedback linearize a system is closely related to that system’s local reachability. As is the case inlinear systems, one can discuss an affine system’s observability as a concept that is dual to its reachability.This approach therefore provides a powerful way to synthesize controllers that assure output tracking andregulation.

265

Page 2: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

266 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

Feedback linearizing controllers, essentially, use feedback laws that ”cancel” the nonlinear dynamics of theoriginal plant and replacing them with a ”linear dynamic”. This strategy, unfortunately, can be sensitive tomodeling error and disturbances. So it will also be important to discuss the robustness of these these methodsfor uncertain dynamical systems. Nonetheless, feedback linearization represents one of the most importantapproaches to the synthesis of nonlinear controllers and a clear understanding of its benefits and limitationsis crucial for anyone wishing to design nonlinear control systems.

The best known textbooks on feedback linearization [NVdS90, Isi95] usually start with a detailed treatmentof the mathematical tools from differential geometry used in justifying the method. My approach, however,will be more workmanly in the sense that I’ll start with examples showing how state and output feedbacklinearization methods are used and then turn to a more detailed discussion of the mathematical tools at theheart of this approach. I’ll start an example of input-state feedback linearization.

1. Input-to-State Feedback Linearization

We confine our attention to affine nonlinear systems of the form

x = f(x) + g(x)u(201)

and consider a change of the control variable, u, that transforms equation (201) into a ”linear dynamicalsystem”. If such a change of control variables can be found, then we say that system (201) is input-to-statefeedback linearizable or IS feedback linearizable.

We will consider the following change of control variable,

u = ↵(x) + �(x)v(202)

where ↵(x) and �(x) are smooth functions of the system state and v is the new control variable. Substitutingequation (202) into the original system equation (201) yields

x = [f(x) + g(x)↵(x)] + [g(x)�(x)] v(203)

So we need to select the functions ↵(x) and �(x) so that equation (203) is a linear function of x and v. Thissection describes how to select such functions, if they indeed exist. General conditions under which we knowthe system is IS feedback linearizable will be discussed in a later section.

An obvious choice for the control parameters, ↵(x) and �(x), are functions that satisfy

Ax = f(x) + g(x)↵(x)

Bv = g(x)�(x)v(204)

where A and B are suitably dimensioned constant matrices. Provided such ↵ and � can be found, then clearly

x = Ax + Bv

which is a linear time-invariant system and we can then design a stabilizing control with respect to the newcontrol variable v using well known methods from linear control theory.

Page 3: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

1. INPUT-TO-STATE FEEDBACK LINEARIZATION 267

Let us discuss how this differs from linearization methods based on Taylor series expansions of the vectorfield. Recall that these expansions are only valid in a small neighborhood around the system’s equilibriumpoint. This neighborhood, however, can be arbitrarily small and this is why using linear control on theTaylor series expansion will only work well in the immediate vicinity of the equilibrium point. This canbe problematic in tracking problems, where that equilibrium point is slowly changing over time. This iswhy the example in Fig. 8 and 9 in Chapter 1 showed a relatively small set of initial conditions for whichtracking could be assured in the two-wheeled cart system. By applying IS feedback linearization methods,however, we saw in Fig. 10 of Chapter 1 that we were able to expand the region of initial conditions fromwhich positive tracking could be assured to essentially the entire state space. In other words, the feedbacklinearization provided a more ”global” assurance on the tracking ability of the closed loop system.

As another example of IS-feedback linearization, let us consider the system

x1 = x2

x2 = �a(sin(x1 + �) � sin(�)) � bx2 + cu

where a,b, and c are positive constants, � is a reference input and u is the control signal. This may be seen asa mechanical model for an electrical generator.

0 20 40 60 80 100-1.5

-1

-0.5

0

0.5

1

1.5delta=0

0 20 40 60 80 100-1.5

-1

-0.5

0

0.5

1

1.5delta=0.4

0 20 40 60 80 100-100

0

100

200

300

400

500

600delta=0.8

FIGURE 2. Open loop system shows instability for large reference input �

Figure 2 shows how this system behaves if for parameters a = c = 1, b = .1 with no control u and a setpoint that is chosen from the set {0, .4, .8}. Simulation example show that as we increase the reference point�, there is a point at which the open-loop system looses stability. This instability occurs as a result of the sinenonlinearity in the second state equation.

So let us try to enlarge the stable operating region for this system by introducing a feedback linearizingcontrol. As discussed above we introduce a new control variable u = ↵(x) + �(x)v where we select

↵(x) =a

c(sin(x1 + �) � sin(�))

�(x) =1

c

Page 4: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

268 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

Inserting this back into the original system equations yields,

x1 = x2

x2 = �a(sin(x1 + �) � sin(�)) � bx2

+a(sin(x1 + �) � sin(�)) + v

= �bx2 + v

We can then stabilize this system by simply selecting

v = �k1x1 � k2x2

such that the linearized system is asymptotically stable. For this system, such a choice would simply need toensure k1 > 0. Figure ?? shows a simulation that verifies that this is indeed the case.

0 20 40 60 80 100-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1delta=0

0 20 40 60 80 100-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1delta=0.4

0 20 40 60 80 100-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1delta=0.8

FIGURE 3. Feedback stabilizing control ensures stability for large reference input �

When is such a transformation possible? Before trying to answer this in a more formal manner, let us try todevelop some intuition about the solvability of the equations (204). The first equation in (204) requires that

Ax = f(x) + g(x)↵(x)

It is easy to see that f(x) must have a form whose ”linear” part is modified by the nonlinear part. In otherwords, we are restricted to vector fields, f , that satisfy the form

f(x) = Ax � g(x)↵(x)

In particular, if we construct a Taylor series linearization of the system, this can be done, the question iswhether or not the remainder term can be factored as g(x)↵(x).

The second condition in equation (204) requires that

B = g(x)�(x)

This places a constraint on g in that it should be factored as

g(x) = B��1(x)

Essentially, this says that the ”structure” of g(x) must match the structure of the B matrix in our linearization.

Page 5: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

1. INPUT-TO-STATE FEEDBACK LINEARIZATION 269

The structural conditions given above, however, are not really necessary for the approach to work. In otherwords, even if our system has an f and g that do not satisfy these structural conditions, it may still be possibleto feedback linearize the system. As an example, let us consider

x1 = a sin x2

x2 = �x21 + u

In this case the control u enters through the lower system, but the upper system is the one that has thenonlinearity. It is, therefore, not immediately obvious how one might go about selecting u to cancel thenonlinearity in the upper equation.

But let us consider a change of state variables of the form,

z1 = x1

z2 = a sin x2

If we rewrite the state equations in terms of these new variables we have

z1 = z2

z2 = a cos x2(�x21 + u)

Let us follow are preceding rules for selecting ↵(x) and �(x). In this case, we let ↵(x) = x21 and �(x) =

1a cos x2

. This yields the control

u = x21 +

1

a cos x2v

which when inserted back to the original system yields,

z1 = z2

z2 = v

which is clearly a linear system.

We would then need to select the controls to stabilize this transformed system in terms of the new statevariables z. One obvious choice would be to let v = �z1 � z2, which would clearly stabilize the z-system.This control, however, is in terms of z and we need to transform back to the original system states x1 and x2.We cannot do this for any z since the state transformation is not globally invertible. But for any x1 and anyx2 2

��

⇡2 , ⇡

2

�this state transformation is invertible

x1 = z1

x2 = sin�1⇣z2

a

which means that the transformation z = T (x) is a diffeomorphism. From our earlier discussion we know thismeans the ”transformed” and ”original” system are topologically C1-conjugate. In other words, maintainingstability in the transformed system will also preserve the stability of the original system as long as we canensure |x2| does not exceed ⇡/2.

Page 6: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

270 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

Let us now try to formalize some of the ideas introduced in the preceding examples. So as before we confineour attention to affine nonlinear systems

x = f(x) + g(x)u

where f : D ! Rn and g : D ! Rn⇥p are sufficiently smooth over a compact domain D ⇢ Rn containingthe origin. We will say that this system is input-state linearizable if there exists a diffeomorphism T : D !

Rn such that T (D) also contains the origin and the change of variables z = T (x) transforms our system tothe form

z = Az + B��1(x) [u � ↵(x)]

with (A, B) controllable with ↵ : D ! Rm and � : D ! Rm⇥m being smooth and �(x) is a nonsingularmatrix for each x 2 D. Since T is a diffeomorphism we know that the functions ↵0(z) = ↵(T�1(z)) and�0(z) = �(T�1(z)) are also smooth and we can then rewrite the z state equations completely in terms of z

as

z = Az + B��10 (z) [u � ↵0(z)]

which has the structural form we identified earlier as being necessary for IS feedback linearizability. Thefeedback linearizing control would be, of course, u = ↵0(z) + �0(z)v = ↵(x) + �(x)v in terms of the newcontrol variable, v.

So let us suppose that we know the system is IS feedback linearizable, so that we know this diffeomorphismT from x to z exists. How do we find the transformation T ? If z = T (x) is a transformation such that

z = Az + B��1(x)[u � ↵(x)]

= AT (x) + B��1(x)[u � ↵(x)]

We can also see that z should satisfy

z =@T

@xx =

@T

@x[f(x) + g(x)u]

So equating the right hand side of both equations yields,

@T

@x[f(x) + g(x)u] = AT (x) + B��1(x)[u � ↵(x)]

which gives rise two two partial differential equations (equating terms in u and terms not in u)

@T@x f(x) = AT (x) � B��1(x)↵(x)@T@x g(x) = B��1(x)

(205)

Any diffeomorphism T that transforms the system into its feedback linearized form must satisfy the precedingtwo partial differential equations. Conversely, if we have a map T that satisfies these PDE’s, then clearly thechange of variable z = T (x) will yield the desired form also. So the existence of a T , ↵, �, and A and B

that satisfy the preceding PDEs provide a necessary and sufficient condition for the system to be input-statelinearizable. The question of determining when a system is IS feedback linearizable is reduced to a questionregarding the existence of smooth solutions to a particular pair of partial differential equations.

Page 7: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

1. INPUT-TO-STATE FEEDBACK LINEARIZATION 271

Note that if the map z = T (x) IS feedback linearizes our system, that the transformation T is not unique.The easiest way to see this is that if we apply the linear state transformation ⇣ = Mz with nonsingular M tothe equation

z = Ax + B��1(x)[u � ↵(x)]

we obtain

⇣ = MAM�1⇣ + MB��1(x)[u � ↵(x)]

which still has the desired structure for a linearized system, but with different A and B matrices. Thereforethe composition of a known nonlinear IS-feedback linearizing transformation z = T (x) with any linearmap M will give rise to another IS-feedback linearizing transformation and so these transformations are notunique.

The nonuniqueness of T can be exploited to simplify the PDEs we want to solve. We illustrate this idea forthe single-input case (i.e. u is a scalar). In this case for any controllable pair (A, B), we can find a nonsingularmatrix M that trasnforms (A, B) to its controllable canonical form. In other words,

MAM�1 = Ac + Bc�T

with MB = Bc and

Ac =

2

6666666664

0 1 0 · · · 0 0

0 0 1 · · · 0 0...

......

. . ....

...

0 0 0... 0 1

0 0 0... 0 0

3

7777777775

, Bc =

2

66666664

0

0...0

1

3

77777775

where � is an 1 ⇥ n vector of scalars characterizing the coefficients of A’s characteristic polynomial. Withthis transformation we can rewrite system equation as

⇣ = Ac⇣ + Bc�T ⇣ + Bc�

�1(x)(u � ↵(x))

= Ac⇣ + Bc�TMT (x) + Bc�

�1(x)(u � ↵(x))

= Ac⇣ + Bc��1(x)(u � ↵(x))

where

↵(x) = �(x)�TMT (x) � ↵(x)

which has the desired form with the exception that A and B now have a fixed form. So we can without a lossof generality simply assume that the A and B matrices in our PDEs are in the controller canonical matricesAc and Bc.

Page 8: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

272 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

Let us now write the nonlinear diffeomorphism satisfying the PDEs as

T (x) =

2

66666664

T1(x)

T2(x)...

Tn�1(x)

Tn(x)

3

77777775

where Ti : D ! R for i = 1, . . . , n. Because of the form of Ac and Bc, we can easily show that

AcT (x) � Bc��1(x)↵(x) =

2

66666664

T2(x)

T3(x)...

Tn(x)

�↵(x)/�(x)

3

77777775

, Bc��1(x) =

2

66666664

0

0...0

1/�(x)

3

77777775

where ↵ and � are scalar functions. Using these expressions in our PDEs, we see that the first set of PDEsreduces to

@T1

@xf(x) = T2(x)

@T2

@xf(x) = T3(x)

... =...

@Tn�1

@xf(x) = Tn(x)

@Tn

@xf(x) = �

↵(x)

�(x)

These first n � 1 equations show that components can be recursively computed starting by solving for Tn(x)

in the last equation. So this essentially reduces our problem to that of solving the last equation.

The second set of partial differential equations are simplified to

@T1

@xg(x) = 0

@T2

@xg(x) = 0

... =...

@Tn�1

@xg(x) = 0

@Tn

@xg(x) =

1

�(x)6= 0

Combining both PDEs,we get a somewhat simpler set of conditions that determine the Ti’s In particular weneed to search for T1(x) such that

@T1

@xg(x) = 0

Page 9: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

1. INPUT-TO-STATE FEEDBACK LINEARIZATION 273

Once such a function has been selected, then T2 is computed by selecting a function that satisfies,

T2(x) =@T1

@xf(x),

@T2

@xg(x) = 0

This gives T2 and we find T3 that satisfies

T3(x) =@T2

@xf(x),

@T3

@xg(x) = 0

We continue this recursively until we get to the last term Tn(x) which must satisfy

Tn(x) =@Tn�1

@xf(x),

@Tn

@xg(x) 6= 0

Provided we can find such a T1, then � and ↵ are simply given by

�(x) =1

@Tn@x g(x)

↵(x) = �

@Tn@x f(x)@Tn@x g(x)

We’ve therefore reduced the problem of solving the original system of n PDEs for T to a simpler set of PDEsthat are solved by solving a sequence of n PDEs.

Let us now show through a few examples how one goes about solving for T in this manner. In these examples,we will assume that the goal is to stabilize the system with respect to an open-loop equilibrium x⇤. In otherwords we require f(x⇤) = 0. This means that we also want to choose T so that the point x⇤ is mapped to theorigin, i.e. T (x⇤) = 0. be achieve by requiring that we solve

@T1

@xg(x) = 0

with the condition that T1(x⇤) = 0. If this is so then then @Ti = @Ti�1

@x f(x) will also vanish at x⇤ fori = 2, . . . , n since f(x⇤) = 0.

Example: Consider the system

x =

"a sin x2

�x21

#+

"0

1

#u = f(x) + g(x)u

with the equilibrium point x⇤ = 0. We want to find T1(x) that satisfies

@T1

@xg = 0

with T1(0) = 0. Expanding out this equation we get

@T1

@xg(x) =

h@T1@x1

@T1@x2

i " 0

1

#=

@T1

@x2= 0

This condition therefore says that T1 must be independent of x2.

If we select such a T1, then we know that

T2(x) =@T1

@xf(x) =

h@T1@x1

0i " a sin x2

�x21

#=

@T1

@x1a sin x2

Page 10: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

274 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

T2 must also satisfy the condition

@T2

@xg(x) =

h@T2@x1

@T2@x2

i " 0

1

#=

@T2

@x2

=@T1

@x1a cos x2 6= 0

This is satisfied for any x2 where cos x2 6= 0 by any choice of T1 = T1(x1) such that @T1@x1

6= 0 when x1 6= 0.So we take a simple choice, namely T1(x) = x1 which is the same transformation we used when we firstpresented this example. Note, however, that the choice for T1 is not unique. We could have also chosenx1 + x3

1 which would also give a change of variables that transforms the system into the desired linearizedform.

Example 2: Consider the system

x = f(x) + g(x)u

where

f(x) =

2

664

�ax1

�bx2 + ⇢ � cx1x3

✓x1x2

3

775 , g(x) =

2

664

1

0

0

3

775

where a, b, c, ✓, and ⇢ are positive constants. The open loop system has an equilibrium at x1 = 0 and

x2 = ⇢/b. We take the desired operating point as x⇤ =h

0 ⇢/b !0

iTwhere !0 is a desired set point for

x3. These equations model a field controlled DC motor with no shaft damping.

We want to find T1(x) that satisfies the conditions

@T1

@xg(x) = 0,

@T2

@xg(x) = 0,

@T3

@xg(x) 6= 0

with T1(x⇤) = 0 and

T2(x) =@T1

@xf(x), T3(x) =

@T2

@xf(x)

The first condition on T1 is

@T1

@xg(x) =

@T1

@x1= 0

which implies that T1 is independent of x1. Looking at the equation for T2 yields,

T2(x) =@T1

@x2[�bx2 + ⇢ � cx1x3] +

@T1

@x3✓x1x2

Form the condition that @T2@x g(x) = 0 we see that

cx3@T1

@x2= ✓x2

@T1

@x3

This may be satisfied for a T1 that takes the form

T1(x) = c1

⇥✓x2

2 + cx23

⇤+ c2

Page 11: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

1. INPUT-TO-STATE FEEDBACK LINEARIZATION 275

for some constant c1 and c2. Let us choose c1 = 1 and then to satisfy the equation T1(x⇤) = 0, we take

c2 = �✓(x⇤2)

2� c(x⇤

3)3 = �✓(⇢/b)2 � c!2

0

With this choice for T1, the equation for T2 simplifies to

T2(x) = 2✓x2(⇢ � bx2)

Consequently, T3 is given by

T3(x) =@T2

@xf(x) = 2✓(⇢ � 2bx2)(�bx2 + ⇢ � cx1x3)

The other condition on T3 is

@T3

@xg =

@T3

@x1= �2c✓(⇢ � 2bx2)x3

and the condition (@T3/@x) 6= 0 is satisfied whenever x2 6= ⇢/2b and x3 6= 0.

Assuming that x⇤3 > 0 we define a domain

D =�x 2 R3 : x2 > ⇢/2b and x3 > 0

which contains the point x⇤. It can then be verified that z = T (x) is a diffeomorphism on D.

Example 3: A synchronous generator connected to an infinite bus may be represented by the following affinesystem

x = f(x) + g(x)u

where

f(x) =

2

664

x2

�a[(1 + x3) sin(x1 + �) � sin �] � bx2

�cx3 + d[cos(x1 + �) � cos �]

3

775 , g(x) =

2

664

0

0

1

3

775

where a,b, c, d, and � are positive constants. The open loop system has an equilibrium at x = 0. We want tofind T1(x) that satisfies the conditions

@T1

@xg(x) = 0,

@T2

@xg(x) = 0,

@T3

@xg(x) 6= 0

with T1(0) = 0 and

T2(x) =@T1

@xf(x), T3(x) =

@T2

@xf(x)

From the first set of conditions we see that

@T1

@xg =

@T1

@x3= 0

So T1 must be chosen to be independent of x3. Using this constraint in the recursive equation for T2 yields,

T2(x) =@T1

@x1x2 �

@T1

@x2(a[(1 + x3) sin(x1 + �) � sin �] + bx2)

Page 12: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

276 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

and we know this T2 must also satisfy

@T2

@xg(x) =

@T2

@x3= �a sin(x1 + �)

@T1

@x2= 0

So we must also choose T1 to be independent of x2. This means our earlier equation for T2 simplifies to

T2(x) =@T1

@x1x2

We now turn to the third component, T3. T3 must satisfy

T3(x) =@T2

@xf(x)

=@T2

@x1x2

=@T1

@x1(a[(1 + x3) sin(x1 + �) � sin �] + bx2)

and we also know T3 must satisfy

@T3

@xg(x) =

@T3

@x3= �a sin(x1 + �)

@T1

@x16= 0

This is nonzero for the domain 0 < x1 + � < ⇡ with any choice of T1(x1) such that @T1@x1

6= 0. Thesimplest selection T1(x) = x1 accomplishes this and from the previous equations the diffeomorphisms othercomponents can be computed to be

z1 = T1(x) = x1

z2 = T2(x) = x2

z3 = T3(x) = �a[(1 + x3) sin(x1 + �) � sin �] � bx2

The inverse of T yields the original coordinates in terms of z

x1 = z1

x2 = z2

x3 = �1 �z3 + bz2 � a sin �

a sin(z1 + �)

and the IS feedback linearizing functions ↵ and beta are

�(x) =1

(@T3/@x)g=

1

(@T3/@x3)=

�1

a sin(x1 + �)

↵(x) = �(@T3/@x)f(x)

(@T3/@x)g(x)

= �a(1 + x3) cos(x1 + �)f1(x) � bf2(x) � a sin(x1 + �)f3(x)

a sin(x1 + �)

The state equations in the z-coordinates are

z1 = z2

z2 = z3

z3 = �a sin(x1 + �)[u � ↵(x)]

Page 13: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

2. MATHEMATICAL BACKGROUND: DISTRIBUTIONS 277

which is linearized through the control section

u = ↵(x) � �(x)v

= ↵(x) �1

a sin(x1 + �)v

2. Mathematical Background: distributions

The preceding section showed how one can find a feedback linearizing transformation through the solutionof a system of PDEs. This means that the existence of such controls depends on this system of equationshaving a smooth solution. We would now like to derive conditions under which we know we can find asolution to these PDEs. To state and prove this result, however, we need to introduce some concepts fromdifferential geometry that provide the ”language” needed to formally state the algebraic conditions we canuse to test for the solvability of the PDEs. This section reviews that required mathematical background. Oncethat background is developed, we revisit the IS feedback linearization method using these new concepts andgo on to derive conditions under which we know the system is IS feedback linearizable.

Distributions: Recall that a smooth vector field, f : Rn! Rn consists of C1 functions that assign an

n-dimensional vector f(x) to each vector x 2 Rn. If we are given a family of m smooth vector field,sf1, . . . , fm defined on an open set U of Rn, then the vectors f1(x), f2(x), . . . , fm(x) span a vector spacewhich is a subspace of Rn. This vector space is dependent on x and will be denoted as

�(x) = span {f1, . . . , fm}(206)

We can therefore view � as a map from Rn to Rm. When the fi are smooth then we refer to � as a smoothdistribution.

At each vector x 2 U , the object �(x) is a vector space. So we should be able to extend many of our conceptsin linear algebra to smooth distributions. In particular, this requires that we first introduce a couple of binaryoperations that are useful in combining different distributions. Given smooth distributions �1 and �2, thesum of these distributions is defined in a pointwise manner as

(�1 + �2)(x) = �1(x) + �2(x)

The intersection of these distributions is defined as

(�1 \ �2)(x) = �1(x) \ �2(x)

We say that �1 ⇢ �2 if and only if �1(x) ⇢ �2(x) for all x 2 U . A vector field f belongs to � iff(x) 2 �(x) for all x 2 U . The dimension of a point x of U is the dimension of the subspace �(x). We saythe distribution � is nonsingular dim(�(x)) = m for all x 2 U . A point p 2 U is said to be regular if thereexists a neighborhood of p in which � is nonsingular.

Some elementary properties of distributions can be established through linear algebra and the implicit func-tion theorem. For instance if p is a regular point of � with dim(�(p)) = m, we can use the implicit functiontheorem to show that there exists an open neighborhood V ⇢ U of p and a set {f1, . . . , fm} of smooth vector

Page 14: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

278 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

fields such that {f1(x), . . . , fm(x)} are linearly independent and �(x) = span{f1(x), . . . , fm(x)} for allx 2 V . A consequence of this observation is that any smooth vector field ⌧ 2 � can be expressed as a linearcombination of these fi. In other words,

⌧(x) =mX

i=1

ci(x)fi(x)

in which c1(x), . . . , cm(x) are smooth real valued functions of x.

Involutive Distributions: Recall from our earlier discussion in chapter 3 that the Lie bracket or product,[f, g], for any two vector fields f : Rn

! Rn and g : Rn! Rn is defined as the vector field [f, g] : Rn

! Rn

that takes values

[f, g](x) =@g

@xf(x) �

@f

@xg(x)

The repeated application of a Lie bracket might be written as

[f, [f, . . . , [f, g]]]

But this notation is cumbersome and so it is more common to define the iterated Lie bracket using therecursive relation,

adkfg(x) =

hf, adk�1

f gi(x)

for all k � 1 with ad0fg(x) = g(x). Lie brackets can be proven to possess the following properties

• The Lie bracket is bilinear where for any vector fields, f1, f2, g1, g2 and real numbers ↵, �,

[↵f1 + �f2, g1] = ↵ [f1, g2] + � [f2, g2]

[f1, ↵g1 + �g2] = ↵ [f1, g1] + � [f1, g2]

• The Lie bracket is skew commutative in that

[f, g] = �[g, f ]

• For any vector fields f, g, h, the Lie bracket satisfies the Jacobi identity

[f, [g, h]] + [g, [h, f ]] + [h, [f, g]] = 0

x1

x2x3

FIGURE 4. Two-wheeled vehi-cle

Lie brackets may therefore be seen as binary operators over sets of vectorfields which ultimately form linear spaces. The resulting algebra, (�, [])

is called a Lie algebra. Our interest in the Lie bracket is motivated by thefollowing example. This example shows that if we treat each vector fieldas an ”action” that can be taken by the system, that the action of applyingthese actions may result in a new vector field that does not lie in the spanof the original vector fields. The significance of this fact was illustratedby the attitude control problem in Fig. 17 of chapter 1. This exampleshowed how the nonlinearities in spacecraft dynamics allowed one to nullthe vehicle’s roll attitude without an explicit roll jet. In other words, one

Page 15: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

2. MATHEMATICAL BACKGROUND: DISTRIBUTIONS 279

was able to combine the actions of the pitch and yaw control jets in a waythat generated a control torque in a direction (i.e. roll) that was not contained in the span of the pitch andyaw jets. Ultimately, this means that Lie brackets have something to say about the concept of reachability innonlinear systems.

Example: Consider the simplified model of a two-wheel vehicle in Fig. 4 which is similar to that seen insection 3 of chapterchapt:1. The middle of the axis linking the wheels has position (x1, x2) 2 R2 while therotation of this axis is given by the angle x1. The system state therefore lies on the manifold R2

⇥ S1 withlocal coordinates x1, x2 and x3.

We consider the two vector fields

f(x) =

2

664

sin x3

cos x2

0

3

775 , g(x) =

2

664

0

0

1

3

775

which correspond to vehicle rolling and rotation of the vehicle axis. The Lie bracket [f, g] is computed as

[f, g] =

2

664

"sin x3

cos x3

#,

2

664

0

0

1

3

775

3

775 = �

2

664

0 0 cos x3

0 0 sin x3

0 0 0

3

775

2

664

0

0

1

3

775 =

2

664

� cos x3

sin x3

0

3

775

Now recall that X represents the action of rolling and Y represents the action of rotation. We ask whether thecomposition of these two actions commute in the sense that rolling-rotation is equivalent to rotation-rolling.To see that these two rotations do not commute let x(0) denote the initial condition and consider rolling

during time interval h to get x(h) =

2

664

x10 + h sin x30

x20 + h cos x30

x30

3

775. We follow this by a rotation of duration h to get

the location at time 2h of

x(2h) =

2

664

x10 + h sin x30

x20 + h cos x30 + h

x30 + h

3

775

If rolling and rotation commute then we can can reverse the order of operations from x(2h) computed aboveand we should return to x0. So rolling back from x(2h) for time interval h yields

x3h =

2

664

x10 + h sin x30 � h sin(x30 + h)

x20 + h cos x30 � h cos(x30 + h)

x30 + h

3

775

Page 16: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

280 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

and finally rotating back during time interval h yields

x(4h) =

2

664

x10 + h sin x30 � h sin(x30 + h)

x20 + h cos x30 � h cos(x30 + h)

x30

3

775

= x0 + h2

2

664

� cos x30

sin x30

0

3

775+ higher order terms

= x0 + h2[f, g](x0) + higher order terms

This shows that the composition of the two actions do not commute. Moreover, it demonstrates that thecombination of these action results in another ”direction” of motion that is determined by the Lie bracket[f, g] of the two vector fields.

The preceding example clearly shows that it is possible to have nonlinear systems in which the forward/backwardapplication of actions associated with two vector fields results in an action whose vector field does not lie inthe span of the original distribution of actions. This fact motivates the following definition for distributionswhich are ”closed” under the action of a Lie bracket. In particular, we say a distribution is involutive if andonly if for any pair of vector fields, f, g, in �, the Lie bracket, [f, g] generates a vector field that again lies inthe span of �.

Completely Integrable Distributions: The last definition we will need is to introduce a “dual” of a distribu-tion �. Consider a distribution � and assume for each x 2 U , the annihilator, �?, of this distribution is theset of all covectors (i.e. linear functionals) that annihilate any vector in �(x). Formally, we write this as

�?(x) = {w 2 (Rn)⇤ : hw, vi = 0 for all v 2 �(x)}

Recall that (Rn)⇤ is the dual space consisting of linear functionals, � : Rn! R, which have concrete

representations as row vectors. Since �?(x) is a subspace of the dual space (Rn)⇤, this means we canthink of �? as a co-distribution that assigns to each x 2 Rn a subspace of the dual space. This particularco-distribution is called the annihilator of �.

Note that the annihilator of a smooth distribution need not be smooth. We show this by example. Considerthe distribution on R,

� = span{x}

Then the annihilator of � is

�?(x) =

({0} if x 6= 0

(R)⇤ if x = 0

This is clearly not smooth. The reason for this is that the origin is not a regular point (i.e. x = 0 at 0). If,however, we consider a regular point p of a smooth distribution, �, then it can be shown using the implicitfunction theorem that the annihilator, �?, will be a smooth co-distributio in a suitably small neighborhood,U , of p.

Page 17: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

2. MATHEMATICAL BACKGROUND: DISTRIBUTIONS 281

So let us consider a nonsingular distribution � with dimension m that is defined in an open set U of Rn. Weknow this means that there exist m smooth vector fields f1, . . . , fm such that

�(x) = span {f1(x), . . . , fm(x)}

for all x 2 U . We also know that the co-distribution �? is also smooth and nonsingular but with dimensionn � m. So there must exist n � m co-vector fields, {!j}

n�mj=1 that satisfy the relation

h!j(x), fi(x)i = 0(207)

for all i = 1, 2, . . . , m and j = 1, 2, . . . , n � m. For any fixed p 2 U let rewrite equation (207) as

!jF (p) = !j

hf1(p) · · · fm(p)

i= 0(208)

for all j = 1, 2 . . . , n � m. Note that equation (208) that this is a linear homogeneous system of equationsin the unknown co-vector fields, {!j(p)}n�m

j=1 . The rank of the coefficient matrix F (p) is m and from linearalgebra we know that the space of solutions to this system of linear algebraic equations is spanned by n � m

linearly independent row vectors. These row vectors, !1(p), . . . , !n�m(p), are exactly the basis elements forcovectors in the co-distribution �?.

Now rather than accepting any set of functions, !j(x), that satisfy equation (208), we confine our attentionto solutions that can be written as partial derivatives of other smooth functions Tj : Rn

! R for j =

1, 2 . . . , n � m. In other words, we require our basis for �? satisfy

!j(x) =@Tj(x)

@x

This means that our system of equations becomes a system of partial differential equations of the form,

@Tj

@xF (x) = 0(209)

We are interested in finding Tj that are independent in the sense that

@T1

@x, . . . ,

@Tn�m

@x

and linearly independent for each x in U .

We say the distribution � is completely integrable if for each point x 2 U there exists a neighborhood, V ofx, and n � m real-valued sooth functions Tj : U ! R such that

span

⇢@T1(x)

@x, . . . ,

@Tn�m(x)

@x

�= �?(x)

for all x 2 V .

One of the most useful consequences of the concept of complete integrability concerns the use of functionsT1, . . . , Tn�m that satisfy the partial differential equations (209) to locally define coordinate transformationsof a nonlinear control system about a specified point p. By construction the differentials

dT1, . . . , dTn�m(210)

Page 18: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

282 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

are linearly independent at p. Then it is always possible to choose, in the set of functions

x1(x) = x1, x2(x) = x2, . . . , xn(x) = xn

a subset of m functions whose differential at p together with those of the set (210) form a set of exactly n

linearly independent row vectors. Let �1, . . . , �m denote the functions thus chosen and set

�m+1(x) = T1(x), . . . , �n(x) = Tn�m(x)

Then by contruction the Jacobian matrix of the mapping

z = T (x) =

2

666666666664

�1(x)...

�m(x)

�m+1(x)...

�n(x)

3

777777777775

has rank n at p and therefore the mapping T qualifies as local diffeomorphism around p. Suppose now that f

is a vector field of �. In the new coordinates this vector field is represented as

f(z) =

@T

@xf(x)

z=T�1(x)

Since, by construction, the last n�m rows of the Jacobian matrix of T span �?, we can immediatly concludethat the last n � m entries of the vector on the right hand side must be zero. And so any vector field � in thenew coordinates has a representation

f(z) =

2

666666666664

f1(z)...

fm(z)

0...0

3

777777777775

(211)

The complete integrability of a distribution spanned by the columns of the matrix F (x) is equivalent to theexistence of n�m independent solutions of a set of partial differential equations. Recall from equations (205)in the preceding section 1, that the existence of a IS feedback linearizing transformation was addressed by theexistence of smooth solutions to a system of partial differential equations, which are appear similar to thosePDEs used to characterize the complete integrability of a distribution �. In particular, we will show that wecan use this concept of complete integrability to provide conditions certifying the existence of the linearizingtransformation. The conditions used to achieve this certification, however, are not verified by finding thesolution (a hit or miss proposition). Instead we use the Frobenius theorem to provide an algebraic test forcomplete integrability. Frobenius theorem is stated below. The proof can be found in [NVdS90, Isi95] and isinvolved enough that we do not formally prove it.

Page 19: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

2. MATHEMATICAL BACKGROUND: DISTRIBUTIONS 283

THEOREM 104. (Frobenius Theorem) A nonsingular distribution is completely integrable if and only if it isinvolutive

Testing whether or not a distribution is involutive is relatively easy to do, which means that the Frobeniustheorem 104 provides a computable way to verify whether or not a distribution is completely integrable. Assuggested above, we will be able to recast our conditions for the existence of IS feedback linearizations interms of the complete integrability of a specific distribution related back to the vector fields in our affinenonlinear systems. Whereas the PDEs used to determine this feedback transformation may be difficult tosolve, knowing that a solution does exist provides the first test justifying the search for such a transformationand for this reason the relationship between involutive and completely integrable distributions is an importantenabling results for the synthesis of feedback linearizing controllers.

Example: This example uses the Frobenius theorem to evaluate the solvability of a set of partial differentialequations,

2x3@T

@x1�

@T

@x2= 0

�x1@T

@x1� 2x2

@T

@x2+ x3

@T

@x3= 0

To investigate the existence of a smooth function T (x) that satisfies these equations, we define the vectorfields,

f1 =

2

664

2x3

�1

0

3

775 , f2 =

2

664

�x1

�2x2

x3

3

775

So the preceding set of partial differential equations may be written as

@T

@xfi(x) = 0

for i = 1, 2. Let U = {x 2 R3 : x21 + x2

3 6= 0} and let � = span{f1, f2}. One can readily verify thatdim(�(x)) = 2 for all x 2 U . We therefore have that

[f1, f2] =@f2

@xf1 �

@f1

@xf2 =

2

664

�4x3

2

0

3

775

and

rank {f1(x), f2(x), [f1, f2](x)} = rank

2

664

2x3 �x1 �4x3

�1 �2x2 2

0 x3 0

3

775 = 2

for all x 2 U . This means therefore that [f1, f2] 2 �. Since [f2, f1] = �[f1, f2], then we can conclude � isinvolutive. By the Frobenius theorem, we can therefore conclud that � is completely integrable on U , whichmeans for all p 2 U there exists a neighborhood V of p and a real-valued function T (x) with dT (x) 6= 0

that satisfies the given set of partial differential equations. As we shall show in the next section that T is a

Page 20: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

284 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

coordinate transformation that provides the basis for decomposing a nonlinear affine system into its reachableand unreachable parts.

3. Local Decompositions and Reachability of Affine Nonlinear Control Systems

This section discusses some useful results regarding “invariant” distributions that play an important role inthe concept of reachability in nonlinear affine systems. The purpose of this section is to define this notionof an invariant distribution and show how it induces a local decomposition of a nonlinear affine system thatis reminiscent of the Kalman decomposition of linear time-invariant systems into reachable and unreachablesubsystems.

Invariant Distributions: We say a distribution � is invariant under vector field f if the Lie bracket [f, g] off with any vector field g 2 � is again a vector field of �. Formally, this means that � is f -invariant if

for any g 2 �, we can show that [f, g] 2 �

This can be denoted in a more compact notation by letting, [f, �], denote the distribution spanned by allvector fields of the form [f, g] with g 2 �. With this notation, a distribution � is f -invariant if and only if[f, �] ⇢ �.

Suppose the distribution � = {g1, . . . , gm} is nonsingular with dimension m. We can express every vectorfield g 2 � in the form

g(x) =mX

i=1

ci(x)gi(x)

where ci(x) are smooth functions of x and g1, . . . , gm are the vector fields spanning �. It is then easy todeduce that � is invariant under f if and only if

[f, gi] 2 � for all 1 i m

The necessity of statement follows from the fact that g1, . . . , gm are vector fields in �. The sufficiency isestablished by nothing that

[f, g] =mX

i=1

ci(x)[f, gi](x) +mX

i=1

[Lfci(x)] gi(x)

and observing that all the vector fields on the right hand side are vector fields of �. This last expressionshows, in particular, that

span {[f, g1], . . . , [f, gm]} ⇢ [f, �](212)

In general, one cannot replace the subset with equality in equation (212). But if one were to add the distribu-tion to both sides of equation (212) then clearly

� + [f, �] = � + span{[f, g1], . . . , [f, gm]}

= span{g1, . . . , gm, [f, g1], . . . , [f, gm]}

Page 21: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

3. LOCAL DECOMPOSITIONS AND REACHABILITY OF AFFINE NONLINEAR CONTROL SYSTEMS 285

which provides an equality that we will find useful in our later discussion.

It is important to note that the notion of an f -invariant distribution generalizes of an A-invariant subspaces forlinear dynamical systems x = Ax. Recall that a subspace V is A-invariant if AV ⇢ V . Note that �(x) = V

is a distribution and we can introduce a vector field f(x) = Ax. Clearly � is f -invariant in the sense wedefined above.

The notion of invariance under a vector field is useful when dealing with completely integrable distributionsbecause it gives a way of simplifying the local representation of the given vector field. That simplification isshown in the following theorem

THEOREM 105. Let � be a nonsingular involutive distribution of dimension m and suppose it is f -invariant.Then at each point p there exists a a neighborhood U of p and a coordinate transformation z = T (x) definedon U in which the vector field f may be represented by a vector field of the form,

f(x) =

2

666666666664

f1(z1, . . . , zd, zm+1, . . . , zn)...

fm(z1, . . . , zd, zm+1, . . . , zn)

fm+1(zm+1, . . . , zn)...

fn(zd+1, . . . , zn)

3

777777777775

(213)

Proof: The distribution, �, being nonsingular and involutive is also integrable. So at each point p there existsa neighborhood U and a coordinate transformation z = T (x) with the property that

span

⇢@Tm+1

@x, . . . ,

@Tn

@x

�= �?

Let f(z) denote the representation of vector field f in these new coordinates, z. Consider a vector field

f(z) =h

f1(z)... fn(z)

iT

and suppose for a selected index i that

fk(z) =

(0 for k 6= i

1 for k = i

Then the Lie bracket⇥f, ⌧

⇤= �

@f

@x⌧ = �

@f

@zi

Recall from equation (??) that in the coordinates just chosen every vector field of � is characterized by theproperty that the last n � m components are vanihsing. So if 1 i m, the vector field ⌧ belongs to �.Since � is invariant under f , then [f, ⌧ ] also belongs to �, in other words its last n � m components mustvanish. So we can conclude

@fk

@zi= 0

Page 22: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

286 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

for all m + 1 k n and 1 i m, which proves the assertion }

The representation in equation (??) is particularly useful in interpreting the notion of invariant distribution ina system-theoretic manner. Suppose, for instance, that we have a dynamical system of the form

x = f(x)

and we let � be a nonsingular and involutive distribution which is invariant under f . Let us choose coordi-nates as described in theorem 105 and set

⇣1 = (z1, . . . , zm)

⇣2 = (zm+1, . . . , zn)

Then the system in question is represented by equations of the form,

⇣1 = f1(⇣1, ⇣2)

⇣2 = f2(⇣2)(214)

that is it exhibits in the new coordinates an internal triangular deocomposition The block diagram in Fig. 5illustrates this decomposition.

FIGURE 5. Local decomposition of affine nonlinear control system

Geometrically, the decomposition in equation (214) can be interpreted in the following way. Suppose thatT (p) = 0 and suppose, also, that the neighborhood U on which the transformation is defined is of the form

U = {x 2 Rn : |zi(x)| < ✏}

where ✏ is suitably small. Such a neighborhood is called a cubic neighborhood centered at p (see left paneof Fig. 6 ). Let x be a point of U , and consider the subset of U consisting of all points whose last n �

m coordinates (i.e. the ⇣2 coordinates) coincide with those of x. We will call this set, S, a slice of theneighborhood U (See middle pane of Fig 6). Note that any set of this type, being the locus where the smoothfunctions zm+1(x), . . . , zn(x) assume fixed values, can be regarded as a smooth surface of dimension m.Note also that the collection of all subsets having this form will define a partition of U (see left pane ofFig. 6).

Page 23: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

3. LOCAL DECOMPOSITIONS AND REACHABILITY OF AFFINE NONLINEAR CONTROL SYSTEMS 287

x

FIGURE 6. (left) neighborhood where all ⇣2 coordinates have fixed values (middle) a sliceof this neighborhood U , (right) These slices partition U .

Suppose that xa and xb are two points of U satisfying the conditions that they have the same ⇣2 cooridnates.Let xa(t) and xb(t) denote the integral curves of the system starting from xa and xb, at time t = 0. Recallingthat in the new coordinates the system equations exhibit the decomposition in equation (??), it is easy toconclude that as long as xa(t) and xb(t) are contained in the domain U of the coordinates transformationz = T (x),

⇣2(xa(t)) = ⇣2(xb(t))

at any time t. As a matter of fact, ⇣2(xa(t)) and ⇣2(xb(t)) are both solutions of the same differential equation⇣2 = f2(⇣) and because both satisfy the same initial condtion.

The two initial conditions xa and xb with the same ⇣2 coordinate therefore belong to the same slice of U . Inparticular, we can conclude that the flow of the system carries slices into slices.

Local Decompositions of Nonlinear Control Systems: We now use the notion of an f -invariant distributionand in particular theorem 105 to show that for a nonlinear control system of the form,

x = f(x) +mX

i=1

gi(x)ui

yi = hi(x)

there is a local decomposition of the system into reachable and unreachable subsystems.

THEOREM 106. Let � be a nonsingular involutive distribtion of dimension d and assume that � is invariantunder the vector fields f, g1, . . . , gm. Moreover, suppose that the distribution span {g1, . . . , gm} is containedin �. Then for each point p it is possible to find a neighborhood U of p and a local coordinate trannsformationz = T (x) defined on U such that in the new coordinates, the control system is represented in the following

Page 24: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

288 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

form,

⇣1 = f1(⇣1, ⇣2) +Pm

i=1 g1i(⇣1, ⇣2)ui

⇣2 = f2(⇣2)

yi = hi(⇣1, ⇣2)

(215)

where ⇣1 = (z1, . . . , zd) and ⇣2 = (zd+1, . . . , zn).

Proof: From theorem 105 it is known that there exists, around each p, a local coordinate transformationyielding a representation of the form in equation (213) for the vector fields f, g1, . . . , gm. In the new coor-dinates the vector fields g1, . . . , gm that, by assumption, belong to � are represented by vectors whose lastn � d components are vanishing, thereby completing the proof. }

Theorem 106 is useful in understanding the input-state beahvior of the control system. Suppose that the inputsui are piecewise constant functions of time. In other words, there exist real numbers T0 = 0 < T1 < T2, . . .

such that

ui(t) = uki , for Tk t < Tk+1

Then on the time interval [Tk, Tk+1), the state of the system evolves along the integral curve of the vectorfield,

f(x) + g1(x)uk1 + · · · + gm(x)uk

m

passing through the point x(Tk).

If we now suppose that the assumptions of theorem 106 are satisfied and we choose a point p and set x(0) = p.For small values of t the state evolves on U and we may use equation 215 to interpret the behavior of thesystem. From these we see that the ⇣2 coordinates of x(t) are not affected by the input. In particular, wedenote by p(T ) the point of U reached at time t = T when no input is imposed (i.e. when u(t) = 0 for allt 2 [0, T ]), namely the point

p(T ) = �(T, p)

where � is the flow for vector field f . We deduce from the structure of equation (215) that the set of pointsthat can be reached at time T , starting from p, is a set of points whose ⇣2 coordinates are necessariliy equalto the ⇣2 coordinates of p(T ). In other words, the set of points reachable at time T is necessarily a subset ofa slice that was shown in Fig. 6. We can therefore conclude that the state space of the system can be locallypartitioned into d-dimensional smooth surfaces (i.e. the slices) and that the states reachable at time T , alongtrajectories that stay in U for all t 2 [0, T ] must be inside the slice passing through the point p(T ) reachedunder zero input.

4. Input-State Feedback Linearization Revisited

We now return to the IS feedback linearization method introduced in the first section of this chapter. Ourobjective now is to turn from the empirical examples motivating the use of IS feedback linearization and

Page 25: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

4. INPUT-STATE FEEDBACK LINEARIZATION REVISITED 289

try and establish conditions under which we know this approach will work well. So this section proceedsto develop input-state feedback linearization in a more ”formal” manner using the mathematical conceptspresented in the preceding two sections.

The main problem is called the Input-to-State (IS) exact feedback linearization problem. In particular, con-sider a system

x = f(x) + g(x)u(216)

where u is a scalar input and suppose our problem is as follows. Given a point p find (if possible) a neighbor-hood U of p, a feedback law

u = ↵(x) + �(x)v(217)

defined on U and a coordinate transformation z = T (x) (also defined on U ) such that the correspondingclosed-loop system

x = f(x) + g(x)↵(x) + g(x)�(x)v(218)

in the coordinates z = T (x) is linear and controllable. In other words, we require@T

@x(f(x) + g(x)↵(x))

x=T�1(z)

= Az

@T

@x(g(x)�(x))

x=T�1(z)

= B

for some suitable matrix A 2 Rn⇥n and vector B 2 Rn satisfying the condition

rankh

B AB . . . An�1Bi

= n

The following theorem provides necessary and sufficient conditions for the solvability of the exact feedbacklinearization problem. We start by stating the theorem and then going through examples illustrating its use.We conclude by introducing the concepts and intermediate results needed to prove the theorem.

THEOREM 107. The system in equation (216) is input-state exact feedback linearizable if and only if there isa neighborhood V of U such that

• the matrix G(x) =h

g(x) adfg(x) . . . adn�1f g(x)

ihas rank n for all x 2 V .

• The distribution � = spann

g, adfg, . . . , adn�2f g

ois involutive in V

To see how this theorem applies, let us reconsider our earlier example where

x = f(x) + g(x)u =

"a sin x2

�x21

#+

"0

1

#u

Note that

adfg = [f, g] = �@f

@xg =

"�a cos x2

0

#

Page 26: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

290 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

The matrix

G = [g, adfg] =

"0 �a cos x2

1 0

#

has rank 2 for all x such that cos x2 6= 0. The distribution � = span{g} is clearly involutive. So the condi-tions of the above theorem are satisfied and we know this system is input-state exact feedback linearizable.

As another example, let us consider our earlier system

x = f(x) + g(x)u =

2

664

�ax1

�bx2 + ⇢ � cx1x3

✓x1x2

3

775+

2

664

1

0

0

3

775u

For this system the iterated Lie brackets are

adfg = [f, g] =

2

664

a

cx3

�✓x2

3

775

ad2fg = [f, adfg] =

2

664

a2

(a + b)cx3

(b � a)✓x2 � ✓⇢

3

775

The matrix G(x) is therefore

G(x) =h

g adfg ad2fgi

=

2

664

1 a a2

0 cx3 (a + b)cx3

0 �✓x2 (b � a)✓x2 � ✓⇢

3

775

The determinant of G is

det(G) = c✓(�⇢ + 2bx2)x3

which is nonzero for x2 6= ⇢/2b and x3 6= 0. So for x that don’t satisfy these conditions, we know G(x) hasrank 3. The distribution � = span{g, adfg} is involutive if [g, adfg] 2 �, which we can check by simplycomputing this Lie bracket,

[g, adfg] =@adfg

@xg =

2

664

0 0 0

0 0 c

0 �✓ 0

3

775

2

664

1

0

0

3

775 =

2

664

0

0

0

3

775

which means that � is involutive. The conditions are again satisfied and so for the domain

D = {x 2 R3 : x2 > ⇢2b and x3 > 0}

we can again see that the system is input-state linearizable.

We would now like to prove this theorem. Let us first rewrite our original set of necessary and sufficientPDE’s. In particular, we assume that we can find a function h(x) such that we must differentiate h (by time)

Page 27: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

4. INPUT-STATE FEEDBACK LINEARIZATION REVISITED 291

n times before the control u appears. We’ll take our first diffeomorphic function T1(x) to be equal to h(x)

and note that our first set of PDEs take the form,

Ti+1(x) =@Ti(x)

@xf(x) = LfTi(x) = Li

fh(x)(219)

for i = 1, 2, . . . , n � 1. We also require h(x) satisfy the second set of PDE’s

@Ti(x)@x g(x) = 0 for i = 1, 2, . . . , n � 2 and @Tn

@x g(x) 6= 0(220)

Using equations (219) we can rewrite equation (220) as

LgLi�1f h(x) = 0, = 1, 2, . . . , n � 1(221)

LgLn�1f h(x) 6= 0,(222)

Note that we are essentially requiring that h(x) be differentiable n times before u appears in the derivative.In particular, we can consider h(x) as an output function for the input-output affine system

x = f(x) + g(x)u

y = h(x)(223)

where y is the system output (actually z1). We require that we must differentiate the otuput n times beforeu explicitly appears in the derivative. This number of differentiations is called the relative-degree of theinput-output system.

Assuming that the input-output system has a relative degree n, then the required control transformationneeded to feedback linearize the system u = ↵(x) + �(x)v must be

�(x) = LgLn�1f h(x), ↵(x) = �

Lnfh(x)

LgLn�1f h(x)

To summarize, we just showed that if the input-output system is equation (223) has relative degree n, thenthere exists a diffeomorphism T (x) where Ti(x) = Li

fh(x) such that the conditions in equation (221-222)hold, thereby providing the feedback linearizing transformation of interest.

It is important to note that the preceding argument established the sufficiency of the relative degree conditionfor the existence of an IS feedback linearizing control. The following theorem shows that this is also anecessary condition for feedback linearizability.

THEOREM 108. The input-state exact feedback linearization problem is solvable if and only if there exist aneighborhood U of p and a real-valued funrction h(x) defined on U such that the system

x = f(x) + g(x)u

y = h(x)

has relative degree n at p.

Page 28: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

292 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

Proof: Based on the earlier discussion, it is clear we only need to establish the necessity of the condition.We begin by showing an interesting feature of the notion of relative degree, namely that it is invariant undercoordinate transformations and feedback. For instance let z = T (x) be a coordinate transformation ad set

f(z) =

@T

@xf(x)

x=T�1(z)

, g(z) =

@T

@xg(x)

x=T�1(z)

, h(z) = h(T�1(z))

Then

Lfh(z) =@h

@zf(z) =

@h

@x

x=T�1(z)

@T�1

@z

� @T

@xf(x)

x=T�1(z)

=

@h

@xf(x)

x=T�1(z)

= [Lfh(x)]x=T�1(z)

Iterated calculations of this kind show that

LgLkfh(z) =

⇥LgL

kfh(x)

⇤x=T�1(z)

from which we can conclude that the relative degree is invariant under coordinate transformations.

As far as feedback is concerned, not that

Lkf+g↵h(x) = Lk

fh(x), for all 0 r � 1

This equality is trivially true for k = 0. By induction, suppose it is true for some 0 < k < r � 1, then

Lk+1f+g↵h(x) = Lf+g↵Lk

fh(x) = Lk+1f h(x) + LgL

kfh(x)↵(x) = Lk+1

f h(x)

thereby showing that the equality in question holds for k + 1¿ We can therefore deduce that

Lg�Lkf+g↵h(x) = 0, for all 0 k < r � 1

and that if �(p) 6= 0 then

Lg�Lr�1f+g↵h(p) 6= 0

thereby showing that the relative degree r is invariant under feedback.

Now let (A, B) be a reachable pair. Then it is known from linear systems theory that there exists a nonsingularn ⇥ n matrix Q and a 1 ⇥ n vector k such that

Q(A + Bk)Q�1 =

2

66666664

0 1 0 · · · 0

0 0 1 · · · 0...

......

. . ....

0 0 0 · · · 1

0 0 0 · · · 0

3

77777775

= Ac, QB =

2

66666664

0

0...0

1

3

77777775

= Bc

Suppose that the nonlinear transformation T satisfies@T

@x(f(x) + g(x)↵(x))

x=T�1(z)

= Az

@T

@x(g(x)�(x))

x=T�1(z)

= B

Page 29: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

4. INPUT-STATE FEEDBACK LINEARIZATION REVISITED 293

and set

z = T (x) = QT (x)

↵(x) = ↵(x) + �(x)kT (x)

Then it is easily seen that A = Ac and B = Bc. From this choice, it is deduced that there is no loss ofgenerality is assuming that the pair (A, B) have the controller canonical forms, (Ac, Bc).

Now define the ”output” function

y =h

1 0 · · · 0iz

A straightforward calculation shows that the linear system with Ac and Bc and this output function hasrelatively degree n. Thus since the relative degree is invariant under feedback and coordinate transformations,the proof is complete. }

Proof of Theorem 107: We are now in a position to prove the main theorem 107. We first note that it canbe shown that the co-vectors dh(x), dLfh(x), . . . , dLn�1

f h(x) are linearly independent. We can also showthat the vectors g(x), adfg(x), . . . , adn�1

f g(x) are linearly independent. So if we suppose that h satisfies theconditions in equation (221-222), then from we can deduce that rankG(x) = n and so � is nonsingular withdimension n � 1. With some algebra, it may then be shown that

Ladkfg

Lkfh(x) =

(0 0 j + k < n � 1

(�1)jLgLn�1f h(x) 6= 0 j + k = n � 1

which implies that

Lgh(x) = Ladfgh(x) = · · · = Ladn�2f gh(x) = 0

We rewrite this as

dh(x)h

g(x) adfg(x) · · · adn�2f g(x)

i= 0

which means that � is completely integrable and so from Frobenius theorem we can also conclude that � isinvolutive. This then establishes the necessity of the theorem’s conditions.

To establish that these conditions are also sufficient, let us assume G has rank n and � is involutive. By theFrobenius theorem there exists h such that

Lgh(x) = Ladfgh(x) = · · · = Ladn�1f gh(x) = 0

We then use Jacobi’s identity

Ladfgh(x) = LfLgh(x) � LgLfh(x)

to show that

Lgh(x) = LgLfh(x) = · · · = LgLn�2f h(x) = 0

which is equation (221). Using this relation, we then see that

dh(x)h

g(x) adfg(x) · · · adn�1f g(x)

i=h

0 · · · 0 Ladn�1f gh(x)

i

Page 30: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

294 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

Since rank(G) = n and dh(x) 6= 0, we can conclude that

Ladn�1f gh(x) 6= 0

and the use Jacobi’s identity to establish

LgLn�1f h(x) 6= 0

which is equation (222) and the proof is complete. }

On the basis of the preceding discussion, it should be clear that the procedure leading to the construction of afeedback u = ↵(x) + �(x)v and of a coordinate transformation z = T (x) that solves the input-to-state exactfeedback linearization problem about a point p consists of the following steps,

• From f(x) and g(x), we construct vector fields

g(x), adfg(x), . . . , adn�2f g(x), adn�1

f g(x)

and check that– the matrix

hg(p) adfg(p) · · · adn�2

f g(p) adn�1f g(p)

ihas rank n.

– The distribution � = spann

g, adfg, . . . , adn�2f g

ois involutive near p.

• If both conditions are satisfied then we solve the following partial differential equations for h(x),

Lgh(x) = Ladfgh(x) = . . . = Ladn�2f gh(x) = 0

• We then set

↵(x) =�Ln

fh(x)

LgLn�1f h(x)

, �(x) =1

LgLn�1f h(x)

to get the parameters for the controller• and finally set

T (x) =

2

666664

h(x)

Lfh(x)...

Ln�1f h(x)

3

777775

to get the linearizing coordinate transformation.

Example: Let us conclude this section with a specific example illustrating the use of this procedure. Considerthe system

x =

2

664

x3(1 + x2)

x1

x2(1 + x1)

3

775+

2

664

0

1 + x2

�x3

3

775u

In order to check whether this system can be transformed into a linear and controllable system via feedbackand a coordinate transformation, we have to compute the functions adfg(x) and ad2

fg(x) to check theorem107’s conditions.

Page 31: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

4. INPUT-STATE FEEDBACK LINEARIZATION REVISITED 295

The appropriate calculations show that

adfg(x) =

2

664

0 0 0

0 1 0

0 0 �1

3

775

2

664

x3(1 + x2)

x1

x2(1 + x1)

3

775�

2

664

0 x3 1 + x2

1 0 0

x2 1 + x1 0

3

775

2

664

0

1 + x2

�x3

3

775

=

2

664

0

x1

�(1 + x1)(1 + 2x2)

3

775

and that

ad2fg(x) =

2

664

(1 + x2)(1 + 2x2)(1 + x1) � x3x1

x3(1 + x2)

�x3(1 + x2)(1 + 2x2) � 3x1(1 + x1)

3

775

at x = 0 the matrix

hg(x) adfg(x) ad2

fg(x)i

x=0=

2

664

0 0 1

1 0 0

0 �1 0

3

775

which has rank 3 and therefore satisfies the first condition in theorem 107. It is also easy to compute the Liebracket

[g, adfg] (x) =

2

664

0

3

775

where ⇤ means a nonzero element and therefore the second condition in theorem 107 is satsified because

hg(x) adfg(x) [g, adfg]

i

x=0=

2

664

0 0 0

1 0 ⇤

0 �1 ⇤

3

775

has rank 2.

We can readily see that a function h(x) that solves equation

@h

@x

hg(x) adfg

i(x) = 0

is given by

h(x) = x1

So we consider h(x) = x1 as the ”output” and this will, from our earlier discussion will yields an input outputsystem with relative degree 3, which is equal to n at x = 0. We double check this assertion by computing

Lgh(x) = 0, LgLfh(x) = 0, LgL2fh(x) = (1 + x1)(1 + x2)(1 + 2x2) � x1x3

Page 32: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

296 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

which shows that LgL2fh(0) = 1. Since we had to compute this 3 times, it certifies the assertion that the

system’s relative degree was three. So locally about x = 0, the system will be transformed into a linear andcontrollable one by means of state feedback

u = �L3fh(x) + v

LgL2fh(x)

=�x2

3(1 + x2) � x2x3(1 + x2)2 � x1(1 + x1)(1 + 2x2) � x1x2(1 + x1) + v

(1 + x1)(1 + x2)(1 + 2x2) � x1x3

and the coordinate transformations

z1 = h(x) = x1

z2 = Lfh(x) = x3(1 + x2)

z3 = L2fh(x) = x3x1 + (1 + x1)(1 + x2)x2.

5. Scalar Input/Output Feedback Linearization

In the preceding section, we saw that by introducing a state coordinate transformation, it was possible to trans-form a system into a form from which an input-state feedback linearizing control could be easily determined.That state coordinate transformation, was based on identifying a ”virtual output” for the system and whatthis suggests is that it should be possible to completely linearize the input-output map of an affine nonlinearsystem through feedback as well. This section consider this so-called input/output feedback linearizationproblem. As before we start with some examples to show how this linearization procedure is implemented.

Consider the input-output system

x1 = a sin x2

x2 = �x21 + u

y = x2

This was one of the examples we considered earlier where we introduced a coordinate transformation

z = T (x) =

"x1

a sin x2

#

and if we then use the control

u = x21 +

1

a cos x2v

then we obtained the linearized system

z1 = z2

z2 = v

y = sin�1⇣z2

a

Page 33: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

5. SCALAR INPUT/OUTPUT FEEDBACK LINEARIZATION 297

Note that while the state equations are ”linear”, the output that may be available for control is highly nonlinear.We can remedy this situation through a different choice for the control. In particular, if we simply let

u = x21 + v

and did not use the coordinate transformation then we would obtain the input-output system

x1 = a sin x2

x2 = v

y = x2

In this case the input output map from v to y is linear, even though the state equations are nonlinear. So if weare not overly concerned that the state dynamics are ”linear”, then we can more easily control the system’sinput-output behavior. Of course in many applications it is this input-output behavior that we really careabout. This approach to feedback linearization is called input/output feedback linearization.

Let us now generalize our discussion. Consider the scalar input-output system

x = f(x) + g(x)u

y = h(x)

The derivative of the output is

y =@h

@x(f(x) + g(x)u)

For notational convenience we use the iterated Lie bracket notation so that

@h

@xf(x) = Lfh(x)

= Lie derivative of h along f

In using the iterated Lie bracket, we can then see that the differential equation satisfied by the output is

y = Lfh(x) + Lgh(x)u

Note that if Lgh(x) = 0, then y = Lfh is independent of u. For this situation, we can then take the secondderivative of y to obtain

y =@(Lfh)

@x(f(x) + g(x)u)

= L2fh + LgLfhu

Again if LgLfh = 0, then y = L2fh is independent of u. So we keep repeating this construction until the

control appears in the derivative expression. In particular, we require that there exist an integer p such thath(x) satisfies

LgLi�1f h(x) = 0, i = 1, 2, . . . , p � 1

LgLp�1f h(x) 6= 0

Page 34: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

298 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

So u does not appear in the equations for the first p � 1 derivatives of y. But for the pth derivative, we see

dpy

dtp:= y(p) = Lp

fh + LgLp�1f hu

and it suggests that if we were to introduce a control of the form

u =1

LgLp�1f h(x)

⇣�Lp

fh(x) + v⌘

then the system’s input-output map has a dynamic that is simply a chain of p integrators

dpy

dtp= v

which this chain being fed by the input v. The integer p, of course, is nothing more than the relative degreeof the input output system.

We now formalize what was described above as a procedure. Given the system

x(t) = f(x) + g(x)u

y = h(x)

The input-output feedback linearization problem is to find a control u = ↵(x) + �(x)v such there exists aninteger p for which y(p) = v. The procedure used to find this control is

• Differentiate y with respect to time

y = Lfh(x) + Lgh(x)u

If |Lgh(x)| 6= 0 for all x 2 U , then select

↵(x) = �Lfh(x)

Lgh(x), �(x) =

1

Lgh(x)

to obtain the linearized input/output map y = v.• If Lgh(x) = 0, then differentiate again to obtain

y = L2fh(x) + LgLfh(x)u

and choose the control parameters

↵(x) �L2fh(x)

LgLfh(x), �(x) =

1

LgLfh(x)

to obtain the linearized input/output map y = v.• if LgLfh(x) = 0, then differentiate again and repeat the steps until you find an integer p for which

Lp�1g Lfh(x) 6= 0. If p is the smallest integer for which LgL

p�1f h(x) 6= 0 on U , then the I/O

linearizing control u = ↵(x) + �(x)v has parameters

↵(x) = �Lpfh(x)

LgLp�1f h(x)

, �(x) =1

LgLp�1f h(x)

to obtain the integrator chain y(p) = v.

Page 35: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

5. SCALAR INPUT/OUTPUT FEEDBACK LINEARIZATION 299

Let us present some concrete examples illustrating how the input/output linearization methods works. In thefirst example, we consider the following system

x1 = �ax1 + u

x2 = �bx2 + k � cx1x3

x3 = ✓x1x2

y = x3

Notice that the control input enters through x1 and is not directly seen in the output, so we differentiate theoutput until u appears. The first derivative of y yields

y = x3 = ✓x1x2

The control u has not appeared yet, so we differentiate one more time,

y = ✓x1x2 + ✓x1x2

= ✓x1(�bx2 + k � cx1x3) + ✓(�ax1 + u)x2

We now see that u appears directly in the expression for the output y’s second time derivative. So this systemhas a relative degree of 2.

To linearize the input/output map, we need to compute the Lie derivatives of f and h. In particular, we seethat

h(x) = x3, f(x) =

2

664

�ax1

�bx2 + k � cx1x3

✓x1x2

3

775 , g(x) =

2

664

1

0

0

3

775

The zeroth Lie derivative of h is

L0fh = h(x) = x3

LgL0fh =

@h

@xg(x) =

h0 0 1

i2

664

1

0

0

3

775 = 0

The next round of Lie derivatives yields

L1fh =

@h

@xf(x) =

h0 0 1

i2

664

�ax1

�bx2 + k � cx1x3

✓x1x2

3

775 = ✓x1x2

LgL1fh =

@(L1f )

@xg(x) =

@✓x1x2

@xg(x) =

h✓x2 ✓x1 0

i2

664

1

0

0

3

775 = ✓x2

This last derivative (LgL1fh) is nonzero so that p � 1 = 1 or p = 2 as we already know from differentiating

y.

Page 36: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

300 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

We can now go ahead and determine the I/O linearizing control. To get this we first need to compute L2fh

L2fh =

@✓x1x2

@xf(x) =

h✓x2 ✓x1 0

i2

664

�ax1

bx2 + k � cx1x3

✓x1x2

3

775

= �(a + b)✓x1x2 + k✓x1 � c✓x21x3

So the I/O linearizing control is

u =1

LgLfh(v � L2

fh)

=v � (�(a + b)✓x1x2 + k✓x1 � c✓x3

1x3)

✓x2

= (a + b)x1 + cx2

1x3

x2� k

x1

x2+

v

✓x2

If we then substitute this into our expression for y (i.e. the derivative of y when u first appears), we obtain

y = ✓x1x2 + ✓x1x2

= ✓x1(�bx2 + k � cx1x3) + ✓(�ax1 + u)x2

= �✓(a + b)x1x2 + ✓kx2 � c✓x31x3

+((ab)✓x1x2 + ✓cx21x3 + ✓kx1 + v)

= v

which verifies that the proposed control indeed linearizes the input-output map from v to y.

6. Normal Form for Scalar Affine Systems

Let us consider a scalar input-output system of the form

x = f(x) + g(x)u

y = h(x)

We assume the system has a relative degree r at a point x0. In the preceding section, we viewed the functionsh(x), Lfh(x), . . . , Lr�1

f h(x) a state coordinates, so let us define the state variables

z1 = T1(x) = h(x)

z2 = T2(x) = Lfh(x)

... =...

zr = Tr(x) = Lr�1f h(x)

Page 37: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

6. NORMAL FORM FOR SCALAR AFFINE SYSTEMS 301

From the discussion in the preceding section, we can always find n � r additional functions Ti for i =

r1, . . . , n such that LgT (x0) = 0 and the Jacobian of

T (x) =

2

664

T1(x)...

Tn(x)

3

775 =

2

664

z1

...zn

3

775

is nonsingular in a neighborhood of x0. So by the inverse function theorem we can assert T�1(x) exists andis C1 in a neighborhood of x0. The variable transformation T , therefore is a diffeomorphism and we canthink of it as a local coordinate transformation of the original system’s state variables.

The state equations of the transformed system may now be written as

z1 =@T1(x)

@xx =

@h(x)

@xx = Lfh(x) = T2(x) = z2

... =...

zr�1 =@Tr�1(x)

@xx = Lr�1

f h(x) = Tr(x) = zr(t)

zr = Lrfh(x) + LgL

r�1f h(x)u

= Lrfh(T�1(z)) + LgL

r�1f h(T�1(z))u

= b(z) + a(z)u

zr+1 =@Tr+1(x)

@x(f(x) + g(x)u) = LfTr+1(x) + LgTr+1(x)u

= LfTr+1(x) + LfTr+1(T�1(z)) = qr+1z

... =...

zn = qn(z)

Note that if we choose

u =1

a(z)(v � b(z))

then the I/O map from v to y is linearized to

zr = v

zi = zi+1, (i = 1, . . . , r � 1)

y = z1

Since this is linear, we can use a linear control law to stabilize the I/O map. The other n � r states zr+1 to zn

are not seen at the output and so it so customary to partition the z states into two sets

⇠ =

2

664

z1

...zr

3

775 , ⌘ =

2

664

zr+1

...zn

3

775

Page 38: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

302 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

We let Ac be a companion matrix and define matrices Bc and Cc as

Ac =

2

666664

0 1 0 · · · 0

0 0 1 · · · 0...

......

. . ....

0 0 0 · · · 0

3

777775, Bc =

2

666664

0...0

1

3

777775, Cc =

h1 0 · · · 0

i

and rewrite the state equations in terms of these two new sets of variables, ⇠ and ⌘ to obtain

⇠ = Ac⇠ + Bc(a(x)u + b(x))

⌘ = q(⌘, ⇠)

y = Cc⇠

(224)

We refer to the input/output realization in equation (224) as the normal form of the scalar input/output systemx = f(x) + g(x)u. So in studying input-output linearization controllers it is customary to simply assume thesystem has already been transformed to its normal form.

As an example, let us consider the system

x1 = �x1 +2 + x2

3

1 + x23

u

x2 = x3

x3 = x1x3 + u

y = x2

We want to transform this to its normal form. We start by taking the derivative of the system output, y todetermine the system’s relative degree.

y = x2 = x3, the control u does not appear after 1st derivative

y = x3 = x1x3 + u, control u appears, so the relative degree r = 2

So we can take z1 = x2 = y as the first coordinate and we let the second coordinate be z2 = z1 = x3. So thefirst two coordinate transformation functions are

T1(x) = x2

T2(x) = x3

and we let the first set of normal form coordinates be

⇠ =

"⇠1

⇠2

#=

"z1

z2

#=

"T1(x)

T2(x)

#=

"x2

x3

#

We still need to determine the last coordinate transformation T3(x) = z3 = ⌘. To determine this we requirethat T3 satisfy

T3(0) = 0

LgT3(x) =@T3(x)

@xg(x) = 0

Page 39: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

6. NORMAL FORM FOR SCALAR AFFINE SYSTEMS 303

This requires us to solve a partial differential equation of the form

LgT3(x) =@T3(x)

@xg(x)

=h

@T3@x1

@T3@x2

@T3@x3

i2

664

2+x23

1+x23

0

1

3

775

=@T3

@x1

2 + x23

1 + x23

+@T3

@x3

= 0

We solve this using the separation of variables techniques in which we assume the solution has the form

T3(x) = ln (P (x1)Q(x3))

Let P 0(x1) = dPdx1

and Q0(x3) = dQdx3

, then we rewrite the partial derivatives of T3 as

@T3

@x1=

1

PQP 0Q =

P 0

P

@T3

@x3=

Q0

Q

Inserting this into our PDE yields,

0 =P 0

P

✓2 + x2

3

1 + x23

◆+

Q0

Q

which implies that

Q0(x3)

Q(x3)

1 + x23

2 + x23

=P 0(x1)

P (x1)= K, a constant

Solving for P yields,

dP

P= Kdx1 ) lnP (x1) = Kx1 + K2

and solving for Q yields,

dQ

Q= K

✓1 +

1

1 + x23

◆dx3 ) ln(Q(x3)) = Kx3 + Ktan�1x3 + K3

We can therefore select T3 to be

T3(x) = ln(P (x1)Q(x3)) = �x1 + x3 + tan�1x3

where the constants of integration K, K2, and K3 were chosen to satisfy the boundary condition T3(0) = 0.So the local state coordinate transformations are

z1 = ⇠1 = T1(x) = x2

z2 = ⇠2 = T2(x) = x3

z3 = ⌘ = T3(x) = �x1 + x3 + tan�1x3

Page 40: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

304 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

The inverse transformation T�1 yields,

x2 = T�11 (z) = z1 = ⇠1

x3 = T�12 (z) = z2 = ⇠2

x1 = T�13 (z) = �z3 + z2 + tan�1z2

= �⌘ + ⇠2 + tan�1⇠2

We can now write the normal form in equation (224) for this particular system. For the ⌘ state we get

⇠ =

"⇠1

⇠2

#=

"0 1

0 0

#"⇠1

⇠2

#+

"0

1

#(x1x3 + u)

=

"⇠2

x1x3 + u

#

=

"⇠2

(�⌘ + ⇠2 + tan�1(⇠2))⇠2 + u

#

The state equation for the ⌘ state is

⌘ = �x1 + x3 +1

1 + x23

x3

= x1

✓1 +

2 + x23

1 + x23

x3

= (�⌘ + ⇠2 + tan�1⇠2)

✓1 +

2 + ⇠22

1 + ⇠22

⇠2

and the output equation is

y = x2 = ⇠1

Putting all of these equations together we see that the normal form for our system is

⇠1 = ⇠2

⇠2 = (�⌘ + ⇠2 + tan�1⇠2)⇠2 + u

⌘ = (�⌘ + ⇠2 + tan�1⇠2)

✓1 +

2 + ⇠22

1 + ⇠22

⇠2

y = ⇠1

In our later design of controllers, we will usually start from a system that is already in normal form.

7. Zero Dynamics of Scalar Affine Systems

The normal form introduced in the preceding section provides considerable insight into the structure of ascalar affine nonlinear system. In particular, it decomposes the system into two subsystems whose states arethe ⇠ and ⌘ state vectors in the normal form. The right hand side of Fig. 7 shows this block diagram wherethe two subsystems are connected in a feedback manner.

Page 41: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

7. ZERO DYNAMICS OF SCALAR AFFINE SYSTEMS 305

v ξ

ξ

y

u

ξ

ξη

η

y

FIGURE 7. (right) normal form of scalar affine system (left) normal form after I/O feed-back linearization

Recall that we are interested in using a feedback linearizing control of the form

u = �1

a(x)(b(x) � v)

where v is the new control variable. This control essentially cancels out the nonlinear term driving the ⇠r stateequation so we end up decoupling the lower system from the upper system as shown on the left hand side ofFig. 7. The important thing to note here is that the internal state ⌘ is now unobservable from the output y.Moreover, since we designed the new control signal v to force ⇠ to asymptotically go to zero, we can see thatwhen ⇠ = 0, the lower system is also completely decoupled from the upper system. This can be problematicfor this design approach if the unforced lower system ⌘ = q(0, ⌘) is unstable or even marginally stable.

Let us formalize our earlier observations. Consider a nonlinear scalar affine system whose relative degreer < n. For convenience we assume the system has already been placed in its normal form through a suitableT (x) coordinate transformation

⇠1 = ⇠2

⇠2 = ⇠3

... =...

⇠r�1 = b(⌘, ⇠) + a(⇠, ⌘)u

⌘ = q(⇠, ⌘)

We let x⇤ denote an equilibrium point such that f(x⇤) = 0 and h(x⇤) = 0. This means the first r newcoordinates ⇠i are zero at x⇤. So if x⇤ is an equilibrium point for the system in the original coordinates, thenits corresponding point (⇠⇤, ⌘⇤) = (0, 0) is an equilibrium in the new coordinates. We therefore see that

0 = b(0, 0) + a(0, 0)u

which means that we must also have b(0, 0) = 0.

With these observations we now consider the problem of zeroing the output. In this problem we want to findan initial state x0 and an input u0 defined in a neighborhood of t = 0 such that y(t) = 0 for all t in thatneighborhood. Clearly the trivial pair (x0, u0) = (x⇤, 0) will work. We’re interested in finding as many

Page 42: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

306 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

nontrivial zeroing pairs (x0, u0) that solve the problem. We will solve this problem assuming that the systemhas already been put in its normal form.

The system output in normal coordinates is

y(t) = ⇠1(t)

If we set y(t) = 0 for all t, this implies

0 = ⇠1

and because the upper system is a chain of integrators we can readily deduce that

⇠2 = · · · = ⇠r = 0

also. So we see that ⇠(t) = 0 for all t when y(t) = 0.

The input u0 maintaining this zero trajectory must be such that

⇠r = 0 = b(0, ⌘) + a(0, ⌘)u

where ⌘ satisfies the state equation

⌘ = q(0, ⌘), ⌘(0) = ⌘0(225)

So we an deduce that if y(t) = 0 for all t then ⇠(0) = 0, but ⌘(0) = ⌘0 can be chosen arbitrarily so long asthe control is taken to be

u(t) = �b(0, ⌘(t))

a(0, ⌘(t))

So each initial stat (0, ⌘0) has a unique input capable of keeping y(t) = 0 for all t. The dynamical system inequation (225) is called the zero-dynamics of the system.

If the zero dynamic, ⌘ = q(0, ⌘), is locally asymptotically stable, then the original system

x = f(x) + g(x)u

y = h(x)

is said to be (locally) minimum phase at its equilibrium x⇤. If the zero dynamic subsystem is unstable, thenthe entire system is said to be non-minimum phase. In view of the opening discussion for this section, theissue of the zero-dynamic being minimum or non-minimum phase is an important issue in the use of I/Ofeedback linearization to control the plant.

Example: Let us consider the input-output system

x =

2

664

x3 � x32

�x2

x21 � x3

3

775+

2

664

0

�1

1

3

775u

y = x1

Page 43: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

7. ZERO DYNAMICS OF SCALAR AFFINE SYSTEMS 307

Differentiating the output yields

y = x3 � x32

y = x21 � x3 + 3x3

2 + (1 + 3x22)u

So this system ha a relative degree, r = 2. To determine the zero-dynamic of this system we must firsttransform it into its normal form. We take z1 = x1 = y We take

z2 = z1 = y = x3 � x32

for the second coordinate. So the first two coordinate transformation functions are

T1(x) = x2 = ⇠1

T2(x) = x3 � x32 = ⇠2

To determine the last coordinate transformation, we consider

LgT3 =@T3

@xg(x) = 0

which leads to the following partial differential equation

@T3

@x2=

@T3

@x3

that must be satisfied by T3. One solution to this partial differential equation that keeps the origin as theequilibrium will be

T3(x) = x2 + x3

So the local states in this example are

⇠1 = x1

⇠2 = x3 � x32

⌘ = x2 + x3

Page 44: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

308 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

The normal form equations (using T�1 to put everything on the right hand side in terms of ⇠ or ⌘) willtherefore be

⇠1 = x1 = x3 � x32

= ⇠2

⇠2 = x3 � 3x22x2

= x21 � x3 + u � 3x2

2(�x2 � u)

= x21 + 3x3

2 � x3 + (1 + 3x32)u

= a(⇠, ⌘) + b(⇠, ⌘)u

⌘ = x2 + x3

= �x2 � u + x21 � x3 + u

= x21 � x2 � x3

= ⇠21 � ⌘

So the zero dynamics at x = 0 are given by

⌘ = �⌘

which means that this system is minimum phase.

For LTI systems the zero dynamics correspond to the transmission zeros of the system. To see this, let usconsider an LTI system whose transfer function is

G(s) = Ksn�r + bn�r�1sn�r�1 + · · · + b1s + b0

sn + an�1sn�1 + · · · + a1s + a0

We assume that the polynomials a(s) and b(s) are coprime and consider a realization in controller canonicalform,

x =

2

66666664

0 1 0 · · · 0

0 0 1 · · · 0...

......

. . ....

0 0 0 · · · 1

�a1 �a1 �a2 · · · �an�1

3

77777775

x +

2

66666664

0

0...0

K

3

77777775

u

y =h

b0 b1 · · · bn�r�1 1 0 · · · 0ix

The ”normal form” for this LTI system has state coordinates

⇠1 = Cx = b0x1 + b1x2 + · · · + bn�r�1xn�r + xn�r+1

⇠2 = CAx = b0x2 + · · · + bn�r�1xn�r+1 + xn�r+2

... =...

⇠r = CAr�1x = b0xr + · · · + bn�r�1xn�1 + xn

Page 45: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

7. ZERO DYNAMICS OF SCALAR AFFINE SYSTEMS 309

The other n � r coordinates can be freely chosen. In particular we choose them to be

⌘1 = x1

⌘2 = x2

... =...

⌘n�r = xn�r

So its normal form is

⇠1 = ⇠2

⇠2 = ⇠3

... =...

⇠r�1 = ⇠r

⇠r = R⇠ + S⌘ + Ku

⌘ = P ⇠ + Q⌘

where R and S are row vectors and P and Q are matrices of suitable dimension.

The zero dynamic for this system, therefore will be

⌘ = Q⌘

For the particular choice for the last n � r coordinates, we see that

⌘1 = x1 = x2 = ⌘2

... =...

⌘n�r�1 = xn�r�1 = xn�r(t) = ⌘n�r

⌘n�r = xn�r = xn�r+1(t)

= �b0x1 � · · · � bn�r�1xn�r(t) + ⇠1(t)

= �b0⌘1 � · · · � bn�r�1⌘n�r(t) + ⇠1(t)

which allows us to deduce that the Q matrix in the zero-dynamics has the form

Q =

2

66666664

0 1 0 · · · 0

0 0 1 · · · 0...

......

. . ....

0 0 0 · · · 1

�b0 �b1 �b2 · · · �bn�r�1

3

77777775

This matrix, Q, is in companion form which meas that its eigenvalues are simply the roots of the polynomial

b(s) = b0 + b1s + · · · + bn�r�1sn�r�1sn�r = 0

Page 46: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

310 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

The zeros of this polynomial, of course, are the zeros of the transfer function G(s) and so the modes for thezero dynamics of a linear system are determined by the zeros of the system’s transfer function.

8. Feedback Linearizing Controller Synthesis

This last section considers explicit controller synthesis problems for input-output scalar affine systems thathave been input-output feedback linearized. The entire point of feedback linearization is to linearize theinput-output system so that traditional linear controls can be used to regulate the system. This is fairlystraightforward except for the fact that we have to investigate how these controls impact the zero-dynamic.

Asymptotical Stabilization Problem: We’re given the system

x = f(x) + g(x)u

in which f(0) = 0. We want to find a smooth state feedback law u = k(x) with k(0) = 0 so the origin islocally asymptotically stable. Let us use an input-to-state feedback linearization approach. Then clearly ifthe linearization of the nonlinear system is stabilizable (i.. all of its uncontrollable modes are stable), thenthere exists a smooth control such that the nonlinear system is locally asymptotically stable. If the feedbacklinearization is uncontrollable and its uncontrollable eigenvalues have positive real parts then the nonlinearsystem cannot be stabilized by linear feedback.

When the pair (A, B) is not controllable but its uncontrolalble modes have eigenvalues with zero real parts,then we need to look more closely at what is happing with the zero dynamics of the nonlinear system. Inparticular, let us consider the system’s normal form,

⇠1 = ⇠2

⇠2 = ⇠3

... =...

⇠r�1 = ⇠r

⇠r = b(⇠, ⌘) + a(⇠, ⌘)u

⌘ = q(⇠, ⌘)

with (⇠⇤, ⌘⇤) = (0, 0) being the system’s equilibrium. We can linearize the input-output map of this systemwith the control

u =1

a(⇠, ⌘)(�b(⇠, ⌘) � c0⇠1 � c1⇠2 � · · · � cr�1⇠r)

where c0 to cr�1 are chosen to place the poles of the I/O linearized map. Sour our choice of control yields asystem of the form

⇠ = A⇠

⌘ = q(⇠, ⌘)

Page 47: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

8. FEEDBACK LINEARIZING CONTROLLER SYNTHESIS 311

where A is in controller companion form. We may view this as a cascade of two system just as we saw inFig. 7 in which the nonlinear zero-dynamic is being driven by the stable linear upper system. In particular,if the linear system is asymptotically stable and the lower system is input-to-state stable, we can readilyconclude that the cascade is asymptotically stable. Obviously, however, if the zero dynamic is not input-to-state stable, then we can no longer rely on the intuition that cascade of ”stable” systems will again bestable.

Asymptotic Output Tracking: A more interesting problem occurs if we are interested in having the outputtrack a desired reference signal yc(t). In this case, we need to find a pair of initial states, x0, and controls u0

such that y(t) = yc(t) for all time t > 0¿ Note that this is similar to our earlier output zeroing problem. Thedifference is not that yc(t) is not necessarily 0 for all time.

From the system’s normal form we know that ⇠i(t) = y(i�1)c (t) for 1 i r where r is the system’s relative

degree. We also know that

y(r)c = b(⇠c, ⌘) + a(⇠c, ⌘)u

⌘ = q(⇠c, ⌘)

where ⇠c =h

yc y(1)c · · · y(r�1)

c

iT.

If the output y is to track yc, then the initial system state must be ⇠(0) = ⇠c(0) where ⌘(0) can be chosenarbitrarily. Once we’ve selected ⌘0 = ⌘(0), then the input control is simply

u0(t) =y(r)c (t) � b(⇠c(t), ⌘(t))

a(⇠c(t), ⌘(t))

to force perfect tracking of the commanded input.

In practice, of course, it is impossible to set ⇠(0) so it matches the desired output, so we consider an aribtrarychoice for the initial states and determine a control that allows y(t) to track yc(t) asymptotically. In otherwords, we want a control such that y(t) � yc(t) asymptotically goes to zero as t goes to infinity. We refer tothis as the asymptotic tracking problem.

Again we start from the system in normal form and we choose the control to be

u(t) =1

a(⇠, ⌘)

�b(⇠, ⌘) + y(r)

c �

rX

i=1

ci�1(⇠i � y(i�1)c )

!

The last part is an error term that must be feedback through a gain ci to ensure the tracking error e(t) =

y(t) � yc(t) asymptotitcally goes to zero. With this control we can see that the upper system states satisfy

⇠r = b(⇠, ⌘) + a(⇠, ⌘)

1

a(⇠, ⌘)

�b(⇠, ⌘) + y(r)

c �

rX

i=1

ci�1e(i�1)

!!

= y(r)c � cr�1e

(r�1)� · · · � c1e

(1)� c0e

But we know that

⇠r � y(r)c = y(r)

� y(r)c = e(r)

Page 48: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

312 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

so we can conclude

0 = e(r)� cr�1e

(r�1)� · · · � c1e

(1)� c0e

This is an rth order linear differential equation whose coefficients are chosen to ensure that e asymptoticallygoes to zero. In particular, let us introduce states e(t) = �1(t), e(1)(t) = �2(t), and so on until e(r�1)(t) =

�r(t). With this set of state assignments we obtain

�(t) =

2

66666664

0 1 0 · · · 0

0 0 1 · · · 0...

......

. . ....

0 0 0 · · · 1

�c0 �c1 �c2 · · · �cr�1

3

77777775

whose characteristic polynomial is

sr + cr�1sr�1 + · · · + c1s + c0 = 0

We simply need to select the coefficients so this polynomial has roots with negative real parts to ensureasymptotic tracking of the output.

This approach, however, only addresses the system’s outputs. We still have the ”hidden” states ⌘ associatedwith the system’s zero dynamics. Recall that

⇠i = y(i�1)c + e(i�1)

for i = 1, . . . , r. This means that we need to examine the system

⌘ = q(⇠c + �(t), ⌘)

where �(t) is an error signal that is driving the zero-dynamic. We again view this as a cascade of an errorsystem driving the time-varying zero-dynamic (time varying because ⇠c is time-varying function). So if wecan ensure that

⌘ = q(⌘c, ⌘)

is uniformly asymptotically stable, then we know y ! yc, ⌘ ! ⌘c a t ! 1.

Disturbance Rejection (Decoupling): The feedback linearization procedure by state feedback involves theexact cancellation of nonlinearities. Consequently, this means that it relies on a precise description of thenonlinear system. In practice such descriptions are rarely available and so we must ask whether the feedbacklinearization scheme can be rendered robust to external disturbance. In particular, this is precisely what wasconsidered in the preceding chapter through robust control Lyapunov functions. So one way of approachingthis problem is to use the methods from the preceding chapter to ensure the ”cancellation” is robust to mod-eling error. Another approach involves imposing some structural conditions on the problem that allow us todecouple the output from the disturbance.

Page 49: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

8. FEEDBACK LINEARIZING CONTROLLER SYNTHESIS 313

Consider the following system

x = f(x) + g(x)u + p(x)w

y = h(x)

where w is a bounded disturbance and p(x) is a smooth vector field through which this disturbance enters thesystem. The aim is to find a state feedback law u of the form

u = ↵(x) + �(x)v

such that w has no effect on (i.e. is decoupled from) the output. We assume that the unperturbed system hasa relative degree of r. We call this the disturbance rejection problem.

A necessary and sufficient condition for the existence of a solution to the disturbance rejection problem isthat

LpLkfh(x) = 0

for k r � 1. We now proceed to prove this assertion.

Writing the system equations in normal form yields,

⇠1 = ⇠2 + Lph(x)w

⇠2 = ⇠3 + LpLfh(x)w

... =...

⇠r = b(⇠, ⌘) + a(⇠, ⌘)u + LpL(r�1)f h(x)w

⌘ = q(⇠, ⌘) + P (⇠, ⌘)w

In the above equation P (⇠, ⌘) 2 Rn�r is the vector [Lp⌘1, . . . , Lp⌘n�r]T expressed in ⇠, ⌘ coordinates.

So assuming that LpLifh(x) = 0 for all x and i = 0, . . . , r � 1 we conclude that the first r equations do not

contain w. So the usual linearizing control

u =1

a(�b + v)

yields the ⌘ states unobservable and consequently isolated y from w.

Conversely, let us assume that there exists a control of the form u = ↵(x) + �(x)v that results in disturbancerejection. Using this law yields a closed loop system of the form

x = f(x) + g(x)↵(x) + g(x)�(x)v + p(x)w

y = h(x)

When v = 0, we need the output to be independent from w so that

y = Lf+guh + Lphw

Page 50: Feedback Linearizing Control of Affine Nonlinear Systemslemmon/courses/ee580/lectures/chapter9.pdfm satisfy conditions that allow one to decompose the state space into ”slices”

314 9. FEEDBACK LINEARIZING CONTROL OF AFFINE NONLINEAR SYSTEMS

needs to be independent of w. Therefore Lph(x) = 0. Differentiating the preceding y-equation yields,

LpLif+guh(x) = 0

for 0 i r � 1. Note that

Lf+guh = Lfh + ↵Lgh

so we see that

Lgh = 0, ) Lf+guh = Lfh

Preceeding recursively completes the proof.

The conditions for disturbance decoupling essentially say that the relative degree of the disturbance-to-outputsystem needs to be strictly greater than the relative degree of the unperturbed nonlinear system if we are tofind a control that achieves disturbance decoupling.

9. Concluding Remarks

This chapter examined the use of feedback linearization in the control of nonlinear systems. This geometricapproach to nonlinear control has been extremely influential. The basic references for this material willbe found in [Isi95, NVdS90]. In particular, the sections on distributions, the Frobenius theorem, and localdecompositions are closely drawn from these sources. Many of the examples in this chapter originate in[Kha96] and Prof. Claire Tomlin’s (Stanford) lecture notes for EE222.

The sensitivity of feedback linearization methods to modeling error and disturbance is well documented. Thisis one of the reasons why the constructive methods [KKK95, FK08, SJK12] reviewed in the previous chapterare so important. Effective design of nonlinear control systems may make use of feedback linearizationmethods, but the constructive methods in the preceding chapter are essential tools to ensure the robustness ofthese methods.


Recommended