5  Kalman filter generalizations

In the previous chapters, the derivation of the discrete Kalman filter was presented under specific assumptions. In this chapter, the Kalman filter is derived in a more generalized form.

The main reference for this chapter is Simon (2006).

5.1 Correlated process and measurement noise

In the Kalman filter derivation, one of the assumptions was that the measurement and process noises were uncorrelated. However, that may not be the case always.

For example, the system considered is an airplane and winds are buffeting the plane. An anemometer is used to measure wind speed as a n input to the Kalman filer. The random gusts of wind affect both the process (i.e. airplane dynamics) and the measurement (i.e. the sensed wind speed). Hence, there will be a correlation between the noises.

The general form of such systems is given as

\[ \begin{align} \mathbf{x}_k &= \mathbf{F}_{k-1}\mathbf{x}_{k-1}+\mathbf{G}_{k-1}\mathbf{u}_{k-1}+\mathbf{w}_{k-1} \\ \mathbf{y}_k &= \mathbf{H}_k\mathbf{x}_k + \mathbf{v}_k \\ \mathbf{w}_k &\sim (\mathbf{0},\mathbf{Q}_k) \\ \mathbf{v}_k &\sim (\mathbf{0},\mathbf{R}_k) \\ E(\mathbf{w}_k\mathbf{w}_j^T) &= \mathbf{Q}_k\delta_{k-j}\\ E(\mathbf{v}_k\mathbf{v}_j^T) &= \mathbf{R}_k\delta_{k-j}\\ E(\mathbf{w}_k\mathbf{v}_j^T) &= \mathbf{M}_k\delta_{k-j+1} \end{align} \tag{5.1}\]

when compared to Eq. 3.2, the last equation in above system is having non-zero RHS, indicating cross-correlation between the measurement noise \(\mathbf{v}_k\) and process noise \(\mathbf{w}_k\). \(\mathbf{M}_k\) is the cross-correlation matrix.

For such cases, the Kalman filter equations were re-derived and presented in the reference Simon (2006), along with the algorithm.

5.2 Colored process and measurement noise

In the Kalman filer derivation, both the noises were assumed to be white. But, this may not be the case in reality. Hence, Kalman filter equations are modified/enhanced to handle colored noises.

  1. Colored process noise: this is handled by taking a separate dynamic system for the process noise. For an LTI system \(\mathbf{x}_k = \mathbf{F} \mathbf{x}_{k-1}+\mathbf{w}_{k-1}\), the process noise is assumed to the output from a dynamic system given as \(\mathbf{w}_k = \mathbf{\psi}\mathbf{w}_{k-1}+\zeta_{k-1}\). Where, \(\zeta_{k-1}\) is a zero-mean white noise uncorrelated with \(\mathbf{w}_{k-1}\). Then the system is solved.

  2. Colored measurement noise: There are two methods for this

    1. state augmentation: In this case, the measurement noise \(\mathbf{w}_k\) is assumed to be output from a dynamic system (similar to above). The difference is that the measurement noise is augmented to the state equations and solved.
    2. Measurement differencing: Here, the measurement \(\mathbf{y}_k\) is defined as an auxiliary signal \(\mathbf{y}_k' = \mathbf{y}_k-\psi_{k-1}\mathbf{y}_{k-1}\)

The details on implementation can be referred in Simon (2006).

5.3 Steady state filtering

  • This is useful when dealing with hardware like embedded systems in which the memory and computational effort are still a primary consideration.

  • If the underlying system is time-invariant, and the process- and measurement-noise covariances are time-invariant, then the time-varying Kalman filter derived can be replaced with a steady-state Kalman filter.

  • Here, the estimator error covariance i.e. \(\mathbf{P}_k\) matrix and the Kalman gain matrix \(\mathbf{K}_k\) are pre-computed in offline and fixed.

  • The term “steady-state” Kalman filtering means that the Kalman filter is time-invariant; it is the Kalman gain that is in steady state. The stead-state Kalman filter is still a dynamic system.

  • There are variants in steady state filtering like \(\alpha\)-\(\beta\) filtering (two-state Newtonian system with only position measurement), \(\alpha-\beta-\gamma\) filtering (three-state Newtonian system with only position measurement), and the Hamiltonian approach.

5.4 Kalman filtering with fading memory

  • In Section 3.4, the problem of filter divergence due to mismodeling was discussed. The addition of fictitious process noise can compensate the mismodeling. Here, the same thing is accomplished with the fading-memory filter.

  • The Kalman filter finds the sequence of estimates {\(\hat{\mathbf{x}}_1^-,\dots,\hat{\mathbf{x}}_N^-\)} that minimizes the mean of error estimation. In other words, it minimizes \(E(J_N)\) where \[ J_N = \sum_{k=1}^K\left[\left(\mathbf{y}_k-\mathbf{H}_k\hat{\mathbf{x}}_k^-\right)^T\mathbf{R}_k^{-1}\left(\mathbf{y}_k-\mathbf{H}_k\hat{\mathbf{x}}_k^-\right) + \hat{\mathbf{w}}_k^T\mathbf{Q}_k^{-1}\hat{\mathbf{w}}_k\right] \]

  • Instead of above expression for \(J_N\), the following one is used. \[ J_N = \sum_{k=1}^K\left[\left(\mathbf{y}_k-\mathbf{H}_k\hat{\mathbf{x}}_k^-\right)^T\alpha^{2k}\mathbf{R}_k^{-1}\left(\mathbf{y}_k-\mathbf{H}_k\hat{\mathbf{x}}_k^-\right) + \hat{\mathbf{w}}_k^T\alpha^{2k+2}\mathbf{Q}_k^{-1}\hat{\mathbf{w}}_k\right] \] with \(\alpha \ge 1\). It implies that we are interested in minimizing the weighted covariance of residual at recent times (large values of \(k\)) than the times at distant past (small values of \(k\)).

  • With the concept of \(\alpha\) in mind, the equations for Kalman gain and the estimation error covariance were derived and implemented.

5.5 Constrained Kalman filtering

  • In the application of state estimators, there is often known information that does not fit into the Kalman filter equations in an obvious way. Like, that the states satisfy some equality constraints \(\mathbf{D}\mathbf{x} = \mathbf{d}\) or some inequality constraints \(\mathbf{D}\mathbf{x} \le \mathbf{d}\) where, \(\mathbf{D}\) is a known matrix and \(\mathbf{d}\) is a known vector.

  • In the book Simon (2006), they have discussed the following methods of incorporating these constraints into the Kalman filter.

    • Model reduction
    • Perfect measurements
    • Projection approaches
    • Probability Density Function (pdf) truncation approach

5.6 Summary

In this chapter, a brief introduction to the methods of generalization to Kalman filters were discussed. Other Kalman filter generalizations are discussed in the later chapters of Simon (2006). Such as,

  • Kalman filters with fewer states than the system

  • Kalman filtering when the system model or noise statistics are not known

  • Kalman filtering when the measurements arrive at the filter in the wrong order

  • Kalman filters for nonlinear systems