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


       目录

    💥1 概述

    📚2 运行结果

    🎉3 参考文献

    👨‍💻4 Matlab代码


    💥1 概述

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

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

    📚2 运行结果

     

    🎉3 参考文献

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

    👨‍💻4 Matlab代码

    主函数部分代码:

    %% 海鸥优化算法(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)]);

  • 相关阅读:
    Task Flow使用指南之五:捕获异常
    理解网络协议里的协议
    Python——面向对象
    Java学习 10.Java-类和对象
    专享策略No.3 | 商品截面交易策略
    HTML5 和 CSS3 的新特性--品优购项目开发
    HBuilder X 未检测到手机或模拟器(安卓端)
    Elasticsearch基于snapshot进行云上备份
    常用git命令
    KKFileView在线预览禁用复制右键图片保存等操作
  • 原文地址:https://blog.csdn.net/m0_73907476/article/details/127702243