蝴蝶优化算法

蝴蝶优化算法

  • 算法简介
    • 香味
    • 具体算法
  • 参考文献

群智能算法学习笔记
笔记内容和仿真代码可能会不断改动
如有不当之处,欢迎指正

算法简介

  蝴蝶优化算法(butterfly optimization algorithm, BOA)是Arora 等人于2019年提出的一种元启发式智能算法。该算法受到了蝴蝶觅食和交配行为的启发,蝴蝶接收/感知并分析空气中的气味,以确定食物来源/交配伙伴的潜在方向。
  蝴蝶利用它们的嗅觉、视觉、味觉、触觉和听觉来寻找食物和伴侣,这些感觉也有助于它们从一个地方迁徙到另一个地方,逃离捕食者并在合适的地方产卵。在所有感觉中,嗅觉是最重要的,它帮助蝴蝶寻找食物(通常是花蜜)。蝴蝶的嗅觉感受器分散在蝴蝶的身体部位,如触角、腿、触须等。这些感受器实际上是蝴蝶体表的神经细胞,被称为化学感受器。它引导蝴蝶寻找最佳的交配对象,以延续强大的遗传基因。雄性蝴蝶能够通过信息素识别雌性蝴蝶,信息素是雌性蝴蝶发出的气味分泌物,会引起特定的反应。
  通过观察,发现蝴蝶对这些来源的位置有非常准确的判断。此外,它们可以辨识出不同的香味,并感知它们的强度。蝴蝶会产生与其适应度相关的某种强度的香味,即当蝴蝶从一个位置移动到另一个位置时,它的适应度会相应地变化。当蝴蝶感觉到另一只蝴蝶在这个区域散发出更多的香味时,就会去靠近,这个阶段被称为全局搜索。另外一种情况,当蝴蝶不能感知大于它自己的香味时,它会随机移动,这个阶段称为局部搜索

香味

  为了理解BOA中的香味是如何计算的,首先需要理解,像气味、声音、光、温度等这样的模态是如何计算的。感知、处理这些模态需要知道三个重要的术语:感觉模态C、刺激强度I和幂指数a。在感觉模态中,感觉意味着测量能量的形式并以类似方式对其进行处理,而模态是指传感器使用的原始输入。不同的形态可以是气味,声音,光线,温度,在BOA中,模态是香味I是物理刺激的大小。在BOA中,I与蝴蝶/解决方案的适应度相关。这意味着,当一只蝴蝶散发出更多的香味时,周围的其他蝴蝶可以感知到并被吸引。幂是强度增加的指数。参数a允许正则表达式、线性响应和响应压缩。响应扩展是当I增加时,香味(f)比I增长更快。响应压缩是当I增加时,f比I增长慢。线性响应是当I增加时,f成比例地增加。经实验证明,有时随着刺激的增强,昆虫对刺激变化的敏感性变得越来越低。因此在BOA中,为了估计I的大小,使用了响应压缩。
  蝴蝶的自然现象基于两个重要问题:I的变化和f的表示。简单地说,蝴蝶的I与编码后的目标函数相关联。但是,f是相对的,即应该由其他蝴蝶来感知。史蒂文斯幂定律中,为了将气味与其他形式区别开来,使用了C。现在,当I较少的蝴蝶向I较多的蝴蝶移动时,f比I增加得更快。因此,我们应该允许f随幂指数参数a实现的吸收程度而变化。在BOA中,香味被表示为刺激物的物理强度的函数,如下所示:
在这里插入图片描述.
其中f为香味的大小,即其他蝴蝶感知到的香味强度,c 为感官模态,在[0,1]之间取值;I 为刺激强度;a 为幂指数,在[0,1]之间取值。在一个极端情况下,a=1,意味着一只特定蝴蝶发出的香气量被其他蝴蝶以同样的能力感知到,这相当于说香味是在理想化的环境中传播的,在这个区域的任何地方都可以感觉到一只散发着香味的蝴蝶。因此,可以很容易地达到单个(通常是全局的)最优值。另一方面,如果a=0,这意味着任何一只蝴蝶散发出的香味都不会被其他蝴蝶感觉到。所以,参数a控制算法的行为。另一个重要参数是c,它也是决定BOA算法收敛速度和性能的关键参数。理论上c∈[0,∞],但实际上是由待优化系统的特性决定的。A和c的取值对算法的收敛速度有重要影响。在最大化问题中,强度可以与目标函数成正比。

具体算法

  为了用搜索算法演示上述讨论,将蝴蝶的上述特征理想化如下:
1.所有的蝴蝶都可以发出气味,这使蝴蝶间相互吸引。
2.每只蝴蝶都会随机移动或朝最好的蝴蝶移动,散发出更多的芳香。
3. 蝴蝶的刺激强度受目标函数的景观影响或决定。
该算法分为三个阶段:(1)初始化阶段、(2)迭代阶段和(3)结束阶段。
  在BOA的每次运行中,首先执行初始化阶段,然后进行迭代搜索,最后在找到最优解时终止算法。BOA中使用的参数值也会被分配,设置这些值后,算法将继续创建初始蝴蝶种群以进行优化。由于在BOA的模拟过程中蝴蝶总数保持不变,分配了一个固定大小的内存来存储信息。蝴蝶的位置是在搜索空间中随机生成的,并计算和存储它们的香味和适应值。这样就完成了初始化阶段,算法开始了迭代阶段,该阶段使用创建的人工蝶形执行搜索。算法的第二阶段,即迭代阶段,由算法执行多次迭代。在每次迭代中,解空间中的所有蝶形都移到新位置,然后重新评估其适应性值。算法首先计算解空间中不同位置的所有蝴蝶的适应度值。那么这些蝴蝶就会利用式1在自己的位置产生香味。该算法有两个关键步骤,即全局搜索阶段和局部搜索阶段。在全局搜索阶段,蝴蝶向最合适的蝴蝶/解g∗迈出一步,该蝴蝶/解g可以用公式(2)来表示。
在这里插入图片描述
这里,g表示在当前迭代的所有解中找到的当前最佳解;fi表示第i只蝴蝶的香味,r是[0,1]中的随机数。局部搜索阶段可以表示为
在这里插入图片描述
其中,xjt和xkt是解空间中的第j个蝴蝶和第k个蝴蝶。
  蝴蝶寻找食物、交配伙伴可以在局部和全局范围内发生。考虑到地理上的接近和各种其他因素,如雨、风等,在整个交配伙伴或蝴蝶的觅食活动中,寻找食物可能占很大比例。因此,在BOA中使用切换概率p来在普通全局搜索和密集局部搜索之间切换。
  在未达到停止标准之前,一直进行迭代。迭代结束的标准可以有多个,如使用的最大CPU时间、达到的最大迭代次数、没有改进的最大迭代次数、达到错误率的特定值或任何其他适当的标准。当迭代阶段结束时,算法输出具有最佳适应度的最优解。

参考文献

[1] Arora S, Singh S. Butterfly optimization algorithm: a novel approach for global optimization[J]. Soft Computing. 2019, 23(3): 715-734.

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

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

相关文章

仿生机器人知识体系

仿生机器人最核心的是模仿行为。 机器人控制算法 PID控制(比例积分微分控制) 根据给定值和实际输出值构成控制偏差,将偏差按比例、积分和微分通过线性组合构成控制量,对被控制对象进行控制。 ZMP零力矩点 判定仿人机器人动态…

字节跳动将双月OKR调整为季度;马斯克批OpenAI违背初心:被微软控制,只顾赚钱;苹果上新348元省电保护膜|极客头条...

「极客头条」—— 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。 整理 | 梦依丹 出品 | CSDN(ID:CSDNnews) 一分钟速览新闻点&#…

BFT 最前线 | OpenAI开放网络浏览和插件;“360AI商店”上线;Bing市场份额不升反降;亚马逊机器人配送中心投产

原创 | BFT机器人 AI视界 TECHNOLOGY NEWS 01 OpenAI将向所有ChatGPT Plus用户推出网络浏览和插件 OpenAI将向所有ChatGPT Plus用户推出网络浏览和插件近日,OpenAI发文称,将在本周(5.15-5.21日)内向所有ChatGPT Plus用户推出网络…

LLMs开源模型们和数据集简介

本篇文章整理下目前常用的LLMs模型们和数据集简介。 BackBones ​https://github.com/FreedomIntelligence/LLMZoo 可以看到目前被广泛用来作为LLMs的backbone的模型有以下特点: Backbone:基于某个开源backbone,如GLM、LLaMA、BLOOMZ&#…

谷歌将推出新工具以识别虚假信息和AI生成内容;ChatGPT开放投资组合分析功能;网信办打击滥用AI虚拟主播等行为丨每日大事件...

‍ ‍数据智能产业创新服务媒体 ——聚焦数智 改变商业 企业动态 后摩智能发布存算一体智驾芯片鸿途H30 5月15日,后摩智能发布首款存算一体智驾芯片 —— 鸿途H30,最高物理算力256TOPS,典型功耗35W。鸿途H30基于SRAM存储介质,采用…

分享一个程序员接私活、兼职的平台

分享一个程序员接私活、兼职的平台 1、技术方向满足任一即可2、技术要求3、最后 1、技术方向满足任一即可 Python:熟练掌握Python编程语言,能够使用Python进行数据处理、机器学习和深度学习等相关工作。 MATLAB:熟练掌握MATLAB编程语言&…

最担心的还是发生了,程序员失业来得太突然!

周末我在后台收到一条私信,事情很有代表性,这里分享一下。 这位老哥在一家互联网头部公司做了 6 年的技术,最好的年纪都留在了这家公司。上个月底,赶上所在的部门重组。 公司动作很快,开完年中回顾会就裁掉了一批人&am…

猿如意初体验!赞一个。

目录 功能一:chatGPT 功能二、对 “效率工具”的试体验! 功能三:教程文档 最后总结 猿如意传送门猿如意下载地址:猿如意-程序员的如意兵器,工具代码,一搜就有 猿如意使用了几次了,今天来想分享一下我对于猿如意的…

如意如意猿如意

如意如意猿如意 什么是猿如意猿如意效率工具JSON编辑器jsontojava 开发工具ChatGPT 推荐指数评分及改进意见UI界面效率工具和开发工具ChatGPT一行代码 总结 经常听到一句话:如意如意随我心意,作为程序猿,我也想要一个如意,心中默念…

CSDN官方猿如意工具体验

2022年注定是不平凡的一年,2022再见,2023你好! 2023愿我们发财,被爱,一路好运常在!愿所念之人平安喜乐,所想之事顺心如意,岁岁常欢喜,万事皆胜意! 猿如意工具…

【附源码】国内首届Discord场景创意编程开源项目

以下开源项目是由环信联合华为举办的《国内首届Discord场景创意编程赛》作品,附源码,一键即用。 一、 模拟器游戏直播-新新人类 新新人类模拟器游戏直播基于环信超级社区Demo构建,增加以“video-x”命名的新型Channel,用户可在本…

学霸福音!用ChatGPT做思维导图,整理读书笔记从未如此轻松

背景说明: 罗永浩《我的奋斗》这本书,我在参加一场线上读书会分享过,原文在这里。当时演示的时候,使用的是思维导图的模式。我在想,如果给ChatGPT设定一个读书会讲书人的身份,它会怎么讲?下面我…

三分钟4行命令构建chatgpt webapp,支持高并发以及上下文对话功能

个人主页:https://yang1he.gitee.io 干货会越来越多的,欢迎来玩 三分钟4行命令构建chatgpt webapp,支持高并发以及上下文对话功能 纯纯不是标题党,昨天找了一下午,有用flask框架的,有还得qtdesinger框架的,这不纯纯骗小…

ChatGPT是什幺?GPT-4厉害在哪?跟过去几代有差吗?一篇看懂最强AI红什幺

ChatGPT是什幺?GPT-4厉害在哪?跟过去几代有差吗?一篇看懂最强AI红什幺 多年来,人工智能(AI)统治世界一直是许多人担忧、且并非不可能的事,但谁知道,这会从艺术和文学领域开始呢&…

ChatGPT考高翻,能过国家线吗?

1 天前 ChatGPT云炬学长 ​关注 让ChatGPT考国内顶尖高翻学院的研究生,有多大胜算?能得多少分?能过国家线吗? 这实在是一个有趣的话题。ChatGPT,如今的AI顶流,成色如何,想必大家多少都有一点…

VNC“No configured security type is supported by 3.3 viewer“的解决办法!亲测有效

在使用vnc访问树莓派的时候,一直显示这个错误,明明什么都配置好了。 然后搜索网上教程,有一个说着特别屌的教程,说什么照着输就好了,结果照着命令输也没用。 后来我问了下chatgpt 结果就能正常访问了,困…

USB串口通信,树莓派使用GPIO口,收发16进制数组的Python代码

工控机和树莓派采用USB转TTL串口通信,后者使用GPIO口,收发16进制数组的Python代码 接线 采用USB转TTL模块,Linux系统的工控机接USB插口,TTL模块输出RX、TX、VCC、GND,树莓派的GPIO14口也就是RXD0接TTL串口的TX。 在树…

配置树莓派作为一个Access Point(AP)

配置树莓派作为一个Access Point(AP) WLAN实验配置树莓派的内容: SSH(使用Laptop方便打开树莓派命令行界面) Hostapd v2.3或者最新版本 iperf2 配置SSH连接 SSH(Secure Shell)是一种用于安…

本人亲测树莓派4B ubuntu20.04server连接wifi 设置wifi静态ip 连接Xshell 详细避坑

一.前言 遇到的坑 镜像安装 网上有很多教程,注意的是我安装20.04MATE版时会出现安装系统崩溃的情况,而安装server版本则不会。 我的显示器是24寸,在连接显示器时需要在usercfg.txt中键入如下命令: framebuffer_width1920 framebuf…

SCI投稿Title Page、Cover letter、Highlights、Manuscript模板

参考: SCI投稿Cover letter模板 SCI 投稿全过程信件模板一览(Cover letter,催稿信等) SCI 投稿 3 个月迟迟无消息,竟只是漏了这个步骤… elsevier初次投稿模板 最新投稿信 Cover Letter 和Highlights 模板资料 1.第一…