当前位置: 首页 > news >正文

论文学习——基于小生境预测策略的动态多目标进化算法

论文题目:A dynamic multi-objective evolutionary algorithm based on Niche prediction strategy

基于决策变量分类的动态多目标优化算法(Jinhua Zheng a,b, Bo Zhang a,b,∗, Juan Zou a,b, Shengxiang Yang a,d, Yaru Hu)Applied Soft Computing 142 (2023) 110359

刚开始学习多目标优化算法,不作商业用途,如果有不正确的地方请指正!

个人总结:

通过小生境思想把种群分成3份,每一份独立进行中心点预测,并在区域内随机生成一些种群保持多样性,简单有效

摘要

  • 在众多动态多目标优化算法的策略中,基于预测的响应机制是一种常用的应对环境变化的方法,通常被称为基于中心点的预测。但是,如果中心点的预测方向不准确,则预测的人口数量会偏向一侧。在本文中,我们提出了一种基于中心和边界点的小生境预测策略( PCPB )来解决动态多目标优化问题
  • 检测到环境变化后,第一步进行生态位划分,将PS中的不同个体划分为不同的生态位种群。第二步是独立预测不同的小生境,并在小生境中选择收敛性和分布性较好的个体来预测将产生下一代的个体。最后,在下一个可能的PS区域内随机产生一些不同的个体,以保证种群的多样性。

引言

发现基于预测的动态多目标优化算法利用特殊点,如中心点或拐点等进行预测,但当特殊点设置或历史信息记录不当时,会导致算法的收敛性或分布性降低。

为此,我们增加了特殊点的数量,并引入小生境的思想对种群进行划分。在环境变化后的响应阶段,利用边界和中心点划分小生境,然后每个小生境中的每个点指导和预测下一阶段的种群,并在预测的种群中使用随机策略来丰富整个种群,因此该种群具有良好的分布性质。

背景及相关工作

A.DMOP基础

B.环境检测方法

环境变化检测阶段检测环境是否发生了变化。总结变化检测机制,有三种变化检测机制:

  1. 重新评估:主要思想是从种群中选择一些个体,并对这些被选择的个体进行重新评估。如果被评价个体的目标函数值发生两次变化,环境就发生了变化。常用的方法是从种群中随机选取一定比例的个体进行再评估。(现阶段常用的10%个体评估)
  2. 目标函数值数据分布的估计:该方法的主要思想是将当前代静态算法后发现的PS中的个体放入下一代中计算目标函数值,得到目标解集。将当前一代的目标解集与新一代的目标解集进行比较。如果有不同的分布,说明环境发生了变化。
  3. 稳态检测方法:该方法首先将所有个体随机排列,然后逐个对每个个体进行重新评估。如果个体再评价存在差异,则证明环境发生了变化,其余个体不需要再评价。

C.RM-MEDA的简短介绍

RM - MEDA算法是一种基于分布估计求解多目标优化问题的进化算法。RM - MEDA算法使用多个( m-1 )维线性空间拟合父代种群的形状,然后对多个线性空间进行采样生成子代。它具有强大的启发式搜索能力。实验表明,与其他MOEA算法相比,RM - MEDA算法在动态多目标优化人口预测策略上具有更强的性能

提出的算法

小生境思想在多模态和多目标中有着广泛的应用。小生境是用来存储个体的。同时,可以在小生境中进行不同的操作,使小生境的种群具有良好的分布性。因此,本文采用了小生境的思想。

基于小生境的预测主要包括小生境构建、生态位内预测和随机求解策略3种策略。小生境的建立需要一个中点和半径。半径为目标空间中边界点与中心点距离的一半,中点为决策空间中的中心点和边界点。以二维为例,在决策空间中存在两个边界点和一个中心点,因此可以建立三个不同的小生境种群。

A.小生境的建立

如上图所示,找到种群的中心点FCt 和边界点B1B2,使用计算出边界点到中点的距离,取最大距离的一半作为中心点小生境的半径,边界点小生境的半径为每个到中新点距离的一半.

B.基于小生境的预测策略

C.多样性保持策略 

在考虑了种群的收敛性质后,我们需要保证下一时刻得到的种群具有良好的分布性。在动态多目标优化算法中,大多采用产生随机解的思想来保证种群的分布性。因此,本节采用随机生成点的思想来保持种群的多样性。

前面预测出了小生境的区域xt+1 = random (bt1+1, bt2+1) . 在区域里随机生成

简单有效.......

 

相关文章:

  • 综合项目实战--jenkins流水线
  • 配置并调试后端程序(sql)
  • 建智慧医院核心:智能导航系统的功能全析与实现效益
  • Python 文档字符串(DocStrings)是个啥??
  • 相关款式1111
  • 从0开始搭建Spring-Cloud微服务项目
  • STM32工业自动化控制系统教程
  • promise.all和promise.race的区别
  • 一份适合新手的软件测试练习项目
  • JavaSE (Java基础):面向对象(下)
  • 【计算机毕业设计】026基于微信小程序的原创音乐
  • 01 企业网站架构部署于优化之Web基础与HTTP协议
  • Kafka系列之Kafka知识超强总结
  • 【高级篇】第8章 Elasticsearch 安全与权限管理
  • 什么是私域流量?私域流量为什么越来越多人做?
  • (十五)java多线程之并发集合ArrayBlockingQueue
  • 《微软的软件测试之道》成书始末、出版宣告、补充致谢名单及相关信息
  • android图片蒙层
  • angular2 简述
  • CentOS从零开始部署Nodejs项目
  • dva中组件的懒加载
  • Flannel解读
  • Flex布局到底解决了什么问题
  • JavaScript类型识别
  • Redis在Web项目中的应用与实践
  • Redis字符串类型内部编码剖析
  • SAP云平台运行环境Cloud Foundry和Neo的区别
  • Solarized Scheme
  • 百度小程序遇到的问题
  • 浮现式设计
  • 关于for循环的简单归纳
  • 将 Measurements 和 Units 应用到物理学
  • 山寨一个 Promise
  • 使用前端开发工具包WijmoJS - 创建自定义DropDownTree控件(包含源代码)
  • 在Unity中实现一个简单的消息管理器
  • k8s使用glusterfs实现动态持久化存储
  • # 达梦数据库知识点
  • #[Composer学习笔记]Part1:安装composer并通过composer创建一个项目
  • #HarmonyOS:基础语法
  • #LLM入门|Prompt#3.3_存储_Memory
  • #微信小程序:微信小程序常见的配置传值
  • (16)Reactor的测试——响应式Spring的道法术器
  • (9)目标检测_SSD的原理
  • (C语言)编写程序将一个4×4的数组进行顺时针旋转90度后输出。
  • (delphi11最新学习资料) Object Pascal 学习笔记---第13章第6节 (嵌套的Finally代码块)
  • (function(){})()的分步解析
  • (zz)子曾经曰过:先有司,赦小过,举贤才
  • (免费领源码)Python#MySQL图书馆管理系统071718-计算机毕业设计项目选题推荐
  • (五十)第 7 章 图(有向图的十字链表存储)
  • (一)spring cloud微服务分布式云架构 - Spring Cloud简介
  • (转)EOS中账户、钱包和密钥的关系
  • (转)shell调试方法
  • ******之网络***——物理***
  • ***详解账号泄露:全球约1亿用户已泄露
  • *Algs4-1.5.25随机网格的倍率测试-(未读懂题)