当前位置: 首页 > backend >正文

2023年ASOC SCI2区TOP,随机跟随蚁群优化算法RFACO,深度解析+性能实测

目录

    • 1.摘要
    • 2.连续蚁群优化算法ACOR
    • 3.随机跟随策略
    • 4.结果展示
    • 5.参考文献
    • 6.代码获取
    • 7.算法辅导·应用定制·读者交流


1.摘要

连续蚁群优化是一种基于群体的启发式搜索算法(ACOR),其灵感来源于蚁群的路径寻找行为,具有结构简单、控制参数少的特点。然而,在面对多峰和高维优化问题时,该算法常常受限于可行域空间中的局部区域,这对找到最优解点所需的计算效率产生了负面影响。为了缓解这一局限性,本文提出了一种随机跟随策略,用来增强蚁群搜索代理与其他蚁群成员在搜索维度内的交流能力,结合该策略所提出的算法被称为随机跟随蚁群优化算法(RFACO)。

2.连续蚁群优化算法ACOR

2008年EJOR SCI2区,连续蚁群优化算法ACOR,深度解析+性能实测

3.随机跟随策略

ACOR在图像分割、工程优化和数据聚类等连续空间问题中表现出良好的性能。然而算法在处理复杂问题时存在两大缺陷:一是收敛速度较慢,二是容易陷入局部最优,尤其在面对多峰、复合及组合类函数时更为明显。为克服这些问题,本文借鉴CS的维度变异思想和SSA的贪婪选择机制,提出了一种随机跟随策略,并将其嵌入到 ACOR 算法中,该策略通过引入搜索代理在特定维度上的扰动与筛选操作,显著提升了算法的全局搜索能力与收敛速度。
V j = { s ˉ i j + c 1 ⋅ ( l b + c 2 ⋅ ( u b − l b ) ) , j ≤ k and  r a n d > 0.5 s ˉ i j − c 1 ⋅ ( l b + c 2 ⋅ ( u b − l b ) ) , j ≤ k and  r a n d ≤ 0.5 ( T e m p + s ˉ i j ) / 2 , otherwise V_j = \begin{cases} \bar{s}_i^j + c_1 \cdot \left( lb + c_2 \cdot (ub - lb) \right), & j \leq k \text{ and } rand > 0.5 \\ \bar{s}_i^j - c_1 \cdot \left( lb + c_2 \cdot (ub - lb) \right), & j \leq k \text{ and } rand \leq 0.5 \\ \left( Temp + \bar{s}_i^j \right) / 2, & \text{otherwise} \end{cases} Vj= sˉij+c1(lb+c2(ublb)),sˉijc1(lb+c2(ublb)),(Temp+sˉij)/2,jk and rand>0.5jk and rand0.5otherwise

自适应阶跃控制参数 c 1 c_1 c1定义为:
c 1 = 2 × e − ( 4 ⋅ f e s M a x f e s ) 2 c_1=2\times e^{-\left(\frac{4\cdot fes}{Max_{fes}}\right)^2} c1=2×e(Maxfes4fes)2

RFACO伪代码

RFACO流程图

4.结果展示




5.参考文献

[1] Zhou X, Gui W, Heidari A A, et al. Random following ant colony optimization: Continuous and binary variants for global optimization and feature selection[J]. Applied Soft Computing, 2023, 144: 110513.

6.代码获取

7.算法辅导·应用定制·读者交流

http://www.xdnf.cn/news/12699.html

相关文章:

  • 蓝桥杯 国赛2024python(b组)题目(1-3)
  • 计算机视觉——相机标定
  • SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)
  • 阿里云 RDS mysql 5.7 怎么 添加白名单 并链接数据库
  • 【物联网-ModBus-RTU
  • day029-Shell自动化编程-计算与while循环
  • 使用Conda管理服务器多版本Python环境的完整指南
  • Java毕业设计:办公自动化系统的设计与实现
  • 不等式是否满足约束并输出最大差 - 华为OD机试真题(JavaScript 题解)
  • Python60日基础学习打卡Day46
  • 《高等数学》(同济大学·第7版)第二章第四节“隐函数及由参数方程所确定的函数的导数“
  • vue3单独封装表单校验函数
  • 使用 Laravel 中的自定义存根简化工作
  • 【笔记】WSL 中 Rust 安装与测试完整记录
  • 数控滑台技术革新:实现高效精密加工的全面探索
  • 深入剖析MySQL存储架构,索引结构,日志机制,事务提交流程
  • Java基于SpringBoot的校园闲置物品交易系统,附源码+文档说明
  • 《操作系统真相还原》——初探进程
  • 算法-多条件排序
  • 打卡day47
  • Coderider 试用报告
  • 1Panel运行的.net程序无法读取系统字体(因为使用了docker)
  • 硬盘寻址全解析:从 CHS 三维迷宫到 LBA 线性王国
  • 栈(Stack)的学习指南
  • 嵌入式学习笔记 - freeRTOS xTaskResumeAll( )函数解析
  • frida简介及环境搭建
  • 【数据结构】6. 时间与空间复杂度
  • AI-Sphere-Butler之如何启动AI全能管家教程(WSL测试环境下适用)
  • C++修炼:C++11(二)
  • GPT-5:不止于回答,AI学会了“思考”