| Filter Design Toolbox | ![]() |
Examples of Adaptive Kalman Filters
Without going into details because the specifics are beyond the scope of this User's Guide, the adaptive filter functions in the toolbox represent variations of Kalman filtering. Thus, Kalman filters are the basis of all the other functions, and perhaps the most effective and efficient since each succeeding filter update in the Kalman algorithm depends only on the most recent input data.
adaptkalman shares many input arguments with the LMS and RLS adaptive functions. To completely specify the Kalman algorithm requires a few additional inputs -- k0, qm, and qp as listed in the following table.
Befitting the nature of the Kalman approach to adaptive filtering, arguments k0, qm, and qp are matrices that define the known parameters for the algorithm -- the initial conditions. Often you do not know the initial state of the update process equation that defines each filter update. To overcome this fact, we use mean and correlation matrices of the initial state to define the equation.
adaptkalman Example -- System Identification
x = 0.1*randn(1,500); b = fir1(31,0.5); d = filter(b,1,x); w0 = zeros(1,32); k0 = 0.5*eye(32); qm = 2; qp = 0.1*eye(32); s = initkalman(w0,k0,qm,qp); [y,e,s] = adaptkalman(x,d,s); stem([b.',s.coeffs.']); legend('Actual','Estimated'); title('System Identification of an FIR Filter via Kalman Filter'); grid on;
Selected Bibliography
[1] Hayes, Monson H., Statistical Digital Signal Processing and Modeling, John Wiley & Sons, 1996, 493-552.
[2] Haykin, Simon, Adaptive Filter Theory, Prentice-Hall, Inc., 1996
| Example of Adaptive Filter That Uses RLS Algorithm | Digital Frequency Transformations | ![]() |