I'm writing a controller for an inverted pendulum in which the state vector isn't completely measurable. The state vector is $\mathbf{x}\in\mathbb{R}^4$ and the output vector is $\mathbf{y}\in\mathbb{R}^2$.

The worked examples of evaluating observability that I've found all use $\mathbf{y}\in\mathbb{R}^1$, so I'm reaching out here to ask whether I'm correctly calculating rank of the observability matrix $O$.

The output matrix $C$ is $$ C = \begin{bmatrix} 1&0&0&0 \\ 0&0&1&0 \end{bmatrix} $$

The observability matrix $O$ is $$ O = \begin{bmatrix} C \\ CA \\ CA^2 \\ CA^3 \end{bmatrix} $$

A rounded version of the system matrix $A$ is $$ A = \begin{bmatrix} 0&10&0&0\\ 1&0&0&0\\ 0&-20&0&0\\ 0&0&1&0\end{bmatrix} $$

The resulting observability matrix $O$ is then

$$ O = \begin{bmatrix} \begin{bmatrix}1&0&0&0\\0&0&1&0\end{bmatrix}\\ \begin{bmatrix}0&10&0&0\\0&-20&0&0\end{bmatrix}\\ \begin{bmatrix}10&0&0&0\\-20&0&0&0\end{bmatrix}\\ \begin{bmatrix}0&100&0&0\\0&-200&0&0\end{bmatrix}\\ \end{bmatrix} $$


1. On taking the rank of nested matrices

Wikipedia defines the rank of a matrix A is the dimension of the vector space generated (or spanned) by its columns. Could I not say that $O$ is full rank 1 of 1 because it contains a single column of nonzero elements?

No, in this context we view this not as a 4x1 of 2x4 but as a melded 8x4 matrix. Rank is then established by checking linear independence of the four columns.

2. On how the output matrix $C$ is represented

The way I represented the output matrix $C$ here as $q$x$n$ where $\mathbf{x}\in\mathbb{R}^n$ and $\mathbf{y}\in\mathbb{R}^q$ is in accordance with the Wikipedia article on State-Space.

However, the two controls textbooks I'm looking at:

  • Feedback Control of Dynamic Systems (6th Edition) (FPE)
  • Control Systems Engineering (7th Edition) (Nise)

strictly consider cases in which the shape of $\mathbf{x}$ and $\mathbf{y}$ is identical. The shape of the $C$ matrix is always $1$x$n$. Zero terms in $C$ are used to represent un-measurable terms in the output vector $\mathbf{y}$. For example, let $\mathbf{x} = \begin{bmatrix}\dot\theta\\\theta\\\dot\phi\\\phi\end{bmatrix}$. If only the terms $\dot\theta$ and $\dot\phi$ appear in the output vector $\mathbf{y}$, then the C matrix is given as $C = \begin{bmatrix}1&0&1&0\end{bmatrix}$

This approach feels misleading to me, as a term in the output vector $\mathbf{y}$ that's always zero is conceptually different from a term that doesn't appear at all. Nonetheless, it's valid for the sake of calculating rank.

$$ O = \begin{bmatrix} 1&0&1&0\\ 0&-10&0&0\\ -10&0&0&0\\ 0&-100&0&0 \end{bmatrix} $$


Both approaches show one three columns with linear independence and one without. Therefore the rank is 3.

  • $\begingroup$ that last column of zeros would bound the rank at $3.$ Basically you can't observe the 4th state. So yes your system is not observable. That seems odd to me though.. if you are measuring the configuration variables (cart position and pendulum angle) i'd expect it to be observable (but its been a while since I've worked with this model.) $\endgroup$
    – Rollen
    Mar 12 '21 at 4:00
  • 1
    $\begingroup$ Thanks Rollen! I'll mark this as the accepted answer if you put it in answer form. I'm considering a specific case where the effective pendulum angle -- the angle of the rotating system center of mass with respect to vertical -- is not well known. Imagine the pendulum contains a wide basket at the top into which weights may be loaded. $\endgroup$ Mar 12 '21 at 5:04
  • $\begingroup$ @RemarkableBucket Also keep in mind a new paper that has applicability here: Nevanlinna Analytical Continuation. $\endgroup$
    – jonk
    Mar 12 '21 at 5:18
  • $\begingroup$ @jonk, I don't see the applicability. The linked paper doesn't mention matrix rank or observability. Could you please explain how this paper is applicable? $\endgroup$ Mar 12 '21 at 5:23
  • $\begingroup$ That makes more sense. Such a system may be unobservable. $\endgroup$
    – Rollen
    Mar 12 '21 at 5:33

You've evaluated it correctly although it is easier to see the rank through the columns in this case. The last column of zeros places an upper bound on the rank at 3; from that alone you can conclude the system is not observable. Specifically, the first three columns are linearly independent so then you can conclude the rank is 3 and therefore you can only observe the evolution of the system in a 3 dimensional subspace of the entire state-space. Note that last column of zeros indicate that you cannot observe the evolution of the 4th state.

  • $\begingroup$ Thanks Rollen! I've edited the question, simplifying the example. Do you know where I can find a definition of rank for a matrix of matrices? $\endgroup$ Mar 12 '21 at 6:12
  • $\begingroup$ @RemarkableBucket We don't view that matrix as a literal matrix of matrices. We literally treat it as a 8x4 matrix where the elements are filled out in the order prescribed as if we stacked them. But its just an 8x4 matrix. Then the definition of the rank of that matrix is standard. $\endgroup$
    – Rollen
    Mar 12 '21 at 6:23

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.