[R] Kalman Filter Forecast using 'SSPIR'

Spencer Graves spencer.graves at pdf.com
Sun Dec 18 02:47:02 CET 2005

	  I will herein outline the basics of Kalman forecasting.  I have never 
used sspir, and I can't find all the hooks now to produce a forecast. 
Perhaps with this outline, you will be able to figure it out yourself, 
possibly by reading the code for some of the sspir functions.

	  The demo(vandriver) produces an "Extended" "SS" object "vd".  When I 
try to print that model, it begins by reporting the following:

The state space model is given by

Y_t     = F_t^T %*% theta_t     + v_t, v_t ~ N(0,V_t)
theta_t = G_t   %*% theta_{t-1} + w_t, w_t ~ N(0,W_t)

for t=1,...,192

	  Kalman filtering can be described as Bayesian sequential updating, 
where the prior for the state for observation Y[t] is theta[t] ~ 
N(theta[t|t-1], Sig.theta[t|t-1]).  Observation Y[t] is combined with 
this prior to produce the posterior N(theta[t|t], Sig.theta[t|t]).  From 
this point, the forecasted distribution for theta[t+1] is 
N(theta[t+1|t], Sig.theta[t+1|t]), where

      theta[t+1|t] = G_t %*% theta[t|t]
      Sig.theta[t+1|t] = (G_t) %*% Sig.theta[t|t] %*% t(G_t) + W_t.

	  You can repeat this step any number of times to get N(theta[t+j|t], 
Sig.theta[t+j|t] for any j.  With this, the forecast for Y[t+j] in the 
normal linear framework is N(F[t+j]^T %*% theta[t+j|t], Sig.y[t+j|t]) where

      Sig.y[t+j|t] = t(F[t+j]) %*% Sig.theta[t+j|t] %*% F[t+j] + V[t+j]

	  This outline seems consistent with all the references on Kalman / 
state space with which I'm familiar, though the notation may be a little 
different.  For more details including references, you can consult the 
"Foundations of Monitoring" material at "www.prodsyse.com".

	  If you would still like help from this listserve, please submit 
another post -- preferably after reading the posting guide! 
"www.R-project.org/posting-guide.html".  Anecdotal evidence suggests 
that posts more consistent with that guide tend to get quicker, more 
useful replies.

	  hope this helps.
	  spencer graves


Sumanta Basak wrote:

> Dear R Users,
>                       I am new to state-space modeling. I am using SSPIR
> package for Kalman Filter. I have a data set containing one dependent
> variable and 7 independent variables with 250 data points. I want to use
> Kalman Filter for forecast the future values of the dependent variable
> using a multiple regression framework. I have used ssm function to
> produce the state space (SS) object, but I am bit confused that how can
> I predict the future values. 
> Thanks a lot in advance.
> -------------------------------------------------------------------------------------------------------------------
> This e-mail may contain confidential and/or privileged infor...{{dropped}}
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html

Spencer Graves, PhD
Senior Development Engineer
PDF Solutions, Inc.
333 West San Carlos Street Suite 700
San Jose, CA 95110, USA

spencer.graves at pdf.com
www.pdf.com <http://www.pdf.com>
Tel:  408-938-4420
Fax: 408-280-7915

More information about the R-help mailing list