前言
本篇博客出于学习交流目的,主要是用来记录自己学习多目标优化中遇到的问题和心路历程,方便之后回顾。过程中可能引用其他大牛的博客,文末会给出相应链接,侵删!
REMARK:本人纯小白一枚,0基础,如有理解错误还望大家能够指出,相互交流。也是第一次以博客的形式记录,文笔烂到自己都看不下去,哈哈哈
在本篇正文中主要推荐个人觉得有帮助的文章以及分析自己对Pareto的相关定义的理解,笔者在刚开始时候毫无头绪,希望下面的一些基础能对不幸看到这篇博客的你有一点点小帮助。
正文
在多目标优化问题中,有许多预备知识需要具备,许多繁琐的基础概念我就不赘述了(摊手)。可以参考多目标优化这篇文章,作者给出了比较综合的叙述。如果有需要了解粒子群算法,遗传算法,蚁群算法可以参考以下链接:
粒子群算法系列文章 作者比较系统的讲解了粒子群算法,包括其主要变种方向。
蚁群算法 作者给出了一个在线网页模型,有助于理解。
在多目标优化问题中有许多算法都是基于Pareto支配关系的,知乎上如何通俗的理解Pareto的生动例子有助于我等小白理解其现实意义。下面给出Pareto的数学形式和定义。
定义
Definition 1: 多目标优化问题(multi-objective optimization problem(MOP))
F
(
x
)
=
(
f
1
(
x
)
,
⋯
,
f
m
(
x
)
)
s
.
t
.
x
∈
Ω
F(x)=(f_1(x),\cdots,f_m(x))\\ s.t. \; x\in \Omega
F(x)=(f1(x),⋯,fm(x))s.t.x∈Ω
F
(
x
)
F(x)
F(x)为多目标优化结果,
f
1
(
x
)
,
⋯
,
f
m
(
x
)
f_1(x),\cdots,f_m(x)
f1(x),⋯,fm(x)为目标分量,m为目标数。
Definition 2: Pareto支配(Pareto Dominance)
在最小化优化问题中,当且仅当
∀
i
∈
{
1
,
2
,
.
.
.
,
m
}
\forall{i}\in\{1,2,...,m\}
∀i∈{1,2,...,m},
f
i
(
x
)
≤
f
i
(
y
)
f_i(x) \leq f_i(y)
fi(x)≤fi(y), 且 $\exists {j} \in {1,2,…,m} $ s.t.
f
j
(
x
)
<
f
j
(
y
)
\; f_j(x)<f_j(y)
fj(x)<fj(y),我们称
x
x
x支配
y
y
y (有些场合也称为
x
x
x占优于
y
y
y ),记作
x
≺
y
x \prec y
x≺y 。
换句话说,在最小化优化问题中,
x
x
x至少存在一个目标分量中小于
y
y
y,并且其他目标分量也不会比
y
y
y大,我们希望得到尽量小的解,那么越小就越优,开始的时候我纠结过为什么用 ‘
≺
\prec
≺ ’符号,
x
x
x 更优秀不是应该用‘
≻
\succ
≻’符号? 在阅读NSGA-II算法后,我理解的是,越优的解所处的前沿面序号越小,所以使用‘
x
≺
y
x\prec y
x≺y ’表示
x
x
x支配
y
y
y。
Definition 3: Pareto最优解(Pareto Optimal Solution)
如果一个解
x
∗
x^*
x∗被称之为Pareto optimal solution, 当且仅当
x
∗
x^*
x∗不被其他的解支配。
Definition 4: Pareto 集(Pareto Set)
一个多目标优化问题(MOP),对于一组给定的最优解集,如果这个集合中的解是相互非支配的,也即两两不是支配关系,那么则称这个解集为Pareto Set 。
如上图所示,每个黑点都表示为Pareto optimal solution,而每个红点至少被一个黑点支配,黑色点组成的集合即为
f
1
,
f
2
f_1,f_2
f1,f2 2目标优化中的Pareto Set。
Definition 5: Pareto 前沿(Pareto Front)
Pareto Set 中每个解对应的目标值向量组成的集合称之为Pareto Front, 简称为PF。
总结
本篇博客对刚涉足多目标优化的人可能会有所帮助。
参考链接:
多目标优化
粒子群算法系列文章
蚁群算法
如何通俗的理解Pareto
多目标进化算法(MOEA)概述
多目标优化系列(一)NSGA-Ⅱ
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)