没有合适的资源?快使用搜索试试~ 我知道了~
基于连续空间的萤火虫算法改进.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 53 浏览量
2022-07-13
16:26:59
上传
评论
收藏 304KB DOCX 举报
温馨提示
基于连续空间的萤火虫算法改进.docx
资源推荐
资源详情
资源评论
启发式算法是当代全局优化算法、智能计算以及软计算的重要组成部分。
这类算法的灵感大多来源于科学家们对自然界多种机构之间交互方式的观察,
其中又以基于种群的启发式搜索算法
[1]
为主。这些算法在使用测试函数进行全
局优化问题试验时,表现出不同的特性
[2]
,这是由其基本原理决定的。粒子群算法
是基于鸟类和鱼类的群居行为提出的
[3]
。蚁群算法于 1992 年提出,源于蚂蚁觅
食过程中的搜索行为
[4]
。布谷鸟算法模拟部分布谷鸟的寄生育雏行为
[5]
,常用于
在性能与全局寻优方面与其它启发式算法进行比较
[6]
。在这类算法中,萤火虫算
法(Firefly Algorithm,FA)在处理多模态全局优化问题上较为有效。
萤火虫算法是一种源于热带萤火虫发光行为的启发式算法
[7]
。该算法的原
理为萤火虫寻找伙伴时的趋光性。萤火虫在空间中会向附近最亮的萤火虫移动,
相互吸引,以此对其位置进行更新
[8]
。目前国内外都对萤火虫算法进行了一定的
研究。文献[9]提出了基于萤火虫算法的新颖图像检索方法,用以提高检索反馈
样本的性能。文献[10]引入多种群技术及权重系数因子来细分萤火虫种群。这
些研究使得萤火虫算法在图像处理、控制优化、生产管理、电力系统、神经网
络训练等领域得到了应用。
但是,萤火虫算法存在着收敛精度低以及容易陷入局部最优等缺点。针对
上述缺陷,研究人员从多个角度对萤火虫算法进行了改进和应用,包括参数、移
动方式、新的吸引策略、算法混合以及算法的学科应用。
为了增加算法的全局搜索能力,文献[11]通过将交叉熵(Cross Entropy,CE)
嵌入萤火虫算法,提出了一种新型的混合元启发式算法。文献[9]在萤火虫算法
中引入相对亮度差异来动态调整其步长,并将改进的萤火虫算法与用户反馈结
果相结合,优化特征选择并对支持向 量 机(Support Vector Machine,SVM)进行
参数寻优,以提高图像检索精度。文献[12]先采用新的吸引度模型来确定被吸引
的萤火虫数量,再设计新的搜索运算符进行优化,用以增强其全局寻优能力。文
献[13]采用部分吸引力模 型和快速吸引力计算策略,用以保留群体多样性并充
分利用个人信息,确保了个人之间的信息共享,提高了收敛精度。文献[14]融合
了粒子群(Particle Swarm Optimization,PSO)算法与萤火虫算法,提出了 3 种新
颖的算子,将混合算法的种群分为两个子种群,分别选择 FA 和 PSO 作为其基本
算法来进行优化过程。该算法通过两个子群体交换信息,以便充分利用 PSO 和
FA 的优点,但整个算法的停滞程度超过了预定义的阈值。
文献[15]将萤火虫算法引入人工智能领域,提出一种具有高斯 干 扰 和局部
搜索能力的 FA 算法。然后,使用随机吸引模型更新群体,将粒子的当前位置与
粒子的历史最佳位置进行比较。该方法增强了种群多样性,且提高了优化精度。
文献[16]将潮汐力公式用于修改萤火虫算法,在新的算法中不再使用吸光系数,
提高了算法性能和效率。文献[17]对萤火虫种群进行分组,每个萤火虫都会根据
与之相距最近的组的亮度进行寻优,而每个组之间又可以进行信息交换。各组
别中,适应度最高的萤火虫之间相互吸引,从而寻找全局最优。
上述改进方法表明,传统萤火虫算法存在着缺陷。在迭代过程中,萤火虫算
法在全局寻优方面的表现不佳。现有研究多致力于将萤火虫算法与其它鲁棒性
优异的算法相结合,构建新的混合算法
[18]
,并以此嵌入到 FA 的薄弱环节中,提高
FA 的性能。混合算法着重于强调多组的概念
[19]
,以 FA 以及 PSO 为基础算法对
种群进行优化。混合算法也可通过使用新颖的吸引度计算式或改变其移动策略
来降低算法复杂度
[20]
。除此以外,使用精英策略加速算法收敛也是一种研究方
向,但是该改进对传统算法结构简单、可操作性强的优点会造成负面影响,且对
算法性能的改善也不够完备
[21]
。
终上所述,本文将从理论上对传统算法的缺陷进行改进,采用多种经典测试
函数验证改进后的算法,并将新方法与传统算法进行对比。
1 萤火 虫算 法原理
在萤火虫算法中,每个萤火虫都对应着一个解空间中的可行解。萤火虫在
此位置的亮度表示萤火虫在该位置的适应度,萤火虫亮度越高则表明越接近最
优解
[22]
。萤火虫之间也会互相吸引,越亮的萤火虫吸引力越大。解空间存在传
播介质吸收光,所以距离越近的萤火虫吸引力越大
[23]
。在实现算法前需要完成
几个假设
[24]
:
假设 1 萤火虫雌雄同体,所以一只萤火虫会被其他萤火虫吸引这种属性与
性别无关
[25]
;
假设 2 吸引力与亮度成正比,并且随着距离的增加而减小。因此,对于任何
两只闪烁的萤火虫,较暗的那只会向较亮的那只移动。如果没有比那只萤火虫
更亮的萤火虫,则这只萤火虫将随机移动;
假设 3 萤火虫的亮度是由设计的目标函数决定的。
萤火虫之间的相对吸引度计算式为
β(r)=β
0
e-γr2
(1)
式中,β
0
为萤火虫之间的初始吸引度;γ 为解空间介质的吸光系数;r 为萤火虫
之间的距离。萤火虫 i 会被另外一个更亮的个体所吸引,其移动方式由式(2)决
定
xit+1= xit+β
0
e-γrij2(xjt- xit)+α
t
rand(·)
(2)
式中, xjt 表示在 t 时刻比个体 i 更亮的萤火虫的位置;r
ij
表示萤火虫 i、j 之
间的距离;式中第 3 项是以 α
t
为随机扰动参数的步长扰动,若 β
0
=0 那么萤火虫 i
则做随机运动,若 γ=0,则变为一种粒子群运动的变体
[26]
。
种群中适应度最高(亮度最大)的个体移动方式由式(3)决定。其中,α
t
会随萤
火虫代数增加而减小
[27]
。
xit+1= xit+α
t
rand(·)
(3)
传统萤火虫算法的基本步骤如下:
步骤 1 初始化种群;
步骤 2 计算萤火虫个体适应度值,适应度越高的萤火虫亮度越高;
步骤 3 每个萤火虫向比自己亮度更高的萤火虫飞行;
步骤 4 最亮的萤火虫更新自身位置;
步骤 5 到达最大迭代次数时输出结果,否则返回步骤 2。
传统萤火虫算法存在着许多问题:(1)算法过早收敛,导致陷入局部最优;(2)
控制参数选取不合适,导致无法收敛;(3)难以解决多目标优化或含有多个约束条
件的问题
[28]
。
2 算法 优化
当迭代需要计算萤火虫种群吸引度时,不再仅仅对离散的个体计算其吸引
度或是吸引度分量。实际应用中,萤火虫个体之间产生吸引时,其对周围空间也
产生一定的影响,那么萤火虫的移动方式就不仅受到当前适应度最高个体的影
响。
萤火虫在寻优过程中不应仅以限定步长向更优解跳动。为了保证其快速性
与收敛性,步长应当随着迭代次数的增加而下降,渐渐形变为微调的方式前进。
剩余10页未读,继续阅读
资源评论
罗伯特之技术屋
- 粉丝: 4437
- 资源: 1万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C/C++基本框架及解释
- 使用OpenGL实现透明效果
- java房屋租赁系统源码 房屋房源出租管理系统源码数据库 MySQL源码类型 WebForm
- JAVA的Springboot博客网站源码数据库 MySQL源码类型 WebForm
- c++数字雨实现 c++
- 如何制作MC(需要下载海龟编辑器2.0,下载pyglet==1.5.15)
- JAVA的Springboot小区物业管理系统源码数据库 MySQL源码类型 WebForm
- IMG_20241103_153322.jpg
- Screenshot_2024-11-10-20-33-57-639_com.tencent.tmgp.pubgmhd.jpg
- C#商家会员管理系统源码带微信功能数据库 SQL2008源码类型 WebForm
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功