Controllability and Observability of Nonlinear Systems: Key Points
Controllability and Observability of Nonlinear Systems: Key Points
6 `Controllability and
Observability of
Nonlinear Systems
Key points
[ f , g ] ≡ ∂g f −
∂f
g
∂x ∂x
62
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
(ad 1f , g ) ≡ [ f , g ]
(ad 2f , g ) ≡ [ f , [ f , g ]]
…
[
(ad , g ) ≡ f , (ad kf −1 , g )
k
f ]
Note: the “ad” is read “adjoint”.
m m
&x& = Ax& = A 2 x + ∑ ABi u i = A 2 x − ∑ [ f , Bi ]u i
i =1 i =1
∂f ∂g ∂B
= A, = =0
∂x ∂x ∂x
So for example:
If we keep going:
[ ]
m m
&x&& = A 3 x + ∑ A 2 Bi u i = A 3 x + ∑ ad 2f , Bi u i
i =1 i =1
d nx
[ ]
m m
x ( n) =
dt n
= A n
x + ∑
i =1
A n −1
B u
i i = A n
x + ( −1) n −1
∑
i =1
ad nf −1 , Bi u i
[ [ ] [ ] [ ] [
C = B1 ,..., Bm , ad f , B1 ,... ad f , Bm ,... ad nf −1 , B1 ,... ad nf −1 , Bm ]]
The condition has not changed – just the notation.
63
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
The terms B1 through Bm correspond to the B term in the original matrix, the terms with
adf correspond to the AB terms, the terms with adfn-1 correspond to the An-1B terms.
x& = Ax + Bu
[
C = B | AB | ... | A n −1 B ]
Local conditions (linear systems)
x& = Ax + Bu
Let u = constant (otherwise no pb, but you get u& , u&& etc…)
&x& = A( Ax + Bu ) = A 2 x + ABu
…
x ( n ) = A n x + A n −1 Bu
For linear systems, you get nothing new after the nth derivative because of the Cayley-
Hamilton theorem.
Nonlinear Systems
m
x& = f ( x) + ∑ g i ( x)u i
i =1
The general case is much more involved and is given in Hermann and Krener.
If we don’t have an affine system, we can sometimes ruse:
x& = f ( x, u )
Let τu& + u = v
x
Select a new state: z = and v is my control ⇒ the system is affine in (z,v), and pick τ
u
to be OK.
Theorem
m
x& = f ( x) + ∑ g i ( x)u i
i =1
64
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
[ [ ] [ ] [ ] ]
C = g1 , g 2 ,..., g m , g i , g j ,..., ad g i , g j ,..., [ f , g i ],... ad kf , g i ,...
k
The gi terms are analogous to the B terms, the [gi,gj] terms are new from having a
nonlinear system, the [f,gi] terms correspond to the AB terms, etc…
m
Note: if f(x) = 0 then x& = ∑ g i ( x)u i and if in this case C has rank n, then the system is
i =1
controllable.
x2
u1
x1
Basically, ψ is the yaw angle of the vehicle, and x1 and x2 are the Cartesian locations of
the wheels. u1 is the velocity of the front wheels, in the direction that they are pointing,
and u2 is the steering velocity.
x1
x = x 2
ψ
65
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
x& = f ( x) + g1u1 + g 2 u 2
sin ψ 0
f(x) = 0, g1 = cosψ and g 2 = 0
0 1
Note:
If I linearize a nonlinear system about x0 and the linearization is controllable, then the
nonlinear system is accessible at x0 (not true the other way – if the linearization is
uncontrollable the nonlinear system may still be locally accessible).
C = [ g1 , g 2 , [ g 1 , g 2 ]]
∂g1 ∂g ∂g 2
where [ g1 , g 2 ] = g 2 − 2 g 1 and in our case, =0
∂x ∂x ∂x
sin ψ 0 cosψ
So C = cosψ 0 − sin ψ
0 1 0
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:
x&1 = x 22
x& 2 = u
66
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
x&1 = x 2
x& 2 = u
0 1 0 1 0 1
A= , B = , AB = ⇒ C =
0 0 1 0 1 0
Is the nonlinear system controllable? Answer is NO, because x1 can only increase.
In standard form:
x 2 0
f = 2 , g =
0 1
C = [ g , [ f , g ]]
− 2 x 2
[ f , g] =
0
0 − 2 x 2
So C =
1 0
67
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
x2
I can’t go back
x1
If we tried [f,[f,g]], would we pick up new directions? It turns out they will also be
dependent on x2, and the rank will drop at x2 = 0.
Example 3:
where θ ≡ θ ( x12 + x 22 )
x& = f ( x) + g1u1 + g 2 u 2
where
We have: C = [ g1 , g 2 , [ f , g1 ], [ f , g 2 ]]
68
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
x& = Ax where x ∈ ℜ n
z = Mx where z ∈ ℜ p and p<n
z(t), 0≤t≤T
Can I determine x0?
n −1
e At
= ∑ α k (t ) A k
k =0
So, I have:
{ }
z (t ) = α 0 (t ) M + α 1 (t ) MA + ... + α n −1 (t ) MA n −1 x0
M
MA
O = ...
...
MA n −1
This does not carry over to nonlinear systems, so we take a local approach.
69
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
z = Mx + v(t )
v(t) is the measurement noise, can cause problems.
z& = Mx& = MAx
&z& = MA 2 x
…
( n −1)
z = MA n −1 x
z
... = Ox ⇒ O must have rank n
z ( n −1)
Lie Derivatives:
Definition
∂h n
∂h
L f h = ∇h. f = .f = ∑ fi
∂x i =1 ∂x i
Dimensions
f1 (x)
...
f looks like: ...
...
f n (x)
h looks like: h(x) with x ∈ℜn ⇒ associates a scalar to each point in ℜn
f1 (x)
...
L f h= ∂h ,..., ∂h ... ⇒ Lfh is a scalar.
∂x1 ∂xn ...
f n (x)
70
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
Conventions:
∂ 1
L2f (h) = [ L f (h)]. f etc…
∂x
∂h ∂x ∂h
Note: if x& = f (x) , then h& = . = . f = L1f (h)
∂x ∂t ∂x
∂
And h&& = [ L1f (h)]. f = L2f (h)
∂x
x& = Ax so f(x)=Ax
zi = M i x i ∈ [1, p ] , Mi is 1xn
⇒ z i = hi ( x) = L0f (hi )
71
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
Nonlinear Systems
x& = f ( x, u )
z = h( x) = [h1 ( x), h2 ( x),..., h p ( x)]T
Theorem:
Let G denote the set of all finite linear combinations of the Lie derivatives of h1,…,hp
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.
x0 ≠ x1 ⇒ z ( x 0 ) ≠ z ( x1 )
“if the sensor readings are different, the states are different”
x& = f ( x, u )
z = h( x )
z = h = L0f (h)
L0f (h)
Let: l ( x) ≡ ...
Lnf−1 (h)
72
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
∂l ( x, u 0 )
l ( x, u 0 ) ≈ l ( x 0 , u 0 ) + ( x − x0 ) + hot
∂x x = x0
∂l ( x, u 0 )
Then dG = O = must have rank n
∂x x = x0
Example:
x12
x
&
1 = + exp( x 2 ) + x 2
2
x& 2 = x12
z = x1
The question we are trying to answer is: “from observation, does z contain enough
information on x1 and x2?”
z2
Since x1 = z, exp( x 2 ) + x 2 = z& − (by substitution in the first line)
2
If z = x2 , then the system would not be distinguishable, since z& = x12
But if you take one more derivative you can get a single valued expression since x13 has
only one solution.
z& = x12
x2
z& = 2 x1 x&1 = 2 x1 1 + exp( x 2 ) + x 2
2
h x1 2
x1
G= = & = x1 + exp( x ) + x
L f ( h ) x1 2 2 2
1 0
O = dG = has rank 2 everywhere
x1 e + 1
x2
73
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
Controllability
m
x& = f(x)+∑ gi (x)ui
1
m
If the system has the form: x& =∑ gi (x)ui
1
Observability
x=
& f(x,u)
z=h(x)
Two states x0 and x1 are distinguishable if there exists an input function u* such that:
z(x0) ≠ z(x1)
∂l(x0,u*)
O(x0,u*)≡
∂x x = x
0
L0f (h1 )
...
l(x0,u*)≡ ...
n −...
L f 1(h1 )
74
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
dL0f (h1 )
...
dL0f (hp)
O(x0,u*)≡ ...
dLnf−1(h1 )
...
dLnf−1(hp)
75
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
x& = Ax+ Bu x=
& f(x,u)
AFFINE SYSTEMS
LINEAR TIME INVARIANT
CONTROLLABILITY SYSTEMS m
AND x& = f(x)+∑ gi (x)ui
ACCESSIBILITY x& = Ax+ Bu 1
CONTROLLABILITY
m
x& =∑ gi (x)ui
1
76
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
x=
& Ax x=
& f(x,u)
OBSERVABILITY z=Mx z=h(x)
AND DISTINGUISHABILITY
x has rank n
Intuition: the system is observable z has rank p DISTINGUISHABILITY
⇒ from observing the sensor p<n
measurements for a finite period
of time, I can obtain the state at Two states x0 and x1 are
previous times. distinguishable if there exists an
OBSERVABILITY input function u* such that:
z(x0) ≠ z(x1)
The system is observable if:
M LOCAL OBSERVABILITY
MA
O= ...
... The system is locally observable
MAn −1 at x0 if there exists a
neighbourhood of x0 such that
every x in that neighbourhood
has rank n, where n is the rank of
other than x0 is distinguishable
x.
from x0.
∂l(x0,u*)
O(x0,u*)≡
∂x x = x
0
L0f (h1 )
...
l(x0,u*)≡ ...
n −...
L f 1(h1 )
dL0f (h1 )
...
dL0f (hp)
O(x0,u*)≡ ...
dLnf−1(h1 )
...
dLnf−1(hp)
77
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
Remarks
In general the conditions for nonlinear systems are weaker than those for linear
systems. Properties for nonlinear systems tend to be local.
x=
& f(x,u)
Let τu& +u =v
[]
⇒ z= ux , v is my control ⇒ the system is now affine in (z,v) and pick τ to be OK.
Definition
L f h=∇h.f = ∂h .f
∂x
Dimensions
78
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
f1 (x)
...
f looks like: ...
...
f n (x)
h looks like: h(x) with x ∈ℜn ⇒ associates a scalar to each point in ℜn
f1 (x)
∂h ∂h ...
L f h= ,..., ... ⇒ Lfh is a scalar.
∂x1 ∂xn ...
f n (x)
Picture of f
f associates an n-dimensional vector to each point in ℜn
In ℜ2 :
x2
f2(x) f(x)
x
x1
f1(x)
[ ]
For example, let f(x)= −01−02 x1
x2
79
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
x2
ΦAxt=100(x0)
x1
Picture of h
x2
h=0
x1
h=1
h=2
80
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
L f h=
∂x1 ∂x2
[ ]
∂ x 2 ∂ x 2 −1 0
0 −2
Lf h
x2 Rate at which h, the distance to
the origin, changes as we flow
along the vector field Ax
x1
So, the Lie derivative gives the rate of change in a scalar function h as one flows
along the vector field f.
{
Imagine: xy& = Ax
=Cx and we can only “see” y, a scalar, and we wish to find x∈ℜ
n
81
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
y = Cx
y’ = Cx’ = CAx
…
y(n-1) = CAn-1 x
L f h= ∂ (Cx)Ax=CAx
∂x
…
Lnf−1h=CAn −1x
Definition
Then the Lie bracket of f and g is a third-order vector field given by:
[ f, g ]= ∂∂gx .f − ∂∂fx .g
Dimensions
f1 (x) g1 (x)
... ...
f looks like: ... , g also looks like: ...
... ...
f n (x) gn(x)
82
Control of Nonlinear Dynamic Systems: Theory and Applications
J. K. Hedrick and A. Girard © 2005
x∈ℜ3
g11(x) g21(x)
g1 = g12(x) , g2 = g22(x)
g13(x) g23(x)
* *
Let’s say that: g1 (x0 )= * , g2(x0 )= *
0 0
83