主要内容

模拟

蒙特卡罗模拟的状态空间模型

描述

例子

(Y,X)=模拟(Mdl,numObs)模拟观测样本路径之一(Y)和州(X从一个完全指定,状态空间模型(Mdl)。软件模拟numObs观察和州/样本路径。

(Y,X)=模拟(Mdl,numObs,名称,值)返回模拟响应和国家指定的一个或多个额外的选项名称,值对参数。

例如,指定路径的数量或模型参数值。

例子

(Y,X,U,E)=模拟(___)另外模拟状态干扰(U)和观察创新(E)使用任何输入参数在前面的语法。

例子

全部折叠

假设一个潜在的过程是一个AR(1)模型。状态方程是

x t = 0 5 x t - - - - - - 1 + u t ,

在哪里 u t 是高斯的意思是0和标准偏差1。

生成一个随机的一系列100观察 x t 系列,假设从1.5开始。

T = 100;ARMdl = arima (基于“增大化现实”技术的,0.5,“不变”0,“方差”1);x0 = 1.5;rng (1);%的再现性x =模拟(ARMdl T“Y0”,x0);

进一步假设的过程是受添加剂测量误差。观测方程

y t = x t + ε t ,

在哪里 ε t 与平均0和标准偏差0.75高斯。在一起,潜在的过程和状态空间模型观测方程组成。

使用随机潜伏状态过程(x)和观测方程生成的观察。

y = x + 0.75 * randn (T, 1);

指定的四个系数矩阵。

一个= 0.5;B = 1;C = 1;D = 0.75;

指定使用状态空间模型的系数矩阵。

Mdl =舰导弹(A, B, C, D)
Mdl =类型:状态空间模型的地对地导弹状态向量与长度:1观察向量长度:1状态扰动向量长度:1创新观察向量长度:1样本容量支持模型:无限的状态变量:x1, x2,…金宝app国家干扰:u1, u2,……观察系列:y1, y2,……观察创新:e1, e2,…状态方程:x1 (t) = (0.50) x1 (t - 1) + u1 (t)观测方程:日元(t) = x1 (t) + (0.75) e1 (t)初始状态分布:初始状态意味着x1 0初始状态协方差矩阵x1 x1 1.33类型x1静止状态

Mdl是一个舰导弹模型。验证模型正确地指定使用在命令窗口中显示。软件推断过程是静止的状态。随后,软件设置初始状态均值和协方差的均值和方差平稳分布的AR(1)模型。

每个州和观察模拟一条路径。指定的路径跨越100年时间。

[simY, simX] =模拟(Mdl, 100);

simY100 - 1的向量的模拟响应。simX100 - 1的向量的模拟状态。

情节真实状态值与模拟状态。同时,情节与模拟反应观察到的反应。

图次要情节(2,1,1)阴谋(1:T, x,“- k”1:T, simX“:r”,“线宽”2)标题({“真正的状态值和模拟状态”})包含(“时间”)ylabel (“状态”)({传奇的真实状态值,“模拟状态值”})次要情节(2,1,2)阴谋(1:T y“- k”1:T, simY“:r”,“线宽”2)标题({观察到的响应和模拟响应的})包含(“时间”)ylabel (“响应”)({传奇观察到的反应的,“模拟反应”})

图包含2轴对象。坐标轴对象1标题真实状态值和模拟状态,包含时期,ylabel状态包含2线类型的对象。这些对象表示真实状态值,模拟状态值。轴与标题中观察到的响应和模拟响应对象2,包含时期,ylabel响应包含2线类型的对象。这些对象代表观察到的响应,模拟响应。

默认情况下,模拟模拟一条路径状态空间模型的每个状态和观察。进行蒙特卡罗的一项研究中,指定模拟大量的路径。

生成状态空间模型的变量,为所有未知参数指定值。

显式地创建这个状态空间模型。

x t = ϕ x t - - - - - - 1 + σ 1 u t y t = x t + σ 2 ε t

在哪里 u t ε t 是独立的高斯随机变量均值为0,方差为1。假设初始状态均值和方差是1,国家是一个固定的过程。

一个=南;B =南;C = 1;D =南;mean0 = 1;cov0 = 1;stateType = 0;Mdl =舰导弹(A, B, C, D,“Mean0”mean0,“Cov0”cov0,“StateType”,stateType);

模拟100反应Mdl。指定的自回归系数为0.75,国家扰动标准差为0.5,和观察创新标准差是0.25。

params = (0.75 0.5 0.25);y =模拟(Mdl, 100,“参数”、参数);图;情节(y);标题“模拟反应”;包含“时间”;

图包含一个坐标轴对象。坐标轴对象与标题模拟响应,包含周期包含一个类型的对象。

软件搜索值列在订单A, B, C, D, Mean0, Cov0。元素的顺序参数个数应该对应于这个搜索。

假设失业率的变化之间的关系( x 1 , t )和名义国民生产总值(nGNP)增长率( x 3 , t 状态空间模型)可以表示在接下来的形式。

( x 1 , t x 2 , t x 3 , t x 4 , t ] = ( ϕ 1 θ 1 γ 1 0 0 0 0 0 γ 2 0 ϕ 2 θ 2 0 0 0 0 ] ( x 1 , t - - - - - - 1 x 2 , t - - - - - - 1 x 3 , t - - - - - - 1 x 4 , t - - - - - - 1 ] + ( 1 0 1 0 0 1 0 1 ] ( u 1 , t u 2 , t ]

( y 1 , t y 2 , t ] = ( 1 0 0 0 0 0 1 0 ] ( x 1 , t x 2 , t x 3 , t x 4 , t ] + ( σ 1 0 0 σ 2 ] ( ε 1 , t ε 2 , t ] ,

地点:

  • x 1 , t 失业率的变化在时间吗t

  • x 2 , t 马是一个虚拟的状态(1)影响吗 x 1 , t

  • x 3 , t nGNP增长率在时间吗t

  • x 4 , t 马是一个虚拟的状态(1)影响吗 x 3 , t

  • y 1 , t 是观察到的改变失业率。

  • y 2 , t 是观察到的nGNP增长率。

  • u 1 , t u 2 , t 高斯的一系列状态扰动的意思是0和标准偏差1。

  • ε 1 , t 是观察的高斯系列创新有0和标准偏差意味着什么 σ 1

  • ε 2 , t 是观察的高斯系列创新有0和标准偏差意味着什么 σ 2

加载Nelson-Plosser数据集,其中包含的失业率和nGNP系列,等等。

负载Data_NelsonPlosser

预处理的数据以自然对数nGNP系列,和第一个差异。同时,删除开始从每个系列值。

isNaN =任何(ismissing(数据表),2);%国旗时期包含nangnpn = DataTable.GNPN (~ isNaN);u = DataTable.UR (~ isNaN);T =大小(gnpn, 1);%样本大小y = 0 (t - 1、2);% Preallocatey (: 1) = diff (u);y (:, 2) = diff(日志(gnpn));

这个例子使用系列没有收益值。然而,使用卡尔曼滤波框架,软件可以容纳系列含有缺失值。

确定模型预测如何观察,去除过去10观测进行比较。

numPeriods = 10;%预测地平线isY = y (1: end-numPeriods,:);%样本的观察oosY = y (end-numPeriods + 1:最终,);%样本外的观察

指定的系数矩阵。

=(南南南0;0 0 0 0;南0南南;0 0 0 0);B = [1 0、1 0;0 1;0 1];C = [1 0 0 0;0 0 1 0);D =[南0; 0 NaN];

指定使用状态空间模型舰导弹。验证模型状态空间模型规范是一致的。

Mdl =舰导弹(A, B, C, D)
Mdl =类型:状态空间模型的地对地导弹状态向量与长度:4观测向量长度:2状态扰动向量长度:2观察创新向量长度:2样本容量支持模型:无限的未知参数估计:8状态变量:x1, x2,…金宝app国家干扰:u1, u2,……观察系列:y1, y2,……观察创新:e1, e2,…未知参数:c1, c2,…状态方程:x1 (t) = (c1) x1 (t - 1) + (c3) x2 (t - 1) + (c4) x3 (t - 1) + u1 (t) x2 (t) = u1 (t) x3 (t) = (c2) x1 (t - 1) + (c5) x3 (t - 1) + (c6) x4 (t - 1) + u2 (t) x4 (t) = u2 (t)观测方程:日元(t) = x1 (t) + (c7) e1 (t) y2 (t) = x3 (t) + (c8) e2 (t)初始状态分布:初始状态意味着不指定。没有指定初始状态协方差矩阵。国家没有指定类型。

估计模型参数,并使用一组随机的初始参数值的优化。限制的估计 σ 1 σ 2 使用的所有积极、实数“磅”名称-值对的论点。对于数值稳定,指定黑森软件计算参数协方差矩阵时,使用“CovMethod”名称-值对的论点。

rng (1);params0 =兰德(8,1);[EstMdl, estParams] =估计(Mdl、isY params0,“磅”,(负负负负负负0 0],“CovMethod”,“海赛”);
方法:最大似然(fmincon)样本量:51对数似然:-170.92 Akaike信息标准:357.84贝叶斯信息准则:373.295 |多项式系数性病犯错t统计概率- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - c (1) c(2) | | 0.06750 0.16548 0.40791 0.68334 -0.01372 0.05887 -0.23302 0.81575摄氏度(3)0 c(4) | | 2.71201 0.27039 10.03006 0.83815 2.84585 0.29452 0.76836摄氏度(5)c(6) | | 0.06274 2.83469 0.02213 0.98234 0.05196 2.56872 0.02023 0.98386摄氏度(7)c(8) | | 0.00273 2.40769 0.00113 0.99910 0.00016 0.13942 0.00113 0.99910 | |最终状态性病Dev t统计概率(1)| -0.00000 0.00273 -0.00033 0.99973 x (2) x (3) | 0.89527 | 0.12237 0.92954 0.13164 0.04049 0.00016 256.74447 0 x (4) | 0.01183 0.00016 72.51089 0

EstMdl是一个舰导弹模型,您可以访问其属性使用点符号。

滤波器的估计,状态空间模型,并提取过滤状态和最后阶段的差异。

[~,~,输出]=过滤器(EstMdl isY);

修改估计,所以状态空间模型,初始状态的均值和方差协方差的过滤状态和最后的时期。这个设置模拟预测地平线。

EstMdl1 = EstMdl;EstMdl1。Mean0=Output(end).FilteredStates; EstMdl1.Cov0 = Output(end).FilteredStatesCov;

模拟5 e5从安装路径的观察,状态空间模型EstMdl。为每个指定模拟观测。

numPaths = 5 e5;SimY =模拟(EstMdl1 10“NumPaths”,numPaths);

SimY是一个10——- - - - - -2——- - - - - -numPaths数组包含模拟观测。的行SimY对应于时间,列对应的观测模型,和页面对应的路径。

估计预测观测及其95%置信区间的预测地平线。

MCFY =意味着(SimY, 3);CIFY =分位数(SimY (0.025 - 0.975), 3);

估计的理论预测。

[Y, YMSE] =预测(EstMdl 10 isY);磅= Y -√YMSE) * 1.96;乌兰巴托= Y +√YMSE) * 1.96;

情节的预测观察他们的真实价值和预测时间间隔。

图h =情节(日期(end-numPeriods-9:结束),[isY (end-9:最终,1);oosY (: 1)]。“- k”,日期(end-numPeriods + 1:结束),MCFY (end-numPeriods + 1:结束,1),“。r”,日期(end-numPeriods + 1:结束),CIFY (end-numPeriods + 1:最终,1,1),“- b”,日期(end-numPeriods + 1:结束),CIFY (end-numPeriods + 1:结束,1,2),“- b”,日期(end-numPeriods + 1:结束),Y (: 1),”:c ',日期(end-numPeriods + 1:结束),磅(:1),“m”,日期(end-numPeriods + 1:结束),乌兰巴托(:1),“m”,“线宽”3);包含(“时间”)ylabel (“失业率的变化”)传说(h ((1、2、6)) {“观察”,“MC预测”,“95%的预测区间”,理论预测的,95%理论间隔的},“位置”,“最佳”)标题(观察和预测失业率的变化)

图包含一个坐标轴对象。坐标轴对象与标题观察和预测失业率的变化,包含时期,ylabel失业率的变化包含7线类型的对象。这些对象代表观察,MC预测,95%预测区间,理论预测,95%理论间隔。

图h =情节(日期(end-numPeriods-9:结束),[isY (end-9:结束,2);oosY (:, 2)),“- k”,日期(end-numPeriods + 1:结束),MCFY (end-numPeriods + 1:结束,2),“。r”,日期(end-numPeriods + 1:结束),CIFY (end-numPeriods + 1:结束,2,- 1),“- b”,日期(end-numPeriods + 1:结束),CIFY (end-numPeriods + 1:最终,2,2),“- b”,日期(end-numPeriods + 1:结束),Y (:, 2),”:c ',日期(end-numPeriods + 1:结束),磅(:,2),“m”,日期(end-numPeriods + 1:结束),乌兰巴托(:,2),“m”,“线宽”3);包含(“时间”)ylabel (“nGNP增长率”)传说(h ((1、2、6)) {“观察”,“MC预测”,“95% MC间隔”,理论预测的,95%理论间隔的},“位置”,“最佳”)标题(“观察和预测nGNP增长率”)

图包含一个坐标轴对象。坐标轴对象与标题观察和预测nGNP增长率,包含时期,ylabel nGNP增长率包含7线类型的对象。这些对象代表观察,MC预测,95% MC间隔,理论预测,95%理论间隔。

输入参数

全部折叠

标准,状态空间模型作为一个指定舰导弹模型对象返回的舰导弹估计。一个标准的具有有限状态空间模型的初始状态协方差矩阵元素。也就是说,Mdl不能一个dssm模型对象。

如果Mdl不完全指定的(即Mdl含有未知参数),然后指定使用的未知参数的值参数个数名称,值对参数。否则,该软件将抛出一个错误。

每个路径的时间数量产生变异,指定为一个正整数。

如果Mdl是一个时变模型,然后细胞向量的长度必须至少对应的系数矩阵numObs

如果numObs不到的时间吗Mdl可以支持金宝app,那么软件只用矩阵在第一numObs细胞的细胞向量对应的系数矩阵。

数据类型:

名称-值参数

指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

例子:(Y、X) =模拟(Mdl、numObs NumPaths, 100)

数量的样本路径产生变异,指定为逗号分隔组成的“NumPaths”和一个正整数。

例子:“NumPaths”, 1000年

数据类型:

状态空间模型中未知参数的值,指定为逗号分隔组成的“参数”和一个数字向量。

的元素参数个数对应于状态空间模型中的未知参数矩阵一个,B,C,D,选择初始状态的意思Mean0和协方差矩阵Cov0

  • 如果你创建的Mdl显式(即通过指定矩阵没有parameter-to-matrix映射函数),然后软件地图的元素参数个数s矩阵和状态空间模型的初始状态值。软件搜索年代后列顺序一个,B,C,D,Mean0,Cov0

  • 如果你创建的Mdl隐式(即通过指定的矩阵parameter-to-matrix映射函数),那么你必须设置状态空间模型初始参数值矩阵,初始状态值,和国家在parameter-to-matrix映射函数类型。

如果Mdl包含未知参数,那么您必须指定它们的值。否则,该软件忽略的价值参数个数

数据类型:

输出参数

全部折叠

模拟观测,作为一个矩阵或细胞返回数值向量的矩阵。

如果Mdl是一个定常模型对观察结果Y是一个numObs——- - - - - -n——- - - - - -numPaths数组中。每一行对应一个周期,每一列对应的观测模型,和每一个页面对应一个样本路径。最后一行对应于最新的模拟观测。

如果Mdl是一个时变模型对观察结果Y是一个numObs——- - - - - -numPaths细胞矩阵向量。Y {t j}包含一个向量的长度nt模拟观测的时期t的样本路径j。最后一行的Y包含最新的模拟观测。

数据类型:细胞|

模拟状态,返回的数值矩阵或细胞矩阵向量。

如果Mdl是一个定常模型对美国,然后呢X是一个numObs——- - - - - -——- - - - - -numPaths数组中。每一行对应一个周期,每一列对应一个状态的模型,和每一个页面对应一个样本路径。最后一行对应于最新的模拟状态。

如果Mdl是一个时变模型的状态,然后呢X是一个numObs——- - - - - -numPaths细胞矩阵向量。X {t j}包含一个向量的长度t模拟状态的时期t的样本路径j。最后一行的X包含最新的模拟状态。

模拟干扰状态,返回矩阵或单元矩阵的向量。

如果Mdl是一个定常模型扰动的状态,然后呢U是一个numObs——- - - - - -h——- - - - - -numPaths数组中。每一行对应一个周期,每一列对应一个状态的扰动模型,和每一个页面对应一个样本路径。最后一行对应于最新的模拟状态干扰。

如果Mdl是一个时变模型扰动的状态,然后呢U是一个numObs——- - - - - -numPaths细胞矩阵向量。U {t j}包含一个向量的长度ht模拟状态扰动时期t的样本路径j。最后一行的U包含最新的模拟状态扰动。

数据类型:细胞|

模拟观察创新,作为一个矩阵或细胞返回数值向量的矩阵。

如果Mdl是一个定常模型对观察创新,然后呢E是一个numObs——- - - - - -h——- - - - - -numPaths数组中。每一行对应一个周期,每一列对应一个观察的创新模式,和每一个页面对应一个样本路径。最后一行对应的最新模拟观察创新。

如果Mdl是一个时变模型对观察创新,然后呢E是一个numObs——- - - - - -numPaths细胞矩阵向量。E {t j}包含一个向量的长度ht模拟观测创新时期t的样本路径j。最后一行的E包含最新的模拟观测。

数据类型:细胞|

提示

从他们的联合条件模拟状态后验分布反应用simsmooth

引用

[1]杜宾J。,S. J. Koopman.时间序列分析的状态空间方法。第二版》。牛津:牛津大学出版社,2012年。

版本历史

介绍了R2014a