精英反向黄金正弦海洋捕食者算法*

2023-02-20 03:02高文欣郭雨鑫
计算机工程与科学 2023年2期
关键词:测试函数捕食者正弦

张 磊,刘 升,高文欣,郭雨鑫

(上海工程技术大学管理学院,上海 201620)

1 引言

海洋捕食者算法MPA(Marine Predators Algorithm)[1]是一种新颖的群智能算法。该算法已被成功地用于处理多级图形分割[2]、预测新冠肺炎的病例数[3]、提高冷热电联产系统在环境、热力学和经济学方面的性能[4]等。

为了使海洋捕食者算法具有更加出色的性能,国外的部分研究人员对该算法进行了有效的改进。文献[5]将海洋捕食者算法与教与学的优化算法相结合,避免了算法过早地收敛。文献[6]将高质量解的位置通过自适应变异操作进行改进,而低质量解的位置则根据最优解的位置和从种群中选出的高质量解的位置进行更新,提升了算法的性能。

由于海洋捕食者算法提出的时间还不长,人们对其的认识和研究还不够深入。本文针对其求解准确度低和稳定性差等特点,采用精英反向学习和黄金正弦来改进海洋捕食者算法,使得基本算法的鲁棒性和计算精度得到提升。

2 海洋捕食者算法

2.1 初始化

MPA通过式(1)生成初始种群:

X0=Xmin+rand(Xmax-Xmin)

(1)

其中,Xmax和Xmin分别是解空间的上界和下界;rand是[0,1]的随机数。

精英捕食者的矩阵表示E和猎物的矩阵表示P分别如式(2)和式(3)所示:

(2)

(3)

其中,N表示种群规模,D为种群中个体的维度。

2.2 探索阶段

当迭代次数小于迭代总次数的三分之一时,算法处于探索阶段,主要是为了探索搜索空间。在该阶段中猎物的移动速度要比捕食者快,其数学模型如式(4)所示:

(4)

2.3 探索与开发之间的转换

当迭代次数处于迭代总次数的前三分之一到三分之二时,算法处于探索与开发之间的转换阶段。在该阶段中,捕食者的移动速度和猎物的相同,且前一半种群进行莱维飞行状负责开发,后一半种群进行布朗运动负责探索,如式(5)~式(7)所示:

i=1,2,…,N/2,

(5)

i=N/2+1,…,N,

(6)

(7)

其中,RL表示由莱维分布生成的随机向量;CF是自适应参数,用于调节捕食者运动的步长。

2.4 开发阶段

当迭代次数处于迭代总次数的后三分之一时,捕食者使用Lévy策略进行开发,其数学模型如式(8)所示:

(8)

2.5 涡流形成和鱼类聚集装置的作用

鱼类聚集装置FAD(Fish Aggregating Device)等环境问题会对海洋捕食者造成影响,可看作是局部极值,采用如式(9)所示的数学模型消除部分影响:

(9)

其中,FFADs表示影响海洋捕食者减小局部极值影响的概率,取值为0.2;U是由0和1组成的向量;r是[0,1]的随机数;Pr1和Pr2分别是从所有猎物矩阵中随机选取的2个猎物。

3 融合精英反向黄金正弦的海洋捕食者算法

3.1 精英反向学习机制

反向学习机制OBL(Opposition-Based Learning)[7]的主要思想是同时计算并判断候选解决方案和对应的反向解决方案,并通过其适应性值从中选择最佳的候选解决方案。OBL策略能够更有效地提高种群多样性,并防止算法过早收敛。

OBL可以更好地扩展种群的搜索范围,提高算法性能。但是,OBL在生成其相反的解时具有一定的随机性。相较于其相反的个体,每个随机生成的候选者都有50%的概率远离问题的最佳解。

精英反向学习EOBL(Elite Opposition-Based Learning)[8],以提高反向学习的求解质量为目的。EOBL的主要思想是通过评估精英解决方案的相反解决方案来产生更有希望的解决方案。相反的解决方案更有可能位于全局最优值所在的位置。这一机制已经成功应用于鲸鱼算法[9]、正余弦算法[10]和哈里斯鹰算法[11]等的改进。

(10)

(11)

3.2 黄金正弦算法

黄金正弦算法GSA(Golden Sine Algorithm)[12]结合使用正弦函数与黄金分割系数来进行迭代搜索,具有优秀的寻优能力。

(12)

将黄金正弦算法融入到海洋捕食者算法中,按照式(13)更新海洋捕食者个体的位置:

Pi+1=Pi×|sin(R1)|+R2×sin(R1)×

|h1×Ei-h2×Pi|

(13)

其中,i=1,2,…,N/2;0≤it≤Max_iter。

综上所述,融合精英反向学习和黄金正弦算法的海洋捕食者算法EGMPA(Elite opposition-based Golden-Sine Marine Predators Algorithm)的伪代码如下所示:

EGMPA伪代码

1.初始化种群;

2.While终止条件不满足

3. 计算适应度,构造精英矩阵;

4. 生成反向种群OP={};

5. 根据lbj=min(Xi,j)和ubj=max(Xi,j), 计算个体的搜索边界;

7. 从当前种群和OP种群中选择适应值较好的个体作为新一代种群;

8.IfIter

9. 根据式(4)和式(13)更新猎物矩阵;

10.ElseifMax_Iter/3≤Iter<2*Max_Iter/3

11.对于前半部分种群(i=1,…,N/2), 根据式(5)和式(13)更新猎物矩阵;

12.对于后半部分种群(i=N/2,…,N), 根据式(6)和式(13)更新猎物矩阵;

13.ElseifIter≥2*Max_Iter/3

14.根据式(8)和式(13)更新猎物矩阵;

15.Endif

16. 完成精英矩阵的更新;

17. 应用FADs效果和基于式(9)进行更新;

18.Endwhile

3.3 EGMPA的时间复杂度分析

海洋捕食者种群规模是N,搜索空间的维度是D,最大迭代次数是Max_iter,那么原始的海洋捕食者算法的时间复杂度是O(N×D×Max_iter)。EGMPA算法中,精英反向学习策略的时间复杂度是O(N×D),计算适应度值的时间复杂度是O(N×D),计算个体位置更新的时间复杂度是O(N×D),则EGMPA的时间复杂度为O(N×D×Max_iter)。EGMPA算法的时间复杂度与基本的MPA算法的相同,说明2种改进策略没有增加海洋捕食者算法的计算负担。

4 仿真实验与结果分析

4.1 初始参数设置

本文选取鲸鱼优化算法WOA(Whale Optimization Algorithm)[13]、哈里斯鹰优化算法HHO(Harris Hawks Optimization)[14]、海洋捕食者算法MPA、仅引入精英反向学习的海洋捕食者算法EMPA(EOBL Marine Predators Algorithm)、仅引入黄金正弦的海洋捕食者算法GMPA(GSA Marine Predators Algorithm)与精英反向学习和黄金正弦的海洋捕食者算EGMPA进行比较。初始种群数量都设定为30,最大迭代次数都设定为500。

4.2 测试函数

本文选取12个常用的基准测试函数对各算法进行性能测试,函数的相关属性如表1所示。

Table 1 Test functions表1 测试函数

4.3 实验结果分析

上述每种算法在每个基准测试函数上分别运行30次求平均值,实验结果如表2所示。

Table 2 Test results表2 测试结果

从表2可以看到,对于12个测试函数,EGMPA在最优值、平均值和标准差的求解结果上比MPA、EMPA、GMPA、WOA和HHO都要好。对于测试函数f1,EGMPA可计算得到最优值0;对于测试函数f2~f4,EGMPA计算得到的最优值和平均值要比其他5种算法高出100多个数量级,标准差为0,鲁棒性更好;对于测试函数f5,很难计算得到全局最优值,EGMPA计算的平均值比EMPA高出13个数量级,比HHO高出18个数量级,比MPA、GMPA和WOA高出22个数量级;对于测试函数f6和f7,EGMPA的寻优结果比其他5种算法都要好。对于函数f8~f12,EGMPA寻优的精度和鲁棒性是最优的。上述表明精英反向学习和黄金正弦2种方法对MPA的优化效果是明显的。

图1展示了所用测试函数的收敛曲线,更清楚地表明了EGMPA的寻优效果。

Figure 1 Convergence curves图1 收敛曲线图

从图1可知,改进的EGMPA收敛精度和收敛速度都要优于MPA、EMPA、GMPA、WOA和HHO,说明引入2种策略的EGMPA优于单一策略改进的海洋捕食者算法,具有优秀的寻优能力。

4.4 统计检验与MAE 排序

在对上述6种算法的计算能力的比较中,只采用最优值、平均值和标准差这3个指标来评价是不充分的,因此本文采用了Wilcoxon秩和检验来检验,结果如表3所示。当p<0.05时,说明2种算法的寻优效果有差异,反之则没有。

Table 3 Test results of Wilcoxon rank sum 表3 Wilcoxon秩和检验结果

从表3可以看出,对于除了函数f7、f8、f9和f10外的所有函数,EGMPA与其他算法之间的p值都远小于0.05,说明EGMPA具有更好的寻优性能;对于函数f7,EGMPA的寻优结果略优于GMPA的。表3中出现的NaN,表示相应算法都找到了全局最优值。

平均绝对误差MAE(Mean Absolute Error)[15]表示结果与实际值之间差值的绝对值的平均值。MAE的数学定义如式(14)所示:

(14)

其中,mi是每种算法在每个测试函数上计算得到最优解的平均值,ki是每个测试函数的理论最优值,n是测试函数的个数。MAE的数值越小,算法的计算性能越高。根据MAE值对各算法的排序结果如表4所示。

Table 4 Sort results by MAE 表4 MAE排序结果

从表4可知,EGMPA的MAE值最小,说明EGMPA的寻优性能更优。

4.5 求解CEC2017实验

IEEE CEC 2017测试集的具体信息见参考文献[16]。不失一般性,本文在CEC 2017 基准函数中选取部分单峰、多峰、混合和复合类型的函数来验证本文算法的性能。将精英反向学习黄金正弦的海洋捕食者算法EGMPA与基本的海洋捕食者算法MPA、基于教与学的海洋捕食者算法TLMPA(Teaching-Learning-based Marine Predators Algorithm)[3]、粒子群优化PSO(Particle Swarm Optimization)算法[17]、黄金正弦算法GSA[12]的结果进行比较。为了提高可靠性并产生具有统计意义的结果,在该验证测试中,所有算法的种群规模都设置为20,维数为30,每种算法都运行30次,函数的最大迭代次数为50 000。表5显示了5种算法在12个CEC2017函数上的实验结果,加粗数据表示每个测试函数对应的最佳结果。

Table 5 Comparison of optimization results of benchmark functions in CEC 2017表5 CEC 2017中基准函数的优化结果对比

由表5可知,EGMPA在大多数CEC2017函数上的寻优结果都优于其他4种对比算法的,且取得了较小的标准差,表明了EGMPA的有效性和鲁棒性。

5 结束语

本文提出了精英反向学习黄金正弦的海洋捕食者算法,融入精英反向学习机制,使得海洋捕食者算法中的种群质量得到大幅提高,提高了寻优的精度;将海洋捕食者算法和黄金正弦算法相融合,采用黄金分割系数减小海洋捕食者的搜索空间,提高了寻找到最优值的效率。采用经典基准函数和CEC2017函数对改进后的海洋捕食者算法进行了验证。实验结果显示,精英反向学习和黄金正弦2种策略大幅提升了海洋捕食者算法的寻优精度和鲁棒性。

猜你喜欢
测试函数捕食者正弦
正弦、余弦定理的应用
解信赖域子问题的多折线算法
非局部扩散Holling-Tanner捕食者-食饵系统的临界与非临界行波解分析
基于博弈机制的多目标粒子群优化算法
一类具有时滞的捕食者-猎物-共生者系统的研究
具有Allee效应随机追捕模型的灭绝性
“美”在二倍角正弦公式中的应用
具有收缩因子的自适应鸽群算法用于函数优化问题
疯狂的捕食者
带势函数的双调和不等式组的整体解的不存在性