主要内容

预测

确定预测模型输出

描述

例子

yf=预测(sys,PastData,K)一个确定时间序列模型的预测输出sys,K步骤在未来使用过去的测量数据,PastData

预测执行预测到未来,在一个时间范围之外的最后即时测量数据。相比之下,预测命令的响应预测识别模型测量数据的时间跨度。使用预测来确定预测的结果与观察到的反应估计模型。如果sys是一个很好的预测模型,考虑使用它预测

例子

yf=预测(sys,PastData,K,FutureInputs)使用未来值的输入,FutureInputs预测的反应,一个输入通道的识别模型。

例子

yf=预测(___,选择)使用选项设置,选择指定附加预测选项。使用选择与以前的任何输入参数组合。

例子

(yf,x0,sysf)=预测(___)还返回初始状态估计的值,x0和预测模型,sysf,可以包括任何以前的输入参数组合。

例子

(yf,x0,sysf,yf_sd,x,x_sd)=预测(___)还返回输出的估计标准偏差,yf_sd,状态轨迹,x和标准偏差的轨迹,x_sd。使用任何以前的输入参数组合。

例子

预测(sys,PastData,K,___)情节预测的输出。使用任何以前的输入参数组合。

改变显示选项,右键单击访问上下文菜单的阴谋。例如,视图的估计标准偏差预测输出,选择置信区域从上下文菜单中。关于菜单的更多细节,请参阅提示

例子

预测(sys,Linespec,PastData,K,___)使用Linespec指定行类型、标记符号和颜色。

预测(sysN sys1……,PastData,K,___)情节多个识别模型的预测输出。预测自动选择颜色和线条样式。

预测(sys1 Linespec1,…, sysN LinespecN,PastData,K,___)使用线类型、标记符号和颜色指定为每个系统。

例子

全部折叠

预测一个正弦信号的值,使用一个基于“增大化现实”技术的模型。

数据生成和阴谋。

data = iddata(罪(0.1 * [1:10])”,[]);情节(数据)

图包含一个坐标轴对象。坐标轴对象与标题y1包含一个类型的对象。这个对象表示的数据。

符合正弦波的AR模型。

sys = ar(数据,2);

预测未来值对于一个给定的时间范围。

K = 100;p =预测(sys、数据、K);

K指定100个样本的预测时间范围。p是预测模型响应。

情节的预测数据。

情节(数据、“b”、磷、“r”),传说(“测量”,“预测”)

图包含一个坐标轴对象。坐标轴对象与标题y1包含2线类型的对象。这些对象代表测量,预测。

另外,使用语法图预测的输出预测(sys、数据、K)

获取过去的数据,并确定一个时间序列模型。

负载iddata9z9past_data = z9.OutputData (1:50);= ar模型(z9 4);

z9是一个iddata对象,该对象包含测量输出。

模型是一个idpoly时间序列模型。

为预测指定初始条件。

选择= forecastOptions (“InitialCondition”,“e”);

画出预测系统响应给定时间范围。

K = 100;预测(模型、past_data K,选择);传奇(“测量”,“预测”)

图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。这些对象代表测量(日元),预测。

获取过去的数据,并确定一个时间序列模型。

负载iddata9z9past_data = z9.OutputData (1:50);= ar模型(z9 4);

z9是一个iddata对象,该对象包含测量输出。

情节的预测系统响应给定时间范围作为一个红色虚线。

K = 100;(预测模型,“r——”、past_data K);

图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。这些对象表示过去的数据(y1)模型。

情节也默认显示过去的数据。改变显示选项,右键单击访问上下文菜单的阴谋。例如,视图的估计标准偏差预测输出,选择ConfidenceRegion从上下文菜单中。指定数量的标准差情节,双击情节和打开属性编辑器对话框。在对话框中,选项选项卡中,指定的标准偏差置信区域的识别模型。默认值是1标准差。

获取过去的数据,未来的输入,和一个确定的线性模型。

负载iddata1z1z1 = iddata (cumsum (z1.y) cumsum (z1.u) z1.Ts,“InterSample”,“呸”);past_data = z1 (1:10 0);future_inputs = z1.u(101:结束);sys =保利(z1 (2 2 2 0 0 1),“IntegrateNoise”,真正的);

z1是一个iddata包含集成数据的对象。sys是一个idpoly模型。past_data包含的前100数据点z1

future_inputs包含的最后200数据点z1

预测未来系统响应给定时间范围和未来的输入。

K = 200;(yf, x0, sysf yf_sd x, x_sd] =预测(sys、past_data K, future_inputs);

yf预测模型的响应,yf_sd是输出的标准偏差。x0是初始状态的估计价值,sysf状态空间模型的预测。还返回状态轨迹,x和标准偏差的轨迹,x_sd

预测的反应。

UpperBound = iddata (yf.OutputData + 3 * yf_sd, [], yf.Ts,“Tstart”,yf.Tstart);下界= iddata (yf.Ts yf.OutputData-3 * yf_sd, [],“Tstart”,yf.Tstart);情节(past_data (:,: []), yf (:,: []), UpperBound,“k——”下界,“k——”)({传奇“测量”,“预测”,“3 sd的不确定性”},“位置”,“最佳”)

图包含一个坐标轴对象。坐标轴对象与标题y1包含4线类型的对象。这些对象代表测量预测3 sd不确定性,下界。

画出状态轨迹。

t = z1.SamplingInstants(101:结束);次要情节(1,1)情节(t) x (: 1), t, x (: 1) + 3 * x_sd (: 1),“k——”t x (: 1) 3 * x_sd (: 1),“k——”)标题(“X_1”次要情节(3、1、2)情节(t) x (:, 2), t, x (:, 2) + 3 * x_sd (:, 2),“k——”t x (:, 2) 3 * x_sd (:, 2),“k——”)标题(“X_2”次要情节(3,1,3)情节(t) x (:, 3), t, x (:, 3) + 3 * x_sd (:, 3),“k——”t x (:, 3) 3 * x_sd (:, 3),“k——”)标题(“X_3”)

图包含3轴对象。坐标轴对象1标题X indexOf 1基线包含3线类型的对象。坐标轴对象2标题X indexOf 2基线包含3线类型的对象。坐标轴对象3标题X indexOf 3基线包含3线类型的对象。

响应的不确定性不规范的增长预测时间跨度,因为未来的输入。

加载数据。

负载(fullfile (matlabroot“工具箱”,“识别”,“iddemos”,“数据”,“predprey2data”));z = iddata (y, [], 0.1);集(z,“Tstart”0,“OutputUnit”,{“人口(千)”,“人口(千)”},“TimeUnit”,“年”);

z是一个两个输出时间序列数据集(不输入)从1-predator 1-prey人口。人口展品捕食者种群下降由于拥挤。数据集包含了201个数据样本覆盖20年的进化。

捕食者的变化(日元)和猎物(y2人口)可以表示为:

y 1 ( t ) = p 1 * y 1 ( t - - - - - - 1 ) + p 2 * y 1 ( t - - - - - - 1 ) * y 2 ( t - - - - - - 1 )

y 2 ( t ) = p 3 * y 2 ( t - - - - - - 1 ) - - - - - - p 4 * y 1 ( t - - - - - - 1 ) * y 2 ( t - - - - - - 1 ) - - - - - - p 5 * y 2 ( t - - - - - - 1 ) 2

捕食者和猎物种群的非线性可以配合使用非线性ARX模型与自定义的解释。

使用数据,历史数据的一部分。

past_data = z (1:10 0);

指定标准的解释。

na = [1 0;0 1];nb = [];nk = [];

指定自定义的解释。

C = {{“y1 (t - 1) * y2 (t - 1)”},{“y1 (t - 1) * y2 (t - 1)”,“y2 (t - 1) ^ 2”}};

估计非线性ARX模型使用past_data估计数据。

sys = nlarx (past_data (na nb nk),“idWaveletNetwork”,“CustomRegressors”C);

比较的模拟输出sys测量数据,以确保它是一个不错的选择。

比较(past_data sys);

图包含2轴对象。坐标轴对象1包含2线类型的对象。这些对象代表过去\ _data(日元),sys: 88.92%。坐标轴对象包含2线类型的对象。这些对象代表过去\ _data (y2) sys: 86.35%。

情节的预测输出sys

预测(sys, past_data, 101);传奇(“测量”,“预测”);

图包含2轴对象。坐标轴对象1包含2线类型的对象。这些对象表示测量(y1)系统。坐标轴对象包含2线类型的对象。这些对象代表测量(y2)预测。

获取过去的数据,未来的输入和识别线性模型。

负载iddata3z3past_data = z3 (1:10 0);future_inputs = z3.u(101:结束);sys =保利(z3 [2 2 2 0 0 1);

预测未来系统响应给定时间范围和未来的输入。

K =大小(future_inputs, 1);[yf, x0, sysf] =预测(sys、past_data K, future_inputs);

yf预测模型的响应,x0是初始状态的估计价值,sysf状态空间模型的预测。

模拟预测与状态空间模型的输入,future_inputs和初始条件,x0

选择= simOptions;opt.InitialCondition = x0;y = sim (sysf future_inputs (1: K),选择);

情节的预测和模拟输出。

t = yf.SamplingInstants;情节(t, yf.OutputData“b”、t、y“r”);传奇(“预测输出”,模拟输出的)

图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。这些对象代表预测输出,模拟输出。

模拟预测模型,sysf输入,future_inputs和初始条件,x0产量预测的输出,yf

输入参数

全部折叠

确定模型的输出预测,指定为以下之一:

如果一个模型不可用,估计sysPastData使用命令等基于“增大化现实”技术,arx,armax,nlarx,党卫军

过去的输入-输出时域数据,指定为以下之一:

  • iddata对象——使用观察到创建一个输入和输出信号iddata对象。对于时间序列数据(没有输入),指定为一个iddata对象没有输入iddata(输出,[])

  • 双打的矩阵——仅为离散时间模型。指定作为一个N——- - - - - -纽约为时间序列数据矩阵。在这里,N是观察和的数量吗纽约是输出的数量。

    为模型ν输入,指定PastData作为一个N————(纽约+ν)矩阵。

预测的时间范围,指定为一个正整数。输出,yf计算,K步骤在未来,这样的预测时间范围Ts * K

未来的输入值,指定为以下之一:

  • []——未来的输入值是假定为零,或等于输入补偿水平(如果他们中指定选择)。对于时间序列模型,指定[]

  • iddata——指定一个对象iddata对象没有输出。

  • K——- - - - - -ν矩阵的双打,K是预测地平线,ν输入的数量。

    如果你有来自多个实验的数据,您可以指定一个单元阵列的矩阵,每个实验一个PastData

预测选项,指定为一个forecastOptions选项设置。

线型、标志和颜色,指定为一个特征向量。例如,“b”“b +:”

关于配置的更多信息Linespec,请参阅Linespec参数情节

输出参数

全部折叠

预测的反应,作为一个返回iddata对象。yf有时是预测响应后最后的样品时间PastDatayf包含数据的时间间隔T0 + (N + 1: N + K) * T1,在那里T0 = PastData.TstartT1 = PastData.TsN样品的数量吗PastData

估计初始状态的预测,作为一个列向量的大小等于返回的状态数。使用x0与预测模型sysf复制纯模拟预测的结果。

如果PastDatamulti-experiment,x0单元阵列的尺寸吗,在那里是实验的数量。

sys不是一个(状态空间模型中的难点,idgrey,或idnlgrey),国家的定义取决于如果sys是线性或非线性:

  • 线性模型(idpoly,idproc,idtf)- - -sys转换为离散时间状态空间模型,x0返回的状态转换模型在一个时间点超出了最后的数据吗PastData

    如果转换sys中的难点是不可能的,x0返回空的。例如,如果sys是一种连续时间模型与不可约内部延迟。

  • 非线性模型(idnlhwidnlarx)- - -定义的状态idnlarxidnlhw模型,看到idnlarx状态的定义,idnlhw状态的定义

预测模型,返回以下之一:

  • 离散时间中的难点——如果sys是一个离散时间中的难点模型中,sysf是一样的sys。如果sys是一个线性模型(状态空间模型并不是一个idpoly,idproc,idtf),或者是一个连续时间(状态空间模型中的难点,idgrey),sys转换为离散时间中的难点模型。在返回的转换模型sysf

  • idnlarx,idnlhw,或idnlgrey——如果sys是一个非线性模型,sysf是一样的sys

  • 单元阵列模型——如果PastDatamultiexperiment,sysf是一个数组的模型,是实验的数量。

模拟sysf使用sim卡输入,FutureInputs和初始条件,x0,收益率yf作为输出。对于时间序列模型,FutureInputs是空的。

估计的标准偏差预测反应,作为一个返回K——- - - - - -纽约矩阵,K是预测地平线,纽约是输出的数量。软件计算标准偏差通过考虑协方差模型参数,初始状态协方差,加性噪声协方差。加性噪声协方差是存储在NoiseVariance模型的属性。

如果PastDatamultiexperiment,yf_sd单元阵列的尺寸吗,在那里是实验的数量。

yf_sd是空的,如果sys是一个非线性ARX (idnlarx)或Hammerstein-Wiener模型(idnlhw)。yf_sd也是空的,如果sys不包含参数协方差信息,如果getcov(系统)是空的。有关更多信息,请参见getcov

预测状态轨迹,作为一个返回K——- - - - - -Nx矩阵,K预测地平线Nx的状态数。x预测模型的状态。

如果PastDatamultiexperiment,x单元阵列的尺寸吗,在那里是实验的数量。

如果sys(状态空间模型是线性模型以外的不中的难点idgrey),然后转化为离散时间状态空间模型,和状态转换模型的计算。如果转换sys中的难点是不可能的,x返回空的。例如,如果sys是一种连续时间模型与不可约内部延迟。

x是空的,如果sys是一个非线性ARX (idnlarx)或Hammerstein-Wiener模型(idnlhw)。

预测状态的估计标准偏差x,返回K——- - - - - -Ns矩阵,K预测地平线Ns的状态数。软件计算标准偏差通过考虑协方差模型参数,初始状态协方差,加性噪声协方差。加性噪声协方差是存储在NoiseVariance模型的属性。

如果PastDatamultiexperiment,x_sd单元阵列的尺寸吗,在那里是实验的数量。

如果sys(状态空间模型是线性模型以外的不中的难点idgrey),然后转化为离散时间状态空间模型,和转换的状态和标准差计算模型。如果转换sys中的难点是不可能的,x_sd返回空的。例如,如果sys是一种连续时间模型与不可约内部延迟。

x_sd是空的,如果sys是一个非线性ARX (idnlarx)或Hammerstein-Wiener模型(idnlhw)。

提示

  • 右击打开上下文菜单的图,您可以访问以下选项:

    • 系统——选择系统查看预测输出。默认情况下,所有系统的预测输出策划。

    • 数据实验——仅供multi-experiment数据。从不同的实验数据之间切换。

    • 特征——查看以下数据特点:

      • 峰值——视图数据的峰值。

      • 平均值——视图数据的平均值。

      • 置信区域-查看估计标准偏差的预测输出。指定数量的标准差情节,双击情节和打开属性编辑器对话框。指定的标准偏差选项选项卡,在置信区域的识别模型。默认值是1标准差。

        为非线性ARX和生成的置信区域不是Hammerstein-Wiener模型和模型不包含参数协方差信息。

    • 显示过去的数据——情节过去输出数据用于预测。默认情况下,过去的输出数据绘制。

    • I / O分组——数据集包含多个输入或输出通道。选择分组输入和输出通道的阴谋。

      • 没有一个输出通道——情节在自己单独的轴。

      • 所有——所有一起输入通道和输出通道分组。

    • I / O选择器——数据集包含多个输入或输出通道。选择输入和输出通道的一个子集阴谋。默认情况下,所有输出通道绘制。

    • 网格——添加网格图。

    • 正常化——正常化y轴的所有数据。

    • 全视图——返回完整的视图。默认情况下,这个情节是全视图缩放。

    • 属性——打开属性编辑器对话框来定制属性。

版本历史

介绍了R2012a