多目标优化中常用的进化算法介绍及原论文(最全概括)
1.NSGA-II: Non-dominated Sorting Genetic Algorithm
原文:A fast and elitist multiobjective genetic algorithm: nsga-II,2002
该算法引入快速非支配排序以及拥挤距离,以及使用到了二进制竞标赛选择,至今也是一个非常好用且常用的MOEA算法。
迭代示意图
拥挤度示意图
2.DE(Differential Evolution)
原文:Differential Evolution: A Practical Approach to Global Optimization,2005
上面原文是经典的单目标差分进化算法,其中可以定义不同的交叉变化和方法。它以其良好的全局优化效果而闻名。
差分进化交叉的简单定义是:
其中π是一个具有三元组的随机排列。第二和第三个体之间的区别被加到第一个。情况如下:
细节可以去原文看,现在DE已经有很多文献将其用到多目标领域
3.Biased Random Key Genetic Algorithm (BRKGA)
原文:Biased random-key genetic algorithms for combinatorial optimization
BRKGA在组合问题上表现得很好,该算法更多信息可以去这里看
4.Nelder Mead
原文:A simplex method for function minimization,1965
一种基于比较的直接搜索方法,因为太少用该算法了,具体细节还请读者去原文里看
5.Pattern Search
原文:“ direct search’’ solution of numerical and statistical problems,1961
它以一种交替的方式利用探索和模式移动,具体细节还请读者去原文里看。
6.CMA-ES
原文:Completely derandomized self-adaptation in evolution strategies,2001和The CMA Evolution Strategy: A Comparing Review,2006
CMA-ES代表协方差矩阵自适应进化策略.进化策略(ES)是求解非线性或非凸连续优化问题的随机无导数方法.它们属于进化算法和进化计算的范畴。进化算法广泛地基于生物进化原理,即变异(通过重组和突变)和选择的重复相互作用:在每一代(迭代)中,新个体(候选解)都是由当前亲本个体的变异(通常是随机方式)产生的。然后,根据个体的适应度或目标函数值f(X),选择一些个体作为下一代的亲本。就像这样,在生成序列中,具有越来越好的目标值的个体被生成。
7.R-NSGA-II
原文:Reference point based multi-objective optimization using evolutionary algorithms
该算法是基于NSGA-II进行改进的,修改了选择操作。在R-NSGA-II中,首先选择的是Frontwise。这样做,就会有一种局面,即前线需要分裂,因为并不是所有的个体都能生存下来。在这个分裂前沿,选择了基于秩的解。秩计算为欧几里德距离到每个参考点。因此,最接近参考点的解的秩为1。每个解的最佳秩(有多个参考点)被选择为该解的秩。
接下来,根据排名为每个参照点选择解。在每个参照点为生存选择了一个解决方案后,生存方案的epsilon距离内的所有解决方案都将被“清除”。这意味着,除非每一个战线都已得到处理,否则无法选择它们来生存,还需要选择更多的解决方案。这意味着较小的epsilon值将导致一组更紧密的解决方案。
8.NSGA-III
原文:An evolutionary many-objective optimization algorithm using reference-point-based nondominated sorting approach, part I: solving problems with box constraints. 2014和 An evolutionary many-objective optimization algorithm using reference-point based nondominated sorting approach, part II: handling constraints and extending to an adaptive approach. 2014和Investigating the normalization procedure of NSGA-III.2019
上面三篇文献前两篇是原文上下两个部分,后面那篇讲到了算法的具体实现。
NSGA-III是基于参考方向的,当算法初始化时需要提供参考方向。
首先,它的非支配排序和NSGA-II一模一样.
其次,从分裂的角度出发,需要选择一些解决方案。NSGA-III首先填充代表不足的参考方向。如果参考方向没有指定任何解,则在归一化目标空间中垂直距离最小的解会得到保留。如果为这条参考线添加了第二个解决方案,则会随机分配它。
因此,当该算法收敛时,每条参考线都寻求一个具有代表性的非支配解。
9.U-NSGA-III
原文:A unified evolutionary optimization procedure for single,2016
NSGA-III会随机选择父本进行交配。结果表明,锦标赛的选择效果优于随机选择。U代表统一,U-NSGA-III通过引入锦标赛压力来提高NSGA-III的性能.
其交叉选择操作如下:
10.R-NSGA-III
原文:Reference point based NSGA-III for preferred solutions
在执行该算法之前,必须定义该算法应该使用的参考线。生成参考线的细节方法请参考原文
该算法采用改进的生存选择算子,采用一般的NSGA-III算法,其非支配排序和原NSGA-III一样
第二,从分裂前沿(最终前沿),需要选择一些解决方案。解与基于垂直距离的参考方向相关联,然后通过从未充分表示的参考方向中选择解来优选ASF值较小的解。因此,当该算法收敛时,每条参考线都寻求一个很好的有代表性的非支配解。
10.MOEA/D
原文:A multi-objective evolutionary algorithm based on decomposition,2007
与NSGA一类基于支配的方法不同,该方法基于分解的思路。该算法基于初始化算法时提供的参考方向进化。目前主流的MOEA就是NSGA和MOEA/D
11.C-TAEA
原文:Two-Archive Evolutionary Algorithm for Constrained Multiobjective Optimization
对于带约束的多目标优化问题,有个很重要的议题就是怎么平衡搜索过程中的收敛、多样性和可行性。出于此,C-TAEA提出了使用两个存档的方法来解决这个问题。一种表示为面向收敛的归档(CA),是推动种群向Pareto front推进的动力;另一种表示为面向多样性的归档(DA),主要倾向于保持种群多样性。另外提出了一种受限的交配选择机制,根据其进化状态自适应地从它们(指CA和DA)中选择合适的交配亲本。