You are on page 1of 22

Control of Nonlinear Dynamic Systems: Theory and Applications

J. K. Hedrick and A. Girard 2005



62





6 `Controllability and
Observability of
Nonlinear Systems















Controllability for Nonlinear Systems

The Use of Lie Brackets: Definition

Consider two vector fields f(x) and g(x) in
n
.

Then the Lie bracket operation generates a new vector field:

[ ] g
x
f
f
x
g
g f

,

Also, higher order Lie brackets can be defined:
Key points

Nonlinear observability is intimately tied to the Lie derivative. The Lie
derivative is the derivative of a scalar function along a vector field.
Nonlinear controllability is intimately tied to the Lie bracket. The Lie bracket
can be thought of as the derivative of a vector field with respect to another.
References
o Slotine and Li, section 6.2 (easiest)
o Sastry, chapter 11 pages 510-516, section 3.9 and chapter 8
o Isidori, chapter 1 and appendix A (hard)
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

63

[ ] g f g ad
f
, ) , (
1

[ ] [ ] g f f g ad
f
, , ) , (
2


[ ] ) , ( , ) , (
1
g ad f g ad
k
f
k
f



Note: the ad is read adjoint.

Re-writing controllability conditions for linear systems using this notation:

m m
u B u B u B Ax Bu Ax x + + + + = + = ...
2 2 1 1
&
Ax x f = ) ( ,
i i
B x g = ) (

[ ]
i
m
i
i
m
i
i i
u B f x A u AB x A x A x

= =
= + = =
1
2
1
2
, & & &

How this came about

A
x
f
=

, 0 =

x
B
x
g


So for example:

[ ] [ ]
1 1
1
1 1
) (
, , AB B
x
Ax
Ax
x
B
B Ax B f =

= =

If we keep going:

[ ]

= =
+ = + =
m
i
m
i
i i f i i
u B ad x A u B A x A x
1 1
2 3 2 3
, & & &

Notice how this time the minus signs cancel out.


[ ]

= =

+ = + = =
m
i
m
i
i i
n
f
n n
i i
n n
n
n
n
u B ad x A u B A x A
dt
x d
x
1 1
1 1 1 ) (
, ) 1 (

Re-writing the controllability condition:

[ ] [ ] [ ] [ ] [ ]
m
n
f
n
f m f f m
B ad B ad B ad B ad B B C , ,... , ,... , ,... , , ,...,
1
1
1
1 1

=

The condition has not changed just the notation.
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

64
The terms B
1
through B
m
correspond to the B term in the original matrix, the terms with
ad
f
correspond to the AB terms, the terms with ad
f
n-1
correspond to the A
n-1
B terms.


Recap Controllability for Linear Systems

Bu Ax x + = &
[ ] B A AB B C
n 1
| ... | |

=

Local conditions (linear systems)
Bu Ax x + = &

Let u = constant (otherwise no pb, but you get u u & & &, etc)
ABu x A Bu Ax A x + = + =
2
) ( & &

Bu A x A x
n n n 1 ) (
+ =

For linear systems, you get nothing new after the nth derivative because of the Cayley-
Hamilton theorem.


Nonlinear Systems

Assume we have an affine system:

=
+ =
m
i
i i
u x g x f x
1
) ( ) ( &

The general case is much more involved and is given in Hermann and Krener.
If we dont have an affine system, we can sometimes ruse:

) , ( u x f x = &

Let v u u = + &
Select a new state:
(

=
u
x
z and v is my control the system is affine in (z,v), and pick
to be OK.

Theorem

The system defined by:

=
+ =
m
i
i i
u x g x f x
1
) ( ) ( &
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

65

is locally accessible about x
0
if the accessibility distribution C spans n space, where n is
the rank of x and C is defined by:

[ ] [ ] [ ] [ ] [ ] ,... , ,... , ,..., , ,..., , , ,..., ,
2 1 i
k
f i j
k
g j i m
g ad g f g ad g g g g g C
i
=

The g
i
terms are analogous to the B terms, the [g
i
,g
j
] terms are new from having a
nonlinear system, the [f,g
i
] terms correspond to the AB terms, etc

Note: if f(x) = 0 then

=
=
m
i
i i
u x g x
1
) ( & and if in this case C has rank n, then the system is
controllable.


Example: Kinematics of an Axle

x
1
x
2
u
1



Basically, is the yaw angle of the vehicle, and x
1
and x
2
are the Cartesian locations of
the wheels. u
1
is the velocity of the front wheels, in the direction that they are pointing,
and u
2
is the steering velocity.


We define our state vector to be:

(
(
(

2
1
x
x
x

Our dynamics are:
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

66

=
=
=
2
1 2
1 1
cos
sin
u
u x
u x

&
&
&


The system is of the form:

2 2 1 1
) ( u g u g x f x + + = &

f(x) = 0,
(
(
(

=
0
cos
sin
1

g and
(
(
(

=
1
0
0
2
g

Note:

If I linearize a nonlinear system about x
0
and the linearization is controllable, then the
nonlinear system is accessible at x
0
(not true the other way if the linearization is
uncontrollable the nonlinear system may still be locally accessible).

Back to the example:

]] , [ , , [
2 1 2 1
g g g g C =

where
1
2
2
1
2 1
] , [ g
x
g
g
x
g
g g

= and in our case, 0


2
=

x
g


(
(
(

=
(
(
(

(
(
(

=
0
sin
cos
1
0
0
0 0 0
sin 0 0
cos 0 0
] , [
2 1

g g

So
(
(
(

=
0 1 0
sin 0 cos
cos 0 sin


C

C has rank 3 everywhere, so the system is locally accessible everywhere, and f(x)=0 (free
dynamics system) so the system is controllable!

Example 2:

=
=
u x
x x
2
2
2 1
&
&

Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

67

Note: if I had the linear system:

=
=
u x
x x
2
2 1
&
&


(

=
0 0
1 0
A ,
(

=
1
0
B ,
(

=
0
1
AB
(

=
0 1
1 0
C

and the linear system is controllable.


Back to the example 2:

Is the nonlinear system controllable? Answer is NO, because x
1
can only increase.

But lets show it.

In standard form:

(

=
0
2
2
x
f ,
(

=
1
0
g

]] , [ , [ g f g C =

(

=
0
2
] , [
2
x
g f

So
(


=
0 1
2 0
2
x
C

Accessible everywhere except where x
2
=0

Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

68
x
1
x
2
I cant go back



If we tried [f,[f,g]], would we pick up new directions? It turns out they will also be
dependent on x
2
, and the rank will drop at x
2
= 0.


Example 3:

2 1
4 3
4 3
4
3
2
1
1
0
0
0
0
1
0
0
0
0
cos sin
sin cos
u u
x x
x x
x
x
x
x
(
(
(
(

+
(
(
(
(

+
(
(
(
(

+
+
=
(
(
(
(



&
&
&
&


where ) (
2
2
2
1
x x +

The system is of the form:

2 2 1 1
) ( u g u g x f x + + = &

where

(
(
(
(

+
+
=
0
0
cos sin
sin cos
) (
4 3
4 3
x x
x x
x f


,
(
(
(
(

=
0
1
0
0
1
g and
(
(
(
(

=
1
0
0
0
2
g


We have: ]] , [ ], , [ , , [
2 1 2 1
g f g f g g C =

If C has rank 4, then the system is locally accessible. Have fun
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

69


Observability for Nonlinear Systems

Intuition for observability:
From observing the sensor(s) for a finite period of time, can I find the state at previous
times?

Review of Linear Systems

Ax x = & where
n
x
Mx z = where
p
z and p<n

0
) ( x e t x
At
= (linear system)

z(t), 0tT
Can I determine x
0
?

0
) ( x Me t z
At
= where M is pxn, e
AT
is nxn and x
0
is nx1, so z(t) is px1

Using the Cayley-Hamilton theorem:

=
=
1
0
) (
n
k
k
k
At
A t e

Note: the Cayley-Hamilton theorem applies to time-varying matrices as well.

So, I have:

{ }
0
1
1 1 0
) ( ... ) ( ) ( ) ( x MA t MA t M t t z
n
n

+ + + =

So I can solve for x
0
iff the matrix O spans n space, where:

(
(
(
(
(
(

=
1
...
...
n
MA
MA
M
O

This does not carry over to nonlinear systems, so we take a local approach.



Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

70
Local Approach to Observability (Linear Systems)

) (t v Mx z + =
v(t) is the measurement noise, can cause problems.
MAx x M z = = & &
x MA z
2
= & &

x MA z
n n 1 ) 1 (
=

Ox
z
z
n
=
(
(
(

) 1 (
... O must have rank n

Lie Derivatives:

Definition

Let f:
n

n
be a vector field in
n
.
Let h:
n
be a smooth scalar function.

Then the Lie derivative of h with respect to f is:

= =
n
i
i
i
f
f
x
h
f
x
h
f h h L
1
. .

Dimensions

f looks like:
(
(
(

) (
...
...
...
) (
1
x f
x f
n

h looks like: h(x) with x
n
associates a scalar to each point in
n


The Lie derivative looks like:

(
(
(

=
) (
...
...
...
) (
..., ,
1
1
x f
x f
x
h
x
h
h L
n
n
f
L
f
h is a scalar.




Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

71
Conventions:

By definition, h h L
f
= ) (
0


We can also define higher-order Lie derivatives:

f h L
x
h L
f f
)]. ( [ ) (
1 2

= etc


Note: if ) (x f x = & , then ) ( . .
1
h L f
x
h
t
x
x
h
h
f
=

=
&


And ) ( )]. ( [
2 1
h L f h L
x
h
f f
=

=
& &


Etc so ) (
) (
h L h
k
f
k
=


Use of Lie Derivative Notation for Linear Systems

Ax x = & so f(x)=Ax

x M z
i i
= [ ] p i , 1 , M
i
is 1xn

) ( ) (
0
i f i i
h L x h z = =

) (
1
i f i
h L z = &

) (
) (
i
k
f
k
i
h L z =

Define
(
(
(

=
(
(
(

=

x A M x A M
x M x M
h L h L
h L h L
G
n
p
n
p
p
n
f
n
f
p f f
1 1
1
1
1
1
1
0
1
0
...
... ... ...
...
) ( ... ) (
... ... ...
) ( ... ) (


Now, define a gradient operator:

O
h dL h dL
h dL h dL
dG
p
n
f
n
f
p f f
=
(
(
(

=

) ( ... ) (
... ... ...
) ( ... ) (
1
1
1
0
1
0


Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

72
O must have rank n for the system to be observable.


Nonlinear Systems

T
p
x h x h x h x h z
u x f x
)] ( ),..., ( ), ( [ ) (
) , (
2 1
= =
= &


Theorem:

Let G denote the set of all finite linear combinations of the Lie derivatives of h
1
,,h
p

with respect to f for various values of u = constant. Let dG denote the set of all their
gradients. If we can find n linearly independent vectors within dG, then the system is
locally observable.


The system is locally observable, that is distinguishable at a point x
0
if there exists a
neighborhood of x
0
such that in this neighborhood,

) ( ) (
1 0 1 0
x z x z x x

if the sensor readings are different, the states are different


Case of a single measurement:

) (
) , (
x h z
u x f x
=
= &


Look at the derivatives of z:

) (
0
h L h z
f
= =

) (
1
h L h z
f
= =
&
&



) (
1 ) 1 (
h L z
n
f
n
=

Let:
(
(
(

) (
...
) (
) (
1
0
h L
h L
x l
n
f
f

Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

73

Expand in a first-order series about x
0
for u = u
0


hot x x
x
u x l
u x l u x l
x x
+

+
=
) (
) , (
) , ( ) , (
0
0
0 0 0
0


Then
0
) , (
0
x x
x
u x l
O dG
=

= = must have rank n



Example:

=
=
+ + =
1
2
1 2
2 2
2
1
1
) exp(
2
x z
x x
x x
x
x
&
&



The question we are trying to answer is: from observation, does z contain enough
information on x
1
and x
2
?
Since x
1
= z,
2
) exp(
2
2 2
z
z x x = + & (by substitution in the first line)
If z = x
2
, then the system would not be distinguishable, since
2
1
x z = &

But if you take one more derivative you can get a single valued expression since
3
1
x has
only one solution.
2
1
x z = &
|
|
.
|

\
|
+ + = =
2 2
2
1
1 1 1
) exp(
2
2 2 x x
x
x x x z & &

Rank test for z=h= x
1


(
(

+ +
=
(

=
(

=
2 2
2
1
1
1
1
) exp(
2
) ( x x
x
x
x
x
h L
h
G
f
&


(

+
= =
1
0 1
2
1
x
e x
dG O has rank 2 everywhere

the system is locally observable everywhere.
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

74
SUMMARY: Controllability and Observability for Nonlinear Systems

Controllability

+ =
m
i i
u x g x f x
1
) ( ) ( &

The system is locally accessible about a point x
0
if and only if

C = [ g
1
,...,g
m
, [g
i
, g
j
],...[ad
gi
k
,g
j
],..., [f,g
i
],..., [ad
f
k
,g
i
],...]

has rank n where n is the rank of x. C is the accessibility distribution.

If the system has the form:

=
m
i i
u x g x
1
) ( &

If f(x) = 0 and C has rank n, then the system is controllable.


Observability

) , ( u x f x= &
z=h(x)


Two states x
0
and x
1
are distinguishable if there exists an input function u* such that:
z(x
0
) z(x
1
)

The system is locally observable at x
0
if there exists a neighbourhood of x
0
such that
every x in that neighbourhood other than x
0
is distinguishable from x
0.


A test for local observability is that:

0
*) , (
*) , (
0
0
x x
x
u x l
u x O
=


must have rank n, where n is the rank of x and

(
(
(
(

) (
...
...
...
) (
*) , (
1
1
1
0
0
h L
h L
u x l
n
f
f


For a px1 vector,
z = [h
1
, ..., h
p
]
T
,
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

75

(
(
(
(
(
(

) (
...
) (
...
) (
...
) (
*) , (
1
1
1
0
1
0
0
p
n
f
n
f
p
f
f
h dL
h dL
h dL
h dL
u x O


Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

76



LINEAR SYSTEMS

Bu Ax x + = &



NONLINEAR SYSTEMS
) , ( u x f x= &

CONTROLLABILITY
AND
ACCESSIBILITY

Intuition: the system is
controllable you can get
anywhere you want in a finite
amount of time.


LINEAR TIME INVARIANT
SYSTEMS

Bu Ax x + = &

CONTROLLABILITY

The system is controllable if:
C = [ B AB ... A
n-1
B ]
has rank n, where n is the rank of
x.

AFFINE SYSTEMS

+ =
m
i i
u x g x f x
1
) ( ) ( &

ACCESSIBILITY

The system is locally accessible
about a point x
0
if and only if

C = [ g
1
,...,g
m
, [g
i
, g
j
],...
[ad
gi
k
,g
j
],..., [f,g
i
],..., [ad
f
k
,g
i
],...]

has rank n where n is the rank of
x. C is the accessibility
distribution.

CONTROLLABILITY

=
m
i i
u x g x
1
) ( &

If f(x) = 0 and C has rank n, then
the system is controllable.

Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

77

OBSERVABILITY
AND DISTINGUISHABILITY

Intuition: the system is observable
from observing the sensor
measurements for a finite period
of time, I can obtain the state at
previous times.


Ax x= &
z=Mx

x has rank n
z has rank p
p<n

OBSERVABILITY

The system is observable if:

(
(
(

=
1
...
...
n
MA
MA
M
O

has rank n, where n is the rank of
x.







) , ( u x f x= &
z=h(x)

DISTINGUISHABILITY

Two states x
0
and x
1
are
distinguishable if there exists an
input function u* such that:
z(x
0
) z(x
1
)

LOCAL OBSERVABILITY

The system is locally observable
at x
0
if there exists a
neighbourhood of x
0
such that
every x in that neighbourhood
other than x
0
is distinguishable
from x
0.


A test for local observability is
that:

0
*) , (
*) , (
0
0
x x
x
u x l
u x O
=


must have rank n, where n is the
rank of x and

(
(
(
(

) (
...
...
...
) (
*) , (
1
1
1
0
0
h L
h L
u x l
n
f
f


For a px1 vector,
z = [h
1
, ..., h
p
]
T
,

(
(
(
(
(
(

) (
...
) (
...
) (
...
) (
*) , (
1
1
1
0
1
0
0
p
n
f
n
f
p
f
f
h dL
h dL
h dL
h dL
u x O




Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

78
Remarks

In general the conditions for nonlinear systems are weaker than those for linear
systems. Properties for nonlinear systems tend to be local.


What to do for nonlinear controllability if the system is not in affine form?

) , ( u x f x= &

Let v u u = + &

[ ]
u
x
z= , v is my control the system is now affine in (z,v) and pick to be OK.


Marius Sophus Lie

Born: 17 Dec 1842 in Nordfjordeide, Norway
Died: 18 Feb 1899 in Kristiania (now Oslo), Norway




The Lie Derivative and Observability

Definition

Let f:
n

n
be a vector field in
n
.
Let h:
n
be a smooth scalar function.

Then the Lie derivative of h with respect to f is:

f
x
h
f h h L
f
. .

= =

Dimensions

Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

79
f looks like:
(
(
(

) (
...
...
...
) (
1
x f
x f
n

h looks like: h(x) with x
n
associates a scalar to each point in
n


The Lie derivative looks like:

(
(
(

=
) (
...
...
...
) (
..., ,
1
1
x f
x f
x
h
x
h
h L
n
n
f
L
f
h is a scalar.




Physically (time for pictures!)

Picture of f
f associates an n-dimensional vector to each point in
n


In
2
:

x
1
x
2
x
f(x)
f
1
(x)
f
2
(x)


For example, let [ ]
(

=
2
1
2 0
0 1
) (
x
x
x f
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

80
x
1
x
2

Ax
t=100
(x
0
)

f
t
(x
0
) = flow along the vector field for time t, starting at x
0

tangent to the phase plane plot at every single point


Picture of h

For example, in
2
, pick h to be the distance to the origin:

2
2
2
1
2
) ( x x x x h + = =

x
1
x
2
h = 0
h = 1
h = 2



Lie derivative picture

Using this example:

Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

81
[ ]
2 0
0 1
2
2
1
2

=
x
x
x
x
h L
f


x
1
x
2
L
f
h
Rate at which h, the distance to
the origin, changes as we flow
along the vector field Ax



So, the Lie derivative gives the rate of change in a scalar function h as one flows
along the vector field f.


In a control systems context:

) (x f x= & x
n
f:
n

n

y=h(x) y

h:
n


t
h
t
x
t
x
x
h
x
h
x
x
x
h
x
h
x f
x f
x
h
x
h
h L
n
n
n
n
n
n
f

=
(
(
(
(

=
(
(

=
(
(

= ... ... ... ...


) (
...
) (
...
1
1
1
1
1
1
&
&

along the flow of f


How does this tie into observability?

Imagine: {
Cx y
Ax x
=
= &
and we can only see y, a scalar, and we wish to find x
n


Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

82
y = Cx
y = Cx = CAx

y
(n-1)
= CA
n-1
x

and solve for x (n equations)
if [C CA ... CA
n-1
] has rank n, we have n independent equations in n
variables OK

Using the Lie derivative

f(x) = Ax, h(x) = Cx

CAx Ax Cx
x
h L
f
=

= ) (

x CA h L
n n
f
1 1
=

and by convention, C h L
f
=
0




The Lie Bracket and Controllability

Definition

Let f:
n

n
be a smooth vector field in
n
.
Let g:
n

n
be a smooth vector field in
n
.

Then the Lie bracket of f and g is a third-order vector field given by:

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

=

Dimensions

f looks like:
(
(
(

) (
...
...
...
) (
1
x f
x f
n
, g also looks like:
(
(
(

) (
...
...
...
) (
1
x g
x g
n


Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard 2005

83
[ ]
(
(
(

(
(
(
(
(
(
(

(
(
(

(
(
(
(
(
(
(

=
) (
...
...
...
) (
... ... ...
... ...
... ...
... ...
... ... ...
) (
...
...
...
) (
... ... ...
... ...
... ...
... ...
... ... ...
,
1
1
1
1
1
1
1
1
1
1
x g
x g
x
f
x
f
x
f
x
f
x f
x f
x
g
x
g
x
g
x
g
g f
n
n
n n
n
n
n
n n
n


So [f,g] is a vector field.



How does this tie into controllability?

Consider:
2 2 1 1
) ( ) ( u x g u x g x + = &
u
1
, u
2
are scalar inputs

x
3



(
(

=
) (
) (
) (
13
12
11
1
x g
x g
x g
g ,
(
(

=
) (
) (
) (
23
22
21
2
x g
x g
x g
g

What directions can we steer x if we start at some point x
0
?

Clearly, we can move anywhere in the span of {g
1
(x
0
),g
2
(x
0
)}.

Lets say that:
(

=
0
*
*
) (
0 1
x g ,
(

=
0
*
*
) (
0 2
x g

Can we move in the x
3
direction?

The directions that we are allowed to move in by infinitesimally small changes
are [g
1
,g
2
].

You might also like