多目标优化问题MOP

概念

多目标优化问题( multi-objective optimization problem,MOP)也称为向量优化问题或多准则优化问题。多目标优化问题可以描述为:在可行域中确定由决策变量组成的向量,它满足所有约束,并且使得由多个目标函数组成的向量最优化。

而这些组成向量的多个目标函数彼此之间通常都是互相矛盾的。

因此,这里的“优化”意味求一个或一组解向量使目标向量中的所有目标函数满足设计者的要求。

这些相互冲突的子目标,一个子目标的改善有可能会引起另一个或者另几个子目标的性能降低 , 也就是要同时使多个子目标一起达到最优值是不可能的 , 而只能在它们中间进行协调和折中处理 , 使各个子目标都尽可能地达到最优化。多目标优化与单目标优化问题的本质区别在于 ,它的解并非唯一 ,而是存在一组由众多 Pareto最优解组成的最优解集合 ,集合中的各个元素称为 Pareto最优解或非劣最优解。

数学描述

多目标优化问题的数学描述由决策变量、目标函数、约束条件组成。由于多目标优化问题的应用领域不同,其数学描述也不同,包括一般多目标优化、动态多目标优化、确定多目标优化和不确定多目标优化等几种。
一般多目标优化数学描述如下:
多目标优化问题MOP_第1张图片
其中:x为D维决策变量,y为目标函数,N为优化目标总数; f n (x)为第n个子目标函数; g(x)为K项不等式约束条件, h(x)为M项等式约束条件,约束条件构成了可行域; x d − min 和 x d − max为向量搜索的上下限。以上方程表示的多目标最优化问题包括最小化问题(min)和最大化问题(max)以及确定多目标优化问题。

Pareto解(非劣解)

多目标优化问题并不存在一个最优解,所有可能的解都称为非劣解,也称为Pareto解。

Pareto支配(Pareto Dominance)

在最小化优化问题中,当且仅当 ∀ i ∈ { 1 , 2 , … , m } , f i ( x ) ≤ f i ( y ), 且 ∃ j ∈ { 1 , 2 , … , m } , f j ( x ) ≤ f j ( y ) ,f j​ (x)≤f j (y),我们称 x支配y (有些场合也称为 x占优于y ),记作 x≺y。
换句话说,在最小化优化问题中,x至少存在一个目标分量中小于y,并且其他目标分量也不会比y大,我们希望得到尽量小的解,那么越小就越优,越优的解所处的前沿面序号越小,所以使用‘x≺y ’表示x支配y。

Pareto最优解(Pareto Optimal Solution)

如果一个解 x *被称之为Pareto optimal solution, 当且仅当 x *不被其他的解支配。又称为非劣解、非支配解。
上图中的解A、解D、解E都是非支配解。

通俗点说就是:无法在改进任何目标函数的同时不削弱至少一个其他目标函数。这种解称作非支配解或Pareto最优解。

无法进行简单相互比较的解,不存在比它更优越解的解,也就是说该解体现了若干 f i ( x ) 的最优(不是所有 f i ( x ) 的最优)。

在单目标优化问题中,通常最优解只有一个,而且能用比较简单和常用的数学方法求出其最优解。然而在多目标优化问题中,各个目标之间相互制约,可能使得一个目标性能的改善往往是以损失其它目标性能为代价,不可能存在一个使所有目标性能都达到最优的解。

Pareto 集(Pareto Set)

一个多目标优化问题(MOP),对于一组给定的最优解集,如果这个集合中的解是相互非支配的,也即两两不是支配关系,那么则称这个解集为Pareto Set 。

Pareto 前沿(Pareto Front)

Pareto Set 中每个解对应的目标值向量组成的集合称之为Pareto Front, 简称为PF。

求解多目标优化问题的过程就是寻找Pareto最优解的过程

求解思想

在存在多个Pareto最优解的情况下,如果没有关于问题的更多的信息,那么很难选择哪个解更可取,因此所有的Pareto最优解都可以被认为是同等重要的。由此可知,对于多目标优化问题,最重要的任务是找到尽可能多的关于该优化问题的Pareto最优解。因而,在多目标优化中主要完成以下两个任务:

1.找到一组尽可能接近Pareto最优域的解。
2.找到一组尽可能不同的解。

第一个要求算法要保证可靠的收敛性,第二个要求算法保证充足的分布性(包括多样性和均匀性)。即要求求得尽可能均匀分布的pareto最优解集,然后根据不同的设计要求和意愿,从中选择最满意的设计结果。多目标优化问题最终获得的解实际是所有有效解中的一个解或确定全部非支配解。

你可能感兴趣的:(python,调度算法)