请参考这里。
黏菌觅食行为主要是基于黏菌算法的启发,其中黏菌通过空气中的气味来靠近实物,为了用数学公式表示其接近行为,其收缩模式的模拟可以用式(1)~式(6)表示。
X
→
(
t
+
1
)
=
{
X
→
b
(
t
)
+
v
b
→
⋅
(
W
→
⋅
X
→
A
(
t
)
−
X
→
B
(
t
)
)
,
r
<
p
v
c
→
⋅
X
→
(
t
)
,
r
≥
p
(1)
\overrightarrow X(t+1)=
在靠近食物的过程中,黏菌主要是通过模拟静脉组织结构的收缩方式来实现位置更新,如式(7)所示:
X
→
∗
=
{
rand
⋅
(
B
u
−
B
l
)
+
B
l
,
rand
<
z
X
→
b
(
t
)
+
v
b
→
⋅
(
W
→
⋅
X
→
A
(
t
)
−
X
→
B
(
t
)
)
,
r
<
p
v
c
→
⋅
X
→
(
t
)
,
r
≥
p
(7)
\overrightarrow X^*=
首先,在SMVO中的所有个体主要依靠MVO自身白洞 、黑洞及虫洞的运动方式来完成位置更新;在位置更新之后,为了提高个体避免陷入局部最优的能力,个体将通过式(7)来模拟黏菌的觅食方式来寻找更好的位置,以此获得更优的适应度值。SMVO的伪代码如下所示。
将SMVO与MVO、MFO、PSO、SCA和SSA进行对比,以文献[1]中表1的12个测试函数(30维)为例,实验设置种群规模为30,最大迭代次数为500,每种算法独立运算30次,结果显示如下:
函数:F1
SMVO:最差值: 0, 最优值: 0, 平均值: 0, 标准差: 0, 秩和检验: NaN
MVO:最差值: 2.438, 最优值: 0.67673, 平均值: 1.3279, 标准差: 0.38146, 秩和检验: 1.2118e-12
MFO:最差值: 20001.4546, 最优值: 0.24327, 平均值: 3003.7354, 标准差: 6511.3788, 秩和检验: 1.2118e-12
PSO:最差值: 75.925, 最优值: 22.9944, 平均值: 48.9372, 标准差: 14.7111, 秩和检验: 1.2118e-12
SCA:最差值: 90.032, 最优值: 0.0074618, 平均值: 11.4948, 标准差: 20.5137, 秩和检验: 1.2118e-12
SSA:最差值: 1.38e-06, 最优值: 3.414e-08, 平均值: 2.1128e-07, 标准差: 2.7217e-07, 秩和检验: 1.2118e-12
函数:F2
SMVO:最差值: 0, 最优值: 0, 平均值: 0, 标准差: 0, 秩和检验: NaN
MVO:最差值: 2.7242, 最优值: 0.43852, 平均值: 0.80269, 标准差: 0.41089, 秩和检验: 1.2118e-12
MFO:最差值: 80.0043, 最优值: 0.09367, 平均值: 33.5004, 标准差: 21.7737, 秩和检验: 1.2118e-12
PSO:最差值: 13.5572, 最优值: 2.2645, 平均值: 5.011, 标准差: 2.172, 秩和检验: 1.2118e-12
SCA:最差值: 0.065542, 最优值: 0.00025383, 平均值: 0.01317, 标准差: 0.016402, 秩和检验: 1.2118e-12
SSA:最差值: 6.6919, 最优值: 0.10923, 平均值: 2.0427, 标准差: 1.4922, 秩和检验: 1.2118e-12
函数:F3
SMVO:最差值: 0, 最优值: 0, 平均值: 0, 标准差: 0, 秩和检验: NaN
MVO:最差值: 708.9985, 最优值: 103.8577, 平均值: 253.7978, 标准差: 120.2316, 秩和检验: 1.2118e-12
MFO:最差值: 48376.8116, 最优值: 6353.2638, 平均值: 24698.9786, 标准差: 13012.9794, 秩和检验: 1.2118e-12
PSO:最差值: 7354.7143, 最优值: 711.4417, 平均值: 1639.4605, 标准差: 1201.9963, 秩和检验: 1.2118e-12
SCA:最差值: 24599.8668, 最优值: 1395.0321, 平均值: 10649.224, 标准差: 6421.2733, 秩和检验: 1.2118e-12
SSA:最差值: 4994.5452, 最优值: 407.4471, 平均值: 1619.0687, 标准差: 1166.2222, 秩和检验: 1.2118e-12
函数:F4
SMVO:最差值: 0, 最优值: 0, 平均值: 0, 标准差: 0, 秩和检验: NaN
MVO:最差值: 3.7937, 最优值: 0.78883, 平均值: 1.9333, 标准差: 0.78435, 秩和检验: 1.2118e-12
MFO:最差值: 83.0188, 最优值: 47.3072, 平均值: 68.0167, 标准差: 9.9164, 秩和检验: 1.2118e-12
PSO:最差值: 15.8548, 最优值: 5.3336, 平均值: 10.2852, 标准差: 3.0013, 秩和检验: 1.2118e-12
SCA:最差值: 62.8831, 最优值: 5.4365, 平均值: 38.8635, 标准差: 12.5693, 秩和检验: 1.2118e-12
SSA:最差值: 19.7158, 最优值: 6.8357, 平均值: 12.3343, 标准差: 3.5801, 秩和检验: 1.2118e-12
函数:F5
SMVO:最差值: 28.9252, 最优值: 28.8158, 平均值: 28.8629, 标准差: 0.025593, 秩和检验: 1
MVO:最差值: 2639.7415, 最优值: 39.2659, 平均值: 400.5069, 标准差: 691.9178, 秩和检验: 3.0199e-11
MFO:最差值: 80123046.6529, 最优值: 279.4197, 平均值: 5355248.8206, 标准差: 20299684.3503, 秩和检验: 3.0199e-11
PSO:最差值: 7557.2683, 最优值: 554.6633, 平均值: 1798.1738, 标准差: 1558.7057, 秩和检验: 3.0199e-11
SCA:最差值: 214379.2567, 最优值: 133.8061, 平均值: 25652.6199, 标准差: 50116.1945, 秩和检验: 3.0199e-11
SSA:最差值: 1534.5033, 最优值: 27.5819, 平均值: 265.8486, 标准差: 359.6672, 秩和检验: 1.1077e-06
函数:F6
SMVO:最差值: 0.041312, 最优值: 0.0079608, 平均值: 0.020299, 标准差: 0.0086245, 秩和检验: 1
MVO:最差值: 1.9911, 最优值: 0.69783, 平均值: 1.2574, 标准差: 0.34346, 秩和检验: 3.0199e-11
MFO:最差值: 20001.1377, 最优值: 0.24861, 平均值: 1676.5786, 标准差: 4615.7529, 秩和检验: 3.0199e-11
PSO:最差值: 76.9798, 最优值: 30.6066, 平均值: 52.2189, 标准差: 12.1824, 秩和检验: 3.0199e-11
SCA:最差值: 105.2575, 最优值: 4.9293, 平均值: 16.893, 标准差: 22.4544, 秩和检验: 3.0199e-11
SSA:最差值: 1.1195e-06, 最优值: 2.5636e-08, 平均值: 1.7546e-07, 标准差: 2.3447e-07, 秩和检验: 3.0199e-11
函数:F7
SMVO:最差值: -5991.1661, 最优值: -9355.5461, 平均值: -8112.0953, 标准差: 717.7774, 秩和检验: 1
MVO:最差值: -6341.4045, 最优值: -9073.921, 平均值: -7668.2473, 标准差: 717.0735, 秩和检验: 0.016955
MFO:最差值: -6893.9345, 最优值: -10701.8095, 平均值: -8370.9594, 标准差: 832.6258, 秩和检验: 0.30418
PSO:最差值: -4878.4018, 最优值: -7980.3444, 平均值: -6186.6544, 标准差: 621.5667, 秩和检验: 5.0723e-10
SCA:最差值: -3351.7121, 最优值: -4324.4069, 平均值: -3757.3727, 标准差: 217.4373, 秩和检验: 3.0199e-11
SSA:最差值: -6109.6008, 最优值: -9468.7166, 平均值: -7717.092, 标准差: 809.8605, 秩和检验: 0.021506
函数:F8
SMVO:最差值: 0, 最优值: 0, 平均值: 0, 标准差: 0, 秩和检验: NaN
MVO:最差值: 207.6159, 最优值: 61.3352, 平均值: 115.2074, 标准差: 29.0503, 秩和检验: 1.2118e-12
MFO:最差值: 246.0397, 最优值: 88.6614, 平均值: 155.0667, 标准差: 36.8723, 秩和检验: 1.2118e-12
PSO:最差值: 99.0556, 最优值: 43.723, 平均值: 62.5282, 标准差: 12.4166, 秩和检验: 1.2118e-12
SCA:最差值: 183.9086, 最优值: 0.0025673, 平均值: 41.4781, 标准差: 47.5759, 秩和检验: 1.2118e-12
SSA:最差值: 93.526, 最优值: 32.8336, 平均值: 59.2994, 标准差: 16.1589, 秩和检验: 1.2118e-12
函数:F9
SMVO:最差值: 8.8818e-16, 最优值: 8.8818e-16, 平均值: 8.8818e-16, 标准差: 0, 秩和检验: NaN
MVO:最差值: 19.5952, 最优值: 0.51836, 平均值: 2.3767, 标准差: 3.2864, 秩和检验: 1.2118e-12
MFO:最差值: 19.96, 最优值: 0.64001, 平均值: 15.8533, 标准差: 6.5566, 秩和检验: 1.2118e-12
PSO:最差值: 5.1552, 最优值: 3.1624, 平均值: 3.8662, 标准差: 0.52795, 秩和检验: 1.2118e-12
SCA:最差值: 20.3295, 最优值: 0.092732, 平均值: 15.4825, 标准差: 8.2839, 秩和检验: 1.2118e-12
SSA:最差值: 4.9893, 最优值: 1.1551, 平均值: 2.6496, 标准差: 0.84236, 秩和检验: 1.2118e-12
函数:F10
SMVO:最差值: 0, 最优值: 0, 平均值: 0, 标准差: 0, 秩和检验: NaN
MVO:最差值: 0.97508, 最优值: 0.57829, 平均值: 0.83576, 标准差: 0.085685, 秩和检验: 1.2118e-12
MFO:最差值: 91.085, 最优值: 0.77289, 平均值: 21.9715, 标准差: 38.6639, 秩和检验: 1.2118e-12
PSO:最差值: 1.9482, 最优值: 1.2283, 平均值: 1.4308, 标准差: 0.16577, 秩和检验: 1.2118e-12
SCA:最差值: 1.3481, 最优值: 0.4015, 平均值: 0.91672, 标准差: 0.2478, 秩和检验: 1.2118e-12
SSA:最差值: 0.042304, 最优值: 0.0014844, 平均值: 0.017672, 标准差: 0.010049, 秩和检验: 1.2118e-12
函数:F11
SMVO:最差值: 0.033472, 最优值: 0.0066158, 平均值: 0.014875, 标准差: 0.006933, 秩和检验: 1
MVO:最差值: 4.2401, 最优值: 0.1342, 平均值: 2.0347, 标准差: 1.2387, 秩和检验: 3.0199e-11
MFO:最差值: 668.1214, 最优值: 2.5957, 平均值: 46.6676, 标准差: 123.7935, 秩和检验: 3.0199e-11
PSO:最差值: 17.4975, 最优值: 2.0713, 平均值: 8.4887, 标准差: 4.2637, 秩和检验: 3.0199e-11
SCA:最差值: 3606663.0778, 最优值: 0.60243, 平均值: 370979.1629, 标准差: 956852.1226, 秩和检验: 3.0199e-11
SSA:最差值: 18.2626, 最优值: 2.6213, 平均值: 6.9448, 标准差: 3.3429, 秩和检验: 3.0199e-11
函数:F12
SMVO:最差值: 2.9909, 最优值: 0.040245, 平均值: 0.54577, 标准差: 1.0184, 秩和检验: 1
MVO:最差值: 0.56372, 最优值: 0.083118, 平均值: 0.1923, 标准差: 0.10868, 秩和检验: 0.013272
MFO:最差值: 410062757.8973, 最优值: 4.605, 平均值: 13689970.4318, 标准差: 74862956.0372, 秩和检验: 3.0199e-11
PSO:最差值: 40.104, 最优值: 2.6435, 平均值: 9.1272, 标准差: 9.1894, 秩和检验: 4.0772e-11
SCA:最差值: 3053361.7039, 最优值: 3.834, 平均值: 225631.4355, 标准差: 614762.3718, 秩和检验: 3.0199e-11
SSA:最差值: 36.9358, 最优值: 0.46726, 平均值: 13.9477, 标准差: 10.9736, 秩和检验: 3.4742e-10
实验结果表明:SMVO算法比其他同类算法具有更好的求解能力、更强的稳定性、更快的收敛速度、更高的收敛精度、更强的避免陷入局部最优的能力。
[1] 任丽莉, 王志军, 闫冬梅. 结合黏菌觅食行为的改进多元宇宙算法[J]. 吉林大学学报(工学版), 2021, 51(6): 2190-2197.