文章目录
一、理论基础
1、算术优化算法
请参考这里。
2、MFAOA算法
(1)Sobol序列初始化
(2)数学优化器加速函数MOA的改进
在AOA中,数学优化加速函数MOA是协调全局搜索和局部开发的关键。AOA算法中,MOA是随着迭代次数从0.2线性递增到1,在搜索过程中难以拟合算法优化的实际情况,即在迭代前期MOA是从0.2开始线性递增,导致AOA算法不能探索更多的搜索空间,从而算法全局探索能力不足;在迭代后期MOA取值较大,导致算法局部开发受限,收敛速度慢。为解决这一问题,本文对MOA进行了重构,其数学模型如式(1)所示:
M
O
A
=
(
M
a
x
−
M
i
n
)
×
(
cos
(
0.5
π
⋅
t
T
max
)
)
+
0.5
M
i
n
(1)
MOA=(Max-Min)\times\left(\cos\left(0.5\pi\cdot\frac{t}{T_{\max}}\right)\right)+0.5Min\tag{1}
MOA=(Max−Min)×(cos(0.5π⋅Tmaxt))+0.5Min(1)其中,
M
i
n
Min
Min、
M
a
x
Max
Max分别是加速函数的最小值和最大值,取值与标准的AOA一样,
t
t
t为当前迭代次数,
T
max
T_{\max}
Tmax为最大迭代次数。
图1为原始MOA与改进后MOA的对比图。如图1所示,实线为标准AOA算法的MOA,虚线为改进的MOA。从图中可以看出,本文改进的MOA在算法迭代初期保持较大值,使算法充分地进行全局搜索;在迭代后期,MOA迅速下降到较小值,增加算法的局部开发概率,提高算法的收敛速度。
(3)混沌精英突变策略
本文考虑到混沌序列的随机性、遍历性和规律性的特点,对最优解进行混沌精英突变,具体实现过程如下:
1)按照式(2)将最优解位置向量逐维由解空间映射到
[
−
1
,
1
]
[-1,1]
[−1,1]区间,得到混沌变量
ϕ
(
t
)
\phi(t)
ϕ(t),其数学模型如式(2)所示:
ϕ
(
t
)
=
x
b
e
s
t
j
−
x
min
j
x
max
j
−
x
min
j
(2)
\phi(t)=\frac{x_{best}^j-x_{\min}^j}{x_{\max}^j-x_{\min}^j}\tag{2}
ϕ(t)=xmaxj−xminjxbestj−xminj(2)其中,
x
min
=
min
(
X
)
x_{\min}=\min(X)
xmin=min(X)、
x
max
=
max
(
X
)
x_{\max}=\max(X)
xmax=max(X)。
2)利用式(3)对
ϕ
(
t
)
\phi(t)
ϕ(t)进行Circle混沌迭代,得到混沌序列,其数学模型如式(3)所示:
ϕ
(
t
+
1
)
=
mod
(
ϕ
(
t
)
+
0.2
−
(
0.5
/
(
2
π
)
)
,
1
)
(3)
\phi(t+1)=\text{mod}(\phi(t)+0.2-(0.5/(2\pi)),1)\tag{3}
ϕ(t+1)=mod(ϕ(t)+0.2−(0.5/(2π)),1)(3)3)利用混沌序列
ϕ
(
t
)
\phi(t)
ϕ(t)对最优解进行精英突变,其数学模型如式(4)所示:
x
∗
=
λ
x
best
+
(
1
−
λ
)
x
best
⋅
ϕ
(
t
)
(4)
x^*=\lambda x_{\text{best}}+(1-\lambda)x_{\text{best}}\cdot \phi(t)\tag{4}
x∗=λxbest+(1−λ)xbest⋅ϕ(t)(4)
λ
=
1
−
t
T
max
(5)
\lambda=1-\frac{t}{T_{\max}}\tag{5}
λ=1−Tmaxt(5)其中,
λ
\lambda
λ为收缩因子,其他变量同上。
4)将进化得到的变量
x
∗
x^*
x∗与最优解进行适应度值对比,如果进化后的个体适应度值小于最优解的适应度值,则表明精英个体进化成功,并更新当前最优个体位置。
(4)MFAOA实现步骤
综合上述改进方法,本文所改进的AOA(MFAOA)的流程图如图2所示。
二、实验仿真与结果分析
为充分验证本文MFAOA算法的有效性,将其与标准的算术优化算法(AOA)、正余弦优化算法(SCA)、黑猩猩优化算法(ChOA)、樽海鞘群优化算法(SSA)进行对比,所有算法的种群规模
N
=
30
N=30
N=30,最大迭代次数
T
max
=
500
T_{\max}=500
Tmax=500,测试函数维数30,以文献[1]中表1的F1、F3、F7、F9、F10、F11为例,5种算法均独立运行30次,结果显示如下:
函数:F1
AOA:Best: 1.9313e-169,Worst: 1.674e-38,Mean: 5.5803e-40,Std: 3.0564e-39
SCA:Best: 0.045736,Worst: 169.1657,Mean: 13.5648,Std: 31.0766
ChOA:Best: 6.2636e-11,Worst: 0.0001201,Mean: 9.1033e-06,Std: 2.3407e-05
SSA:Best: 2.6053e-08,Worst: 1.5913e-06,Mean: 2.1989e-07,Std: 2.9323e-07
MFAOA:Best: 0,Worst: 9.1425e-264,Mean: 3.0475e-265,Std: 0
函数:F3
AOA:Best: 6.4677e-118,Worst: 0.062442,Mean: 0.0075802,Std: 0.014146
SCA:Best: 277.8964,Worst: 24054.5296,Mean: 7688.7712,Std: 5082.5145
ChOA:Best: 0.15282,Worst: 2433.6676,Mean: 132.8302,Std: 444.3552
SSA:Best: 438.3957,Worst: 3468.9071,Mean: 1410.8796,Std: 793.7144
MFAOA:Best: 0,Worst: 4.0423e-151,Mean: 1.3474e-152,Std: 7.3802e-152
函数:F7
AOA:Best: 8.8818e-16,Worst: 8.8818e-16,Mean: 8.8818e-16,Std: 0
SCA:Best: 0.044356,Worst: 20.3666,Mean: 13.629,Std: 8.4585
ChOA:Best: 19.9604,Worst: 19.9642,Mean: 19.9629,Std: 0.00098108
SSA:Best: 1.5017,Worst: 3.8362,Mean: 2.4958,Std: 0.55596
MFAOA:Best: 8.8818e-16,Worst: 8.8818e-16,Mean: 8.8818e-16,Std: 0
函数:F9
AOA:Best: 0,Worst: 0,Mean: 0,Std: 0
SCA:Best: 0.00079358,Worst: 9.6848,Mean: 1.2028,Std: 2.1613
ChOA:Best: 2.7916e-05,Worst: 0.017593,Mean: 0.0024143,Std: 0.003212
SSA:Best: 1.1705,Worst: 7.4461,Mean: 3.6192,Std: 1.8283
MFAOA:Best: 0,Worst: 7.8657e-274,Mean: 2.6994e-275,Std: 0
函数:F10
AOA:Best: 0.00034483,Worst: 0.061137,Mean: 0.0094633,Std: 0.014304
SCA:Best: 0.00039994,Worst: 0.0015367,Mean: 0.0010442,Std: 0.00034446
ChOA:Best: 0.0012463,Worst: 0.0014186,Mean: 0.0012981,Std: 3.6875e-05
SSA:Best: 0.00039352,Worst: 0.020363,Mean: 0.0015385,Std: 0.0035704
MFAOA:Best: 0.0003459,Worst: 0.00037143,Mean: 0.00035823,Std: 6.5055e-06
函数:F11
AOA:Best: -8.636,Worst: -1.5393,Mean: -4.3478,Std: 1.6971
SCA:Best: -9.8419,Worst: -0.4965,Mean: -2.8031,Std: 2.6313
ChOA:Best: -4.9975,Worst: -0.49729,Mean: -1.9438,Std: 1.854
SSA:Best: -10.1532,Worst: -2.6305,Mean: -6.6408,Std: 3.454
MFAOA:Best: -10.1531,Worst: -2.6303,Mean: -8.2274,Std: 3.2741
结果表明本文改进的算法具有较好的寻优性能。
三、参考文献
[1] 兰周新, 何庆. 多策略融合算术优化算法及其工程优化[J]. 计算机应用研究, 2022, 39(3): 758-763.