软件如何制定参数估计作为一个优化问题
作为优化问题的参数估计概述
当你进行参数估计时,软件会给出一个优化问题。优化问题的解是估计的参数值集。该优化问题包括:
x- - - - - -
设计变量.模型参数和初始状态需要估计。 F(
x) - - - 目标函数.计算模拟响应和测量响应之间的差值的函数。也被称为 成本函数或 估计误差. (可选)<年代pan class="inlineequation"> - - - - - -
界限.对估计参数值的限制。 (可选)
C( x) - - - 约束函数.指定对设计变量的限制的函数。
优化求解器调整设计变量的值以满足指定的目标和约束条件。优化的确切公式取决于您使用的优化方法。
成本函数
该软件调整模型参数以获得模拟响应(
类型
原始估计误差,
e(
万博1manbetx®优化设计™软件为您提供以下成本函数进行处理
成本函数 | 配方 | GUI或命令行中的选项名称 |
---|---|---|
和平方误差(默认) |
N是样本的数量。 |
上交所的 |
和绝对误差 |
N是样本的数量。 |
SAE的 |
生错误 |
N是样本的数量。 |
此选项仅在命令行中可用。 |
自定义函数 | N/A | 此选项仅在命令行中可用。 |
时基
该软件对特定时间间隔的成本函数进行评估。这个区间依赖于
所述被测信号时基由所述被测信号所规定的所有时间点组成。当有多个被测信号时,这个时基是所有被测信号的时间点的并集。
所模拟的信号时基由模型所模拟的所有时间点组成。
如果模型使用变步长求解器,那么模拟的信号时基可以从一个优化迭代到另一个优化迭代。模拟和测量信号时基可以不同。该软件仅对两者共同的时间间隔评估成本函数。默认情况下,软件只使用测量信号在公共时间间隔中指定的时间点。
在GUI中,可以在<年代trong class="guilabel">仿真时间面积<年代trong class="guilabel">模拟选项对话框。
在命令行上,软件将模拟停止时间指定为测量信号时基的最后一个点。例如,下面的代码模拟模型,直到的最长运行输出信号的结束时间
经验值
,一个sdo。实验
对象:sim_obj = createSimulator(exp);Sim_obj = sim(Sim_obj);
sim_obj
的模型的模拟响应经验值
.
界限和约束
您可以根据您对系统的了解,指定设计变量(估计模型参数)的边界。边界表示为:
而且<年代pan class="inlineequation"> 是设计变量的下界和上界。
例如,在电池放电实验中,估计的电池初始电量必须大于零,小于正
.这些边界表示为:
有关如何指定这些类型的边界的示例,请参见估计模型参数和初始状态(代码).
您还可以指定其他约束,
x1而且
有关如何指定约束的示例,请参见带参数约束的模型参数估计(代码).
优化方法和问题公式
优化问题可以是以下类型之一:
最小化问题-最小化目标函数,
F( x).您指定希望模型输出跟踪的测量信号。您可以选择为估计的参数指定边界。 混合最小化和可行性问题-最小化目标函数,
F( x),在指定的界限及限制下, C( x).您指定希望模型跟踪的测量信号,以及估计参数的边界和约束。 可行性问题-找到满足指定约束的解决方案,
C( x).您只需为估计的参数指定边界和约束。这类问题在参数估计中并不常见。
您指定的优化方法决定了估计问题的形式。软件提供以下优化方法:
优化方法名称 | 描述 | 优化问题公式 |
---|---|---|
|
最小化残差的平方,推荐的参数估计方法。 这种方法需要一个误差残差矢量,用固定的时间基数计算。如果您有一个标量代价函数,或者误差残差的数量可以从一个迭代到另一个迭代发生变化,请不要使用这种方法。 此方法使用优化工具箱™功能, |
|
|
一般的非线性求解器,使用代价函数梯度。 如果您想指定以下的一个或任何组合,请使用此方法:
此方法使用“优化工具箱”功能, 有关如何计算梯度的信息,请参见梯度计算. |
|
|
该方法基于Nelder-Mead算法,没有使用代价函数梯度。 如果你的成本函数或约束条件不是连续的或可微的,请使用这种方法。 此方法使用“优化工具箱”函数, |
|
|
直接搜索法,基于广义模式搜索算法,这种方法不使用代价函数梯度。 如果你的成本函数或约束条件不是连续的或可微的,请使用这种方法。 此方法使用<年代pan class="entity">全局优化工具箱函数, |
另请参阅
sdo。模拟
|<年代pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">sdo。实验
|<年代pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">sdo.requirements.SignalTracking
|<年代pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">evalRequirement
|<年代pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqnonlin
|<年代pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">fmincon
|<年代pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">fminsearch
|<年代pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">fminbnd
|<年代pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">patternsearch
(全局优化工具箱)