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