FA萤火虫算法

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

萤火虫算法(GSO与FA)

1 前言

仿生群智能优化算法是近些年来国内外学者研究的热点问题,其主要的思想是研究或者模仿自然界群体生活的生物的社会行为而构造的随机搜索方法。目前研究比较多的有两种算法:蚁群算法(ACO)和粒子群算法(PSO)。有研究结果表明,仿生群智能优化算法为许多应用领域提供了新思路和新方法。

2005年,印度学者K.N.Krishnanand和D.Ghose在IEEE群体智能会议上提出了一种新的群智能优化算法,人工萤火虫群优化(Glowworm Swarm Optimization, GSO)算法。2009年,剑桥学者Xin-She Yang根据自然界中萤火虫的发光行为提出萤火虫算法(Firefly Algorithm, FA)。自这两种萤火虫算法提出以来,各国学者对这两种算法进行了研究、改进和应用。经过几年的发展,在连续空间的寻优过程和一些生产调度方面萤火虫算法具有良好的应用前景。

GSO和FA有相似的方面,但在具体实现方面有一定差异。本文具体介绍和分析了这两种算法及其改进算法。

2 关于GSO(人工萤火虫)

在GSO算法中,每一只人工萤火虫散步在解的空间中

个人感觉这个解空间,就是目标函数的取值

这些萤火虫带着荧光,并且拥有各自的视线范围,称为决策域(local-decision range)。

个人感觉:这里可以类比AFSA(人工鱼群中的相关的函数的概念)

亮度与自己所在位置上的目标值有关。越亮的萤火虫表示它所在的位置越好,即有较优的目标函数值。

个人感觉:这里的思想十分类似AFSA中涉及到的目标函数大的地方,个体聚集的就多,而且越来愈多

萤火虫会在决策域范围内寻找邻居集合,在集合当中,越亮的邻居拥有越高的吸引力吸引此萤火虫往这个方向移动,每一次的飞行方向会随着挑选的邻居不同而改变。此外,决策域范围的大小会受到邻居数量的影响,当邻居密度越低,萤火虫的决策半径会加大以寻找更多的邻居;当邻居密度越高,它的决策半径会缩小。最后,大部分萤火虫会聚集在多个位置上,即达到极值点。

个人感觉:这里体现出了与AFSA的区别,AFSA在多个cluster聚在一起之后,没有收束相关半径的情节,但是GSO中有收束相关密度半径的情节

简单的说,GSO算法主要包含四个阶段:萤火虫的部署(初始化)、荧光素更新、位置更新阶段和决策半径更新阶段

3 GSO算法描述

3.1初始化

3.2更新荧光素

所谓荧光素,个人理解就是目标函数的取值,但是受到在不同时刻会发生变化的某函数影响3.3寻找萤火种邻居

3.4确定萤火虫的移动方向

3.5更新位置

这里感觉与AFSA的递进位置的部分几乎一模一样,只是GSO部分是离散的,而AFSA是连

续的

3.6更新动态决策域

4 算法流程

5 关于FA(萤火虫)算法

把空间各点看成萤火虫,利用发光强的萤火虫会吸引发光弱的萤火虫的特点。在发光弱的萤火虫向发光强的萤火虫移动的过程中,完成位置的迭代,从而找出最优位置,即完成了寻优过程。

萤火虫算法有以下条件:

1. 假设所有萤火虫都是同一性别且相互吸引;

2. 吸引度只与发光强度和距离有关,发光强的萤火虫会吸引周围发光弱的萤火虫,但是随着距离的增大吸引度逐渐减小,发光强的萤火虫会做随机运动; 个人感觉这里的设定十分相似于AFSA

3. 发光强弱由目标函数决定,在制定区域内与指定函数成比例关系。

搜索过程和萤火虫的两个重要参数有关:萤火虫的发光亮度和相互吸引度,发光亮的萤火虫会吸引发光弱的萤火虫向它移动,发光越亮代表其位置越好,最亮萤火虫即代表函数的最优解。发光越亮的萤火虫对周围萤火虫的吸引度越高,若发光亮度一样,则萤火虫做随机运动,这两个重要参数都与距离成反比,距离越大吸引度越小。

6 FA的算法描述

6.1相对荧光亮度

6.2相互吸引度

6.3最优目标迭代

这里感觉十分类似SA,存在一定的跳出BP网络中一定会出现的局部极值的有利条件,也含有南辕北辙的风险

7 FA算法基本流程

这里十分容易误导人,相遇吸引度的函数值小的吸引大的而且已经处在最佳位置的目标函数竟然是随机移动

8 FA算法的弊端

发现率低、求解精读不高、求解速度慢。

9 FA算法改进实例

9.1混沌萤火虫算法

9.1.1混沌萤火虫算法流程

9.1.2改进型混沌萤火虫算法流程

9.2变步长萤火虫算法

相关文档
最新文档