2
$\begingroup$

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

$\endgroup$
1
$\begingroup$

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$.

$\endgroup$
  • $\begingroup$ 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? $\endgroup$ – Dimitri C Apr 18 '16 at 14:58
  • 1
    $\begingroup$ 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. $\endgroup$ – yoknapatawpha Apr 18 '16 at 15:42
1
$\begingroup$

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.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.