分布式进化算法

news/2024/5/17 20:09:20/文章来源:https://blog.csdn.net/crazy_girl_me/article/details/126897257

1 多解优化问题

        多解优化问题是指一类具有多个最优解的复杂优化问题。多峰优化问题和多目标优化问题都是两类典型的多解优化问题,它们之前的统一关系,即都具有多个最优解多峰优化问题要求算法找到多个具有相同适应度值得最优解,多目标优化问题要求算法找到能优化多个目标的一组Pareto最优解。多目标优化可以通过映射转化为多解优化问题,如图3所示。

2 进化算法的框架

        进化算法是一类受自然界演化规律和智能现象启发的优化算法。常见的进化算法包括遗传算法、粒子群算法、差分进化算法、蚁群优化算法和分布式估计算法。下列主要介绍一下差分进化(Differential Evolution,DE)、蚁群优化算法(Ant Colony Optimization, ACO)。

 2.1 差分进化算法

 步骤3为变异操作,除步骤3种的变异方式,还有以下几种典型的操作设计方法:

2.2 蚁群优化算法

3 基于分布式计算的进化算法

3.1 基于分布式个体的多峰差分进化算法

         用进化算法求解多峰优化问题,算法需要保持充分的种群多样性以定位到搜索空间中的多个峰。为实现这一目的,小生境技术是常用的一个方法,通过将种群划分为多个子种群以保持种群多样性。划分的目的是将哪些位于同一个峰区域的个体划分到同一个子种群中,然后每个子种群独立演化,各自定位到一个峰,最后整个种群就可以找到多个峰。小生境策略面临着多样性(如何同时定位多个峰)和收敛性(如何提高在已定位的峰上的精确)两方面的挑战。

        这篇论文提出了DIMP(Distributed Individuals for Multiple Peaks)框架的DIDE(Distributed Individuals Differential Evolution)算法,其思想:让种群中每个个体作为一个分布式搜索单元在搜索空间中独立搜索并各自定位到一个峰,避免了小生境策略中困难的种群划分操作,同时也能保持充分的种群多样性以定位到更多的峰。

        总体思路:每个个体作为一个分布式搜索单元并且被赋予一个寿命。分布式单元基于虚拟种群进行变异操作,从而保持个体的分布式搜索并且提供充分的种群多样性以定位到尽可能多的峰。另外,DIDE采用个体寿命机制,进一步增强种群多样性以定位更多的峰。最后,通过精英学习机制提高在已定位的峰上的精度。

        DIDE的挑战:在DIMP框架下每个个体是一个分布式搜索单元而差分进化算法中个体的变异操作通常需要种群中的其他个体的信息(例如种群中其他个体之间的差分向量)作为引导。

        解决方式:为每个个体构建一个虚拟种群,每个个体的虚拟种群包括一些基于个体生成的虚拟个体。通过这种方式,每个个体的变异操作可以使用对应虚拟种群中的虚拟个体作为引导。

3.1.1 具体实施方法

(1)基于虚拟种群的变异操作

        对个体X_{i}VX_{i,1} /VX_{i,2}是个体X_{i}的虚拟种群中的两个虚拟个体。X_{i}的虚拟个体基于虚拟个体范围R_{i}(即L和U,分别表示搜索空间的下界和上界)在X_{i}附近生成,变异公司如下:

 

        虚拟个体范围R的设置十分重要。较大的R取值能增强算法的全局搜索能力,但对算法的局部收敛带来困难,较小的R取值则相反。算法在开始阶段每个个体的R初始化为一个较大的值,以帮助个体充分探索,在演化过程中,逐渐减小以促进个体在所定位的峰周围进行局部搜索,从而逐渐收敛到峰。

(2) 个体寿命机制

        DIDE算法采用个体寿命机制以帮助算法定位到更多的峰,如算法2-2所示。定义了一个阈值mht(maximum halved times)来判定是否触发个体寿命机制。如果一个个体ht(初始为0,定义的是R的缩减次数)达到了mht,那么DIDE算法判定该个体已经耗尽寿命。对于耗尽寿命的个体,如果它达到了一个准入标准,则将其视为精英解并添加到外部存档中。然后,耗尽寿命的个体将重新初始化,同时个体所应的R和ht也重新初始化。

        个体寿命机制可以检查一个耗尽寿命个体在整个种群中的适应值排名,如果它在整个种群中的适应度值排名在前at(access threhold),那么将它视为精英解并添加到外部存档库中,否则将其过滤。

(3) 精英学习机制

        外部存档中存储了一组精英解。每个精英解虽已定位到一个峰但可能仍然没达到精度需求。DIDE算法通过精英学习机制提高精英解的精度。

        外部存档中的一些精英解可能定位到同一个峰,在这种情况下,没必要让外部档案中的每一个精英解都进行精英学习,可以通过聚类将定位到同一个峰的精英解聚成一类,精英学习机制从每个类中挑选一个具有代表性的精英解进行精英学习。

 3.2 分布式多种群进化算法

        (待更)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_9602.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot的核心原理(扒笔记记录)

这一课的主要重点: 自动装配以及starterJDBC数据库连接池ORM、JPA、MyBatis、Hibernate这样相关的一些技术 从Spring到SpringBoot 我们在工作中都可能用过了SpringBoot,特别是最近几点,Java开发者大军里的一员,我们一般可能上手就…

卷积神经网络相比循环神经网络具有哪些特征

CNN卷积神经网络结构有哪些特点? 局部连接,权值共享,池化操作,多层次结构。 1、局部连接使网络可以提取数据的局部特征;2、权值共享大大降低了网络的训练难度,一个Filter只提取一个特征,在整个…

Docker容器互联

前言: 虽然每个docker容器之间都能通过ip来进行互联,但当容器重新启动,ip就会被重新分配给重新启动的容器,这时同个容器由于重启导致ip不一样了,这时就会导致开发和运维的困难程度大大增加,这时候就要考虑…

springboot+学生信息管理 毕业设计-附源码191219

学生信息管理的设计与实现 摘 要 科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现实运用中&…

Maven下的依赖管理

依赖管理一. 使用坐标引入jar包二. 快捷方式导入jar包的坐标三. 自动导入设置四. 依赖范围一. 使用坐标引入jar包 使用坐标引入jar包的步骤: 在项目的 pom.xml 中编写 标签在 标签中 使用 引入坐标定义坐标的 groupId,artifactId,version 点…

用于文化遗产的VQA(基于ArtPedia数据集)

艺术 文化遗产领域 VQA parper 阅读 Visual Question Answering for Cultural Heritage 文章目录艺术 文化遗产领域 VQA parper 阅读前言方法visual Question Answering with visual and contextual questionsQuestion Classifier ModuleContextual Question Answering Module…

vue3 | HighCharts实战自定义封装之径向条形图

1.前言 目前正在做vue3的数据可视化项目,vue3的组合式api写法十分方便,可以有各种玩法,有兴趣的同学可以看我个人主页的其他文章。难点是在网上找了一圈的有关径向条形图的示例都没有好的解决方案,决心亲自下手,在其中…

CSP2021初赛游记

csp2022开打,把去年的游记找出来,在这里补了 CSP2021初赛游记 早上7:30去省初门口等crxis,可以和他一起做地铁去,然而最后也就3个学生,准确来说是3个学生加1个家长在等。我当时在微信里和老师说:" 老师你快点过来呀 人好多啊 一大群人在催你 浩浩荡荡 人山人海 局面…

WebKitX ActiveX 5.0.0.15221 Crack

WebKitX ActiveX 封装了 Chromium Embedded Framework (CEF3) 以用于 OLE/COM 语言。Chromium Embedded Framework 封装了 WebKit Blink HTML5 Renderer 和 Google V8 JavaScript Engine。这是一个用于商业用途的生产级稳定组件,将真正在您的桌面和终端应用程序中添…

内网渗透之Msf-Socks代理实战(CFS三层靶场渗透过程及思路)

前言 作者简介:不知名白帽,网络安全学习者。 博客主页:https://blog.csdn.net/m0_63127854?typeblog 内网渗透专栏:https://blog.csdn.net/m0_63127854/category_11885934.html 网络安全交流社区:https://bbs.csdn.ne…

【操作系统】文件系统

文章目录硬盘1 - 基本组成2 - 存储机制Linux文件系统1 - 常见文件类型2 - 文件系统的组成2.1 - 定义2.2 - 作用2.3 - 常见类型2.4 - 分配文件系统3 - 数据存储 层次3.1 - inode表3.2 - Datablock3.3 - Superblock3.4 - GDT 全局描述表4 - 虚拟文件系统 - VFS5 - 软链接与硬链接…

三十页论文与代码已更新 2022数学建模国赛C题 古代玻璃制品的成分分析与鉴别

完整文档获取方式在文章最后 完整文档获取方式在文章最后 完整文档获取方式在文章最后 问题一分析:请在观看问题一分析前先观看附件1数据集的分析与处理(在面包多附件处进行下载)。针对问题1,问题1分为三小问。 首先,需要对玻璃文物的表面风化与其玻璃类型、纹饰和颜色的…

【机器学习】最大期望算法(EM)

1. 什么是EM算法 最大期望算法(Expectation-maximization algorithm,又译为期望最大化算法),是在概率模型中寻找参数最大似然估计或者最大后验估计的算法,其中概率模型依赖于无法观测的隐性变量。 最大期望算法经过两…

day10_类和对象的入门

软件存在的意义就是为了解决现实世界当中的问题,它必然模拟现实世界,也就是说现实世界中有什么,软件中就对应有什么。面向对象编程思想中关注点是“对象”或者“事物”,那么在编程语言当中要想创建对象则必须先有类,那…

C/C++语言的服务器LS调研 (Language Server 实现代码索引 跳转定义 智能提示等功能)

LS是什么 先说一下LSP(Language Server Protocol),它是语言服务器协议,是一种被用于编辑器或集成开发环境 与 支持比如自动补全,定义跳转,查找所有引用等语言特性的语言服务器(LS,(…

Prometheus系列第五篇一核心一ClientLib[java]系统架构

文章目录系统架构架构图架构说明源码架构总结文本协议详细介绍系统架构 架构图 架构说明 类说明CollectorRegister所有Collector的容器,exporter从CollectorRegister获取所有的Metrics度量信息Collector一个Collector为一个metrics的收集器,收集该metrics的labels对应的所有l…

MySQL查询性能优化七种武器之链路追踪

MySQL优化器可以生成Explain执行计划,我们可以通过执行计划查看是否使用了索引,使用了哪种索引? 但是到底为什么会使用这个索引,我们却无从得知。 好在MySQL提供了一个好用的工具 — optimizer trace(优化器追踪&…

报告分享|中国音数协游戏工委:2022中国移动游戏市场广告营销报告

全文链接:http://tecdat.cn/?p=28490 中国音数协游戏工委、中国游戏产业研究院、京师游戏研究实验室、CC-Smart新传智库、腾讯广告共同发布《2022中国移动游戏市场广告营销报告》,报告从政策背景Policy background、市场概览Market Overview、投放特征Launch characteristic…

【UV打印机】理光喷头组合说明(5H)

00. 目录 文章目录00. 目录01. 概述02. 1H2C_4C03. 1H2C_6C04. 1H2C_6C2WV05. 1H2C_2(4C)06. 1H2C_1/n(4CW)07. 1H2C_1/n(6CW)08. 1H2C_4C3WV09. 1H2C_2(4C)W10. 1H2C_4C_CWC11. 1H2C_4C3WPF V12. 1H2C_6C2WPF V13. 附录01. 概述 喷车板:一块GENX_5H 02. 1H2C_4C …

【linux】shell 编程之流程控制语句详解

前言 可以说,在任何一门编程语言中都离不开流程控制语句,使用流程控制语句可以帮助程序处理各类复杂的操作,常用的流程控制语句,比如: if-else,while,for循环等,在linux 的shell 编…