主要内容

ssestOptions

ssest的选项集

描述

使用一个ssestOptions对象指定用于估计状态空间模型的选项党卫军函数。您可以指定一些选项,例如初始状态的处理、稳定性的执行以及在估计中使用的数值搜索方法。

创建

描述

例子

选择= ssestOptions的默认选项集党卫军.若要针对特定应用程序修改此选项集的属性,请使用点表示法。

例子

选择= ssestOptions (名称,值使用一个或多个名称-值参数指定的属性创建选项集。

属性

全部展开

用于初始化状态空间参数值的算法党卫军,指定为以下值之一:

  • “汽车”- - - - - -党卫军选择自动:

    • lsrf,当系统为非mimo时,数据为频域,状态空间参数为实值。

    • n4sid否则(时域,MIMO,或复值状态空间参数)。

  • “n4sid”-子空间状态空间估计方法-可用于所有系统(见n4sid).

  • “lsrf”-基于最小二乘有理函数估计的方法[7](见基于连续频域数据的连续时间传递函数估计) -可以为具有实值状态空间参数的非MIMO频域系统提供更高精度的结果,但不能用于任何其他系统(时域、MIMO或具有复值状态空间参数)。

在估计过程中对初始状态的处理,指定为以下值之一:

  • “零”—初始状态设置为0。

  • “估计”—初始状态被视为一个独立的估计参数。

  • “展望”-初始状态估计使用最佳最小二乘拟合。

  • “汽车”- - - - - -党卫军根据估计数据选择初始状态处理方法。可能的初始状态处理方法有“零”“估计”而且“展望”

  • Vector of doubles -指定长度的列向量Nx,在那里Nx是状态数。对于多次实验数据,指定一个矩阵列,是实验的次数。在估计过程中,指定的值被视为固定值。

  • 参数初始条件对象(x0obj) -使用指定初始条件idpar创建参数化初始条件对象。您可以使用参数初始条件对象指定最小/最大边界并固定特定状态的值。的自由项x0obj一起估计中的难点模型参数。

    此选项仅用于离散时间状态空间模型。

N4SID算法用于奇异值分解的加权方案,指定为以下值之一:

  • “MOESP”—使用Verhaegen的MOESP算法[2]

  • “脑血管意外”-使用Larimore的典型变量算法[1]

  • “SSARX”-一种子空间识别方法,使用基于ARX估计的算法来计算权重。

    指定此选项可以在使用在闭环操作中收集的数据时进行无偏估计。有关该算法的详细信息,请参见[6]

  • “汽车”—估算功能在MOESP算法和CVA算法之间进行选择。

N4SID算法使用的正向和反向预测范围,指定为以下值之一:

  • 一个有三个元素的行向量[r sy su],在那里r为最大正向预测视界。算法使用到r提前预测。sy是过去输出的数量,和是用于预测的过去输入的数量。见第209页和第210页[4]获取更多信息。这些数字可以对最终模型的质量产生实质性的影响,并且没有选择这些数字的简单规则。使“N4Horizon”一个k-by-3矩阵表示每一行“N4Horizon”尝试,然后选择最适合数据的值(预测值)。k猜的次数是多少[r sy su]组合。如果将N4Horizon指定为单列,R = sy = su使用。

  • “汽车”-该软件使用赤池信息标准(AIC)的选择sy而且

估计期间损失函数中要最小化的误差,指定为逗号分隔的对,由“焦点”和以下值之一:

  • “预测”-在估计过程中,将测量输出与预测输出之间提前一步的预测误差最小化。因此,估计的重点是产生一个良好的预测模型。

  • “模拟”-在估计过程中,测量输出和模拟输出之间的模拟误差最小化。因此,估计的重点是在当前输入条件下对模型响应的模拟进行良好的拟合。

焦点期权可以理解为损失函数中的加权滤波器。有关更多信息,请参见损失函数和模型质量度量

加权预滤波器应用于估计过程中要最小化的损失函数。要了解的效果WeightingFilter关于损失函数,请参见损失函数和模型质量度量

指定WeightingFilter作为下表中的值之一。

价值 描述
[] 不使用加权预滤波器。
通频带

指定包含定义所需通带的频率值的行向量或矩阵。您可以选择一个频带,其中估计模型和估计数据之间的拟合是优化的。例如,指定(王,wh),在那里而且wh表示通带的下限和上限。对于有几行定义频率通带的矩阵,[w1l, w1h; w2l w2h; w3l, w3h;……),估计算法使用频率范围的并集来定义估计通带。

通带用rad/表示TimeUnit对于时域数据,在FrequencyUnit对于频域数据,其中TimeUnit而且FrequencyUnit是估计数据的时间和频率单位。

输出滤波器

通过以下方式之一指定单输入单输出(SISO)线性滤波器:

  • 一个SISO LTI模型

  • {A, B, C, D}格式,它指定与估计数据具有相同采样时间的过滤器的状态空间矩阵。

  • {分子,分母}格式,该格式将过滤器的分子和分母指定为与估计数据具有相同采样时间的传递函数。

    该选项将加权函数作为滤波器和输入频谱的乘积来计算,以估计传递函数。

权重向量

仅适用于频域数据。指定一个权值列向量。这个向量的长度必须与数据集的频率向量相同,数据。频率.数据中的每个输入和输出响应都乘以相应频率的权重。

“发票”

适用于估算使用频率特性数据只有。使用 1 / | G ω | 作为加权滤波器,其中Gω)为复频响数据。使用此选项可捕获数据中相对较低的振幅动态,或拟合具有高模态密度的数据。此选项还可以更容易地为MIMO频率响应数据指定依赖于信道的加权滤波器。

“invsqrt”

仅适用于使用频率响应数据的估计。使用 1 / | G ω | 作为加权滤波器。使用此选项可捕获数据中相对较低的振幅动态,或拟合具有高模态密度的数据。此选项还可以更容易地为MIMO频率响应数据指定依赖于信道的加权滤波器。

控制是否强制估计模型的稳定性,指定为由逗号分隔的对组成“EnforceStability”,要么真正的

选项生成参数协方差数据,指定为真正的

如果EstimateCovariance真正的,然后使用getcov从估计的模型中获取协方差矩阵。

选项显示评估进度,指定为以下值之一:

  • “上”-有关模型结构和估计结果的信息显示在进度查看器窗口中。

  • “关闭”—无进度和结果信息。

离散时间和连续时间之间转换的输入通道样本间行为,指定为“汽车”“zoh”“呸”,或“提单”

三种行为值的定义如下:

  • “zoh”-零阶保持器在样本之间保持分段恒定的输入信号。

  • “呸”-一阶保持器在样本之间保持分段线性输入信号。

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

iddata对象也有类似的属性,数据。我nterSample,其中包含相同的行为值选项。当InputInterSample值是“汽车”估计数据是iddata对象数据,软件使用数据。我nterSample价值。当估计数据包含在时间表或矩阵对中时,使用“汽车”选项,软件使用“zoh”

该软件对所有通道和所有实验应用相同的选项值。

在估计期间从时域输入数据中去除偏移量,指定为下列之一:

  • 长度为正整数的列向量ν,在那里ν是输入的数量。

  • []—不偏移。

  • ν——- - - - - -矩阵-对于多个实验数据,请指定InputOffset作为一个ν——- - - - - -矩阵。ν输入的数量和是实验的次数。

InputOffset从相应的输入数据中减去。

在估计期间从时域输出数据中去除偏移量,指定为下列之一:

  • 长度的列向量纽约,在那里纽约是输出的数量。

  • []—不偏移。

  • 纽约——- - - - - -矩阵-对于多个实验数据,请指定OutputOffset作为一个纽约——- - - - - -矩阵。纽约输出的数量,和是实验的次数。

OutputOffset从相应的输出数据中减去。

多输出估计中预测误差的权重,指定为以下值之一:

  • “噪音”——减少 依据 E E / N ,在那里E表示预测误差和N是数据样本的数量。这种选择在统计意义上是最优的,如果对噪声的方差一无所知,则会导致最大似然估计。它使用估计噪声方差的倒数作为加权函数。

    请注意

    OutputWeight一定不是“噪音”如果SearchMethod“lsqnonlin”

  • 正半定对称矩阵(W) -最小化加权预测误差矩阵的迹跟踪(E”* E * W / N),地点:

    • E预测误差矩阵,每个输出有一列,和W是大小等于输出数的正半定对称矩阵。使用W指定多输出模型中输出的相对重要性,或对应数据的可靠性。

    • N是数据样本的数量。

  • []—软件选择“噪音”用单位矩阵W

此选项仅与多输出模型相关。

正则化估计模型参数的选项,模型参数指定为带有下表字段的结构。有关正则化的更多信息,请参见模型参数的正则化估计

字段名 描述 默认的
λ

决定偏差与方差权衡的常数。

指定一个正标量,将正则化项添加到估计代价中。

默认值0表示没有正则化。

0
R

权重矩阵。

指定一个非负数向量或一个方正半定矩阵。长度必须等于模型的自由参数的数量。

对于黑匣子模型,建议使用默认值。对于结构化和灰盒模型,还可以指定向量np正数,这样每个条目都表示对相关参数值的置信度。

默认值1表示值为眼睛(npfree),在那里npfree是自由参数的个数。

1
名义上的

在估计过程中,自由参数被拉向的标称值。

默认值为0意味着参数值趋于0。如果您正在细化一个模型,您可以将该值设置为“模型”将参数拉向初始模型的参数值。这个设置的初始参数值必须是有限的。

0

数值搜索方法用于迭代参数估计,指定为下表中的值之一。

SearchMethod 描述
“汽车”

自动方法选择

直线搜索算法的组合,“gn”“lm”“玲娜”,“研究生”,在每次迭代中依次尝试。使用导致估计成本降低的第一个下降方向。

“gn”

子空间高斯-牛顿最小二乘搜索

雅可比矩阵的奇异值小于GnPinvConstant * eps *马克斯(大小(J)) *规范(J)在计算搜索方向时被丢弃。J是雅可比矩阵。黑森矩阵近似为JTJ.如果这个方向没有改善,函数会尝试梯度方向。

“玲娜”

自适应子空间高斯-牛顿搜索

特征值小于γ*马克斯(sv)黑森人都被忽略了sv包含黑森的奇异值。高斯-牛顿方向在剩余子空间中计算。γ具有初始值InitialGnaTolerance(见先进的“SearchOptions”以获取更多信息)。此值将按因子增加LMStep每次搜索都不能在少于五次的等分中找到较低的标准值。此值将按因子减小2 * LMStep每次搜索都是成功的,没有任何二分。

“lm”

Levenberg-Marquardt最小二乘搜索

每个参数值为-pinv (H + d *我)*毕业生从前面的值。H是黑森人单位矩阵,和研究生是梯度。d是一个不断增加的数字,直到找到较低的标准值为止。

“研究生”

最速下降最小二乘搜索

“lsqnonlin”

的信任区域反射算法lsqnonlin(优化工具箱)

该算法需要最优化工具箱软件。

“fmincon”

约束非线性求解器

的顺序二次规划(SQP)和信任区域反射算法fmincon(优化工具箱)解算器。的“优化工具箱”软件,还可以使用内部点算法和活动集算法fmincon解算器。中指定算法SearchOptions。算法选择。的fmincon在以下情况下,算法可能会改善估计结果:

  • 当模型参数有边界时的约束最小化问题。

  • 损失函数是参数的非线性或非光滑函数的模型结构。

  • 多输出模型估计。行列式损失函数对于多输出模型估计,默认情况下最小化。fmincon算法能够直接最小化这种损失函数。其他搜索方法如“lm”而且“gn”通过交替估计噪声方差和降低给定噪声方差值的损失值来最小化行列式损失函数。因此,fmincon算法可以为多输出模型估计提供更好的效率和准确性。

的值指定为搜索选项集,其中的字段取决于的值SearchMethod

SearchOptions结构时SearchMethod被指定为“gn”“玲娜”“lm”“研究生”,或“汽车”

字段名 描述 默认的
宽容

损失函数的当前值与下一次迭代后的预期改进之间的最小百分比差异,指定为正标量。当预期改善的百分比小于宽容,迭代停止。在下一次迭代中对期望损失函数改进的估计是基于为当前参数值计算的高斯牛顿向量。

0.01
MaxIterations

损失函数最小化期间的最大迭代次数,指定为正整数。当迭代停止时MaxIterations达到或满足另一个停止标准,例如宽容

设置MaxIterations = 0返回启动过程的结果。

使用sys.Report.Termination.Iterations要获得估算期间的实际迭代次数,其中sys是一个idtf模型。

20.
先进的

高级搜索设置,指定为具有以下字段的结构。

字段名 描述 默认的
GnPinvConstant

雅可比矩阵奇异值阈值,指定为正标量。雅可比矩阵的奇异值小于GnPinvConstant *马克斯(大小(J) *规范(J) * eps)在计算搜索方向时被丢弃。适用时SearchMethod“gn”

10000
InitialGnaTolerance

初始值γ,指定为正标量。适用时SearchMethod“玲娜”

0.0001
LMStartValue

搜索方向长度的起始值d在Levenberg-Marquardt方法中,指定为正标量。适用时SearchMethod“lm”

0.001
LMStep

Levenberg-Marquardt步长的大小,指定为正整数。搜索方向长度的下一个值d在Levenberg-Marquardt方法中是LMStep乘以前一个。适用时SearchMethod“lm”

2
MaxBisections

沿搜索方向进行直线搜索时使用的最大等分数,指定为正整数。

25
MaxFunctionEvaluations

对模型文件的最大调用次数,指定为正整数。如果对模型文件的调用数量超过这个值,迭代就会停止。

MinParameterChange

每次迭代允许的最小参数更新,指定为非负标量。

0
RelativeImprovement

相对改善阈值,指定为非负标量。如果准则函数的相对改进小于这个值,迭代就会停止。

0
StepReduction

步长缩减因子,指定为大于1的正标量。建议的参数更新因因子而减少StepReduction每次尝试之后。这种减少持续到MaxBisections完成尝试或获得准则函数的较低值。

StepReduction不适用于SearchMethod“lm”(Levenberg-Marquardt方法)。

2

SearchOptions结构时SearchMethod被指定为“lsqnonlin”

字段名 描述 默认的
FunctionTolerance

软件最小化的损失函数上的终止容差,以确定估计的参数值,指定为正标量。

的价值FunctionTolerance和的一样吗opt.SearchOptions.Advanced.TolFun

1 e-5
StepTolerance

估计参数值上的终止公差,指定为正标量。

的价值StepTolerance和的一样吗opt.SearchOptions.Advanced.TolX

1 e-6
MaxIterations

损失函数最小化期间的最大迭代次数,指定为正整数。当迭代停止时MaxIterations达到或满足另一个停止标准,例如FunctionTolerance

的价值MaxIterations和的一样吗opt.SearchOptions.Advanced.MaxIter

20.

SearchOptions结构时SearchMethod被指定为“fmincon”

字段名 描述 默认的
算法

fmincon优化算法,指定为下列之一:

  • “sqp”-顺序二次规划算法。该算法在所有迭代中都满足边界,并且可以从结果。它不是一个大规模的算法。有关更多信息,请参见大规模和中等规模算法(优化工具箱)

  • “trust-region-reflective”——基于内反射牛顿法的子空间信赖域方法。这是一个大规模的算法。

  • “内点”-需要优化工具箱软件的大规模算法。该算法在所有迭代中都满足边界,并且可以从结果。

  • “激活集”-需要优化工具箱软件。该算法可以执行大步骤,从而提高速度。它不是一个大规模的算法。

有关算法的详细信息,请参见约束非线性优化算法(优化工具箱)而且算法选择(优化工具箱)

“sqp”
FunctionTolerance

软件最小化的损失函数上的终止容差,以确定估计的参数值,指定为正标量。

1 e-6
StepTolerance

估计参数值上的终止公差,指定为正标量。

1 e-6
MaxIterations

损失函数最小化期间的最大迭代次数,指定为正整数。当迭代停止时MaxIterations达到或满足另一个停止标准,例如FunctionTolerance

One hundred.

其他高级选项,作为带有下表字段的结构指定。

字段名 描述 默认的
ErrorThreshold

误差阈值,将大误差的权重由二次误差调整为线性误差。

误差大于ErrorThreshold乘以估计的标准差在损失函数中有一个线性权重。标准差稳健地估计为预测误差中位数的绝对偏差的中位数,除以0.7.有关健壮规范选择的更多信息,请参见第15.2节[4]

一个ErrorThreshold的价值0禁用鲁棒化,导致纯二次损失函数。在频域数据估计时,软件设置ErrorThreshold0.对于包含异常值的时域数据,请尝试设置ErrorThreshold1.6

0
最大尺寸

当输入-输出数据被分割成段时,一个段中的最大元素数。

最大尺寸必须为正整数值。

250000
StabilityThreshold

稳定性测试的阈值。

字段名 描述 默认的
年代

最右极的位置。

软件使用年代检验连续时间模型的稳定性。当一个模型的最右极在的左边时,它被认为是稳定的年代

0
z

所有极点到原点的最大距离。

软件使用z检验离散时间模型的稳定性。如果所有极点都在距离内,则认为模型是稳定的z从原点开始。

1 +√(eps)
AutoInitThreshold

自动估计初始条件的阈值。

该软件估计初始条件时:

y p z y e 一个 年代 y p e y e 一个 年代 > AutoInitThreshold

1.05
监护系统

指定是否使用数据驱动坐标算法[5]用于估计自由参数化状态空间模型。

指定监护系统作为下列值之一:

  • “上”-使用数据驱动坐标算法将自由参数投影到可识别参数的减小空间。

  • “关闭”的所有条目一个B,C直接使用指定的SearchMethod

例子

全部折叠

opt = ssestOptions
ssest命令的选项集:InitializeMethod: 'auto' InitialState: 'auto' N4Weight: 'auto' N4Horizon: 'auto' Display: 'off' InputInterSample: 'auto' InputOffset: [] OutputOffset: [] EstimateCovariance: 1 OutputWeight: [] Focus: 'prediction' WeightingFilter: [] EnforceStability: 0 SearchMethod: 'auto' SearchOptions: '<优化选项集>'正则化:[1x1 struct]高级:[1x1 struct]

为创建一个选项集党卫军使用“展望”算法初始化状态并设置显示在“

opt = ssestOptions(“InitialState”“展望”“显示”“上”
ssest命令的选项集:InitializeMethod: 'auto' InitialState: 'backcast' N4Weight: 'auto' N4Horizon: 'auto' Display: 'on' InputInterSample: 'auto' InputOffset: [] OutputOffset: [] EstimateCovariance: 1 OutputWeight: [] Focus: 'prediction' WeightingFilter: [] EnforceStability: 0 SearchMethod: 'auto' SearchOptions: '<优化选项集>'正则化:[1x1 struct]高级:[1x1 struct]

或者,使用点表示法来设置的值选择

opt = ssestOptions;opt.InitialState =“展望”;opt.Display =“上”

参考文献

Wallace Larimore, [1];“识别、过滤和自适应控制中的典型变量分析。”第29届IEEE决策与控制会议论文集,页596-604,1990。

[2] Verhaegen, Michel。“从输入输出数据中识别创新形式中给出的MIMO状态空间模型的确定性部分。”自动化《中国经济》,1994年第30卷第1期,61-74页。https://doi.org/10.1016/0005 - 1098 (94) 90229 - 1

[3]威尔斯,艾德里安,B.宁尼斯和S.吉布森。基于梯度的多变量系统估计搜索第16届国际会计师联合会世界大会论文集,布拉格,捷克共和国,2005年7月3-8日。牛津,英国:爱思唯尔有限公司,2005。

[4] Ljung, Lennart。系统识别:用户的理论.上马鞍河,新泽西州:Prentice-Hall PTR, 1999。

[5]麦凯维,托马斯,A.海默松和T.里巴里茨。多变量线性系统的数据驱动局部坐标及其在系统辨识中的应用。自动化,卷40,No. 9, 2004, pp. 1629-1635。

杨松,马格努斯。子空间识别和ARX建模第十三届国际会计师联合会系统识别研讨会, 2003年,荷兰鹿特丹。

Ozdemir, Ahmet Arda, S. Gumossoy。基于向量拟合的系统辨识工具箱中的传递函数估计。国际自动控制联合会第二十届世界大会论文集。2017年7月,法国图卢兹。

版本历史

在R2012a中引入

全部展开