模拟人生

用蒙特卡罗方法模拟不确定线性模型

说明

模拟人生使用蒙特卡罗方法模拟线性模型。该指令使用模型不确定参数的不同值、加性噪声的不同实现和仿真初始条件进行多个仿真。模拟人生使用蒙特卡罗技术产生响应不确定性,而sim卡使用高斯近似公式生成不确定度。

例子

模拟人生(系统,乌达)模拟并绘制识别模型的10个扰动实现的响应系统. 仿真输入数据乌达用于计算模拟响应。

扰动实现的参数系统与原模型的参数协方差一致,系统. 如果系统不包含参数协方差信息,10个模拟响应相同。有关如何使用参数协方差信息生成扰动模型的信息,请参见辨识模型的摄动生成.

例子

模拟人生(系统,乌达,N个)模拟并绘制N个辨识模型的摄动实现系统.

例子

模拟人生(系统,乌达,N个,选择)使用选项集中指定的模拟行为模拟系统响应选择. 使用选择指定初始条件中的不确定性,并包括附加干扰的影响。

如果系统不包含参数协方差信息,也不为初始状态指定加性噪声或协方差值。您可以在附加噪声X0卵巢选择选择.

例子

是的=模拟人生(___)返回N个模拟结果是的作为一个单元数组。未生成模拟响应图。与以前语法中的任何输入参数组合一起使用。

例子

[是的,是的]=模拟人生(___)还返回估计的标准偏差是的对于模拟的响应。

实例

全部折叠

加载估计数据。

负载iddata1z1型

z1型是一个iddata公司存储输入输出估计数据的对象。

估计一个三阶状态空间模型。

sys=ssest(z1,3);

用蒙特卡罗方法模拟估计模型的响应,并输入估计数据,绘制响应图。

模拟人生(sys,z1);

蓝线表示原始标称模型的模拟响应系统. 绿线描绘了10个扰动实现的模拟响应系统.

使用蒙特卡罗方法对指定数量的模型扰动模拟估计的模型。

利用估计数据估计二阶状态空间模型。获得系统以可观测的规范形式。

负载iddata3号z3型sys=ssest(z3,2,'表单','规范');

用蒙特卡罗方法计算模型的模拟响应,并绘制响应图。指定随机模型扰动的数目为20。

N=20;模拟人生(sys,z3,N)

蓝线表示原始标称模型的模拟响应系统. 绿线描绘了20个扰动实现的模拟响应系统.

您还可以获得每个扰动的模拟响应系统. 使用此语法时不会生成绘图。

y=simsd(系统,z3,N);

是的是模拟响应,返回为N个+1个元素。是{1}包含系统. 其余元素包含N个不安的认识。

加载时间序列数据。

负载iddata9号z9型

z9型是一个iddata公司对象,有200个输出数据样本,没有输入。

用最小二乘法估计六阶AR模型。

sys=ar(z9,6,'ls');

对于时间序列数据,指定所需的模拟长度,北美洲=200使用北美洲-by-0输入数据集。

data=iddata([],零(200,0),z9.Ts;

设置初始条件以使用时间序列的初始样本作为历史输出样本。过去的数据分别映射到每个受扰动系统的初始状态。

IC=结构('输入',[],'输出',z9.y(1:6));opt=simsdOptions('初始条件',集成电路);

用蒙特卡罗方法和指定的初始条件对模型进行模拟。指定随机模型扰动的数目为20。

模拟人生(系统,数据,20,选择)

蓝线表示原始标称模型的模拟响应系统. 绿线描绘了20个扰动实现的模拟响应系统.

加载数据,并将其分为估计和模拟数据。

负载iddata3号ze=z3(1:200);zsim=z3(201:256);

二阶状态空间模型的估计系统使用估计数据。指定不生成参数协方差数据。获得系统以可观测的规范形式。

opt=ssestOptions选项('估计协方差',false);sys=ssest(ze,2,'表单','规范',选择);

设置模拟估计模型的初始条件。指定初始状态值x0个对于两种状态以及初始状态值的协方差x0Cov公司. 协方差指定为2乘2矩阵,因为有两个状态。

x0=[1.2;-2.4];x0Cov=[0.86-0.39;-0.39 1.42];opt=simsdOptions('初始条件',x0,'X0卵巢',x0Cov);

用蒙特卡罗方法和指定的初始条件对模型进行模拟。将随机模型扰动的数量指定为100。

模拟人生(sys,zsim,100,opt)

蓝线表示原始标称模型的模拟响应系统. 绿线描绘了100个扰动实现的模拟响应系统. 软件使用不同的初始状态实现来模拟每个扰动模型。初始状态由平均值为初始条件协方差X0卵巢.

加载估计数据。

负载iddata1z1型

z1型是一个伊达达塔存储300个输入输出估计数据样本的对象。

利用估计数据估计二阶状态空间模型。

sys=ssest(z1,2);

为创建默认选项集模拟人生,并修改选项集以添加噪波。

opt=simsdOptions;可选添加噪音=正确;

用蒙特卡罗方法计算估计模型的模拟响应。将随机模型扰动的数目指定为20,并使用指定的选项集模拟模型。

[y,y_sd]=模拟人生(sys,z1,20,opt);

是的是模拟响应,返回21个元素的单元格数组。是{1}包含系统. 其余元素包含20个扰动实现的模拟响应系统在每个响应中加入附加干扰。

是的是模拟响应的估计标准偏差,返回为iddata公司没有输入的对象。从21个模拟输出计算出标准差。要访问标准偏差,请使用是的_sd.OutputData输出数据.

输入参数

全部折叠

要模拟的模型,指定为以下参数线性识别模型之一:idtf公司,idproc公司,idpoly公司,入侵检测系统,或艾德格雷.

为了生成一组模拟响应,软件会扰动系统以与参数协方差信息一致的方式。使用盖特科夫检验系统. 关于扰动模型是如何从系统,请参见示例.

如果系统不包含参数协方差信息,也不为初始状态指定加性噪声或协方差值。您可以在附加噪声X0卵巢选择选择.

模拟输入数据,指定为下列数据之一:

  • iddata公司对象输入数据可以是时域的,也可以是频域的。软件只使用iddata公司反对。

    如果系统是时间序列模型,即没有输入的模型,请指定乌达作为北美洲-by-0信号,其中北美洲是每个N个扰动实现系统. 例如,要模拟100个输出示例,请指定乌达如下所示。

    udata=iddata([],零(100,0),Ts);

    例如,请参见用蒙特卡罗方法模拟时间序列模型.

  • 矩阵-用于仅使用时域数据的离散时间系统的仿真。矩阵的列对应于每个输入通道。

如果没有实验数据,请使用精氨酸产生具有各种特性的信号。

扰动实现数系统要模拟,指定为正整数。

使用蒙特卡罗方法模拟模型的模拟选项,指定为模拟刺激选项集。可以使用此选项集指定:

  • 输入和输出信号偏移量-指定要从输入信号中移除的偏移量和要添加到响应的偏移量系统.

  • 初始条件处理-指定模拟的初始条件及其协方差。状态空间与线性灰盒模型(入侵检测系统艾德格雷),如果要模拟初始状态中不确定性的影响,请设置初始条件选项,并使用X0卵巢选择。例如,请参见初始条件不确定性对模型响应的影响研究.

  • 将噪声添加到模拟数据-如果要包括附加干扰的影响,请指定附加噪声选项为真的. 例如,请参见附加扰动对响应不确定性的影响研究.

输出参数

全部折叠

模拟响应,返回为N个+1个元素。是{1}包含系统. 其余元素包含N个不安的认识。

该指令使用模型不确定参数的不同值、加性噪声的不同实现和仿真初始条件进行多个仿真。因此,如果系统不包含参数协方差信息,也不为中的初始状态指定相加噪声和协方差值选择.

模拟响应的估计标准偏差,返回为iddata公司反对。标准偏差计算为是的合奏:

是的 _ s公司 = 1个 N个 = 2个 N个 + 1个 ( 是的 { 1个 } 是的 { } ) 2个

在这里是{1}系统,和是{i}(i=2:N+1)是N个扰动实现系统.

更多关于

全部折叠

辨识模型的摄动生成

软件生成N个辨识模型的扰动系统然后模拟每个扰动的响应。扰动实现的参数系统与原始模型的参数协方差一致系统. 参数协方差系统提供有关参数分布的信息。然而,对于某些参数值,所得到的扰动系统可能是不稳定的。为了降低产生不现实系统的概率,软件预先设定参数协方差。

如果Δp是参数的协方差第页属于系统,然后模拟输出f(p+Δp)作为一阶近似的扰动模型为:

f型 ( 第页 + Δ 第页 ) = f型 ( 第页 ) + f型 第页 Δ 第页

这个模拟人生命令优先缩放Δp按比例因子s公司(约0.1%)生成带参数的扰动系统(p+sΔp). 然后命令计算f(p+sΔp),这些扰动系统的模拟响应。哪里,

f型 ( 第页 + s公司 Δ 第页 ) = f型 ( 第页 ) + s公司 f型 第页 Δ 第页

然后,该命令计算模拟的响应f(p+Δp)作为:

f型 ( 第页 + Δ 第页 ) = f型 ( 第页 ) + 1个 s公司 ( f型 ( 第页 + s公司 Δ 第页 ) f型 ( 第页 ) )

注意

此缩放不适用于idproc公司idtf公司模型。

如果指定附加噪声选择模拟刺激作为真的软件将噪声序列的不同实现方式加入到扰动系统的无噪声响应中。噪声序列的实现与模型的噪声成分一致。

对于状态空间模型,如果在X0卵巢选择模拟刺激采用不同的初始状态实现方法对每个扰动模型进行仿真。初始状态由平均值为初始条件协方差X0卵巢.

在R2006a之前引入