# Say whether an LTI system is controllable or not, without the controllability matrix

I have matrix $\mathbf{A}=\begin{bmatrix}2 & 1 & 0 & 0 \\ 0 & 2 & 0 &0 \\ 0 & 0 & -1 &0 \\0 & 0 & 0 &-2\end{bmatrix}$ and vector $\mathbf{b}=\begin{bmatrix}0\\1\\1\\2\end{bmatrix}$.

An LTI system is described by the equation $\dot{\mathbf{x}}=\mathbf{Ax}+\mathbf{b}u$ where $u$ is the input of the system.

I want to decide if the sytem is controllable or not without calculating the controllability matrix $\mathcal{M}_c=\begin{bmatrix}\mathbf{B}&\mathbf{AB}&\mathbf{A^2B}&\mathbf{A^3B}\end{bmatrix}$.

Is there any way to do that? Thanks

## 2 Answers

This question has some nice structure that lets us assess controllability by inspection.

First notice that $\dot{x}_2 = 2x_2 + u$, which means that by carefully selecting $u$ we can set the value of $x_2$. Similarly, $\dot{x}_3 = -x_3 + u$ and $\dot{x}_4 = -2x_4 + 2u$, which means that by carefully selecting $u$ we can determine $x_2$, $x_3$, and $x_4$ "directly" (because $u$ appears in their dynamics).

On the other hand, $\dot{x}_1 = 2x_1 + x_2$, and clearly these dynamics do not have a $u$ in them. Nonetheless, because we can push $x_2$ to any value we want, the dependence of $x_1$ on $x_2$ means that we can also push $x_1$ to any value we want. Then we can choose any value for each state and the system is completely controllable.

To verify this logic, try compute $\mathcal{M}_c$ with $A$ and $b$ as given. This will give $\text{rank}(\mathcal{M}_c) = 4$. Then try setting $A_{1,2} = 0$ and recomputing $\mathcal{M}_c$ for this case. As we expect, $\text{rank}(\mathcal{M}_c) = 3$.

• Thank you very much. I completely understand what you are saying but after some experiments I find a result which bugs me. If I set $\mathbf{A}_{11}=-2$ and $\mathbf{A}_{22}=-2$ (leave the rest $\mathbf{A}$ as is)and compute $\mathcal{M}_c$ then I get a rank equal to 3. Shouldn't I get rank $4$ again? – Dimitri C Apr 18 '16 at 14:58
• This kind of intuitive reasoning can definitely fail and I believe your example is an example of such a failure. It's probably better to apply the kind of intuition in my answer to see why a system is controllable rather than to assess controllability itself; controllability is of course best checked via the rank of $\mathcal{M}_c$. I'll try to find a good reason for having the above explanation break down, and I'll post a follow-up if I find anything revealing. – yoknapatawpha Apr 18 '16 at 15:42

There is an alternative to calculating the controllability matrix, called controllability Gramian. It offers a better numerical stability for most cases, such that it is recommended for day-to-day use instead of the controllability matrix.