基于逐维反向学习的动态适应布谷鸟算法
文章目录
- 一、理论基础
- 1、布谷鸟搜索算法
- 2、DA-DOCS算法
- (1)逐维反向学习策略
- (2)动态适应
- (3)DA-DOCS算法流程
- 二、实验与结果分析
- 三、参考文献
一、理论基础
1、布谷鸟搜索算法
请参考这里。
2、DA-DOCS算法
(1)逐维反向学习策略
文提出的逐维反向学习策略,不仅能够有效避免各维度之间相互干扰的现象,而且能扩大种群搜索范围,开采新的搜索空间,增强种群的多样性。在每一代的演化中,它类似于独立每一个维度的进化,并在每个维度同时搜索两个对称区域,提高了算法的收敛效率和全局寻优能力。
在逐维反向学习策略中,设种群规模为NNN,维度为DDD,迭代过程选择更新位置时的位置矩阵为nestN×Di\boldsymbol{nest}_{N×D_i}nestN×Di。每个维度的上、下限分别为upN×Di\boldsymbol{up}_{N×D_i}upN×Di、lowN×Di\boldsymbol{low}_{N×D_i}lowN×Di,则解的每维的基于反向学习的位置矩阵为nestN×Di′=K⋅(lowN×Di+upN×Di)−nestN×Di(1)\boldsymbol{nest}'_{N×D_i}=K\cdot(\boldsymbol{low}_{N×D_i}+\boldsymbol{up}_{N×D_i})-\boldsymbol{nest}_{N×D_i}\tag{1}nestN×Di′=K⋅(lowN×Di+upN×Di)−nestN×Di(1)其中,KKK为(0,1)(0,1)(0,1)的随机数。
逐维反向学习策略在进行算法的迭代过程中,当被淘汰的蛋被重新构造代替后,与没有被淘汰的蛋汇集,不再使用CS算法中的整体更新再评价方式评价,而是对更新后的解的每维进行反向学习,将更新的各维度的值映射到它的反向学习数进行空间搜索,淘汰退化维度信息,不但减少各维度间的干扰,而且增加解空间的搜索范围,从而提高搜索效率和寻优能力。逐维进化学习策略考虑了各维度的更新信息,某一维度的值经过反向学习之后与其他维的值组成新的解,根据目标函数适应度评价该新解,如果能够改善当前解的质量,则保留该维度进行反向学习的更新结果;反之,则放弃对于当前维的更新,保留反向学习之前的维度信息,利用这种精英保留的方式将进行下一维的反向学习更新,直到各维度更新完毕。基于逐维反向学习策略,强化了进化维度的信息,减少了标准CS算法随机更新所消耗的评价次数,提高算法的收敛速度和寻优能力;采用精英保留方式,提高了算法的效率。
(2)动态适应
为了提高算法性能,可将发现更新公式中的缩放因子的取值随迭代次数的动态变化作出适应性调节,rrr的取值呈递减趋势,能够在搜索前期跳出局部最优,避免早熟现象;在搜索后期增强算法的局部寻优能力。缩放因子充分利用了当前解的信息动态适应,动态引导解的收敛,有利于提高算法的搜索活力。因此,DA-DOCS算法将其改进成如下公式{xt+1,i=xt,i+r(xt,i−xt,k)r=1tc(2)\begin{dcases}x_{t+1,i}=x_{t,i}+r(x_{t,i}-x_{t,k})\\r=\frac1{t_c}\end{dcases}\tag{2}⎩⎨⎧xt+1,i=xt,i+r(xt,i−xt,k)r=tc1(2)其中,xt,kx_{t,k}xt,k表示ttt代的随机解;tct_ctc表示当前迭代次数。
(3)DA-DOCS算法流程
改进算法流程如图1所示。
图1 DA-DOCS算法流程图
二、实验与结果分析
为了观察分析DA-DOCS算法的收敛速度,本文设定种群规模N=30N=30N=30,被发现概率为0.25,莱维飞行的步长缩放因子分别为0.01和1.5。通过选取的8个测试函数对DA-DOCS算法和标准CS算法进行30次独立实验。测试函数如表1所示,以F1、F3为例。
表1 测试函数
结果显示如下:
函数:F1
CS:最差值: 5.3974e-16,最优值:2.9485e-17,平均值:1.5635e-16,标准差:1.158e-16
DA-DOCS:最差值: 0,最优值:0,平均值:0,标准差:0
函数:F3
CS:最差值: 74.734,最优值:1.0825,平均值:15.0328,标准差:14.7811
DA-DOCS:最差值: 14.8957,最优值:0.33553,平均值:2.4878,标准差:2.8814
结果表明,本文提出的DA-DOCS算法采用逐维方向学习和动态适应的方式,减少维间干扰,扩大搜索范围,动态适应控制缩放因子,有效地提高了CS算法的收敛速度、求解精度和搜索活力。
三、参考文献
[1] 黄闽茗, 何庆, 文熙. 基于逐维反向学习的动态适应布谷鸟算法[J]. 计算机应用研究, 2020, 37(4):1015-1019.
基于逐维反向学习的动态适应布谷鸟算法相关推荐
- 基于java的数据结构学习——泛型动态数组的封装
public class Array<E> {private E[] data;private int size;// 构造函数public Array(int Capacity){dat ...
- 7. 基于策略的强化学习——蒙特卡洛策略梯度REINFORCE算法
前6篇我们都是估计动作值函数Q,从而可以根据估计的Q值选择相应的动作.但是这样的值函数(Value Based)估计方法有着一定的限制.第一,值函数估计方法最后得到的策略是固定策略,不能应对最优策略是 ...
- 基于精英反向学习的逐维改进蜻蜓算法-附代码
基于精英反向学习的逐维改进蜻蜓算法 文章目录 基于精英反向学习的逐维改进蜻蜓算法 1.蜻蜓算法 2. 改进蜻蜓算法 2.1 基于精英反向学习的种群初始化 2. 2 基于贪婪保留的逐维更新策略 2.3 ...
- 基于准反射学习的哈里斯鹰优化算法
文章目录 一.理论基础 1.哈里斯鹰优化算法 2.改进哈里斯鹰优化算法 (1)基于反向学习 (2)基于准反向学习 (3)基于准反射学习 二.仿真实验与分析 三.参考文献 一.理论基础 1.哈里斯鹰优化 ...
- 精英反向学习与二次插值改进的黏菌优化算法ISMA(学习笔记_13)
1.理论分析 1.SMA 优点:较强的全局探索能力 缺点:后期迭代震荡作用较弱,易陷入局部最优:收缩机制不强,收敛速度较慢:初始种群质量低,探索和开发过程难以平衡. 2.精英反向学习机制 反向学习OB ...
- 精英反向学习与黄金正弦优化的HHO算法
文章目录 一.理论基础 1.哈里斯鹰优化算法(HHO) 2.融合精英反向学习与黄金正弦的EGHHO (1)精英反向学习机制 (2)黄金正弦算法 (3)EGHHO优化算法 二.实验仿真与结果分析 三.参 ...
- 融合动态反向学习的阿奎拉鹰与哈里斯鹰混合优化算法
文章目录 一.理论基础 1.阿奎拉鹰优化算法 2.哈里斯鹰优化算法 3.动态反向学习策略 4.融合动态反向学习的阿奎拉鹰与哈里斯鹰混合优化算法 (1)改进混合算法步骤 (2)计算复杂度分析 二.实验仿 ...
- 基于正交设计的折射反向学习樽海鞘群算法
文章目录 一.理论基础 1.樽海鞘群算法 2.正交反向学习樽海鞘群算法OOSSA (1)正交反向学习策略 (2)惯性权重策略 (3)OOSSA算法 二.仿真实验与结果分析 三.参考文献 一.理论基础 ...
- “交通·未来”第10期:基于深度学习的动态系统复杂数据建模方法:以铁路列车晚点预测为例...
前一阵公众号正式推出了"交通·未来"系列线上公益学术活动等你来~, 9月21日晚19:00,我们将迎来活动的第10期. 1.讲座主题 基于深度学习的动态系统复杂数据建模方法:以铁路 ...
最新文章
- Lambda标准格式
- Thymeleaf 简介、教程
- 小括号教学设计导入_丁文丽《含有小括号的混合运算》教学设计
- CentOS-FTP
- 通过python读取ini配置文件
- 腾讯员工举报漏洞被逮捕,“白帽子”的行为边界到底在哪儿?
- 【OpenCV】Chapter7.图像噪声与滤波器
- Can‘t open /dev/sda3 exclusively. Mounted filesystem?
- 汽车云智能采集服务 八爪鱼采集器在汽车行业网站的应用
- 舰队collection服务器维护,舰娘百科 - 专业性的舰队Collection百科全书
- AD域外计算机共享域内打印机出现“无法访问,没有权限访问网络资源,用户不得从此工作站登录网络”
- element-ui的走马灯详解
- 树与图在索引上的区别
- 电脑剪切,电脑剪切快捷键
- (转)如何治疗颈椎突 - 对程序员来说很有用
- 华为nova5 pro怎么升级鸿蒙系统,鸿蒙系统终于来了!这几款华为手机都可以升级了...
- 【leetcode】青蛙跳楼梯问题
- 权衡使用云计算解决方案的利与弊
- 百度APP iOS暗黑模式适配的完美解决方案
- Redis源码——开篇
热门文章
- uni-app获取通话记录 自定义基座打包能成功获取
- 3D点云处理:半径滤波器中值滤波器
- 如何彻底卸载MySQL5.7
- 【贪心算法】Leetcode 714. 买卖股票的最佳时机含手续费
- Swift - SwiftyJSON的使用详解(附样例,用于JSON数据处理)
- 女生神经末梢最多的部位,女性身上哪里神经最多
- 批量静默卸载软件工具制作
- 华为AR路由器端口配置trunk_瑞哥呕心之作——华为HCIA(HCNA)笔记,还不快快收藏!...
- 【总结】 ---ACM为什么这么难
- 使用批处理文件 安装和卸载Windows服务