主要内容

验证Hammerstein-Wiener模型

估计Hammerstein-Wiener模型对于您的系统,您可以验证它是否在可接受的范围内重新生成系统行为。建议您使用单独的数据集来估计和验证您的模型。如果验证表明估计的置信度较低,那么请参阅故障诊断模型估计为下一个步骤。有关验证模型的一般信息,请参见模型验证

比较模拟模型输出和测量输出

绘制模拟模型输出和测量输出数据进行比较,并计算最佳拟合值。在命令行,使用比较命令。你也可以用sim卡模拟模型响应。请注意,对于Hammerstein-Wiener模型,模拟和预测的模型输出是等价的,因为这些模型有一个微不足道的噪声成分,即这些模型中的附加干扰是白噪声。有关在应用程序中绘制模拟输出的信息,请参见应用程序中的仿真和预测

检查迭代搜索终止条件

在模型评估之后生成的评估报告列出了软件终止评估的原因。例如,假设报告表明估计达到了最大迭代次数。您可以通过为最大迭代次数指定一个更大的值来尝试重复估计。有关如何配置最大迭代次数和其他估计选项的信息,请参见指定估计算法

在app中查看估算报告,模型估算完成后,查看评估报告区域的估计选项卡。在命令行,使用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模型的结构

  • 线性分组-点击此块可查看嵌入线性模型的Step、impulse、Bode和极点-零响应图(M.LinearModel).默认情况下,显示线性模型的步进图。

  • y输出非线性) -单击此块可查看控件输出处的静态非线性线性分组.图显示评估(M.OutputNonlinearity x),在那里x为线性块的输出。

创建Hammerstein-Wiener Plot

要在系统识别应用程序中创建Hammerstein-Wiener图,在估计模型之后,选择Hamm-Wiener复选框中的模型视图区域。有关在应用程序中创建和使用图形的一般信息,请参见处理情节

在命令行中,在您估算了一个Hammerstein-Wiener模型之后,您可以使用下列方法访问表示输入和输出非线性估计量的对象M.InputNonlinearityM.OutputNonlinearity

使用情节来观察非线性块的形状和线性块的性质。

情节(M)

您可以使用附加的情节参数指定以下信息:

  • 在情节中包括几个Hammerstein-Wiener模型。

  • 配置如何评估每个输入和输出通道的非线性。

  • 指定计算线性块的瞬态和频率响应图的时间或频率值。

配置Hammerstein-Wiener图

配置非线性块体的地块:

  1. 在Hammerstein-Wiener模型绘图窗口中,选择要绘图的非线性块。

    • 要绘制输入非线性函数的响应,请单击u块。

    • 要绘制输出非线性函数的响应,请单击y块。

    选中的块用绿色突出显示。

    请注意

    输入到输出的非线性块y是线性块的输出,而不是测量的输入数据。

  2. 如果您的模型包含多个输入或输出,请选择选择信道上的非线性列表。选择通道更新绘图,并显示非线性值与相应的输入到这个非线性块。

  3. 改变绘图水平轴的范围。属性中生成的图只能使用此特性系统识别应用程序。

    在绘图窗口中,选择选项>设置输入范围打开“非线性输入范围”对话框。此功能仅在系统识别应用程序。

    使用格式输入范围(MinValue MaxValue).点击应用然后关闭更新情节。

配置线性块响应图:

  1. 在Hammerstein-Wiener模型图窗口中,单击线性分组

  2. 中选择要查看其响应的输入-输出数据对选择I / O列表。

  3. 选择线性响应图的类型。在选择情节类型列表中,从以下选项中选择:

    • 一步

    • 冲动

    • 波德

    • Pole-Zero地图

  4. 为步进或脉冲响应图设置时间跨度。属性中生成的图只能使用此特性系统识别应用程序。

    在绘图窗口中,选择选项>时间跨度.在“时间范围”对话框中,以您为模型指定的时间单位指定时间跨度。在一段时间内T,得到的响应是标绘的- t / 4T.点击应用然后关闭

  5. 设置波德图的频率范围。此功能仅适用于应用程序中生成的图形。

    默认的频率向量是128个线性分布的值,大于零且小于或等于奈奎斯特频率。要更改范围,请选择选项>频率范围.在“频率范围”对话框中,使用以下方法之一指定一个新的频率矢量,单位为每模型时间单位rad:

    • MATLAB®表达,如(1:10 0) *π/ 100logspace (-1200).表达式不能在MATLAB工作空间中包含变量。

    • 行向量的值,例如(1:0.1:100)

    点击应用然后关闭

相关的话题