文章 "射箭算法(Archery Algorithm, AA)"

 

新文章 射箭算法(Archery Algorithm, AA)已发布:

本文详细探讨了受射箭启发的优化算法——射箭算法(Archery Algorithm, AA),重点介绍了如何使用轮盘赌法(roulette method)作为选择“箭矢”目标区域的机制。该方法允许评估解决方案的质量,并选择最有希望的位置进行进一步的探究。

射箭算法(AA)是一种全新的随机优化方法,旨在寻找优化问题的最优解,其灵感来源于射箭者瞄准目标的行为。AA模拟了向目标射箭的过程。群体中的每个成员代表优化问题的一个潜在解,它们在搜索空间中的位置会根据随机选择的“目标”成员的表现进行更新,这类似于射箭者根据他们想要击中的位置调整瞄准方向。

群体以矩阵的形式表示,其中每一行对应一个成员(解),每一列对应问题的一个维度。这样可以根据目标函数值对决策进行结构化的评估和更新。每个成员的表现通过目标函数进行评估,该函数量化了找到的解的质量。结果存储在一个向量中,这使得算法可以比较不同解的效率。

目标被划分为若干区域,其宽度对应种群成员的生产力。计算概率函数以根据目标函数值确定每个成员被选中的概率,表现更优的“射箭者”被选中的概率更高。基于累积概率随机选择群体中的一个成员,模拟射箭者选择目标的过程。这一选择会影响其他成员位置的更新方式。该算法使用特定的方程在搜索空间中更新每个“射箭者”的位置。更新取决于所选“射箭者”的目标函数值是否优于当前值。这一过程涉及随机性,以探索搜索空间。AA以迭代的方式工作,直到达到停止条件(最大迭代次数)为止。在此过程中,算法会跟踪找到的最优解。


作者:Andrey Dik