Page 287 - Classification Parameter Estimation & State Estimation An Engg Approach Using MATLAB
P. 287
276 STATE ESTIMATION IN PRACTICE
disp(‘Kalman gain matrix’); disp(M);
disp(‘Eigenval. of Kalman filter’); disp(E);
disp(‘Error covariance’); disp(Z);
disp(‘Prediction covariance’); disp(P);
disp(‘Eigenval. of prediction covariance’); disp(eig(P));
disp(‘Solution of discrete Lyapunov equation’); disp(Cx_inf);
disp(‘Eigenval. of sol.
of discrete Lyapunov eq.’); disp(eig
(Cx_inf));
8.3 COMPUTATIONAL ISSUES
A straightforward implementation of the time-variant Kalman filter may
result in too large estimation errors. The magnitudes of these errors are
not compatible with the error covariance matrices. The filter may even
completely diverge even though theoretically the filter should be stable.
This anomalous behaviour is due to a number representation with
limited precisions. In order to find where round-off errors have the
largest impact it is instructive to rephrase the Kalman equations in
(8.2) as follows:
Ricatti loop:
T T 1
CðijiÞ¼ Cðiji 1Þ Cðiji 1ÞH ðHCðiji 1ÞH þC v Þ HCðiji 1Þ
T
Cði þ 1jiÞ¼ FCðijiÞF þ C w
#
T 1
KðiÞ¼ Cðiji 1ÞH S ðiÞ ð8:27Þ
T
SðiÞ¼ HCðiji 1ÞH þ C v
#
estimation loop:
xðijiÞ¼ xðiji 1Þþ KðiÞðzðiÞ Hxðiji 1ÞÞ
xði þ 1jiÞ¼ F xðijiÞþ LuðiÞ
For simplicity, the system (F, L, H) is written without the time index.