一、理论基础
1、基本鲸鱼优化算法
请参考这里。
2、基于自适应参数及小生境的改进鲸鱼优化算法
(1)自适应概率阈值
本文引入自适应参数代替原有的概率阈值,该自适应阈值可随着算法的迭代在
[
0
,
1
]
[0,1]
[0,1]变化,使得鲸鱼在不同时期有较大的概率选择到适合当前群体的捕食策略,从而协调算法的全局探索和局部开发能力,提高算法收敛速度。其数学表达式如下:
a
d
a
p
t
i
v
e
_
p
=
1
−
[
1
1
+
λ
⋅
(
λ
⋅
t
λ
m
a
x
_
i
t
e
r
λ
+
μ
⋅
t
μ
m
a
x
_
i
t
e
r
μ
)
]
(1)
adaptive\_p=1-[\frac1{1+\lambda}\cdot(\lambda\cdot\frac{t^\lambda}{max\_iter^\lambda}+\mu\cdot\frac{t^\mu}{max\_iter^\mu})]\tag{1}
adaptive_p=1−[1+λ1⋅(λ⋅max_iterλtλ+μ⋅max_iterμtμ)](1)其中,
t
t
t为当前迭代次数;
m
a
x
_
i
t
e
r
max\_iter
max_iter为最大迭代次数;
λ
,
μ
\lambda,\mu
λ,μ为控制参数,取值为
λ
=
3
,
μ
=
2
\lambda=3,\mu=2
λ=3,μ=2。因此,可将鲸鱼狩猎行为的计算公式改写为:
X
(
t
+
1
)
=
{
X
∗
(
t
)
−
A
⋅
D
i
f
p
<
a
d
a
p
t
i
v
e
_
p
D
′
⋅
e
b
l
⋅
c
o
s
(
2
π
l
)
+
X
∗
(
t
)
i
f
p
≥
a
d
a
p
t
i
v
e
_
p
(2)
\boldsymbol X(t+1)=\begin{dcases}\boldsymbol X^*(t)-\boldsymbol{A\cdot D}\quad\quad\quad\quad\,\,\,\,\quad if\,\,p<adaptive\_p\\\boldsymbol D'\cdot e^{bl}\cdot cos(2\pi l)+\boldsymbol X^*(t)\quad if\,\,p≥adaptive\_p\end{dcases}\tag{2}
X(t+1)={X∗(t)−A⋅Difp<adaptive_pD′⋅ebl⋅cos(2πl)+X∗(t)ifp≥adaptive_p(2)由式(2)可知,在算法迭代初期,自适应阈值较大,使得鲸鱼有较大的概率选择收缩包围机制;在算法迭代后期,自适应
阈值较小,将有较大概率选择螺旋位置更新,因此,鲸鱼由原来两种方式同步进行转变为先收缩包围再进行螺旋位置更新,使得其更快地靠近猎物,提升算法收敛速度。
(2)自适应位置权重
受文献[2,3]的启发,本文将自适应参数作为权重系数,结合式(2)对WOA的位置更新进行调整,定义如下: ω = 1 λ + μ ⋅ ( λ ⋅ t λ m a x _ i t e r λ + μ ⋅ t μ m a x _ i t e r μ ) (3) \omega=\frac1{\lambda+\mu}\cdot(\lambda\cdot\frac{t^\lambda}{max\_iter^\lambda}+\mu\cdot\frac{t^\mu}{max\_iter^\mu})\tag{3} ω=λ+μ1⋅(λ⋅max_iterλtλ+μ⋅max_iterμtμ)(3) X ( t + 1 ) = ω ⋅ X ∗ ( t ) − A ⋅ D (4) \boldsymbol X(t+1)=\omega\cdot\boldsymbol X^*(t)-\boldsymbol{A\cdot D}\tag{4} X(t+1)=ω⋅X∗(t)−A⋅D(4) X ( t + 1 ) = ω ⋅ X r a n d ( t ) − A ⋅ D (5) \boldsymbol X(t+1)=\omega\cdot\boldsymbol X_{rand}(t)-\boldsymbol{A\cdot D}\tag{5} X(t+1)=ω⋅Xrand(t)−A⋅D(5) X ( t + 1 ) = D ′ ⋅ e b l ⋅ c o s ( 2 π l ) + ( 1 − ω ) ⋅ X ∗ ( t ) (6) \boldsymbol X(t+1)=\boldsymbol D'\cdot e^{bl}\cdot cos(2\pi l)+(1-\omega)\cdot\boldsymbol X^*(t)\tag{6} X(t+1)=D′⋅ebl⋅cos(2πl)+(1−ω)⋅X∗(t)(6)其中, λ = 2 , μ = 2 \lambda=2,\mu=2 λ=2,μ=2, ω ∈ [ 0 , 1 ] \omega∈[0,1] ω∈[0,1]。当 ω \omega ω随迭代次数增加而增加时,表明经过每次迭代所选择的猎物也即是当前种群的最优解随着自身适应度的提高,其对种群中的鲸鱼产生的吸引力也越强;同样,随着迭代的进行,种群中随机选择的鲸鱼所传达的信息可信度也会随之增高,因此,在式(4) (5)中权重系数随着迭代次数增加而增加,根据自适应的权重变化,使得鲸鱼能够更准确地找到猎物,从而提高算法收敛速度和寻优精度;但在算法迭代后期进行螺旋位置更新时,鲸鱼将向猎物靠近, 此时应采用较小的权重系数,如式(6)所示,使得鲸鱼更新位置的同时能够更好地寻找猎物周围是否存在更优解,以此提高算法的局部开发能力。
(3)预选择小生境技术
本文将算法迭代前后每条鲸鱼的位置分别存储在记忆矩阵 M L \boldsymbol M_L ML和 M N \boldsymbol M_N MN的行向量中,若 M L \boldsymbol M_L ML第 i i i行所代表的鲸鱼的适应度优于 M N \boldsymbol M_N MN中第 i i i行所代表鲸鱼的适应度,则将 M N \boldsymbol M_N MN的第 i i i行以 M L \boldsymbol M_L ML中的第 i i i行进行替换,即若位置更新后的鲸鱼适应度较优则保留;否则使该鲸鱼返回原来的位置,避免鲸鱼全部聚集在某个局部最优点,从而维持种群多样性,提高算法的全局寻优能力。
二、算法流程图
三、仿真实验与结果分析
在相同的种群大小和迭代次数条件下,比较改进算法与传统WOA以及灰狼优化(grey wolf optimizer,GWO)算法在基准测试函数上算法的收敛速度和寻优精度,证明本文所提出的APN- WOA的有效性。以F1、F2、F3、F4、F5、F6函数为例。
四、参考文献
[1] 刘亮, 何庆. 一种求解函数优化问题的改进鲸鱼优化算法[J]. 计算机应用研究, 2020, 37(4): 1004-1009.
[2] 何庆, 魏康园, 徐钦帅. 基于混合策略改进的鲸鱼优化算法[J]. 计算机应用研究, 2019, 36(12): 3647-3651+3665.
[3] 董文永, 康岚兰, 刘宇航, 等. 带自适应精英扰动及惯性权重的反向粒子群优化算法[J]. 通信学报, 2016, 37(12): 1-10.
[4] 郑敏, 高俊波. 一种多模态优化的小生境遗传算法[J]. 计算机系统应用, 2014, 23(10): 101-106.