[Math] How to find detectable and stabilizable states in robust control

control theorydynamical systemslinear-controlMATLABoptimal control

Let's say that we have a matrix of transfer functions:
$$G(s) = C(sI-A)^{-1}B + D$$

And we create the sensitivity matrix transfer function:

$$S(s) = (I+GK)^{-1}$$

Where $K$ is our controller gain matrix.

We also create the complementary sensitivity transfer function matrix:

$$T(s) = (I+GK)^{-1}GK$$

We also create the weighting transfer function matrices:
$$W_u(s) \\ W_T(s) \\ W_P(s)$$

You can see them as the tunning matrices. This picture below representing the $H_{ \infty}$ controller. Where $z$ is our performance output. Only for analysis. The $G$ is our transfer function matrix and $K$ is as mention before, our controller gain matrix. $w$ it's a vector of disturbance. Notice that $\omega \neq w$

enter image description here

This whole picture can be described as:
$$\begin{bmatrix}
z_1 = W_uu\\
z_2 = W_TGu\\
z_3 = W_Pw + W_PGu\\
v = w + Gu
\end{bmatrix}$$

And we can create our generalized plant P:

$$P = \begin{bmatrix}
0 & WuI \\
0& W_TG\\
W_PI & WpG\\
I & G
\end{bmatrix}$$

$$z = Pw = \begin{bmatrix}
0 & WuI \\
0& W_TG\\
W_PI & WpG\\
I & G
\end{bmatrix}
\begin{bmatrix}
w\\
u
\end{bmatrix}$$

We ca partioning the generalized plant P by saying that:

$$P = \begin{bmatrix}
P_{11} & P_{12}\\
P_{21}& P_{22}
\end{bmatrix} = \begin{bmatrix}
A & B_1 & B_2\\
C_1 & D_{11} & D_{12} \\
C_2 & D_{21} & D_{22}
\end{bmatrix}$$

Then we can say:

$$P_{11} = \begin{bmatrix}
A
\end{bmatrix} = \begin{bmatrix}
0\\
0\\
W_PI
\end{bmatrix}$$
$$P_{12} = \begin{bmatrix}
B_1 & B_2
\end{bmatrix} = \begin{bmatrix}
W_uI\\
W_TG\\
W_PG
\end{bmatrix}
$$
$$P_{21} = \begin{bmatrix}
C_1\\
C_2
\end{bmatrix} = \begin{bmatrix}
I
\end{bmatrix}
$$
$$
P_{22} = \begin{bmatrix}
D_{11} & D_{12} \\
D_{21} & D_{22}
\end{bmatrix} = \begin{bmatrix}
G
\end{bmatrix}$$

So. Now to the question! In Robust Control, it's something called detectable and stabilizable. I wonder what it are. Accoring to a book I have, this:

$$A, B_2, C_2$$

and

$$A, B_1, C_1$$

needs to be detectable and stabilizable. The definition of stabilizable is:

A system is stabilizable if all unstable states are controllable.

The definition of detectable is:

A system is detectable if all unstable states are observable.

I know how to find out if a system is controllable and observable. That is very easy!

To check controllibility:

$$C_o \equiv \begin{bmatrix}
B & AB & A^2B & \dots & A^{n-1}B
\end{bmatrix}$$

And then check the rank
$$rank(C_o) = n$$

To check observbility:

$$O_o \equiv \begin{bmatrix}
C\\
CA\\
CA^2\\
\vdots\\
CA^{n-1}
\end{bmatrix}$$

And then check the rank
$$rank(O_o) = n$$

Question:
Do you know any formula or method to check if all unstable states are controllable and observable? Because i cannot find any states in my system which are unstable. If I find a unstable state, that means my system matrix $A$ has some positive eigenvalues? Right?

Best Answer

I think you started with some wrong definitions.

The right definition for stabilizability and detectability should be:

A system is stabilizable if the uncontrollable states are stable.

A system is detectable if the unobservable states are asymptotically stable.

You seemed to be using the definition the other way around.

So with these definitions, the task should be very straightforward.

  • For stabilizability, you simply decompose the system into controllable and uncontrollable subsystems, and then check if the uncontrollable subsystem is stable.

  • For detectability, again, decompose the system into observable and unobservable subsystems, then check if the unobservable subsystem is asymptotically stable.