[Math] Show stability of Kalman filter

control theorykalman filter

Consider the system:
$ \begin{cases} \dot{x} = Ax + Bu \\ y = Cx + Du \end{cases}$

Where $(A,B)$ is completely reachable and $(C, A)$ completely observable. $P$ is the positive definite solution to $AP + PA^T – PC^T(DRD^T)^{-1}CP+B^TB = 0$. Show that $A – PC^T(DRD^T)^{-1}C$ is a stable matrix.

We know from research that as $t\to\infty$, $P(t)$ in a Kalman filter goes to a limit which solves the following equation: $\begin{equation*} AP + PA^T – PC^T(DRD^T)^{-1}CP+B^TQB = 0 \end{equation*}$.

Hence the Kalman gain $K$ is:
$\begin{equation*} K = PC^T(DRD^T)^{-1} \end{equation*}$

Hence we have a new steady-state Kalman filter as $t\to\infty$, given by:
$\begin{equation*} \dot{\hat{x}}= A\hat{x} + K(y-C\hat{x}) = A\hat{x} + PC^T(DRD^T)^{-1}(y-C\hat{x}) = \\ (A – PC^T(DRD^T)^{-1}C)\hat{x}+PC^T(DRD^T)^{-1}y\end{equation*}$

How do I show that this system is stable? I have tried with the same technique as in: https://liu.diva-portal.org/smash/get/diva2:903971/FULLTEXT02.pdf
on page 23, but unsuccessfully.

Do you have any ideas how I can prove the stability?

Best Answer

For a Kalman filter you are not so much interested in the "stability" of $\hat{x}$ (full state estimation), but in the error between $x$ (the actual state) and $\hat{x}$. Because if this error goes to zero, then $\hat{x}$ will become equal to $x$, which is what we want.

The dynamics of $\hat{x}$ can be written as,

$$ \dot{\hat{x}} = A\,\hat{x} + B\,u + K\,(y - C\,\hat{x} - D\,u), \tag{1} $$

Defining the error as $e = x - \hat{x}$, and thus its derivative as $\dot{e} = \dot{x} - \dot{\hat{x}}$. Substituting in the expressions for $\dot{x}$, $\dot{\hat{x}}$ and $y$ yields,

$$ \dot{e} = \left(A\,x + B\,u\right) - \left(A\,\hat{x} + B\,u + K\,((C\,x + D\,u) - C\,\hat{x} - D\,u)\right) = \left(A - K\,C\right)e. \tag{2} $$

So if $A - K\,C$ is a Hurwitz matrix, then the magnitude of $e$ will go down in time and $\hat{x}$ will keep becoming a better estimation of $x$.


You are correct that $K=P\,C^T(D\,R\,D^T)^{-1}$. Now if you define the dynamics of some new variable $\zeta$ as,

$$ \dot{\zeta} = \left(A - P\,C^T(D\,R\,D^T)^{-1}C\right)^T \zeta, \tag{3} $$

then the stability of this dynamics will be the same as for $e$, since transposing does not change the eigenvalues of a matrix. A quadratic Lyapunov for this system can shown to be,

$$ V(\zeta) = \zeta^T P\,\zeta, \tag{4} $$

since its time derivative equals,

$$ \dot{V}(\zeta) = \zeta^T P\,\dot{\zeta} + \dot{\zeta}^T P\,\zeta = \zeta^T \left(P\,A^T + A\,P - 2\,P\,C^T(D\,R\,D^T)^{-1}C\,P\right) \zeta. \tag{5} $$

Using that $P\,A^T + A\,P - \,P\,C^T(D\,R\,D^T)^{-1}C\,P + B^T B = 0$, then

$$ P\,A^T + A\,P - 2\,P\,C^T(D\,R\,D^T)^{-1}C\,P = -B^T B - \,P\,C^T(D\,R\,D^T)^{-1}C\,P, \tag{6} $$

but $B^T B$ and $P\,C^T(D\,R\,D^T)^{-1}C\,P$ will be (semi-)positive definite and a sum of a positive definite matrix and a semi-positive definite matrix will also yield a positive definite matrix. So the left hand side of equation $(6)$ will be a negative definite matrix and therefore $V(\zeta)$ will be quadratic Lyapunov of equation $(3)$, which implies that the corresponding matrix must be Hurwitz.

Related Question