萤火虫算法(精华版)

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

2. 算法原理
在基本人工萤火虫群优化算法中,每一只人工萤火虫都 被随机的分布在目标函数的定义空间内,这些萤火虫拥有 各自的荧光素,并且每一个萤火虫都有自己的视野范围, 我们称之为决策域半径(local-decision range)。每个萤火虫荧 光素的亮度和自己所在位置对应目标函数的适应度值有关。 荧光越亮的萤火虫表示它所在的位置就越好,即它所对应 的目标函数值也更优。萤火虫的移动方式是:每个萤火虫 在各自的视野范围内寻找邻域,在邻域中找到发出荧光较 亮的萤火虫从而向其移动。每次移动的方向会因为挑选的 邻域不同而改变。另外,萤火虫的决策域半径也会根据邻 域中萤火虫数量的不同而受影响,当邻域中萤火虫数目过 少时,萤火虫会加大自己的决策半径以便需找更多的萤火 虫;反之,就会减小自己的决策半径。最终,使得大部分 萤火虫聚集在较优的位置上。
@第五组
3. 算法公式
4. 算法实现优化的过程
(1)先将萤火虫群体随机散布在解空间,每一只 萤火虫因为所处位置不 同 发出的荧光度也不同, 通过比较,亮度高的萤火虫可以吸引亮度低的萤火 虫向自己方向移动,移动的距离主要取决于吸引度 的大小。 (2)为了加大搜索区域,避免过早陷入局部最优, 在位置更新过程中增加了扰动项,根据位置更新公 式计算更新后的位置。这样通过多次移动后,所有 个体都将聚集在亮度最高的萤火虫位置上,从而实 现最优。
算法流程图如下:
5. Matlab仿真
测试函数:
F1( x) exp(( x1 3)2 ( x2 5)2 ) exp(x12 x22 ) 10 x 10
F 2( x) exp(( x1 4)2 ( x2 4)2 ) exp(( x1 4)2 ( x2 4) 2 ) 2*exp( x12 ( x2 4)2 ) 2*exp( x12 x22 )
图3 F1(x)的三维效果图
图4 萤火虫算法对F1(x)寻优的结果
图6 F2(x)的三维效果图
图8 萤火虫算法对F2(x)寻优的结果
6. 适用领域
Krishnanand, K.N. 和 Ghose, D. 已将该算法成功应用于多信号源探测和多 模态函数优化领域。 2006年,Krishnanand, K.N. 等人将萤火虫群优化算法应用于集体机器人、 多信号源定位和探测多辐射源领域,并给出了带有动态局部决策范围的 萤火虫群优化算法寻找多个源位置的理论推导。 2007年,Krishnanand, K.N. 等人将萤火虫群优化算法应用于追踪多个移 动信号源位置领域和寻找多个气味源位置的网络机器人系统领域。 2008年,Krishnanand, K.N. 和 Ghose, D. 给出了萤火虫群优化算法应用 于多定位领域的理论基础,并用萤火虫群优化算法捕获多极值函数的多 个局部最优值,此外,还将基于多机器人系统的萤火虫群优化算法应用 于信号源定位领域。 2009年,Krishnanand, K.N.和 Ghose, D. 用萤火虫群优化算法来优化多极 值函数,并捕获多极值函数的多个局部最优值。此Krishnanand, K.N. 和 Ghose, D. 还用基于多种群的萤火虫群优化算法来检测环境中普遍存在 的危险之源。 但在国内,对人工萤火虫群优化算法的研究还刚起步,可参考文献少。
萤火虫算法及其应用研究
小组分工

PPT讲解
陈国强
徐越

PPT制作
吴顺
胡福威
刘浩

Matlab仿真
肖慧敏
王丹娜
1
2
算法产生背景
算法原理 算法公式 算法实现流程 Matlab仿真 适用领域
Байду номын сангаас
CONTENTS
目 录
3 4 5 6
7
优缺点
1. 算法产生背景
人工萤火虫群优化(Glowworm Swarm Optimization,GSO)算 法是印度学K.N.Krishnanand 和 D. Ghose 于 2005 年提出的一种新 型群智能优化算法。 算法思想源于模拟自然界中萤火虫在晚上群聚活动的自然现 象而提出的,在萤火虫的群聚活动中,各只萤火虫通过散发荧光 素与同伴进行寻觅食物以及求偶等信息交流。一般来说,荧光素 越亮的萤火虫其号召力也就越强,最终会出现很多萤火虫聚集在 一些荧光素较亮的萤火虫周围。人工萤火虫算法就是根据这种现 象而提出的一种新型的仿生群智能优化算法。在人工萤火虫群优 化算法中,每只萤火虫被视为解空间的一个解,萤火虫种群作为 初始解随机的分布在搜索空间中,然后根据自然界萤火虫的移动 方式进行解空间中每只萤火虫的移动。通过每一代的移动,最终 使得萤火虫聚集到较好的萤火虫周围,也即是找到多个极值点, 从而达到种群寻优的目的。
上述两个函数中,F1(x)是在 的范围中具有两个峰值函数, F2(x)是在 的范围中具有四个峰值函数。
图1 F1(x)的寻优结果
图2 F2(x)的寻优结果
• 由图1有F1(x)中 x1=-0.00305386358606,x2=-0.000797745261189 时函数取得最大值。即此时F1(x)=0.999990037569430。 • 由图2有F2(x)中 x1=0.000499802298797,x2=0.001861886962702时 函数取得最大值。即此时F2(x)=1.999992788904963。

7. 算法优缺点


优点:萤火虫算法不仅可以优化单峰函数和多峰函数,而 且该算法具有较强的局部搜索能力可以在一个娇小的区域 内找到该区域的最优解。操作方便、实现简单、参数较少、 而且参数对算法的影响较小。 缺点:萤火虫算法必须要求感知范围内有优秀个体向其提 供信息,否则个体将停止搜索,这种搜索方法对优秀个体 的依赖程度太高,从而降低了收敛速度;而且,当个体距 离峰值非常近时,由于步长可能大于该距离,将导致个体 在峰值附近发生震荡现象。
相关文档
最新文档