课题需要,简单研究一下萤火虫算法。
1萤火虫算法由来
萤火虫在自然界中主要是靠自身发出的光来与同伴之间传递信息或吸引食物,但是光会在传递的过程中被吸收掉。所以距离越远的萤火虫信息传递的准确性越差。基于这样的信息英国剑桥学着Yang提出了萤火虫算法(Firely Algorithm,FA)
2萤火虫算法的应用原理
把空间各点看成萤火虫,利用发光强的萤火虫会吸引发光弱的萤火虫的特点。在发光弱的萤火虫向发光强的萤火虫移动的过程中,完成位置的迭代,从而找出最优位置,即完成了寻优过程。
萤火虫算法有以下条件;
(1)假设所有萤火虫都是同一性别且相互吸引;
(2)吸引度只与发光强度和距离有关,发光强的萤火虫会吸引周围发光弱 的萤火虫,但是随着距离的增大吸引度逐渐减小,发光强的萤火虫会做随机运动;
(3)发光强弱由目标函数决定,在制定区域内与指定函数成比例关系。
搜索过程和萤火虫的两个重要参数有关:萤火虫的发光亮度和相互吸引度,发光亮的萤火虫会吸引发光弱的萤火虫向它移动,发光越亮代表其位置越好,最亮萤火虫即代表函数的最优解。发光越亮的萤火虫对周围萤火虫的吸引度越高,若发光亮度一样,则萤火虫做随机运动,这两个重要参数都与距离成反比,距离越大吸引度越小。
3萤火虫算法数学描述
4萤火虫算法改进实例
一种混沌萤火虫算法
变步长萤火虫算法
参考文献:李瑞青. 改进的萤火虫算法及应用[D]. 吉林大学, 2015.
高伟明. 萤火虫算法的研究与应用[D]. 兰州大学, 2013.
付强, 蒋睿奇, 王子龙,等. 基于改进萤火虫算法的土壤水分特征曲线参数优化[J]. 农业工程学报, 2015(11):117-122.