1

我目前正在尝试获得与论文“英格兰中部温度的季节性变化 - Proietti & Hillebrand (2015) ”相同的估计结果

在这个模型中,他们定义了以下状态空间模型,我使用Koopman & Durbin (2012) 的“标准”状态空间方程对其进行了重写。蓝色变量是需要估计的变量,预期结果在第一篇论文中报告(第 14 页)。

理解模型的一个非常小的总结:y_t 是一个 1xT 向量,每个月有数据,X_t 是一个 12x1“选择”向量,因此 y_t 允许它所在的每个月参数的不同值。

我尝试先估计模型,而忽略最初给出一些错误的 X_t 矩阵...例如,Q 中的第一个元素不允许为零,这在我看来很奇怪.. \mu 没有创新因此创新向量没有变化,对吧?此外,即使有 1,000 次迭代,仍然没有达到收敛。我想我明天早上会尝试进行 10,000 次迭代,也许这会有所帮助。

然而,让我难过的主要事情是如何在这个状态空间模型中允许 X_t 。这反过来会将模型更改为 60 个参数(因为每个参数都是 12x1 向量)。任何帮助都会很可爱:)

library(KFAS)

yTOT = yTOT[yTOT$YR > 1771,]
yTOT = yTOT[yTOT$YR < 2014,]

y = t(as.matrix(yTOT$VAL))

B = matrix(list(0,"b1",0,0,1,0,0,0,"b2"),3,3, byrow=TRUE)
U = matrix(list("u1",0,0),3,1)                           
C = 0
c = 0
G = matrix(list(1,0,0, 0,1,0, 0,0,1),3,3, byrow=TRUE)
w = matrix(list(0,"w1","w2"),3,1)
Z = matrix(c(1,0,1),1,3)                                  
A = matrix(0, 1,1)                                        
D = 0
d = 0
H = 0
v = 0
R = matrix(0, 1,1)                                        
Q = matrix(list(1,0,0, 0,1,0, 0,0,"q1"),3,3, byrow=TRUE) 
x0 = matrix(0, 3,1)
V0 = matrix(0, 3,3)

model.gen=list(Z=Z,A=A,R=R,B=B,U=U,Q=Q,x0=x0,V0=V0,tinitx=0)
kemfit = MARSS(y, model=model.gen, control=list(maxit=1000))
4

0 回答 0