Hammerstein-Wiener模型验证
后估计Hammerstein-Wiener模型对于您的系统,您可以验证它是否在可接受的范围内再现了系统行为。建议您使用单独的数据集来估计和验证您的模型。如果验证表明估计的置信度低,则请参见故障诊断模型估计为下一步。有关验证模型的一般信息,请参见模型验证.
比较模拟模型输出与实测输出
绘制模拟模型输出与实测输出数据进行比较,并计算最佳拟合值。在命令行中,使用比较
命令。你也可以使用sim卡
模拟模型响应。请注意,对于Hammerstein-Wiener模型,模拟和预测模型输出是等效的,因为这些模型都有一个平凡的噪声分量,即这些模型中的加性扰动是白噪声。有关在应用程序中绘制模拟输出的信息,请参见应用程序中的模拟和预测.
检查迭代搜索终止条件
在模型估计之后生成的估计报告列出了软件终止估计的原因。例如,假设报告表明估计达到了最大迭代次数。您可以通过为最大迭代次数指定更大的值来尝试重复估算。有关如何配置最大迭代数和其他估计选项的信息,请参见指定估计算法.
要在应用程序中查看评估报告,在模型评估完成后,查看评估报告面积估计选项卡。在命令行中,使用M.Report.Termination
显示估计终止条件,其中米
为估计的Hammerstein-Wiener模型。例如,检查M.Report.Termination.WhyStop
字段,描述停止估计的原因。
有关评估报告的更多信息,请参见评估报告.
检查最终预测误差和损失函数值
您可以通过比较估计报告中显示的最终预测误差和损失函数值来比较几个估计模型的性能。
查看估计模型的这些值米
在命令行中,使用M.Report.Fit.FPE
(最终预测误差)和M.Report.Fit.LossFcn
(估计终止时损失函数值)的性质。较小的值通常表示更好的性能。然而,M.Report.Fit.FPE
当模型包含相对于估计数据大小的许多参数时,值可能是不可靠的。将这些指标与其他验证技术一起使用,可以得出可靠的结论。
执行残留分析
残差是模型输出与测量输出之间的差异。因此,残差代表了模型无法解释的输出部分。你可以使用白度检验和独立性检验等技术分析残差。有关这些测试的详细信息,请参见什么是残留分析?
在命令行中,使用渣油
计算、绘制和分析残差。要在应用程序中绘制残差,请参见如何在应用程序中绘制残差.
检查Hammerstein-Wiener图
Hammerstein-Wiener图显示了Hammerstein-Wiener模型的静态输入和输出非线性和线性响应。
检查Hammerstein-Wiener图可以帮助您确定是否为系统建模选择了复杂的非线性。例如,假设您使用分段线性输入非线性来估计您的模型,但绘图表明饱和行为。你可以用更简单的饱和非线性来估计一个新的模型。对于多变量系统,您可以使用Hammerstein-Wiener图来确定是否排除特定通道的非线性。如果特定输入或输出通道的非线性没有表现出强烈的非线性行为,可以在将该通道的非线性设置为单位增益后估计一个新模型。
你可以在系统识别应用程序和命令行。在绘图窗口中,您可以通过单击表示模型的三个块之一来查看非线性和线性响应:
u问(输入非线性) -单击此块可查看到的输入处的静态非线性
线性分组
.图中显示评估(M.InputNonlinearity u)
在哪里米
是Hammerstein-Wiener模型,和u
是输入非线性块的输入。有关块的信息,请参见Hammerstein-Wiener模型的结构.线性分组
-单击此块可查看嵌入线性模型的阶跃、脉冲、波德和零点极响应图(M.LinearModel
).默认情况下,显示线性模型的阶跃图。y问(输出非线性) -单击此块可查看输出处的静态非线性
线性分组
.图中显示评估(M.OutputNonlinearity x)
,在那里x
是线性块的输出。
创建Hammerstein-Wiener图
要在系统识别应用程序中创建Hammerstein-Wiener图,在估计模型之后,选择Hamm-Wiener中的复选框。模型视图区域。有关在应用程序中创建和使用图的一般信息,请参见处理情节.
在命令行中,在您估计了Hammerstein-Wiener模型之后米
,您可以使用访问表示输入和输出非线性估计器的对象M.InputNonlinearity
而且M.OutputNonlinearity
.
使用情节
要查看非线性的形状和线性块的性质。
情节(M)
你可以使用额外的情节
参数来指定以下信息:
在情节中包括几个Hammerstein-Wiener模型。
配置如何评估每个输入和输出通道的非线性。
指定计算线性块的瞬态响应图和频率响应图的时间或频率值。
配置Hammerstein-Wiener图
配置非线性块的图:
在“Hammerstein-Wiener模型绘制”窗口中,选择要绘制的非线性块。
若要绘制输入非线性函数的响应,请单击u问块。
若要绘制输出非线性函数的响应,请单击y问块。
所选块以绿色高亮显示。
请注意
输入到输出非线性块y问是线性块的输出,而不是测量的输入数据。
中选择通道,如果模型包含多个输入或输出选择通道处的非线性列表。选择通道将更新图形,并显示非线性值与此非线性块的相应输入。
改变图的水平轴的范围。中生成的图可使用此特性系统识别应用程序。
在绘图窗口中,选择选项>设置输入范围打开“非线性输入范围”对话框。此特性仅在系统识别应用程序。
使用以下格式输入范围
(MinValue MaxValue)
.点击应用然后关闭更新剧情。
配置线性块响应图:
在Hammerstein-Wiener模型图窗口中,单击
线性分组
.中选择要查看其响应的输入-输出数据对选择I/O对列表。
选择线性响应图的类型。在选择绘图类型列表,从以下选项中选择:
一步
冲动
波德
Pole-Zero地图
设置阶跃或脉冲响应图的时间跨度。中生成的图可使用此特性系统识别应用程序。
在绘图窗口中,选择选项>时间跨度.在“时间范围”对话框中,以为模型指定的时间单位指定时间跨度。在一段时间内T,从中绘制得到的响应- t / 4来T.点击应用然后关闭.
设置波德图的频率范围。此功能仅适用于在应用程序中生成的图形。
默认频率向量是128个线性分布的值,大于零且小于或等于奈奎斯特频率。如需更改范围,请选择选项>频率范围.在“频率范围”对话框中,使用下列方法之一指定以每个模型时间单位为rad的新频率矢量:
MATLAB®表达式,如
(1:10 0) *π/ 100
或logspace (-1200)
.表达式不能在MATLAB工作空间中包含变量。行向量的值,如
(1:0.1:100)
.
点击应用然后关闭.