Controllability and Stabilizability

advertisement
Controllability and Stabilizability
• Point-to-Point Control and Controllability
• The Kalman Matrix and its Relevance
• Controllability Canonical Form (SI) and Normal Form (MI)
• Uncontrollable Modes and the Hautus-Test
• Stabilizability
• Open-loop and State-Feedback Control
• Pole-Placement and Stabilization
Related Reading
[KK]: 3.1-3.5 and [AM]: 6.1-6.3
1/51
Reachable Set
With A ∈ Rn×n , B ∈ Rn×m and the linear system
ẋ = Ax + Bu, x(0) = ξ ∈ Rn
as well as some given time-instant T > 0, we now want to analyze which
states can be reached at time T by choosing a suitable control function.
2/51
Reachable Set
Recall that
AT
x(T ) = e
Z
ξ+
T
eA(T −τ ) Bu(τ ) dτ
0
AT
and observe that e ξ is not influenced by the control input. It hence
suffices to understand which values can be reached with
Z T
eA(T −τ ) Bu(τ ) dτ.
0
This is actually the state-response for u(·) and zero initial condition.
Definition 1 The reachable set RT of ẋ = Ax + Bu at time
T > 0 is the set of all states x(T ) that can be reached from initial
state zero by any (continuous) control input.
This trajectory-based definition is due to Kalman. Can we get a handle
on the set RT ?
3/51
Recall following notations/facts from Linear Algebra
Let A ∈ Rn×p be any rectangular matrix.
1. The range space R(A) = {Ax : x ∈ Rp } of A is the set of all
linear combinations of the columns of A.
2. The null space or kernel of A is N (A) = {x ∈ Rp : Ax = 0}.
3. R(A) = Rn iff A has full row rank. N (A) = {0} iff A has full
column rank.
4. We use the beautiful duality relation N (AT ) = R(A)⊥ .
5. For square matrices A ∈ Rn×n and k ≥ 0, the k-th power Ak is
a linear combination of the powers up to order n − 1:
I, A, A2 , . . . , An−2 , An−1 .
This follows from the Cayley-Hamilton theorem.
4/51
An Observation
Choose u ∈ C([0, T ], Rm ). With the matrix exponential note that
Z TX
Z T
N
1
A(T −τ )
[A(T − τ )]k Bu(τ ) dτ
x(T ) =
e
Bu(τ ) dτ = lim
N →∞ 0
k!
0
| k=0
{z
}
xN
and further observe that
Z T
N
X
(T − τ )k
k
u(τ ) dτ.
xN =
A B
k!
0
k=0
Hence xN is a linear combination of the columns of B, AB, . . . , AN B.
Since each matrix An B, An+1 B, . . . , AN B is a linear combination of
the matrices B, AB, . . . , An−1 B (slide 4), we conclude that
xN is a linear combination of the columns of B, AB, . . . , An−1 B.
This means xN ∈ R B AB · · · An−1 B and with N → ∞ hence
x(T ) ∈ R B AB A2 B · · · An−1 B .
5/51
Interpretation
This motivates the following definition.
Definition 2 The controllability matrix or Kalman matrix for
the linear system ẋ = Ax + Bu or the pair (A, B) is defined by
K := B AB A2 B · · · An−1 B .
In Matlab use ctrb.
We have actually proved that
RT ⊂ R(K).
This is already good information since we can exclude states that, for
sure, cannot be reached, namely those outside R(K). The interesting
part is the fact that we actually have equality. Let’s prove that.
6/51
An Axuiliary Result
Definition 3 Controllability Gramian of (A, B) at time T > 0 is
Z T
Z T
T
At
T AT t
WT :=
e BB e dt =
eA(T −τ ) BB T eA (T −τ ) dτ ∈ Rn×n .
0
0
T
Remember that the elements of eAt BB T eA t are linear combinations of
terms of the form tk eλt - one can hence explicitly compute WT .
Lemma 4 WT = WTT is positive semi-definite. R(WT ) = R(K).
T
Proof. [B T eA t ]T = eAt B implies symmetry. For any z ∈ Rn we have
RT
RT
T
z T WT z = 0 z T eAt BB T eA t z dt = 0 kz T eAt Bk2 dt ≥ 0 and hence
WT is positive semi-definite. Therefore
z T WT = 0 ⇔ z T WT z = 0 ⇔ z T eAt B = 0 for all t ∈ [0, T ] ⇔
⇔ z T Ak B = 0 for all k = 0, 1, 2, . . . ⇔ z T K = 0.
This means N (K T ) = N (WTT ) = N (WT ) and thus we conclude R(K) =
N (K T )⊥ = N (WT )⊥ = R(WT ).
7/51
Construction of Control Functions
Take any vector xf ∈ R(K). As just seen there exists α ∈ Rn with
xf = WT α.
With the control function
u(τ ) := B T eA
we obtain
Z T
Z
A(T −τ )
e
Bu(τ ) dτ =
0
T (T −τ )
T
eA(T −τ ) BB T eA
α
T (T −τ )
α dτ = WT α = xf .
0
In summary:
• The particular control function constructed with α ∈ Rn satisfying
xf = WT α steers 0 into the state xf at time T , i.e., xf ∈ RT .
• Since xf ∈ R(K) was chosen arbitrarily, we infer R(K) ⊂ RT .
8/51
Main Theorems on Controllability
Theorem 5 The reachable set RT is equal to the range space R(K)
of the Kalman matrix K = B AB A2 B · · · An−1 B .
Consequently, RT is a subspace of Rn and it is actually independent
from T as long as T > 0. We hence write R = R(K) from now on.
The particularly important case that all vectors in Rn are reachable
deserves extra attention and has far-reaching consequences.
Definition 6 The linear system ẋ = Ax + Bu or the pair (A, B) is
said to be controllable if R = Rn .
We immediately obtain the celebrated Kalman-test for controllability.
Theorem 7 The system defined by (A, B) is controllable iff the Kal
man matrix K = B AB A2 B · · · An−1 B has full row rank.
9/51
Point-to-Point Control
If we try to reach xf ∈ Rn from a nonzero initial condition ξ ∈ Rn we
need to find a control function such that
Z T
AT
xf = e ξ +
eA(T −τ ) Bu(τ ) dτ.
0
RT
This just means that xf −eAT ξ equals 0 eA(T −τ ) Bu(τ ) dτ and is hence
reachable from zero. This in turn translates into xf − eAT ξ ∈ R.
Theorem 8 The state x(0) = ξ can be controlled into the state
x(T ) = xf (T > 0) if and only if
xf − eAT ξ ∈ R(K).
We have also seen how to construct suitable control functions.
Corollary 9 For controllable systems, one can steer any initial
state ξ ∈ Rn at time 0 to any final state xf ∈ Rn at time T > 0.
10/51
Example
Let’s consider the example system on p.191 of [F]:



2 3 2 1
1
 −2 −3 0 0 
 −2


A=
 −2 −2 −4 0  , B =  2
−2 −2 −2 −5
−1


.

The controllability matrix is


1 −1
1 −1
 −2 4 −10 28 

K=
 2 −6 18 −54  .
−1 3 −9 27
It can be written as K = LU (LU-factorization with lu) where




−0.5 −0.5 1 0
−2 4 −10 28


1
0 0 0
8 −26 
 , U =  0 −2
.
L=
 0 0
 −1
1 0 0
0
0
0.5 −0.5 0 1
0 0
0
0
11/51
Example
• Since the rank of K is two we infer that (A, B) is not controllable.
• We have
 
−0.5
−0.5



0
1 
R(K) = R(L) = h
 −1  , 
1
−0.5
0.5



i.

• Choose ue1 = −1 and ue2 = 1 and the corresponding state equilibria
xe1 = −A−1 Bue1 and xe2 = −A−1 Bue2 . With T = 1 we have






1
1.37
−1




 1.33 
 , xe2 =  −1.33  , x1 = xe2 −eAT xe1 =  −1.72  .
xe1 = 
 0.7 
 −0.67 
 0.67 
−0.33
−0.35
0.33
It is clear (why?) that x1 ∈ R(K); hence we can steer xe1 at time 0
to xe2 at time T = 1.
12/51
Example
We compute




8.07
2.14 −0.84 −0.51 −0.31
 −4.08 
 −0.84 0.59 0.18 0.08 



WT = 
 −0.51 0.18 0.28 0.06  and α =  −7.97 
3.98
−0.31 0.08 0.06 0.16
such that WT α = xf . This leads to the control input function
u(t) = B T eA(T −t) α = 12.51 e−1+t − 15.84 e−3+3 t for t ∈ [0, T ].
Concatenate this input with the equilibrium input u(t) = 1 for t ∈ [1, 2]:
Control Input
5
0
−5
0
0.5
1
1.5
2
13/51
Example
The system’s state-response (with initial and target states) is
4
2
0
−2
−4
0
0.5
1
1.5
2
Remarks
• We steer the system state from xe1 to xe2 and then keep it staying
at the equilibrium xe2 with the constant control input ue2 . Since A
is Hurwitz, the state does not drift away.
• For non-equilibrium states this is in general not possible!
14/51
A Geometric Characterization
The range-space of the Kalman matrix admits the following nice geometric characterization.
Theorem 10 R = R(B, AB, . . . , An−1 B) is the smallest Ainvariant subspace which contains R(B).
Proof. R(B) ⊂ R is obvious. For x ∈ R choose y with x = Ky. Then
Ax = AKy = AB A2 B · · · An−1 B An B y.
The columns of An B are linear combinations of those of K, due to slide
4. Hence the right-hand side can be written as a linear combination of
the columns of K, which implies Ax ∈ R. Therefore AR ⊂ R.
Now suppose that V is any other A-invariant subspace which contains
R(B). In particular we then infer B ∈ V (read column-wise). Since V
is A-invariant we infer AB ∈ V, and the in turn A2 B ∈ V and thus, if
proceeding, K ∈ V which implies R ⊂ V. This is minimality.
15/51
State-Coordinate Change
Recall that a state-coordinate change z = T x (with invertible T ) for
ẋ = Ax + Bu, y = Cx + Du
leads to the transformed system
ż = Ãz + B̃u
à B̃
T AT −1 T B
with
=
.
CT −1 D
y = C̃z + D̃u
C̃ D̃
It is often extremely helpful to find a suitable state-coordinate change
such that the transformed system has a “nice description”.
This is even more relevant since many system theoretic properties or
objects do not change under state-coordinate changes, or it is easy to
see how they should be transformed.
Lemma 11 The Kalman matrices K of (A, B) and K̃ of (Ã, B̃)
are related as K̃ = T K. Therefore controllability is invariant under
state-coordinate change.
16/51
Single-Input Systems
As seen in Lecture 1 we often encounter single-input systems


 
−α1 −α2 −α3 · · · −αn
1
 1
0
0
0 ··· 0 


 
0
1
0 · · · 0  x +  0  u = Ãx + B̃u.
ẋ = 
 .

 . 
..
.. 
... ...
 ..
 .. 
.
.
0
0 ··· 1
0
0
The Kalman matrix K̃ of (Ã, B̃)

1 −α1 ? · · ·
 0 1 −α1 · · ·

0 0
1 ···
 . .
..
...
 .. ..
.
0 0
0 ···
is square and equals

?
?

?  which is invertible.
.. 
. 
1
This leads to the following important result.
Lemma 12 For all α1 , . . . , αn ∈ R the pair (Ã, B̃) is controllable.
17/51
Controllable Canonical Form
Definition 13 The matrix à on slide 17 is said to be in companion
form and B̃ is the first standard unit vector. Systems with such
a description are said to be in controllable canonical form.
This terminology is justified since any controllable system with a single
input can always be brought into this form by a state-coordinate change:
Theorem 14 If ẋ = Ax + Bu has only one input (m = 1) and is
controllable, there exists a state-coordinate change such that ż =
[T AT −1 ]z + [T B]u is in controllable canoncial form.
If à = T AT −1 and à is as on slide 17 recall that
det(λI − A) = det(λI − Ã) = λn + α1 λn−1 + · · · + αn−1 λ + αn .
Hence the controllability canonical form of (A, B) is uniquely determined
by the coefficients of the characteristic polynomial of A.
18/51
Constructive Proof
We need to find the columns of T −1 = S = S1
 

1
−α1 −α2 −α3
0
 1
0
0
 

 0
0
1
0
B =S
 .  , AS = S  .
..
..
 .. 
 ..
.
.
0
0
0 ···
· · · Sn
such that

· · · −αn
··· 0 

··· 0 .
.. 
..
.
. 
1
0
(?)
With the first n relations we can recursively solve for the columns as
S1 = B, S2 = (A + α1 I)B, S3 = (A2 + α1 A + α2 I)B, . . . ,
Sn = (An−1 + α1 An−2 + · · · + αn−1 I)B.
The very last equation reads as ASn = −αn S1 and is satisfied by the
Caley-Hamilton theorem. Hence the constructed S fulfills (?).
Clearly S = B AB · · · An−1 B Tα with an upper triangular matrix
Tα having ones on the diagonal (slide 41); hence det(Tα ) 6= 0. Since
det(K) 6= 0 (because (A, B) is controllable), S is invertible.
19/51
Example
Let’s change B for the example on slide 11 to B = 1 −2.1 2 −1
Then (A, B) is controllable. The characteristic polynomial of A is
T
.
λ4 + 10λ3 + 35λ2 + 50λ + 24.
We then obtain as in the proof the matrix


1
8.7 23.9 20.4
 −2.1 −16.7 −40.8 −30.4 
.
S=

2 14.2 29.2
17 
−1 −6.8 −13.4 −7.6
And indeed


 
−10 −35 −50 −24
1




1
0
0
0
 , S −1 B =  0  .
S −1 AS = 

0
0
1
0
0
0
0
1
0
0
T
If B = 1 −2 + 2 −1 , then T = S −1 becomes more and more
ill-conditioned when approaches zero.
20/51
Uncontrollable Systems
m
θ1
m
θ2
l
l
S
S
F
M
p
Uncontrollability can have many reasons. One situation occurs if two
identical controllable systems ẋS = AS xS + BS u are driven by one
input:
AS 0
BS
ẋ = Ax + Bu with A =
, B=
.
0 AS
BS
The Kalman matrix of (A, B) cannot have full row rank since it equals
BS AS BS · · · An−1
B
S
S
.
BS AS BS · · · An−1
S BS
x
n
The reachable set of (A, B) actually equals
: x∈R .
x
21/51
Uncontrollable Systems
By interconnecting controllable systems (parallel, series, feedback),
controllability may or may not be destroyed.
The matrices on slide 11 results from a state-space description of the
following interconnection, that consists of controllable subsystems:
2
2
u
x1
7
y
3
x2
-2
-3
6
-2
2
-4
x3
4
x4
2
-2
-1
-5
22/51
Uncontrollable Systems
We can clearly construct a square and invertible matrix S ∈ Rn×n whose
first n1 columns span the range space of K:
S = S1 S2 ∈ Rn×(n1 +n2 ) with R(S1 ) = R (n1 = rank(K)).
If using S as a state-coordinate change for ẋ = Ax + Bu, we arrive at
the following particular structure and properties:
à = S
−1
AS =
A11 A12
0 A22
, B̃ = S
−1
B=
B1
0
with A11 ∈ Rn1 ×n1 , A22 ∈ Rn2 ×n2 and B1 ∈ Rn1 ×m . Moreover
(A11 , B1 ) is controllable.
We will see that this decomposition into a “controllable subsystem” and
dynamics that cannot be influenced by u is extremely insightful.
23/51
Proof of Properties
Since the columns of S1 are linear combinations of those of K, the same
holds for AS1 by the last property on slide 4. Hence the columns of AS1
are in R and thus also in R(S1 ). This implies AS1 = S1 A11 for some
square matrix A11 . The columns of B are also in R such that there
must exist a matrix B1 with B = S1 B1 . Hence
A11
B1
AS1 = S1 S2
and B = S1 S2
.
0
0
Left-multiplication with S −1 leads to the special structure of (Ã, B̃).
Further the Kalman matrix K̃ of (Ã, B̃) is
B1 A11 B1 A211 B1 · · · An−1
11 B1
.
0
0
0
···
0
Since the rank of K̃ is n1 = rank(K) and since the last n − n1 rows
n−1
B1 must be n1 .
are zero, the rank of B1 A11 B1 A211 B1 · · · A11
Therefore (A11 , B1 ) is controllable.
24/51
Controllability Normal Form
Theorem 15 There exists a state coordinate change which transforms the linear system ẋ = Ax + Bu into
ż1
A11 A12
z1
B1
=
+
u
ż2
0 A22
z2
0
such that (A11 , B1 ) is controllable. In Matlab use ctrbf.
You should learn to read these equations actually as
ż1 = A11 z1 + A12 z2 + B1 u, ż2 = A22 z2 .
Hence the evolution of z2 (t) cannot be influenced by the control input.
Definition 16 The eigenvalues of A22 are called uncontrollable
modes of (A, B).
The terminology should remind us of the fact that these eigenvalues of
the matrix à cannot be modified by control. More later.
25/51
Controllability Normal Form
Recall that we actually have z2 (t) = eA22 t z20 . For any such trajectory we
infer from the variation-of-constants formula that
Z t
Z t
A11 t 0
A11 (t−τ )
z1 (t) = e z1 +
e
A12 z2 (τ ) dτ +
eA11 (t−τ ) B1 u(τ ) dτ
0
0
or somewhat more explicitly
Z t
Z t
A11 t
0
−A11 τ
A22 τ
z1 (t) = e
z1 +
e
A12 e
dτ z20 + eA11 (t−τ ) B1 u(τ ) dτ.
0
0
This formula allows to argue as on slide 10 that the state z1 can be
controlled from any initial point z10 at time 0 to any final point z1f
at time T > 0 (despite the extra “perturbation term” A12 z2 (.)).
Recall that the original state-trajectory is obtained as x(t) = Sz(t). In
summary, we provided an illustration of how to read and argue in terms
of the controllability normal form of a linear control system.
26/51
Example
Let’s come back to the example of slide 11. The matrix S = L from
the LU-factorization of K is actually a transformation matrix that can
be used. Indeed one can check that




−2
−2 1 −2 0
 0
 1 −2 −4 0 
−1



S −1 AS = 
 0 0 −1 1  , S B =  0  .
0 0 −3 −5
0
−2 1
−2
Obviously
,
is controllable.
1 −2
0
Moreover the uncontrollable modes of (A, B) are given by
−1 1
= {−4, −2}.
eig
−3 −5
The other eigenvalues of A are
−2 1
eig
= {−1, −3}.
1 −2
27/51
Hautus-Test for Controllability
If λ is an eigenvalue of A then A − λI looses rank. Hence there exists
a non-zero complex vector e with
e∗ (A − λI) = 0 where e∗ = ēT .
Since this reads as e∗ A = λe∗ we call e a left-eigenvector of A. In
terms of such vectors controllability can be characterized as follows.
Theorem 17 The pair (A, B) is controllable iff any left-eigenvector
e of the matrix A satisfies e∗ B 6= 0. Equivalently, the matrix
A − λI B
has full row rank for all λ ∈ C.
This so-called Hautus-test for controllability has many equivalent reformulations. For example, testing uncontrollability requires to search
for a left-eigenvector e of A with e∗ B = 0. Equivalently check whether
A − λI B
looses row rank for some eigenvalue λ of A.
28/51
Proof
Suppose there exists some e 6= 0 with e∗ A = λe∗ and e∗ B = 0. Then
e∗ K = e∗ B AB · · · An−1 B = e∗ B λe∗ B · · · λn−1 e∗ B = 0.
Hence K does not have full row rank and thus (A, B) is not controllable.
Conversely suppose (A, B) is not controllable. As on slide 25 we can
transform this pair into to the controllability normal form (Ã, B̃) where
A22 is not the empty matrix. We can hence determine some λ ∈ C and
∗
e2 6= 0 with e∗2 (A22 − λI) = 0. Let us then define ẽ = 0 e∗2 . Then
A11 − λI
B1
A12
∗
∗
= 0.
ẽ Ã − λI B̃ = 0 e2
0
A22 − λI 0
With à = T AT −1 and B̃ = T B we get
ẽ∗ T A − λI B diag(T −1 , I) = 0.
Since ẽ∗ T =
6 0 and since diag(T −1 , I) is invertible we can conclude that
A − λI B does not have full row rank.
29/51
Example
−2 1
−2
,B=
and with e∗ = p1 p2 consider
For A =
1 −2
0
−2 1
−2
p1 p2
p1 p2
= λp1 λp2 ,
= 0.
1 −2
0
The last relation implies p1 = 0. Then the first relation reads as
−2 1
0 p2
= 0 λp2 .
1 −2
The first equation implies p2 = 0. Hence (A, B) is controllable.
With Matlab one can compute the pairwise different eigenvalues
λ1 , . . . , λp of A. If all the matrices
A − λl I B , l = 1, . . . , p,
have full row rank then (A, B) is controllable. If at least one of
them looses rank then (A, B) is not controllable. Uncontrollable are
exactly those eigenvalues λl for which rank-loss occurs.
30/51
Characterization of Uncontrollable Modes
If à = S −1 AS and B̃ = S −1 B then
S 0
−1
A − λI B
S
=
0 I
Consequence: rk A − λI B
à − λI B̃ .
= rk à − λI B̃
for all λ ∈ C.
If we choose a coordinate change as in Theorem 15 and note that
A11 − λI B1 has full row rank n1 for all λ ∈ C, we infer
rk A − λI B = n1 + rk(A22 − λI) for all λ ∈ C.
This proves the following characterization of the uncontrollable modes
directly in terms of the original system description without constructing
the controllability normal form!
Corollary 18 The uncontrollable modes of (A, B) ∈ Rn×(n+m) are
given by {λ ∈ C | rk A − λI B < n}.
31/51
Summary
Every system ẋ = Ax + Bu can be transformed by state-coordinate
change into the controllability normal form:
ż1
A11 A12
z1
B1
=
+
u, (A11 , B1 ) controllable.
ż2
0 A22
z2
0
n−1
B1
• Controllability of (A11 , B1 ) means that B1 A11 B1 · · · A11
has full row rank.
Equivalently, A11 − λI B1 has full row rank for all λ ∈ C.
• The matrix A − λI B looses rank at λ ∈ C iff λ ∈ eig(A22 ),
i.e., exactly in the uncontrollable modes of (A, B).
• The evolution of the state z2 cannot be influence by the control input.
Intuitively, the uncontrollable modes of the system cannot be excited
by control.
32/51
Stabilizability
Controllability of ẋ = Ax + Bu implies that each initial state can be
steered to 0 on a finite time-interval. If we only require this to happen
asymptotically for t → ∞, we arrive at the following concept.
Definition 19 The system ẋ = Ax + Bu or the pair (A, B) is
called stabilizable if for each initial state ξ ∈ Rn there exists a
(piece-wise continuous) control input u : [0, ∞) → Rm such that
the state-response with x(0) = ξ satisfies
lim x(t) = 0.
t→∞
Construction of such control functions (for each ξ) solves the task of
stabilization, which is fundamental in control.
Controllable systems are stabilizable: Steer the system to zero at
any time T > 0 and keep it there with u(t) = 0 for t ≥ T .
33/51
Hautus-Test for Stabilizability
Theorem 20 The system ẋ = Ax + Bu is stabilizable iff all uncontrollable modes are contained in the open left-half complex plane.
Equivalently
A − λI B
has full row rank for all λ ∈ C with Re(λ) ≥ 0.
We can assume without loss of generality that the system is transformed into the controllability normal form slide 25. Then the formulated
property is equivalent to the fact that A22 is Hurwitz.
Proof. If A22 is Hurwitz we infer that z2 (t) → 0 for t → ∞ (irrespective
of the initial condition) and that z1 (t) can be steered exactly to zero
and kept there (since (A11 , B1 ) is controllable).
If A22 is not Hurwitz, we find an initial condition z2 (0) such that z2 (t)
does not converge to 0 for t → ∞. This behavior cannot be influenced
by the control input. Hence the system is not stabilizable.
34/51
Examples
• The system on slide 11 is not controllable but stabilizable. This just
follows from the fact that the uncontrollable modes are {−4, −2}.
• If A is Hurwitz then ẋ = Ax + Bu is stabilizable. u(t) = 0 proves it.
•
If eig(A) = {λ1 , . . . , λp } then check whether A − λl I B
full row rank for all λl with non-negative real part.
has
2 1
1
• For A =
,B=
and with e∗ = p1 p2 consider
1 2
1
1
2 1
p 1 p2
p1 p2
= λp1 λp2 ,
= 0.
1
1 2
The last equation shows p2 = −p1 . The first relation then implies
p1 1 −1 = p1 λ 1 −1 .
This holds for p1 = 1 and λ = 1. Hence (A, B) is not stabilizable.
35/51
Open-Loop Control
So far we have discussed so-called open-loop control strategies. They
are realized through an a priori given time-function u(t) for t ≥ 0 with
which the system is steered. The controlled system is described by
ẋ(t) = Ax(t) + Bu(t), x(0) = ξ.
Here are some disadvantages of this approach:
• Different initial conditions require their individual choice of control
functions that fulfill the respective task. The control functions need
to be “manually” adjusted according to the respective initial state.
• Future unforseen events are not dealt with. Open-loop strategies are
pre-planned and do not adapt to situations in which the system “does
not behave as expected.” They are inherently non-robust.
This motivates to look for alternative control strategies.
36/51
Feedback Control
A feedback controller receives information from the system, processes
this information and generates a control signal that is sent back into
the system in order to actuate it.
The control action is hence adjusted “automatically” on the basis of
on-line measured information about the system.
Such a feedback mechanism is often illustrated by the block-diagram
System
Controller
A controller should be seen as a to-be-constructed dynamical system
such that the feedback interconnection with the given to-be-controlled
system obeys a certain desired specification.
37/51
State-Feedback Control
In a particularly simple but very important case it is assumed that the
whole state of the system can be measured on-line and that the control
law is just a (static and time-invariant) gain.
Definition 21 For a system with state x of dimension n and control
input u of dimension m, a linear state-feedback controller with
gain F ∈ Rm×n is defined as u = −F x.
For the LTI system ẋ = Ax + Bu this control law leads to the controlled or closed-loop system
ẋ = Ax − BF x = (A − BF )x.
• The controller actually changes the system dynamics from the
uncontrolled ẋ = Ax to the controlled system ẋ = (A − BF )x.
• Another interpretation: At time t it takes the measured x(t) and generates the control action as u(t) = −F x(t) by linear combinations.
38/51
Pole-Placement
After this introduction let us now investigate how the dynamics of
ẋ = (A − BF )x
can be influenced by suitable choices of F . For this purpose remember
from Lecture 2 that the modes of the system, the eigenvalues of A−BF ,
shape the dynamic system behavior.
It is a surprising fact that controllable systems allow us to assign these
modes arbitrarily. This is the celebrated pole-placement theorem.
Theorem 22 Let (A, B) ∈ Rn×(n+m) be controllable. If
λ1 , . . . , λn ∈ C (repetitions allowed) are located symmetrically with
respect to the real axis, there exists a real matrix F ∈ Rm×n such
that eig(A − BF ) = {λ1 , . . . , λn }.
The Matlab command for achieving pole-placement is place.
39/51
Constructive Proof for Single-Input Systems
If (A, B) is controllable we can find an invertible T such that (Ã, B̃) =
(T AT −1 , T B) admits the controllable canonical form on slide 17. With
F̃ = f˜1 · · · f˜n we then infer that


−α1 − f˜1 −α2 − f˜2 −α3 − f˜3 · · · −αn − f˜n


1
0
0
···
0



0
1
0
···
0
à − B̃ F̃ = 


.
.
.
.
.


..
..
..
..
..
0
0
···
1
0
which has the characteristic polynomial
det(sI−(Ã−B̃ F̃ )) = sn +(α1 +f˜1 )sn−1 +· · ·+(αn−1 +f˜n−1 )s+(αn +f˜n ).
Hence F̃ can be used to assign the coefficients of this polynomial arbitrarily. In particular we can make sure that its zeros are λ1 , . . . , λn . For
F = F̃ T we infer T (A − BF )T −1 = T AT −1 − T BF T −1 = Ã − B̃ F̃ .
Hence the gain F does the job for the original system.
40/51
An Explicit Formula
If α1 , . . . , αn are the coefficients of the characteristic polynomial of A,


we infer from slide 19 that
1 α1 α2 · · · αn−1
 0 1 α1 · · · αn−2 


−1
0 0 1 · · · αn−3 
T = S = B AB A2 B · · · An−1 B 
.. 
{z
}
|
 ... ... ... . . .
. 
K
0 0 0 ···
1
{z
}
|
Tα
does transform (A, B) into the controllability canonical form. Hence:
The coefficients of the characteristic polynomial of A − BF are
α1 + f˜1 , . . . , αn + f˜n if we choose
F = f˜1 · · · f˜n [KTα ]−1 .
Warning: This Bass-Gura formula or the alternative Ackerman formula
are, typically, numerically not very reliable!
41/51
Uncontrollable Systems
Any (A, B) can be transformed into the normal form (Ã, B̃) on slide 25.
If F̃ is a feedback gain for the transformed system, its columns can be
partitioned as those of à into F̃ = F̃1 F̃2 . Then u = −F̃ z leads to
the closed-loop system
ż1
ż2
=
A11 − B1 F̃1 A12 − B1 F̃2
0
A22
z1
z2
.
• Since (A11 , B1 ) is controllable, the modes of A11 − B1 F̃1 can be
“arbitrarily” assigned. We can hence always choose F̃1 to put all the
eigenvalues of A11 − B1 F̃1 into the open left-half complex plane.
• The modes of A22 can in no way be influenced by state-feedback
control. This motivates again the name of these modes on slide 25.
42/51
Stabilization by State-Feedback
We can hence infer for uncontrollable (A, B) that there will always be
modes of A − BF that are fixed and cannot be moved by F .
Second, we conclude that stabilizable systems can actually be stabilized
by state-feedback control.
Theorem 23 The system ẋ = Ax + Bu is stabilizable iff there
exists some matrix F such that ẋ = (A − BF )x is asymptotically
stable (A − BF is Hurwitz).
Indeed, choose F̃1 such that A11 −B1 F̃1 is Hurwitz and take F̃2 arbitrary.
Then à − B̃ F̃ is Hurwitz. With S as on slide 23 we define
F = F̃ S −1
to get A−BF = [S ÃS −1 ]−[S B̃]F = S(Ã− B̃ F̃ )S −1 which is Hurwitz.
43/51
Dominant Modes
Definition 24 The damping ratio of λ ∈ eig(A) \ R is defined as
ζ=−
Re(λ)
.
|λ|
A pair of eigenvalues λ, λ̄ ∈ eig(A) \ R is dominant if its damping
ratio is smallest among those of all non-real eigenvalues of A.
For Hurwitz-matrices A, the behavior of t → eAt is often (but not at all
always!) mainly determined by the dominant mode of A.
• Due to the real Jordan canonical form of A, eAt is a superposition of
exponential functions with real exponents or of eJt for 2 × 2-blocks
J with non-real eigenvalues.
• For J ∈ R2×2 that are Hurwitz and have no real eigenvalues, the damping ratio determines the dominance of the response, as illustrated
in the lectures.
44/51
Where to Place the Eigenvalues?
This question does not have a simple answer.
• The formula on slide 41 reveals: The less we move the coefficients of
the characteristic polynomial (and hence the modes), the smaller the
coefficients (gains) of F .
The precise quantitative relation (sensitivity) is determined by [KTα ]−1 .
However this relation is not easy to use/interpret in practice.
• The role of dominant modes leads to the following design recipe:
- Choose a 2nd order system with desired dynamics
- Place two eigenvalues at the two poles of this system
- Choose all other eigenvalues to be faster (to render them less
dominant) but not too fast (to avoid too large control action)
- Assign these modes and evaluate by dynamic simulation
Typically this process has to be iterated to achieve good designs.
45/51
Example
With the data of [AM, p. 189] we linearize the Segway
in the upright position (zero input). This leads to




0
0
0
1
0

0
0
0
0
1

, B = 
A=
−3
−3
−3
 18.4 10 
 0 6.41 −1.8 10
−0.1 10 
8.2 10−3
0 7.21 −0.8 10−3 −0.1 10−3
with eig(A) = 0 2.68 −2.69 −1.1 10−3 . This equilibrium is unstable (as we already saw in simulations). Let’s stabilize by u = −F x.
• Choose the eigenvalue −1 ± 1.7i (with damping ratio 0.5) to obtain
a fast mode for stabilizing the pendulum.
• Choose −0.35 ± 0.35i (with damping damping 0.7) as a slower mode
to stabilize the cart.
With place we compute F = −12.5 1.6 103 −41.3 423 .
46/51
Example
Response of linear controlled system to non-zero initial condition and
disturbance torque on tip of pendulum:
100
0
−100
0
control input and disturbance torque (red)
5
15
20
1
0
−1
0
10
p
5
15
20
0.05
0
−0.05
0
10
θ
5
10
15
20
47/51
Example
Comparison with (green) response of nonlinear system with statefeedback controller implemented as u = ue − F (x − xe ):
100
0
−100
0
control input and disturbance torque (red)
5
15
20
1
0
−1
0
10
p
5
15
20
0.05
0
−0.05
0
10
θ
5
10
15
20
48/51
Example
Slow down eigenvalues (to one-third of original natural frequency) and
increase initial condition:
500
0
−500
0
control input and disturbance torque (red)
5
15
20
0
−20
−40
0
10
p
5
15
20
0.5
0
−0.5
0
10
θ
5
10
15
20
49/51
Example
For even larger initial conditions we get instability of nonlinear system:
500
0
−500
0
control input and disturbance torque (red)
5
15
20
100
0
−100
0
10
p
5
15
20
0.5
0
−0.5
0
10
θ
5
10
15
20
50/51
Covered in Lecture 3
• Controllability
trajectory definition, Kalman criterion
• Uncontrollable Systems
normal forms, uncontrollable modes, Hautus test
• Stabilization
open-loop control, motivation of feedback-control
• State-feedback
pole placement, stabilization, shaping the dynamic response
51/51
Download