【白鲨优化算法】基于白鲨优化算法求解单目标优化问题(WSO)含Matlab源码
1 简介
这是一种新颖的元启发式算法,即所谓的白鲨优化器 (WSO),用于解决连续搜索空间上的优化问题。 WSO 的核心理念和基础受到大白鲨行为的启发,包括它们在航行和觅食时的非凡听觉和嗅觉。 行为的这些方面经过数学建模,以适应 WSO 的探索和利用之间的充分平衡,并帮助搜索代理探索和利用搜索空间的每个潜在区域以实现优化。 WSO 的搜索代理随机更新他们与迄今为止最佳解决方案相关的位置,以最终达到最佳结果。
2 部分代码
%% White Shark Optimizer (WSO) source codes
%
% MATLAB R2019b
%
% 白鲨优化算法:一种针对全局优化问题的新型仿生元启发式算法
%____________________________________________________________________________________
%%
clear
close all
clc
%% % Prepare the problem
Fun_name='F1';
%% % CSA 参数
searchAgents = 20;
maxIter = 500;
[lb,ub,dim,fobj]=fun_info(Fun_name);
[fitness,gbest,ccurve]=WSO(searchAgents,maxIter,lb,ub,dim,fobj);
disp(['===> The optimal fitness value found by Standard Chameleon is ', num2str(fitness, 12)]);
%% 绘制收敛行为曲线
figure('Position',[500 500 660 290])
subplot(1,2,1);
func_plot(Fun_name);
title('Objective space')
xlabel('x_1');
ylabel('x_2');
zlabel([Fun_name,'( x_1 , x_2 )'])
subplot(1,2,2);
set(gcf,'color','w');
plot(ccurve,'LineWidth',2,'Color','r'); grid;
title({'收敛特性曲线'},'interpreter','latex','FontName','仿宋','fontsize',12);
xlabel('迭代','interpreter','latex','FontName','仿宋','fontsize',12)
ylabel('迄今为止得出的最优值','interpreter','latex','FontName','仿宋','fontsize',12);
axis tight; grid on; box on
h1=legend('WSO','location','northeast');
set(h1,'interpreter','Latex','FontName','Times','FontSize',12)
ah=axes('position',get(gca,'position'),...
'visible','off');
3 仿真结果

4 参考文献
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
