最新高维多目标进化算法总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
高维多目标进化算法
二、文献选读内容分析及思考
(一)Borg算法
Borg算法是基于ε-MOEA算法(Deb,2003)的一种全新改进算法[32],下面将从创新点、原理、算法流程和启发思考四方面进行阐述。
1. 创新点
1)在ε支配关系的基础上提出ε盒支配的概念,具有能同时保证算法收敛性与多样性的特点。
2)提出了ε归档进程,能提高算法计算效率和防止早熟。
3)种群大小的自适应调整。
4)交叉算子的自适应选择。由于处理实际问题时,是不知道目标函数具有什么特性,前沿面如何,在具有多个交叉算子的池子里,根据进程反馈,选择不同的交叉算子,使产生的后代具有更好的特性针对要研究的问题。
2. Borg算法原理
1)ε盒支配:通过对目标空间向量的每一维除以一个较小的ε,然后取整后进行pareto支配比较。这样的支配关系达到的效果是把目标空间划分成以ε为边长的网格(2目标时),当点处于不同的网格时,按pareto支配关系比较;当处于同一网格时,比较哪个点距离中心点(网格最左下角)最近。这样一来,网格内都只有一个点。
2)ε归档进程
如图1所示,黑点表示已经归档的,想要添加到档案集的新解用×表示,阴影表示归档解支配的区域。当新解的性能提升量超过阈值ε才属于ε归档进程。比如解1、解2加入归档集属于ε归档进程,解3加入归档集就不属于ε归档进程。
图1 ε支配网格
在这个过程中设置了一个参数c,表示每一代中加入归档集解得个数,每隔一定迭代次数检测c有没有增加,如果没有增加表明算法停滞,重启机制启动。
3)重启
自适应种群大小:重启后的种群大小是根据归档集的大小设置。γ表示种群大小与归档集大小的比值,这个值也用于第二步中,如果γ值没超过1.25,重启机制也启动。启动后,γ人为设定为固定值,种群被清空,填充归档集的所有个体,不足的个体是随机选取归档集中个体变异所得。与之相匹配的锦标赛比较集大小是归档集大小乘以固定比值τ。
4)交叉算子的自适应选择
摒弃以往采用单一的交叉算子,采用包含各类交叉算子的池子,比如有K
种交叉算子,选择概率最开始是相等的,设n表示各类交叉算子产生的后代属于ε归档进程所得个数,个数越多,选取相应交叉算子的概率就越大,逐渐趋于选择解决未知现实问题的交叉算子。
3. Borg算法总体流程
通过交叉算子的自适应选择选择一种交叉算子,假设所选交叉算子需要K 个父代,1个父代在归档集中按均匀分布选择,K-1个父代从种群中按锦标赛选择(大小按上述第3步中计算),交叉产生一个后代,如果这个后代pareto支配种群中一个或多个个体,则随机的取代一个;如果被种群中的任一个体支配,则不能加入种群;如果互不支配,也是随机的取代种群中的一个。而加入归档集,是按照上述第2步实施的。如此循环一定代数之后,看达没达到第3步重启的条件,达到则重启过程开始,直至满足终止条件。
4. 思考
1)ε盒支配时,同一网格内的点只是比较离中心点距离最近的,这就有一个不足,最近的不一定是非支配解,离的远的点有可能还支配它,我觉得还需要比较一下哪个解优的目标维数多。
2)设计一种云交叉算子,加入到交叉算子的池子里,或是参数控制云交叉算子替换其中的能达到类似效果的几种算子,便于统一。
(二)基于模糊支配的高维多目标进化算法
1. 算法简介
基于模糊支配的高维多目标进化算法[33]是对模糊支配关系的一种改进,2005年M. Farina首次提出的模糊支配,其隶属函数是一条正态分布函数,如图2所示,而此文的隶属函数是一条半正态分布函数,表达的概念更加清晰。
图2 正态隶属函数
对于最小化问题,归一化后的解A(a1,a2,...,a M),B(b1,b2,...,b M)如果目标向量的某一维上的差量(a i-b i)达到-1,则a i好于b i的程度为1,即pareto支配关系下a i支配b i;如果差量(a i-b i)是1,则pareto支配关系下b i支配a i。A模糊支配B程度为每一维差量映射下的隶属度之积,与种群中其他解进行比较,所得隶属度相加即为A解在整个中群众的性能好坏程度,相当于NSGA-II中的非支配排序,只是这里的等级程度更加细分,然后还得设置一个阈值α,即模糊支配隶属度达到多少才能是最优解,也就是NSGA-II中的非支配排序等级为1的解。设定这个值是关键,此文献也对这个值得选取进行了实验说明,针对不同的问题选取不同的值,但是还没能达到根据问题特性自适应调整。
2. 思考
1)既然隶属度函数不是一成不变的,想用云模型确定隶属度,借鉴张国英
《高维云模型及其在多属性评价中的应用》构造一M维云模型,它的作用是输入M维差量映射为一维的模糊支配隶属度u,无需像上文中求出每一维隶属度再相乘。
2)由于阈值α不好确定,可不可以根据归档集的大小取前N个,找到使个体数量大于等于N的u值为α。
(三)基于网格支配的高维多目标进化算法
GrEA[34]也是针对ε-MOEA算法进行改进的,作者认为ε-MOEA算法中的网格划分是基于个体的,如果个体分配不均匀,也就不能得到分布性好的最优前沿,而且网格的大小也不能随着目标空间的特性而自适应调整。
1. 支配关系创新
grid-dominance,这种支配关系是基于空间区域划分网格,就是在当代种群中找出每一个目标函数上的最大值与最小值(下图上行),然后根据这两个值计算出这个目标函数的网格上下界值(下图下行)。人为设定每一个目标函数需划分的段数div,是一个固定的值,这样就使得收敛性与多样性的要求随着算法进程自适应调整,比如说刚开始时目标空间的个体分布比较广,就需要大的网格来选择个体,随着算法深入,个体更加集中于Pareto前沿区域,就需要小的网格区分个体,更加强调个体的多样性,因此这样动态的网格划分更能体现算法的进程。另外,ε-支配强调个体生死,只有非支配才能加入归档集;而grid dominance不同,它更强调个体的先后,非支配个体只是先于支配个体进入归档集,支配个体还是有机会加入归档集,这在一定程度上保留了边界点,而ε-MOEA算法会丢失边界点。
图3 网格分段示意图
2. 适应度值指派创新
本文提出了适应度值指派的三个指标grid ranking (GR)、grid crowding distance (GCD)和grid coordinate point distance(GCPD),GR和GCPD是收敛性评价指标,GCD是多样性评价指标,网格指标如图4所示。
GR表示个体所处网格各维目标函数坐标之和,相当于将目标向量各维相加,只不过这里是将函数值映射为所处网格坐标值之和。比如下图A点的网格坐标为(0,4),则GR=0+4=4。
GCD是网格拥挤距离,以往的网格拥挤距离都是在一个网格之内的,这样就不能反映分布性了,此处的GCD还考虑临近网格的个体,用网格坐标的差量之和评估,之和越小的GCD值就越大,多样性就越差。如下图C的邻居是B、D,F的邻居是E、G。
GCPD表示的是同一网格内与中心点的距离,这一点与ε-MOEA中相同。比较的先后准则是GR,GR相同比较GCD,GR、GCD都相同则比较GCPD。