多目标优化@TOC
多目标优化概念
实际问题中大都具有多个目标且需要同时满足,即在同一问题模型中同时存在几个非线性目标,而这些目标函数同时需要进行优化处理,并且这些目标通常是互相冲突的,称此类问题为多目标优化问题。
这些相互冲突的子目标,一个子目标的改善有可能会引起另一个或者另几个子目标的性能降低 , 也就是要同时使多个子目标一起达到最优值是不可能的 , 而只能在它们中间进行协调和折中处理 , 使各个子目标都尽可能地达到最优化。
多目标优化与单目标优化问题的本质区别在于 ,它的解并非唯一 ,而是存在一组由众多 Pareto最优解组成的最优解集合 ,集合中的各个元素称为 Pareto最优解或非劣最优解。
数学描述
多目标优化问题的数学描述由决策变量、目标函数、约束条件组成。由于多目标优化问题的应用领域不同,其数学描述也不同,包括一般多目标优化、动态多目标优化、确定多目标优化和不确定多目标优化等几种。
一般多目标优化数学描述如下:
其中:x为D维决策变量,y为目标函数,N为优化目标总数;
f
n
(
x
)
f_{n}\left( x\right)
fn(x)为第n个子目标函数;
g
(
x
)
g\left( x\right)
g(x)为K项不等式约束条件,
h
(
x
)
h\left( x\right)
h(x)为M项等式约束条件,约束条件构成了可行域;
x
d
−
min
x_{d-\min }
xd−min和
x
d
−
max
x_{d-\max }
xd−max为向量搜索的上下限。以上方程表示的多目标最优化问题包括最小化问题(min)和最大化问题(max)以及确定多目标优化问题
动态多目标优化问题的数学描述在一般多目标优化问题的基础上增加了时间变量t。其方程表示如下:
不确定多目标优化问题的数学描述则在一般多目标优化问题的基础上增加了q维不确定量a。其方程表示如下:
其中:
a
I
a^{I}
aI表示的是不确定量a,
a
I
a^{I}
aI的区间为
a
L
a^{L}
aL到
a
R
a^{R}
aR ;
v
k
I
v^{I}_{k}
vkI表示的是不等式约束的允许区间;
b
m
I
b^{I}_{m}
bmI表示的是等式约束的允许区间。
重要概念
非劣解(Pareto解)
多目标优化问题并不存在一个最优解,所有可能的解都称为非劣解,也称为Pareto解。
Pareto支配(Pareto Dominance)
在最小化优化问题中,当且仅当
∀
i
∈
{
1
,
2
,
…
,
m
}
,
f
i
(
x
)
≤
f
i
(
y
)
\forall i\in \left\{ 1,2,\ldots ,m\right\},f_{i}\left( x\right) \leq f_{i}\left( y\right)
∀i∈{1,2,…,m},fi(x)≤fi(y), 且
∃
j
∈
{
1
,
2
,
…
,
m
}
,
f
j
(
x
)
≤
f
j
(
y
)
\exists j\in \left\{ 1,2,\ldots ,m\right\},f_{j}\left( x\right) \leq f_{j}\left( y\right)
∃j∈{1,2,…,m},fj(x)≤fj(y),我们称 x支配y (有些场合也称为 x占优于y ),记作 x≺y。
换句话说,在最小化优化问题中,x至少存在一个目标分量中小于y,并且其他目标分量也不会比y大,我们希望得到尽量小的解,那么越小就越优,越优的解所处的前沿面序号越小,所以使用‘x≺y ’表示x支配y。
Pareto最优解(Pareto Optimal Solution)
如果一个解
x
∗
x^{\ast }
x∗被称之为Pareto optimal solution, 当且仅当
x
∗
x^{\ast }
x∗不被其他的解支配。
通俗点说就是:无法在改进任何目标函数的同时不削弱至少一个其他目标函数。这种解称作非支配解或Pareto最优解。
Pareto 集(Pareto Set)
一个多目标优化问题(MOP),对于一组给定的最优解集,如果这个集合中的解是相互非支配的,也即两两不是支配关系,那么则称这个解集为Pareto Set 。
如上图所示,每个黑点都表示为Pareto optimal solution,而每个红点至少被一个黑点支配,黑色点组成的集合即为f1,f2这2个目标函数优化得到的的Pareto Set。
Pareto 前沿(Pareto Front)
Pareto Set 中每个解对应的目标值向量组成的集合称之为Pareto Front, 简称为PF。
求解多目标优化问题的过程就是寻找Pareto最优解的过程