1.背景
2015年,H Shareef等人闪电自然现象启发,提出了闪电搜索算法(Lightning Search Algorithm, LSA)。
2.算法原理
2.1算法思想
LSA受到闪电梯级先导传播机制的启发: 放电体参与形成二叉树结构并且在分叉点同时形成 2 个先导尖端。考虑了闪电的概率性质和曲折特征,通过相对能量来控制算法的探索和开发能力。
2.2算法过程
放电体建模
过渡放电体产生了梯级先导的初始种群,空间放电体试图到达最好的先导位置,先导放电体代表当前的最优位置,考虑到闪电的概率性质完成了 3 种放电体的建模。先导尖端在早期形成,经过渡向随机方向喷出放电体,因此过渡放电体 pt 可被认为是从解空间[m,n]上取得的随机数并服从均匀分布:
f
(
p
t
)
=
{
1
n
−
m
,
m
⩽
p
t
⩽
n
0
,
p
t
<
m
or
p
t
>
n
(1)
f( p^t) = \begin{cases}\frac{1}{n - m}, m\leqslant p^t\leqslant n\\{}\\0 , p^t < m\quad\text{or}\quad p^t > n\end{cases}\tag{1}
f(pt)=⎩
⎨
⎧n−m1,m⩽pt⩽n0,pt<morpt>n(1)
梯级先导尖端形成以后,先导者电离先导尖端附近部分来移动放电体。空间放电体服从指数分布:
p
i
_
n
e
w
s
=
p
i
s
±
e
x
p
r
a
n
d
(
d
i
)
(2)
p_{i\_\mathrm{new}}^s = p_i^s \pm \mathrm{exprand}( d_i)\tag{2}
pi_news=pis±exprand(di)(2)
LSA 认为先导放电体是从标准正态分布中抽取的随机数:
p
i
−
new
l
=
p
i
l
+
normrand
(
u
,
σ
)
(3)
p_{i_{-\text{new}}}^l = p_i^l + \text{normrand}( u ,\sigma)\tag{3}
pi−newl=pil+normrand(u,σ)(3)
u 为形状参数,σ 为控制放电体开发能力的相对能量。
分叉方式形成新通道
1.放电体通过碰撞会形成新的一个放电体p,其所处通道与原放电体相互对称,保留二者中的较优者,此时种群数量不会增加:
p
ˉ
=
a
+
b
−
p
(4)
\bar{p} = a + b - p\tag{4}
pˉ=a+b−p(4)
2.设置一个最大通道时间 max_time,在达到max_time 时,用最优的通道代替最差的通道进行通道更新。
流程图
3.结果展示
4.参考文献
[1] Shareef H, Ibrahim A A, Mutlag A H. Lightning search algorithm[J]. Applied Soft Computing, 2015, 36: 315-333.