2024最新算法:吸血水蛭优化器(Blood-Sucking Leech Optimizer,BSLO)求解23个函数,MATLAB代码

一、算法介绍

吸血水蛭优化器(Blood-Sucking Leech Optimizer,BSLO)是2024年提出的一种智能优化算法,该算法模拟了水蛭的探索、定向水蛭的利用、定向水蛭的切换机制、无方向水蛭的搜索策略和重新跟踪策略。

参考文献:

[1]Bai, Jianfu, et al. "Blood-Sucking Leech Optimizer." Advances in Engineering Software, vol. 195, Elsevier BV, Sept. 2024, p. 103696, doi:10.1016/j.advengsoft.2024.103696

二、23个函数简介

参考文献

[1] Yao X, Liu Y, Lin G M. Evolutionary programming made faster[J]. IEEE transactions on evolutionary computation, 1999, 3(2):82-102.

三、部分代码

复制代码
close all ;
clear
clc
Npop=30;               
Function_name='F1';     % Name of the test function that can be from F1 to F23 ( 
Tmax=300;              
[lb,ub,dim,fobj]=Get_Functions_details(Function_name);
[Best_fit,Best_pos,Convergence_curve]=(Npop,Tmax,lb,ub,dim,fobj);
figure('Position',[100 100 660 290])
%Draw search space
subplot(1,2,1);
func_plot(Function_name);
title('Parameter space')
xlabel('x_1');
ylabel('x_2');
zlabel([Function_name,'( x_1 , x_2 )'])
%Draw objective space
subplot(1,2,2);
semilogy(Convergence_curve,'Color','r','linewidth',3)
title('Search space')
xlabel('Iteration');
ylabel('Best score obtained so far');
axis tight
grid on
box on
legend('')
saveas(gca,[Function_name '.jpg']);
display(['The best solution is ', num2str(Best_pos)]);
display(['The best fitness value is ', num2str(Best_fit)]);

四、部分结果

五、完整MATLAB代码

相关推荐
Watermelo6172 分钟前
详解js柯里化原理及用法,探究柯里化在Redux Selector 的场景模拟、构建复杂的数据流管道、优化深度嵌套函数中的精妙应用
开发语言·前端·javascript·算法·数据挖掘·数据分析·ecmascript
乐之者v7 分钟前
leetCode43.字符串相乘
java·数据结构·算法
A懿轩A1 小时前
C/C++ 数据结构与算法【数组】 数组详细解析【日常学习,考研必备】带图+详细代码
c语言·数据结构·c++·学习·考研·算法·数组
古希腊掌管学习的神1 小时前
[搜广推]王树森推荐系统——矩阵补充&最近邻查找
python·算法·机器学习·矩阵
云边有个稻草人1 小时前
【优选算法】—复写零(双指针算法)
笔记·算法·双指针算法
半盏茶香1 小时前
在21世纪的我用C语言探寻世界本质 ——编译和链接(编译环境和运行环境)
c语言·开发语言·c++·算法
忘梓.2 小时前
解锁动态规划的奥秘:从零到精通的创新思维解析(3)
算法·动态规划
Evand J2 小时前
LOS/NLOS环境建模与三维TOA定位,MATLAB仿真程序,可自定义锚点数量和轨迹点长度
开发语言·matlab
LucianaiB2 小时前
探索CSDN博客数据:使用Python爬虫技术
开发语言·爬虫·python
Ronin3052 小时前
11.vector的介绍及模拟实现
开发语言·c++