Controllability
Controllability is an important property of a control system, and the controllability property plays a crucial role in many control problems, such as stabilization of unstable systems by feedback, or optimal control. Controllability and observability are dual aspects of the same problem. Roughly, the concept of controllability denotes the ability to move a system around in its entire configuration space using only certain admissible manipulations. The exact definition varies slightly within the framework or the type of models applied. The following are examples of variations of controllability notions which have been introduced in the systems and control literature: State  controllability. The state of a deterministic system, which is the set of values of all the system's state variables (those variables characterized by dynamic equations), completely describes the system at any given time. In particular, no information on the past of a system is needed to help in predicting the future, if the states at the present time are known and all current and future values of the control variables (those whose values can be chosen) are known. "Complete state controllability" (or simply "controllability" if no other context is given) describes the ability of an external input (the vector  of control variables) to move the internal state of a system from any initial state to any final state in a finite time interval. That is, we can informally define controllability as follows: If for some initial state formula_1 and some final state formula_2 there exists an input sequence to transfer the system state from formula_1 to formula_2 in a finite time interval, then the system modeled by the state-space representation is controllable. For the simplest example of a continuous, LTI system, the row dimension of the state space expression formula_5 determines the interval; each row contributes a vector  in the state space of the system. If there are not enough such vectors to span the state space of formula_6, then the system cannot achieve controllability. It may be necessary to modify formula_7 and formula_8 to better approximate the underlying differential relationships it estimates to achieve controllability. Controllability does not mean that a reached state can be maintained, merely that any state can be reached. Controllability does not mean that arbitrary paths can be made through state space, only that there exists a path within the prescribed finite time interval. Continuous linear systems. Consider the continuous linear system  There exists a control formula_11 from state formula_12 at time formula_13 to state formula_14 at time formula_15 if and only if formula_16 is in the column space of where formula_18 is the state-transition matrix, and formula_19 is the Controllability Gramian. In fact, if formula_20 is a solution to formula_21 then a control given by formula_22 would make the desired transfer. Note that the matrix formula_23 defined as above has the following properties: Rank condition for controllability. The Controllability Gramian involves integration of the state-transition matrix of a system. A simpler condition for controllability is a rank condition analogous  to the Kalman rank condition for time-invariant systems. Consider a continuous-time linear system formula_31 smoothly varying in an interval formula_32 of formula_33: The state-transition matrix formula_18 is also smooth. Introduce the n x m matrix-valued function formula_37 and define Consider the matrix of matrix-valued functions obtained by listing all the columns of the formula_40, formula_41: formula_42. If there exists a formula_43 and a nonnegative integer k such that formula_44, then formula_31 is controllable. If formula_31 is also analytically varying in an interval formula_32, then formula_31 is controllable on every nontrivial subinterval of formula_32 if and  only if there exists a formula_43 and a nonnegative integer k such that formula_51. The above methods can still be complex to check, since it involves the computation of the state-transition matrix formula_18. Another equivalent condition is defined as follow. Let formula_53, and for each formula_54, define In this case, each formula_57 is obtained directly from the data formula_58 The system is controllable if there exists a formula_43 and a nonnegative integer formula_60 such that formula_61. Example. Consider a system varying analytically in formula_62 and matrices formula_63, formula_64 Then formula_65 and since this matrix has rank 3, the system  is controllable on every nontrivial interval of formula_33. Continuous linear time-invariant (LTI) systems. Consider the continuous linear time-invariant system where The formula_83 controllability matrix is given by The system is controllable if the controllability matrix has full row rank (i.e. formula_85). Discrete linear time-invariant (LTI) systems. For a discrete-time linear state-space system (i.e. time variable formula_86) the state equation is where formula_75 is an formula_76 matrix and formula_77 is a formula_78 matrix (i.e. formula_73 is formula_93 inputs collected in a formula_74 vector). The test for controllability is that the formula_83 matrix has full row rank  (i.e., formula_97). That is, if the system is controllable, formula_98 will have formula_99 columns that are linearly independent; if formula_99 columns of formula_98 are linearly independent, each of the formula_99 states is reachable by giving the system proper inputs through the variable formula_103. Derivation. Given the state formula_104 at an initial time, arbitrarily denoted as "k"=0, the state equation gives formula_105 then formula_106 and so on with repeated back-substitutions of the state variable, eventually yielding or equivalently Imposing any desired value of the state vector formula_109 on the left side, this can always be solved for the stacked vector  of control vectors if and only if the matrix of matrices at the beginning of the right side has full row rank. Example. For example, consider the case when formula_110 and formula_111 (i.e. only one control input). Thus, formula_77 and formula_113 are formula_114 vectors. If formula_115 has rank 2 (full rank), and so formula_77 and formula_117 are linearly independent and span the entire plane. If the rank is 1, then formula_77 and formula_117 are collinear and do not span the plane. Assume that the initial state is zero. At time formula_120: formula_121 At time formula_122: formula_123 At time formula_120 all  of the reachable states are on the line formed by the vector formula_77. At time formula_122 all of the reachable states are linear combinations of formula_117 and formula_77. If the system is controllable then these two vectors can span the entire plane and can be done so for time formula_129. The assumption made that the initial state is zero is merely for convenience. Clearly if all states can be reached from the origin then any state can be reached from another state (merely a shift in coordinates). This example holds for all positive formula_99, but the case of formula_110 is  easier to visualize. Analogy for example of "n" = 2. Consider an analogy to the previous example system. You are sitting in your car on an infinite, flat plane and facing north. The goal is to reach any point in the plane by driving a distance in a straight line, come to a full stop, turn, and driving another distance, again, in a straight line. If your car has no steering then you can only drive straight, which means you can only drive on a line (in this case the north-south line since you started facing north). The lack  of steering case would be analogous to when the rank of formula_79 is 1 (the two distances you drove are on the same line). Now, if your car did have steering then you could easily drive to any point in the plane and this would be the analogous case to when the rank of formula_79 is 2. If you change this example to formula_134 then the analogy would be flying in space to reach any position in 3D space (ignoring the orientation of the aircraft). You are allowed to: Although the 3-dimensional case is harder to visualize, the concept  of controllability is still analogous. Nonlinear systems. Nonlinear systems in the control-affine form are locally accessible about formula_12 if the accessibility distribution formula_137 spans formula_99 space, when formula_99 equals the rank of formula_140 and R is given by: Here, formula_142 is the repeated Lie bracket operation defined by The controllability matrix for linear systems in the previous section can in fact be derived from this equation. Null Controllability. If a discrete control system is null-controllable, it means that there exists a controllable formula_103 so that formula_145 for some initial state formula_146. In other words, it is equivalent to  the condition that there exists a matrix formula_147 such that formula_148 is nilpotent. This can be easily shown by controllable-uncontrollable decomposition. Output controllability. "Output controllability" is the related notion for the output of the system (denoted "y" in the previous equations); the output controllability describes the ability of an external input to move the output from any initial condition to any final condition in a finite time interval. It is not necessary that there is any relationship between state controllability and output controllability. In particular: For a linear continuous-time system, like the example above, described by matrices formula_75 , formula_77, formula_79, and formula_81, the formula_153 "output controllability matrix" has full row rank (i.e. rank formula_155) if and only if the system is output controllable. Controllability under input constraints. In systems with limited control authority, it is often no longer possible to move any initial state to any final state inside the controllable subspace. This phenomenon is caused by constraints on the input that could be inherent to the system (e.g. due to saturating actuator) or imposed on the system for other reasons (e.g. due to safety-related concerns). The controllability of systems with input and state constraints is studied  in the context of reachability and viability theory. Controllability in the behavioral framework. In the so-called behavioral system theoretic approach due to Willems (see people in systems and control), models considered do not directly define an input–output structure. In this framework systems are described by admissible trajectories of a collection of variables, some of which might be interpreted as inputs or outputs. A system is then defined to be controllable in this setting, if any past part of a behavior (trajectory of the external variables) can be concatenated with any future trajectory of the behavior in such a  way that the concatenation is contained in the behavior, i.e. is part of the admissible system behavior. Stabilizability. A slightly weaker notion than controllability is that of stabilizability. A system is said to be stabilizable when all uncontrollable state variables can be made to have stable dynamics. Thus, even though some of the state variables cannot be controlled (as determined by the controllability test above) all the state variables will still remain bounded during the system's behavior.<ref name="Anderson+Moore/book:1989"></ref> Reachable set. Let T ∈ Т and x ∈ "X" (where X is the set of all possible  states and Т is an interval of time). The reachable set from x in time T is defined as: formula_156, where xz denotes that there exists a state transition from x to z in time T. For autonomous systems the reachable set is given by : where R is the controllability matrix. In terms of the reachable set, the system is controllable if and only if formula_158. Proof We have the following equalities: Considering that the system is controllable, the columns of R should be linearly independent. So: A related set to the reachable set is the controllable set, defined by : The relation between reachability and controllability is presented by Sontag: (a) An n-dimensional discrete linear system is controllable if and only if: (b) A continuous-time linear system is controllable if and only if: if and only if formula_168 for all e>0. Example Let the system be an n dimensional discrete-time-invariant system from the formula: It follows that the future state is in formula_170 ⇔ it is in the image of the linear map: which maps, When formula_173 and formula_174 we identify R(A,B) with a n by nm matrix whose columns are the columns of formula_175  in that order. If the system is controllable the rank of formula_171 is n. If this is truth, the image of the linear map R is all of X. Based on that, we have: