MATLAB MEX Function Reference
Getting Started with State Space Models

The measurement (or observation) equation can be written

{y}_t = {b}_t + {H}_t {z}_t + \epsilon_t
where bt is an Ny ×1 vector, Ht is an Ny ×Nz matrix, the sequence of observation noise \epsilon_t is independent, zt is an Nz ×1 state vector, and yt is an Ny ×1 observed vector.

The transition (or state) equation is denoted as a first-order Markov process of the state vector.

{z}_{t+1} = {a}_t + {F}_t {z}_t + \eta_t
where at is an Nz ×1 vector, Ft is an Nz ×Nz transition matrix, and the sequence of transition noise \eta_t is independent. This equation is often called a shifted transition equation because the state vector is shifted forward one time period. The transition equation can also be denoted using an alternative specification
{z}_t = {a}_t + {F}_t {z}_{t-1} + \eta_t
There is no real difference between the shifted transition equation and this alternative equation if the observation noise and transition equation noise are uncorrelated, that is, E(\eta_t \epsilon^'_t) = 0. It is assumed that
E(\eta_t \eta^'_s) & = & {V}_t \delta_{ts} \
E(\epsilon_t \epsilon^'_s) & = & {{R}}_t \delta_{ts} \
E(\eta_t \epsilon^'_s) & = & {G}_t \delta_{ts} \
\delta_{ts} = \{ 1 & { if } t = s \
 0 & { if } t \neq s
De Jong (1991a) proposed a diffuse Kalman filter that can handle an arbitrarily large initial state covariance matrix. The diffuse initial state assumption is reasonable if you encounter the case of parameter uncertainty or SSM nonstationarity. The SSM of the diffuse Kalman filter is written
{y}_t & = & {X}_t \beta + {H}_t {z}_t + \epsilon_t \
{z}_{t+1} & = & {W}_t \bet...
 ...F}_t {z}_t + \eta_t \
{z}_0 & = & {a}+ {A}\delta \
\beta & = & {b}+ {B}\delta
where \delta is a random variable with a mean of \mu and a variance of \sigma^2\Sigma. When \Sigma arrow \infty, the SSM is said to be diffuse.

The KALCVF function computes the one-step prediction {z}_{t+1| t} and the filtered estimate {z}_{t| t}, together with their covariance matrices {P}_{t+1| t} and {P}_{t| t}, using forward recursions. You can obtain the k-step prediction {z}_{t+k| t} and its covariance matrix {P}_{t+k| t} with the KALCVF function. The KALCVS function uses backward recursions to compute the smoothed estimate {z}_{t| T} and its covariance matrix {P}_{t| T} when there are T observations in the complete data.

The KALDFF function produces one-step prediction of the state and the unobserved random vector \delta as well as their covariance matrices. The KALDFS function computes the smoothed estimate {z}_{t| T} and its covariance matrix {P}_{t| T}.

See also

KALCVF performs covariance filtering and prediction

KALCVS performs fixed-interval smoothing

Getting Started with State Space Models

Kalman Filtering Example 1: Likelihood Function Evaluation

Kalman Filtering Example 2: Estimating an SSM Using the EM Algorithm


[1]  Harvey, A.C., Forecasting, Structural Time Series Models and the Kalman Filter, Cambridge: Cambridge University Press, 1991.

[2]  Anderson, B.D.O., and J.B. Moore, Optimal Filtering, Englewood Cliffs, NJ: Prentice-Hall, 1979.

[3]  Hamilton, J.D., Time Series Analysis, Princeton, 1994.

Return to main page