基于黑寡妇优化算法的函数寻优算法

一、理论基础

1、黑寡妇优化算法

黑寡妇优化算法(Black Widow Optimization Algorithm, BWOA)是2020年由Hernan Peraza等人受黑寡妇蜘蛛独特的交配行为启发而提出的,该算法模拟了黑寡妇蜘蛛求偶时的不同行为。
在这一部分中,首先给出了蜘蛛不同的求偶策略和信息素率的数学模型。然后,提出了黑寡妇优化算法。

1.1 移动

黑寡妇蜘蛛在蜘蛛网内按照线性和螺旋的方式进行移动,数学模型如式(1)所示: x → i ( t + 1 ) = { x → ∗ ( t ) − m x → r 1 ( t ) ,      if    r a n d ( ) ≤ 0.3 x → ∗ ( t ) − cos ⁡ ( 2 π β ) x → i ( t ) ,   in other case (1) \overrightarrow x_i(t+1)=\begin{dcases}\overrightarrow x_*(t)-m\overrightarrow x_{r_1}(t),\quad\quad\quad\,\,\,\,\text{if}\,\,rand()\leq0.3\\[2ex]\overrightarrow x_*(t)-\cos(2\pi\beta)\overrightarrow x_i(t),\quad\, \text{in other case}\end{dcases}\tag{1} x i(t+1)=x (t)mx r1(t),ifrand()0.3x (t)cos(2πβ)x i(t),in other case(1)其中, x → i ( t + 1 ) \overrightarrow x_i(t+1) x i(t+1)为更新之后的个体位置, x → ∗ ( t ) \overrightarrow x_*(t) x (t)为当前最优个体位置, m m m [ 0.4 , 0.9 ] [0.4,0.9] [0.4,0.9]之间生成的随机浮点数, β \beta β [ − 1 , 1 ] [-1,1] [1,1]的随机数, r 1 r_1 r1为1到最大种群数量之间的随机整数, x → r 1 ( t ) \overrightarrow x_{r_1}(t) x r1(t)为随机选择的第 r 1 r_1 r1个位置, x → i ( t ) \overrightarrow x_i(t) x i(t)为当前个体的位置。

1.2 信息素

信息素在黑寡妇蜘蛛的求偶过程中起着非常重要的作用。营养充足的雌蜘蛛比饥饿的雌蜘蛛产丝更多。雄性蜘蛛对来自营养良好的雌性蜘蛛的性信息素反应更灵敏,因为它们提供了更高的生育能力,但主要是为了避免与可能饥饿的雌性蜘蛛冒险交配的代价。因此,雄性蜘蛛不喜欢信息素含量低的雌性蜘蛛。黑寡妇蜘蛛的信息素率值定义如下: pheromone ( i ) = fitness max ⁡ − fitness ( i ) fitness max ⁡ − fitness min ⁡ (2) \text{pheromone}(i)=\frac{\text{fitness}_{\max}-\text{fitness}(i)}{\text{fitness}_{\max}-\text{fitness}_{\min}}\tag{2} pheromone(i)=fitnessmaxfitnessminfitnessmaxfitness(i)(2)其中, fitness max ⁡ \text{fitness}_{\max} fitnessmax fitness min ⁡ \text{fitness}_{\min} fitnessmin分别表示当前种群中最差和最优的适应度值, fitness ( i ) \text{fitness}(i) fitness(i)为第 i i i个个体的适应度值。
式(2)中的信息素向量包含 [ 0 , 1 [0,1 [0,1]区间内的归一化适应度。对于小于或等于0.3的低信息素率值,利用式(3)更新个体的位置: x → i ( t ) = x → ∗ ( t ) + 1 2 [ x → r 1 ( t ) − ( − 1 ) σ x → r 2 ( t ) ] (3) \overrightarrow x_i(t)=\overrightarrow x_*(t)+\frac12\left[\overrightarrow x_{r_1}(t)-(-1)^\sigma\overrightarrow x_{r_2}(t)\right]\tag{3} x i(t)=x (t)+21[x r1(t)(1)σx r2(t)](3)其中, x → i ( t ) \overrightarrow x_i(t) x i(t)​为雌性体内低信息素水平的黑寡妇位置; r 1 r_1 r1 r 2 r_2 r2均为1到最大种群数量之间的随机整数, 且 r 1 ≠ r 2 r_1\neq r_2 r1=r2 x → r 1 ( t ) \overrightarrow x_{r_1}(t) x r1(t) x → r 2 ( t ) \overrightarrow x_{r_2}(t) x r2(t)为第 r 1 r_1 r1 r 2 r_2 r2个黑寡妇的位置; σ ∈ { 0 , 1 } \sigma\in\{0,1\} σ{ 0,1}为随机二进制数。

2、BWOA算法伪代码

BWOA算法的伪代码如下图所示。
在这里插入图片描述

图1 BWOA算法伪代码

二、仿真实验与结果分析

将BWOA与SSA、SCA、GWO、CS和WOA进行对比,实验设置种群规模为30,最大迭代次数为500,每个算法独立运行30次,以常用23个测试函数中的F3、F4(单峰函数/30维)、F10、F11(多峰函数/30维)、F14、F15(固定维度多峰函数/2维、4维)为例,结果显示如下:
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

函数:F3
BWOA:最差值: 0,最优值:0,平均值:0,标准差:0,秩和检验:NaN
SSA:最差值: 3883.1881,最优值:395.8488,平均值:1507.6463,标准差:920.0443,秩和检验:1.2118e-12
SCA:最差值: 22635.0356,最优值:2200.1981,平均值:10370.7427,标准差:5993.5317,秩和检验:1.2118e-12
GWO:最差值: 9.4909e-05,最优值:1.2972e-08,平均值:1.3578e-05,标准差:2.4729e-05,秩和检验:1.2118e-12
CS:最差值: 2990.6874,最优值:1089.3769,平均值:2021.5895,标准差:460.1041,秩和检验:1.2118e-12
WOA:最差值: 74193.8356,最优值:15546.1501,平均值:46982.3413,标准差:14771.5426,秩和检验:1.2118e-12
函数:F4
BWOA:最差值: 9.3317e-248,最优值:3.8467e-295,平均值:3.1106e-249,标准差:0,秩和检验:1
SSA:最差值: 20.4453,最优值:5.3738,平均值:12.6656,标准差:3.3563,秩和检验:3.0199e-11
SCA:最差值: 72.1214,最优值:15.2679,平均值:39.5831,标准差:13.7038,秩和检验:3.0199e-11
GWO:最差值: 2.4868e-06,最优值:1.3975e-07,平均值:7.1558e-07,标准差:5.3349e-07,秩和检验:3.0199e-11
CS:最差值: 15.2612,最优值:6.5205,平均值:10.6992,标准差:2.2566,秩和检验:3.0199e-11
WOA:最差值: 89.0537,最优值:0.21692,平均值:54.5301,标准差:30.7764,秩和检验:3.0199e-11
函数:F10
BWOA:最差值: 8.8818e-16,最优值:8.8818e-16,平均值:8.8818e-16,标准差:0,秩和检验:NaN
SSA:最差值: 4.738,最优值:1.778,平均值:2.8642,标准差:0.70034,秩和检验:1.2118e-12
SCA:最差值: 20.4022,最优值:0.050963,平均值:13.4273,标准差:8.4404,秩和检验:1.2118e-12
GWO:最差值: 1.7142e-13,最优值:7.5495e-14,平均值:1.128e-13,标准差:2.1372e-14,秩和检验:1.1037e-12
CS:最差值: 14.8209,最优值:3.7456,平均值:6.9893,标准差:2.3479,秩和检验:1.2118e-12
WOA:最差值: 7.9936e-15,最优值:8.8818e-16,平均值:4.204e-15,标准差:2.6279e-15,秩和检验:3.5235e-08
函数:F11
BWOA:最差值: 0,最优值:0,平均值:0,标准差:0,秩和检验:NaN
SSA:最差值: 0.043941,最优值:0.0011059,平均值:0.017371,标准差:0.012143,秩和检验:1.2118e-12
SCA:最差值: 1.9641,最优值:0.265,平均值:0.90762,标准差:0.33189,秩和检验:1.2118e-12
GWO:最差值: 0.022989,最优值:0,平均值:0.0030173,标准差:0.0070538,秩和检验:0.011035
CS:最差值: 1.1679,最优值:1.0378,平均值:1.0775,标准差:0.030559,秩和检验:1.2118e-12
WOA:最差值: 0.22195,最优值:0,平均值:0.012224,标准差:0.047611,秩和检验:0.1608
函数:F14
BWOA:最差值: 10.7632,最优值:0.998,平均值:2.6722,标准差:2.5979,秩和检验:1
SSA:最差值: 3.9683,最优值:0.998,平均值:1.329,标准差:0.6553,秩和检验:0.49693
SCA:最差值: 10.7632,最优值:0.998,平均值:2.3849,标准差:2.4661,秩和检验:0.11447
GWO:最差值: 12.6705,最优值:0.998,平均值:4.9094,标准差:4.5717,秩和检验:0.001721
CS:最差值: 0.998,最优值:0.998,平均值:0.998,标准差:6.4933e-16,秩和检验:0.10466
WOA:最差值: 10.7632,最优值:0.998,平均值:3.126,标准差:3.2448,秩和检验:0.032226
函数:F15
BWOA:最差值: 0.063337,最优值:0.00030758,平均值:0.0085447,标准差:0.013689,秩和检验:1
SSA:最差值: 0.020374,最优值:0.00031421,平均值:0.0027831,标准差:0.0059679,秩和检验:0.15366
SCA:最差值: 0.0015818,最优值:0.00039248,平均值:0.0010755,标准差:0.00037642,秩和检验:0.30416
GWO:最差值: 0.020363,最优值:0.00030754,平均值:0.0044294,标准差:0.0081077,秩和检验:0.0022651
CS:最差值: 0.00065692,最优值:0.0003084,平均值:0.00043142,标准差:8.7152e-05,秩和检验:1.4908e-06
WOA:最差值: 0.0021705,最优值:0.00030867,平均值:0.00080145,标准差:0.00053673,秩和检验:0.0069709

实验结果表明:BWOA该算法在收敛速度、寻优精度和稳定性方面优于现有算法。

三、参考文献

[1] Adrián F. Peña-Delgado, Hernán Peraza-Vázquez, Juan H. Almazán-Covarrubias, et al. A Novel Bio-Inspired Algorithm Applied to Selective Harmonic Elimination in a Three-Phase Eleven-Level Inverter[J]. Mathematical Problems in Engineering, 2020, 2020: 8856040.

猜你喜欢

转载自blog.csdn.net/weixin_43821559/article/details/123616284