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

【粒子群算法和蝴蝶算法组合】粒子群混沌混合蝴蝶优化算法研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现


💥1 概述

文献来源:

摘要:为了解决蝴蝶优化算法(BOA)精度低、收敛速度慢的问题,将两种或两种以上的算法进行杂交以获得优化问题的优解是研究的趋势。提出了一种新的混合算法HPSOBOA,并介绍了三种改进基本BOA的方法。因此,引入了基于一维三次映射的BOA初始化方法,并采用了非线性参数控制策略。此外,将粒子群优化(PSO)算法与BOA算法相结合,改进了全局优化的基本BOA算法。通过两个实验(包括26个知名的基准函数)验证了所提算法的有效性。实验对比结果表明,与PSO、BOA等已知群优化算法相比,混合HPSOBOA算法收敛速度快,在高维数值优化问题上具有更好的稳定性。

蝴蝶优化算法(BOA)由Arora和Singh于2018年提出[1]。

该算法的方法和概念最早在2015年国际信号处理、计算与控制会议(2015 ISPCC)上提出[2]。该算法提出后,作者对BOA进行了大量的研究。Arora和Singh[3]提出了一种改进的带有十个混沌映射的蝴蝶优化算法,用于解决三个工程优化问题。Arora和Singh[4]提出了一种新的混合优化算法,将标准BOA与人工蜂群(Artificial Bee Colony, ABC)算法相结合。Arora和Singh[5]利用BOA求解无线传感器网络中的节点定位问题,并将结果与粒子群优化算法(particle swarm optimization, PSO)和萤火虫算法(firefly algorithm, FA)进行了比较。Arora等[6]提出了一种改进的蝶形优化算法来解决机械设计优化问题。Singh和Anand[7]提出了一种新的自适应蝴蝶优化算法,这是一种改变基本BOA感觉模态的新现象。Sharma和Saha[8]提出了一种新的混合算法(m-MBOA),利用共生生物搜索(symbiosis organisms search, SOS)的互助阶段来增强BOA的开发能力。Yuan等[9]提出了一种改进的蝶形优化算法,根据年成本、能源效率和污染物减排等因素对系统性能进行优化分析。Li等[10]利用交叉熵方法提出了一种改进的工程设计问题BOA。

此外,所提出的优化算法根据其原理主要分为三类,其中著名的元启发式算法主要包括进化算法:遗传算法(Genetic algorithm, GA)[15,16]、差分进化算法(Differential Evolution, DE) [17];群体智能算法:粒子群算法(Particle swarm Optimization, PSO)[18]、蚁群算法(Ant Colony Optimization, ACO)[19]、人工蜂群算法(Artificial Bee Colony, ABC) [20];基于物理的算法:引力搜索算法(GSA)[21]、正弦余弦算法(SCA)[22]和Henry气溶解度优化算法(HGSO)[23]。近十年来,学者们提出了许多新的基于自然界动物行为的群体智能优化算法,也称为自然启发式算法,如蝙蝠启发算法(BA)[24]、磷虾群算法(KH)[25]、果蝇优化算法(FOA)[26]、灰狼优化算法(GWO)[27]、蛾焰优化算法(MFO)[28]、鲸鱼优化算法(WOA)[29]、Salp群算法(SSA)[30]、Grasshopper Optimization Algorithm (GOA)[31]和Marine predator Algorithm (MPA)[32]。要了解更多细节,读者可以参考论文[33-35],其中对最近和流行的算法进行了很好的回顾。

介绍了各种智能优化算法的混合算法和粒子群算法的研究现状。Zhen等[36]提出了一种新的模因算法,称为shuffle particle swarm optimization (SPSO),该算法将PSO与shuffle frog jumping algorithm (SFLA)相结合。Niu和Li[37]提出了一种结合PSO和DE的新型混合全局优化算法PSODE。Lai和Zhang[38]提出了一种结合PSO和GA的新型混合算法,并给出了23个基准问题的实验。Mirjalili和Hashim[39]提出了一种新的混合PSOGSA算法用于函数优化。Wang等[40]提出了一种基于磷虾群和量子粒子群优化(QPSO)的混合算法,用于基准和工程优化。Trivedi等[41]提出了一种新的混合PSO-DA算法,将PSO算法与蜻蜓算法(dragonfly algorithm, DA)相结合,进行全局数值优化。Trivedi等[42]针对全局数值优化问题提出了一种新的PSOWOA算法。Laskar等[43]在对粒子群算法和其他元启发式算法混合算法进行研究的基础上,提出了一种新的用于电子设计优化问题的混合HWPSO算法。此外,粒子群算法与BOA在结构上有一定的相似性,研究一种新的粒子群算法与BOA的混合算法具有重要意义。

📚2 运行结果

可视化:

%% plots
figure('Position',[500 400 800 200])  %[left bottom width height]
subplot(1,2,1);
func_plot_con(Function_name);
title(Function_name)
% xlabel('x_1');
% ylabel('x_2');
% zlabel([Function_name,'( x_1 , x_2 )'])

%% Convergence curves 
subplot(1,2,2);
semilogy(BOA_cg_curve,'b-','LineWidth',1)
hold on
semilogy(PSOBOA_cg_curve,'g-','LineWidth',1)
hold on
semilogy(HPSOBOA_cg_curve,'r-','LineWidth',1)

% axis tight
% grid off
xlabel('Iterations');
ylabel('Fitness value');
legend('BOA','PSOBOA','HPSOBOA')

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

🌈4 Matlab代码实现

http://www.lryc.cn/news/98210.html

相关文章:

  • Java设计模式之单例模式详解(懒汉式和饿汉式)
  • 软件测试基本知识
  • Vue项目中强制刷新页面的方法
  • 文件按关键字分组-切割-染色-写入excel
  • 爬虫的基本原理:爬虫概述及爬取过程
  • cocos2D插件转3D插件
  • [Angular] 主从表结构,从表记录在主表固定栏位上呈现
  • Kotlin Multiplatform 创建多平台分发库
  • [SQL挖掘机] - union/union all 使用注意事项
  • php 单例模式
  • 【数据结构】实验二:顺序表
  • 【高级数据结构】线段树
  • qt简易闹钟
  • python和c加加有什么区别,c和c++和python先学哪个
  • Visual Studio 2022 cmake配置opencv开发环境
  • C++ GDAL找出多时相遥感影像缺失的日期并自动生成新的全零图像作为替补
  • 【AI底层逻辑】——篇章5(下):机器学习算法之聚类降维时间序列
  • P1980 [NOIP2013 普及组] 计数问题
  • 需求管理全过程流程图及各阶段核心关注点详解
  • Android开源 自定义emoji键盘,EmojiPack v2.1版本
  • SOLIDWORKS软件的优势分析 硕迪科技
  • Android性能优化之游戏的Theme背景图
  • 网络安全(黑客)系统自学,成为一名白帽黑客
  • lua学习-2 常见运算符
  • 【图像处理】使用 OpenCV 将您的照片变成卡通
  • 暖手宝UL认证 亚马逊UL测试报告 UL499测试项目
  • ES6模块化与异步编程高级用法
  • spring-cloud-starter-gateway 4.0.6负载均衡失败
  • Tomcat注册为Windows服务
  • 【Maven】Maven 中 pom.xml 文件