改进智能优化算法|一种改进的白鲸优化算法IBWO 精英反向策略的种群初始化策略+动态折射反向学习策略+旋风式觅食策略

一种改进的白鲸优化算法BWO 精英反向策略的种群初始化+动态折射反向学习+旋风式觅食策略


一种改进的白鲸优化算法BWO 精英反向策略的种群初始化+动态折射反向学习+旋风式觅食策略


一、原始白鲸优化算法BWO

白鲸优化算法(Beluga Whale Optimization, BWO)是一种新型的基于群体的元启发式算法,灵感来源于白鲸的行为。以下是该算法的基本原理和详细流程:

基本原理:

  1. 灵感来源:BWO算法模仿白鲸的三种行为:游泳(探索)、捕食(开发)和鲸落(鲸落阶段)。
  2. 探索与开发:算法通过模拟白鲸的这些行为来平衡全局搜索(探索)和局部搜索(开发)的能力。
  3. 自适应平衡因子:算法中引入了自适应的平衡因子和鲸落概率,这些因子在控制探索和开发能力中起着重要作用。
  4. Levy飞行:在开发阶段引入Levy飞行机制来增强全局收敛能力。

详细流程和步骤:

  1. 初始化:确定算法参数,包括种群大小和最大迭代次数,随机生成初始白鲸群体的位置,并计算其适应度值。

  2. 探索阶段

    • 模拟白鲸的游泳行为,通过配对游泳来更新白鲸的位置。
    • 使用随机数和当前位置信息来计算新位置。
  3. 开发阶段

    • 模拟白鲸的捕食行为,白鲸通过共享位置信息来捕食。
    • 引入Levy飞行策略,通过随机跳跃强度和Levy飞行函数来更新白鲸的位置。
  4. 鲸落阶段

    • 模拟白鲸在迁徙和捕食过程中可能发生的死亡和沉入海底的现象。
    • 根据鲸落概率选择一些白鲸,并更新它们的位置。
  5. 迭代过程

    • 根据当前迭代次数和最大迭代次数计算平衡因子。
    • 根据平衡因子决定白鲸进入探索阶段还是开发阶段。
  6. 终止条件

    • 如果当前迭代次数大于或等于最大迭代次数,则算法停止。
    • 否则,重复上述步骤。
  7. 输出结果:返回最佳白鲸的位置和适应度值。

数学模型:

  • 探索阶段:通过配对游泳行为更新白鲸的位置。
  • 开发阶段:通过捕食行为和Levy飞行策略更新白鲸的位置。
  • 鲸落阶段:根据鲸落概率和步长因子更新白鲸的位置。

算法特点:

  • BWO算法是无导数优化技术,易于实现。
  • 算法能够平衡探索和开发阶段,确保全局收敛。
  • 在解决单峰和多峰函数问题时表现出色,尤其在可扩展性分析中表现优异。

实验验证:

  • 通过30个基准函数和4个实际工程问题来测试BWO算法的有效性。
  • 与15种其他元启发式算法进行比较,包括PSO、DE、GA等。

应用领域:

  • BWO算法在解决复杂的实际工程优化问题中显示出潜力和优势,如悬臂梁设计、焊接梁设计、张力/压缩弹簧设计和压力容器设计问题。

二、多策略改进白鲸优化算法IBWO

改进1:精英反向策略

在这里插入图片描述
参考文献:刘琨, 赵露露, 王辉. 一种基于精英反向和纵横交叉的鲸鱼优化算法[J]. 小型微型计算机系统, 2020, 41(10): 2092-2097.

%% 基于精英反向策略的种群初始化
function Positions=initializationNew(SearchAgents_no,dim,ub,lb,fun)

Boundary_no= size(ub,2); % numnber of boundaries
BackPositions = zeros(SearchAgents_no,dim);
if Boundary_no==1
    PositionsF=rand(SearchAgents_no,dim).*(ub-lb)+lb;
    %求取反向种群
    BackPositions = ub + lb - PositionsF;
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,:);
%获取精英边界
lbT = min(XJY);
ubT = max(XJY);
%更新精英反向解

改进2:动态折射反向学习策略

参考文献:邵鹏, 吴志健, 周炫余, 等. 基于折射原理反向学习模型的改进粒子群算法[J]. 电子学报, 2015, 43(11): 2137.
在这里插入图片描述

公式参考:基于折射原理反向学习模型的改进粒子群算法

k=(1+(T/Max_it)^0.5)^10;
GbestTemp = (ub+lb)/2+(ub+lb)/(2*k)-xposbest/k;
Flag4ub = GbestTemp>ub;
Flag4lb = GbestTemp<lb;
GbestTemp=(GbestTemp.*(~(Flag4ub+Flag4lb)))+ub.*Flag4ub+lb.*Flag4lb;
if fobj(GbestTemp)<fvalbest
   fvalbest= fobj(GbestTemp);
   xposbest = GbestTemp;
end

改进3:旋风式觅食策略策略

参考文献:
Zhao W, Zhang Z, Wang L. Manta ray foraging optimization: An effective bio-inspired optimizer for engineering applications[J]. Engineering Applications of Artificial Intelligence, 2020, 87: 103300.

在这里插入图片描述

for i=1:Npop
    r9=rand;
    beta = 2*exp(r9*(Max_it-T+1)/(Max_it))*sin(2*pi*r9);
    if i==1
        TPos(i,:)=xposbest+rand*(xposbest-pos(i,:))+beta*(xposbest-pos(i,:));
        if fobj(TPos(i,:))<fobj(pos(i,:))
            pos(i,:) = TPos(i,:);
        end
    else
        TPos(i,:)=xposbest+rand*(pos(i-1,:)-pos(i,:))+beta*(xposbest-pos(i,:));
        if fobj(TPos(i,:))<fobj(pos(i,:))
            pos(i,:) = TPos(i,:);
        end
    end
end

实验结果

种群数:30
迭代次数:500

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

在这里插入图片描述

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

代码清单

在这里插入图片描述
私信我获得购买链接

其他程序定制

利用该优化算法对机器学习和深度学习进行优化
先用就是创新
包括但不限于
优化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等等

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值