多策略协同改进的阿基米德优化算法及其应用(Matlab代码实现)

 🍒🍒🍒欢迎关注🌈🌈🌈

📝个人主页:我爱Matlab


👍点赞➕评论➕收藏 == 养成习惯(一键三连)🌻🌻🌻

🍌希望大家多多支持🍓~一起加油 🤗

💬语录:将来的我一定会感谢现在奋斗的自己!

🍁🥬🕒摘要🕒🥬🍁

本文提出一种混沌阿基米德优化算法(CAOA)。采用混沌理论来提高基本算法的性能。所提出的方法使用混沌映射来更新具有最小成本函数的特定优化问题的候选解。

阿基米德优化算法(AOA)是2020年Hashim等人提出的新型元启发式算法,该算法通过模仿完全或部分浸没在流体中的物体发生碰撞时所受浮力的关系,在迭代过程中不断调整个体密度、体积和加速度,从而使个体达到平衡状态,适应度值优的个体引导种群收敛到最优位置,达到寻优的目的。与传统的优化算法相比,元启发式算法具有控制参数少、易于实现、随机性大和适应性强等特点。然而,AOA同其他元启发式算法相似,存在全局搜索性能差、求解精度低和易陷入局部最优等缺陷。

✨🔎⚡运行结果⚡🔎✨

 

 

💂♨️👨‍🎓Matlab代码👨‍🎓♨️💂

clear;
close all;
clc;

nPop=100;
Maxit=20;
nVar=2; %% number of optimization parameters
C1=2;C2=6; C3=1;C4=2; u=.9;l=.1;   %%% The paramters of the algorithm


%%%% Initialization

lb=-4.5*ones(1,nVar); %%% same search area for different parameters
ub=4.5*ones(1,nVar);

% lb=[0*ones(1,D-1),0.000001]; %% different search area for each parameter
% ub=[5*ones(1,D-1),0.5];

for i=1:nPop
    X(i,:)=lb+rand(1,nVar).*(ub-lb);
    Y(i)=cost(X(i,:));
    den(i,:)=rand(1,nVar); 
    vol(i,:)=rand(1,nVar);
    acc(i,:)=lb+rand(1,nVar).*(ub-lb);
end

[Scorebest, Score_index] = min(Y);
Xbest = X(Score_index,:);
den_best=den(Score_index,:);
vol_best=vol(Score_index,:);
acc_best=acc(Score_index,:);
acc_norm=acc;

chnum=1;  %%% selection of chaotic map  chnum=1,...,10
chstart=0.65;  %%% starting point for chaotic map
chmap=ch_map(chnum,chstart,Maxit);


for it = 1:Maxit
    
    TF(it)=exp(((it-Maxit)/(Maxit)))+(-0.2+0.4*chmap(it));  %%%% TF + chaotic_value
    
%     TF(t)=exp(((t-Maxit)/(Maxit))); %%%% Basic algorithm


    if TF(it)>1
        TF(it)=1;
    end
    d=exp((Maxit-it)/Maxit)-(it/Maxit); 
    acc=acc_norm;
    r=rand();
    for i=1:nPop
        den(i,:)=den(i,:)+r*(den_best-den(i,:));   
        vol(i,:)=vol(i,:)+r*(vol_best-vol(i,:));
        if TF(it) < 0.45     
            mr=randi(nPop);
            acc_temp(i,:)=(den(mr,:)+(vol(mr,:).*acc(mr,:)))./(rand*den(i,:).*vol(i,:));   
        else
            acc_temp(i,:)=(den_best+(vol_best.*acc_best))./(rand*den(i,:).*vol(i,:));   
        end
    end

📜📢🌈参考文献🌈📢📜

[1]罗仕杭,何庆.融合Sin混沌和分段权值的阿基米德优化算法[J].计算机工程与应用,2022,58(14):63-72.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值