基本情况
天牛须搜索(Beetle Antennae Search-BAS),也叫甲壳虫须搜索,是2017年提出的一种高效的智能优化算法。 类似于遗传算法、粒子群算法、模拟退火等智能优化算法,天牛须搜索不需要知道函数的具体形式,不需要梯度信息,就可以实现高效寻优。相比于粒子群算法,天牛须搜索只需要一个个体,即一只天牛,运算量大大降低。
仿生原理
天牛须搜索是受到天牛觅食原理启发而开发的算法。
天牛须搜索的生物原理:
当天牛觅食时,天牛并不知道实物在哪里,而是根据食物气味的强弱来觅食。天牛有两只长触角,如果左边触角收到的气味强度比右边大,那下一步天牛就往左飞,否则就往右飞。依据这一简单原理天牛就可以有效找到食物。
天牛须搜索对我们的启发:
食物的气味就相当于一个函数,这个函数在三维空间每个点值都不同,天牛两个须可以采集自身附近两点的气味值,天牛的目的是找到全局气味值最大的点。仿照天牛的行为,我们就可以高效的进行函数寻优。天牛寻找食物图解
基本算法
天牛在三维空间运动,而天牛须搜索需要对任意维函数都有效才可以。因而,
天牛须搜索是对天牛生物行为在任意维空间的推广。
我们采用如下的简化模型假设描述天牛:
1. 天牛左右两须位于质心两边。
2. 天牛步长step与两须之间距离d0的比是个固定常数即step=c*d0其中c是常数。即,大天牛(两须距离长)走大步,小天牛走小步。
3. 天牛飞到下一步后,头的朝向