Hello MIMO Control Friends, The purpose of this note is to define the concept of controllability and to present some useful controllability tests. Please study the note thoroughly - going through each of the given examples. DEFINITION OF CONTROLLABILITY A system is said to be controllable at t = to if for any initial state x(to) = xo and desired final state xf, there exists a finite time tf and a control u(t) - where t lies in [to, tf) - which transfers the state of the system from x(to) = xo to x(tf) = xf. A USEFUL CLASS OF LTI SYSTEMS Consider the linear time invariant (LTI) system given by: xdot = Ax + Bu (State Equation) (1) where A is an nxn matrix, B is an nxm matrix, u is an mx1 vector - called the control or input vector, x is an nx1 vector - called the state vector, and xdot is an nx1 vector - denoting the time derivative of x. QUESTION When is the above LTI system controllable? Is their a test - based on the pair (A, B) - which we can perform to determine whether or not the above LTI system is controllable? To answer this question, it is useful to define the so-called controllability matrix. DEFINITION OF CONTROLLABILITY MATRIX FOR LTI SYSTEMS The controllability matrix of the above LTI system is defined by the pair (A,B) as follows: C(A,B) = [ B AB A^{2}B A^{3}B A^{n-1}B ] The following basic fact from linear systems answers our question. CONTROLLABILITY TEST FOR LTI SYSTEMS The above LTI system (A, B) is controllable if and only if the controllability matrix C(A,B) has rank n; i.e. has n linearly independent rows. EXAMPLE: A CONTROLLABLE SYSTEM Consider the LTI system defined by: A = [ 0 1 0 -1 ] B = [ 0 1 ] This system has controllability matrix C(A,B) = [ B AB ] = [ 0 1 1 -1 ] Since this matrix has rank = n = 2, the system described by the pair (A,B) is controllable. EXAMPLE: AN UNCONTROLLABLE SYSTEM Consider the cascade system described by y = P u, P = 1/s+1, [Ap,Bp,Cp,Dp] = [-1, 1, 1, 0] - state xp u = K e, K = (s+1)/s = 1 + 1/s, [Ak,Bk,Ck,Dk] = [ 0, 1, 1, 1] - state xk This cascade system (K followed by P in series) has state space representation given by: A = [ -1 1 0 0 ] B = [ 1 1 ] The controllability matrix for the cascade system is given by: C(A,B) = [ B AB ] = [ 1 0 1 0 ] Since this matrix has rank 1 < n = 2, the cascade system is uncontrollable. Specifically, it can be shown that the state of P, xp, is not controllable from e. Why is this the case? (Don't answer because the test says so!] Here is why? The state xp is uncontrollable from e because K has a zero at s=-1 which cancels the pole of P at s = -1. This zero-pole cancellation (at the plant input) results in the an uncontrollable system. Specifically, we say that s=-1 is an uncontrollable mode of P from e. This example motivates the following eigenvalue-eigen vecor test for controllability. POPOV-BELEVITCH-HAUTIS (PBH) EIGENVALUE-EIGENVECTOR TEST FOR CONTROLLABILITY The LTI system (A,B) is uncontrollable if and only if there exists a left eigenvector a A which lies in the left null space of B; i.e. iff there exists a complex number s and a complex row vector y^H (not identically zero) such that y^H [ sI - A ] = 0^H and y^H B = 0^H or more concisely iff there exists a complex number s and a complex row vector y^H (not identically zero) such that y^H [ sI - A B ] = 0^H If such a pair (s, y) exists, then we say that s is an uncontrollable mode of the system (A,B). The following example illustrates how one applies this very fundamental controllability test. EXAMPLE: A UNCONTROLLABLE SYSTEM Consider the LTI system defined by the pair (A,B) as follows: A = [ -1 1 0 0 ] B = [ 1 1 ] This LTI system has poles (i.e. eigenvalues) at s = 0, -1. The mode at s=-1 is uncontrollable since y^H = [ 1 -1 ] is a left eigenvector of A - corresponding to s =-1 - which lies in the left null space of B. The following controllability result is useful for determining a control which transfers the state of a controllable system. GRAMMIAN TEST FOR CONTROLLABILITY The LTI system described by (A,B) is controllable on [to, tf] iff the controllability grammian, defined by W(tf,to) = Integral_{t_o}^{tf} e^{A (to - tau)} B B^H e^{A^H (to - tau)} dtau is invertible. FINDING A CONTROL WHICH TRANSFERS THE STATE OF A CONTROLLABLE SYSTEM If the LTI system described by the pair (A,B) is controllable, then a control which transfers the state from x(to) = xo to x(tf) = xf is given by u(t) = B^H e^{A^H (to - t)} W(tf,to)^{-1} [ e^{A(to - tf)} xf - xo ] It can be shown that this control law is the "minimum energy" control law which achieves state transfer. To see that this works, substitute this into the variation of constants formula which relates x(t) to A,B, xo, and u(t): x(t) = e^{A(t - to)} xo + Integral_{t_o}^{t} e^{A (t - tau)} B u(tau) dtau EXAMPLE: FINDING A STATE TRANSFERRING CONTROL LAW FOR A SIMPLE SYSTEM Find a control law which transfers the state of the LTI system xdot = - x + u from x(0) = 0 to x(5) = 1. For this system, W(5,0) = Integral_{0}^{5} e^{2tau)} dtau = 0.5 [ e^10 - 1 ], and a state transferring control law is given by: u(t) = 2e^{t+5}/[ e^10 - 1 ]. Since x(5) = Integral_{0}^{5} e^{- (5 - tau)} u(tau) dtau, it follows that the constant control law u(t) = e^5/[e^5 - 1] also accomplishes the desired state transfer. This example clearly shows that state transferring control laws - in general - are not unique! RELATED TOPICS A concept which is dual to that of controllability is observability. Observability will be studied subsequently. REFERENCE Thomas Kalaith, "Linear Systems," Prentice-Hall, 1980. Hope this note was helpful. Thank you. AAR