What do the (high) values in a controllability matrix mean?

117 Views Asked by At

Consider a linear state space system $ \dot{x} = Ax + B$, with $x$ being a vector of state variables, and $A$ and $B$ being known matrices.

I checked the controllability matrix of the system $Co = [B \; AB \; A^2B \dots A^{n-1}B]$ via a MATLAB function ($rank(ctrb(A,B))$), and got a full rank matrix and thus, the system is controllable.

However, the matrix $Co$ has values that range from $-8.0220e+05$ until $1.0672e+06$, which seems quite extreme, as my $x$ values lie in the range of $0-100$.

My question is then: What do these high values in a controllability matrix mean, and should I worry about these values being this far from the range of x values?

1

There are 1 best solutions below

3
On

Depending on the size of your system and the magnitude of the entries, the controllability matrix may be ill-conditioned and computing its rank will be prone to numerical errors. In other words, this approach should sometimes be avoided. Issues especially arise when some entries are very close to 0. High values may be problematic when much smaller values are also present, which may lead to numerical problems.

In your example, no entry is very close to zero but there is a quite big gap between entries, so I would be careful. Without more details on the matrices $A$ and $B$ you consider, it is difficult to say much more.

More stable approaches are those using the PBH-test or through the calculation of the controllability Gramian.