主要内容GydF4y2Ba

多目标优化算法GydF4y2Ba

多目标优化的定义GydF4y2Ba

有两个优化工具箱™多目标求解器:GydF4y2BafgoalattainGydF4y2Ba和GydF4y2BafminimaxGydF4y2Ba.GydF4y2Ba

  • fgoalattainGydF4y2Ba处理非线性函数集的约简问题GydF4y2BaFGydF4y2Ba一世GydF4y2Ba(GydF4y2BaXGydF4y2Ba)下面的一套目标GydF4y2BaF*GydF4y2Ba一世GydF4y2Ba.由于有几个功能GydF4y2BaFGydF4y2Ba一世GydF4y2Ba(GydF4y2BaXGydF4y2Ba),解决这个问题意味着什么总是不清楚的,特别是当你不能同时实现所有目标的时候。因此,问题被重新表述成总是定义良好的问题。GydF4y2Ba

    这GydF4y2Ba未扫描的目标达到问题GydF4y2Ba是最大限度地减少最大值GydF4y2BaFGydF4y2Ba一世GydF4y2Ba(GydF4y2BaXGydF4y2Ba) -GydF4y2BaF*GydF4y2Ba一世GydF4y2Ba.GydF4y2Ba

    对未标度问题有一个有用的推广。给定一组正权值GydF4y2BaW.GydF4y2Ba一世GydF4y2Ba, 这GydF4y2Ba目标达到情况问题GydF4y2Ba试图找到GydF4y2BaXGydF4y2Ba最大限度地减少最大值GydF4y2Ba

    FGydF4y2Ba 一世GydF4y2Ba (GydF4y2Ba XGydF4y2Ba )GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 一世GydF4y2Ba *GydF4y2Ba W.GydF4y2Ba 一世GydF4y2Ba .GydF4y2Ba (1)GydF4y2Ba

    这种最小化应该是在满足所有类型的约束条件的情况下完成的:GydF4y2BaCGydF4y2Ba(GydF4y2BaXGydF4y2Ba)≤0,GydF4y2BaCEQ.GydF4y2Ba(GydF4y2BaXGydF4y2Ba) = 0,GydF4y2Ba斧头GydF4y2Ba≤.GydF4y2BaB.GydF4y2Ba那GydF4y2BaAEQ·X.GydF4y2Ba=GydF4y2Ba贝卡GydF4y2Ba,GydF4y2BaL.GydF4y2Ba≤.GydF4y2BaXGydF4y2Ba≤.GydF4y2Ba你GydF4y2Ba.GydF4y2Ba

    如果将所有重量设置为1(或任何其他正常常数),则目标达到问题与未扫描的目标达到问题相同。如果是GydF4y2BaF*GydF4y2Ba一世GydF4y2Ba都是正的,所有权重都是GydF4y2BaW.GydF4y2Ba一世GydF4y2Ba=GydF4y2BaF*GydF4y2Ba一世GydF4y2Ba时,目标实现问题变成最小化功能之间的相对差异GydF4y2BaFGydF4y2Ba一世GydF4y2Ba(GydF4y2BaXGydF4y2Ba)和目标GydF4y2BaF*GydF4y2Ba一世GydF4y2Ba.GydF4y2Ba

    换句话说,目标达到问题是最小化Slack变量GydF4y2BaγGydF4y2Ba,定义为上的最大值GydF4y2Ba一世GydF4y2Ba的表达式GydF4y2Ba方程1GydF4y2Ba.这暗示了目标实现问题的正式表述:GydF4y2Ba

    闵GydF4y2Ba XGydF4y2Ba 那GydF4y2Ba γGydF4y2Ba γGydF4y2Ba

    这样GydF4y2BaFGydF4y2Ba(GydF4y2BaXGydF4y2Ba) -GydF4y2BaW.GydF4y2Ba·GydF4y2BaγGydF4y2Ba≤.GydF4y2BaF*GydF4y2Ba那GydF4y2BaCGydF4y2Ba(GydF4y2BaXGydF4y2Ba)≤0,GydF4y2BaCEQ.GydF4y2Ba(GydF4y2BaXGydF4y2Ba) = 0,GydF4y2Ba斧头GydF4y2Ba≤.GydF4y2BaB.GydF4y2Ba那GydF4y2BaAEQ·X.GydF4y2Ba=GydF4y2Ba贝卡GydF4y2Ba,GydF4y2BaL.GydF4y2Ba≤.GydF4y2BaXGydF4y2Ba≤.GydF4y2Ba你GydF4y2Ba.GydF4y2Ba

  • fminimaxGydF4y2Ba解决受所有类型约束的非线性函数集的最大极小化问题:GydF4y2Ba

    闵GydF4y2Ba XGydF4y2Ba 马克斯GydF4y2Ba 一世GydF4y2Ba FGydF4y2Ba 一世GydF4y2Ba (GydF4y2Ba XGydF4y2Ba )GydF4y2Ba

    这样GydF4y2BaCGydF4y2Ba(GydF4y2BaXGydF4y2Ba)≤0,GydF4y2BaCEQ.GydF4y2Ba(GydF4y2BaXGydF4y2Ba) = 0,GydF4y2Ba斧头GydF4y2Ba≤.GydF4y2BaB.GydF4y2Ba那GydF4y2BaAEQ·X.GydF4y2Ba=GydF4y2Ba贝卡GydF4y2Ba,GydF4y2BaL.GydF4y2Ba≤.GydF4y2BaXGydF4y2Ba≤.GydF4y2Ba你GydF4y2Ba.GydF4y2Ba

    显然,这个问题是无规模目标实现问题的一个特殊情况GydF4y2BaF*GydF4y2Ba一世GydF4y2Ba= 0GydF4y2Ba和GydF4y2BaW.GydF4y2Ba一世GydF4y2Ba= 1GydF4y2Ba.GydF4y2Ba

算法GydF4y2Ba

目标实现方法GydF4y2Ba

本节介绍GydF4y2BaGembicki目标实现方法GydF4y2Ba[3]GydF4y2Ba.此方法使用一组设计目标,GydF4y2Ba FGydF4y2Ba *GydF4y2Ba =GydF4y2Ba {GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba *GydF4y2Ba 那GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba *GydF4y2Ba 那GydF4y2Ba ......GydF4y2Ba 那GydF4y2Ba FGydF4y2Ba mGydF4y2Ba *GydF4y2Ba }GydF4y2Ba ,与一组目标相关联,GydF4y2BaFGydF4y2Ba(GydF4y2BaXGydF4y2Ba)= {GydF4y2BaFGydF4y2Ba1GydF4y2Ba(GydF4y2BaXGydF4y2Ba),GydF4y2BaFGydF4y2Ba2GydF4y2Ba(GydF4y2BaXGydF4y2Ba),…GydF4y2BaFGydF4y2BamGydF4y2Ba(GydF4y2BaXGydF4y2Ba)}GydF4y2Ba.问题制定允许设计的目标,使设计人员能够对初始设计目标进行相对不精确的。目标的相对程度或目标超重的程度由加权系数的载体控制,GydF4y2BaW.GydF4y2Ba= {GydF4y2BaW.GydF4y2Ba1GydF4y2Ba那GydF4y2BaW.GydF4y2Ba2GydF4y2Ba、……GydF4y2BaW.GydF4y2BamGydF4y2Ba}GydF4y2Ba,并使用配方表示为标准优化问题GydF4y2Ba

最小化GydF4y2Ba γGydF4y2Ba ∈GydF4y2Ba ℜGydF4y2Ba 那GydF4y2Ba XGydF4y2Ba ∈GydF4y2Ba ΩGydF4y2Ba γGydF4y2Ba (2)GydF4y2Ba

这样GydF4y2Ba FGydF4y2Ba 一世GydF4y2Ba (GydF4y2Ba XGydF4y2Ba )GydF4y2Ba -GydF4y2Ba W.GydF4y2Ba 一世GydF4y2Ba γGydF4y2Ba ≤.GydF4y2Ba FGydF4y2Ba 一世GydF4y2Ba *GydF4y2Ba 那GydF4y2Ba 一世GydF4y2Ba =GydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba ......GydF4y2Ba 那GydF4y2Ba mGydF4y2Ba .GydF4y2Ba

这个词GydF4y2BaW.GydF4y2Ba一世GydF4y2BaγGydF4y2Ba介绍一个元素GydF4y2Ba松懈GydF4y2Ba进入问题,否则这一目标牢固地遇到了目标。加权矢量,GydF4y2BaW.GydF4y2Ba,使设计人员能够表达目标之间的相对权衡的衡量标准。例如,设置加权矢量GydF4y2BaW.GydF4y2Ba等于最初的目标表明目标的百分比或超重率,GydF4y2BaF*GydF4y2Ba, 已完成。您可以通过将特定的加权因子设置为零(即,GydF4y2BaW.GydF4y2Ba一世GydF4y2Ba= 0GydF4y2Ba).目标验证方法提供了对设计问题的方便直观的解释,这是使用标准优化程序可解决的。使用控制系统设计中的目标验收方法的说明示例可以在弗莱明中找到(GydF4y2Ba[10]GydF4y2Ba和GydF4y2Ba[11]GydF4y2Ba).GydF4y2Ba

目标实现方法用几何形式表示在下面的二维图中。GydF4y2Ba

图7-1目标实现方法的几何表示GydF4y2Ba

明确目标,GydF4y2Ba {GydF4y2Ba FGydF4y2Ba 1GydF4y2Ba *GydF4y2Ba 那GydF4y2Ba FGydF4y2Ba 2GydF4y2Ba *GydF4y2Ba }GydF4y2Ba ,定义目标点,GydF4y2BaP.GydF4y2Ba.加权矢量定义了搜索方向GydF4y2BaP.GydF4y2Ba对于可行函数空间,GydF4y2Baλ(GydF4y2BaγGydF4y2Ba)GydF4y2Ba.在优化GydF4y2BaγGydF4y2Ba是可变的,这改变了可行域的大小。约束边界收敛于唯一解点GydF4y2BaFGydF4y2Ba1GydF4y2BaS.GydF4y2Ba那GydF4y2BaFGydF4y2Ba2GydF4y2BaS.GydF4y2Ba.GydF4y2Ba

算法改进目标达到方法GydF4y2Ba

目标获得方法具有以下优点,即它可以作为非线性编程问题构成。问题的特征也可以在非线性编程算法中利用。在顺序二次编程(SQP)中,线路搜索的优异功能的选择并不容易,因为在许多情况下,很难“定义”改善目标函数和减少约束违规之间的相对重要性。这导致了许多用于构建优点函数的不同方案(例如,SchittkowskiGydF4y2Ba[36]GydF4y2Ba).在目标实现规划中,可能有一个更合适的价值函数,你可以通过摆姿势来实现GydF4y2Ba方程2GydF4y2Ba作为最小问题GydF4y2Ba

最小化GydF4y2Ba XGydF4y2Ba ∈GydF4y2Ba ℜGydF4y2Ba NGydF4y2Ba 马克斯GydF4y2Ba 一世GydF4y2Ba {GydF4y2Ba ΛGydF4y2Ba 一世GydF4y2Ba }GydF4y2Ba 那GydF4y2Ba (3)GydF4y2Ba

在哪里GydF4y2Ba

ΛGydF4y2Ba 一世GydF4y2Ba =GydF4y2Ba FGydF4y2Ba 一世GydF4y2Ba (GydF4y2Ba XGydF4y2Ba )GydF4y2Ba -GydF4y2Ba FGydF4y2Ba 一世GydF4y2Ba *GydF4y2Ba W.GydF4y2Ba 一世GydF4y2Ba 那GydF4y2Ba 一世GydF4y2Ba =GydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba ......GydF4y2Ba 那GydF4y2Ba mGydF4y2Ba .GydF4y2Ba

根据Brayton等人的论点。GydF4y2Ba[1]GydF4y2Ba使用SQP使用SQP的Minimax优化,使用METIT功能GydF4y2Ba方程30GydF4y2Ba为目标达到问题GydF4y2Ba方程3GydF4y2Ba给GydF4y2Ba

ψGydF4y2Ba (GydF4y2Ba XGydF4y2Ba 那GydF4y2Ba γGydF4y2Ba )GydF4y2Ba =GydF4y2Ba γGydF4y2Ba +GydF4y2Ba σ.GydF4y2Ba 一世GydF4y2Ba =GydF4y2Ba 1GydF4y2Ba mGydF4y2Ba R.GydF4y2Ba 一世GydF4y2Ba ⋅GydF4y2Ba 马克斯GydF4y2Ba {GydF4y2Ba 0.GydF4y2Ba 那GydF4y2Ba FGydF4y2Ba 一世GydF4y2Ba (GydF4y2Ba XGydF4y2Ba )GydF4y2Ba -GydF4y2Ba W.GydF4y2Ba 一世GydF4y2Ba γGydF4y2Ba -GydF4y2Ba FGydF4y2Ba 一世GydF4y2Ba *GydF4y2Ba }GydF4y2Ba .GydF4y2Ba (4)GydF4y2Ba

当的价值函数GydF4y2Ba方程4GydF4y2Ba是用作线搜索程序的基础,那么,尽管GydF4y2BaψGydF4y2Ba(GydF4y2BaXGydF4y2Ba那GydF4y2BaγGydF4y2Ba)GydF4y2Ba可能会在给定的搜索方向上的步骤,该功能减少GydF4y2Ba马克斯GydF4y2BaΛGydF4y2Ba一世GydF4y2Ba可能矛盾地增加。这是在最坏情况目标中接受退化。由于最坏的情况目标是负责目标函数的价值GydF4y2BaγGydF4y2Ba,这是接受最终增加要最小化的目标函数的步骤。反过来,GydF4y2BaψGydF4y2Ba(GydF4y2BaXGydF4y2Ba那GydF4y2BaγGydF4y2Ba)GydF4y2Ba可能增加时GydF4y2Ba马克斯GydF4y2BaΛGydF4y2Ba一世GydF4y2Ba减少,意味着拒绝了改进最坏情况目标的步骤。GydF4y2Ba

跟随布雷顿等人的行。GydF4y2Ba[1]GydF4y2Ba,一个解决办法就是定GydF4y2BaψGydF4y2Ba(GydF4y2BaXGydF4y2Ba)GydF4y2Ba等于最坏的情况,即,GydF4y2Ba

ψGydF4y2Ba (GydF4y2Ba XGydF4y2Ba )GydF4y2Ba =GydF4y2Ba 马克斯GydF4y2Ba 一世GydF4y2Ba ΛGydF4y2Ba 一世GydF4y2Ba .GydF4y2Ba (5)GydF4y2Ba

目标验证方法中的一个问题是,通常使用加权系数等于0来结合硬约束。优势函数GydF4y2Ba方程5GydF4y2Ba然后成为任意违反约束的无限。GydF4y2Ba

克服这个问题的同时,仍然保留的特点GydF4y2Ba方程5GydF4y2Ba的价值函数与的价值函数相结合GydF4y2Ba方程31GydF4y2Ba,给出以下内容:GydF4y2Ba

ψGydF4y2Ba (GydF4y2Ba XGydF4y2Ba )GydF4y2Ba =GydF4y2Ba σ.GydF4y2Ba 一世GydF4y2Ba =GydF4y2Ba 1GydF4y2Ba mGydF4y2Ba {GydF4y2Ba R.GydF4y2Ba 一世GydF4y2Ba ⋅GydF4y2Ba 马克斯GydF4y2Ba {GydF4y2Ba 0.GydF4y2Ba 那GydF4y2Ba FGydF4y2Ba 一世GydF4y2Ba (GydF4y2Ba XGydF4y2Ba )GydF4y2Ba -GydF4y2Ba W.GydF4y2Ba 一世GydF4y2Ba γGydF4y2Ba -GydF4y2Ba FGydF4y2Ba 一世GydF4y2Ba *GydF4y2Ba }GydF4y2Ba 如果GydF4y2Ba W.GydF4y2Ba 一世GydF4y2Ba =GydF4y2Ba 0.GydF4y2Ba 马克斯GydF4y2Ba 一世GydF4y2Ba ΛGydF4y2Ba 一世GydF4y2Ba 那GydF4y2Ba 一世GydF4y2Ba =GydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba ......GydF4y2Ba 那GydF4y2Ba mGydF4y2Ba 否则GydF4y2Ba .GydF4y2Ba (6)GydF4y2Ba

SQP中可以利用的另一个特性是目标函数GydF4y2BaγGydF4y2Ba.从KKT方程可以看出,拉格朗日的Hessian近似,GydF4y2BaHGydF4y2Ba,应在与变量关联的行和列中具有zerosGydF4y2BaγGydF4y2Ba.但是,如果GydF4y2BaHGydF4y2Ba被初始化为身份矩阵。GydF4y2BaHGydF4y2Ba因此初始化和维护在与相关联的行和列中具有零GydF4y2BaγGydF4y2Ba.GydF4y2Ba

这些变化使粗麻布,GydF4y2BaHGydF4y2Ba,不确定。因此GydF4y2BaHGydF4y2Ba设置为在与相关联的行和列中具有零GydF4y2BaγGydF4y2Ba,除了对角线元件,其被设置为小正数(例如,GydF4y2Ba1EGydF4y2Ba-10)。这允许使用快速收敛的正定QP方法GydF4y2Ba二次编程解决方案GydF4y2Ba.GydF4y2Ba

之前的修改已实施GydF4y2BafgoalattainGydF4y2Ba并被发现使该方法更加稳健。然而,由于SQP方法的快速收敛,要求价值函数严格减小有时需要更多的函数评估,而不是使用的价值函数实现SQPGydF4y2Ba方程30GydF4y2Ba.GydF4y2Ba

最小化最大目标GydF4y2Ba

fminimaxGydF4y2Ba使用目标达到方法。它需要0的目标,而且1.通过这种制定,目标达到问题成为GydF4y2Ba

闵GydF4y2Ba 一世GydF4y2Ba 马克斯GydF4y2Ba XGydF4y2Ba (GydF4y2Ba FGydF4y2Ba 一世GydF4y2Ba (GydF4y2Ba XGydF4y2Ba )GydF4y2Ba -GydF4y2Ba GGydF4y2Ba O.GydF4y2Ba 一种GydF4y2Ba L.GydF4y2Ba 一世GydF4y2Ba W.GydF4y2Ba E.GydF4y2Ba 一世GydF4y2Ba GGydF4y2Ba HGydF4y2Ba T.GydF4y2Ba 一世GydF4y2Ba )GydF4y2Ba =GydF4y2Ba 闵GydF4y2Ba 一世GydF4y2Ba 马克斯GydF4y2Ba XGydF4y2Ba FGydF4y2Ba 一世GydF4y2Ba (GydF4y2Ba XGydF4y2Ba )GydF4y2Ba 那GydF4y2Ba

这是最小的问题。GydF4y2Ba

括号上,你可能期望GydF4y2BafminimaxGydF4y2Ba将多目标函数转化为单一目标。这个函数GydF4y2Ba

FGydF4y2Ba(GydF4y2BaXGydF4y2Ba) = max (GydF4y2BaFGydF4y2Ba1GydF4y2Ba(GydF4y2BaXGydF4y2Ba),......GydF4y2BaFGydF4y2BajGydF4y2Ba(GydF4y2BaXGydF4y2Ba))GydF4y2Ba

是最小化的单个目标函数。但是,它不可分辨,并且优化工具箱目标是平滑的。因此,最低限度问题被制定为平滑的目标达到问题。GydF4y2Ba

参考GydF4y2Ba

[1] Brayton,R.K.,S. W. W.主任G. D.Hachtel和L.Vidigal,“基于准牛顿方法和功能分裂的统计电路设计的新算法”GydF4y2Ba《IEEE电路与系统汇刊》GydF4y2Ba, CAS-26卷,784-794页,1979年9月。GydF4y2Ba

弗莱明,P.J.和A.P.帕什科维奇,GydF4y2Ba计算机辅助控制系统设计使用多目标优化方法GydF4y2Ba, Control 1985 Conference, Cambridge, UK, pp. 174-179。GydF4y2Ba

[3] Gembicki,F.w.,“viewse优化,具有性能和参数灵敏度指数”,ph.D.论文,案例西方储备大学,克利夫兰,哦,1974年。GydF4y2Ba

[4] Grace,A.C.W.,“计算机辅助控制系统设计使用优化技术”Ph.D.论文,威尔士大学,英国Gwynedd,1989年。GydF4y2Ba

[5] Han, S.P.,“非线性规划的全局收敛方法”,GydF4y2Ba优化理论与应用学报GydF4y2Ba,第22卷,第297页,1977年。GydF4y2Ba

[6] Madsen,K。和H.Schjaer-Jacobsen,“最坏情况公差优化的算法”,GydF4y2BaIEEE Trans。电路和系统GydF4y2Ba, CAS-26卷,1979年9月。GydF4y2Ba

[7] Powell, M.J.D,“非线性约束优化计算的快速算法”,GydF4y2Ba数值分析GydF4y2Ba, ed G.A. Watson,GydF4y2Ba数学讲义GydF4y2Ba,卷。630,Springer Verlag,1978年。GydF4y2Ba