主要内容

软件如何将参数估计制定为优化问题

作为优化问题的参数估计概述

执行参数估计时,软件可以制定优化问题。优化问题解决方案是设置的估计参数值。这个优化问题包括:

  • x- - - - - -设计变量.估计模型参数和初始状态。

  • Fx) - - -目标职能.一个函数,用来计算模拟响应和被测响应之间的差值。也被称为成本职能或估计错误.

  • (可选的)<年代pan class="inlineequation"> x ¯ x x ¯ - - - - - -界限.对估计参数值的限制。

  • (可选的)C(x) - - -约束函数.指定设计变量限制的函数。

优化求解器调整设计变量的值,以满足指定的目标和约束。优化的精确配方取决于您使用的优化方法。

成本职能

该软件调整模型参数以获得模拟响应(y<年代ub>sim卡)来跟踪测量的响应或参考信号(y<年代ub>裁判)。为了做到这一点,求解器最小化<年代pan class="emphasis">成本职能或<年代pan class="emphasis">估计错误,衡量模拟和测量响应之间的差异。成本函数,F(x),是优化问题的目标函数。

类型

原始估计误差,e(t),定义为:

e t y r e f t y 年代 t

et)也被称为错误残差或者,简单,残差.

金宝app®优化设计™软件为您提供以下成本函数来处理e(t):

成本职能 公式 GUI或命令行中的选项名称
SUM Squared错误(默认)

F x t 0 t N e t × e t

N为样本数。

“上世纪”
和绝对误差

F x t 0 t N | e t |

N为样本数。

'SAE'
生错误

F x e 0 e N

N为样本数。

'残留'

此选项仅在命令行中可用。

自定义功能 N/A

此选项仅在命令行中可用。

时基

该软件评估特定时间间隔的成本函数。这个间隔取决于测量信号时基和模拟信号时基.

  • 测量的信号时基由指定测量信号的所有时间点组成。在多个测量信号的情况下,该时基是所有测量信号的时间点的结合。

  • 模拟信号时基由模型所模拟的所有时间点组成。

如果模型使用变步长求解器,则模拟信号时基可以从一个优化迭代到另一个优化迭代。模拟信号和测量信号的时基可以不同。该软件仅对两者共同的时间间隔评估成本函数。缺省情况下,软件只使用被测信号在普通时间间隔内指定的时间点。

  • 在GUI中,您可以指定模拟开始和停止时间<年代trong class="guilabel">模拟时间面积<年代trong class="guilabel">模拟选项对话框。

  • 在命令行,软件指定模拟停止时间作为测量信号时基的最后一点。例如,下面的代码模拟模型直到最长运行输出信号的结束时间经验值,一个sdo.experiment.目的:

    sim_obj = createSimulator (exp);sim_obj = sim (sim_obj);

    sim_obj.包含与之相关的模型的模拟响应经验值

界限和约束

您可以根据您对系统的了解,为设计变量(估计的模型参数)指定边界。边界表示为:

x ¯ x x ¯

x ¯ 和<年代pan class="inlineequation"> x ¯ 是设计变量的下限和上限。

例如,在电池放电实验中,估计的电池初始电荷必须大于零且小于inf.这些界限表示为:

0 < x <

有关如何指定这些边界类型的示例,请参见估计模型参数和初始状态(代码)

您还可以指定其他约束,C(x),在命令行上设置设计变量。C(x)可以是线性或非线性的,可以描述等式或不等式。C(x)也可以指定多参数约束。例如,对于一个简单的摩擦模型,C(x)可以规定静摩擦系数必须大于或等于动摩擦系数。表示这个约束的一种方法是:

C x : x 1 x 2 C x 0

x1x2是动态和静态摩擦系数。

有关如何指定约束的示例,请参见带有参数约束的模型参数估计(代码)

优化方法和问题配方

优化问题可以是以下类型之一:

  • 最小化问题 - 最大限度地减少目标函数,F(x)。您可以指定要追踪模型输出的测量信号。您可以选择为估计参数指定界限。

  • 混合最小化和可行性问题-最小化一个目标函数,F(x),在规定的界限和约束下,C(x)。您可以指定要为估计参数跟踪和限制和约束的测量信号。

  • 可行性问题 - 找到满足指定约束的解决方案,C(x)。您只指定估计参数的边界和约束条件。这类问题在参数估计中并不常见。

您指定的优化方法决定了估计问题的表达式。该软件提供了以下优化方法:

优化方法名称 描述 优化问题制定
  • 用户界面:<年代trong class="guilabel">非线性最小二乘

  • 命令行:“lsqnonlin”

最小化残差的正方形,参数估计的推荐方法。

该方法需要使用固定时基的误差残差向量。如果您有标量成本函数,或者错误残差可以从一个迭代更改为另一个迭代,请不要使用此方法。

该方法使用最优化工具箱™函数,lsqnonlin

最小化问题

混合极小化与可行性问题

可行性问题

  • 用户界面:<年代trong class="guilabel">梯度下降法

  • 命令行:'fmincon'

一般的非线性求解器,采用代价函数梯度。

如果你想指定一个或任何以下组合,请使用此方法:

  • 定制的成本函数

  • 基于参数的基于约束

  • ieee约束

此方法使用优化工具箱功能,fmincon

有关如何计算渐变的信息,请参阅梯度计算

最小化问题

混合极小化与可行性问题

可行性问题

  • 用户界面:<年代trong class="guilabel">单纯x搜索

  • 命令行:“fminsearch”

基于Nelder-Mead算法,这种方法不使用成本函数梯度。

如果您的成本函数或约束不连续或可差,则使用此方法。

该方法使用最优化工具箱函数,fminsearchfminbndfminbnd如果正在优化一个标量参数,则使用。除此以外,fminsearch用来。您无法指定参数界限,<年代pan class="inlineequation"> x ¯ x x ¯ , 和fminsearch

最小化问题

混合极小化与可行性问题

可行性问题

  • 用户界面:<年代trong class="guilabel">模式搜索

  • 命令行:'patternsearch'

直接搜索方法,基于广义模式搜索算法,此方法不使用成本函数梯度。

如果您的成本函数或约束不连续或可差,则使用此方法。

该方法使用<年代pan class="entity">全局优化工具箱函数,Patternsearch.(全局优化工具箱)

最小化问题

混合极小化与可行性问题

可行性问题

另请参阅

|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">(全局优化工具箱)

相关的例子

更多关于