主要内容

根据数据估计查找表值

目标

的时域输入输出(I/O)数据估计查找表值参数估计量

关于数据

中的I/O数据lookup_regular.mat估计查找表的值。mat文件包含以下变量:

  • xdata1-由63个均匀采样的输入数据点组成,范围为[0,6.5]

  • ydata1—由输入数据样本对应的输出数据组成

  • time1-时间矢量

类中的查找表值使用I/O数据来估计lookup_regular动态仿真模块®模型。模型中的查找表包含十个值,这些值存储在MATLAB中®变量表格.初始表值包含一个0向量。要了解有关如何使用查找表对系统建模的更多信息,请参见选择查找表的指南

打开一个参数估计会话

要估计查找表值,请打开参数估计会话。

  1. 在MATLAB提示符下输入以下命令打开查找表模型:

    lookup_regular

    这个命令打开Simulink模型,并将估计数据加载到MATLAB工作区中。

  2. 在Simulink模型中,选择参数估计量应用程序Tab,在图库中,在下面控制系统以名称打开一个新的会话lookup_regular参数估计量

使用默认设置估计表值

使用以下步骤估计查找表的值。

  1. 通过点击创建一个新的实验新实验参数估计选项卡。它的名字EstimationData.然后导入I/O数据,xdata1而且ydata1,时间向量,time1,进入实验。要做到这一点,右键单击打开实验编辑器EstimationData并选择编辑…….类型[time1, ydata1]在输出对话框和[time1, xdata1]在实验编辑器的输入对话框中。有关更多信息,请参见导入数据进行参数估计.导入数据后,实验如下图所示:

  2. 运行初始模拟以查看I/O数据、模拟输出和初始表值。为此,在MATLAB提示符下输入以下命令:

    sim卡(“lookup_regular”图(1);情节(xdata1 ydata1,“m *”, xout, yout,“b ^”)举行;情节(linspace(0、6.5、10),表,“k”“线宽”2);传奇(的测量数据“初始模拟数据”“初始表值”);

    图中的x轴和y轴分别表示输入和输出数据。如下图所示:

    • 测量数据-用洋红色星号(*)表示。

    • 初始表值——用黑线表示。

    • 初始模拟数据-用蓝色Δ (Δ)表示。

    可以看到,初始表值和模拟数据与实测数据不匹配。

  3. 要选择要估计的表值,请在参数估计选项卡,单击选择参数按钮,以打开编辑:估计参数对话框。在所有实验的参数调整面板中,单击选择参数以启动选择模型变量对话框。选中表格旁边的复选框,然后单击好吧

    编辑:估计参数窗口现在看起来如下所示。默认情况下,将选择表值进行估计。

  4. 参数估计选项卡上,单击选择实验EstimationData默认情况下选择进行估计。如果没有,请勾选估计列,然后单击好吧

  5. 要使用默认设置估算表值,请在参数估计选项卡上,单击估计打开参数轨迹情节和评估进度报告窗口。的参数轨迹图中显示了每次迭代时参数值的变化。

    估计收敛后,参数轨迹剧情是这样的:

    评估进度报告显示迭代次数,评估目标函数的次数,以及每次迭代结束时代价函数的值。估计收敛后,评估进度报告看起来是这样的:

    估计的参数保存在EstimatedParams结果部份数据浏览器左边的窗格。要查看结果,右键单击EstimatedParams然后选择开放.报告内容如下。

    该报告包括估计的参数值、代价函数的最终值和其他优化结果。可以看到,当梯度的大小1.18e-14小于标准值1e-3时,优化停止了。

验证评估结果

在估计表值之后,如中所述使用默认设置估计表值,您必须使用另一个数据集来验证您没有过度拟合模型。您可以绘制和检查以下图,以验证估计结果:

  • 残差图

  • 测量和模拟数据图

为了验证估计结果:

  1. 创建一个新的实验用于验证。它的名字ValidationData.导入验证I/O数据,xdata2而且ydata2,时间向量,time2ValidationData实验。要做到这一点,右键单击打开实验编辑器ValidationData并选择编辑…….然后,类型[time2, ydata2]在输出对话框和[time2, xdata2]在实验编辑器的输入对话框中。有关更多信息,请参见导入数据进行参数估计

  2. 选择实验进行验证,在参数估计选项卡上,单击选择实验.的ValidationData默认选择实验进行估计。取消选择用于估计的方框,并选中它进行验证。

  3. 选择要使用的结果验证选项卡上,单击选择要验证的结果.取消选择使用当前参数值并选择EstimatedParams,单击好吧

  4. 参数估计量,默认显示验证后的实验图。的对应框中添加残差图验证选项卡。

    要开始验证,请在验证选项卡上,单击验证

  5. 检查情节

    1. 实验图

      可以看到,使用估计参数模拟的数据与实测验证数据一致。

    2. 点击残差图:ValidationData打开残差图。

      残差显示了模拟数据和测量数据之间的差异,其范围为[-0.15,0.15]-最大输出变化的15%以内。这表明测量值与模拟表数据值之间有很好的匹配。

    3. 在MATLAB提示符下输入以下命令,根据验证数据集绘制和检查估计的表值和模拟的表值。

      sim卡(“lookup_regular”图(2);情节(xdata2 ydata2,“m *”, xout, yout,“b ^”)举行;情节(linspace(0、6.5、10),表,“k”“线宽”, 2)

      该图显示,表值(显示为黑线)与验证数据和模拟表值相匹配。表数据值涵盖了输入值的整个范围,这表明已经估计了所有查找表值。

相关的话题

Baidu
map