超:
创建状态空间模型
创建一个状态空间模型(MDL
=舰导弹(一种
,乙
,C
)MDL
)使用状态转换矩阵一种
,state-disturbance-loading矩阵乙
,以及测量灵敏度矩阵C
。
创建使用状态转变矩阵的状态空间模型MDL
=舰导弹(一种
,乙
,C
,d
)一种
,state-disturbance-loading矩阵乙
,measurement-sensitivity矩阵C
和观察创新矩阵d
。
采用任何的在前面的语法和其他选项的输入参数,你由一个或多个指定MDL
=舰导弹(___,名称,值
)名称,值
对参数。
的名字
也可以是一个属性名和值
是对应的值。的名字
必须出现内单引号(“”
)。可以按任意顺序指定多个名称-值对参数Name1, Value1,…,的家
。
创建使用参数到矩阵映射函数的状态空间模型(MDL
=舰导弹(ParamMap
)ParamMap
),你写。函数映射的参数,以矩阵的矢量一种
,乙
和C
。(可选)ParamMap
可以将参数映射到d
,Mean0
,或Cov0
。要指定类型的状态,该函数可以返回StateType
。为了在观测方程中容纳一个回归分量,ParamMap
也可以返回泄了气的观测数据。
转换分散的状态空间模型对象(MDL
=舰导弹(DSSMMdl
)DSSMMdl
)到一个状态空间模型对象(MDL
)。SSM
设置在弥漫国家的全部初始差异SSMMdl.Cov0
来1 e07
。
DISP | 对于状态空间模型显示的摘要信息 |
估计 | 状态空间模型的极大似然参数估计 |
过滤器 | 状态空间模型的前向迭代 |
预测 | 预测的状态和状态空间模型的观察 |
完善 | 细化初始参数以帮助状态空间模型估计 |
simsmooth | 状态空间模型模拟平滑 |
模拟 | 状态空间模型的蒙特卡罗模拟 |
光滑的 | 状态空间模型的向后递推 |
值。要了解值类如何影响复制操作,请参阅复制对象(MATLAB)。
指定ParamMap
在更一般或更复杂的情况下,例如:
初始状态值是参数。
在随时间变化的模型,要使用相同的参数超过一个周期。
你想强加参数约束。
的默认值Mean0
和Cov0
:
如果你明确地指定状态空间模型(也就是你提供的系数矩阵一种
,乙
,C
和任选d
),那么:
对于平稳状态,软件使用平稳分布生成初始值。如果您在系数矩阵中提供了所有的值(也就是说,您的模型没有未知的参数),那么SSM
生成的初始值。否则,软件估算期间生成的初始值。
对于总是常数1的状态,SSM
套Mean0
为1,Cov0
来0
。
对于分散状态,软件设置Mean0
为0,Cov0
来1E7
默认情况下。
如果隐式地创建了状态空间模型(即,你提供的参数矢量的系数矩阵映射函数ParamMap
),然后软件在估计期间生成任何初始值。
对于在整个样本中不等于1的静态状态,软件不能为退化的初始状态分布赋值。因此,将静态状态设置为2
使用名称 - 值对参数StateType
。随后,该软件将静态状态视为非平稳状态,并将静态状态赋值为扩散初始分布。
这是设置的最佳实践StateType
每个状态。默认情况下,该软件生成StateType
,但这种行为可能并不准确。例如,软件无法区分恒定状态和静态状态。
该软件不能推断StateType
从数据,因为数据在理论上来源于观测方程。状态方程的实现是不可观测的。
SSM
模型不存储观察到的反应或预测数据。使用适当的输入或名称 - 值对的参数在必要时提供数据。
假设你想用一个参数对矩阵映射函数与此签名创建一个状态空间模型:
[A, B, C, D, Mean0 Cov0, StateType, DeflateY] = paramMap (params, Y, Z)
Mdl =舰导弹(@ (params) paramMap (params, Y, Z))
ÿ
和预测数据ž
不是匿名函数中的输入参数。如果ÿ
和ž
在创建之前存在于MATLAB工作区中MDL
,那么软件建立与他们的联系。否则,如果传递MDL
来估计
,该软件将引发错误。匿名函数建立的到数据的链接覆盖了所有其他相应的输入参数值估计
。这种区别在进行滚动窗口分析时尤为重要。有关详细信息,请参见时间序列模型的滚动窗口分析。
[1] Durbin J.和S. J. Koopman。时间序列分析的状态空间方法。第2版。牛津:牛津大学出版社,2012。