Kalman`s controllability matrix

Chap. 3. Controlled Systems, Controllability
1. Controllability of Linear Systems
1.1. Kalman’s Criterion
Consider the linear system
ẋ = Ax + Bu
where x ∈ Rn : state vector and u ∈ Rm : input vector.
A : of size n × n and B : of size n × m.
Definition The pair (A, B) is controllable if, given a duration T > 0
and two arbitrary points x0, xT ∈ Rn, there exists a piecewise continuous function t 7→ ū(t) from [0, T ] to Rm, such that the integral
curve x̄(t) generated by ū with x̄(0) = x0, satisfies x̄(T ) = xT .
In other words
eAT x0 +
Z T
0
eA(T −t)B ū(t)dt = xT .
This property depends only on A and B :
Theorem (Kalman) A necessary and sufficient condition for (A, B)
to be controllable is
rank C = rank B|AB| · · · |An−1B = n.
C is called Kalman’s controllability matrix (of size n × nm).
Proof
Without loss of generality, we can consider that x0 = 0 by changing
xT in yT = xT − eAT x0 since
Z T
eA(T −t)B ū(t)dt = yT = xT − eAT x0.
0
Consider the matrices
C(t) = eA(T −t)B,
G=
where C 0 : transposed matrix of C.
We prove 2 lemmas.
Z T
0
C(t)C 0(t)dt
Lemma 1 A necessary and sufficient condition for (A, B) to be
controllable is that G is invertible.
Assume G invertible. It suffices to set :
0(T −t) −1
0
A
ū(t) = B e
G yT .
Thus
Z T
0
eA(T −t)B ū(t)dt =
Z T
0(T −t) −1
A(T
−t)
0
A
e
BB e
G yT dt
0
−1
= GG yT = yT
and ū generates the required trajectory.
The converse is immediate.
Lemma 2 Invertibility of G is equivalent to rank C = n.
By contradiction, if G isn’t invertible, ∃v ∈ Rn, v 6= 0, such that
v 0G = 0. Thus
Z T
v 0Gv =
v 0C(t)C 0(t)vdt = 0.
0
Since v →
7 v 0C(t)C 0(t)v : quadratic form ≥ 0,
RT 0
0(t)vdt = 0 implies v 0C(t)C 0(t)v = 0 ∀t ∈ [0, T ].
v
C(t)C
0
Thus : v 0C(t) = 0 ∀t ∈ [0; T ]. But


X (T − t)i
B = 0
v 0C(t) = v 0eA(T −t)B = v 0 I +
Ai
i!
i≥1
implies that v 0B = 0, v 0AiB = 0 pour tout i ≥ 1 or v 0C = 0 with
v 6= 0, thus :
rank C < n.
Conversely, if rank C < n, ∃v 6= 0 such that
v 0C = 0.
Thus, according to what precedes, v 0AiB = 0 for i = 0, . . . , n − 1.
By Cayley-Hamilton’ Theorem, An+i, i ≥ 0, is a linear combination
of the Aj ’s, j = 1, . . . , n − 1.
Thus v 0AiB = 0, ∀i ≥ 0 or v 0G = 0, which proves the Theorem.
Examples
ẋ1 = x2 , x˙2 = u
0 1
0
,
,A=
is controllable : B =
0
0
1
0 1
and rank C = 2.
C=
1 0
ẋ1 = u , x˙2 = u
1
0 0
isn’t controllable : B =
,A=
,
1
0 0
1 0
C=
and rank C = 1.
1 0
Note : ẋ1 − ẋ2 : 0, or x1 − x2 = Cste : relation between states
independent of u.
1.2. Controllability Canonical Form
Définition Two systems
ẋ = Ax + Bu ,
ż = F z + Gv
are said equivalent by change of coordinates and feedback (we note
(A, B) ∼ (F, G)) iff there exist invertible matrices M and L and a
matrix K such that
ẋ = Ax + Bu
=⇒ ż = F z + Gv
z = M x, v = Kx + Lu
and conversely.
M : change of coordinates, invertible of size n × n, and K and L :
feedback gains, with L invertible of size m × m and K of size m × n.
Changes of coordinates preserve the state dimension and (non degenerate) feedbacks preserve the input dimension.
The relation ∼ is an equivalence relation :
– reflexive : (A, B) ∼ (A, B) (M = In, K = 0 and L = Im)
– symmetric : x = M −1z and u = −L−1KM −1z + L−1v
– transitive : if (A, B) ∼ (F, G) and (F, G) ∼ (H, J), z = M x, v =
Kx + Lu imply ż = F z + Gv and s = T z, w = N z + P v imply
ṡ = Hs + Jw. Thus s = T M x, w = (N M + P K)x + P Lu.
Note that
F = M (A − BL−1K)M −1 ,
G = M BL−1.
The Single Input Case
ẋ = Ax + bu
with (A, b) controllable :
rank C = rank
b Ab . . . An−1b
= n.
One can construct the matrices M , K and L that transform the system
in its canonical form,
ż = F z + gv


 
0 1 0 ... 0
0
0 0 1
0
0


 
.
. . . . . .  , g =  .. 
.
F =


 
0 0 0
0
1
0 0 0 ... 0
1
or
ż1 = z2, . . . , żn−1 = zn, żn = v.
The Multi Input Case (m > 1) :
ẋ = Ax + Bu ,
B = b1 . . . b n .
The controllability matrix
C=
b1 Ab1 . . . An−1b1 . . . bm Abm . . . An−1bm
has rank n and one can construct a sequence of integers n1, . . . , nm
called controllability indices such that
n1 + . . . + nm = n
with
C=
b1 Ab1 . . . An1−1b1 . . . bm Abm . . . Anm−1bm
of size n × n, invertible.
The controllability indices n1, . . . , nm exist for all controllable linear
systems, are defined up to permutation and are invariant by change
of coordinates and feedback.
Theorem (Brunovsky) : Every linear system with n states and m
inputs is equivalent by change of coordinates and feedback to the
canonical form
F = diag{F1, . . . , Fm} ,
G = diag{g1, . . . , gm}
where each pair Fi, gi is given by


 
0 1 0 ... 0
0
0 0 1

0
0


 
.
.
.
. . . .  , gi =  ..  ,
.
Fi = 


 
0 0 0
0
1
0 0 0 ... 0
1
i = 1, . . . , m
with Fi of size ni × ni and gi of size ni × 1.
Consequences : trajectory planning, feedback design.
1.3. Trajectory Planning
ẋ = Ax + bu
n states, 1 input, controllable.
System equivalent to ż = F z + gv with z = M x, v = Kx + Lu.
We want to start from x(0) = x0 at t = 0 with u(0) = u0, and
arrive at x(T ) = xT at t = T with u(T ) = uT .
We translate these conditions on z and v :
z(0) = M x0, v(0) = Kx0 + Lu0
z(T ) = M xT , v(T ) = KxT + LuT
Setting y = z1, we have
y (i) = zi+1,
i = 0, . . . , n − 1,
y (n) = v.
The initial and final conditions are interpreted as conditions on the
successive derivatives of y up to order n at times 0 and T .
Given a curve t ∈ [0, T ] 7→ yref (t) ∈ R, of class C n , satisfying the
initial and final conditions.
All the other system variables may be obtained by differentiation of
yref , and without integrating the system’s equations.
(n)
We have vref = yref and uref = −L−1KM −1zref + L−1vref , with
(n−1)
zref = (yref , ẏref , . . . , yref ).
Accordingly xref = M −1zref .
The input uref exactly generates ẋref = Axref + buref .
The previous y-trajectory may be obtained by polynomial interpolation :
yref (t) =
2n+1
X
i=0
i
t
.
ai
T
with a0, . . . , a2n+1 computed from the successive derivatives of yref
at times 0 and T :
i−k
2n+1
X
1
t
(k)
yref (t) = k
i(i − 1) · · · (i − k + 1)ai
T
T
i=k
At t = 0 :
yref (0) = a0
k!
(k)
yref (0) = k ak , k = 1, . . . , n − 1,
T
n!
vref (0) = n an
T
and at t = T :
yref (T ) =
1
(k)
yref (T ) = k
T
2n+1
X
i=k
2n+1
X
ai,
i=0
i!
ai, k = 1, . . . , n − 1,
(i − k)!
1
vref (T ) = n
T
2n+1
X
i=n
i!
ai
(i − n)!
Thus
T k (k)
Tn
yref (0) , k = 1, . . . , n − 1, an =
vref (0).
a0 = yref (0) , ak =
k!
n!


1
1
...
1

 n+1

n
+
2
2n
+
1

 an+1
 (n + 1)n (n + 2)(n + 1)
(2n + 1)2n 

  .. 
..
..



 a2n+1
(n+2)!
(2n+1)!
(n + 1)!
.
.
.
2 
(n+1)! P

n
yref (T ) − i=0 ai
..




P

(k)
i! a 
=  T k yref (T ) − ni=k (i−k)!
i


..


T nvref (T ) − n!an
1.4. Trajectory Tracking, Pole Placement
Assume that the state x is measured at every time.
We want to follow the reference trajectory yref , the system being
perturbed by non modelled disturbances. Note e = y − yref the deviation between the measured trajectory and its reference. We have
e(n) = v − vref .
Pn−1
Note v − vref = − i=0 Kie(i), the gains Ki being arbitrary. Thus
e(n) = −
n−1
X
Kie(i)
i=0
or




0
1
0
.
.
.
0


e


ė
0
0
1
0

  ė 
.
.
... ...
 . .
 . = .

 . 
(n)
 0

0
0
1
e
e(n−1)
−K0 −K1 −K2 . . . −Kn−1
the gains Ki are the coefficients of the characteristic polynomial of
the closed-loop matrix A + BK.
Theorem
If the system ẋ = Ax+Bu is controllable, the eigenvalues of A+BK
may be placed arbitrarily in the complex plane by a suitable feedback
u = Kx.
Corollary
A controllable linear system is stabilizable and, by state feedback, all
its characteristic exponents can be arbitrarily chosen.
2. First Order Controllability of Nonlinear
Systems
Consider the nonlinear system
ẋ = f (x, u)
with x ∈ X, n-dimensional manifold, and u ∈ Rm.
Its tangent linear system around the equilibrium point (x̄, ū) is given
by
ξ˙ = Aξ + Bv
∂f
with A = ∂f
(x̄,
ū),
B
=
∂x
∂u (x̄, ū).
Definition We say that a nonlinear system is first order controllable around an equilibrium point (x̄, ū) if its tangent linear system at (x̄, ū) is controllable, i.e. iff rank C = n, with C = B|AB| · · · |An−1B .
Definition We say that a nonlinear system is locally controllable
around an equilibrium point (x̄, ū) if :
for all ε > 0, there exists η > 0 such that for every pair of points
(x0, x1) ∈ Rn × Rn satisfying kx0 − x̄k < η and kx1 − x̄k < η, there
exists a piecewise continuous control ũ on [0, ε] such that kũ(t)k < ε
∀t ∈ [0, ε] and Xε(x0, ũ) = x1, where Xε(x0, ũ) is the integral curve
at time ε, generated from x0 at time 0 with the control ũ.
Theorem If a nonlinear system is first-order controllable at the equilibrium point (x̄, ū), it is locally controllable at (x̄, ū).
Remark
The scalar system : ẋ = u3 is locally controllable but not first-order
controllable.
To join x0 and x1 in duration T = ε, x0 and x1 arbitrarily chosen
close to 0, one can use the motion planning approach :
2 t
t
x(t) = x0 + (x1 − x0)
3−2 .
ε
ε
1
1 x −x t 3
t
1
0
3
.
Thus u(t) = ẋ(t) = 6
ε
ε 1−ε
4
ε
One easily checks that if |x0| < η and |x1| < η with η < 3 then
|u(t)| < ε, which proves the local controllability. On the contrary, at
the equilibrium point (0, 0), the tangent linear system is ẋ = 0, and is
indeed not first-order controllable.
3. Local Controllability and Lie Brackets
For simplicity’s sake, the system is assumed affine in the control, i.e.
ẋ = f0(x) +
m
X
uifi(x)
i=1
with f0(0) = 0, ((x̄, ū) = (0, 0) is an equilibrium point).
From the vector fields f0, . . . , fm, we construct the sequence of distributions :
D0 = span{f1, . . . , fm} , Di+1 = [f0, Di] + Di ,
where Di is the involutive closure of the distribution Di.
i≥1
Proposition 3.1 The sequence of distributions Di is non decreasing,
i.e. Di ⊂ Di+1 for all i, and there exists an integer k ∗ and an involutive distribution D∗ such that Dk∗ = Dk∗+r = D∗ for all r ≥ 0.
Moreover, D∗ enjoys the two following properties :
(i) span{f1, . . . , fm} ⊂ D∗
(ii) [f0, D∗] ⊂ D∗.
Proof
Di ⊂ [f0, Di] + Di = Di+1 ⊂ Di+1.
∗
∗
Thus, there exists a largest D , with D = D∗. But :
rank Di+1 ≥ rank Di + 1 for small i = 0, 1, . . ..
thus, there exists k ∗ ≤ n such that Dk∗ = Dk∗+r = D∗.
Moreover, D0 ⊂ D∗ : (i),
and D∗ = [f0, D∗] + D∗ implies [f0, D∗] ⊂ D∗ : (ii).
Proposition 3.2 Let D be involutive with constant rank equal to k in
an open U , satisfying (ii). There exists a diffeomorphism ϕ such that,
if we note :
ξi = ϕi(x), i = 1, . . . , k
ζj = ϕk+j (x), j = 1, . . . , n − k
we have :
k
n−k
X
X
∂
∂
ϕ∗f0(ξ, ζ) =
γi(ξ, ζ)
+
γk+i(ζ)
∂ξi
∂ζi
i=1
i=1
where the γi’s are C ∞ functions.
Proof We have ϕ∗f0(ξ, ζ) =
k
X
i=1
∂
γi(ξ, ζ)
+
∂ξi
n−k
X
∂
γk+i(ξ, ζ) .
∂ζi
i=1
But, by Frobenius’ Theorem, D = span{ ∂ξ∂ , . . . , ∂ξ∂ }.
1
k
∂ ] ∈ D for all i = 1, . . . , k. But :
By (ii), we have [ϕ∗f0, ∂ξ
i
k X
∂γj ∂
∂ ∂
γj [ ,
]−
∂ξj ∂ξi
∂ξi ∂ξj
j=1
n−k
X
∂γk+j ∂
∂ ∂
]−
+
γk+j [ ,
∂ζj ∂ξi
∂ξi ∂ζj
∂
[ϕ∗f0,
]=
∂ξi
j=1
k
n−k
X
X ∂γk+j ∂
∂γj ∂
=−
−
∂ξi ∂ξj
∂ξi ∂ζj
j=1
∈D
j=1
∂γk+j
Thus
= 0 for all i, j, or γk+j depends only of ζ, which proves
∂ξi
the Proposition.
Theorem Let D∗ be defined as in Proposition 3.1, satisfying (i) and
(ii). A necessary condition for the system to be locally controllable
around the origin is that
rank D∗(x) = n ,
∀x ∈ U
where U is a neighborhood of the origin.
Proof By contradiction. Assume that D∗ satisfies (i), (ii) and
rank D∗(x) = k < n ,
∀x ∈ U
Using (i), the image by ϕ of fi, i = 1, . . . , m, is
ϕ∗fi =
k
X
j=1
∂
ηi,j
.
∂ξj
Therefore,

ϕ∗ f0 +
=
k
X
j=1
m
X

uifi = (ϕ∗f0) +
i=1

γj (ξ, ζ) +
m
X
ui (ϕ∗fi)
i=1
m
X
i=1

n−k
X
∂
∂

+
γk+j (ζ)
.
ui ηi,j (ξ, ζ)
∂ξj
∂ζj
j=1
In other words, in these coordinates, the system reads

m
X

 ξ˙ = γ (ξ, ζ) +
ui ηi,j (ξ, ζ), j = 1, . . . , k
j
j


i=1
ζ̇j = γk+j (ζ), j = 1, . . . , n − k
and the ζ part is not controllable, which achieves the proof.
Denote by Lie{f0, . . . , fm} the Lie algebra generated by the linear
combinations of f0, . . . , fm and all their Lie brackets.
Lie{f0, . . . , fm}(x) is the vector space generated by the vectors of
Lie{f0, . . . , fm} at the point x.
By construction,
D∗ ⊂ Lie{f0, . . . , fm}
but the equality doesn’t hold true in general.
Theorem Assume that the m+1 vector fields f0, . . . , fm are analytic.
Local controllability at x = 0, u = 0, implies :
Lie{f0, . . . , fm}(x) = TxRn,
∀x ∈ X.
Remark If f0 ≡ 0, we have D∗ = Lie{f1, . . . , fm}. Thus, if f1, . . . , fm
are analytic, local controllability is equivalent to
rank D∗ = n
in some open set.
Example
ẋ1 = x22,
ẋ2 = u
Equilibrium point (x1, 0), x1 arbitrary.
∂ } and D = D ;
D0 = span{f1} = span{ ∂x
0
0
2
∂ , x ∂ }, has rank 2 and is invoD1 = span{f1, [f0, f1]} = span{ ∂x
2 ∂x1
2
lutive if x2 6= 0.
∂ ∈ D (x , 0), thus
But [f1, [f0, f1]] = 2 ∂x
1 1
1
∂ , ∂ }.
D∗ = D1(x1, 0) = span{ ∂x
2 ∂x1
However, if x1 > 0, one cannot reach points such that x1 < 0. Thus
the rank condition is necessary but not sufficient for local controllability !
Remark For general systems :
ẋ = f (x, u)
one can use the previous formalism by setting
u̇i = vi,
since
has the required affine form.
i = 1, . . . , m
ẋ = f (x, u)
u̇1 = v1
..
u̇m = vm
Remark The rank condition for linear systems :
m
X
ẋ = Ax +
ui bi
i=1
Set
f0(x) = Ax =
and
fi(x) = bi =
Pn Pn
∂
A
x
i,j
j
j=1
∂xi
i=1
Pn
∂ , i = 1, . . . , m.
b
i,j
j=1
∂x
j
D0 = span{b1, . . . , bm}. D0 = D0 since [bi, bj ] = 0 for all i, j.


n
n X
n
X
X
∂ 
∂ 
[Ax, bi] = −
bi,j
Ak,l xl
∂xj
∂xk
j=1
=−
n
X
j,k=1
k=1 l=1
n
X
∂
bi,j Ak,j
−
∂xk
j=1
∂
(Abi)j
= Abi.
∂xj
Thus
D1 = [Ax, D0] + D0 = span{b1, . . . , bm, Ab1, . . . , Abm}.
and D1 involutive (made of constant vector fields).
We have
Dk = span{b1, . . . , bm, Ab1, . . . , Abm, . . . , Ak b1, . . . , Ak bm}
for all k ≥ 1.
There exists k ∗ < n such that
∗
k
D = D∗
and rank D∗(x) = rank C for all x ∈ U .
4. Some Extensions using Module Theory
4.1. Recalls on Modules
Consider :
• K a principal ideal ring (not necessarily commutative)
• M a group
• and an external product K × M → M, i.e. satisfying
αm ∈ M for all α ∈ K and m ∈ M.
M is a module if and only if the external product satisfies :
(αβ)m = α(βm) and (α + β)m = αm + βm
for all α, β ∈ K and all m ∈ M.
Remark If K is a field, then M is a vector-space.
Examples
d ] the set of polynomials of d with coefficients in R, and
• K = R[ dt
dt
n
let {x1, . . . , xn} be a basis of R . Let M be made of all vectors of
the form
ki
ki
n X
n X
j
X
X
d xi
(j)
ai,j j =
ai,j xi
dt
i=1 j=1
i=1 j=1
with k1, . . . , kn arbitrary integers. M is a finitely generated K-module.
d ] and let
• Let K be the field of meromorphic functions of t, K = K[ dt
{x1, . . . , xn} be a basis of Rn. Let M be made of all vectors of the
form
ki
n X
X
(j)
ai,j (t)xi
i=1 j=1
with k1, . . . , kn arbitrary integers and the ai,j ’s meromorphic functions. Then M is a finitely generated K-module.
Let M be a K-module. An element m ∈ M, m 6= 0, is said to be
torsion if there exists α ∈ K, α 6= 0, such that αm = 0.
We denote by T the set of all torsion elements of M.
It is obviously a submodule of M, called the torsion submodule.
We say that a K-module F is free if and only if for every m ∈ F,
m 6= 0, αm = 0, with α ∈ K, implies α = 0.
We have
d ] where K is a field.
Proposition 1 Let K = K[ dt
(i) A finitely generated module M can be uniquely decomposed into
a torsion sub-module T and a free sub-module F : M = T ⊕ F.
(ii) It is free if and only if T = {0}.
4.2. Linear Systems
d ], where K is a field, and M a finitely generated KLet K = K[ dt
module.
d with coeffiLet A(τ ) be a (n − m) × n polynomial matrix of τ = dt
cients in K. We consider the linear system in M
A(τ )x = 0.
The quotient of M by the lines of this system is again a finitely generated K-module.
Therefore, the data of a linear system is equivalent to the one of a
finitely generated K-module.
Definition. (Fliess, 1990) Given a finitely generated K-module M,
we say that the associated linear system is controllable if and only if
M is free.
Example
Consider the n-dimensional time-varying linear system
ẋ = F (t)x + G(t)u
with u ∈ Rm, F and G meromorphic w.r.t. t in a given open interval
of R, and rank G(t) = m for every t in this interval.
d I − F (t))x = G(t)u.
It reads ( dt
Let C be a (n−m)×n matrix such that C(t)B(t) = 0 with rank C(t) =
n − m for every t.
We have
d def
d
A( )x = C(t)( I − F (t))x = 0
dt
dt
d ) = C(t)( d I−F (t)) is a (n−m)×n matrix with coefficients
thus A( dt
dt
d ], with K the field of meromorphic functions of t.
in K = K[ dt
The linear system is equivalent to the set of linear equations
d
A( )x = 0.
dt
We denote by M the finitely generated K-module generated by a basis of Rn and M0 its quotient submodule generated by the lines of
d )x = 0.
A( dt
Assume that the pair (F, G) is not controllable. By Kalman’s decomposition, there exists a k-dimensional subspace, described by the set
of n − k independent equations
K(t)x = 0
such that the n − k-dimensional quotient subsystem is controllable.
Clearly, K ∈ K and the set {x|Kx = 0} is the torsion submodule of
M0 which is thus not free.
Consequently, M0 is free if the pair (F, G) is controllable in the usual
sense.
The converse follows the same lines.
Remarks.
• This definition is independent of the system variables description.
• For 1st order controllable nonlinear systems, the tangent linear approximation at any point constitutes a linear time-varying system
whose module is free.