主要内容

从数据中估计查询表值

目标

此示例显示如何从时域输入输出(I / O)数据中估算查找表值参数估计

关于数据

在此示例中,使用I / O数据lookup_regular.mat.估计查找表的值。Mat文件包括以下变量:

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

  • ydata1.- 由对应于输入数据样本的输出数据组成

  • time1- 时间向量

使用I / O数据估计查找表值Lookup_Regular.万博1manbetx®模型。模型中的查找表包含十个值,存储在MATLAB中®变量表格.表的初始值由一个0的向量组成。要了解有关如何使用查找表建模系统的更多信息,请参见选择查找表的指南

打开参数估计会话

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

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

    Lookup_Regular.

    该命令打开Simulink模型,并将估计数据加万博1manbetx载到MATLAB工作空间中。

  2. 在Simuli万博1manbetxnk模型中,选择参数估计应用标签,在画廊中,下控制系统用名称开立新会话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轴分别表示输入和输出数据。该图显示了以下情节:

    • 实测数据-以品红星(*)表示。

    • 初始表值-由黑线表示。

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

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

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

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

  4. 在这一点参数估计选项卡,单击选择实验EstimationData默认选择估计。如果没有,请选中此处的框估计列,然后单击好吧

  5. 使用默认设置估计表值参数估计选项卡,单击估计打开参数轨迹情节和估算进度报告窗户。这参数轨迹绘图显示每个迭代处参数值的变化。

    估计收敛后,参数轨迹情节看起来像这样:

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

    估计的参数保存在估计仙人掌结果部分数据浏览器窗格在左边。要查看结果,请右键单击估计仙人掌然后选择打开.该报告类似于以下内容。

    此报告包括估计的参数值,成本函数的最终值以及其他优化结果。您可以看到优化在梯度大小,1.18E-14的大小小于标准值,1E-3时停止。

验证估计结果

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

  • 残差情节

  • 测量和模拟数据图

验证估算结果:

  1. 创建用于验证的新实验。说出它验证数据.导入验证I/O数据,xdata2.ydata2.和时间向量,time2验证数据实验。要执行此操作,请右键单击开立实验编辑器验证数据并选择编辑....然后,类型[time2, ydata2]在“输出”对话框中[time2,xdata2]在实验编辑器的输入对话框中。有关更多信息,请参见为参数估计导入数据

  2. 选择验证实验,在参数估计选项卡,单击选择实验.这验证数据选择实验默认情况下进行估计。取消选择框以估计并检查验证。

  3. 要选择要使用的结果,就在验证选项卡,单击选择要验证的结果.取消选择使用当前参数值并选择估计仙人掌,然后点击好吧

  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)

      该曲线显示表值,显示为黑线,匹配验证数据和模拟表值。表数据值涵盖了整个输入值范围,这表示估计了所有查找表值。

相关的话题