新型智能优化算法——海鸥优化算法(基于Matlab代码实现)

 ‍个人主页:研学社的博客 

欢迎来到本博客❤️❤️

博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

本文目录如下:

目录

1 概述

2 运行结果

3 参考文献

4 Matlab代码实现


1 概述

2019 年,Dhiman G等人提出了一种受自然界海鸥启发的新颖全局优化算法—海鸥优化算法(Seagull Optimization Algorithm, SOA)。与其他智能优化算法类似,海鸥优化算法也是基于种群的算法,模拟了海鸥群体的迁徙和攻击行为,算法提出者将这些行为抽象化建立数学模型。 

  算法的主要算子是模拟全局搜索的海鸥迁徙算子和模拟局部搜索的海鸥攻击算子。海鸥优化算法的提出,为工程优化和人工智能领域提供了新的优化工具。虽然海鸥优化算法的模型相对简洁,但与其他优化算法相比,海鸥优化算法在实际问题求解中还是体现出了一定的优势。

2 运行结果

新型智能优化算法——海鸥优化算法(基于Matlab代码实现)_第1张图片

 

主函数部分代码:

%% 海鸥优化算法(Seagull Optimization Algorithm,SOA)
clc
clear
close all
SearchAgents=30; 
Fun_name='F1';  
Max_iterations=1000; 
[lowerbound,upperbound,dimension,fitness]=func_info(Fun_name);
[Best_score,Best_pos,SOA_curve]=SOA(SearchAgents,Max_iterations,lowerbound,upperbound,dimension,fitness);
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);
plots=semilogx(SOA_curve,'Color','r');
set(plots,'linewidth',2)
hold on
title('Objective space')
xlabel('Iterations');
ylabel('Best score');
axis tight
grid on
box on
legend('SOA')
display(['The best solution obtained by SOA is : ', num2str(Best_pos)]);
display(['The best optimal value of the objective funciton found by SOA is : ', num2str(Best_score)]);

3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]李沅航.海鸥优化算法与鲸鱼优化算法的寻优性能对比研究[J].现代信息科技,2021,5(03):67-71.DOI:10.19850/j.cnki.2096-4706.2021.03.018.

4 Matlab代码实现

你可能感兴趣的:(#,单,多目标智能算法,matlab,开发语言,海鸥优化算法)