【2023年算法比较】13种最新智能优化算法大比拼(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥

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

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

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

2.1 CEC2005测试函数

2.1 CEC2022测试函数

🎉3 参考文献

🌈4 Matlab代码实现


💥1 概述

效果图

以下是优化算法的简要介绍:

1. COA(Crow Search Algorithm):基于鸟群觅食行为的优化算法,模拟鸟群在搜索食物时的合作和竞争行为。

2. GMO(Gravitational Search Algorithm):基于物体间引力和质量的优化算法,模拟物体在引力场中的运动过程来搜索最优解。

3. WOA(Whale Optimization Algorithm):基于鲸鱼社会行为的优化算法,模拟鲸鱼的追逐和协作行为来搜索最优解。

4. WWPA(Wind-driven Optimization Algorithm):基于风力驱动的优化算法,模拟风力对物体的影响来搜索最优解。

5. OMA(Owl Migration Algorithm):基于猫头鹰迁徙行为的优化算法,模拟猫头鹰在迁徙过程中的搜索和选择行为。

6. GOA(Grasshopper Optimization Algorithm):基于蚱蜢觅食行为的优化算法,模拟蚱蜢在草地上搜索食物的过程。

7. GWCA(Grey Wolf Optimizer):基于灰狼社会行为的优化算法,模拟灰狼群体中的领导者和追随者之间的协作和竞争。

8. CDO(Colliding Bodies Optimization):基于物体碰撞行为的优化算法,模拟物体之间的碰撞和反弹来搜索最优解。

9. GRO(Glowworm Swarm Optimization):基于萤火虫群体行为的优化算法,模拟萤火虫在夜晚发光吸引伴侣的行为来搜索最优解。

10. ILA(Invasive Weed Optimization Algorithm):基于入侵杂草生长行为的优化算法,模拟杂草的繁殖和扩散过程来搜索最优解。

11. RIME(Rapid Iterative Model Evolution):一种快速迭代模型演化的优化算法,通过不断调整模型参数和结构来适应目标函数。

12. SABO(Social-oriented Artificial Bee Colony Optimization):基于社会导向的人工蜂群优化算法,模拟蜜蜂在群体中的信息共享和协作来搜索最优解。

13. SAO(Social-oriented Ant Optimization):基于社会导向的蚁群优化算法,模拟蚁群中蚂蚁之间的信息传递和协作来搜索最优解。

这些优化算法都具有独特的特点和适用性,在不同的问题领域和场景下可能有不同的效果和表现。选择合适的优化算法需要根据具体问题的特征和要求,结合算法的优势和特点进行综合考虑。

📚2 运行结果

2.1 CEC2005测试函数

2.1 CEC2022测试函数

部分代码:

%% Figure
figure1 = figure('Color',[1 1 1]);
G1=subplot(1,2,1,'Parent',figure1);
func_plot(number)
title(number)
xlabel('x')
ylabel('y')
zlabel('z')
subplot(1,2,2)
G2=subplot(1,2,2,'Parent',figure1);
iter=1:1:max_iter;
if ~strcmp(number,'F16')&&~strcmp(number,'F9')&&~strcmp(number,'F11')  %这里是因为这几个函数收敛太快,不适用于semilogy,直接plot
    semilogy(iter,COA_convergence_curve,'m','linewidth',1);
    hold on
    semilogy(iter,GMO_convergence_curve,'k','linewidth',1);
    hold on
    semilogy(iter,WOA_convergence_curve,'b','linewidth',1);
    hold on
    semilogy(iter,WWPA_convergence_curve,'r','linewidth',1);
    hold on
    semilogy(iter,OMA_convergence_curve,'g','linewidth',1);
    hold on
    semilogy(iter,GOA_convergence_curve,'y','linewidth',1);
    hold on
    semilogy(iter,GWCA_convergence_curve,'c','linewidth',1);
    hold on
    semilogy(iter,CDO_convergence_curve,'color',[0 0.4470 0.7410],'linewidth',1);
    hold on
    semilogy(iter,GRO_convergence_curve,'color',[0.8500 0.3250 0.0980],'linewidth',1);
    hold on
    semilogy(iter,ILA_convergence_curve,'color',[0.9290 0.6940 0.1250],'linewidth',1);
    hold on
    semilogy(iter,RIME_convergence_curve,'color',[0.4940 0.1840 0.5560],'linewidth',1);
    hold on
    semilogy(iter,SABO_convergence_curve,'color',[0.4660 0.6740 0.1880],'linewidth',1);
    hold on
    semilogy(iter,SAO_convergence_curve,'color',[0.3010 0.7450 0.9330],'linewidth',1);


else
    plot(iter,COA_convergence_curve,'m','linewidth',1);
    hold on
    plot(iter,GMO_convergence_curve,'k','linewidth',1);
    hold on
    plot(iter,WOA_convergence_curve,'b','linewidth',1);
    hold on
    plot(iter,WWPA_convergence_curve,'r','linewidth',1); 
    hold on
    plot(iter,OMA_convergence_curve,'g','linewidth',1);
    hold on
    plot(iter,GOA_convergence_curve,'y','linewidth',1);
    hold on
    plot(iter,GWCA_convergence_curve,'c','linewidth',1);
    hold on
    plot(iter,CDO_convergence_curve,'color',[0 0.4470 0.7410],'linewidth',1);
    hold on
    plot(iter,GRO_convergence_curve,'color',[0.8500 0.3250 0.0980],'linewidth',1);
    hold on
    plot(iter,ILA_convergence_curve,'color',[0.9290 0.6940 0.1250],'linewidth',1);
    hold on
    plot(iter,RIME_convergence_curve,'color',[0.4940 0.1840 0.5560],'linewidth',1);
    hold on
    plot(iter,SABO_convergence_curve,'color',[0.4660 0.6740 0.1880],'linewidth',1);
    hold on
    plot(iter,SAO_convergence_curve,'color',[0.3010 0.7450 0.9330],'linewidth',1);
end
grid on;
title('收敛曲线')
xlabel('迭代次数');
ylabel('适应度值');
box on
legend('COA','GMO','WOA','WWPA','OMA','GOA','GWCA','CDO','GRO','ILA','RIME','SABO','SAO')
set (gcf,'position', [300,300,800,330])

🎉3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

🌈4 Matlab代码实现

  • 23
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值