[R] Time invariant coefficients in a time varying coefficients model using dlm package

Christian Schoder schoc152 at newschool.edu
Tue Sep 28 23:44:14 CEST 2010


Dear R-users,

I am trying to estimate a state space model of the form

(1)	b_t = G * b_t-1 + w_t    w_t ~ N(0,W)

(2)	y_t= A' * x_t + H' * b_t + v_t     v_t ~ N(0,V)

(Hamilton 1984: 372)

In particular my estimation in state space form looks like

(3)	a3_t = 1 * a3_t-1 + w_t      w_t ~ N(0,W)

(4)	g_t = (a1, a2) * (1, P_t)' + u_t * a3_t + v_t    v_t ~ N(0,V)

where g_t is the investment rate, P_t are profits and u_t is the
utilization rate. As you can see, I would like to estimate the
coefficient of the utilization rate in time-varying terms and all the
other coefficients of the investment function in constant terms. 

The issue I have now is that the package "dlm" only allows for
specifications of the form

(5)	b_t = 1 * b_t-1 + w_t    w_t ~ N(0,W)

(6)	y_t = F_t * b_t + v_t     v_t ~ N(0,V)

where b_t is the vector of parameters. Hence, it does not allow me to
take parameters as time-invariant. In terms of my investment
specification this reads

(7) 	(a1_t, a2_t, a3_t)' = diag(3) * (a1_t-1, a2_t-1, a3_t-1)' + w_t
w_t ~ N(0,W)

(8) 	g_t = (1, P_t, u_t) * (a1_t, a2_t, a3_t)' + v_t    v_t ~ N(0,V)

As far as I understand state space modeling the following restrictions
on the Variance-covariance matrix W should imply a1_t=a1 and a2_t=a2
which is time invariant:

(9)	W=[(0,0,0),(0,0,0),(0,0,w_33)]

However, if I apply the filter (dlmFilter) (not smoother) on this
specification with estimated values for the unknown paramters (w_33 and
matrix V) in order to get the series of the state vector (a1_t, a2_t,
a3_t)' then for some reason a1_t and a2_t are not constant!!! a3_t isn't
either but this is how it is supposed to be. How is that possible when I
told the model that the variance of the first two elements of the state
vector are zero? Is the problem the fact that I use the filter instead
of the smoother?

Could someone please point out to me, how I would have to specify the
state space model for the dlm package so that the coefficients of my
first two regressors are actually time invariant?

Thank you very much for your support on this!!

Christian



More information about the R-help mailing list