Controllability and Observability
Before asking how to design a controller, one must ask whether design is possible at all — whether the input can steer every internal mode and whether the output can reveal every internal mode — and the two rank tests of this chapter answer both questions from the matrices \(A\), \(B\) and \(C\) alone.
- What it means for a state to be controllable — steerable to any target in finite time — and why the definition says nothing about the output.
- How Cayley–Hamilton turns the reachability integral into the controllability matrix \(Q_c=[\,B\ AB\ \cdots\ A^{n-1}B\,]\), with the rank test that follows.
- The observability matrix \(Q_o\) and why full rank means the initial state can be reconstructed from a record of the output.
- The controllability Gramian, the minimum-energy input, and why "controllable" does not mean "easily controllable".
- Duality: observability of \((A,C)\) is controllability of \((A^{T},C^{T})\), so every test is proved once.
- The modal test in diagonal coordinates, which shows exactly which mode is lost and why.
- How hidden modes produce pole–zero cancellation, why a non-minimal realisation is dangerous, and what stabilizability and detectability salvage.
Two Questions the Transfer Function Cannot Ask
Chapter 24 produced the complete solution of the state equation and, at the end, regenerated the transfer function \(G(s)=C(sI-A)^{-1}B+D\). That step ought to raise a suspicion. The state model contains \(n\) internal variables, yet \(G(s)\) is a single ratio of polynomials. If information is lost in passing from one to the other, what exactly is lost — and does it matter?
Consider a concrete case. Take a second-order system whose transfer function turns out to be
The pole at \(s=-1\) has vanished. The physical system still has two energy stores and two natural modes; the mode \(e^{-t}\) still exists and still evolves. It has simply become invisible in this particular input-to-output path. Cancel a stable pole and the consequence is mild — an unmodelled decaying transient. Cancel an unstable pole and the consequence is a system that looks perfectly well behaved on paper while a physical variable inside it grows without bound.
A mode can be lost in exactly two ways. Either the input cannot excite it — no choice of \(u(t)\) puts any energy into it — or the output cannot see it — it moves, but the measured signal is blind to that motion. These are two independent structural failures, and they are the subjects of this chapter. Rudolf Kalman named them controllability and observability in 1960, and their formulation is the reason state-space methods displaced transfer-function methods for multivariable design.
Controllability: What Exactly Is Being Claimed
The definition is deliberately generous, and reading it carefully saves a great deal of later confusion.
The property belongs to the pair \((A,B)\) only. It is a statement about reaching, not about staying, not about speed, and not about the output.
Four remarks are needed before the test is derived.
First, the time is not specified. The definition demands only that some finite \(t_f\) works. For a linear time-invariant system, if a target is reachable in any time at all it is reachable in every positive time — a shorter interval simply demands a larger input. Controllability therefore never depends on \(t_f\).
Second, the input is unconstrained. No bound on amplitude, no bound on rate, no bound on energy. A real actuator saturates, so a mathematically controllable system may be practically unsteerable. The test tells you whether a path exists, not whether your actuator can walk it.
Third, \(C\) plays no part. Controllability is about the state, not the output. A separate and weaker notion, output controllability, asks only that the output be steerable, and it is tested with the rank of \([\,CB\ \ CAB\ \cdots\ CA^{n-1}B\ \ D\,]\) being equal to the number of outputs.
Fourth, because the system is linear, we may take \(\mathbf{x}(0)=\mathbf{0}\) without loss of generality: the free response \(\Phi(t_f)\mathbf{x}(0)\) is a fixed vector that can be subtracted from the target. The whole question is what set of points the forced term alone can reach.
Controllability asks whether every vector \(\boldsymbol{\xi}\in\mathbb{R}^{n}\) can be produced by some choice of \(u\). Written this way the question looks impossible — the unknown is a whole function. The next section shows that it collapses to a finite linear-algebra problem.
The Kalman Rank Test
The collapse is delivered by Cayley–Hamilton, exactly as in Section 24-5. The exponential inside the integral is a polynomial in \(A\) of degree at most \(n-1\), with time-dependent scalar coefficients:
Substituting and exchanging the finite sum with the integral — legitimate, since the sum has only \(n\) terms — the matrices \(A^kB\) come out as constants and only scalars remain under the integral sign:
This is the decisive step. Whatever function \(u(t)\) is applied, its entire effect on the final state is transmitted through the \(n\) numbers \(\beta_0,\ldots,\beta_{n-1}\). The reachable set is therefore exactly the span of the columns of \(B, AB, \ldots, A^{n-1}B\) — no more and no less. Collect those blocks side by side and the condition becomes a rank condition.
For a single-input system \(Q_c\) is \(n\times n\) and the test reduces to \(\det Q_c\ne0\). For \(m\) inputs \(Q_c\) is \(n\times nm\) and one must check the rank. Powers beyond \(A^{n-1}\) are wasted effort: Cayley–Hamilton guarantees they add no new directions.
If the rank is \(r<n\), the reachable set is an \(r\)-dimensional subspace of the state space. Directions outside it are unreachable no matter how cleverly the input is designed — the deficiency is structural, not a failure of ingenuity.
The rank test says whether a target is reachable but not what it costs. That is answered by the controllability Gramian, obtained by choosing the input that minimises \(\int_0^{t_f}\|u\|^2dt\) among all inputs achieving the target:
\(W_c\) is symmetric and positive semi-definite, and it is non-singular precisely when \(\operatorname{rank}Q_c=n\) — the same test in another dress. Its value, however, is quantitative: an eigenvalue of \(W_c\) that is tiny but non-zero means the corresponding direction is technically reachable but only at enormous cost. Systems like that are called weakly controllable, and in practice they behave like uncontrollable ones, because the required input exceeds any real actuator.
One further fact makes the test trustworthy: controllability is a property of the system, not of the coordinates chosen to describe it. Under the similarity transformation \(\tilde{\mathbf{x}}=P^{-1}\mathbf{x}\) of Chapter 23, \(\tilde{A}=P^{-1}AP\) and \(\tilde{B}=P^{-1}B\), so \(\tilde{A}^{k}\tilde{B}=P^{-1}A^{k}B\) and hence
because multiplying by a non-singular matrix cannot change rank. Choosing different state variables for the same physical system can never create or destroy controllability. The same argument with \(\tilde{Q}_o=Q_oP\) covers observability.
Observability: Reading the State from the Output
The second question reverses the arrows. Measurements give \(y(t)\), a signal of dimension \(p\) that is usually far smaller than \(n\). Can the full internal state be deduced from it?
The property belongs to the pair \((A,C)\) only. Knowing \(\mathbf{x}(0)\) is enough: Chapter 24's solution then delivers \(\mathbf{x}(t)\) for all later times, so observability is equivalent to being able to reconstruct the whole trajectory.
Since \(u(t)\) is known, its contribution to the output can be computed and subtracted, leaving the free-response part alone to carry the information about \(\mathbf{x}(0)\):
Expanding the exponential by Cayley–Hamilton once more,
The measured signal is a known combination of the \(n\) fixed vectors \(CA^{k}\mathbf{x}(0)\), \(k=0,\ldots,n-1\). Because the scalar functions \(\alpha_k(t)\) are linearly independent, watching \(\bar{y}\) over an interval reveals every one of those products. So the problem reduces to: do the equations \(C\mathbf{x}_0, CA\mathbf{x}_0,\ldots,CA^{n-1}\mathbf{x}_0\) determine \(\mathbf{x}_0\) uniquely? Stack them.
Full rank means \(Q_o\mathbf{x}_0=\mathbf{0}\) has only the trivial solution, so two different initial states can never produce the same output record. If the rank is \(r<n\), the null space of \(Q_o\) has dimension \(n-r\): any initial state lying in it produces \(y(t)\equiv0\) and is completely invisible.
That null space is the concrete meaning of an unobservable system, and it is worth stating plainly: there exist non-zero initial states whose entire free motion produces no output at all. The system moves; the sensor reports nothing. An identical construction gives the observability Gramian \(W_o(t_f)=\int_0^{t_f}e^{A^{T}\tau}C^{T}Ce^{A\tau}d\tau\), whose inverse recovers the initial state and whose small eigenvalues signal directions that are visible only faintly — the ones that will be swamped by sensor noise.
Duality
The two derivations were suspiciously similar, and the resemblance is not a coincidence. Transpose the observability matrix:
which is precisely the controllability matrix of the pair \((A^{T},C^{T})\). Since transposition preserves rank, the two properties are the same property applied to two different systems.
The dual system \(\dot{\mathbf{z}}=A^{T}\mathbf{z}+C^{T}v\), \(w=B^{T}\mathbf{z}\) has the controllability of the original's observability and vice versa. Any theorem proved for one property is automatically true for the other with the substitutions \(A\to A^{T}\), \(B\to C^{T}\), \(C\to B^{T}\).
Duality is a labour-saving device of the first order, and Chapter 26 will exploit it directly: the observer gain \(L\) is computed by running the state-feedback pole-placement algorithm on the dual pair \((A^{T},C^{T})\) and transposing the answer. One algorithm, two problems.
| Controllability | Observability |
|---|---|
| Concerns the pair \((A,B)\) | Concerns the pair \((A,C)\) |
| Can the input reach every state? | Can the output reveal every state? |
| \(Q_c=[\,B\ AB\ \cdots\ A^{n-1}B\,]\), \(n\times nm\) | \(Q_o=[\,C;\ CA;\ \cdots;\ CA^{n-1}\,]\), \(np\times n\) |
| Failure hides a mode from the input | Failure hides a mode from the output |
| Needed for arbitrary pole placement | Needed for observer design |
| Guaranteed by controllable canonical form | Guaranteed by observable canonical form |
The Modal Test: Seeing Which Mode Is Lost
The rank tests give a verdict but not a diagnosis. To see which mode has been lost, move to modal coordinates. Suppose \(A\) has distinct eigenvalues, so that \(A=V\Lambda V^{-1}\) as in Section 24-6, and set \(\tilde{\mathbf{x}}=V^{-1}\mathbf{x}\). The state equation becomes fully decoupled:
The system has become \(n\) independent first-order systems in parallel, each with its own input coupling \(\tilde{b}_i\) — the \(i\)-th row of \(V^{-1}B\) — and its own output coupling \(\tilde{c}_i\), the \(i\)-th column of \(CV\). Now the answer is visible by inspection: if \(\tilde{b}_i=0\), nothing the input does can affect \(\tilde{x}_i\); if \(\tilde{c}_i=0\), nothing \(\tilde{x}_i\) does can affect \(y\).
Each zero row names an uncontrollable mode; each zero column names an unobservable mode. The test requires distinct eigenvalues — with repeated eigenvalues the modes are no longer independent and the Jordan-form version of the criterion is needed instead.
The figure is the whole chapter in one picture. In modal coordinates the system is a parallel bank of independent first-order blocks, and each mode has exactly two wires — one from the input, one to the output. Cut either wire and that mode drops out of the transfer function. Now read off the transfer function of the bank directly:
Each term is the residue at one pole, which is exactly the partial-fraction expansion of Chapter 3. The residue is the product \(\tilde{c}_i\tilde{b}_i\), so it vanishes if either factor does. A missing pole in \(G(s)\) means a zero residue, which means a broken input wire, a broken output wire, or both.
Hidden Modes, Minimality, and the Kalman Decomposition
Everything now converges. A state model of order \(n\) whose transfer function has degree \(r<n\) is called non-minimal, and the missing \(n-r\) poles are hidden modes. Section 25-6 identified their cause exactly.
Every transfer function has infinitely many realisations, but all minimal realisations of a given \(G(s)\) have the same order and are related by a similarity transformation. The transfer function determines the controllable-and-observable part of a system and nothing else.
In general the state space splits into four subspaces according to whether each mode is controllable and whether it is observable. This is the Kalman decomposition: by a similarity transformation the model can always be brought to a form in which the four groups are separated.
Only the shaded quadrant has both a path from the input and a path to the output, so only its modes appear in \(G(s)\). The other three are real, they evolve, they can diverge — and the transfer function says nothing about any of them. This is the precise sense in which state-space analysis is richer than transfer-function analysis.
The practical danger is now sharp. Chapter 12 warned against cancelling an unstable pole with a compensator zero, and this chapter explains why in structural terms: such a cancellation creates an unstable hidden mode. The closed loop appears stable in every transfer-function calculation, every Bode plot, every Nyquist contour, while an internal variable grows exponentially until something saturates or breaks. The cancellation is never exact in practice anyway, so a nearly cancelled unstable pole leaves a nearly invisible, extremely slowly converging root locus branch in the right half plane.
Complete controllability is more than most designs need. If the uncontrollable modes happen to be stable, they decay on their own and can be left alone; what matters is only that the unstable modes be controllable. The same relaxation applies on the output side, and the two weakened properties are given their own names.
| Property | Requirement | What it buys |
|---|---|---|
| Controllable | Every mode reachable from \(u\) | All \(n\) closed-loop poles may be placed arbitrarily (Chapter 26) |
| Stabilizable | Every unstable mode reachable | A stabilising state feedback exists, though not arbitrary pole placement |
| Observable | Every mode visible at \(y\) | An observer with arbitrary error dynamics can be built |
| Detectable | Every unstable mode visible | An observer whose estimation error converges exists |
Stabilizable plus detectable is the true minimum requirement for a working feedback design, and it is the standing assumption behind the optimal control results of Chapter 30. A system that is neither cannot be stabilised by any controller whatsoever — no tuning, no compensator, no amount of gain. That is a hardware verdict: change the actuator, change the sensor, or change the plant.
Worked Examples
Problem. Test \(A=\begin{bmatrix}0&1\\-2&-3\end{bmatrix}\), \(B=\begin{bmatrix}0\\1\end{bmatrix}\) for complete state controllability.
Solution. With \(n=2\) the matrix \(Q_c\) needs only \(B\) and \(AB\).
The system is completely state controllable. This is no surprise: \(A\) and \(B\) are in controllable canonical form, and that form is controllable for every choice of coefficients — its \(Q_c\) always has ones on the anti-diagonal and zeros above it, so the determinant is \(\pm1\).
Problem. For the same \(A\), test observability with \(C_1=\begin{bmatrix}1&0\end{bmatrix}\) and then with \(C_2=\begin{bmatrix}1&1\end{bmatrix}\).
Solution. Build \(Q_o=\begin{bmatrix}C\\CA\end{bmatrix}\) in each case.
Observable. Now the second sensor:
Rank 1, so the system is not observable through \(C_2\). The null space of \(Q_o\) is spanned by \(\begin{bmatrix}1&-1\end{bmatrix}^{T}\) — and that is precisely the slow eigenvector found in Example 5 of Chapter 24. An initial state along it produces \(y(t)\equiv0\) forever. The transfer function confirms it:
The zero introduced by the sensor sits exactly on the pole at \(s=-1\). Changing nothing but the measurement point turned a minimal system into a non-minimal one — the pole–zero map that opened this chapter.
Problem. Examine \(A=\begin{bmatrix}-1&0\\0&-2\end{bmatrix}\), \(B=\begin{bmatrix}0\\1\end{bmatrix}\), \(C=\begin{bmatrix}1&1\end{bmatrix}\).
Solution. \(A\) is already diagonal, so the modal test applies immediately: \(\tilde{B}=B\) has a zero first row, so the mode \(\lambda=-1\) is uncontrollable; \(\tilde{C}=C\) has no zero column, so both modes are observable. Confirm with the rank tests.
The reachable set is the line spanned by \(\begin{bmatrix}0&1\end{bmatrix}^{T}\): the input can move \(x_2\) freely but can never change \(x_1\), which simply decays as \(e^{-t}\) from whatever value it started with. The transfer function \(G(s)=1/(s+2)\) has lost the pole at \(-1\) even though the sensor can see that mode perfectly well — a broken input wire is enough on its own.
Problem. Test controllability of \(A=\begin{bmatrix}0&1&0\\0&0&1\\-6&-11&-6\end{bmatrix}\), \(B=\begin{bmatrix}0\\0\\1\end{bmatrix}\).
Solution. Three columns are needed, so compute \(AB\) and \(A^{2}B\) in turn.
Expanding along the first row, only the entry \(1\) in position \((1,3)\) contributes:
Rank 3, so the system is controllable. The anti-triangular pattern of ones is generic: a controllable canonical form of any order gives \(\det Q_c=\pm1\) regardless of the coefficients \(a_i\), which is exactly why Chapter 26 transforms a system into that form before placing poles.
Problem. For \(A=\operatorname{diag}(-1,-2,-3)\), \(B=\begin{bmatrix}1\\0\\2\end{bmatrix}\), \(C=\begin{bmatrix}1&1&0\end{bmatrix}\), \(D=0\), identify the hidden modes and give the minimal realisation order and \(G(s)\).
Solution. \(A\) is diagonal with distinct eigenvalues, so Gilbert's criterion applies directly. The second row of \(B\) is zero, so the mode \(\lambda=-2\) is uncontrollable. The third column of \(C\) is zero, so the mode \(\lambda=-3\) is unobservable.
A whole row of zeros in \(Q_c\) and a whole column of zeros in \(Q_o\) make both ranks deficient without any determinant work. Only the mode \(\lambda=-1\) is both controllable and observable, so the minimal realisation has order 1. Using the modal formula \(G(s)=\sum \tilde{c}_i\tilde{b}_i/(s-\lambda_i)\):
A third-order physical system with a first-order transfer function. Both hidden modes are stable here, so the system is stabilizable and detectable and a working design is still possible — but if either \(-2\) or \(-3\) were replaced by \(+2\) or \(+3\), no controller of any kind could save it.
Problem. For \(A=\begin{bmatrix}-1&1\\0&-2\end{bmatrix}\) and \(B=\begin{bmatrix}1\\\alpha\end{bmatrix}\), find all values of \(\alpha\) for which the system loses controllability, and name the lost mode in each case.
Solution. Compute \(AB\) and the determinant symbolically.
The determinant vanishes at \(\alpha=0\) and \(\alpha=-1\); for every other value the system is controllable. To see which mode is lost, diagonalise. \(A\) is triangular so the eigenvalues are \(-1\) and \(-2\); the eigenvectors are \(\mathbf{v}_1=\begin{bmatrix}1\\0\end{bmatrix}\) and \(\mathbf{v}_2=\begin{bmatrix}1\\-1\end{bmatrix}\).
The first entry vanishes at \(\alpha=-1\), killing the mode \(\lambda=-1\); the second vanishes at \(\alpha=0\), killing the mode \(\lambda=-2\). The two roots of \(\det Q_c\) are accounted for one by one, and the modal test has told us not merely that controllability failed but exactly which dynamics went out of reach.
Chapter Summary
Any \(\mathbf{x}_0\) can be driven to any \(\mathbf{x}_f\) in finite time; a property of \((A,B)\) alone.
\(\operatorname{rank}[\,B\ AB\ \cdots\ A^{n-1}B\,]=n\); the span of those columns is the reachable set.
\(\mathbf{x}(0)\) recoverable from \(y\) and \(u\); test \(\operatorname{rank}[\,C;CA;\cdots;CA^{n-1}\,]=n\).
\(W_c\), \(W_o\) non-singular give the same verdict, plus the energy cost the rank hides.
\((A,C)\) observable \(\iff\) \((A^{T},C^{T})\) controllable — one algorithm serves both.
Zero row of \(V^{-1}B\) = uncontrollable mode; zero column of \(CV\) = unobservable mode.
Controllable and observable \(\iff\) minimal \(\iff\) no pole–zero cancellation in \(G(s)\).
Stabilizable and detectable — unstable modes reachable and visible — suffice for design.
Problems
Assume single-input, single-output systems unless stated otherwise. Where \(A\) is diagonal, use the modal test and verify with the rank test; where it is not, go straight to \(Q_c\) and \(Q_o\). Difficulty rises down the list.
- Test \(A=\begin{bmatrix}0&1\\-6&-5\end{bmatrix}\), \(B=\begin{bmatrix}0\\1\end{bmatrix}\) for controllability, and \(C=\begin{bmatrix}1&0\end{bmatrix}\) for observability.
- Test \(A=\begin{bmatrix}-2&0\\0&-4\end{bmatrix}\), \(B=\begin{bmatrix}1\\0\end{bmatrix}\), \(C=\begin{bmatrix}1&1\end{bmatrix}\), and name any hidden mode.
- For \(A=\begin{bmatrix}-1&0\\0&-1\end{bmatrix}\) and \(B=\begin{bmatrix}1\\1\end{bmatrix}\), show the system is uncontrollable and explain why no single input can control two identical decoupled modes.
- A second-order state model produces \(G(s)=\dfrac{s+3}{(s+2)(s+3)}\). State the minimal order, name the hidden mode, and say whether the realisation is stabilizable and detectable.
- For \(A=\operatorname{diag}(-1,-2,-4)\), \(B=\begin{bmatrix}2&0&1\end{bmatrix}^{T}\), \(C=\begin{bmatrix}1&3&0\end{bmatrix}\), identify all uncontrollable and unobservable modes and write \(G(s)\).
- For \(A=\begin{bmatrix}0&1\\-2&-3\end{bmatrix}\), \(B=\begin{bmatrix}1\\\beta\end{bmatrix}\), find all \(\beta\) for which controllability is lost.
- Verify by direct computation that \(A=\begin{bmatrix}0&1&0\\0&0&1\\-2&-4&-3\end{bmatrix}\), \(C=\begin{bmatrix}1&0&0\end{bmatrix}\) is observable, and state the general result for the observable canonical form.
- Use duality to decide whether \(A=\begin{bmatrix}-3&1\\0&-5\end{bmatrix}\), \(C=\begin{bmatrix}0&1\end{bmatrix}\) is observable, by testing the controllability of the dual pair.
- Prove that similarity transformation cannot change observability, and state the relation between \(Q_o\) and \(\tilde{Q}_o\).
- A plant has an unstable pole at \(s=+2\) that is uncontrollable but observable. Explain what a feedback designer will see in simulation, and why the design cannot be rescued by any choice of controller.
- For \(A=\begin{bmatrix}0&1\\0&0\end{bmatrix}\), \(B=\begin{bmatrix}0\\1\end{bmatrix}\), compute the controllability Gramian \(W_c(t_f)\) in closed form and find the minimum energy needed to drive the state from the origin to \(\begin{bmatrix}1&0\end{bmatrix}^{T}\) in time \(t_f\). Comment on the behaviour as \(t_f\to0\).
- A system is uncontrollable, but every uncontrollable mode lies at \(s=-8\). Is a stabilising state feedback still possible? Name the property being invoked and state what is given up.
- Explain why complete controllability of \((A,B)\) guarantees that the eigenvalues of \(A-BK\) can be assigned arbitrarily, referring to the canonical-form argument of Example 4.