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代码

相关推荐
knoci1 小时前
【Go】-基于Gin框架的IM通信项目
开发语言·后端·学习·golang·gin
luluvx1 小时前
LeetCode[简单] 136. 只出现一次的数字
算法·leetcode·职场和发展
RaidenQ1 小时前
2024.9.27 Python面试八股文
linux·开发语言·python
fhvyxyci2 小时前
【数据结构初阶】排序算法(上)插入排序与选择排序
数据结构·算法·排序算法
予早3 小时前
LeetCode 69. x 的平方根
算法·leetcode
Thomas_YXQ3 小时前
Unity3D PostLateUpdate为何突然占用大量时间详解
开发语言·数码相机·游戏·unity·架构·unity3d
戊子仲秋3 小时前
【LeetCode】每日一题 2024_9_27 每种字符至少取 K 个(双指针)
算法·leetcode·职场和发展
学步_技术4 小时前
Python编码系列—Python模板方法模式:定义算法骨架,让子类实现细节
python·算法·模板方法模式
勇敢滴勇4 小时前
【排序算法】选择排序、堆排序
数据结构·算法·排序算法
MrBlackmzq4 小时前
Datawhale Leecode基础算法篇 task04:贪心算法
python·算法·贪心算法