ISRN Computational Mathematics

Volume 2013 (2013), Article ID 249594, 7 pages

http://dx.doi.org/10.1155/2013/249594

Research Article

Kalman Filter Riccati Equation for the Prediction, Estimation, and Smoothing Error Covariance Matrices

Nicholas Assimakis¹ and Maria Adam²

¹Department of Electronic Engineering, Technological Educational Institute of Central Greece, 35100 Lamia, Greece

²Department of Computer Science and Biomedical Informatics, University of Thessaly, 35100 Lamia, Greece

Received 2 August 2013; Accepted 2 October 2013

Academic Editors: D. S. Corti, F. W. S. Lima, and H. J. Ruskin

Copyright © 2013 Nicholas Assimakis and Maria Adam. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract.

The classical Riccati equation for the prediction error covariance arises in linear estimation and is derived by the discrete time Kalman filter equations. New Riccati equations for the estimation error covariance as well as for the smoothing error covariance are presented. These equations have the same structure as the classical Riccati equation. The three equations are computationally equivalent. It is pointed out that the new equations can be solved via the solution algorithms for the classical Riccati equation using other well-defined parameters instead of the original Kalman filter parameters.

1. Introduction

The classical Riccati equation arises in linear filtering and is associated with time invariant systems described by the following state space equations:

for , where is the -dimensional state vector at time , is the -dimensional measurement vector at time , is the system transition matrix, is the output matrix, is the plant noise at time , and is the measurement noise at time . Also, and are Gaussian zero-mean white random processes with covariance matrices and , respectively.

Filtering is to use measurements in order to recover information about the state vector. Filtering plays an important role in many fields of science: applications to aerospace industry, chemical process, communication systems design, control, civil engineering, filtering noise from 2-dimensional images, pollution prediction, and power systems are mentioned in [1].

We distinguish three kinds of filtering as follows.

Prediction. The aim is to obtain at time information about the state vector at time for some using measurements up till time ; it is clear that prediction is related to the forecasting side of information processing.

Estimation. The aim is to recover at time information about the state vector at time using measurements up till time .

Smoothing. The aim is to obtain at time information about the state vector at time for some using measurements up till time ; it is clear that smoothing requires delay in producing information about the state vector compared to the estimation case.

The discrete time Kalman filter [1] is the most well-known algorithm that solves the filtering problem. Kalman filter uses the measurements up till time in order to produce the (one step) prediction of the state vector and the corresponding prediction error covariance matrix , as well as to produce the estimation of the state vector and the corresponding estimation error covariance matrix . The Kalman filter equations, needed for the computation of the prediction and estimation error covariance matrices, are given as follows:

for , with initial condition for the time instant where there are no measurements given. Here and hereafter, consider that is a nonsingular matrix; thus, all error covariance matrices derived by (3)-(4) are positive definite and hence the prediction and estimation error covariance matrices are nonsingular. Note that is the Kalman filter gain.

Also, the fixed-point or fixed-lag smoothing algorithms [1] emanating from Kalman filter use the measurements up till time in order to produce the (one step) smoothing of the state vector and the corresponding smoothing error covariance matrix .

The relation between the smoothing error covariance matrix and the prediction and estimation error covariance matrices can be calculated from fixed-point or fixed-lag smoothing algorithms [1] emanating from Kalman filter equations:

The Riccati equation for the prediction error covariance is derived by (2)–(4) as

for , with initial condition .

The discrete time Riccati equation has attracted recent attention (see [1–12] and the references therein). In view of the importance of the Riccati equation, there exists considerable literature on its algebraic solutions [1, 10–12] or iterative solutions [1–9] concerning per step or doubling algorithms.

In this paper, new Riccati equations for the estimation and smoothing error covariance matrices are presented. The paper is organized as follows: In Section 2, the (classical) Riccati equation for the prediction error covariance is discussed, and the new Riccati equations for the estimation and smoothing error covariance matrices are presented (Sections 2.2 and 2.3). In Section 2.4, the associated algorithms are proposed and an example verifies the results. Finally, Section 3 summarizes the conclusions.

2. Riccati Equations for the Error Covariance Matrices

2.1. Riccati Equation for the Prediction Error Covariance

In the general case where and are positive definite matrices, using in (6) the matrix inversion lemma

the classical Riccati equation for the prediction error covariance is derived as follows.

Theorem 1. The Riccati equation for the prediction error covariance is given by

where

The Riccati equation emanating from Kalman filter is a nonlinear iterative equation with respect to the prediction error covariance. For time invariant systems, it is well known [1] that if the signal process model is asymptotically stable, then there exist steady state values of the prediction error covariance matrix. In fact, the prediction error covariance tends to the steady state prediction error covariance.

The steady state prediction error covariance satisfies the classical steady state Riccati equation for the prediction error covariance:

where , , , and are given by (9).

From (2), it becomes obvious that the gain tends to a constant value , the steady state gain,which is calculated as a function of the steady state prediction error covariance, as follows:

Then, from (3) it becomes obvious that the estimation error covariance tends to a constant value , the steady state estimation error covariance which is calculated as a function of the steady state prediction error covariance, as follows:

Also, from (5) it becomes obvious that the smoothing error covariance tends to a constant value , the steady state smoothing error covariance which is calculated as a function of the steady state prediction error covariance and the steady state estimation error covariance, as follows:

It is obvious that the steady state prediction covariance matrix can be calculated off-line by solving the corresponding discrete time Riccati equation. Then, the steady state estimation covariance matrix can be computed using (12) and the steady state smoothing covariance matrix can be computed using (13).

2.2. Riccati Equation for the Estimation Error Covariance

In the general case where and are positive definite matrices, we are able to derive from the Kalman filter equations a new discrete time Riccati equation for the estimation error covariance.

Theorem 2. The Riccati equation for the estimation error covariance is given by

where

Proof. Applying in (4) the matrix inversion lemma as in (7) and considering the nonsingularity of the covariance , , the following equation is derived:

Moreover, using (2) and (7), (3) can be written as

Substituting in the last equality the matrix by (19), setting , and using the matrix inversion lemma, the following equation is derived:

Notice that is a positive definite matrix, since is a sum of positive definite matrices as the matrices , . Thus, is a nonsingular and symmetric matrix.

Moreover, using some algebra and the lemma in (7) we have

where and are given by (16) and (18), respectively.

Setting and using (22) in (21), the proof of (14) is completed.

Remark 3. (1) It is obvious that the new Riccati equation (14) has the same structure as the classical Riccati equation (8) for the prediction error covariance.

(2) The steady state estimation error covariance satisfies the new steady state Riccati equation for the estimation error covariance

where , , , are given by (15)–(18).

It is also obvious that the new steady state Riccati equation (23) has the same structure as the classical steady state Riccati equation (10) for the prediction error covariance.

(3) It is evident that the steady state estimation covariance matrix can be calculated off-line by solving the corresponding new Riccati equation, using iterative algorithms or algebraic algorithms, analogous to the algorithms for the classical Riccati equation. Of course we are able to use the same algebraic algorithms [1, 10, 12] or iterative algorithms [1–9] that solve the classical Riccati equation, using the parameters , , , in (15)–(18) instead of the original ones , , , in (9). Thus, it is evident that the classical and the new Riccati equations are computationally equivalent.

(4) Having computed the steady state estimation covariance matrix and using (4), the steady state prediction covariance matrix can be computed by the equation

Then, the steady state smoothing error covariance can be computed using (13). Also, using the steady state prediction covariance matrix by (24), the steady state gain can be computed using (11).

2.3. Riccati Equation for the Smoothing Error Covariance

In the general case where and are positive definite matrices, using the Kalman filter equations (2)–(5) we are able to derive a new discrete time Riccati equation for the smoothing error covariance.

Theorem 4. The Riccati equation for the smoothing error covariance is given by

where

Proof. Substituting the matrices , , from (3), (2), and (4), respectively in (5), it is derived that

Applying in the last equation the matrix inversion lemma as in (7), the following equation is derived:

Using the matrices , by (16), (18), respectively, (28) yields

From (29), (14), and the matrix inversion lemma, it is derived that

(30) is implied that

Setting

and applying the matrix inversion lemma, (31) is written as

Notice that is a positive definite matrix, using (16)–(18), is formulated as

Thus, is a sum of positive definite matrices as the matrices , .

Similarly, is a positive definite matrix.

Also, from (17) it is evident that is a positive definite matrix; hence, is a symmetric matrix. Thus, we can write . Moreover, using the matrix inversion lemma and some algebra we have

Using the above remarks and setting in (33) the following relations:

where , , , are given by (15)–(18), the proof of (25) is completed.

It is clear that by substituting the parameters , , , by (15)–(18) in (36), we are able to express the parameters , , , with respect to the Kalman filter parameters , , , , getting (26).

Remark 5. (1) It is obvious that the new Riccati equation (25) has the same structure as the classical Riccati equation (8) for the prediction error covariance.

(2) The steady state smoothing error covariance satisfies the new steady state Riccati equation for the smoothing error covariance:

where , , , are given by (26).

It is also obvious that the new steady state Riccati equation (37) has the same structure as the classical steady state Riccati equation (10) for the prediction error covariance.

(3) It is evident that the steady state smoothing covariance matrix can be calculated off-line by solving the corresponding new Riccati equation, using iterative algorithms or algebraic algorithms, analogous to the algorithms for the classical Riccati equation. Of course we are able to use the same algebraic algorithms [1, 10, 12] or iterative algorithms [1–9] that solve the classical Riccati equation, using the parameters , , , in (26) instead of the original ones , , , in (9). Thus, it is evident that the classical and the new Riccati equations are computationally equivalent.

(4) The equations in (36) describe the relations between the parameters concerning the steady state smoothing covariance matrix and the parameters , , , concerning the steady state estimation covariance matrix.

(5) Having computed the steady state smoothing covariance matrix, the steady state estimation covariance matrix can be computed using (29) by the equation

Then, having computed the steady state estimation covariance matrix, the steady state prediction covariance matrix can be computed by (24). Also, using the steady state prediction covariance matrix, the steady state gain can be computed using (11).

2.4. Algorithms and Example

The new Riccati equations have the same structure as the classical Riccati equation as shown in Table 1. Hence, the three equations are computationally equivalent. The new Riccati equations can be solved via the solution algorithms for the classical Riccati equation using other well-defined parameters instead of the original Kalman filter parameters, as shown in Table 1.

Table 1: Riccati equations.

Riccati equation
Parameters

Prediction

Estimation

Smoothing

Example 1. Consider a model of dimensions and with parameters

Using the matlab function dare with the original parameters , , , in (9),

 ; ; ; ; ;

we computed as the steady state prediction error covariance

Moreover, using the matlab function dare with the parameters , , , in (15)–(18) instead of the original ones , , , :

 ; ; ; ; ;

we computed of the steady state estimation error covariance as

Also, using the matlab function dare with the parameters , , , in (26) instead of the original ones , , , :

  ;  ;   ; ; ;

we computed as the steady state smoothing error covariance

The Kalman filter gain is

3. Conclusions

The classical Riccati equation for the prediction error covariance derived from the discrete time Kalman filter was presented. A new Riccati equation for the estimation error covariance was derived from Kalman filter. Also, a new Riccati equation for the smoothing error covariance was derived from fixed-point or fixed-lag smoothing algorithms emanating from Kalman filter. The new Riccati equations have the same structure as the classical Riccati equation, and hence the three equations are computationally equivalent. It was pointed out that the new Riccati equations can be solved via the solution algorithms for the classical Riccati equation using other well-defined parameters instead of the original Kalman filter parameters. The advantage of the new steady state Riccati equations is that we are able to compute off-line the steady state estimation error covariance or the steady state smoothing error covariance, without the need of the prediction error covariance computation.

Acknowledgment

The authors wish to thank the anonymous reviewers for constructive suggestions.

References

B. D. O. Anderson and J. B. Moore, Optimal Filtering, Dover Publications, New York, NY, USA, 2005.

N. Assimakis, “Discrete time Riccati equation recursive multiple steps solutions,” Contemporary Engineering Sciences, vol. 2, no. 7, pp. 333–354, 2009.

N. Assimakis and M. Adam, “Iterative and algebraic algorithms for the computation of the steady state Kalman filter gain,” submitted in Central European Journal of Computer Science. In press

N. D. Assimakis, D. G. Lainiotis, S. K. Katsikas, and F. L. Sanida, “A survey of recursive algorithms for the solution of the discrete time riccati equation,” Nonlinear Analysis, Theory, Methods and Applications, vol. 30, no. 4, pp. 2409–2420, 1997.

N. Assimakis, S. Roulis, and D. Lainiotis, “Optimal distributed algorithms for the solution of the discrete time Riccati equation,” Nonlinear Studies, vol. 12, no. 4, pp. 381–390, 2005.

N. Assimakis, S. Roulis, and D. Lainiotis, “Recursive solutions of the discrete time Riccati equation,” Neural, Parallel and Scientific Computations, vol. 11, pp. 343–350, 2003.

P. Benner and H. Faßbender, “On the numerical solution of large-scale sparse discrete-time Riccati equations,” Advances in Computational Mathematics, vol. 35, no. 2, pp. 119–147, 2011.

D. G. Lainiotis, N. D. Assimakis, and S. K. Katsikas, “A new computationally effective algorithm for solving the discrete Riccati equation,” Journal of Mathematical Analysis and Applications, vol. 186, no. 3, pp. 868–895, 1994.

D. Lainiotis, N. Assimakis, and S. Katsikas, “Fast and numerically robust recursive algorithms for solving the discrete time Riccati equation: the case of nonsingular plant noise covariance matrix,” Neural, Parallel and Scientific Computations, vol. 3, no. 4, pp. 565–584, 1995.

A. J. Laub, “A Schur method for solving algebraic Riccati equations,” IEEE Transactions on Automatic Control, vol. 24, no. 6, pp. 913–921, 1979.

A. C. M. Ran and L. Rodman, “Stable Hermitian solutions of discrete algebraic Riccati equations,” Mathematics of Control, Signals, and Systems, vol. 5, no. 2, pp. 165–193, 1992.

D. R. Vaughan, “A nonrecursive algebraic solution for the discrete time Riccati equation,” IEEE Transactions on Automatic Control, vol. 15, no. 5, pp. 597–599, 1970.