萤火虫算法

✍ dations ◷ 2025-06-07 11:52:00 #数学最佳化,算法,图像处理

萤火虫算法(Firefly Algorithm)是一种启发式算法,灵感来自于萤火虫闪烁的行为。萤火虫的闪光,其主要目的是作为一个信号系统,以吸引其他的萤火虫。剑桥大学的Xin-She Yang(音译:杨新社)教授提出了萤火虫算法,其假设为:

亮度应与目标函数联系起来。萤火虫算法是以自然为灵感的启发式优化算法。

萤火虫算法的伪代码可以概括为:

Begin1)目标函数                    f        (                  x                )                          x                =        (                  x                      1                          ,                  x                      2                          ,        .        .        .        ,                  x                      d                                    )                      T                                {\displaystyle f(\mathbf {x} )\quad \mathbf {x} =(x_{1},x_{2},...,x_{d})^{T}}  2)生成一个萤火虫的初始人口                                          x                                i                          ,                (        i        =        1        ,        2        ,        .        .        .        ,        n        )              {\displaystyle \mathbf {x} _{i},\quad (i=1,2,...,n)}  3)制定光照强度                    I              {\displaystyle I}  ,因此,它与                    f        (                  x                )              {\displaystyle f(\mathbf {x} )}     (例如,对于最大化问题                    I                      {\displaystyle I\propto }                      I        =        f        (                  x                )              {\displaystyle I=f(\mathbf {x} )}  ;4)定义吸收系数                    γ              {\displaystyle \gamma }  while(T < MaxGeneration)   for i =1:n(所有n萤火虫)      for j =1:n(n萤火虫)         if(                              I                      j                          >                  I                      i                                {\displaystyle I_{j}>I_{i}}  ),            移动萤火虫i向j;         end if         吸引力与距离                    r        =        exp                              {\displaystyle r=\exp}  ;         评估新的解决方案和更新的光强度;      end for j   end  for i   排名萤火虫和找到当前最佳;end while处理后的结果和可视化;end

对于任何一两只萤火虫的主要更新公式 x i {\displaystyle \mathbf {x} _{i}} and x j {\displaystyle \mathbf {x} _{j}}

其中 α t {\displaystyle \alpha _{t}} 是步长参数, e ϵ t {\displaystyle {\boldsymbol {\epsilon }}_{t}} 是一个矢量(服从高斯或其他的分布)。

可以证明在 γ 0 {\displaystyle \gamma \rightarrow 0} 的情况,FA可以简化为 准粒子群优化(PSO).事实上,,如果内环(j)条被删除,亮度 I j {\displaystyle I_{j}} 替换为当前的全球最佳 g {\displaystyle g^{*}} ,FA基本上成为标准PSO。

离散形式的萤火虫算法(Discrete Firefly Algorithm,DFA)DFA优于现有算法如蚁群算法。

对于图像分割,基于FA-方法比Otsu的方法更为有效.同时, 离散萤火虫算法对QAP问题,Durkota已进很好的实现行

针对负荷预测中的特征选择问题,应用FA实现Wrapper特征选择算法.

Apostolopoulos and Vlachos对FA进行了一个重要的多目标研究。同时,Yang提出了多目标萤火虫算法(Multiobjective Firefly Algorithm,MOFA),对连续优化问题有很好的效果。

拉格朗日萤火虫算法用来解决电力系统优化单元承诺问题。

混沌萤火虫算法(Chaotic Firefly Algorithm,CFA)也显示了算法的有效性。

萤火虫算法与蚁群优化算法相结合的混合算法,能够解决金融投资组合优化。

一种基于萤火虫算法(FA)的Memetic算法(FA-MA)被用来优化支持向量机(SVR)预测模型的参数。在该FA-MA中,FA用来搜索全局解空间,而模式搜索(pattern Search) 被用来进行个体学习和局部解空间搜索。

萤火虫算法已被应用到几乎所有领域科学和工程,如数字图像压缩和图像处理,特征值优化,特征提取和故障检测,天线设计,工程结构设计, 调度和旅行商问题,语义组成,化学相平衡, 聚类,动态问题, 刚性图像配准问题,参数选择,蛋白质折叠问题等等。

相关

  • 郁血性心衰竭心脏衰竭(法语:Insuffisance cardiaque,英语:HF, heart failure),一般意指慢性心脏衰竭(英语:CHF, chronic heart failure)。但是有时则指郁血性心力衰竭(congestive heart failure),当
  • 下肢腿(英语:Leg),通常指人体的下肢,功能之一在于行走。广义来说,是指其到支撑作用的结构,对于动物来说,通常呈近似圆柱状。由于需要分散重力,通常腿部的末端会形成较宽大的结构,例如人类
  • 梯田梯田是一种分层的丘陵种植区。梯田一般采用人工或者管道输送水措施分层保持水土,避免灌溉用水造成快速地面径流。中国在公元前2世纪前后便有梯田的雏形。《诗经·小雅》记载:
  • 格伦·克洛斯格伦·克洛斯(英语:Glenn Close,1947年3月19日-),美国著名电影、电视剧以及舞台剧女演员。以扮演蛇蝎美人式的角色而闻名,如《危险关系》(1988年)中的梅黛侯爵夫人以及《致命的诱惑》
  • 驻外美军驻外美军,是用以统称美军驻扎于美国本土之外全球各地区的部队。目前有美军部署的国家和地区约有一百四十个,1,294,104名现役官兵中有272,609人派驻在美国海外,其中一大部分的派
  • 边收缩在图论中,边收缩是指将一个图的其中一个边移除,并将被移除边的两个顶点合并,同时保持与被移除边之顶点相连的其他顶点之连接关系的一种变换,为图子式理论中的基本算子之一,然而此
  • 钟乳石钟乳石为岩溶生成物,是指碳酸盐岩地区洞穴内,在漫长地质历史中和特定地质条件下形成的钟乳石、石笋、石柱等不同形态碳酸钙沉淀物。钟乳石是滴水石的一种。由于形成时间漫长,钟
  • 世界各国和地区面积列表索引 国防预算 石油储量 军事(武装部队) 死刑 国债 生育率 最高点 官方语言 地理 政体 面积 代码 陆地面积 人口 人口密度 国内生产总值 国徽 国旗 国歌 国家格言 首都 城市
  • 手枪手枪(英语:Handgun),旧时也称手铳、拳铳,是一类可以单手持握射击的小型短管轻兵枪械,多用于近战和自卫,发射手枪弹,一般有效杀伤距离约50米。实际应用中,手枪大多由执法人员执勤时配
  • 罪犯侧写罪犯侧写(英语:offender profiling)是一种行为调查方法,用以协助调查人员侧绘未知犯罪对象或罪犯。罪犯侧写亦可被称为“罪犯性格侧写”、“犯罪学侧写”、“行为侧写”或是“犯