创建带有未知参数的状态空间模型

显式创建包含未知参数的状态空间模型

此示例显示如何使用使用未知参数值的时间不变,状态空间模型SSM.

定义包含两个依赖MA(1)状态的状态空间模型,以及附加误差观察模型。象征性地,方程式是

[ X T. 1 X T. 2 X T. 3. X T. 4. ] = [ 0. θ 1 λ 1 0. 0. 0. 0. 0. 0. 0. 0. θ 3. 0. 0. 0. 0. ] [ X T. - 1 1 X T. - 1 2 X T. - 1 3. X T. - 1 4. ] + [ σ 1 0. 1 0. 0. σ 2 0. 1 ] [ T. 1 T. 2 ]

y T. = [ 1 0. 0. 0. 0. 0. 1 0. ] [ X T. 1 X T. 2 X T. 3. X T. 4. ] + [ σ 3. 0. 0. σ 4. ] [ ε T. 1 ε T. 2 ]

请注意州 X T. 1 X T. 3. 是两个依赖的MA(1)过程。美国 X T. 2 X T. 4. 帮助构建滞后一,mA效果。例如, X T. 2 拿起第一个干扰( T. 1 ), 和 X T. 1 拿起 X T. - 1 2 = T. - 1 1 。在所有, X T. 1 = λ 1 X T. - 1 3. + T. 1 + θ 1 T. - 1 1 ,这是马(1) X T. - 1 3. 作为输入。

指定状态转换系数矩阵。用值表示未知参数。

a = [0纳米南0;0 0 0 0;0 0 0 nan;0 0 0 0];

指定状态干扰加载系数矩阵。

B = [n0;1 0;0南;0 1];

指定测量灵敏度系数矩阵。

C = [1 0 0 0;0 0 1 0];

指定观测创新系数矩阵。

d = [NAN 0;0 nan];

SSM.来定义状态空间模型。

MDL = SSM(A,B,C,D)
MDL =状态空间模型类型:SSM状态向量长度:4观察矢量长度:2状态干扰矢量长度:2观察创新矢量长度:2型号支持的样本大小:估计无限未知参数:7状态变量:X1,X2金宝app,...国家干扰:U1,U2,...观察系列:Y1,Y2,...观察创新:E1,E2,...未知参数:C1,C2,...状态等式:X1(T)=(C1)X2(T-1)+(C2)X3(T-1)+(C4)U1(T)X2(T)= U1(T)X3(T)=(C3)X4(T-1) + (c5)u2(t) x4(t) = u2(t) Observation equations: y1(t) = x1(t) + (c6)e1(t) y2(t) = x3(t) + (c7)e2(t) Initial state distribution: Initial state means are not specified. Initial state covariance matrix is not specified. State types are not specified.

Mdl是一个SSM.包含未知参数的模型。详细的摘要Mdl打印到命令窗口。验证状态和观察方程是正确的,是良好的做法。

经过Mdl和数据到估计估计未知参数。

隐式创建定常状态空间模型

这个例子展示了如何通过传递描述模型的参数映射函数来创建一个时不变的状态空间模型SSM.(那是,隐式地创建状态空间模型)。状态模型是AR(1)模型。偏见观察各州,但没有随机错误。设置初始状态均值和方差,并指定状态是静止的。

写一个指定参数的函数参数映射到状态空间模型矩阵、初始状态值和状态类型。

The MathWorks, Inc.版权所有函数[a,b,c,d,均值0,cov0,stateType] = timeInvariantParampap(params)%Time-Invariant状态空间模型参数映射功能示例。这函数将向量参数映射到状态空间矩阵(A, B, C,和% D)、初始状态值和初始状态方差(均值0和%cov0)和状态类型(stateType)。状态模型是AR(1)无观察误差。varu1 = exp (params (2));%正方差约束一个= params (1);B =√varu1);C = params (3);D = [];Mean0 = 0.5;Cov0 = 100;StateType = 0;结尾

将此代码保存为名为TimeInvariantParampap.到Matlab®路径上的文件夹。

通过传递函数创建状态空间模型TimeInvariantParampap.作为函数手柄SSM.

mdl = ssm(@timeInvariantparampap);

该软件隐式定义了状态空间模型。通常,您无法验证隐式定义的状态空间模型。

Mdl是一个SSM.模型对象包含未知参数。您可以通过传递来估计未知参数Mdl和响应数据到估计

也可以看看

||

相关例子

更多关于