基于探采分工的人工蜂群算法及其在食管癌预测中的应用

王英聪 ,  严军 ,  孙军伟 ,  王延峰

工程科学与技术 ›› 2025, Vol. 57 ›› Issue (04) : 112 -122.

PDF (1817KB)
工程科学与技术 ›› 2025, Vol. 57 ›› Issue (04) : 112 -122. DOI: 10.12454/j.jsuese.202301064
智能交叉科学与工程

基于探采分工的人工蜂群算法及其在食管癌预测中的应用

作者信息 +

Artificial Bee Colony Algorithm Based on the Division Between Exploration and Exploitation and Its Application in Esophageal Cancer Prediction

Author information +
文章历史 +
PDF (1859K)

摘要

人工蜂群(ABC)算法在搜索过程中侧重探索但不擅长开采,造成收敛速度慢、求解精度低等问题。为此,本文提出一种基于探采分工的ABC算法,包含雇佣蜂探索、跟随蜂开采和侦察蜂补充3个阶段。在探索阶段,考虑到过多地利用随机解信息会偏向随机搜索,为雇佣蜂设计基于多样性精英引导的解搜索方程,并引入广度优先搜索策略加强探索。在开采阶段,考虑到过多地利用最优解信息会导致早熟收敛,为跟随蜂设计基于目标值精英引导的解搜索方程,并利用深度优先搜索策略强化开采。在侦察蜂补充阶段,考虑到侦察蜂的随机初始化方式会丢失前期搜索经验,且雇佣蜂和跟随蜂搜索方程形式单一,为侦察蜂设计兼顾基于目标值的最优解、基于多样性的最优解和前期搜索经验的邻域搜索方程。在CEC2021测试集和食管癌预测问题上检验算法性能,并与6种ABC算法进行对比。对于数值优化问题,本文算法在大部分函数上取得了最优解,Friedman检验时排名第1,Wilcoxon检验时显著优于另外5种ABC算法。同时,本文算法在收敛速度和时间效率方面也占优。对于预测模型优化问题,与基本算法相比,本文算法准确率提高了15.72%,敏感性提高了20.14%,特异性提高了15.03%,F1分数提高了16.23%。

Abstract

Objective In the artificial bee colony (ABC) algorithm, employed bees search the entire search space while onlooker bees concentrate their efforts near high-quality food sources. From the perspective of exploration and exploitation, employed bees primarily handle exploration, whereas onlooker bees are responsible for exploitation. However, the basic ABC algorithm prioritizes exploration during the search process and performs poorly in exploitation, leading to slow convergence speed and low solution accuracy. Therefore, this study proposes an artificial bee colony algorithm based on the division between exploration and exploitation (called ABC_DEE), which consists of three stages: employed bees for exploration, onlooker bees for exploitation, and scout bees for supplementation. Methods In the exploration stage, excessive reliance on random solution information biased the process toward random search. Therefore, a solution-search equation guided by diverse elites was designed for employed bees, along with the introduction of a breadth-first search strategy to enhance exploration. In the exploitation stage, overutilization of optimal solution information led to premature convergence. Hence, a solution-search equation guided by objective-oriented elites was designed for onlooker bees, using a depth-first search strategy to strengthen exploitation. Considering that the random initialization method of scout bees discarded the previous search experience, and the search equation of employed and onlooker bees was singular, a neighborhood search equation was designed for scout bees. This equation considered the optimal solution based on objective value, the optimal solution based on diversity, and the previous search experience. Results and Discussions The performance of ABC_DEE was assessed on both the CEC2021 test set and the esophageal cancer prediction problem, with comparisons made against six ABC variants. In numerical optimization problems with D=10, ABC_DEE outperformed ABC, GABC, REABC, ENABC, NSABC, and RNSABC on 49, 46, 51, 61, 52, and 48 functions, respectively. In contrast, ABC_DEE performed worse than these algorithms on 26, 26, 24, 12, 22, and 23 functions, respectively. The Friedman test results indicated that ABC_DEE ranked first. The Wilcoxon test results indicated that there was no significant difference between ABC_DEE and GABC, but ABC_DEE significantly outperformed the other algorithms. When D=20, ABC_DEE was superior to the comparison algorithms on at least 47 functions and inferior on at most 26 functions. The results of both the Friedman test and the Wilcoxon test were consistent with those when D=10. In addition, ABC_DEE exhibited superiority in terms of convergence speed and time efficiency. Regarding the optimization problem of the esophageal cancer prediction model based on Kernel Extreme Learning Machine (KELM), in terms of accuracy, ABC_DEE‒KELM achieved 85.83%, which was 3.00% higher than the second-ranked RNSABC‒KELM and 15.72% higher than ABC‒KELM. Regarding sensitivity, ABC_DEE‒KELM reached 91.98%, outperforming the second-ranked ENABC‒KELM by 0.61% and ABC‒KELM by 20.14%. In terms of specificity, ABC_DEE‒KELM attained 79.31%, exceeding the second-ranked RNSABC‒KELM by 0.70% and ABC‒KELM by 15.03%. Regarding the F1 score, ABC_DEE‒KELM achieved 85.49%, showing a lead of 2.54% over the second-ranked RNSABC‒KELM and 16.23% over ABC‒KELM. Conclusions The classical ABC suffers from an imbalance between exploration and exploitation. Regulating the relationship between exploration and exploitation is an effective method for improving the performance of ABC. This study proposes a novel ABC based on the separation of exploration and exploitation without altering the original ABC framework. Under the "base vector + perturbation" search mode, the proposed approach strengthens the division of labor between employed bees and onlooker bees in terms of exploration and exploitation through a dual-elite-guided strategy based on diversity and objective values. Simultaneously, a search equation is formulated for scout bees that incorporates both search experience and diversified optimal solution information. The proposed algorithm is compared to six other ABC algorithms across 80 benchmark functions, with its superiority evaluated in terms of solution quality, non-parametric tests, convergence speed, and time efficiency. In addition, its effectiveness in practical optimization problems is validated using esophageal cancer prediction as an example. Future research can be approached from two perspectives. First, the proposed algorithm will be applied to address more practical problems such as path planning and image processing. Second, by exploring strategies such as neighborhood topology and inertia weights to fine-tune the balance between exploration and exploitation in ABC.

Graphical abstract

关键词

人工蜂群算法 / 探索与开采 / 精英引导 / 搜索方程

Key words

artificial bee colony algorithm / exploration and exploitation / elite guidance / search equation

引用本文

引用格式 ▾
王英聪,严军,孙军伟,王延峰. 基于探采分工的人工蜂群算法及其在食管癌预测中的应用[J]. 工程科学与技术, 2025, 57(04): 112-122 DOI:10.12454/j.jsuese.202301064

登录浏览全文

4963

注册一个新账户 忘记密码

本刊网刊
优化问题在科学研究和工程应用中常见且关键,该问题的解决一直不断推动着科技和工程领域的创新。对于具有非凸、不连续、不可微分等特点的复杂优化问题,基于梯度的传统优化方法已不再适用。为此,学者们受自然界中生物集群行为的启发提出了群智能优化算法,具有与初始值无关、不依赖梯度信息、对函数要求低、求解性能良好等特点。目前,常见的群智能优化算法有人工蜂群算法[1]、萤火虫算法[2]、鸡群算法[3]、人工鱼群算法[4]、磷虾觅食算法[5]等。
人工蜂群(ABC)算法受蜜蜂的觅食行为启发,模拟了蜂群采蜜过程中个体的分工和信息共享机制。与遗传算法、差分进化算法、蚁群算法和粒子群算法相比,ABC算法的寻优能力和算法精度都具有明显优势[1]。此外,ABC算法还具有结构简单、易于实现、鲁棒性强、控制参数少等优点。ABC算法一经提出便受到众多学者的关注,已被广泛应用于路径规划[6]和布局优化[7]等领域。
然而,与其他群智能优化算法相似,ABC算法也存在收敛速度慢、求解精度低等不足。究其原因,主要是ABC算法在搜索过程中侧重探索但不擅长开采[8]。学者们针对这一问题提出了很多改进方法,大致可以分为3类。第1类指出搜索方程是ABC算法生成候选解的唯一方式,通过在搜索方程中加入优良解信息来提高算法的开采能力,常用的优良解形式有全局最优解[9]、精英解[1011]和邻域最优解[1213]等。第2类认为ABC算法的单一搜索策略难以平衡探索和开采,可通过构造策略池并设计策略选择方法来提高搜索效率,如包含4种[14]、5种[15]和6种[16]搜索策略的策略池。第3类根据“没有免费午餐定理”,将ABC算法与其他算法混合,通过优势互补提高算法性能,用于混合的算法有差分进化算法[17]、粒子群算法[18]等。
上述改进方法均提高了ABC算法的性能,但学者们仍在不懈地进行改进研究。针对人工蜂群算法探索强、开采弱的问题,本文提出一种基于探采分工的人工蜂群算法(artificial bee colony algorithm based on the division between exploration and exploitation,ABC_DEE)。本文算法令雇佣蜂执行探索,跟随蜂实施开采,侦察蜂进行补充。在探索和开采阶段,分别利用多样性和目标值评价解质量,进而设计基于相应精英解引导的搜索方程,同时配合广度优先搜索策略和深度优先搜索策略强化探索和开采。令侦察蜂采用邻域搜索算子代替随机搜索,以弥补雇佣蜂和跟随蜂的搜索方程形式单一的不足。为验证ABC_DEE算法的性能,将其用于函数优化和食管癌预测模型优化,并与其他改进ABC算法进行对比。

1 人工蜂群算法

ABC算法是一种模拟自然界蜂群分工协作觅食行为的群智能优化算法[1]。将食物源看作优化问题的解,食物源的蜜量对应解的质量。ABC算法按照式(1)随机生成N个初始解(即食物源):

xij=xjmin+rand(0,1)(xjmax-xjmin)

式中:xij为第i个食物源的第j维元素,i=1,2,…,NN为食物源(雇佣蜂或跟随蜂)个数,j=1,2,…,DD为搜索空间维数;xjminxjmax分别为第j维分量的下界和上界;rand(0,1)为生成[0,1]上均匀分布的随机数的函数。初始化种群后,ABC算法进入雇佣蜂、跟随蜂和侦察蜂循环搜索阶段,直至满足终止条件(如达到最大函数评价次数Emax)。

1.1 雇佣蜂阶段

每只雇佣蜂都对应一个食物源,雇佣蜂在食物源Xi=(xi1,xi2,,xiD)附近搜索新的食物源Vi=(vi1,vi2,,viD),搜索方程如下:

vij=xij+φij(xij-xkj)

式中:k是随机选取的下标, k{1,2,,N},且kiφij为[-1,1]上均匀分布的随机数。注意,雇佣蜂在食物源附近进行的是1维搜索。同时,雇佣蜂在XiVi之间进行贪婪选择,若Vi优于Xi,则令Xi=Vi

1.2 跟随蜂阶段

雇佣蜂搜索结束后,将食物源信息分享给跟随蜂。跟随蜂按照概率Pi选择食物源Xi

Pi=Fi/m=1NFm

式中:Fi为食物源Xi的适应度;m为求和索引,用于遍历所有食物源。由式(3)可知,食物源的适应度越大,被选中的概率越大。以最小化问题为例,Fi的计算公式为:

Fi=1/(1+fi),  fi0;1+fi,  fi<0

式中,fi为食物源Xi的目标函数值。一旦Xi被选中,跟随蜂将按照式(2)搜索一个新的食物源Vi,并在二者之间进行贪婪选择。

1.3 侦察蜂阶段

如果雇佣蜂对应的食物源连续l次未得到改进(用δi记录食物源Xi未得到改进的次数),说明该食物源已耗尽。此时,雇佣蜂将放弃该食物源,转变为侦察蜂在搜索空间内随机生成一个新的食物源。

2 基于探采分工的人工蜂群算法

ABC算法侧重探索但不擅长开采,主要原因是雇佣蜂和跟随蜂的搜索方式(式(2))具有较强的探索能力却在开采方面表现不足[9]。在搜索食物源时,雇佣蜂在整个搜索空间内搜索,跟随蜂在优质食物源附近搜索。从探索与开采的角度来看,雇佣蜂主要负责探索,跟随蜂主要执行开采。本文旨在根据种群搜索过程中探索与开采的特点设计相应策略,分别强化雇佣蜂的探索和跟随蜂的开采,提出一种基于探采分工的人工蜂群算法(ABC_DEE)。

2.1 雇佣蜂探索阶段

杜振鑫等[19]指出,探索是算法搜索未知区域的能力。在搜索方程中加入随机解信息有利于探索,如式(2)的探索能力强,就是源于其中食物源随机解Xk的使用[9]。又如,将式(2)中的Xi替换为另一个随机解后,其探索能力得到增强[20]。然而,过多地利用随机解信息会偏向随机搜索,降低算法收敛速度。Singh等[21]进一步指出,探索指搜索未知区域以发现有前景解的能力。探索一般与种群多样性正相关,多样性好说明算法探索能力强[22]。因此,可以利用多样性好且有前景的解来引导搜索,提高探索效率。

多样性反映了种群的分布情况,可以通过个体之间的差异来度量。在种群搜索过程中,个体有位置和目标值两个属性,相应的有两种差异度量方式。基于位置差异的度量方式直观但计算成本高,Cheng等[23]设计了一种基于目标值差异的方法,将种群中个体s的多样性定义为:

ds=Os-Omid

式中: Os为个体s的目标值,Omid是按目标值排序后中间个体的目标值。

Cheng等[23]研究表明,式(5)定义的多样性有助于发现较好解,因而可以用来引导种群探索。同时,式(5)还可以作为一种解质量评价方式,将种群中最好的p×Np为精英解比例)个解定义为基于多样性的精英解。受精英引导ABC算法启发[24],为雇佣蜂设计如下探索方程:

vij=xejdiv+φij(xejdiv-xrj)

式中,xejdiv是随机选择的基于多样性的精英解Xediv=(xe1div,xe2div,,xeDdiv)的第j维元素,xrj是从{X1,X2,,XN}中选择的随机解Xr的第j维元素,ierer分别为精英解和随机解的下标。

最后,考虑到广度优先搜索侧重探索[24],基于随机选择设计广度优先策略进一步加强雇佣蜂的探索能力。具体的,令雇佣蜂每次从{X1,X2,,XN}中随机选择一个食物源进行搜索,其不同于ABC算法中雇佣蜂对N个食物源的遍历搜索。以N=5为例,图1简要对比了两种搜索策略(实线圆与虚线圆分别代表搜索前后的食物源)。图1(a)中,5个食物源均得到1次搜索,图1(b)中,随机选择食物源1、3、4、2、4进行搜索,即食物源5未得到搜索,而食物源4得到2次搜索。由图1可知,广度优先搜索策略比基本搜索策略多了一定的随机性,因而探索能力得到加强。

2.2 跟随蜂开采阶段

开采指在已经搜索过的区域附近详细搜索的能力[19],尤其是利用经验知识在有前景解区域进行精细搜索的能力[21]。在ABC算法中,跟随蜂的开采取决于两部分:优质食物源的选择和搜索方程的使用。下面从这两个方面对开采进行强化。

ABC算法中跟随蜂根据式(3)选择食物源,该方法存在两点不足:一是食物源差异较大时会出现选择概率很大的超级食物源,容易使算法陷入局部最优;二是食物源差异较小时会退化成随机选择,不利于算法收敛。为此,孔德鹏等[10]设计了一种基于排序的反比例选择方法。即将食物源按照目标值由好到差排序,其中,最好食物源的排名为1,最差食物源的排名为N。令Ri表示食物源Xi的排名,其被跟随蜂选择的概率Qi为:

Qi=(1/Ri)/m=1N1/Rm

式(7)使用的是基于排序位置的固定概率,其不受目标值变化的影响,一定程度上克服了式(3)的两个不足。然而,对于食物源差异较大或较小以外的情况,固定概率难以反映食物源之间的真实差异,而这种差异能够在式(3)得以体现。为此,本文兼顾式(3)和(7),为食物源Xi设计了选择概率Γi如下:

Γi=(Pi+Qi)/2

对于搜索方程,采用与式(6)相同的精英引导模式,为跟随蜂设计如下开采方程:

vij=xejobj+φij(xejobj-xrj)

式中,xejobj是随机选择的基于目标值的精英解Xeobj=(xe1obj,xe2obj,,xeDobj)的第j维元素。

最后,考虑到深度优先搜索侧重开采[24],基于奖励机制设计深度优先策略进一步加强跟随蜂的开采能力。具体地,对于所选择的优质食物源,令跟随蜂搜索成功后继续搜索,直至食物源不再改进为止,其不同于ABC算法中跟随蜂对所选优质食物源的单次搜索。同样,以N=5为例,假设跟随蜂分别选择优质食物源5、2、3、5、3进行搜索,图2简要对比了两种搜索策略。图2(a)中共搜索了5次,图2(b)中共搜索了10次,多出的搜索可以看作是对成功搜索的奖励。由图2可知,与基本搜索策略相比,有前景的优质食物源在深度优先搜索策略下得到更多的计算资源,因而开采能力得到加强。

2.3 侦察蜂补充阶段

ABC算法中侦察蜂负责抛弃枯竭的食物源,并随机生成新的食物源继续搜索。随机的方式比较简单,但是容易丢失搜索经验,而且随机生成有前景解的概率很小。学者们提出许多方法提高侦察蜂的搜索效率,代表性的工作有:Wang等[12]令侦察蜂采用3种搜索方程,进而选择其中的最优解作为新的食物源;Peng等[25]设计了一种不同于传统“基向量+扰动”的新颖搜索方程:

XiN=r1XiA+r2gbest+r3(Xa-Xb)

式中:XiN为侦查蜂生成的新解;r1r2r3为[-1,1]上均匀分布的随机数,且满足r1+r2+r3=1XiA为被侦查蜂抛弃的解,gbest为最优解;XaXb为不同于XiAgbest的下标分别为ab的随机解。式(10)兼顾了搜索经验、最优解信息和随机扰动,取得了不错的效果。

雇佣蜂和跟随蜂采用的都是“基向量+扰动”的搜索方程,搜索方式相对单一。同时,本文从多样性和目标值两个方面评价食物源质量,可以引申出基于多样性的最优解和基于目标值的最优解。采用这两个最优解代替式(10)gbest,则可为侦察蜂设计两个搜索方程如下:

XiN=r1XiA+r2gbestobj+r3(Xa-Xb)
XiN=r1XiA+r2gbestdiv+r3(Xa-Xb)

式(11)~(12)中,gbestobj为基于目标值的最优解,gbestdiv为基于多样性的最优解。最终,令侦察蜂在式(11)和(12)之间进行贪婪选择。

2.4 算法伪代码

基于上述描述,ABC_DEE算法的伪代码如下所示。

1. 初始化参数NplEmax;2. //p为控制精英解的比例系数

3. 按照式(1)生成初始种群,计算目标函数值;

4. 令函数评价次数E=N

5. while EEmax

6. for t=1 to N

//雇佣蜂探索阶段,t为循环计数变量

7. 利用广度优先策略选择食物源Xi

8. 按照式(6)搜索新的食物源Vi

9. if

f(Vi)f(Xi) //f(·)为食物源目标函数值

10. Xi=Viδi=0

11. else

12. δi=δi+1

13. end if

14. end for

15. E=E+N

16. 根据式(8)计算选择概率Γi

17. for t=1 to N

//跟随蜂开采阶段,

18. 根据选择概率按轮盘赌选择食物源Xi

19. 按照式(9)搜索新的食物源Vi

20. 初始化食物源更新状态U=0E=E+1

21. while f(Vi)f(Xi)

22. Xi=Viδi=0U=1;

23. 按照式(9)搜索新的食物源Vi

24. E=E+1

25. end while

26. if U= =0

27. δi=δi+1

28. end if

29. end for

30. if max (δi)>l //侦察蜂补充阶段

31. 按照式(11)和(12)择优搜索新的食物源;

32. δi=0E=E+2

33. end if

34. end while

35. 输出全局最优解

2.5 时间复杂度分析

按照文献[26]的计算方法,令M为迭代次数,则基本ABC算法中种群初始化的复杂度为O(ND),雇佣蜂单维搜索、食物源选择概率计算和跟随蜂单维搜索的复杂度均为O(MN),侦察蜂全维搜索的复杂度为O(MD)。因此,基本ABC算法的时间复杂度大约为O(ND+3MN+MD)。与基本ABC算法相比,ABC_DEE算法主要增加了多样性排序、目标值排序、多样性最优解和目标值最优解计算等步骤。排序的复杂度为O(Nlog N),计算最优解复杂度为O(N)。因此,ABC_DEE算法的时间复杂度大约为O(ND+3MN+MD+2MNlog N)+2MN)=O(ND+5MN+MD+2MNlog N)。

尽管ABC_DEE的复杂度大于ABC,但复杂度的增加一般是可以接受的。一方面,当函数评价成本较高时,算法的计算负担主要取决于函数评价[11],算法改进带来的额外开销相对较小。另一方面,大部分情况下ABC_DEE的收敛速度比ABC快,这意味着ABC_DEE需要较少的函数评价就能获得一定精度的解。

3 数值实验

数值实验在优化算法的参数分析与性能评估等方面具有重要作用,围绕测试函数对ABC_DEE开展数值实验,包括参数敏感性分析、策略有效性分析、与相关算法的对比分析等3部分。

3.1 测试函数

为了检验ABC_DEE的性能,在CEC2021测试集上进行数值实验。CEC2021是一套求解难度较高的测试函数集,包含10个基本函数和70个变换函数。基本函数涵盖单峰、多峰、混合和复合4种类型,对基本函数进行偏差(bias)、移位(shift)和旋转(rotation)等操作后得到变换函数,详细函数信息见文献[27]。按照CEC2021的建议,测试函数的维度D=10和20,最大函数评价次数Emax=200 000和1 000 000。实验环境为Windows 10操作系统,编程语言环境为MATLAB R2022b,硬件环境为英特尔酷睿i7‒1165G7处理器,主频为2.8 GHz,内存为16 GB。

3.2 参数敏感性分析

与ABC相比,ABC_DEE为雇佣蜂和跟随蜂设计了基于精英引导的搜索方程。参数p控制精英解的比例,对算法性能会有一定影响。本节选取选取p=0.01、0.10、0.40、0.70、0.90、1.00这6个典型值在CEC2021的10个基本函数上进行敏感性测试,函数维度D=10,种群规模N=50,函数最大评价次数Emax=200 000。ABC_DEE算法在不同p取值下独立运行30次的平均结果如表1所示,表1中,带*数据表示最好结果,下表同。

表1可以看出,p取0.01和1.00这两个极端值时,算法整体表现较差。可能的原因是:一般而言,精英解介于随机解和最优解之间;p=0.01时,精英解进化为最优解,使得式(6)和(9)趋向贪婪;p=1.00时,精英解退化为随机解,使得式(6)和(9)失去精英引导价值。除此之外,p取较小值(即0.10)时,精英群体中的个体都是解质量评价相对较好的个体,有较好的引导作用,使得算法整体表现更好,这与文献[10,24]中对p的选择一致。综合考虑下,本文设置p=0.10。

与ABC算法相比,ABC_DEE算法为侦察蜂设计了兼顾搜索经验的搜索方程。参数l控制侦察蜂的执行频率,对算法性能会有一定影响。本节选取l=10、50、100、200、ND这5个典型值进行敏感性测试,实验设置与对参数p的敏感性实验保持一致。实验结果如表2所示。

表2可以看出,l=10时,算法在5个函数上取得最优值;l=50时,算法在9个函数上表现最好;此后,随着l取值增大,算法性能逐渐变差。可能的原因是,l取值较大时,调用侦察蜂的频率较小,算法不能及时放弃枯竭的食物源,导致其占用较多的计算资源,降低搜索效率;当l取值过小时,会过早地放弃一些有前景的食物源。虽然式(11)和(12)会兼顾部分搜索经验,但仍会导致搜索经验丢失。同时,也说明这种搜索模式只适合作为补充搜索,这与文献[2829]中以0.1的概率选择同类型的搜索模式一致。综合考虑,本文设置l=50。

3.3 策略有效性分析

ABC_DEE算法采用了两种折中兼顾策略(即跟随蜂阶段兼顾适应度和排序的选择策略、侦察蜂阶段综合目标值和多样性最优解形式的搜索策略),以及广度优先策略和深度优先策略。为了验证各策略对ABC_DEE的有效性,设计如下对比算法:

ABC_DEE‒1,跟随蜂阶段未采用折中策略的ABC_DEE;

ABC_DEE‒2,侦察蜂阶段未采用折中策略的ABC_DEE;

ABC_DEE‒3,未采用广度优先策略的ABC_DEE;

ABC_DEE‒4,未采用深度优先策略的ABC_DEE;

实验设置与第3.2节保持一致,对比结果如表3所示。

表3可以看出,所采用的4种策略均能提高算法的优化性能。具体的,ABC_DEE在函数f1f5f6f7f9f10上的均值优于ABC_DEE‒1,在剩余4个函数上二者均找到了理论最优值。可能的原因是:对于食物源差异较大或较小的情况,排序选择能够稳定地选出优质食物源;对于其他情况,适应度选择能够较好地反映出食物源之间的真实差异;兼顾二者之后,ABC_DEE较ABC_DEE‒1能更好地应对多样化的搜索环境。ABC_DEE在9个函数上优于ABC_DEE‒2,侦察蜂阶段折中策略的改进效果最明显,同时,也说明基本ABC中侦察蜂的搜索方式有较大的改进空间。基本ABC中的侦察蜂采用随机初始化的方式跳出局部最优解,导致前期搜索经验丢失。ABC_DEE通过式(11)和(12)择优跳出局部最优,该方法同时考虑了基于目标值的最优解、基于多样性的最优解和前期搜索经验。与ABC_DEE‒3和ABC_DEE‒4相比,ABC_DEE在6个函数上找到了更好的解,说明广度优先策略和深度优先策略在一定程度上分别提高了雇佣蜂的探索能力和跟随蜂的开采能力。

3.4 与其他ABC算法对比

为了进一步测试ABC_DEE的性能,选择近年来提出的国内外有代表性的ABC[1]、GABC[9]、基于排序选择和精英引导的人工蜂群算法(REABC)[10]、基于精英解和随机个体邻域信息的人工蜂群算法(ENABC)[11]、NSABC[12]和RNSABC[13]等6种ABC类算法作为对比算法。为确保比较公平,按照惯例,对比算法的参数设置与原文献保持一致,种群规模设置相同(本文设置N=50)。按照CEC2021的建议,测试函数的维度D=10和20,最大函数评价次数Emax=200 000和1 000 000,所有算法独立运行30次。对比实验从均值与标准差、非参数检验、收敛速度和时间效率4个方面展开。

表4D=10时7种算法的对比结果,包括基于平均值和标准差的解质量对比与基于非参数检验的综合对比(详细结果见附录A表A1)。在进行解质量对比时,49+/5=/26-表示ABC_DEE算法分别在49、5、26个函数上的寻优结果优于、相当于、劣于对比算法ABC,其他同。由表4可知,ABC_DEE分别在49、46、51、61、52、48个函数上优于ABC、GABC、REABC、ENABC、NSABC和RNSABC,在26、26、24、12、22、23个函数上劣于这些算法。为确保对比具有统计意义,采用Friedman和Wilcoxon两种非参数检验方法。Friedman检验以平均排名衡量算法的整体性能,排名值越小算法性能越好。表4的平均排名表明,ABC_DEE在所有算法中排名第1。Wilcoxon检验ABC_DEE与其他算法是否存在显著差异,显著性水平设为0.05。检验结果以R+R-P值的形式给出,其中,R+代表Wilcoxon检验中ABC_DEE在优势函数上的秩和,R-代表在劣势函数上的秩和,P值小于0.05表明算法结果有显著性差异。表4的Wilcoxon检验结果表明,ABC_DEE在所有对比情况下获得的R+均大于R-,且除GABC以外的P值均小于0.05,说明本文所提算法显著优于除GABC以外的其他对比算法,与GABC无显著差异。

表5D=20时7种算法的对比结果(详细结果见附录A表A2)。可以发现,函数维度增加以后,对ABC_DEE与其他算法的性能对比影响不大。在解质量对比方面,ABC_DEE至少在47个函数优于对比算法,至多在26个函数上差于对比算法。在综合对比方面,Friedman检验时所有算法的平均排名情况为ABC_DEE<NSABC<GABC<RNSABC<ENABC<ABC<REABC,即ABC_DEE的整体性能排名第一。Wilcoxon检验结果表明,ABC_DEE对比6个算法所得R+均大于R-。根据P值,ABC_DEE与GABC无显著差异,但显著优于其他算法。附录A图A1进一步描绘了所有算法在D=10和D=20下3个函数(f7f21f63)上的收敛曲线。

最后,对比各算法的时间效率。考虑到同一算法在不同函数上的求解精度不同,不同算法在同一函数上的求解精度也不尽相同,在比较各算法的时间效率时,对不同的函数设置不同的求解精度。具体地,将所有算法在某个函数上取得的最差解设置为对应的求解精度目标,这样可以保证所有算法都能完成任务。表6为7种算法的平均计算时间,可以看出,本文算法所消耗的计算时间最短(详细结果见附录表A3、A4)。

4 实际应用

为进一步评估ABC_DEE算法在解决实际优化问题中的表现,将其用于食管癌预测模型优化,并与其他算法优化的模型做比较。

4.1 数据来源

实验样本来自郑州大学省部共建食管癌防治国家重点实验室,其中,疾病组为60例未接受放疗和化疗治疗的食管癌患者,对照组为60例无任何肿瘤相关证据的健康者。每个样本包含15 102个有效蛋白质数据,通过T检验、富集分析、专家评价等方法筛选出81个关键蛋白作为食管癌标志物。

4.2 ABC_DEE‒KELM预测模型

核极限学习机(KELM)是一种单隐含层前馈神经网络算法,具有训练速度快、泛化能力强等优点,已被成功用于回归和分类问题[30]。KELM的性能主要受正则化系数C和核函数参数g影响,前者控制模型的复杂度,后者决定核函数的作用范围。因此,利用智能算法优化参数Cg,是提高KELM性能的一种常用方法。本节选择通用性强的高斯核函数,建立基于ABC_DEE优化KELM(ABC_DEE‒KELM)的食管癌预测模型,模型的输入为81个食管癌标志物,输出为患病或正常,目标函数f(C,g)为预测准确率:

f(C,g)=STP+STNSTP+STN+SFP+SFN

式中,STP是真阳性的数量,STN是真阴性的数量,SFP是假阳性的数量,SFN是假阴性的数量。

ABC_DEE‒KELM预测模型流程如图3所示。

ABC_DEE‒KELM的主要步骤如下。

步骤1:对蛋白质数据进行归一化处理;

步骤2:将数据集划分为训练集和测试集;

步骤3:初始化ABC_DEE算法参数,包括NplEmax

步骤4:将参数Cg作为蜜蜂食物源的两个维度,设置搜索空间范围;

步骤5:以预测准确率为适应度函数,令ABC_DEE在训练集上对KELM中的参数Cg进行寻优;

步骤6:利用最优参数Cg构建预测模型,在测试集上验证训练好的KELM,输出预测结果。

4.3 实验结果与分析

为了评估ABC_DEE‒KELM模型的预测性能,将其与ABC[1]、GABC[9]、REABC[10]、ENABC[11]、NSABC[12]和RNSABC[13]等6种算法优化的KELM模型作比较。所有算法参数与第3节保持一致,函数最大评价次数Emax设置为100 000。采用10折交叉验证进行实验。除了准确率,医学诊断领域还经常使用敏感性、特异性、F1分数等来评价预测效果。敏感性(计算式为STP/(STP+SFN))代表模型从患者中准确分类出患者的能力。特异性(计算式为STN/(STN+SFP))代表模型从健康者中准确分类出健康者的能力。F1分数(计算式为2STP/(2STP+SFP+SFN))是精确率和敏感性的调和平均值,可以平衡模型的准确性和识别能力。

图4为7种模型进行10折交叉验证后的平均预测结果。由图4可以看出,ABC_DEE‒KELM的预测结果在所有模型中排名第1。在准确率方面,ABC_DEE‒KELM达到85.83%,比排名第2的RNSABC‒KELM和ABC-KELM分别提高了3.00%和15.72%。在敏感性方面,ABC_DEE‒KELM达到91.98%,比排名第2的ENABC‒KELM和ABC‒KELM分别提高了0.61%和20.14%。在特异性方面,ABC_DEE‒KELM达到79.31%,比排名第2的RNSABC‒KELM和ABC‒KELM分别提高了0.70%和15.03%。在F1分数方面,ABC_DEE‒KELM达到85.49%,比排名第2的RNSABC‒KELM和ABC‒KELM分别提高了2.54%和16.23%。附录A图A2进一步描绘了7种模型预测结果的混淆矩阵。

5 结 论

经典ABC算法存在探索与开采不平衡的问题,调控二者之间的关系是提高ABC算法性能的一种有效方法。本文在不改变ABC算法框架的前提下,提出一种基于探采分工的ABC算法。在“基向量+扰动”的搜索模式下,以多样性和目标值双精英引导的方式强化雇佣蜂和跟随蜂之间关于探索与开采的分工。同时,为侦察蜂设计了兼顾搜索经验与多元化搜索的解搜索方程。在80个基准函数上与6种ABC及改进算法进行对比,从均值与标准差、非参数检验、收敛速度和时间效率4个方面验证了所提算法的优越性,并以食管癌预测为例检验了其在实际优化问题上的有效性。下一步工作可从两个方面展开:一是利用本文算法求解路径规划、图像处理等更多实际问题,二是采用邻域拓扑、惯性权重等策略调节ABC算法中探索与开采的关系。

附录见本刊网络版,扫描标题旁的二维码可阅读网络全文。

参考文献

[1]

Akay B, Karaboga D, Gorkemli B,et al.A survey on the Artificial Bee Colony algorithm variants for binary,integer and mixed integer programming problems[J].Applied Soft Computing,2021,106:107351. doi:10.1016/j.asoc.2021.107351

[2]

Shu Jian, Li Ruirui, Xiong Tao,et al.Link prediction based on learning automaton and firefly algorithm[J].Advanced Engineering Sciences,2021,53(2):133‒140. doi:10.15961/j.jsuese.202000781

[3]

[舒坚,李睿瑞,熊涛,.基于学习自动机与萤火虫算法的链路预测[J].工程科学与技术,2021,53(2):133‒140. doi:10.15961/j.jsuese.202000781

[4]

Wang Yingcong, Sui Chengcheng, Liu Chi,et al.Chicken swarm optimization with an enhanced exploration‒exploitation tradeoff and its application[J].Soft Computing,2023,27(12):8013‒8028. doi:10.1007/s00500-023-07990-8

[5]

Yu Xiuwu, Qin Xiaokun, Liu Yong,et al.DV‒Hop localization algorithm optimized based on global artificial fish swarm algorithm[J].Advanced Engineering Sciences,2022,54(4):228‒234.

[6]

余修武,秦晓坤,刘永,.基于全局人工鱼群算法优化的DV‒Hop定位算法[J].工程科学与技术,2022,54(4):228‒234.

[7]

Liu Zhen, Lu Huajie, Ren Jiancun.Co-evolutionary gravitational krill herd algorithm[J].Advanced Engineering Sciences,2018,50(6):217‒224.

[8]

刘振,鲁华杰,任建存.协同进化引力磷虾觅食算法[J].工程科学与技术,2018,50(6):217‒224.

[9]

Cui Yibing, Hu Wei, Rahmani A.A reinforcement learning based artificial bee colony algorithm with application in robot path planning[J].Expert Systems with Applications,2022,203:117389. doi:10.1016/j.eswa.2022.117389

[10]

Jawad F K J, Ozturk C, Wang Dansheng,et al.Sizing and layout optimization of truss structures with artificial bee colony algorithm[J].Structures,2021,30:546‒559. doi:10.1016/j.istruc.2021.01.016

[11]

Bajer D, Zorić B.An effective refined artificial bee colony algorithm for numerical optimisation[J].Information Sciences,2019,504:221‒275. doi:10.1016/j.ins.2019.07.022

[12]

Zhu Guopu, Kwong S.Gbest-guided artificial bee colony algorithm for numerical function optimization[J].Applied Mathematics and Computation,2010,217(7):3166‒3173. doi:10.1016/j.amc.2010.08.049

[13]

Kong Depeng, Chang Tianqing, Dai Wenjun,et al.An improved artificial bee colony algorithm based on the ranking selection and the elite guidance[J].Control and Decision,2019,34(4):781‒786.

[14]

孔德鹏,常天庆,戴文君,.基于排序选择和精英引导的改进人工蜂群算法[J].控制与决策,2019,34(4):781‒786.

[15]

Meng Hongyun, Wei Bingke.An improved artificial bee colony algorithm based on elite solution and random individual neighborhood information[J].Control and Decision,2020,35(9):2169‒2174. doi:10.13195/j.kzyjc.2018.1797

[16]

孟红云,位冰可.基于精英解和随机个体邻域信息的改进人工蜂群算法[J].控制与决策,2020,35(9):2169‒2174. doi:10.13195/j.kzyjc.2018.1797

[17]

Wang Hui, Wang Wenjun, Xiao Songyi,et al.Improving artificial bee colony algorithm using a new neighborhood selection mechanism[J].Information Sciences,2020,527:227‒240. doi:10.1016/j.ins.2020.03.064

[18]

Ye Tingyu, Wang Wenjun, Wang Hui,et al.Artificial bee colony algorithm with efficient search strategy based on random neighborhood structure[J].Knowledge‒Based Systems,2022,241:108306. doi:10.1016/j.knosys.2022.108306

[19]

Wang Zhigang, Wang Minggang.Multi-search strategy of artificial bee colony algorithm based on symbolic function[J].Control and Decision,2016,31(11):2037‒2044.

[20]

王志刚,王明刚.基于符号函数的多搜索策略人工蜂群算法[J].控制与决策,2016,31(11):2037‒2044.

[21]

Wang Zhigang, Shang Xudong, Xia Huiming,et al.Artificial bee colony algorithm with multi-search strategy cooperative evolutionary[J].Control and Decision,2018,33(2):235‒241.

[22]

王志刚,尚旭东,夏慧明,.多搜索策略协同进化的人工蜂群算法[J].控制与决策,2018,33(2):235‒241.

[23]

Hakli H, Kiran M S.An improved artificial bee colony algorithm for balancing local and global search behaviors in continuous optimization[J].International Journal of Machine Learning and Cybernetics,2020,11(9):2051‒2076. doi:10.1007/s13042-020-01094-7

[24]

Jadon S S, Tiwari R, Sharma H,et al.Hybrid artificial bee colony algorithm with differential evolution[J].Applied Soft Computing,2017,58:11‒24. doi:10.1016/j.asoc.2017.04.018

[25]

Kuang Fangjun, Jin Zhong, Xu Weihong,et al.Hybridization algorithm of Tent chaos artificial bee colony and particle swarm optimization[J].Control and Decision,2015,30(5):839‒847. doi:10.13195/j.kzyjc.2014.0750

[26]

匡芳君,金忠,徐蔚鸿,.Tent混沌人工蜂群与粒子群混合算法[J].控制与决策,2015,30(5):839‒847. doi:10.13195/j.kzyjc.2014.0750

[27]

Du Zhenxin, Liu Guangzhong, Han Dezhi,et al.Artificial bee colony algorithm with global and unbiased search strategy[J].Acta Electronica Sinica,2018,46(2):308‒314.

[28]

杜振鑫,刘广钟,韩德志,.基于全局无偏搜索策略的精英人工蜂群算法[J].电子学报,2018,46(2):308‒314.

[29]

Song Xiaoyu, Zhao Ming, Yan Qifeng,et al.A high-efficiency adaptive artificial bee colony algorithm using two strategies for continuous optimization[J].Swarm and Evolutionary Computation,2019,50:100549. doi:10.1016/j.swevo.2019.06.006

[30]

Singh A, Deep K.Exploration‒exploitation balance in Artificial Bee Colony algorithm:A critical analysis[J].Soft Computing,2019,23(19):9525‒9536. doi:10.1007/s00500-018-3515-0

[31]

Črepinšek M, Liu S H, Mernik M.Exploration and exploitation in evolutionary algorithms[J].ACM Computing Surveys,2013,45(3):1‒33. doi:10.1145/2480741.2480752

[32]

Cheng Jianchao, Pan Zhibin, Liang Hao,et al.Differential evolution algorithm with fitness and diversity ranking-based mutation operator[J].Swarm and Evolutionary Computation,2021,61:100816. doi:10.1016/j.swevo.2020.100816

[33]

Cui Laizhong, Li Genghui, Lin Qiuzhen,et al.A novel artificial bee colony algorithm with depth‒first search framework and elite‒guided search equation[J].Information Sciences,2016,367:1012‒1044. doi:10.1016/j.ins.2016.07.022

[34]

Peng Hu, Deng Changshou, Wu Zhijian.Best neighbor-guided artificial bee colony algorithm for continuous optimization problems[J].Soft Computing,2019,23(18):8723‒8740. doi:10.1007/s00500-018-3473-6

[35]

Imanian N, Shiri M E, Moradi P.Velocity based artificial bee colony algorithm for high dimensional continuous optimization problems[J].Engineering Applications of Artificial Intelligence,2014,36:148‒163. doi:10.1016/j.engappai.2014.07.012

[36]

Mohamed A, Hadi A, Mohamed A,et al.Problem definitions and evaluation criteria for the CEC 2021 special session and competition on single objective bound constrained numerical optimization[R].Singapore:Nanyang Technological University,2020. doi:10.1145/3377929.3398187

[37]

Zhou Xinyu, Wang Hui, Wang Mingwen,et al.Enhancing the modified artificial bee colony algorithm with neighborhood search[J].Soft Computing,2017,21(10):2733‒2743. doi:10.1007/s00500-015-1977-x

[38]

Zhou Xinyu, Lu Jiaxin, Huang Junhong,et al.Enhancing artificial bee colony algorithm with multi-elite guidance[J].Information Sciences,2021,543:242‒258. doi:10.1016/j.ins.2020.07.037

[39]

Huang Guangbin, Wang Dian hui, Lan Yuan.Extreme learning machines:A survey[J].International Journal of Machine Learning and Cybernetics,2011,2(2):107‒122. doi:10.1007/s13042-011-0019-y

基金资助

国家自然科学基金项目(62473342)

中原高端人才计划项目(204200510003)

河南省科技攻关项目(222102210277)

河南省科技攻关项目(242102210004)

AI Summary AI Mindmap
PDF (1817KB)

182

访问

0

被引

详细

导航
相关文章

AI思维导图

/