一种多策略改进黑翅鸢智能优化算法IBKA(2024年新出优化算法)种群初始化精英反向+透镜成像反向学习+黄金正弦变异策略

一种多策略改进黑翅鸢智能优化算法IBKA(2024年新出优化算法) 种群初始化精英反向策略+透镜成像反向学习策略+黄金正弦变异策略


前言

一种多策略改进黑翅鸢智能优化算法IBKA(2024年新出优化算法) 种群初始化精英反向策略+透镜成像反向学习策略+黄金正弦变异策略

在这里插入图片描述

一、黑翅鸢BKA算法基本原理

BKA算法的详细原理和对应公式如下:

黑翅鸢(Black Kite)优化算法(BKA)是一种基于鸟类捕食行为启发的群体智能算法。其基本原理如下:

  1. 种群初始化:初始时,随机生成一定数量的个体作为初始种群。

  2. 捕食行为模拟:模拟黑翅鸢的捕食行为,即通过观察和调整飞行路径来捕捉猎物。在算法中,个体代表潜在解决方案,而解决方案的质量则决定了其在搜索空间中的适应度。

  3. 飞行和调整:每个个体在搜索空间中飞行,尝试找到更好的解决方案。这可以通过随机移动或根据某种策略进行调整来实现。

  4. 信息交流:个体之间可能通过某种方式进行信息共享,以增加全局搜索的效率,模拟鸟群中的信息传递行为。

  5. 适应度评估:根据问题的具体评价函数,计算每个个体的适应度,以确定其在解空间中的优劣。

  6. 迭代优化:通过多次迭代,在搜索空间中逐步优化个体,直到达到满意的解决方案或达到预设的迭代次数。

黑翅鸢优化算法通常用于解决复杂的优化问题,其灵感来源于自然界中鸟类的捕食行为,通过模拟鸟类的智能搜索和适应能力来进行全局优化搜索。

二、改进黑翅鸢优化IBKA

改进1:种群初始化精英反向策略

在这里插入图片描述

function Positions=initializationNew(SearchAgents_no,dim,ub,lb,fun)
Boundary_no= size(ub,2); % numnber of boundaries
BackPositions = zeros(SearchAgents_no,dim);
% If each variable has a different lb and ub
if Boundary_no>1
    for i=1:dim
        ub_i=ub(i);
        lb_i=lb(i);
        PositionsF(:,i)=rand(SearchAgents_no,1).*(ub_i-lb_i)+lb_i;
         %求取反向种群
        BackPositions(:,i) =  (ub_i+lb_i) - PositionsF(:,i);
    end
end
%获取精英种群
index = zeros(size(PositionsF,1));
for i = 1:size(PositionsF,1)
   if(fun(PositionsF(i,:))<fun(BackPositions(i,:)))%原始解比反向解更好,即为精英解
       index(i) = 1;
   else%反向解更好的付给原始解
       PositionsF(i,:) = BackPositions(i,:);
   end
end
XJY = PositionsF(index == 1,:);
end

改进2:非线性下降因子

在这里插入图片描述

    for i=1:pop
        %% LOBL strategy

        k=(1+(t/T)^0.5)^10;
        XPosNew(i,:) = (ub+lb)/2+(ub+lb)/(2*k)-XPos(i,:)/k;
    end

改进3:黄金正弦变异策略

在这里插入图片描述

        %% ★★改进3:黄金正弦变异
            r=rand;
            r1=(2*pi)*r;
            r2=r*pi;
            for vv = 1:dim % in j-th dimension
                temp(j,vv) = X(j,vv)*abs(sin(r1)) - r2*sin(r1)*abs(x1*Best_pos(1,vv)-x2*X(1,vv));   %黄金正弦计算公式
            end
            Flag4ub=temp(j,:)>ub;
            Flag4lb=temp(j,:)<lb;
            temp(j,:)=(temp(j,:).*(~(Flag4ub+Flag4lb)))+ub.*Flag4ub+lb.*Flag4lb;  
            if fobj(temp(j,:)) < fobj(X(j, :))
                X(j, :) = temp(j,:);
            end

程序内容

在这里插入图片描述

三、实验结果

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

主函数程序


%%  参数设置
SearchAgents = 30;                         % population members 
Max_iterations = 500;                      % maximum number of iteration
number = 'F23';                            % 选定优化函数,自行替换:F1~F23
[lb,ub,dim,fobj] = CEC2005(number);        % [lb,ub,D,y]:下界、上界、维度、目标函数表达式

%% 循环实验
for i = 1:1
%% IBKA
[IBKA_Best_score,IBKA_Best_pos,IBKA_cg_curve]=IBKA(SearchAgents,Max_iterations,lb,ub,dim,fobj); 
IBKA_fitness(i) = IBKA_Best_score;
%% BKA
[BKA_Best_score,BKA_Best_pos,BKA_cg_curve]=BKA(SearchAgents,Max_iterations,lb,ub,dim,fobj);
BKA_fitness(i)= BKA_Best_score;
end

获取

私信即可

总结

利用该优化算法对机器学习和深度学习进行优化
先用就是创新
包括但不限于
优化BP神经网络,深度神经网络DNN,极限学习机ELM,鲁棒极限学习机RELM,核极限学习机KELM,混合核极限学习机HKELM,支持向量机SVR,相关向量机RVM,最小二乘回归PLS,最小二乘支持向量机LSSVM,LightGBM,Xgboost,RBF径向基神经网络,概率神经网络PNN,GRNN,Elman,随机森林RF,卷积神经网络CNN,长短期记忆网络LSTM,BiLSTM,GRU,BiGRU,TCN,BiTCN,CNN-LSTM,TCN-LSTM,BiTCN-BiGRU,LSTM–Attention,VMD–LSTM,PCA–BP等等

用于数据的分类,时序,回归预测。
多特征输入,单输出,多输出

  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值