论文解读:multiple population technique for multiple objectives (MPMO)

背景和动机

传统多目标演化算法的弊端在于将多个目标作为整体而由同一个种群进行优化,由于目标之间相互冲突,因此个体适应度值的计算变得更加困难。

多种群多目标(MPMO)技术可以避免上述困难。

MPMO允许每个种群只对应一个目标,进而每个种群中的个体由该种群对应的目标来分配适应度值。

MPMO是一种通用的技术,每个子种群都可以使用现有的单目标优化算法。

对于这两篇文章,最有趣的应该是存档的灵活使用,因此,我们围绕这个点一起来学习一下

一,以CMPSO为例,介绍如何将原始的PSO算法与MPMO结合

CMPSO 具有三个特点:

  1. 每个种群均采用一个独立的PSO算法;
  2. 每个种群通过外部共享存档交换信息;
  3. 提出两个新的设计来提高算法性能:
    a) 改进速度更新公式;
    b) 使用精英学习机制更新存档以提高多样性,进而避免局部PFs.
    在这里插入图片描述
    从Fig.1可以看出,第m个种群中的个体由第m个目标函数分配适应度值。这样,个体不再会被相互冲突的目标所迷惑,同时可以由对应的目标引导以搜索Pareto前沿面的不同区域。
    但是,这样可能存在一个弊端,即,种群个体趋于集中并各自针对Pareto前沿面特定的区域进行优化。因此需要信息共享机制促进种群之间的交流,进而有效地逼近整个PF。
    CMPSO使用一个存储所有群体非支配解的外部存档(记为A),所有粒子群体都可以通过访问该外部存档共享信息。

CMPSO存档更新过程:

在这里插入图片描述存档在每代结束时更新。
首先,初始化一个空集合S。
然后,将三种粒子加入到S中:包括,1)每个群体中的粒子的 pBest,2)(old)A 中的解,3)以及由A通过 ELS 产生的新个体。
最后,通过 NSD 确定S中的 非支配解 并临时存放在集合R中。
(注意,如果非支配解个数不超过最大限度,则将全部非支配个体存入A中;否则,根据 DBS 从R中选择合适数量的个体保存到A中)

CMPSO算法描述

在这里插入图片描述
CMPSO算法中子群体合作进化过程分为两个阶段:

  1. 共享信息阶段,即 “Update the archive A”;
    其中又分为两个步骤:step1, 演化存档,即 “ELS”; step2, 更新存档,即"DBS";
  2. 获取信息阶段,即 “Select an archive solution randomly from A”。

二,以CMODE为例,介绍如何将原始的DE算法与MPMO结合

背景和动机

受CMPSO启发,CMODE同样采用了合作演化机制。其动机是通过多个种群来缓解不同目标间的冲突给传统多目标算法在分配适应度时遇到的困难。

CMODE的特点

  1. 针对M个目标的多目标优化问题,采用了 (M+1) 多种群模式,即,M个单目标优化子种群和1个存档种群。所有种群均通过自适应DE算法实现进化。
  2. 存档种群有两个作用:1)保存全部的非支配解;2)引导子种群沿着整个PF搜索。
  3. 与CMPSO类似,每个子种群仅处理一个目标,通过所有种群合作来逼近整个PF前沿。
    在这里插入图片描述

从Fig.1可以看出,第m个种群中的个体由第m个目标函数分配适应度值。这样,个体不再会被相互冲突的目标所迷惑,同时可以由对应的目标引导以搜索Pareto前沿面的不同区域。
但是,这样可能存在一个弊端,即,种群个体趋于集中并各自针对Pareto前沿面特定的区域进行优化。因此需要信息共享机制促进种群之间的交流,进而有效地逼近整个PF。
CMPSO使用一个存储所有群体非支配解的外部存档(记为A),所有粒子群体都可以通过访问该外部存档共享信息。

这里暂停一下,这段话似乎很眼熟?没错,就是从CMPSO搬运过来的。对应CMODE的原文是:

… \dots in each generation, the fitness values of an individual in the mth subpopulation is assigned by the mth objective function of the MOP. Thus, the individuals would not be confused by different conflicting objectives and can be guided by the corresponding objective/direction to search different regions of the PF. However, since each subpopulation focuses on optimizing one objective/direction only, individuals in each subpopulation may be guided to the margin or extreme point of the corresponding objective/direction, resulting in inefficient approximation of the whole PF. To remedy this issue, different single-objective subpopulations share their search information and communicate with others through the archive population to approximate the whole PF to some extent.

值得注意的是,同样是使用多个种群,CMODE与CMPSO的不同之处在于:前者在优化子种群的同时也优化了存档种群。因此,子种群负责focused search,而存档种群负责global search,并且二者以合作的方式逼近整个PF

CMODE算法描述(关注 外部存档在CMODE中是如何被使用的?)

在这里插入图片描述

CMPSO算法中子群体合作进化过程分为两个阶段:

  1. 共享信息阶段,即 “Update the archive A”;
    其中又分为两个步骤:
    演化存档,即 "DE for archive population A to generate offspring population A’ ";
    更新存档,包括 “A = NondominatedSolutions(AllSubpopulation U A U A’)”, “Update the archive A by extracting nondominated solutions from all subpopulations” 以及 “archive truncation based on density estimation”;
  2. 获取信息阶段,即 “randomly select an archive individual Ar from A”。

(重要的地方值得暂停一下,这里是不是也很眼熟?)

与CMPSO的主要不同之处在于

  1. 存档种群演化方式;
  2. 非支配解密度计算公式;

参考文献:
[1]. Zhan, Z.-H,Li, J,Cao, J,Zhang, J,Chung, H.S.-H,Shi, Y.-H, ‘‘Multiple Populations for Multiple Objectives: A Coevolutionary Technique for Solving Multiobjective Optimization Problems,’’ IEEE Transactions on Systems Man & Cybernetics Part B Cybernetics A Publication of the IEEE Systems Man & Cybernetics Society, vol. 43, no. 2, pp: 445-463, 2013.
[2]. Jiahai Wang, Weiwei Zhang, and Jun Zhang, “Cooperative Differential Evolution With Multiple Populations for Multiobjective Optimization,” IEEE TRANSACTIONS ON CYBERNETICS, VOL. 46, NO. 12, 2016.

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值