主要内容

估计查询表的约束值

目标

中的查找表的约束值参数估计量.将单调增加的约束应用于查找表输出值,并使用该限制参数估计量来估计表值。

关于数据的

在本例中,使用lookup_increasing.mat,其中包含用于估计查找表值的测量I/O数据。MAT-file包含以下变量:

  • xdata1—输入数据由602均匀采样的范围内的数据点组成(5, 5)

  • ydata1—输入数据样本对应的输出数据。

  • 时间1——时间向量。

使用I / O数据来估计单调增加查找表的输出值lookup_increasing金宝app®模型。

查找表的输出

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

    lookup_increasing

    此命令打开Simulink模型,并在MATLA金宝appB工作区中加载估计数据。

  2. 控件,以查看表输出值查找表块。

    该表包含断点的11个输出值[-5:5],在“功能块参数”对话框中指定。要了解关于如何指定表值的更多信息,请参见输入断点和表数据

    表数据字段显示表输出值是存储在变量中的值的累积和ydelta.因此,如果yn是11表输出值,ydelta是(y1y2- - - - - -y1y3.- - - - - -y2、……y11- - - - - -y10)。最初的ydelta从中加载值lookup_increasing.mat

    初始表输出值不是单调递增的。为了确保表输出值的单调递增,相邻表输出值之间的差值应该是正的。要做到这一点,就要估算ydelta在里面参数估计量使用测量的I / O估计数据和约束ydelta(2:结束)在估计期间是积极的。

使用默认设置估计单调递增的表值

  1. 打开参数估计会话。

    在Simuli金宝appnk模型中,选择参数估计量来自应用程序Tab,在gallery下控制系统使用该名称打开会话lookup_increasing在里面参数估计量

  2. 创建实验并导入I / O数据。

    参数估计选项卡上,单击新实验.类型[time1, ydata1]输出[time1,xdata1]输入编辑实验对话框。点击好的.一个名字的新实验exp.是在实验应用程序的区域。重命名实验估计adata.通过右键单击默认的实验名称,exp.,选择重命名.有关更多信息,请参见导入参数估计数据

  3. 通过在MATLAB提示符下输入以下命令,运行初始模拟以查看测量数据、模拟模型值和初始表值。

    sim卡(“lookup_increasing”图(1);情节(xdata1 ydata1,“m *”,xout,yout,'b ^') 抓住;绘图(-5:5,Cumsum(Ydelta),'k'“线宽”(2)包含输入数据的);ylabel ('输出数据');传奇(的测量数据'初始模拟数据'“初始表输出”

    初始表输出值和模拟数据与实测数据不匹配。

  4. 选择估计参数。

    参数估计选项卡上,单击选择参数.将打开“编辑:估计参数”对话框。在参数调整为所有实验面板,点击选择参数要打开“选择模型变量”对话框。选中旁边的框ydelta,然后单击好的

    ydelta默认情况下,选择值为估计,在“编辑:估计的参数”对话框中。

  5. 在表输出值上应用单调增加的约束。有关该表的更多详细信息,请参阅查找表的输出

    在“编辑:估计参数”对话框中,单击ydelta值。在展开的菜单中,设置最低限度ydelta(负无穷,0 (10)).因此,虽然第一个值ydelta可以通过任何内容,后续值是相邻表输出值之间的差异,必须是正的。

  6. 选择估计adata.实验评估。

    参数估计选项卡上,单击选择实验.默认情况下,估计adata.进行估计。如果没有,请在下面的方框中打勾估计列,然后单击好的

  7. 使用默认设置估计表值。

    参数估计选项卡上,单击估计

    参数轨迹Plot显示每次迭代时参数值的变化。

    评估进度报告显示迭代次数,目标函数被评估的次数,以及每次迭代结束时成本函数的值。

    估计的参数保存在一个新的变量中,EstimatedParams, 在里面结果应用程序的区域。要查看估计的参数,请右键单击EstimatedParams并选择开放

    估计ydelta(2:结束)价值观是积极的。因此,表的输出,即存储在其中的值的累积和ydelta,是单调递增的。

验证评估结果

估计表值后,如下所述使用默认设置估计单调递增的表值,您使用另一个测量的数据集来验证并检查您是否没有过度适合模型。您可以绘制并检查以下绘图以验证估算结果:

  • 残差图

  • 测量和模拟数据图

  1. 创建一个用于验证并导入验证I/O数据的实验。

    参数估计选项卡上,单击新实验.类型[time2,ydata2]输出[time2, xdata2]输入编辑实验对话框。实验名称ValidationData通过右键单击默认的实验名称,exp., 在里面实验应用程序的区域,并选择重命名.有关更多信息,请参见导入参数估计数据

  2. 选择实验进行验证。

    点击选择实验在这方面参数估计选项卡。的ValidationData选择实验估计默认情况下。清晰的估计并选择框验证

  3. 选择要验证的结果。

    验证选项卡上,单击选择结果以验证.清晰的使用当前参数值中,选择EstimatedParams,然后单击好的

  4. 选择要在验证期间显示的图。

    参数估计量默认显示验证后的实验图。上选择相应的方框来添加残差图验证选项卡。

    点击验证

  5. 检查的阴谋。

    1. 实验图显示了使用估计参数模拟的数据与测量的验证数据一致。

    2. 要查看残差图,请单击剩余的情节:ValidationData选项卡。

      显示模拟和测量数据之间的差异的残差位于最大输出变化的15%以内。这表示测量和模拟表数据值之间的良好匹配。

    3. 绘制并检查验证数据、模拟数据和估计表值。

      sim卡(“lookup_increasing”图(2);情节(xdata2 ydata2,“m *”,xout,yout,'b ^') 抓住;绘图(-5:5,Cumsum(Ydelta),'k'“线宽”,2)xlabel(输入数据的);ylabel ('输出数据');传奇(验证数据的'模拟数据''表输出值');

      表输出值匹配测量的数据和模拟表值。表输出值涵盖整个输入值范围,表示估计了所有查找表值。

相关话题