一、蛇鹫优化算法
鹭鹰(又名蛇鹫,仅生活在撒哈拉以南地区,少飞行,通过步行捕猎,以昆虫、蛇、两栖类和小型哺乳动物为食,单配偶制,直立可达1.2米,翅展约2.1米,头的枕部有长长的羽毛,尖端为黑色,又被称为“文书鸟”。蛇鹫总是成对或者小群地在草原上游荡,以地面小动物为食。
蛇鹫优化算法(Secretary bird optimization algorithm,SBOA)由 Fu Youfa等人于2024年提出,该算法的灵感来自于蛇鹫在自然环境中的生存行为。
参考文献:
[1]Fu Y, Liu D, Chen J, et al. Secretary bird optimization algorithm: a new metaheuristic for solving global optimization problems[J]. Artificial Intelligence Review, 2024, 57(5): 1-102.
二、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='F7'; % 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]=SBOA(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('SBOA') saveas(gca,[Function_name '.jpg']); display(['The best solution is ', num2str(Best_pos)]); display(['The best fitness value is ', num2str(Best_fit)]);