推荐一个一区优化算法——常青藤优化,MATLAB代码免费获取

注:该算法已按照智能优化算法APP标准格式进行整改,可直接集成到APP中,方便大家与自己的算法进行对比。

常青藤优化算法(Ivy algorithm,IVYA)的灵感来自常春藤植物的生长模式,该算法模拟了协调有序的种群增长以及常春藤植物的传播和进化。常春藤植物的生长速率是使用微分方程和数据密集型实验过程建模的。该算法利用附近常春藤植物的知识来确定生长方向。此外,该算法通过选择最近和最重要的邻居进行自我提升来模仿常春藤植物在自然界中的行为。

该成果于2024年发表在计算机领域一区期刊Knowledge-Based Systems上。

常春藤是一种沿着地面爬行并在夏季开花的植物。这种植物是一种常绿的地被植物,可以快速适应各种环境条件。它灵活的茎可以在数月或数年内生长并隐藏在绿色栅栏下。创建常春藤的主要种群作为候选解决方案。在提出的IVYA中研究和种群搜索的步骤:第一步:协调有序的种群增长;第二步:常春藤植物的阳光来源并推动其生长;第三步:常春藤植物的传播和进化。

1.算法原理

(1) 常春藤树的主要种群作为解决方案的候选者 原文中,设定种群成员的数量为Npop,问题的决策变量数量为D。因此,第i个种群成员表示为 ,其中i = 1,2,...,Npop,常春藤植物的总种群记为 。

在算法的初始阶段,IVYA种群在搜索空间中的位置是通过以下公式随机确定的:

其中,rand(1,D)表示一个从区间[0,1]均匀分布中生成的随机数向量,D是向量的维数。Imax和Imin分别代表搜索空间的上界和下界,两个向量的Hadamard乘积由运算 表示。

(2) IVYA算法中的搜索和种群搜索步骤

步骤1.协调有序的人口增长

常春藤是一种随着时间推移而生长的爬行植物,在本文中,假设常春藤的生长速率 是由以下微分方程给出的时间函数:

其中, 和 分别表示生长速率和与生长相关的偏差校正因子。在本算法中,该公式基于数据密集的实验和模拟过程,通过生长速率 的差分方程来建模: 

其中, 和 分别表示离散时间系统中的生长率(在时刻t和t+1),rand是从区间[0,1]均匀分布中抽取的随机实数, ,其概率密度函数为 。 表示一个D维的随机向量,其分量为来自标准高斯(正态)分布的随机数。

步骤2. 生长作为获得阳光来源的手段

为了在自然界中保持常春藤的整体健康,找到一个附着表面(如墙壁、岩石或树木)并快速朝着阳光生长是至关重要的。在野外,幼小的常春藤通常会选择自己生长的方向,朝着最近的一棵树生长,很多时候,这棵树附近已经有其他常春藤作为支撑。这样,常春藤便能在森林中迅速蔓延。

IVYA算法通过模拟常春藤的行为来体现这一过程。每个成员 会选择一个最接近且最具生命力的邻居 (根据适应度函数的值),如下图所示。如果我们将按适应度排序的个体序列记为 ,则有:

 

以下等式描述了成员 如何使用成员 沿着光源的方向进行攀爬和移动:

其中, 表示向量 的绝对值,运算 表示 与 的Hadamard乘积。

步骤3. 常春藤植物的传播与进化

在个体 完成对最近邻居 的全局搜索后,进入个体 尝试直接跟随群体中最佳个体 的阶段,这相当于在 附近寻找更优解。该阶段在IVYA的第 步中数学公式化如下:

随后,通过以下公式计算当前个体 的增长率 的新值:

(3) 幸存者选择

为了模拟常春藤生命中的“攀爬”和“扩展”两个交替阶段,在IVYA算法中,采用了以下决策方法:当成员 的目标函数值 小于 乘以 时,常春藤会在宽度方向扩展树枝和叶片;否则,常春藤则会继续向上生长和攀爬。

在IVYA中,每次迭代结束后,来自上一代算法的群体 与当前迭代中生成的新群体 合并,得到新的列表 ,然后按适应度对这些成员进行排序,从最优到最劣排列,形成矢量 。接着,选择前Npop名最优成员作为当前种群的最终成员 。

IVYA算法的伪代码如下图所示。

2.结果展示

老规矩,采用作者独创的智能优化算法APP轻松对比一下本期的IVY算法。

随机选个函数集,就选CEC2017函数集吧!

轻松与各大常见的、较新的优化算法进行对比(SSA,PSO,GWO,HHO,IVY),其中IVY就是本文的常青藤算法啦。

F1函数:

F3函数:

F5函数:

F8函数:

也可以轻松在各大经典的工程问题中进行算法对比:

减速器的重量最小化问题:

行星轮系设计问题:

压力容器设计问题:

活塞杆设计问题:

综上可以看出,IVY(常青藤算法)本身还是具有极强的搜索能力!效果很不错,值得研究。

3.MATLAB核心代码

   4.参考文献

参考文献 [1] Ghasemi M, Zare M, Trojovský P, et al. Optimization based on the smart behavior of plants with its engineering applications: Ivy algorithm[J]. Knowledge-Based Systems, 2024, 295: 111850.

常青藤算法完整代码获取

点击下方卡片,后台回复关键词:

TGDM840

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

淘个代码_

不想刀我的可以选择爱我

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值