算术优化算法AOA(学习笔记_10)

1. 算法简介

  • 算术优化算法(Arithmetic Optimization Algorithm, AOA)是一种根据算术操作符的分布特性实现全局寻优的元启发式优化算法。
    • 乘除运算提高位置更新的全局分散性
    • 加减运算提高位置更新在局部区域的精确性
  • 于2021 年由 Abualigah 等人提出。
  • 具有收敛速度快,精度高等特点。

2. 理论基础

  • 算法分为三步:
    • 通过数学优化器加速函数选择优化策略
    • 探索阶段:利用乘法策略与除法策略进行全局搜索,提高解的分散性,增强算法的全局寻优与克服早熟收敛能力,实现全局探索寻优。
    • 开发阶段:利用加法策略与减法策略降低解的分散性,有利于种群在局部范围内充分开发,加强算法的局部寻优能力。
(1) 数学优化加速函数

AOA 通过数学优化器加速函数(Math Optimizer Accelerated, MOA)选择搜索阶段。

  • r1 > MOA 时,AOA 进行全局探索

  • r1 < MOA 时,AOA 进入局部开发阶段。
    在这里插入图片描述

  • 其中,r1 代表 0 到 1 之间的随机;Min 与Max 分别是加速函数的最小值和最大值,为 0.2 和 1。

(2)探索阶段

AOA 通过乘法运算与除法运算实现全局搜索。

  • r2 < 0.5 时,执行除法搜索策略

  • r2 > 0.5 时,执行乘法搜索策。

  • 其位置更新公式如下:
    在这里插入图片描述

  • 其中,r2∈[0,1] ;μ是调整搜索过程的控制参数,值为 0.499;ε为极小值;数学优化器概率(Math Optimizer Probability, MOP)(如图1所示)计算公式如下:
    在这里插入图片描述
    其中,α是敏感参数,定义了迭代过程中的局部开发精度,取值为5。
    算术优化算法AOA(学习笔记_10)_第1张图片
    图1 数学优化器概率曲线图

(3)开发阶段

AOA 利用加法运算与减法运算实现局部开发,位置更新公式如下:
在这里插入图片描述
其中,r3为[0,1]的随机数。

3. AOA的伪代码

算术优化算法AOA(学习笔记_10)_第2张图片

4.参考文献

[1] Abualigah L , Diabat A , Mirjalili S , et al. The Arithmetic Optimization Algorithm[J]. Computer Methods in Applied Mechanics and Engineering, 2021, 376:113609.
[2] 贾鹤鸣, 刘宇翔, 刘庆鑫, 王爽, 郑荣. 融合随机反向学习的黏菌与算术混合优化算法[J]. 计算机科学与探索, 0, (): 1-12.DOI:10.3778/j.issn.1673-9418.2105016.

你可能感兴趣的:(算法,启发式算法,机器学习)