Is the Kalman Filter Optimal for Unobservable State Elements?

184 Views Asked by At

I understand that the Kalman filter is an optimal estimator if the state model $x_k = Fx_{k-1} + Bu_k + w$ and measurement model $z_k = Hx_k+v$ match real system, the noises $v$ and $w$ are normally distributed with zero means, and the covariances of these noises are known.

But does this optimality hold for an element of the state vector $x^i_k \in x_k$ if that element is unobservable from the measurement model?

Edit: I mean optimal in the sense that the filter minimizes the mean square error of the state estimate, and that the square roots of the diagonal elements of the covariance estimate are equal to the state estimate error standard deviations.

As a bit of background, I've set up a Kalman filter estimating a pair of particles moving with constant acceleration. The filter has perfect knowledge of the dynamics, noises and noise covariance, as well as the initial error covariance. When both particles are observable the filter converges very well, the state estimate errors are white noises, and the square roots of the diagonal elements of the covariance estimate are equal to the state estimate error standard deviations. The first three estimated standard deviations correctly bound 68/95/99% of the error appropriately.

If I make one particle unobservable, its state elements do not converge as should be expected since it cannot be measured. However, I thought that the state estimate error should still be bounded by the corresponding square roots of the diagonal elements of the covariance estimate. I've gone through the code a few times and cannot find any programming errors and so I've started to question if this bounding should be expected for an unobservable state element.