一、理论基础
1、樽海鞘群算法
请参考这里。
2、改进樽海鞘群算法
本文将PSO算法的随机惯性权重和DE算法的变异操作分别引入SSA算法的位置更新公式中,用于弥补SSA算法的缺点。
(1)PSO算法随机惯性权重的引入
本文将PSO算法的随机惯性权重引入SSA算法追随者位置更新操作中,从而得到追随者位置更新公式: x j i = 1 2 ( x j i + ω × x j i − 1 ) (1) x_j^i=\frac12(x_j^i+\omega×x_j^{i-1})\tag{1} xji=21(xji+ω×xji−1)(1)其中, ω \omega ω为随机惯性权重系数,其取值方法如式(2)所示: ω = 0.5 + R a n d o m ( 0 , 1 ) / 2 (2) \omega=0.5+Random(0,1)/2\tag{2} ω=0.5+Random(0,1)/2(2)其中, R a n d o m ( 0 , 1 ) Random(0,1) Random(0,1)表示均匀分布于 ( 0 , 1 ) (0,1) (0,1)内的随机数,故 ω \omega ω的取值范围为 ( 0.5 , 1 ) (0.5,1) (0.5,1)。显然,此处引入的随机惯性权重没有改变SSA算法的时间复杂度。
(2)集成DE算法的变异操作
变异操作是DE算法的重要组成部分,它一般通过3个不同的个体来为种群内每一个个体生成一个新个体,通过比例因子可以调节算法开发和勘探之间的平衡,具体计算公式请参考这里。本文采取“DE/best/1”策略。
本文提出用DE算法的上述变异操作来替代SSA算法领导者的位置更新操作,从而得到如式(3)所示的领导者位置更新操作:
x
j
i
=
F
k
+
r
×
(
x
j
m
−
x
j
n
)
(3)
x_j^i=F_k+r×(x_j^m-x_j^n)\tag{3}
xji=Fk+r×(xjm−xjn)(3)其中,
F
k
F_k
Fk是食物源在第
k
k
k维空间的位置;
m
m
m和
n
n
n为互异的两个随机整数,介于
[
1
,
N
]
[1,N]
[1,N],
N
N
N为种群规模,且
m
m
m和
n
n
n不等于
i
i
i;下标
k
k
k为不等于
j
j
j的随机整数,且
k
∈
[
1
,
D
]
k\in[1,D]
k∈[1,D],
D
D
D为维数。
二、仿真实验及分析
以文献[1]中表1所示的100维的基准函数为例,将ISSA(本文改进樽海鞘群算法)分别与SSA、ESSA[2]、CASSA[3]进行对比,设置种群规模
N
=
30
N=30
N=30,最大迭代次数
M
a
x
_
i
t
e
r
=
1000
Max\_iter=1000
Max_iter=1000,每个算法独立运算30次。
结果显示如下:
函数:F1
SSA:最差值: 8.7275,最优值:0.40941,平均值:2.3493,标准差:1.8019
ESSA:最差值: 3.4142e-38,最优值:5.8978e-76,平均值:1.1629e-39,标准差:6.2293e-39
CASSA:最差值: 2.6626e-73,最优值:2.1055e-73,平均值:2.3556e-73,标准差:1.3893e-74
iSSA:最差值: 5.8744e-224,最优值:2.0985e-245,平均值:1.9669e-225,标准差:0
函数:F2
SSA:最差值: 8224.1859,最优值:642.041,平均值:1796.9299,标准差:1657.1881
ESSA:最差值: 98.9158,最优值:98.7527,平均值:98.8401,标准差:0.044212
CASSA:最差值: 98.0404,最优值:97.9251,平均值:97.9685,标准差:0.028393
iSSA:最差值: 98.9971,最优值:97.996,平均值:98.0312,标准差:0.18244
函数:F3
SSA:最差值: 11.3248,最优值:0.32948,平均值:2.7194,标准差:2.3506
ESSA:最差值: 22.4772,最优值:17.1115,平均值:20.0511,标准差:1.3383
CASSA:最差值: 0.18406,最优值:0.045203,平均值:0.092785,标准差:0.038375
iSSA:最差值: 0.0014384,最优值:4.0047e-06,平均值:9.6987e-05,标准差:0.00025761
函数:F4
SSA:最差值: 2.0921,最优值:0.82895,平均值:1.3637,标准差:0.28983
ESSA:最差值: 0.00014518,最优值:3.5834e-07,平均值:5.5927e-05,标准差:4.3154e-05
CASSA:最差值: 0.00028443,最优值:2.3961e-07,平均值:6.4147e-05,标准差:7.0076e-05
iSSA:最差值: 7.8243e-05,最优值:7.7598e-07,平均值:2.8994e-05,标准差:2.3081e-05
函数:F5
SSA:最差值: -19559.4398,最优值:-27008.467,平均值:-23369.1317,标准差:1754.2689
ESSA:最差值: -5689.6226,最优值:-12474.6949,平均值:-7953.4609,标准差:1705.1433
CASSA:最差值: -20758.9043,最优值:-26091.9225,平均值:-23709.7495,标准差:1552.9797
iSSA:最差值: -17031.8033,最优值:-24451.3937,平均值:-20991.5387,标准差:1589.7296
函数:F6
SSA:最差值: 12.2682,最优值:5.4777,平均值:7.6619,标准差:1.6141
ESSA:最差值: 8.8818e-16,最优值:8.8818e-16,平均值:8.8818e-16,标准差:0
CASSA:最差值: 8.8818e-16,最优值:8.8818e-16,平均值:8.8818e-16,标准差:0
iSSA:最差值: 8.8818e-16,最优值:8.8818e-16,平均值:8.8818e-16,标准差:0
函数:F7
SSA:最差值: 229.1464,最优值:100.1763,平均值:171.0562,标准差:36.3409
ESSA:最差值: 0,最优值:0,平均值:0,标准差:0
CASSA:最差值: 0,最优值:0,平均值:0,标准差:0
iSSA:最差值: 0,最优值:0,平均值:0,标准差:0
函数:F8
SSA:最差值: 1.0689,最优值:0.34376,平均值:0.66881,标准差:0.20806
ESSA:最差值: 0,最优值:0,平均值:0,标准差:0
CASSA:最差值: 0,最优值:0,平均值:0,标准差:0
iSSA:最差值: 0,最优值:0,平均值:0,标准差:0
高维基准函数测试结果对比及分析表明,本文算法改进效果非常明显,显然提高了SSA算法的收敛速度、计算精度和全局优化能力。
三、参考文献
[1] 张志强, 鲁晓锋, 隋连升, 等. 集成随机惯性权重和差分变异操作的樽海鞘群算法[J]. 计算机科学, 2020, 47(8): 297-301.
[2] Mohammed H. Qais, Hany M. Hasanien, Saad Alghuwainem. Enhanced salp swarm algorithm: Application to variable speed wind generators[J]. Engineering Applications of Artificial Intelligence, 2019, 80: 82-96.
[3] 张达敏, 陈忠云, 辛梓芸, 等. 基于疯狂自适应的樽海鞘群算法[J]. 控制与决策, 2020, 35(9): 2112-2120.