2023年智能优化算法之霜冰优化算法,附MATLAB代码,直接复制

霜冰优化算法(Rime optimization algorithm)是Hang Su于2023年2月提出的,该算法受到雾霾冰生长机制的启发,通过模拟软霜冰粒子的运动,提出了一种用于算法搜索的霜冰搜索策略。 

参考文献:Hang Su, Dong Zhao, Ali Asghar Heidari, Lei Liu, Xiaoqin Zhang, Majdi Mafarja, Huiling Chen,RIME: A physics-based optimization,Neurocomputing,ELSEVIER- 2023.

算法原理也很简单,代码简单易懂,适合改进。粒子更新核心公式如下:

73b3325fa5ee8e5c743d46776706e589.png

其中:

01be2c10082a7308d59fd8916822e3a8.png

伪代码为:

4e75422bb320f571b9124cf59954c26c.png

有关霜冰优化算法更详细的原理介绍,作者将原文文献打包在了压缩包里,大家可自行学习。下面依旧是采用CEC2005函数对霜冰算法进行测试,运行时作者将其与粒子群算法进行了对比,大家看一下效果

a4be81f309ddb058ec5d8194aaeaa9ad.png

19ad0d58c75022933261b9eab618c450.png

88384198309926d16348ffbb7f9a158b.png

0306d0971854f278fc5e9aeed261ca2f.png

55b576e690f5df859266a5791dd6581b.png

cd866bb49f87e4710af6fafdd74f9d94.png

1df5a36f005209b2858668c1067a670a.png

22f9bcaa8f2e2ce74023fb3bcc920630.png

845ca391131dbce912fd48f26c7265d1.png

07af672751efc1041afb6a084380b788.png

adf918d03cd4c56ade348d718c5ef3c8.png

评价:只能说两个算法相差不大,RIME原理毕竟也很简单,改进的空间就会很大。

代码

function [Best_rime_rate,Best_rime,Convergence_curve]=RIME(N,Max_iter,lb,ub,dim,fobj)
% initialize position
Best_rime=zeros(1,dim);
Best_rime_rate=inf;%change this to -inf for maximization problems
Rimepop=initialization(N,dim,ub,lb);%Initialize the set of random solutions
Lb=lb.*ones(1,dim);% lower boundary 
Ub=ub.*ones(1,dim);% upper boundary
it=1;%Number of iterations
Convergence_curve=zeros(1,Max_iter);
Rime_rates=zeros(1,N);%Initialize the fitness value
newRime_rates=zeros(1,N);
W = 5;%Soft-rime parameters, discussed in subsection 4.3.1 of the paper
%Calculate the fitness value of the initial position
for i=1:N
    Rime_rates(1,i)=fobj(Rimepop(i,:));%Calculate the fitness value for each search agent
    %Make greedy selections
    if Rime_rates(1,i)<Best_rime_rate
        Best_rime_rate=Rime_rates(1,i);
        Best_rime=Rimepop(i,:);
    end
end
% Main loop
while it <= Max_iter
    RimeFactor = (rand-0.5)*2*cos((pi*it/(Max_iter/10)))*(1-round(it*W/Max_iter)/W);%Parameters of Eq.(3),(4),(5)
    E =(it/Max_iter)^0.5;%Eq.(6)
    newRimepop = Rimepop;%Recording new populations
    normalized_rime_rates=normr(Rime_rates);%Parameters of Eq.(7)
    for i=1:N
        for j=1:dim
            %Soft-rime search strategy
            r1=rand();
            if r1< E
                newRimepop(i,j)=Best_rime(1,j)+RimeFactor*((Ub(j)-Lb(j))*rand+Lb(j));%Eq.(3)
            end
            %Hard-rime puncture mechanism
            r2=rand();
            if r2<normalized_rime_rates(i)
                newRimepop(i,j)=Best_rime(1,j);%Eq.(7)
            end
        end
    end
    for i=1:N
        %Boundary absorption
        Flag4ub=newRimepop(i,:)>ub;
        Flag4lb=newRimepop(i,:)<lb;
        newRimepop(i,:)=(newRimepop(i,:).*(~(Flag4ub+Flag4lb)))+ub.*Flag4ub+lb.*Flag4lb;
        newRime_rates(1,i)=fobj(newRimepop(i,:));
        %Positive greedy selection mechanism
        if newRime_rates(1,i)<Rime_rates(1,i)
            Rime_rates(1,i) = newRime_rates(1,i);
            Rimepop(i,:) = newRimepop(i,:);
            if newRime_rates(1,i)< Best_rime_rate
               Best_rime_rate=Rime_rates(1,i);
               Best_rime=Rimepop(i,:);
            end
        end
    end
    Convergence_curve(it)=Best_rime_rate;
    it=it+1;
end

需要的同学直接粘贴用于自己的实际问题即可。下方卡片回复关键词,获取完整代码。

关键词:2023

  • 7
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 31
    评论
引用\[1\]中提到了一篇名为"Incomprehensible but Intelligible-in-time logics: Theory and optimization algorithm"的论文,该论文介绍了一种智能优化算法。引用\[2\]中提到了这个算法的具体内容,即卷积优化算法(Convolution Optimization Algorithm, COA)。该算法通过引入二维卷积运算来更新种群的位置向量,其中包括纵向卷积核、横向卷积核和区域卷积核。在卷积搜索过程中,通过对这些卷积核进行运算并更新种群的位置向量,进一步提高算法的性能。此外,在解质量增强过程中,该算法还使用带非惯性权重的高斯变异和扰动来提高局部搜索能力。\[2\] 这个算法被称为"Incomprehensible but Intelligible-in-time logics",即难以理解但又能及时理解的逻辑。根据引用\[3\]的解释,这个算法的思想是基于人类思维的特点,即人类的思维可以随着时间和事物的变化而变化。在经过一段时间的学习后,之前看起来毫无逻辑的事情也会变得有逻辑。这种思维方式的独特性使得这个算法能够提出一种新的优化算法,并且取得了不错的效果。\[3\] 因此,2023智能优化算法是卷积优化算法,它通过引入二维卷积运算和利用人类思维的特点来提高算法的性能和搜索能力。 #### 引用[.reference_title] - *1* *3* [2023最新智能优化算法之——IBI逻辑优化算法(IBL),MATLAB代码](https://blog.csdn.net/woaipythonmeme/article/details/131322393)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [智能优化算法:卷积优化算法-2023 代码](https://blog.csdn.net/u011835903/article/details/130000907)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

今天吃饺子

不想刀我的可以选择爱我

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

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

打赏作者

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

抵扣说明:

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

余额充值