【智能算法】蜉蝣算法(MA)原理及实现

在这里插入图片描述

目录

    • 1.背景
    • 2.算法原理
      • 2.1算法思想
      • 2.2算法过程
    • 3.结果展示
    • 4.参考文献


1.背景

2020年,K Zervoudakis等人受到自然界蜉蝣交配繁殖行为启发,提出了蜉蝣算法(Mayfly Algorithm, MA)。
在这里插入图片描述
在这里插入图片描述

2.算法原理

2.1算法思想

MA灵感来自蜉蝣交配过程, 每只蜉蝣在空间位置上代表了问题的可行解。MA 先产生两组蜉蝣, 分别代表雄性和雌性种群,蜉蝣的飞行方向是个体和社会经验的交互作用, 而每只蜉蝣会调整自己的轨迹, 朝着个体最优以及全局最优位置移动。

2.2算法过程

雄性蜉蝣运动更新

雄性蜉蝣成群地聚集, 每只雄性蜉蝣的位置是根据临近经验调整自身位置:
x i ι + 1 = x i t + v i ι + 1 (1) x_i^{\iota+1} = x_i^t + v_i^{\iota+1}\tag{1} xiι+1=xit+viι+1(1)
雄性蜉蝣在水面上表演舞蹈,蜉蝣不断的移动,速度更新为:
v i t + 1 = v i t + a 1 e − β r p 2 ( p b e s t i − x i t ) + a 2 e − β r g 2 ( g b e s t − x i t ) (2) \boldsymbol{v}_{i}^{t+1} =\boldsymbol{v}_{i}^{t} + a_{1} \mathrm{e}^{-\beta r_{\mathrm{p}}^{2}}\left(\boldsymbol{p}_{\mathrm{best}_{i}}-\boldsymbol{x}_{i}^{t}\right) + a_{2} \mathrm{e}^{-\beta r_{\mathrm{g}}^{2}}\left(\boldsymbol{g}_{\mathrm{best}}-\boldsymbol{x}_{i}^{t}\right)\tag{2} vit+1=vit+a1eβrp2(pbestixit)+a2eβrg2(gbestxit)(2)

PS:和PSO速度更新类似,权重系数为自适应参数

其中, β \beta β为蜉蝣定能见度系数; rp 为当前位置和 pbesti 之间的笛卡尔距离; rg 为当前位置和gbest之间的笛卡尔距离:
∥ x i − X i ∥ = ∑ j = 1 n ( x i − X i ) 2 (3) \parallel\boldsymbol{x}_i -\boldsymbol{X}_i\parallel = \sqrt{\sum_{j=1}^n (\boldsymbol{x}_i -\boldsymbol{X}_i)^2}\tag{3} xiXi∥=j=1n(xiXi)2 (3)
为了得到更好的位置, 团队中最好的蜉蝣继续表演舞蹈, 更新速度:
v i t + 1 = v i t + d r (4) v_i^{t+1} = v_i^t + dr\tag{4} vit+1=vit+dr(4)
其中,d为舞蹈系数。

雌性蜉蝣运动更新

雄性蜉蝣容易聚集而雌性蜉蝣不会群体聚集,但是雌性蜉蝣会飞来与雄性蜉蝣交配繁殖。雌性蜉蝣的位置通过增加速度来更新, 位置更新:
y i t + 1 = y i t + v i t + 1 (5) y_i^{t+1}=y_i^t+v_i^{t+1}\tag{5} yit+1=yit+vit+1(5)
最好的雌性吸引最优秀的雄性, 次优的雌性吸引次优的雄性,速 度更新:
ν i t + 1 = ν i t + α 2 e − β r m f 2 ( x i j t − y i j t ) , f ( y i ) > f ( x i ) ν i t + 1 = ν i t + f 1 r , f ( y i ) ≤ f ( x i ) (6) \begin{aligned}&\boldsymbol{\nu}_i^{t+1}=\boldsymbol{\nu}_i^t+\alpha_2\mathrm{e}^{-\beta r_{mf}^2}(\boldsymbol{x}_{ij}^t-\boldsymbol{y}_{ij}^t)\text{,}f(\boldsymbol{y}_i)>f(\boldsymbol{x}_i)\\&\boldsymbol{\nu}_i^{t+1}=\boldsymbol{\nu}_i^t+f_1\boldsymbol{r},f(\boldsymbol{y}_i)\leq f(\boldsymbol{x}_i)\end{aligned}\tag{6} νit+1=νit+α2eβrmf2(xijtyijt),f(yi)>f(xi)νit+1=νit+f1r,f(yi)f(xi)(6)
其中,a2为吸引力常数,rmf为雌性蜉蝣距离。

蜉蝣交配

雄性蜉蝣根据适应度函数选择雌性蜉蝣进行交配:
o f f 1 = L m a l e + ( 1 − L ) f e m a l e o f f 2 = L f e m a l e + ( 1 − L ) m a l e (7) \mathrm{off}_1 = Lm_{\mathrm{ale}} + (1 - L)f_{\mathrm{emale}}\\\mathrm{off}_2 = Lf_{\mathrm{emale}} + (1 - L) m_{\mathrm{ale}}\tag{7} off1=Lmale+(1L)femaleoff2=Lfemale+(1L)male(7)

伪代码

在这里插入图片描述

3.结果展示

使用测试框架,测试MA性能 一键run.m

  • 【智能算法】省时方便,智能算法统计指标——一键运行~

CEC2017-F1

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.参考文献

[1] Zervoudakis K, Tsafarakis S. A mayfly optimization algorithm[J]. Computers & Industrial Engineering, 2020, 145: 106559.

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

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

相关文章

OSPF的协议特性

路由汇总的概念 l 路由汇总( Route Aggregation ),又称路由聚合(Route Summarization),指的是把一组明细路由汇聚成一条汇总路由条目的操作 l 路由汇总能够减少路由条目数量、减小路由表规模&#xff0…

Coze玩转ChatGPT-4,存算解决大模型算力

随着神经网络技术的不断发展,特别是在Transformer架构兴起之后,模型规模呈指数级增长。2023年3月,ChatGPT-4正式发布,ChatGPT-4具有联网搜索、图片生成、自建GPTs等多项重磅功能,在各个方面吊打其他大语言模型&#xf…

Linux 调度优先级

Linux中的每个任务都有其优先级。这个优先级的范围从-20到19。优先级越低(-20),分配 给任务的CPU时间就越多。默认的优先级是0。 并非所有的任务都需要使用相同的优先级。交互式应用要求快速响应,通过 crontab 运行的后台…

做抖店新店一个月卖了20万,仿佛回到了两年前的抖店

大家好,我是电商花花。 前段时间,又开了一家抖店,这家店主营的就是玩具类目,这家店可以说是今年店铺中跑的最好的一个店铺,刚运营一个月时间卖了20多万,纯靠达人带货出单。 这个红利让我想起来了两年的抖…

DS:单链表的实现

欢迎各位来到 Harper.Lee 的编程学习小世界! 博主主页传送门:Harper.Lee的博客 我将在这里分享我的学习过程等心得 创作不易,码字不易,兄弟们养成先赞后看的好习惯哦! 想一同进步的uu,可以来后来找我哦&…

【论文速读】|理解基于大语言模型的模糊测试驱动程序生成

本次分享论文:Understanding Large Language Model Based Fuzz Driver Generation 基本信息 原文作者:Cen Zhang, Mingqiang Bai, Yaowen Zheng, Yeting Li, Xiaofei Xie, Yuekang Li, Wei Ma, Limin Sun, Yang Liu 作者单位:南洋理工大学…

stable-diffusion-webui安装与使用过程中的遇到的error合集

stable-diffusion-webui1.9.2踩坑安装 1. 安装过程1.1 stable-diffusion-webui1.2 在win11或win10系统安装,需修改两个启动脚本1.2.1 修改webui-user.bat1.2.2 修改webui.bat 1.3 双击 webui-user.bat 启动脚本1.3.1 no module xformers. Processing without on fre…

【八股】Spring Boot

SpringBoot是如何实现自动装配的? 首先,SpringBoot的核心注解SpringBootApplication里面包含了三个注解,SpringBootConfigurationEnableAutoConfigurationComponentScan,其中EnableAutoConfiguration是实现自动装配的注解&#x…

(windows ssh) windows开启ssh服务,并通过ssh登录该win主机

☆ 问题描述 想要通过ssh访问win主句 ★ 解决方案 安装ssh服务 打开服务 如果这里开不来就“打开服务”,找到下面两个开启服务 然后可以尝试ssh链接,注意,账号密码,账号是这个: 密码是这个 同理,如果…

给大家推荐一个宝藏资源库

资源库酷酷 本星球致力于整理收集互联网上各种资源,包括但不限于网络安全相关资料、各种网盘资源、行业报告,各种软件等等,有什么其他需求欢迎留言,我会知无不言,言无不尽,欢迎大家加入交流。 更多资源可加…

操作系统和案例融合

打开一张图片,电脑发生什么? 创建一个文件,电脑发生什么? 双击打开qq程序,电脑发生什么? https://www.bilibili.com/video/BV1MU4y1d7LH/?spm_id_from333.1007.top_right_bar_window_history.content.clic…

Windows搭建php文件管理服务Tiny File Manager并发布至公网可访问

文章目录 1. 前言2.Tiny File Manager网站搭建2.1.Tiny file manager下载和安装2.2 Tiny file manager网页测试2.3 内网穿透工具下载安装 3. 本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试总结 1. 前言 今天,笔者就为大家介绍一款只有两个文件…