新起点
蝙蝠算法
2020-06-14 19:33:14

蝙蝠算法(Bat Algorithm,缩写 BA),是一种元启发式优化算法,是杨新社(音译自:Xin-She Yang)在2010年提出的算法。这个蝙蝠算法以微蝙蝠(microbats)回声定位行为的基础,采用不同的脉冲发射率和响度。

把蝙蝠的回声定位理想化,可以总结如下:每个虚拟蝙蝠有随机的飞行速度 v i {\displaystyle v_{i}} 在位置 x i {\displaystyle x_{i}} (问题的解),同时蝙蝠具有不同的频率或波长、响度 A i {\displaystyle A_{i}} 和脉冲发射率r。蝙蝠狩猎和发现猎物时,它改变频率、响度和脉冲发射率,进行最佳解的选择,直到目标停止或条件得到满足。这本质上就是使用调谐技术来控制蝙蝠群的动态行为,平衡调整算法相关的参数,以取得蝙蝠算法的最优。

根据Yang (2010)的文章, 新的解 x i t {\displaystyle x_{i}^{t}} 和速度 v i t {\displaystyle v_{i}^{t}} 更新方程:

其中,随机数为均匀分布。 x {\displaystyle x_{*}} 是目前找到最优解。

A和r应该在迭代中变换:

其中, 0 < α < 1 {\displaystyle 0<\alpha <1} γ > 0 {\displaystyle \gamma >0} 是常数。

蝙蝠算法已用于工程设计、分类等应用。把蝙蝠算法(BA)与遗传算法(GA)、PSO等方法进行比较,并用于训练神经网络,得出的结论清楚显示:蝙蝠算法比其他算法有很好优势。

相关:

网站公告: