原文地址

对于大多数多目标优化问题,其各个目标往往是相互冲突的,因此不可能使得所有的目标同时达到最优,而是一组各个目标值所折衷的解集,称之为Pareto最优集。以下为一些基本定义(以最小化优化问题为例):

Definition 1: 多目标优化问题(multi-objective optimization problem(MOP)) 
F(x)=(f1(x),…,fm(x))s.t.x∈Ω

Definition 2: Pareto支配(Pareto Dominance) 
x支配y,记为 x ≺ y ,当且仅当∀i∈{1,2,...,m},fi(x)≤fi(y), 且∃j∈{1,2,...,m}, s.t. fj(x)<fj(y)。

Definition 3: Pareto最优解(Pareto Optimal Solution) 
如果一个解x∗ 被称之为Pareto optimal solution, 当且仅当 x∗ 不被其他的解支配。

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

Definition 5: Pareto 前沿(Pareto Front) 
Pareto Set 中每个解对应的目标值向量组成的集合称之为Pareto Front, 简称为PF

Definition 6:近似集(Approximation Set) 
一般来说,准确的Pareto Set是很难得到的,其近似集相比来说容易得到,因此一般我们只需用一定数量的Approximation Set 来表示PS 。

Definition 7: 近似前沿(Approximation Front) 
Approximation Set 中每个解对应的目标值向量组成的集合称之为Approximation Front 。

目前来说,由于多目标问题的复杂性,传统的数学方法不能取得较为理想的结果,而进化算法在多目标优化问题上得到了很广泛的应用,通过种群的不断进化迭代,进化算法能得到一个Approximation Set,那么我们如何来评价得到的Approximation Set的优劣呢,以下为两方面的评价标准。 
Definition 7:收敛性(Convergence) 
Approximation Front 与 PF 的贴近程度。

Definition 8: 分布性(Diversity) 
描述Approximation Front 在PF 的分布情况,包括分布范围和均匀性。

具体来说,常用的两个指标分别是IGD(Inverted Generational Distance) 和 HV(Hypervolume)。其中,IGD需要知道PF数据,且其具体计算为每个PF中的点到其最近的Approximation Front中的点的距离之和的均值。同时,需注意,这两种方法都能同时度量解的分布性和收敛性。

现在来讲讲主流的多目标进化算法。 
从进化算法的角度来讲,目前已有遗传算法(GA),粒子群算法(PSO),蚁群算法(ACO)等一系列算法用来解决多目标优化问题,但用的比较多的还是遗传算法,粒子群算法也有。 
从多目标问题本身来说,主要分类如下: 
- 基于Pareto支配关系 
- 基于分解的方法 
- 基于Indicator方法

先来介绍下基于遗传算法的多目标优化算法的一些基本参数: 
种群大小:每次迭代都需保证种群大小是一致的,且其大小应由初始化设定。 
交叉概率:用于衡量两个个体交叉的概率。 
突变率:交叉产生的解发生突变的概率。 
标准的遗传算法每次迭代都会将上一代的个体丢弃,虽然这符合自然规律,但对于遗传算法来说,这样效果不是特别好,因此,精英保留策略将上一代个体和当前个体混合竞争产生下一代,这种机制能较好的保留精英个体。 
基于Pareto支配关系 
最经典的方法是NSGA-II,该方法由Kalyanmoy Deb等人于2002年提出(A Fast and Elitist Multiobjective Genetic Algorithm: 
NSGA-II),该方法主要包括快速非支配排序,将每次交叉突变产生的解和前一代的解合并,然后利用非支配排序分层,其伪代码如下: 
 
再就是把每层相加直到超过种群个体,再在最后一层基于拥挤距离来选择解,拥挤距离伪代码如下: 
 
具体来说,NSGA-II使用快速非支配排序来保证收敛性,并且利用拥挤距离来保证分布性。特别说下,在迭代后期,大多数解都是非支配的,也即大多数解都在第一层。 
当然,随着NSGA-II的提出,很多基于此的算法如雨后春笋般大量涌现,特别是在处理高维多目标优化问题时这种想法得到很多的应用,如VaEA,RVEA,NSGA-III等。 
同时,SPEA2也是基于Pareto支配关系的一种较为流行的算法(SPEA2: Improving the Strength Pareto Evolutionary Algorithm),该算法使用一个外部保存集来保存较为优秀的解,同时,对每一个解,利用其支配的解的数量和基于KNN的邻近解的距离来给每一个解打分,得分越小的解更优。

基于分解的方法 
该方法第一次系统地被提出是在2007年由Qingfu Zhang等人提出(MOEA/D: A Multiobjective Evolutionary Algorithm Based on Decomposition),该方法将MOP分解为多个子问题,这样就可以优化每个子问题来求解一个MOP。一般而言,基于分解的方法首先需要得到一组均匀分布的参照向量来指导选择操作。在此,有必要说说产生参照向量的方法。目前对于低维多目标优化问题,常用方法为Das and Dennis于1998年提出的systematic approach(Normal-boundary intersection: A new method for generating the pareto surface in nonlinear multicriteria optimization problems). 
对于每个参照向量,其指导选择的过程需要比较解的优劣,这就需要用到一些标量函数来定量衡量一个解对于这个参照向量的适应度值。常用的标量函数包括: 
- Weighted Sum Approach 
- Tchebycheff Approach 
- penalty-based boundary intersection (PBI) approach

Weighted Sum Approach 
mingws(x|λ)=∑mi=1λifi(x) 
其中λ是参照向量,其运行机理如下图: 
 
这里需要注意,标准的Weighted Sum Approach不能处理非凸问题,因为由上图可知,对于非凸问题,每个参照向量的垂线与其前沿不可能相切。对于这个问题,Rui Wang等人与2016年提出相对应的改进(Localized weighted sum method for many-objective optimization),主要是约束替换范围。

Tchebycheff Approach 
mingte(x|λ,z∗)=max{λi(fi(x)−z∗i)} 
其中λ是参照向量,其运行机理如下图: 
 
标准的Tchebycheff Approach得到的解不均匀,为此Yutao Qi等人于2014年提出一种解决方法(MOEA/D with Adaptive Weight Adjustment),λ∗=(1λ1∑mi=11λi,....,1λm∑mi=11λi),通过这个参照向量的转换即可得到分布均匀的解。

penalty-based boundary intersection (PBI) approach 
mingpbi(x|λ,z∗)=d1+θd2 
 
其中d1,d2如上图所示。一般来说,θ=5是比较常用的,Yuan Yuan等人提出的θ−DEA算法对θ的取值有较为详细的讨论(A New Dominance Relation-Based Evolutionary Algorithm for Many-Objective Optimization)。 
基于分解的进化方法框架如下: 

基于Indicator方法 
相比于IGD指标,Hypervolume更容易用来作为一个测度在种群进化过程中用来选择个体,因为IGD需要知道真实的Pareto Front数据,而这对于一个未知多目标优化问题是相当困难的。

至于具体的多目标进化算法后续将会详细介绍。

参考文献 
[1] K. Deb, A. Pratap, S. Agarwal, and T. Meyarivan, “A fast and elitist multiobjective genetic algorithm: NSGA-II,” IEEE Trans. Evol. Comput., vol. 6, no. 2, pp. 182–197, Apr. 2002 
[2] E. Zitzler, M. Laumanns, and L. Thiele, “SPEA2: Improving the strength Pareto evolutionary algorithm,” in Proc. Evol. Methods Design Optim. Control Appl. Ind. Prob., Athens, Greece, 2002, pp. 95–100. 
[3] Qingfu Zhang and Hui Li. Moea/d: A multiobjective evolutionary algorithm based on decomposition. IEEE Transactions on evolutionary computation, 11(6):712–731, 2007. 
[4] Yutao Qi, Xiaoliang Ma, Fang Liu, Licheng Jiao, Jianyong Sun, and Jianshe Wu. MOEA/D with adaptive weight adjustment. Evolutionary computation, 22(2):231–264, 2014. 
[5] Kalyanmoy Deb and Himanshu Jain. An evolutionary many objective optimization algorithm using reference- point-based nondominated sorting approach, part i: Solving problems with box constraints. IEEE Trans. Evolutionary Computation, 18(4):577–601, 2014. 
[6] Yuan Yuan, Hua Xu, Bo Wang, and Xin Yao. A new dominance relation-based evolutionary algorithm for many-objective optimization. IEEE Transactions on Evolutionary Computation, 20(1):16–37, 2016. 
[7] Indraneel Das and John E Dennis. Normal-boundary intersection: A new method for generating the pareto surface in nonlinear multicriteria optimization problems. SIAM Journal on Optimization, 8(3):631–657, 1998 
[8] 张作峰. 基于分解的多目标进化算法研究[D]. 湘潭大学, 2013.

多目标进化算法(MOEAs)概述相关推荐

  1. 多目标进化算法-约束问题的处理方法

    多目标进化算法系列 多目标进化算法(MOEA)概述 多目标优化-测试问题及其Pareto前沿 多目标进化算法详述-MOEA/D与NSGA2优劣比较 多目标进化算法-约束问题的处理方法 基于C#的多目标 ...

  2. 动态多目标优化--基于决策变量分类的动态多目标进化算法 笔记

    阅读论文:A Dynamic Multiobjective Evolutionary Algorithm Based on Decision Variable Classification (Zhen ...

  3. 学习笔记--一个自管理(组织)的多目标进化算法(SMEA)

    学习笔记–一个自管理(组织)的多目标进化算法(SMEA) 摘要:在温和条件下,一个连续m维目标的优化问题的帕累托前沿(解集)可以形成一个(m-1)维的分段连续流形.基于这个性质,这篇文章提出了一个自管 ...

  4. MaOEA-IBP:带有边界保护的基于指标的多目标进化算法

    MaOEA-IBP:带有边界保护的基于指标的多目标进化算法 参考文献 <An Indicator-Based Many-Objective Evolutionary Algorithm With ...

  5. 基于指标的约束多目标进化算法

    基于指标的约束多目标进化算法 [注:个人博客地址转移至:点此跳转] [注:个人博客地址转移至:点此跳转] [注:个人博客地址转移至:点此跳转] 参考文献 <Zhi-Zhong Liu , Yon ...

  6. 计算机工程与应用 效率,多目标进化算法搜索鲁棒最优解效率研究-计算机工程与应用.PDF...

    多目标进化算法搜索鲁棒最优解效率研究-计算机工程与应用 Computer Engineering and Applications 计算机工程与应用 2011 ,47 (23 ) 29 ⦾研究.探讨⦾ ...

  7. 论文研读-基于决策变量分析的大规模多目标进化算法

    论文研读-基于决策变量分析的大规模多目标进化算法 Multiobjective Evolutionary Algorithm Based on Decision Variable Analyses f ...

  8. platEMO里多目标进化算法对应的参考文献

    1.AGE-II M. Wagner and F. Neumann, A fast approximation-guided evolutionary multi-objective algorith ...

  9. 多目标进化算法基础知识整理

    前言 特意整理一些多目标进化算法的基础知识点,尽量用通俗易懂的语言进行描述,希望对入门多目标算法的同学和对优化算法有兴趣的朋友有所帮助. 1.多目标优化细讲 使多个目标在给定区域同时尽可能最佳,多目标 ...

最新文章

  1. jenkins搭建流程
  2. window .bat
  3. ghost后自动修改IP和计算机名的VBS脚本
  4. linux恢复桌面,ubuntu恢复unity桌面
  5. Tomcat学习总结(14)—— Tomcat常见面试题
  6. [置顶]       Jquery实现网页marquee效果
  7. hibernate关联映射
  8. 制作网页中弹出对话框的制作
  9. 清华大学出来的工资有多高?
  10. 利用网络Socket和多线程实现一个双向聊天
  11. CUDA kernel errors might be asynchronously reported at some other API call,so the stacktrace below m
  12. android开发底部虚拟键,android手机底部的虚拟按键怎么弄,像android平板那样。
  13. java关注列表_如何从一个Instagram帐户中获取关注者列表?
  14. 【PostgreSQL】客户端请求处理 PostgresMain()
  15. Jfrog Artifactory安装及备份恢复搭建
  16. EXCEL如何批量更改MAC地址格式?
  17. Mysql 面试实战系列(四)——快马扬鞭
  18. Django 快速入门课程「搭建个人博客」
  19. 输入一个url到浏览器页面展示都经历了哪些过程
  20. 2023 TIOBE 2月编程语言榜:年度语言是TA!

热门文章

  1. 关键信息基础设施确定指南_干货分享 | 关键信息基础设施运营单位如何做好业务安全测试...
  2. 华为ensp基础实验(一)
  3. 使用threejs 实现3D物体展示,平移实现类似百度地图功能
  4. php mysql 单引号_插入MySQL时转义PHP中的单引号
  5. 记录mumu模拟器AMD SVM(VT)开启失败的问题
  6. STM32之音乐播放器
  7. Android Studio NDK环境配置及JNI使用方法
  8. 使用阿里云服务器搭建代理服务器
  9. 程序员撩妹专用~~~好看的H5立方体创意相册,资源免费!!!程序员送给女孩子的礼物,非常适合送给小姐姐!
  10. python画图修改背景颜色_如何在 Matplotlib 中更改绘图背景的实现