求解大规模稀疏多目标优化问题的一种进化算法(SparseEA)笔记

阅读文献:An Evolutionary Algorithm for Large-Scale Sparse Multiobjective Optimization Problems
是由BIMK的田野、张兴义等人发表在IEEE Transactions on Evolutionary Computation(SCI 一区)期刊上的一篇文章

Abstract—亮点

提出了一种求解大规模稀疏多目标优化问题的进化算法,该算法考虑到Pareto最优解的稀疏性,提出了新的种群初始化策略遗传算子,来保证生成解的稀疏性。

Introduction

下面就介绍一下相关概念,之前文章也提到过
多目标优化问题(MOPS)–是指具有多个待优化目标的问题
Pareto最优解–可以获得多个解作为不同目标之间的权衡
Pareto前沿面–是由所有Pareto最优解构成的Pareto集在客观空间上的像
什么是大规模优化问题?
简单来看就是决策变量的维度比较高的优化问题。
稀疏指的是?
在大规模优化问题中,并不是每一维变量都会对目标函数函数产生影响,也就是虽然决策变量的维度很高,但是有意义的维度却很少.
为什么稀疏的大规模问题比较难以解决?
1.维度越高,搜索空间越大,越需要搜索能力更强的算法.
2.交叉变异有可能对没有意义的维度进行操作,会使种群中存在大量冗余的个体.

本文的解决方案:
1)提出了一种求解大规模稀疏拖把问题的多目标进化算法。该算法通过一种新的种群初始化策略遗传算子来保证解的稀疏性,验证了其在逼近稀疏Pareto最优解方面的有效性。
种群初始化策略简要介绍
个体编码角度出发,找出所有维度中比较重要的维度。
在这里插入图片描述
dec表示个体的决策变量, mask表示每维变量是否重要, 由0和1组成,最终决策变量是两者的内积。

2)设计了一个多目标测试集来评估算法的性能,该测试集包含8个Pareto最优解稀疏度可调的基准问题。
3)对提出的测试集和四个应用实例进行了实验。统计结果表明,在求解大规模稀疏多目标优化问题时,该算法的性能明显优于现有的7个多目标进化算法。

稀疏的多目标优化问题

大规模稀疏应用方面很多领域,主要是:机器学习、数据挖掘、神经网络
本文主要是介绍了四种流行的稀疏多目标优化问题:
1、特征选择
在这里插入图片描述
通过(a)图我们可以清晰的看到,Bear和Frog两种动物他们的有一些相同的特征和一些不同的特征,如果我们需要进行特征选择,我们会选择相关特征中Hair、Eggs、Milk 这几个特征来进行分类,这样的话不仅可以减少特征数量,同时可以提高分类性能。
2、模式挖掘
目的:从交易数据集中找到最频繁和完整的模式
在这里插入图片描述
由图(b)可知,通过众多用户的购买交易记录,我们发现划横线的商品是大部分用户经常一起购买的,这相当于是一个完整的模式(Hat、Scarf 、Gloves),当用户购买其中一件商品的时候,往往会给你推荐其他两件商品,相信大家应该在电商平台上有所经历吧,这就是通过从所有的历史购物清单中挖掘最佳模式来向客户推荐匹配的商品。
3、关键节点检测
在这里插入图片描述
由图(c)可知,在复杂网络中,某些节点是比较重要的,而绝大部分节点一般都不太重要.删除法是一种搜索重要节点的方法,具体地,删除某些节点,检测网络的连通性.删除的节点越重要,对网络连通性的破坏越大。
4、神经网络训练
在这里插入图片描述
由图(d)可知,进化算法已经应用在神经网络训练的优化网络拓扑、权重、超参数方面,而且为了控制神经网络的复杂性,主要是优化输入层到隐藏层、隐藏层到输出层的权重以达到最小化复杂性和误差的目的。

通过上述特征选择,关键节点检测和神经网络训练等问题,能够看到相同点是,它们的Pareto最优解是很少的,将稀疏性定义为直接优化的目标,因此可以看到Corresponding solution中有一部分为0,重要的部分为非零,达到稀疏的目的。

SparseEA算法具体内容

A、SparseEA算法框架

SparseEA框架与NSGA-II类似,SparseEA中的交配选择和环境选择与NSGA-II中的相似

在这里插入图片描述
1-3:首先初始化大小为N 的种群P,在种群P中计算每个解的非支配前沿数和拥挤距离-
在主循环中
4-13:通过二元锦标赛选择来选择2N个父代,生成N个后代并与P组合之后,删除合并种群中的重复解,合并种群中具有更好的非支配前沿数和拥挤距离的N个解可以生存到下一代。

B、SparseEA的种群初始化策略(重点)

采用实变量和二元变量的混合表示法来集成两种不同的编码来求解稀疏多目标优化问题。
双编码:实数编码dec ,二进制编码mask
在这里插入图片描述
每个解的实向量dec 记录最佳决策变量,二进制向量掩码记录应该设置为0的决策变量,最终决策变量为两个向量的内积。

在这里插入图片描述
种群初始化策略主要分为两部分:
1.计算决策变量得分
D维决策变量:构造D个解
实变量dec:随机
二进制变量mask:DD的单位矩阵
对D个解进行非支配排序,将第i个解的非支配前沿数作为第i个决策变量的得分,得到每个决策变量的得分。
决策变量的得分代表的是其被设置为0的概率,较低的非支配前沿数指示较好的解质量。
那么得分越小,为0的可能性越小,为1 的可能性越大;反之,得分越大,为0的可能性越大,为1的可能性越小。
2.生成初始种群
初始化:N个解。
实变量dec:N
D随机
二进制mask:N*D全0矩阵(设置为0)
通过二进制锦标赛选择从掩码中选择rand()×D个元素,设置为1,其中rand()表示[0,1]中均匀分布的随机数。

在这里插入图片描述
通过上图绘制了SparseEA生成的种群和目标空间中随机生成的种群,个种群包含一个特征选择问题的50个解决方案。可以看到,通过该初始化策略,获得一个一个近似于pareto面的良好分布,具有更好的收敛性和多样性。

C、SparseEA的遗传算子

在这里插入图片描述
先从p’中随机选择两个父代p和q,以每次生成一个子代o(3)
然后将o的二进制向量掩码设置为与p的二进制向量掩码相同(6)
以相同的概率执行下面的两个操作(7)
根据决策变量的得分(越大越好),通过二进制锦标赛选择从p.mask∩(q.mask反) 掩码中的非零元素中选择一个元素,并将o的掩码中的该元素设置为0 (8-12)
或者根据决策变量得分(越小越好),通过二进制锦标赛选择,从(p.mask反)∩q.mask 掩码中的非零元素中选择一个元素,并将o的MASK中的该元素设置为1 (14-18)
下一步
对o的掩码进行相同概率执行,根据决策变量的分数(越大越好),通过二进制竞赛选择从o.mask中的非零元素中选择一个元素,并将该元素设置为0;或者根据决策变量的分数,通过二进制锦标赛选择,从(o.mask反)中的非零元素中选择一个元素,并将该元素设置为1。
总结起来一句话就是:以相同的概率翻转二进制向量掩码中的零元素或非零元素中的一个元素,其中要翻转的元素是基于决策变量的分数来选择的
目的:生成的子代不期望具有相同数量的0和1,并且可以保证子代的稀疏性

在这里插入图片描述
根据上图可知,现有MOEA产生的大多数子代位于双亲之间,而SparseEA产生的一些子代可以同时支配两个双亲。因此,可以证实所提出的遗传算子的有效性。

实验Experiment

在这里插入图片描述
在这里插入图片描述
对比于其他的算法来解决大规模问题,SparseEA算法效果显著。

结论

SparseEA采用了一种新的种群初始化策略和遗传算子来生成稀疏解,实验证明该算法比现有的多目标进化算法在稀疏多目标优化问题上更有效。

原文链接:https://download.csdn.net/download/qq_36317312/12920027
如果有需要,可以下载进行理解。
本篇博客参考了这两篇文章,受益匪浅:https://blog.csdn.net/xyisv/article/details/90736084
https://blog.csdn.net/you_jin/article/details/106927996

  • 10
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

研行笔录

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值