首页 > 编程语言 >混合策略改进的蜣螂算法(IDBO)优化BP神经网络

混合策略改进的蜣螂算法(IDBO)优化BP神经网络

时间:2024-08-11 11:22:56浏览次数:12  
标签:神经网络 蜣螂 模型 算法 混合策略 BP IDBO

目录

0 引言

1 数学模型

2 模型对比

3 matlab代码

3.1 改进的主代码

3.2 IDBO-BP

4 视频讲解

0 引言

针对DBO算法全局探索能力不足、易陷入局部最优以及收敛精度不理想等问题,多为学者提出了混合多策略改进的蜣螂优化算法(IDBO)。主要混合策略改进首先是采用混沌映射结合随机反向学习策略初始化种群提高多样性,扩大解空间 搜索范围,增强全局寻优能力;其次通过黄金正弦策略实现个体动态搜索,提高算法遍历性;在者引入竞争机制增强信息交互,平衡全局探索与局部开发,加快算法收敛速度;最后在迭代后期利用自适应t分布变异对个体进 行扰动,避免算法陷入局部最优。

1 数学模型

IDBO是在DBO基础上从改善种群多样性、增强搜索随机性、 加强个体信息交互以及跳出局部最优等四个方向来提高算法的全局探索和局部开发能力,增强算法寻优性能。

(1)混沌映射和随机反向学习策略:其数学模型分布如下:

式(10)为方向学习策略后种群,其中J为0到1之间随机数。

(2)黄金正弦策略:为了使推球蜣螂完成对解空间的充分勘探,引入黄金正弦策略对推球蜣螂进行位置更新,其数学模型如下:

式(11)为无障碍时的蜣螂位置,式(12)、(13)黄金分割系数。其中ω1∈[0,2Π]、ω2∈[0,Π]的随机数,ΔR为靠近最优蜣螂位置差距,a和2 a初始值分别为-Π和Π,h=(根号5-1)/2.

(3)动态权重系数:在小蜣螂竞争食物引入动态权值,跳出局部最优,进行竞争机制进行比优平衡全局探索与局部开发,加快算法收敛速度。

式中t为当前迭代,M为最大迭代。

2 模型对比

对比DBO和IDBO优化BP神经网络模型性能得出对比图,由于BP神经网络受权值阈值随机性影响,本章节采用’seed‘固定随机组函数进行模型对比,具体代码如下:

rand('seed',3333);%3333为随机固定组,可变

模型数据来源UCI回归数据集

精度指标对比:

IDBO-BP:

DBO-BP:

3 matlab代码

3.1 改进的主代码

(1)混沌映射和随机反向学习策略:

%%c参数
% ReChebyshev:混沌映射及反向学习函数构建
% SYD 适应度
% pop 蜣螂种群
% dim 问题维度
% ub、lb为问题上下界
% net BP神经网络

%  改进点1:Chebyshev混沌映射及反向学习:提高种群多样性
x = ReChebyshev(pop, dim, ub, lb);
for i = 1 : pop
    fit(i) =SYD(x(i,:),net) ;
    net.trainParam.showWindow = 0;
end

(2)黄金正弦策略:

%%参数
%pNum  推球的种群


% 改进点2:黄金正弦策略:对局部领域空间的充分搜索,提高了勘探能力
for i = 1 : pNum             
    R1 = rand()*2*pi;
    R2 = rand()*pi;     
    tu = (sqrt(5)-1)/2;   
    x1 = -pi+(1-tu)*2*pi;     
    x2 = -pi+tu*2*pi;    
    x(i,:) = pX(i,:)*abs(sin(R1))+R2*sin(R1)*abs(x1*pX(i,:)-x2*x(i,:));
end

(3)动态权重系数:

%%参数
% t 当前迭代
% M 最大迭代
% Bounds  边界函数
% SYD  适应度函数
% pFit 最好适应度
% fMin 推球最优适应度

%  改进点3:动态权重系数和竞争策略:全局性 
    k1 = 1-((t)^3)/((M)^3);
    k2 = ((t)^3)/((M)^3);
    for j = round(0.63*pop) : pop    % Eq(7)
        x(j,:)=k1*bestX+k2*randn(1,dim).*((abs(( pX(j,:)-bestXX)))+(abs((pX(j,:)-bestX))))./2;
        x(j,:)= Bounds(x(j,:),lb,ub);
      fit(j)= SYD(x(j,:),net);
      net.trainParam.showWindow = 0;
    end

% 竞争对比
  XX=pX;
  for i = 1 : pop
      if (fit(i)< pFit(i))
          pFit(i)=fit(i);
          pX(i,:)=x(i,:);
      end
      
      if (pFit(i)<fMin)
          fMin= pFit(i);
          bestX = pX(i,:);
      end
  end

3.2 IDBO-BP

1)单输出回归预测模型:单输出回归:混合策略改进的蜣螂算法优化BP神经网络模型(IDBO-BP)

2)多输出回归预测模型:多输出回归:混合策略改进的蜣螂算法优化BP神经网络模型(IDBO-BP)

3)分类模型:分类模型:混合策略改进的蜣螂算法优化BP神经网络模型(IDBO-BP)

4)时间序列:时间序列:混合策略改进的蜣螂算法优化BP神经网络模型(IDBO-BP)

4 视频讲解

B站搜索:‘ 不想学习的陈成 ’

标签:神经网络,蜣螂,模型,算法,混合策略,BP,IDBO
From: https://blog.csdn.net/m0_74389201/article/details/141098296

相关文章

  • 【状态估计】【扩展卡尔曼滤波算法的神经网络训练】BP神经网络、扩展卡尔曼滤波EKF+BP
    ......
  • 基于腾讯云EdgeOne的自适应webp转换
    基于腾讯云EdgeOne的自适应webp转换EdgeOne是腾讯云提出的边缘计算相关产品,和CloudFlare的小黄云类似,实际上大致等于CDN+安全防护,同时它还提供了边缘函数来提供我们使用,我们可以借助边缘函数实现一些功能,比如说自动将请求的png或jpg图片转换成webp,从而节省流量,加快网站的访问速度......
  • vue2 bpmnjs流程图
    原作者gitee地址:gitclonehttps://gitee.com/cjy2353/best-vue-bpmnjs.git"bpmn-js":"^17.9.2","vue":"^2.6.11",node-v"v14.17.6"使用:`importBpmnfrom'com/Bpmn'components:{Bpmn,},`bpmn组件如下:......
  • Webpack入门基础知识及案例
    webpack相信大家都已经不陌生了,应用程序的静态模块打包工具。前面我们总结了vue,react入门基础知识,也分别做了vue3的实战小案例,react的实战案例,那么我们如何使用webpack对项目进行模块化打包呢?话不多说,开始!!目录一、熟悉webpack的主要功能二、Webpack的核心概念三、使用webp......
  • 137文章解读与程序——基于遗传算法优化神经网络的时间序列预测 GA-BP已提供下载资源
    ......
  • 17 模块subprocess、re
    1.subprocess模块1.1概念 subprocess模块启动一个新进程,并连接到它们的输入/输出/错误管道,从而获取返回值简单理解:可以远程连接电脑(socket模块)1.2Popen方法importsubprocessres=subprocess.Popen(['help','ver'],#windows中执行的命令要放在列表里面,命令单词之......
  • vite和webpack的区别
    内核区别最明显区别是及时编译和打包编译,开发编译速度上的区别。配置区别主要区别就是webpack有loader和plugins配置,vite直接是plugins为主体。viteplugins中配置编译器和插件:其他json配置大同小异。参考文章https://zxuqian.cn/difference-between-vite-and-webpac......
  • webpack 打包实战解析
    Webpack打包实战本文从一个简单的例子出发,比较一下,我们的代码经过webpack打包后会变成啥样,带有HMR的情况下,会有什么不同我们的代码//index.jsimport{greeting}from'./moduleA'letcleanup=null;functionrender(){constnode=document.getElementById('mount'......
  • webpack HMR API解析
    介绍一下webpackhmr相关的APIwebpack首先将模块变成对象的一个属性,该属性是一个方法,调用它就返回最新的模块。模块的变更就变成了更新这些方法的定义。其次,webpack对于我们代码的import,做了拦截,会变成从它的模块对象里面去读取模块,同时它做了缓存。最后,当模块变化的时候,它会依......
  • 买二手NVIDIA网卡被坑记录:某宝的咸鱼二手交易网站上购入NVIDIA Mellanox ConnectX-3
    原本是打算去大连的人工智能计算中心去做技术负责人的,不过考虑到工作性质再考虑到自己的一些现实情况也就放弃了这个职位(比较在大连理工大学的博士学位还没有读下来,还是有所牵挂的)。同时,由于自己已经退出了大连理工的相关实验室以及华为集团和大连化物所的相关工作,因此我也就没有......