主要内容

过程

使用时间或频率数据估算过程模型

描述

例子

sys=过程(数据类型评估过程模型,sys,使用时间或频域数据,数据类型定义的结构sys

sys=过程(数据类型“InputDelay”,InputDelay指定输入延迟InputDelay

例子

sys=过程(数据init_sys使用流程模型init_sys配置初始化参数。

例子

sys=过程(___选择指定其他模型估计选项。使用选择使用前面的任何语法。

例子

(sys抵消] = procest(___返回输入信号中偏移量的估计值。当模型包含积分器时,或当您设置InputOffset.估计选项'估计'使用procestOptions。使用抵消使用前面的任何语法。

例子

(sys抵消我知道了] = procest(___将估计的初始条件返回initialCondition对象。如果您计划使用相同的估计输入数据模拟或预测模型响应,请使用此语法,然后将响应与相同的估计输出数据进行比较。结合初始条件在模拟的第一部分期间产生更好的匹配。

输入参数

全部收缩

估计数据,指定为一个iddata包含输入和输出信号值的对象,用于时域估计。对于频域估计,数据可以是以下之一:

  • 已记录的频率响应数据(FRD.(控制系统工具箱)idfrd

  • iddata具有其属性的对象如下:

    • InputData- 输入信号的傅里叶变换

    • OutputData-输出信号的傅里叶变换

    • - - - - - -'频率'

数据必须至少有一个输入和一个输出。

时间序列模型,它是不包含测量输入的模型,无法使用过程。使用基于“增大化现实”技术arx,或armax而是时间序列模型。

流程模型结构,为SISO模型指定为字符向量或表示模型结构的首字母缩写的字符串,例如“P1D”“P2DZ”。这个缩略词由以下几个部分组成:

  • P——所有“类型”首字母首字母首。

  • 012,或3.-要建模的时间常数(极点)的数量。可能的积分(原点极点)不包括在这个数字中。

  • -强制整合(自我调节过程)。

  • D-时间延迟(死时间)。

  • Z-额外的分子项,一个零。

  • U-欠阻尼模式(复值极点)允许。如果U不包括在内类型,所有极点必须是实的。极点的数目必须是2或3。

对于MIMO模型,使用纽约——- - - - - -ν字符向量的单元格数组或字符串数组,每个输入输出对有一个条目。在这里纽约输入的数量是多少ν是输出的数量。

有关如何的信息类型影响流程模型的结构,请参见idproc

输入延迟,指定为数字向量,指定每个输入通道的时间延迟。中存储的时间单位中指定输入延迟TimeUnit财产。

对于一个有ν输入,设置InputDelay对A.ν1的向量。这个矢量的每一项都是一个数值,表示对应输入通道的输入延迟。你也可以设置InputDelay对标量值对所有通道应用相同的延迟。

系统的初始参数配置sys,指定为idproc对象。你获得init_sys通过使用测量数据或使用直接施工来执行估计idproc。中定义的参数和约束init_sys作为预估的初始猜测sys

使用结构的属性init_sys的初始猜测和约束kp.TP1TP2.TP3.TwζTd, 和Tz。例如:

  • 的初始猜测TP1参数init_sys,设置init_sys.Structure.Tp1.Value作为最初的猜测。

  • 为此指定约束TP2.参数init_sys

    • init_sys.Structure.Tp2.Minimum到最低限度TP2.价值。

    • init_sys.Structure.Tp2.Maximum最大TP2.价值。

    • init_sys.Structure.Tp2.Free表示,如果TP2.是用于估计的自由参数。

如果选择没有指定,和init_sys是通过估计得到的,那么估计选项来自init_sys.Report.OptionsUsed使用。

的估计选项procestOptions选项设置。评估选项包括:

  • 估计目标

  • 对初始条件和干扰成分的处理

  • 数值搜索法用于估计

输出参数

全部收缩

确定的过程模型,作为一个返回idproc由...定义的结构模型类型

有关使用的估计结果和选项的信息存储在模型中报告财产。报告具有以下字段:

报告字段 描述
状态

模型状态的总结,它表明模型是通过构造创建的还是通过估算获得的。

方法

使用估计命令。

初始条件

模型估计过程中初始条件的处理,返回值为以下值之一:

  • “零”-初始条件设置为零。

  • '估计'-将初始条件作为独立的估计参数。

  • '倒退'-使用最佳最小二乘拟合估计初始条件。

控件时如何处理初始条件时,此字段特别有用初始条件估计选项集中的选项为“汽车”

适合

定量评估的估计,返回为结构。看到损失函数和模型质量指标有关这些质量指标的更多信息。该结构包含以下字段:

描述
FitPercent

归一化的根均匀平方误差(NRMSE)衡量模型的响应如何适合估计数据,表示为百分比适合= 100 (1-NRMSE)。

损失氟烃

估计完成时损失函数的值。

均方误差

均方误差(MSE)衡量模型的响应如何很好地拟合估计数据。

消防工程

模型的最终预测误差。

AIC.

模型质量的原始赤池信息准则(AIC)。

AICc

小样本校正AIC。

奈西

标准化的另类投资会议。

BIC

贝叶斯信息准则(BIC)。

参数

模型参数估计值。

OptionsUsed

用于估计的选项集。如果没有配置自定义选项,则这是一组默认选项。看到procestOptions为更多的信息。

RandState

估计开始时随机数流的状态。空的,[]如果在估计期间没有使用随机化。有关更多信息,请参阅RNG.

DataUsed

用于估计的数据的属性。结构与以下字段:

描述
的名字

数据集的名称。

类型

数据类型。为idnlarx模型,这被设置为时间域数据的

长度

数据样本数。

Ts

样品时间。这等价于数据。Ts

InterSample

输入intersample行为。以下值之一:

  • 'ZOH'-零阶保持器保持采样之间的分段恒定输入信号。

  • 'foh'- 一阶保持在样本之间维护分段 - 线性输入信号。

  • “提单”-限带行为指定连续时间输入信号在奈奎斯特频率以上的功率为零。

的价值Intersample对离散时间模型的估计结果没有影响。

InputOffset.

空的,[],用于非线性估计方法。

OutputOffset

空的,[],用于非线性估计方法。

终止

用于最小化预测误差的迭代搜索的终止条件,返回为具有以下字段的结构:

描述
为什么

终止数值搜索的原因。

迭代

由估计算法执行的搜索迭代次数。

FirstOrderOptimality

-范数的梯度搜索向量时,搜索算法终止。

FcnCount

目标函数被调用的次数。

Updatenorm.

最后迭代中梯度搜索矢量的常态。搜索方法是时省略“lsqnonlin”“fmincon”

LastImprovement

最后一次迭代中的标准改进,用百分比表示。搜索方法是时省略“lsqnonlin”“fmincon”

算法

所使用的算法“lsqnonlin”“fmincon”搜索方法。当使用其他搜索方法时省略。

对于不需要数值搜索优化的估计方法,则终止省略字段。

有关使用的更多信息报告,请参阅评估报告

输入偏移的估计值,作为向量返回。什么时候数据有多个实验,抵消是一个矩阵,其中每列对应于实验。

估计初始条件,返回为initialCondition对象或对象数组initialCondition值。

  • 对于单一实验数据集,我知道了以状态空间形式表示传递函数模型(一个C矩阵)到估计的初始状态(x0)。

  • 用于多实验数据集Ne实验,我知道了对象是长度数组吗Ne它包含一组initialCondition每个实验的值。

如果过程返回我知道了的值0你知道你有非零的初始条件,设“InitialCondition”选项procestOptions'估计'并将更新后的选项设置为过程。例如:

选择= procestOptions (“InitialCondition”,[sys,offset,ic] = procest(data,np,nz,opt)
默认值“汽车”设置“InitialCondition”使用“零”当初始条件对总体估计误差最小化过程的影响可以忽略时。指定'估计'确保软件对我知道了

有关更多信息,请参阅initialCondition。有关使用此参数的示例,请参见获得初始条件

例子

全部收缩

获取测量的输入输出数据。

负载iddemo_heatexchanger_data;数据= IDDATA(PT,CT,TS);data.inputname =.“δCTemp \”;数据。我nputUnit =“C”;数据。OutputName =“δPTemp \”;数据。OutputUnit =“C”;数据。TimeUnit =“分钟”

估计一阶加死时间过程模型。

类型=“P1D”;sysP1D =过程(数据类型);

将模型与数据进行比较。

比较(数据,SYSP1D)

图中包含一个轴。坐标轴包含两个line类型的对象。这些对象表示data (\Delta PTemp), sysP1D: 70.76%。

绘制模型残差。

图渣油(数据、sysP1D);

图中包含2个轴。带有AutoCorr标题的坐标轴1包含两个line类型的对象。此对象代表SYSP1D。标题为XCorr (\Delta CTemp)的轴2包含2个line类型的对象。此对象代表SYSP1D。

从图中可以看出,残差是相关的。为此,在过程模型中添加一阶ARMA扰动分量。

选择= procestOptions (“DisturbanceModel”“ARMA1”);sysP1D_noise =过程(数据,“p1d”、选择);

比较模型。

比较(数据、sysP1D sysP1D_noise)

图中包含一个轴。坐标轴包含3个类型为line的对象。这些对象表示data (\Delta PTemp), sysP1D: 70.76%, sysP1D\_noise: 24.43%。

绘制模型残差。

图渣渣(数据,sysp1d_noise);

图中包含2个轴。带有AutoCorr标题的坐标轴1包含两个line类型的对象。该对象表示sysP1D\_noise。标题为XCorr (\Delta CTemp)的轴2包含2个line类型的对象。该对象表示sysP1D\_noise。

残余物sysP1D_noise是不相关的。

利用正则化估计过参数化过程模型的参数。

假设增益比其他模型参数具有更高的置信度。

加载数据。

负载iddata1z1

估计一个不规范的流程模型。

m = idproc (“P3UZ”“K”, 7.5,“台湾”, 0.25,“ζ”,0.3,“Tp3”, 20岁,' Tz ', 0.02);m1 = proc (z1, m);

估计一个规范化的流程模型。

选择= procestOptions;opt.Regularization.Nominal =“模型”;opt.regularization.r = [100; 1; 1; 1; 1];opt.regularization.lambda = 0.1;M2 = Procest(Z1,M,OPT);

将模型输出与数据进行比较。

比较(z1, m1, m2);

图中包含一个轴。坐标轴包含3个类型为line的对象。这些物体代表z1 (y1) m1: 26.74% m2: 70.16%。

正则化有助于引导估计过程走向正确的参数值。

在指定参数值的初始猜测并确定它们的界限之后,评估流程模型。

获取输入/输出数据。

数据= idfrd(idtf([10 2],[1 1.3 1.2]),“碘”,0.45),logspace(-2,2,256));

指定估计初始化模型的参数。

类型=“P2UZD”;init_sys = iDproc(类型);init_sys.structure.kp.value = 1;init_sys.structure.tw.Value = 2;init_sys.structure.zeta.Value = 0.1;init_sys.structure.td.Value = 0;init_sys.structure.tz.Value = 1;init_sys.structure.kp.minimum = 0.1;init_sys.structure.kp.maximum = 10;init_sys.structure.td.maximum = 1; init_sys.Structure.Tz.Maximum = 10;

指定估计选项。

选择= procestOptions (“显示”“全部”“InitialCondition”'零');opt.SearchMethod ='lm';opt.SearchOptions.maxItations = 100;

估计过程模型。

sys =过程(数据、init_sys选择);

自从此以来“显示”选项被指定为“全部”,估计进度在单独的情况下显示植物鉴别进展窗口。

将数据与估计的模型进行比较。

比较(数据、sys init_sys);

图中包含2个轴。u1包含3个类型为line的对象。这些对象表示Data, sys: 100%, init\_sys: -7.299%。轴2包含3个line类型的对象。这些对象表示Data, sys: 100%, init\_sys: -7.299%。

获取输入/输出数据。

负载iddata1z1负载iddata2z2数据= [Z1 Z2(1:300)];

数据是具有2个输入和2个输出的数据集。第一个输入仅影响第一个输出。类似地,第二输入仅影响第二输出。

在估计的过程模型中,交叉项(模拟第一次投入对第二次产出的影响,反之亦然)应该可以忽略。如果给这些动态分配更高的阶数,它们的估计显示出高度的不确定性。

估计过程模型。

类型=“P2UZ”;sys =过程(数据类型);

类型变量表示具有复杂共轭的杆,零和延迟的模型。

为了评估不确定性,绘制频率响应图。

w = linspace(0, 20 *π,100);h = bodeplot (sys, w);showConfidence (h);

图中包含8个轴。u1包含一个类型为line的对象。该对象表示sys。轴2包含一个类型为line的对象。该对象表示sys。坐标轴3包含一个类型为line的对象。该对象表示sys。轴4包含一个类型为line的对象。该对象表示sys。u2包含一个类型为line的对象。 This object represents sys. Axes 6 contains an object of type line. This object represents sys. Axes 7 contains an object of type line. This object represents sys. Axes 8 contains an object of type line. This object represents sys.

负载iddata1(sys,抵消)= proc (z1,“P1DI”);抵消
抵消= 0.0412

加载数据。

负载iddata1ic.z1i

估计一阶加死时间过程模型sys并返回初始条件我知道了。第一个指定'估计'“InitialCondition”迫使软件进行评估我知道了。默认值“汽车”设置使用'估计'方法只有当初始条件对总体模型误差的影响超过一个阈值时。当初始条件对总体估计误差最小化过程的影响可以忽略时,则的汽车“设置使用“零”

选择= procestOptions (“InitialCondition”'估计');[sys,offset,ic] = procest(z1i,“P1D”、选择);我知道了
ic =初始条件与属性:A: -3.8997 X0: -1.0871 C: 4.5652 Ts: 0

我知道了是一个initialCondition的自由响应sys,以状态空间形式得到初始状态向量X0。你可以把我知道了当你模拟sys与之z1i输入信号并与响应进行比较z1i输出信号。

扩展功能

在R2012A介绍