2025年3月一区SCI-真菌生长优化算法Fungal growth optimizer-附Matlab免费代码

news/2025/2/14 4:34:41/

引言

本期介绍了一种新的自然启发的元启发式算法-真菌生长优化算法Fungal growth optimizer,FGO,这是受到自然界真菌生长行为的启发。该算法2025年3月最新发表在中科院1区SCI期刊 Computer Methods in Applied Mechanics and Engineering。

图片

模拟了以菌丝尖端生长、分枝和孢子萌发为代表的真菌生长行为,提出了一种具有多种探索和开发算子的鲁棒优化算法,可以在较高的精度和可接受的时间内解决多个复杂的优化问题。一开始,菌丝在寻找空间中线性生长,寻找营养丰富的区域。然而,这些菌丝可能会由于一些化学和环境条件而改变其生长方向,帮助它们尽可能地探索搜索空间。

1. 初始化。和其他算法一样,采用随机初始化:

图片

2.菌丝尖端生长行为:在合适的条件下,种群中的每个菌丝沿着一条直线扩张,以探索搜索空间,寻找营养最多的区域。然而,某些环境和化学因素可能导致菌丝改变其生长方向。

2.1 增长速度和方向

展示了FGO如何模拟大量菌丝的生长速度和方向,以适当地探索搜索空间。在本研究中,我们使用一个与当前适应度值相关的指数函数来模拟FGO的生长速率,来表示富营养区和贫营养区,适应度值高的解代表富营养区,适应度值低的解代表贫营养区

图片

菌丝的生长方向受到可能突然发生的环境和化学线索的影响。因此,我们随机表示FGO中的生长方向,模拟每个菌丝生长方向可能发生的变化

图片

图片

图片

2.2 趋化行为遗忘和补充策略

在FGO中,开发作业人员基于模仿化学向性行为,根据化学信号开发富营养区或其他区域,以尽快获得更好的解决方案:

图片

图片

3.菌丝分枝和孢子萌发:侧向分支是必不可少的,因为它们允许真菌探索不同的方向,通常会产生强大的勘探操作,使所提出的FGO能够摆脱局部最优,并为几个复杂的优化问题提供出色的解决方案。在本研究中,我们基于两种不同的模式设计了这种行为,这可能有助于尽可能地探索搜索空间

图片

FGO伪代码:

图片

图片

03. 对比验证

原文作者根据四个著名的进化计算大会(CEC)基准(CEC2020、CEC2017、CEC2014和CEC2022)和11个工程设计问题进行评估FGO的。并与最近提出的15种算法以及L-SHADE、LSHADE-cnEpSin、改进的LSHADE-SPACMA、SHADE、LSHADE-SPACMA、GQPSO等11种高性能算法进行了比较,证明了该算法的优越性。

图片

 

参考文献

2025年3月一区SCI-真菌生长优化算法Fungal growth optimizer-附Matlab免费代码

Matlab代码下载

微信搜索并关注-优化算法(英文名:Swarm-Opti),或扫描下方二维码关注,以算法名字搜索历史文章即可下载。

2025年3月一区SCI-真菌生长优化算法Fungal growth optimizer-附Matlab免费代码

2025年3月一区SCI-真菌生长优化算法Fungal growth optimizer-附Matlab免费代码

点击链接跳转:

375种群优化算法免费下载-matlab

https://mp.weixin.qq.com/s/AsFTBmaZ8UOgES9TQuL0Kg?token=1339859150&lang=zh_CN

求解cec测试函数-matlab 

cec2017测试函数使用教程及matlab代码免费下载

cec2018测试函使用教程及matlab代码免费下载

cec2019测试函使用教程及matlab代码免费下载

cec2020测试函使用教程及matlab代码免费下载

cec2021测试函使用教程及matlab代码免费下载

cec2022测试函使用教程及matlab代码免费下载
绘制cec2017/018/2019/2020/2021/2022函数的三维图像教程,SO EASY!

215种群智能优化算法python库

Amazing!Python版215种群智能优化算法https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486669&idx=1&sn=6b439e55b37b6482b8d3831ca85f1d55&chksm=c12be0c8f65c69de71ad51d3b736b871ff52f8646e90624f95dd32b024dfaad369d654aaf8fc#rd

解决12工程设计优化问题-matlab

略微出手,工程设计问题(12)(附Matlab代码)https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247485052&idx=1&sn=80e5573c1c005ee5640e44935044ee35&chksm=c12bea79f65c636fc73758b4f4893502bd89cbd1c5d15d7db15e8b5c94eeae40450439d44944&token=681266555&lang=zh_CN#rd

求解11种cec测试函数-python

【选择自由,免费下载】215种优化算法求解11种cec测试函数-python代码https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486669&idx=2&sn=eea8fb04dc507ab9119e2c97c03ca2f6&chksm=c12be0c8f65c69decd6c8109f6b997986bf58725fdbbd7ab03752cb6f61aacdb5a2dc7fec762#rd

解决30种工程设计优化问题-python

【一码解决】215种优化算法求解30个现实世界的工程设计优化问题,让你的论文增色10倍(附Python代码)https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486669&idx=3&sn=ea6d26ae7cb651e5c368f4c73ade228e&chksm=c12be0c8f65c69de739af72d9793838f59ab77bfee36bc2c204f96e2a9e5c6d87dfbbbae698e#rd

仅需一行,可改进所有优化算法:21种混沌映射方法-混沌初始化(附matlab代码)

用于改进所有优化算法:21种混沌映射方法-混沌初始化(附matlab代码)21种混沌映射方法-混沌初始化,适用于所有优化算法https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486215&idx=2&sn=58f1a69175b0d6431a4c7cdfa114b84d&chksm=c12be702f65c6e14e6bd1ddc33b9cec74991d93303c325853049b7e4afd09039b13083fa79c5&token=25423484&lang=zh_CN#rd

【有经典,有最新】24种信号分解方法(附matlab代码) 

沙场大点兵:24种信号分解方法(附matlab代码)https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486001&idx=1&sn=a87c24cb401017a78a90bd1b1439fcb0&chksm=c12be634f65c6f22368b7229a59ac5ef330b89d710c826dbfd1a1c34a02b1dd7e909c7f40d79&token=25423484&lang=zh_CN#rd

 【分类新范式】27种一维数据转换成二维图像的方法-matlab代码

沙场大点兵:27种一维数据转换成二维图像的方法-matlab代码https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486260&idx=1&sn=81b1970cb89364c0289ccdfb403e5388&chksm=c12be731f65c6e273a85456326b503b7f35d9f035405050932ff1926e0b1bfa8076b1bc2d1f2&token=25423484&lang=zh_CN#rd


http://www.ppmy.cn/news/1571876.html

相关文章

动态规划LeetCode-416.分割等和子集

给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 示例 1: 输入:nums [1,5,11,5] 输出:true 解释:数组可以分割成 [1, 5, 5] 和 [11] 。 示例 2&…

如何在 Java 应用中实现数据库的主从复制(读写分离)?请简要描述架构和关键代码实现?

在Java应用中实现数据库主从复制(读写分离) 一、架构描述 (一)整体架构 主库(Master) 负责处理所有的写操作(INSERT、UPDATE、DELETE等)。它是数据的源头,所有的数据变…

Visual Studio 进行单元测试【入门】

摘要:在软件开发中,单元测试是一种重要的实践,通过验证代码的正确性,帮助开发者提高代码质量。本文将介绍如何在VisualStudio中进行单元测试,包括创建测试项目、编写测试代码、运行测试以及查看结果。 1. 什么是单元测…

Maven 多模块项目管理

1. 什么是 Maven 多模块项目? 在 Maven 中,多模块项目是指一个父项目管理多个子模块的项目结构。每个子模块都可以是一个独立的模块或应用,但都在同一个父 POM 文件的管理下。通过这种结构,团队可以更好地组织大型项目&#xff0…

机器学习数学公式推导笔记

正定方程是凸函数证明 范数 向量的范数与内积 范数例子

1.攻防世界 unserialize3(wakeup()魔术方法、反序列化工作原理)

进入题目页面如下 直接开审 <?php // 定义一个名为 xctf 的类 class xctf {// 声明一个公共属性 $flag&#xff0c;初始值为字符串 111public $flag 111;// 定义一个魔术方法 __wakeup()// 当对象被反序列化时&#xff0c;__wakeup() 方法会自动调用public function __wa…

rabbitMQ数据隔离

用户管理 点击Admin选项卡&#xff0c;就会呈现rabbitMQ控制台的用户管理界面 Name&#xff1a;sde&#xff0c;也就是用户名Tags&#xff1a;administrator&#xff0c;说明sde用户是超级管理员&#xff0c;拥有所有权限Can access virtual host&#xff1a; /&#xff0c;可…

2526考研资料分享 百度网盘

通过网盘分享的文件&#xff1a;01、2026【考研数学】 链接:https://pan.baidu.com/s/1PwMzp_yCYqjBqa7492mP3w?pwd98wg 提取码:98wg--来自百度网盘超级会员v3的分享 通过网盘分享的文件&#xff1a;01、2026【考研政治】 链接:https://pan.baidu.com/s/1PwMzp_yCYqjBqa7492…