优化算法之萤火虫算法(firefly algorithm)

智能优化算法有很多是模仿自然界中的生物行为进行的,例如众所周知的粒子群算法、遗传算法等,最近新看到一种算法,萤火虫优化算法(firefly algorithm)。
FA主要是利用萤火虫发光的特点进行随机优化。利用萤火虫个体模拟解空间的可行解,目标函数值表示萤火虫的亮度,较亮的萤火虫会吸引其他个体向这个方向进行位置移动,他们之间的吸引力与距离成反比,如果某个萤火虫周围没有更亮的个体,它选择不移动或者随机变换位置。两只萤火虫之间的吸引力计算公式如下:这里写图片描述
贝塔0是指距离为0时的吸引力值,rij表示两只萤火虫之间的欧式距离,拉姆塔一般表示对光的吸收率,通常取1.
这里写图片描述
萤火虫会飞向更亮的萤火虫位置处,其位置更新公式为:
这里写图片描述

其中阿尔法是[0,1]之间的随机数,另一个因子是服从均匀分布的随机因子。
算法流程如下
1、初始化各个参数和每只萤火虫的位置
2、计算每对萤火虫之间的吸引力,选取萤火虫移动的方向
3、更新整个种群中萤火虫的位置,更新萤火虫的最优位置
4、判断是否达到终止条件,是就结束算法,否则就返回步骤2继续进行

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值