Linear Control Systems Lecture # 8 Observability & Discrete-Time Systems – p. 1/2 Definition: The system ẋ = Ax, y = Cx or the pair (A, C), is said to be observable on [t0 , tf ] if any initial state x(t0 ) = x0 can be uniquely determined from y(t) on [t0 , tf ]. It is said to be (re)constructible on [t0 , tf ] if any final state x(tf ) = xf can be uniquely determined from y(t) on [t0 , tf ] Without loss of generality, take t0 = 0 The observability Gramian of (A, C) is defined by Wo (0, tf ) = Z tf e AT t C T CeAt dt 0 – p. 2/2 Lemma: Wo (0, tf ) is positive definite if and only if there is no vector xa 6= 0 such that CeAt xa ≡ 0, ∀ t ∈ [0, tf ] Proof: xTa Wo (0, tf )xa = Z tf 0 T AT t T xa e C CeAt xa dt xTa Wo (0, tf )xa = 0 ⇔ CeAt xa ≡ 0, ∀ t ∈ [0, tf ] – p. 3/2 Theorem: The pair (A, C) is observable (constructible) on [0, tf ] if and only if the observability Gramian Wo (0, tf ) is positive definite Proof of sufficiency: Suppose Wo (0, tf ) is positive definite and let x0 be the initial state y(t) = Cx(t) = CeAt x0 Multiply from the left by e AT t T A e tC T T C y(t) = e AT t C T CeAt x0 Integrate from 0 to tf Z tf e 0 T A t T C y(t) dt = Z tf e AT t C T CeAt dt x0 0 – p. 4/2 Z tf e AT t C T y(t) dt = Wo (0, tf )x0 0 This equation has a unique solution Z tf −1 AT t T x0 = Wo (0, tf ) e C y(t) dt 0 Since x(tf ) = eAtf x0 and eAtf is nonsingular, x(tf ) is determined uniquely by x(tf ) = e Atf Wo−1 (0, tf ) Z tf e AT t C T y(t) dt 0 – p. 5/2 Proof of Necessity: We want to show that positive definiteness of Wo (0, tf ) is a necessary condition for observability (constructibility) over [0, tf ] Suppose Wo (0, tf ) is not positive definite. Then, there is a vector xa 6= 0 such that CeAt xa ≡ 0, ∀ t ∈ [0, tf ] For the case of observability, The output due to x(0) = x0 is CeAt x0 and the output due to x(0) = x0 + xa is CeAt (x0 + xa ) = CeAt x0 + CeAt xa = CeAt x0 – p. 6/2 The initial states x0 and x0 + xa produce the same output. Hence, x0 cannot be uniquely determined from the output For the case of constructibility y(t) = CeAt x(0) = CeAt e−Atf x(tf ) x(tf ) = xf and x(tf ) = xf + eAtf xa correspond to the same output because ³ ´ CeAt e−Atf xf + eAtf xa = CeAt e−Atf xf + CeAt e−Atf eAtf xa = CeAt e−Atf xf + CeAt xa = CeAt e−Atf xf – p. 7/2 Lemma: The observability Gramian Wo (0, tf ) is positive definite if and only if rank O = n, where C CA O= . . . CAn−1 is the observability matrix (O is np × n when A is n × n and C is p × n) – p. 8/2 Proof: Wo (0, tf ) is singular if and only if there is xa 6= 0 such that CeAt xa ≡ 0, ∀ t ∈ [0, tf ] ⇔ C ∞ k X t k=0 k! Ak xa ≡ 0, ∀ t ∈ [0, tf ] ⇔ CAk xa = 0, ∀ k ≥ 0 ⇔ CAk xa = 0, ∀ k = 0, 1, . . . , n − 1 – p. 9/2 ⇔ C CA .. . CAn−1 ⇔ rank xa = 0 C CA .. . CAn−1 <n Theorem: The pair (A, C) is observable (reconstructible) if and only if rank O = n – p. 10/2 Duality (A, B) controllable ⇔ rank [B, AB, . . . , An−1 B] = n BT T T B A =n ⇔ rank .. . B T (AT )n−1 ³ ´ ⇔ AT , B T observable Similarly, observability of (A, C) is equivalent to ¡ T ¢ T controllability of A , C – p. 11/2 Controllability and observability are invariant to state transformations {A, B, C, D} → x = P z → {P −1 AP, P −1 B, CP, D} h ¢n−1 rank P −1 B, P −1 AP P −1 B, . . . , P −1 AP P −1 B £ −1 ¤ −1 −1 n−1 = rank P B, P AB, . . . , P A B © −1 ª n−1 = rank P [B, AB, . . . , A B] ¡ i = rank [B, AB, . . . , An−1 B] Matlab: O = obsv(A, C); rank(O) – p. 12/2 Mathematical Preliminaries: Consider the equation y = Mx where M is an m × n matrix. The equation has a solution if and only if y can be expressed as a linear combination of the columns of M rank M = rank [M, y] The range space of M , denoted by R(M ), is the set of all linear combinations of the columns of M . It is a subspace of Rm of dimension equal to rank M . The equation y = M x has a solution if and only if y ∈ R(M ). The equation y = M x has a solution for every y ∈ Rm if and only if rank(M ) = m ⇔ R(M ) = Rm – p. 13/2 Given that y = M x has a solution. Is the solution unique? Suppose there are two solutions xa and xb such that y = M xa , y = M xb M (xa − xb ) = 0 The null space of M , denoted by N (M ), is the set of all vectors x ∈ Rn such that M x = 0. It is a subspace of Rn of dimension (n − rank M ) The solution of y = M x is unique if and only if there is no vector x 6= 0 such that M x = 0 Equivalently, rank M = n – p. 14/2 Discrete-Time Systems The definitions of controllability (reachability) and observability (constructibility) are the same as in the continuous-time case Let us study steering the state of the system x(k + 1) = Ax(k) + Bu(k) Find u(k) to steer the state of the system from x0 to xf in finite time x(k) = Ak x(0) + k−1 X Ak−j−1 Bu(j) j=0 – p. 15/2 k k−1 x(k) − A x0 = [B, AB, . . . , A B] u(k − 1) u(k − 2) .. . u(0) Can we choose u(0), . . . , u(k − 1) such that x(k) = xf for some k? The answer is Yes if for some k, ³ ´ xf − Ak x0 ∈ R [B, AB, . . . , Ak−1 B] – p. 16/2 Due to Cayley-Hamilton theorem ³ ´ ¡ ¢ k−1 n−1 R [B, AB, . . . , A B] = R [B, AB, . . . , A B] for all k ≥ n Thus, we take k = n and rewrite the equation as u(n − 1) u(n − 2) def n−1 = CU xf − A x0 = C .. . u(0) – p. 17/2 Reachability: x0 = 0 and xf is any vector in Rn xf = C U There is a solution for every xf if and only if R(C) = Rn ⇔ rank C = n Controllability: xf = 0 and x0 is any vector in Rn −An x0 = C U There is a solution if and only if −An x0 ∈ R(C) rank C = n is a sufficient condition for the existence of a solution. Is it necessary? – p. 18/2 If A is nonsingular, then the vector An x0 can be any vector in Rn . In this case, the condition rank C = n is necessary If A is singular, the equation −An x0 = C U may be solvable even if rank C < n – p. 19/2 Example: A= " 1 1 0 0 # , B= C = [B, AB] = " " 1 1 0 0 # 1 0 # rank C = 1 – p. 20/2 − " α+β 0 # = " 1 1 0 0 #" u(1) u(0) # −(α + β) = u(0) + u(1) There are infinitely many solutions. Two examples are u(0) = −α − β, u(1) = 0 u(0) = −α, u(1) = −β – p. 21/2 Summary: rank C = n is a necessary and sufficient condition for reachability of x(k + 1) = Ax(k) + Bu(k) rank C = n is a sufficient condition for controllability of x(k + 1) = Ax(k) + Bu(k) If A is nonsingular, then rank C = n is a necessary and sufficient condition for controllability of x(k + 1) = Ax(k) + Bu(k) Remark: Strictly speaking, we should say that the pair (A, B) is reachable if and only rank C = n. However, by abuse of notation, we will continue to call the pair (A, B) controllable if and only if rank C = n. This will keep the discussion of controllability the same for both continuous-time and discrete-time systems – p. 22/2 Observability: Consider the system x(k + 1) = Ax(k), y(k) = Cx(k) and study the question of uniquely determining x(0) from the output y(k) y(0) Cx(0) C y(1) CAx(0) CA x(0) = = . . . . . . . . . y(k − 1) CAk−1 x(0) CAk−1 – p. 23/2 The equation will have a unique solution x(0) if and only if C CA =n rank .. . CAk−1 By Cayley-Hamilton theorem C CA = rank rank .. . CAk−1 C CA .. . CAn−1 , ∀ k ≥ n – p. 24/2 Take k = n and write the equation as Y = O x(0) where Y = y(0) y(1) .. . y(n − 1) The equation has a unique solution if and only if rank O = n – p. 25/2