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](https://doi.org/10.1016/j.advengsoft.2024.103696 "10.1016/j.advengsoft.2024.103696") ### 二、23个函数简介 ![](https://img-blog.csdnimg.cn/img_convert/2be5617d327a4d00267f36665262e0a1.png) [参考文献](https://so.csdn.net/so/search?q=%E5%8F%82%E8%80%83%E6%96%87%E7%8C%AE&spm=1001.2101.3001.7020 "参考文献"): \[1\] Yao X, Liu Y, [Lin](https://so.csdn.net/so/search?q=Lin&spm=1001.2101.3001.7020 "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)]); ``` ### 四、部分结果 ![](https://img-blog.csdnimg.cn/img_convert/7f0ec1bae506b768268b9c431e44afcd.jpeg) ![](https://img-blog.csdnimg.cn/img_convert/530f231cdeed74596520d8c6ec0f0456.jpeg) ![](https://img-blog.csdnimg.cn/img_convert/35398b36e9a459076cc3adb0da9bb026.jpeg) ![](https://img-blog.csdnimg.cn/img_convert/22a0402693409234fc549510ec52c9c1.jpeg) ![](https://img-blog.csdnimg.cn/img_convert/b92488d1c1d5676e1a88cc0c0873a3cd.jpeg) ![](https://img-blog.csdnimg.cn/img_convert/721854cb1844464d39abe67dd8ad4cc1.jpeg) ![](https://img-blog.csdnimg.cn/img_convert/3ae22b9f1c4d53cad9fbb037cbaa4fb9.jpeg) ![](https://img-blog.csdnimg.cn/img_convert/2f7f5c4946eaa792d5249dfe7c91829f.jpeg) ![](https://img-blog.csdnimg.cn/img_convert/f59041d031fa22330e7555cb01cea5aa.jpeg) ### 五、完整MATLAB代码 ![](https://img-blog.csdnimg.cn/img_convert/4dcc07757ac488d195089ca4e2ac5c08.png)

相关推荐
军训猫猫头23 分钟前
1.如何对多个控件进行高效的绑定 C#例子 WPF例子
开发语言·算法·c#·.net
success37 分钟前
【爆刷力扣-数组】二分查找 及 衍生题型
算法
真的想上岸啊37 分钟前
学习C++、QT---18(C++ 记事本项目的stylesheet)
开发语言·c++·学习
明天好,会的44 分钟前
跨平台ZeroMQ:在Rust中使用zmq库的完整指南
开发语言·后端·rust
Orlando cron1 小时前
数据结构入门:链表
数据结构·算法·链表
丁劲犇1 小时前
用 Turbo Vision 2 为 Qt 6 控制台应用创建 TUI 字符 MainFrame
开发语言·c++·qt·tui·字符界面·curse
旷世奇才李先生2 小时前
Next.js 安装使用教程
开发语言·javascript·ecmascript
牛客企业服务2 小时前
2025年AI面试推荐榜单,数字化招聘转型优选
人工智能·python·算法·面试·职场和发展·金融·求职招聘
m0_555762902 小时前
matlab 教程
matlab
charlie1145141912 小时前
深入理解Qt的SetWindowsFlags函数
开发语言·c++·qt·原理分析