文档帮助中心文档
idnlhw
nlhw
估计Hammerstein-Wiener模型
sys = nlhw(数据、订单)
sys = nlhw(数据、订单、InputNL OutputNL)
sys = nlhw(数据、LinModel)
sys = nlhw(数据、LinModel InputNL OutputNL)
sys = nlhw(数据、sys0)
sys = nlhw (___选项)
例子
sys= nlhw (数据,订单)使用估计数据、模型阶数和延迟,以及默认的分段线性函数作为输入和输出非线性估计,创建并估计Hammerstein-Wiener模型。
sys= nlhw (数据,订单)
sys
数据
订单
sys= nlhw (数据,订单,InputNL,OutputNL)指定InputNL和OutputNL分别为输入和输出非线性估计量。
sys= nlhw (数据,订单,InputNL,OutputNL)
InputNL
OutputNL
sys= nlhw (数据,LinModel)使用线性模型来指定模型的阶数和延迟,并默认分段线性函数作为输入和输出非线性估计量。
sys= nlhw (数据,LinModel)
LinModel
sys= nlhw (数据,LinModel,InputNL,OutputNL)指定InputNL和OutputNL分别为输入和输出非线性估计量。
sys= nlhw (数据,LinModel,InputNL,OutputNL)
sys= nlhw (数据,sys0)改进或估计Hammerstein-Wiener模型的参数,sys0,使用估计数据。
sys= nlhw (数据,sys0)
sys0
使用此语法:
更新先前估计模型的参数,以改进对估计数据的拟合。在这种情况下,估计算法使用的参数sys0作为初始猜测。
方法估计先前创建的模型的参数idnlhw构造函数。在估计之前,您可以使用点表示法配置模型属性。
sys= nlhw (___,选项)指定附加的模型估计选项。使用选项使用任何前面的语法。
sys= nlhw (___,选项)
选项
全部折叠
负载iddata3M1 = nlhw(z3,[4 2 1]);
加载数据。
负载twotankdata;z = iddata (y, u, 0.2,“名字”,“两舱系统”);z1 = z (1:1000);
创建饱和度对象,下限为0,上限为5。
InputNL =饱和度(“LinearInterval”[0 5]);
没有输出非线性的估计模型。
m = nlhw(z1,[2 3 0],InputNL,[]);
生成自定义网络非线性需要定义一个自定义单元函数。
定义单位功能并将其保存为gaussunit.m.
gaussunit.m
版权所有2015 The MathWorks, Inc.函数[f, g, a] = gauss (x)如果Nargout >1 g = - 1 *x.*f;一个= 0.2;结束
创建自定义网络非线性使用gaussunit函数。
gaussunit
H = @gaussunit;CNet = customnet (H);
加载估计数据。
使用自定义网络估计Hammerstein-Wiener模型。
m = nlhw(z1,[5 1 3],CNet,[]);
估计线性OE模型。
负载throttledata.matTr = getTrend (ThrottleData);Tr.OutputOffset = 15;DetrendedData = dettrend (ThrottleData, Tr);选择= oeOptions (“焦点”,“模拟”);线性模型= oe(DetrendedData,[1 2 1],opt);
以OE模型为线性分量,饱和作为输出非线性,估计Hammerstein-Wiener模型。
sys = nlhw (ThrottleData LinearModel, [],“饱和”);
负载iddata1
使用以下方法构建Hammerstein-Wiener模型idnlhw来定义模型属性B和F.
B
F
sys0 = idnlhw ((2 2 0), [],“wavenet”);sys0。B{1} = [0.8,1]; sys0.F{1} = [1,-1.2,0.5];
估计模型。
sys = nlhw (z1, sys0);
估计一个Hammerstein-Wiener模型使用nlhw来定义模型属性B和F.
sys2 = nlhw (z1 (2 2 0), [],“wavenet”,“B”{[0.8, 1]},“F”, {1, -1.2, 0.5});
比较两个估计模型,看看它们是等价的。
比较(z1,系统,‘g’sys2,“r——”);
估计Hammerstein-Wiener模型。
负载iddata3Sys = nlhw(z3,[4 2 1]),“sigmoidnet”,“wavenet”);
完善模型,sys.
sys = nlhw (z3、sys);
创建评估选项集nlhw查看评估进度并将最大迭代步骤设置为50。
选择= nlhwOptions;opt.Display =“上”;opt.SearchOptions.MaxIterations = 50;
加载数据并估计模型。
负载iddata3Sys = nlhw(z3,[4 2 1]),“sigmoidnet”,“死区”、选择);
iddata
时域估计数据,指定为iddata.
(nb nf nk)
线性子系统传递函数的阶数和延迟,记为a(nb nf nk)向量。
的尺寸订单:
对于SISO传递函数,订单是一个正整数向量。
注是0加1的个数,nf是极点数,和nk为输入延迟。
注
nf
nk
对于具有的MIMO传递函数nu输入和ny输出,订单是一个矩阵的向量。
nu
ny
注,nf,nk是ny——- - - - - -nu矩阵的i j第Th项指定从的传递函数的顺序和延迟j输入我输出。
“pwlinear”
“sigmoidnet”
“wavenet”
“饱和”
“死区”
“poly1d”
“unitgain”
输入静态非线性估计器,指定为下列之一。
pwlinear
sigmoidnet
wavenet
饱和
死区
poly1d
[]
unitgain
customnet
例如,指定字符向量“sigmoidnet”,创建具有默认设置的非线性估计器对象。使用对象表示代替配置非线性估计器的性质。
InputNL = wavenet;InputNL。NumberOfUnits = 10;
或者,使用带有名称-值对参数的相关输入非线性估计函数。
InputNL = wavenet (“NumberOfUnits”10);
为nu输入通道,您可以通过设置为每个输入通道单独指定非线性估计器InputNL到一个nu-by-1非线性估计器数组。
InputNL = [sigmoidnet (“NumberofUnits”5);死区([1,2]))
输出静态非线性估计器,指定为下列之一:
指定字符向量将创建具有默认设置的非线性估计器对象。使用对象表示代替配置非线性估计器的性质。
OutputNL = sigmoidnet;OutputNL。NumberOfUnits = 10;
OutputNL = sigmoidnet (“NumberOfUnits”10);
为ny输出通道,您可以通过设置为每个输出通道单独指定非线性估计器OutputNL到一个ny-by-1非线性估计器数组。为所有输出指定相同的非线性,请指定单个输出非线性估计器。
idpoly
中的难点
K
0
idtf
用于指定线性子系统的离散时间线性模型,具体如下:
输出误差结构的输入-输出多项式模型(idpoly)
无扰动分量的状态空间模型(中的难点与K=0)
传递函数模型(idtf)
通常,您使用oe,n4sid,或特遣部队.
oe
n4sid
特遣部队
Hammerstein-Wiener模型,指定为idnlhw对象。sys0可以是:
先前使用idnlhw指定模型属性。
先前估计使用的模型nlhw,您希望使用新的估计数据集进行更新。
你也可以改进sys0使用原始的估计数据集。如果当数值搜索卡在代价函数的局部最小值时,之前的估计停止,则使用初始化首先随机化的参数sys0.看到sys0.Report.Termination搜索停止条件。使用初始化并不能保证在进一步改进之后就能得到更好的解决方案。
初始化
sys0.Report.Termination
nlhwOptions
Hammerstein-Wiener模型识别的估计选项,指定为nlhwOptions选项设置。
估计的Hammerstein-Wiener模型,返回为idnlhw对象。使用指定的模型阶数和延迟、输入和输出非线性估计器以及估计选项来估计模型。
中存储了有关评估结果和所使用选项的信息报告模型的属性。报告有以下字段:
报告
状态
模型状态的总结,表明模型是通过构造创建的还是通过估计获得的。
方法
评估使用的命令。
适合
定量评估的估计,返回作为一个结构。看到损失函数和模型质量度量有关这些质量度量标准的更多信息。该结构有以下字段:
FitPercent
归一化均方根误差(NRMSE)衡量模型响应与估计数据吻合的程度,用百分比表示适合= 100 (1-NRMSE)。
LossFcn
估计完成时损失函数的值。
均方误差
均方误差(MSE)衡量模型响应与估计数据吻合的程度。
消防工程
模型的最终预测误差。
另类投资会议
原始赤池信息准则(AIC)对模型质量的衡量。
AICc
小样本量修正AIC。
保险代理人
标准化的另类投资会议。
BIC
贝叶斯信息准则(BIC)。
参数
模型参数估计值。
OptionsUsed
用于估计的选项集。如果没有配置自定义选项,这是一组默认选项。看到nlhwOptions为更多的信息。
RandState
估计开始时随机数流的状态。空的,[],如果在估计过程中没有使用随机化。有关更多信息,请参见rng.
rng
DataUsed
用于估计的数据的属性,作为具有以下字段的结构返回:
的名字
数据集的名称。
类型
数据类型。
长度
数据样本的数量。
Ts
样品时间。
InterSample
输入样本间行为,返回为以下值之一:
“zoh”零阶保持保持采样之间的输入信号分段常数。
“zoh”
“呸”-一阶保持保持样本间的分段线性输入信号。
“呸”
“提单”—限带行为是指连续时间输入信号在奈奎斯特频率以上的功率为零。
“提单”
InputOffset
在估计过程中,从时域输入数据中去除偏移。对于非线性模型,它是[].
OutputOffset
在估计过程中,从时域输出数据中去除偏移。对于非线性模型,它是[].
终止
用于最小化预测误差的迭代搜索的终止条件,返回为具有以下字段的结构:
WhyStop
终止数值搜索的原因。
迭代
由估计算法执行的搜索迭代次数。
FirstOrderOptimality
∞ -当搜索算法终止时梯度搜索向量的范数。
FcnCount
调用目标函数的次数。
UpdateNorm
梯度搜索向量的范数。当搜索方法为时省略“lsqnonlin”或“fmincon”.
“lsqnonlin”
“fmincon”
LastImprovement
最后一次迭代中的标准改进,以百分比表示。当搜索方法为时省略“lsqnonlin”或“fmincon”.
算法
所使用的算法“lsqnonlin”或“fmincon”搜索方法。使用其他搜索方法时省略。
对于不需要数值搜索优化的估计方法终止字段是省略。
有关更多信息,请参见评估报告.
的并行计算支持可用于估计金宝applsqnonlin搜索方法(需要最优化工具箱™)。要启用并行计算,请使用nlhwOptions,设置SearchMethod来“lsqnonlin”,并设置SearchOptions.Advanced.UseParallel来真正的.
lsqnonlin
SearchMethod
SearchOptions.Advanced.UseParallel
真正的
例如:
选择= nlhwOptions;opt.SearchMethod =“lsqnonlin”;opt.SearchOptions.Advanced.UseParallel = true;
另类投资会议|customnet|死区|消防工程|goodnessOfFit|idnlhw|idnlhw / findop|初始化|linapp|线性化|n4sid|nlhwOptions|oe|pem|poly1d|pwlinear|饱和|sigmoidnet|特遣部队|unitgain|wavenet
goodnessOfFit
idnlhw / findop
linapp
线性化
pem
您已经有了abgeänderte版本死亡Beispiels。Möchten您是谁? Änderungen öffnen?
您有一个连接到MATLAB-Befehl entspricht:
Führen Sie den Befehl durch Eingabe in das MATLAB-Befehlsfenster aus。Webbrowser unterstützen keine MATLAB-Befehle。
选择一个网站,在那里获得翻译的内容,并看到当地的活动和优惠。根据您的位置,我们建议您选择:.
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
与当地办事处联系
得到审判现在