智能优化算法:白鲨优化算法
文章目录
- 智能优化算法:白鲨优化算法
- 1.白鲨优化算法
- 1.1 初始化
- 1.2 速度更新
- 1.3位置更新
- 1.4鱼群行为
- 2.实验结果
- 3.参考文献
- 4.Matlab
- 5.python
摘要:WSO 算法是 Braik 等于 2022 年提出一种基于白鲨深海觅食策略的新型优化算法 .该算法灵感来自于白鲨敏锐的听觉和嗅觉功能,这些功能有助于白鲨探索整个搜索空间来追踪、定位和捕获猎物,并通过白鲨位置的不断更新来达到求解优化问题的目的 。具有寻优能力强,收敛速度快等特点。
1.白鲨优化算法
1.1 初始化
WSO 是一种基于种群的优化算法, 该算法通过 式 (3) 随机生成均匀分布的白鲨种群个体位置
w
j
i
w_j^i
wji.
w
j
i
=
l
j
+
R
×
(
u
j
−
l
j
)
(3)
w_j^i=l_j+R \times\left(u_j-l_j\right) \tag{3}
wji=lj+R×(uj−lj)(3)
式中:
w
j
i
w_j^i
wji 为第
i
i
i 头白鲨第
j
j
j 维位置,
i
=
1
,
2
,
⋯
,
n
i=1,2, \cdots, n
i=1,2,⋯,n, 其 中
n
n
n 为白鲨种群规模;
u
j
、
l
j
u_j 、 l_j
uj、lj 分别为第
j
j
j 维搜索空间 上、下限;
R
R
R 为介于 0 和 1 之间的随机数.
1.2 速度更新
白鲨大部分时间都在狩猎和追踪猎物 .WSO 算法中,白鲨根据猎物移动来感知其位置,并更新自身速度. 数学描述如下:
v
k
+
1
i
=
μ
[
v
k
i
+
p
1
(
w
gbest
k
−
w
k
i
)
×
c
1
+
p
2
(
w
best
v
k
i
−
w
k
i
)
×
c
2
]
(4)
\begin{gathered} v_{k+1}^i=\mu\left[v_k^i+p_1\left(w_{\text {gbest }_k}-w_k^i\right) \times c_1+\right. \left.p_2\left(w_{\text {best }}^{v_k^i}-w_k^i\right) \times c_2\right] \end{gathered} \tag{4}
vk+1i=μ[vki+p1(wgbest k−wki)×c1+p2(wbest vki−wki)×c2](4)
式中:
v
k
+
1
i
v_{k+1}^i
vk+1i 为第
i
i
i 头白鲨第
(
k
+
1
)
(k+1)
(k+1) 次迭代速度;
v
k
i
v_k^i
vki 为 第
i
i
i 头白鲨第
k
k
k 次迭代速度;
w
gbest
k
w_{\text {gbest }_k}
wgbest k 为迄今为止白鲨 在第
k
k
k 次迭代中获得的全局最优位置;
w
k
i
w_k^i
wki 为第
i
i
i 头 白鲨第
k
k
k 次迭代位置;
w
best
v
k
i
w_{\text {best }}^{v_k^i}
wbest vki 为第
i
i
i 头白鲨第
k
k
k 次迭代 速度对应的最优位置;
c
1
、
c
2
c_1 、 c_2
c1、c2 为介于 0 和 1 之间的随 机数;
p
1
、
p
2
p_1 、 p_2
p1、p2 分别为
w
gbest
k
、
w
best
v
k
i
w_{\text {gbest }_k} 、 w_{\text {best }}^{v_k^i}
wgbest k、wbest vki 控制系数, 描述为
p
1
=
p
max
+
(
p
max
−
p
min
)
×
e
−
(
4
k
/
K
)
2
,
p
2
=
p
min
+
(
p
max
−
p_1=p_{\text {max }}+\left(p_{\text {max }}-p_{\text {min }}\right) \times \mathrm{e}^{-(4 k / K)^2}, p_2=p_{\text {min }}+\left(p_{\text {max }}-\right.
p1=pmax +(pmax −pmin )×e−(4k/K)2,p2=pmin +(pmax −
p
min
)
×
e
−
(
4
k
/
K
)
2
;
k
、
K
\left.p_{\text {min }}\right) \times \mathrm{e}^{-(4 k / K)^2} ; k 、 K
pmin )×e−(4k/K)2;k、K 分别为当前迭代次数和最大迭 代次数;
p
max
、
p
min
p_{\text {max }} 、 p_{\text {min }}
pmax 、pmin 分别为控制系数最大、最小值;
μ
\mu
μ 表 示收缩因子.
1.3位置更新
(1)基于最优猎物的位置更新. WSO 算法中, 白渔 通过朝最优猎物移动来更新自身位置以找到最优或 次优猎物. 数学描述如下:
w
k
+
1
i
=
{
w
k
i
⋅
¬
⊕
w
o
+
u
⋅
a
+
l
⋅
b
R
<
m
v
w
k
i
+
v
k
i
/
f
R
⩾
m
v
(5)
w_{k+1}^i=\left\{\begin{array}{cc} w_k^i \cdot \neg \oplus w_o+u \cdot a+l \cdot b & R<m_v \\ w_k^i+v_k^i / f & R \geqslant m_v \end{array}\right. \tag{5}
wk+1i={wki⋅¬⊕wo+u⋅a+l⋅bwki+vki/fR<mvR⩾mv(5)
式中:
w
k
+
1
i
w_{k+1}^i
wk+1i 为第
i
i
i 头白渔第
(
k
+
1
)
(k+1)
(k+1) 次迭代位置;
→
\rightarrow
→ 为 否定运算符;
⊕
\oplus
⊕ 为位运算符;
a
、
b
a 、 b
a、b 为一维二进制向量, 描述为
a
=
sgn
(
w
k
i
−
u
)
>
0
,
b
=
sgn
(
w
k
i
−
l
)
<
0
,
sgn
a=\operatorname{sgn}\left(w_k^i-u\right)>0, b=\operatorname{sgn}\left(w_k^i-l\right)<0, \operatorname{sgn}
a=sgn(wki−u)>0,b=sgn(wki−l)<0,sgn ( - ) 为正负号返回函数;
u
,
l
u, l
u,l 分别为搜索空间上、下 限;
w
0
w_0
w0 为逻辑向量, 描述为
w
0
=
⊕
(
a
,
b
)
;
f
w_0=\oplus(a, b) ; f
w0=⊕(a,b);f 为白渻 波浪运动频率;
m
v
m_v
mv 为白鲨接近猎物时随迭代次数增 加而增加的动力; 其他参数意义同上.
(2)基于最好白鲨的位置更新. WSO 算法中, 白鲨 通过朝着最优白鲨位置移动以靠近猎物最优位置. 数 学描述如下:
w
k
+
1
′
i
=
w
gbest
k
+
r
1
D
k
sgn
(
r
2
−
0.5
)
r
3
<
s
s
(6)
w_{k+1}^{\prime i}=w_{\text {gbest }_k}+r_1 D_k \operatorname{sgn}\left(r_2-0.5\right) \quad r_3<s_s \tag{6}
wk+1′i=wgbest k+r1Dksgn(r2−0.5)r3<ss(6)
式中:
w
k
+
1
i
w_{k+1}^i
wk+1i 为第
i
i
i 头白鲨第
(
k
+
1
)
(k+1)
(k+1) 次迭代相对于猎 物的新位置;
r
1
、
r
2
、
r
3
r_1 、 r_2 、 r_3
r1、r2、r3 为介于 0 和 1 之间的随机数;
D
k
D_k
Dk 为猎物与白鲨之间的距离;
s
s
s_s
ss 为白鲨在接近最佳 猎物时的嗅觉和视觉强度参数; 其他参数意义同上.
1.4鱼群行为
WSO 算法通过模拟白鲨群受食行为来保留了前 两个最优解, 并根据这些最优位置来更新其他白鲨个 体位置. 数学描述如下:
w
k
+
1
i
=
w
k
i
+
w
k
+
1
i
2
×
R
(7)
w_{k+1}^i=\frac{w_k^i+w_{k+1}^i}{2 \times R} \tag{7}
wk+1i=2×Rwki+wk+1i(7)
式中,参数意义同上.
2.实验结果
3.参考文献
[1] BRAIK M, HAMMOURI A, ATWAN J, et al. White Shark Optimizer: a novel bio-inspired meta-heuristic algorithm for global optimization problems [ J ] [\mathrm{J}] [J]. Knowledge-based systems,2022,243(7): 108457.
[2]陈金红,崔东文.基于深度学习神经网络超参数优化的入库径流预测方法研究——以云南省暮底河水库为例[J].三峡大学学报(自然科学版),2023,45(04):25-32.DOI:10.13393/j.cnki.issn.1672-948x.2023.04.005.