摘要

天牛须探索(Beetle Antennae Search, BAS)算法具有搜索速度快、运算量少和实施便捷等优点,受到越来越多研究者的关注。但是,由于天牛的大小,BAS算法并不适合远距离的定位,这限制了BAS算法的进一步应用,同时,天牛每次移动的步长未能随着算法的运行而实时变化,这将会导致天牛每次移动的距离与定位所需存在一定的不适应性。针对这种情况,对BAS算法进行改进,提出了基于Chan算法的改进BAS算法。通过对BAS算法各个步骤的分析,针对天牛初始位置、天牛迭代运行方程以及天牛每次移动步长结合实际情况进行改进。对初始位置采用一次定位方式进行确定,将大空间区域定位缩小为小空间区域;对运行方程增加一个实时运行角度进行实时变化,将每次移动距离由定值转换为变值;对步长采用训练方式进行确定,将最合适的步长应用于定位。再将所得数据运用到Chan算法中进行定位。经过Matlab仿真可以发现,经过改进后的BAS算法相较于之前有很大的优化。