1.背景
2020年,J Zhao等人受到超立方体搜索方式启发,提出了球形搜索算法(Spherical Search Optimizer, SSO)。
2.算法原理
2.1算法思想
SSO源于超立方体搜索方式,A和B表示两个个体,两条蓝线(OA和OB)是两个向量。个体A可以以A为圆心在球空间中搜索,而|AB|的长度就是球的半径。如果改变角度和半径,向量AB可以在整个球体内搜索。
2.2算法过程
球形搜索算子可以表述为:
A
i
n
e
w
=
F
⋅
∣
∣
A
p
−
B
p
∣
∣
2
.
C
o
s
(
θ
)
A
j
n
e
w
=
F
⋅
∣
∣
A
p
−
B
p
∣
∣
2
⋅
S
i
n
(
θ
)
⋅
S
i
n
(
ω
)
A
k
n
e
w
=
F
⋅
∣
∣
A
p
−
B
p
∣
∣
2
⋅
S
i
n
(
θ
)
⋅
C
o
s
(
ω
)
A
i
n
e
w
=
F
⋅
∣
∣
A
p
−
B
p
∣
∣
2
.
S
i
n
(
θ
)
(1)
\begin{aligned} &A_{i}^{\mathrm{new}} =F\cdot||A_{p}-B_{p}||_{2}.\mathrm{Cos}(\theta) \\ &A_{j}^{\mathrm{new}} =F\cdot||A_{p}-B_{p}||_{2}\cdot\mathrm{Sin}(\theta)\cdot\mathrm{Sin}(\omega) \\ &A_{k}^{\mathrm{new}} =F\cdot||A_{p}-B_{p}||_{2}\cdot\mathrm{Sin}(\theta)\cdot\mathrm{Cos}(\omega) \\ &A_{i}^{\mathrm{new}} =F\cdot||A_{p}-B_{p}||_{2}.\mathrm{Sin}(\theta) \end{aligned}\tag{1}
Ainew=F⋅∣∣Ap−Bp∣∣2.Cos(θ)Ajnew=F⋅∣∣Ap−Bp∣∣2⋅Sin(θ)⋅Sin(ω)Aknew=F⋅∣∣Ap−Bp∣∣2⋅Sin(θ)⋅Cos(ω)Ainew=F⋅∣∣Ap−Bp∣∣2.Sin(θ)(1)
伪代码
3.结果展示
使用测试框架,测试SSO性能 一键run.m
CEC2017-F11
4.参考文献
[1] Zhao J, Tang D, Liu Z, et al. Spherical search optimizer: a simple yet efficient meta-heuristic approach[J]. Neural Computing and Applications, 2020, 32: 9777-9808.