选项集nlgreyest
opt = nlgreyestOptions;
为创建评估选项集nlgreyest
查看评估进度,并将最大迭代步骤设置为50。
opt = nlgreyestOptions;opt.Display =“上”;opt.SearchOptions.MaxIterations = 50;
加载数据。
负载(fullfile (matlabroot“工具箱”,“识别”,“iddemos”,“数据”,“dcmotordata”));Z = iddata(y,u,0.1,“名字”,直流电机的);
数据来自具有一个输入(电压)和两个输出(角位置和角速度)的直流电动机。模型的结构由dcmotor_m.m
文件。
创建一个非线性灰盒模型。
file_name =“dcmotor_m”;Order = [2 1 2];参数= [1;0.28];InitialStates = [0;0];init_sys = idnlgrey(file_name,Order,Parameters,InitialStates,0,)…“名字”,直流电机的);
使用估计选项估计模型参数。
Sys = nlgreyest(z,init_sys,opt);
为创建一个选项集nlgreyest
地点:
不生成参数协方差数据。
采用子空间高斯-牛顿最小二乘法进行估计。
opt = nlgreyestOptions(“EstimateCovariance”假的,“SearchMethod”,“gn”);
指定可选的逗号分隔对名称,值
参数。名字
是参数名和吗价值
是对应的值。名字
必须出现在引号内。可以以任意顺序指定多个名称和值对参数,如Name1, Value1,…,的家
。
nlgreyestOptions(“显示”,“上”)
GradientOptions
- - - - - -计算雅可比矩阵和梯度的选项计算雅可比矩阵和梯度的选项,指定为由“GradientOptions”
还有一个带有字段的结构:
字段名 | 描述 | 默认的 |
---|---|---|
MaxDifference |
计算数值导数时允许的最大参数摄动。指定为正实数> |
正 |
MinDifference |
计算数值导数时最小允许参数扰动。指定为正实数< |
0.01 * 12 (eps) |
DifferenceScheme |
计算参数和/或初始状态组成雅可比矩阵的数值导数的方法。指定为下列之一:
|
“汽车” |
类型 |
计算参数的导数(雅可比矩阵)或待估计初始状态时使用的方法。指定为下列之一:
|
“汽车” |
中的字段值GradientOptions
,创建默认值nlgreyestOptions
使用点表示法设置和修改字段。任何未修改的字段保留其默认值。
opt = nlgreyestOptions;opt.GradientOptions.Type =“基本”;
EstimateCovariance
- - - - - -参数协方差数据生成设置1
或真正的
(默认)|0
或假
控制是否生成参数协方差数据,指定为真正的
(1
)或假
(0
).
显示
- - - - - -估算进度显示设置“关闭”
(默认)|“上”
估算进度显示设置,指定为由逗号分隔的对组成“显示”
以及以下其中之一:
“关闭”
—不显示进度和结果信息。
“上”
—在进度查看器窗口中显示模型结构和估计结果的信息。
正则化
- - - - - -模型参数正则化估计的选项正则化模型参数估计的选项,指定为由逗号分隔的对“正规化”
还有一个带有字段的结构:
字段名 | 描述 | 默认的 |
---|---|---|
λ |
偏差与方差的权衡常数,指定为非负标量。 | 0 —表示不进行正则化。 |
R |
加权矩阵,指定为非负标量的向量或方正半定矩阵。长度必须等于模型中自由参数的个数,np 。使用nparams 命令,以确定模型参数的数量。 |
1 -取值为眼睛(np) 。 |
名义上的 |
在估计期间自由参数被拉向的标称值,指定为下列之一:
|
“零” |
中的字段值正则化
,创建默认值nlgreyestOptions
使用点表示法设置和修改字段。任何未修改的字段保留其默认值。
opt = nlgreyestOptions;opt. regular . lambda = 1.2;opt.Regularization.R = 0.5*eye(np);
正则化是一种指定模型灵活性约束的技术,它减少了估计参数值的不确定性。有关更多信息,请参见模型参数的正则估计。
SearchMethod
- - - - - -数值搜索法用于迭代参数估计“汽车”
(默认)|“gn”
|“玲娜”
|“lm”
|“研究生”
|“lsqnonlin”
数值搜索法用于迭代参数估计,指定为由逗号分隔的对组成“SearchMethod”
以及以下其中之一:
“汽车”
-如果优化工具箱™可用,“lsqnonlin”
使用。否则,结合线搜索算法,“gn”
,“lm”
,“玲娜”
,“研究生”
方法在每次迭代中按顺序进行尝试。采用降低估计成本的第一个下降方向。
“gn”
-子空间高斯-牛顿最小二乘搜索。雅可比矩阵的奇异值小于GnPinvConstant * eps *马克斯(大小(J)) *规范(J)
在计算搜索方向时丢弃。J是雅可比矩阵。Hessian矩阵近似为JTJ。如果在这个方向上没有改进,则函数尝试梯度方向。
“玲娜”
-自适应子空间高斯-牛顿搜索。特征值小于γ*马克斯(sv)
的黑森人被忽略,其中sv是黑森的奇异值。在剩余的子空间中计算高斯-牛顿方向。γ具有初始值InitialGnaTolerance
(见先进的
在“SearchOptions”
获取更多信息)。该值随因子增加LMStep
每次搜索在少于五个等分的范围内找不到较低的准则值。该值随因子而减小2 * LMStep
每次搜索成功,没有任何分割。
“lm”
—Levenberg-Marquardt最小二乘搜索,其中下一个参数值为-pinv (H + d *我)*毕业生
从上一个。H是黑森人,我是单位矩阵,然后研究生是梯度。d是一个增加的数字,直到找到较低的标准值为止。
“研究生”
-最陡下降最小二乘搜索。
“lsqnonlin”
-信任区域反射算法lsqnonlin
(优化工具箱)。需要优化工具箱软件。
“fmincon”
-约束非线性求解器。的顺序二次规划(SQP)和信任区域反射算法fmincon
解算器。的内部点和活动集算法fmincon
(优化工具箱)解算器。中指定算法SearchOptions。算法
选择。的fmincon
在以下场景下,算法可能会改善估计结果:
模型参数有边界时的约束最小化问题。
其中损失函数是参数的非线性或非光滑函数的模型结构。
多输出模型估计。行列式损失函数在MIMO模型估计中默认是最小的。fmincon
算法能够直接最小化这种损失函数。其他可用的搜索方法,如“lm”
和“gn”
通过交替估计噪声方差和减少给定噪声方差值的损失值来最小化行列式损失函数。因此,fmincon
算法对多输出模型的估计具有较高的效率和精度。
SearchOptions
- - - - - -搜索算法的选项集搜索算法的选项集,指定为由“SearchOptions”
和一个搜索选项集,其中的字段依赖于的值SearchMethod
。
SearchOptions
结构时SearchMethod
指定为“lsqnonlin”
或“汽车”
,当优化工具箱是可用的
字段名 | 描述 | 默认的 |
---|---|---|
FunctionTolerance |
损失函数上的终止容差,软件将其最小化以确定估计的参数值,指定为正标量。 的价值 |
1 e-5 |
StepTolerance |
估计参数值的终止容差,指定为正标量。 的价值 |
1 e-6 |
MaxIterations |
损失函数最小化过程中的最大迭代次数,指定为正整数。迭代停止于 的价值 |
20. |
先进的 |
高级搜索设置,指定为的选项集 有关详细信息,请参阅中的优化选项表优化选项(优化工具箱)。 |
使用optimset(“lsqnonlin”) 创建默认选项集。 |
SearchOptions
结构时SearchMethod
指定为“gn”
,“玲娜”
,“lm”
,“研究生”
,或“汽车”
,当优化工具箱不可用
字段名 | 描述 | 默认的 | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
宽容 |
损失函数的当前值与下一次迭代后预期改进之间的最小百分比差,用正标量表示。当期望改进的百分比小于 |
1 e-5 |
||||||||||||||||||||||||||||||
MaxIterations |
损失函数最小化过程中的最大迭代次数,指定为正整数。迭代停止于 设置 使用 |
20. |
||||||||||||||||||||||||||||||
先进的 |
高级搜索设置,指定为具有以下字段的结构:
|
SearchOptions
结构时SearchMethod
指定为“fmincon”
字段名 | 描述 | 默认的 |
---|---|---|
算法 |
|
“sqp” |
FunctionTolerance |
损失函数上的终止容差,软件将其最小化以确定估计的参数值,指定为正标量。 |
1 e-6 |
StepTolerance |
估计参数值的终止容差,指定为正标量。 |
1 e-6 |
MaxIterations |
损失函数最小化过程中的最大迭代次数,指定为正整数。迭代停止于 |
One hundred. |
中的字段值SearchOptions
,创建默认值nlgreyestOptions
使用点表示法设置和修改字段。任何未修改的字段保留其默认值。
opt = nlgreyestOptions(“SearchMethod”,“玲娜”);opt.SearchOptions.MaxIterations = 50;opt. searchoptions . advanced . improvement = 0.5;
OutputWeight
- - - - - -多输出估计中预测误差的加权[]
(默认)|“噪音”
|矩阵多输出模型估计中预测误差的加权,指定为由逗号分隔的对组成“OutputWeight”
以及以下其中之一:
[]
—不使用加权。指定为[]
等于眼睛(纽约)
,在那里纽约
是输出的个数。
“噪音”
—最优权重自动计算为估计噪声方差的倒数。这个权重最小化依据(E”* E / N)
,在那里E
预测误差矩阵是和N
为数据样本的个数。此选项在使用时不可用“lsqnonlin”
作为一个“SearchMethod”
。
一个正半定矩阵,W
,其大小等于输出的数量。这个权重最小化跟踪(E”* E * W / N)
,在那里E
预测误差矩阵是和N
为数据样本的个数。
先进的
- - - - - -其他高级选项其他高级选项,指定为由“高级”
和一个带场的结构:
字段名 | 描述 | 默认的 |
---|---|---|
ErrorThreshold |
何时将大误差的权重从二次型调整为线性型的阈值,指定为非负标量。错误大于ErrorThreshold 乘以估计的标准差在损失函数中有一个线性权值。标准偏差稳健估计为绝对偏差与预测误差中位数的中位数除以0.7。如果估计数据包含异常值,请尝试设置ErrorThreshold 来1.6 。 |
0 -导致纯二次损失函数。 |
中的字段值先进的
,创建默认值nlgreyestOptions
使用点表示法设置和修改字段。任何未修改的字段保留其默认值。
opt = nlgreyestOptions;opt.Advanced.ErrorThreshold = 1.2;
选择
-选项集nlgreyest
nlgreyestOptions
选项设置选项集nlgreyest
,作为一个nlgreyestOptions
选项设置。
您点击了与此MATLAB命令对应的链接:
通过在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
你亦可选择下列网址:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家网站没有针对您所在位置的访问进行优化。