$35
The Cooper Union Department of Electrical Engineering
ECE416 Adaptive Filters
Project: Kalman Filters
In this project, you will be implementing and studying the performance of several forms of
the discrete-time Kalman Ölter, speciÖcally:
the ìstandardî(i.e., covariance) Kalman Ölter
the information Kalman Ölter
the square-root covariance Kalman Ölter
the extended Kalman Ölter (EKF)
You can use numerical routines for matrix analysis in MATLAB, such as eig, qrd, svd, etc.
However, do NOT use ìadvancedîMATLAB functions related to Kalman Öltering, such as
kalman, except as noted below (e.g., Önd an appropriate function to solve the discrete-time
ARE, as described below).
NOTE: All data is real in this project!!! Also, in this write-up: for a vector u, juj
is the Euclidean length; and for a matrix A, kAk is the spectral norm.
In the Örst three cases, the system model will be TIME-VARYING and is given by:
x (n + 1) = A (n) x (n) + v (n)
y (n) = C (n) x (n) + w (n)
In order to examine the e§ect of time-varying behavior on the system, for iterations 1 n
N1, take A (n) = A1, and for N1 + 1 n N1 + N2, take A (n) = A2 where:
A1 =
2
6
6
4
0:9 1 0 0
0 0:9 0 0
0 0 0:5 0:5
1 0 0:5 0:5
3
7
7
5
A2 =
2
6
6
4
0:9 1 0 0
0 0:9 0 0
0 0 0:5 0:5
1 0 0:5 0:5
3
7
7
5
For all times take:
C =
1 1 1 1
0 1 0 1
Assume the covariance matrices Qv and Qw of the process noise v (n) and observation noise
w (n), respectively, are constant and given by:
Qv =
2
6
6
4
1=4 1=4 0 0
1=4 1=2 1=4 0
0 1=4 1=2 1=4
0 0 1=4 1=2
3
7
7
5
Qw