y is scalar observations and so C will be a 1x2 matrix.
I want to represent the following model as a state space representation so as to estimate the hidden states from the noisy observations y using Kalman filter.
The state space model :
x(t+1) = Ax(t) + w(t)
y(t) = Cx(t) + v(t)
w(t) = N(0,Q)
v(t) = N(0,R)
w(t) is a pseudo-random binary signal that excites/ drives ; and v(t)=N(0,σ2v) is the measurement noise.
- The model is an FIR (MA) filter
x(t)=h1ϵ(t−1)+h2ϵ(t−2)+ϵ(t) y(t)=x(t)+v(t) y(t)=hTϵ(t)+v(t)
(In vector form)
where ϵ(t)=w(t).
- The other model is an IIR (AR) filter x(t)=ax(t−1)+bx(t−2)+w(t)
The state space representation:
x(t+1)=aTx(t)+w(t)
y(t)=hTx(t)+v(t)
How do I represent these as state space so as to apply Kalman Filter?
There are several ways to represent time series models. This is how I proceeded, but unsure because the output of the log-likelihood is a matrix of 2 by 2 with off diagonal elements being infinity and the diagonal elements are same positive values. So, the dimension and the value of log-likelihood is incorrect, I should get negative instead of positive values.
- FIR :
Re-writing the above model as:
x(t+1)=h1ϵ(t)+h2ϵ(t−1)+ϵ(t+1) y(t)=Cx(t)+v(t)
State Space :
[x(t+1)x(t)x(t−1)] = [1h1h201h1001] × [e(t+1)e(t)e(t−1)]
y(t) = [100] × [e(t+1)e(t)e(t−1)] + v(t)
IIR (AR model)
[x(t+1)x(t)] = [ab10] × [x(t)x(t−1)] + [10] × [w(t+1)w(t)]
y(t) = [10] × [x(t)x(t−1)] + v(t)
Answer
Your FIR state space representation seems to be doing too much.
The way I would write it is to have the process noise is ϵ(t) as your input, and your state as two time-delayed copies of it:
x(t+1)=[ϵ(t+1)ϵ(t)ϵ(t−1)]=[000100010]x(t)+[100]ϵ(t+1)
then your output equation is just: y(t)=[1h1h2]x(t)+v(t)
Your IIR representation is too confused for me to make head or tail out of. Can you clarify that you have the right information there?
Other questions:
No comments:
Post a Comment