【智能优化算法-天鹰算法】基于改进天鹰优化算法求解多目标优化问题附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测 雷达通信  无线传感器

信号处理 图像处理 路径规划 元胞自动机 无人机

⛄ 内容介绍

本文提出了一种新的基于种群的优化方法,称为 Aquila Optimizer (AO),它是灵感来自天鹰座在捕捉猎物过程中的自然行为。因此,优化所提出的AO算法的程序用四种方法表示;按高选择搜索空间垂直俯冲翱翔,通过短滑翔攻击的轮廓飞行在发散的搜索空间内探索,通过低速飞行和慢速下降攻击在收敛搜索空间内利用,并通过步行和俯冲抓住猎物。

⛄ 部分代码

close all;

clear ; 

clc;

%%

% TestProblem测试问题说明:

%一共46个多目标测试函数,详情如下:

%1-5:ZDT1、ZDT2、ZDT3、ZDT4、ZDT6

%6-12:DTLZ1-DTLZ7

%13-22:wfg1-wfg10

%23-32:uf1-uf10

%33-42:cf1-cf10

%43-46:Kursawe、Poloni、Viennet2、Viennet3

%%

TestProblem=3;%1-46

MultiObj = GetFunInfo(TestProblem);

MultiObjFnc=MultiObj.name;%问题名

% Parameters

params.Np = 200;        % Population size

params.Nr = 200;        % Repository size

params.maxgen =300;    % Maximum number of generations

params.ngrid = 30;      % Number of grids in each dimension

params.maxvel = 5;      % Maxmium vel in percentage

% MOAO

REP = MOAO(params,MultiObj);

%% 画结果图

figure(2)

if(size(REP.pos_fit,2)==2)

    h_rep = plot(REP.pos_fit(:,1),REP.pos_fit(:,2),'or'); hold on;

       if(isfield(MultiObj,'truePF'))

            h_pf = plot(MultiObj.truePF(:,1),MultiObj.truePF(:,2),'.k'); hold on;

            legend('MOAO','RealPareto');

       else

           legend('MOAO');

       end

        grid on; xlabel('f1'); ylabel('f2');

end

if(size(REP.pos_fit,2)==3)

    h_rep = plot3(REP.pos_fit(:,1),REP.pos_fit(:,2),REP.pos_fit(:,3),'or'); hold on;

      if(isfield(MultiObj,'truePF'))

            h_pf = plot3(MultiObj.truePF(:,1),MultiObj.truePF(:,2),MultiObj.truePF(:,3),'.k'); hold on;

            legend('MOAO','RealPareto');

      else

          legend('MOAO');

      end

        grid on; xlabel('f1'); ylabel('f2'); zlabel('f3');

end

title(MultiObjFnc)

%%

% Display info

disp('Repository fitness values are stored in REP.pos_fit');

disp('Repository particles positions are store in REP.pos');

%%  Metric Value

M_IGD=IGD(REP.pos_fit,MultiObj.truePF);

M_GD=GD(REP.pos_fit,MultiObj.truePF);

M_HV=HV(REP.pos_fit,MultiObj.truePF);

M_Spacing=Spacing(REP.pos_fit,MultiObj.truePF);

M_Spread=Spread(REP.pos_fit,MultiObj.truePF);

M_DeltaP=DeltaP(REP.pos_fit,MultiObj.truePF);

display(['The IGD Metric obtained by MOAO is     : ', num2str(M_IGD)]);

display(['The GD Metric obtained by MOAO is      : ', num2str(M_GD)]);

display(['The HV Metric obtained by MOAO is      : ', num2str(M_HV)]);

display(['The Spacing Metric obtained by MOAO is : ', num2str(M_Spacing)]);

display(['The Spread Metric obtained by MOAO is  : ', num2str(M_Spread)]);

display(['The DeltaP Metric obtained by MOAO is  : ', num2str(M_DeltaP)]);

    

⛄ 运行结果

⛄ 参考文献

Abualigah, L., Yousri, D., Elaziz, M.A., Ewees, A.A., A. Al-qaness, M.A., Gandomi,A.H., Aquila Optimizer: A novel meta-heuristic optimization Algorithm, Computers & Industrial Engineering

❤️ 关注我领取海量matlab电子书和数学建模资料

❤️部分理论引用网络文献,若有侵权联系博主删除

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
天鹰优化算法(Eagle Optimization Algorithm,EOA)是一种基于鹰的行为和智能优化算法,其灵感来自于鹰的觅食行为和交流方式。该算法模拟了鹰的捕食行为以及鹰之间的交流行为,通过多次迭代来搜索最优解。 天鹰优化算法的核心思想是将搜索空间中的解表示为鹰的位置,逐步迭代地优化当前的位置,以找到最优解。在算法的每一代,鹰会根据其当前位置和周围环境的信息来调整自己的位置,以便更好地搜索解空间。鹰之间也会通过交流行为来传递信息,以进一步改进搜索结果。 天鹰优化算法的优点是具有较强的全局搜索能力和收敛性能,能够快速地找到全局最优解。它还具有较好的鲁棒性,能够处理复杂的优化问题。此外,该算法的实现相对简单,适用于不同类型的问题。 在Matlab中实现天鹰优化算法时,可以使用向量化的方式来进行位置的更新和调整。算法的步骤主要包括初始化种群,计算适应度值,更新位置和速度,选择最优解等。通过编写相应的函数和循环结构,可以实现鹰的行为模拟和搜索过程。此外,也可以利用Matlab中丰富的优化工具箱来进一步优化算法的实现效率。 综上所述,天鹰优化算法是一种基于鹰的行为和智能优化算法,通过模拟鹰的捕食行为和交流方式来搜索最优解。在Matlab中实现该算法时,需要依据算法的步骤和原理进行编码,并利用Matlab的相关工具和函数来加速实现过程。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

matlab科研助手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值