主要内容

优化算法如何制定最小化问题

当您优化Simulink的参数时金宝app®模型满足设计要求,金宝appSimulink Design Optimization™软件会自动将要求转换为约束的优化问题,然后使用优化技术解决问题。约束优化问题迭代地模拟了模拟模型,将模拟的结果与约束目标进行比较,并使用优化方法调整调谐参数以更好地满足目标。金宝app

本主题介绍软件如何制定优化算法使用的约束优化问题。对于每个优化算法,软件制定以下类型的最小化问题之一:

有关每种优化算法如何制定这些问题的更多信息,请参阅:

可行性问题和约束制定

可行性意味着优化算法发现满足所有约束的参数值,以在指定的公差中满足所有约束,但不会最小化任何目标或成本函数。

在下图中,X1X3., 和XN代表参数值的组合P.1P.2并且是可行的解决方案,因为它们不会金宝搏官方网站违反下限约束。

在Simu金宝applink模型中,通过在复选框中指定较低和上限(检查步进响应特性,......)或要求对象(sdo.requirements.stepsponseEnvelope.,......),如下图所示。

这些约束是分段线性界限。一个分段线性束缚yBND.N边缘可以表示为:

y B. N D. T. = { y 1 T. T. 1 ≤. T. ≤. T. 2 y 2 T. T. 2 ≤. T. ≤. T. 3. y N T. T. N ≤. T. ≤. T. N + 1

该软件计算模拟响应与边缘之间的符号距离。下限的符号距离是:

C = [ 最大限度 T. 1 ≤. T. ≤. T. 2 y B. N D. - y S. 一世 m 最大限度 T. 2 ≤. T. ≤. T. 3. y B. N D. - y S. 一世 m 最大限度 T. N ≤. T. ≤. T. N + 1 y B. N D. - y S. 一世 m ]

在哪里ySIM是模拟响应,并且是优化参数的函数。

上限的符号距离是:

C = [ 最大限度 T. 1 ≤. T. ≤. T. 2 y S. 一世 m - y B. N D. 最大限度 T. 2 ≤. T. ≤. T. 3. y S. 一世 m - y B. N D. 最大限度 T. N ≤. T. ≤. T. N + 1 y S. 一世 m - y B. N D. ]

在命令行,Optimfcn.补给品C直接从这里CLEQ.现场val

如果全部满足约束(C≤0.)对于参数值的某种组合,据说该解决方案是可行的。在下图中,X1X3.是可行的解决方案。金宝搏官方网站

当您的模型具有多种要求或向导信号馈送要求时,约束向量随着每个信号的约束违规而延伸:

C = [ C 1 ; C 2 ; ; C N ]

跟踪问题

除了下限和上限,您还可以在a中指定参考信号检查反对参考块或者sdo.requirements.signaltracking.对象,Simulink模型输出可以跟金宝app踪。跟踪目标是SUM-Squared误差跟踪目标。

您将参考信号指定为时间幅度对序列:

y R. E. F T. R. E. F T. R. E. F { T. R. E. F 0. T. R. E. F 1 T. R. E. F N. }

该软件将模拟响应计算为时间幅度对的序列:

y S. 一世 m T. S. 一世 m T. S. 一世 m { T. S. 一世 m 0. T. S. 一世 m 1 T. S. 一世 m N. }

一些价值T.SIM可以匹配值的值T.裁判

一个新的时基,T.新的,由元素的联合形成T.裁判T.SIM。不在最小最大范围内的元素T.裁判T.SIM省略:

T. N E. W. = { T. T. S. 一世 m T. R. E. F }

使用线性插值,软件计算值y裁判ySIM在时间点T.新的然后计算缩放错误:

E. T. N E. W. = y S. 一世 m T. N E. W. - y R. E. F T. N E. W. 最大限度 T. N E. W. | y R. E. F |

最后,软件计算加权,积分平方误差:

F = W. T. E. T. 2 D. T.

笔记

重量W.T.默认情况下是1。您只能在命令行中指定不同的权重值。

当您的模型具有馈送要求的要求或向量信号时,跟踪目标等于每个信号的各个跟踪积分误差的总和:

F = σ. F 一世

梯度下降方法问题配方

梯度下降方法使用该功能粉刺优化模型参数以满足设计要求。

问题类型 问题制定
可行性问题

该软件制定了约束CX)如上所述可行性问题和约束制定

  • 如果选择最大可行的解决方案选项(即,在找到初始可行解决方案后,优化继续),则该软件使用以下问题制定:

    [ X γ. ] γ. S. T. C X ≤. γ. X ¯ ≤. X ≤. X ¯ γ. ≤. 0.

    γ是一个松弛变量,允许具有可行的解决方案CX)≤γ而不是CX)≤0.

  • 如果您不选择最大可行的解决方案选项(即,优化一旦找到可行的解决方案,则优化终止),该软件使用以下问题制定:

    X 0. S. T. C X ≤. 0. X ¯ ≤. X ≤. X ¯

跟踪问题

该软件制定了跟踪目标FX)如上所述跟踪问题并最大限度地减少跟踪目标:

X F X S. T. X ¯ ≤. X ≤. X ¯

混合可行性和跟踪问题

该软件最大限度地减少了以下问题制定:

X F X S. T. C X ≤. 0. X ¯ ≤. X ≤. X ¯

笔记

跟踪参考信号时,软件忽略了最大可行的解决方案选项。

单纯x搜索方法问题配方

Simplex搜索方法使用该功能fminsearch.FMINBND优化模型参数以满足设计要求。FMINBND如果正在优化一个标量参数,则使用fminsearch.用来。您不能使用参数界限 X ¯ ≤. X ≤. X ¯ fminsearch.

问题类型 问题制定
可行性问题

该软件制定了约束CX)如上所述可行性问题和约束制定然后最大限度地减少最大约束违规:

X 最大限度 C X

跟踪问题

该软件制定了跟踪目标FX)如上所述跟踪问题然后最大限度地减少跟踪目标:

X F X

混合可行性和跟踪问题

该软件分两步制定问题:

  1. 找到一个可行的解决方案。

    X 最大限度 C X

  2. 最小化跟踪目标。该软件使用步骤1的结果作为初始猜测,并通过在优化目标中引入不连续的屏障来保持可行性。

    X γ. X 在哪里 γ. X = { 如果 最大限度 C X > 0. F X 除此以外

模式搜索方法问题配方

模式搜索方法使用该功能Patternsearch.(全局优化工具箱)优化模型参数以满足设计要求。

问题类型 问题制定
可行性问题

该软件制定了约束CX)如上所述可行性问题和约束制定然后最大限度地减少最大约束违规:

X 最大限度 C X S. T. X ¯ ≤. X ≤. X ¯

跟踪问题

该软件制定了跟踪目标FX)如上所述跟踪问题然后最大限度地减少跟踪目标:

X F X S. T. X ¯ ≤. X ≤. X ¯

混合可行性和跟踪问题

该软件分两步制定问题:

  1. 找到一个可行的解决方案。

    X 最大限度 C X S. T. X ¯ ≤. X ≤. X ¯

  2. 最小化跟踪目标。该软件使用步骤1的结果作为初始猜测,并通过在优化目标中引入不连续的屏障来保持可行性。

    X γ. X S. T. X ¯ ≤. X ≤. X ¯ 在哪里 γ. X = { 如果 最大限度 C X > 0. F X 除此以外

梯度计算

为了梯度下降粉刺)优化求解器,使用数值扰动来计算梯度:

D. X = E. P. S. 3. × 最大限度 | X | 1 10. X T. y P. 一世 C 一种 L. D. L. = 最大限度 X - D. X X D. R. = X + D. X X 最大限度 F L. = O. P. T. _ F C N D. L. F R. = O. P. T. _ F C N D. R. D. F D. X = F L. - F R. D. L. - D. R.

  • X是标量设计变量。

  • X是下限X

  • X最大限度是上限X

  • X典型的是缩放值X

  • OPT_FCN.是目标函数。

DX.相对较大,以适应模拟求解器公差。

如果要以任何其他方式计算渐变,则可以在编写以编程方式执行设计优化的成本函数中执行此操作。看SDO.Optimize.Gradfcn.sdo.OptimizeOptions.想要查询更多的信息。