具有学习及十字交叉搜索的人工蜂群算法*

2017-12-13 05:44高兴宝
计算机与生活 2017年12期
关键词:测试函数适应度全局

黄 珊,高兴宝

陕西师范大学 数学与信息科学学院,西安 710119

具有学习及十字交叉搜索的人工蜂群算法*

黄 珊+,高兴宝

陕西师范大学 数学与信息科学学院,西安 710119

为克服人工蜂群算法搜索策略的局部搜索能力较弱且计算资源分布不均匀等缺点,提出了一种改进人工蜂群算法。首先对雇佣蜂和瞭望蜂,分别设计了新搜索策略,提高了在精英解和全局最好解邻域内的搜索能力;其次对依概率选取的瞭望蜂,采用局部学习策略,加快了收敛速度并增强了全局寻优能力;最后为平衡全局搜索和局部开发,利用十字交叉搜索增强瞭望蜂和全局最好解的局部搜索能力,维持了种群多样性,从而避免了早熟收敛现象。对10个标准测试函数和30个CEC2014测试函数集进行仿真实验,并与四种人工蜂群算法和两种非人工蜂群算法进行比较,结果表明改进的人工蜂群算法全局寻优能力强且提高了收敛速度和精度。

人工蜂群算法(ABC);十字交叉搜索;局部学习;数值优化;邻域搜索

1 引言

优化技术在工程设计、运筹学、生产运营、科学和信息等相关领域中[1]扮演着至关重要的角色,是解决复杂问题的有效方法。然而,现实世界中的许多问题不连续或存在许多局部极小,因此使用传统方法难以求解。而作为重要的随机搜索方法,进化计算已成功运用于解决许多非凸、不连续、多峰优化问题[2],并且受到了广泛的关注。受蜜蜂觅食行为的启发,Karaboga于2005年提出了人工蜂群算法(artificial bee colony,ABC)[3]。作为一类重要的群智能优化算法,ABC具有控制参数少、易于实现、自组织等优点。然而与其他群智能优化算法类似,如粒子群优化算法(particle swarm optimization,PSO)[4]、差分进化(differential evolution,DE)[5]、蚁群算法(ant colony optimization,ACO)[6]和免疫算法(immune algorithm,IA)[7],ABC仍存在收敛速度慢、易于陷入局部极优、早熟收敛等问题。其主要原因在于ABC算法的搜索策略具有较强的全局搜索能力而局部开发能力较弱,且随机性使它不能很好地利用最好解的信息,导致无法充分开发更好的搜索方向。但对优化问题,算法性能的优劣,主要体现在能否合理地维持全局搜索和局部开发的平衡。为克服上述缺点,进一步提高算法性能,研究者提出了许多改进的ABC算法,大致可分为以下两类:

(1)改进每种类型蜂的搜索策略。文献[8]提出了一种全局指导的人工蜂群算法。该算法设计了一种新搜索策略,把全局最好解的信息融入到搜索策略中。由于搜索策略后两部分的指导方向不同,可能会造成震荡现象,从而导致搜索远离真实最优解(式(5))。文献[9]结合禁忌表的记忆能力和混沌局部搜索算子来改进侦查蜂的搜索过程,然而仅利用混沌策略来改进侦查蜂初始化过程并不能有效平衡搜索全局性和局部性。文献[10]设计了一种邻域半径搜索策略,更准确地模拟了瞭望蜂的行为,并且分析了阈值Limit和种群大小对优化结果的影响。虽然该算法显著地提高了解的精度,但对不同问题,设置恰当的邻域半径比较困难。文献[11]提出了一种动态改变种群规模的策略。在进化过程中,该策略依赖产生的候选解的优劣来删除或增加食物源。然而种群规模对算法的全局搜索能力和计算成本有重要影响,种群规模太大,计算成本高,收敛速度慢,种群规模太小,不能合理地覆盖搜索范围,全局搜索能力较弱,因此该策略并不能有效地改善算法性能。为提高算法的局部开发能力,文献[12]提出一种多维搜索策略,以指导当前个体朝最优解方向移动,但该策略注重前期搜索的局部开发,并不能有效平衡全局搜索和局部开发。

(2)混合ABC算法。该类算法采取优势互补的思想恰当地融合了ABC和一些其他智能优化算法。文献[13]分析了萤火虫算法(firefly algorithm,FA)和人工蜂群算法的各自特点,提出了一种集二者优势的混合算法,以解决约束均值方差文件夹的选择问题,实验结果表明混合算法具有较强的选择能力。受DE启发,文献[14]提出一种改进的搜索策略,引入选择概率P来选择搜索策略,同时采用混沌方法和对称学习方法初始化种群,以加快全局收敛。但选择概率P的设置,并不能充分发挥改进策略的优势,不能有效地平衡算法的全局性和局部性。

上述改进算法在一定程度上改善了ABC算法的性能,但仍存在收敛速度慢和早熟收敛等现象。因此本文提出具有学习及十字交叉搜索的人工蜂群算法(improved artificial bee colony algorithm with learning and crisscross search,LCSABC)。该算法首先对雇佣蜂和瞭望蜂,分别利用精英解和全局最好解的信息,设计新颖的搜索策略,加快收敛速度并且提高局部开发能力。其次,为保持种群多样性,避免算法早熟收敛,对瞭望蜂采用局部学习策略[15],改善全局搜索能力。最后,利用十字交叉搜索方法对瞭望蜂和全局最好解依次序进行水平交叉搜索和垂直交叉搜索,既加快了收敛速度,同时又增加了种群多样性。通过对10个标准测试函数[16]和30个CEC2014测试函数集[17]的仿真实验,并与基本的ABC算法以及三种ABC算法变体和两种非ABC算法的比较,说明所提算法能显著提高算法的收敛速度和全局寻优能力。

2 人工蜂群算法

人工蜂群算法模仿蜜蜂觅食的智能行为,是一种基于群体智能方法。在ABC算法[3]中,食物源的位置代表最优化问题的可能解,每个食物源的花粉数代表相应解的质量,即适应度值。为了找到最好的食物源,蜂群被划分成雇佣蜂、瞭望蜂和侦查蜂三种类型。为方便下文叙述,记I={1,2,…,SN}和J={1,2,…,D},其中D为搜索空间的维数,SN表示食物源数量,雇佣蜂和瞭望蜂的数量均为SN。

初始化阶段在可行解空间内,根据下式随机初始化产生食物源的位置并计算当前适应度值:

其中,fit(i)表示第i个食物源Xi的适应度值;f(Xi)表示食物源Xi处优化问题的目标函数值。此外,用counter来记录未成功更新的个体的数量,且对每个食物源初始counter设为0。

雇佣蜂阶段雇佣蜂和食物源是一一对应的关系,且不同的雇佣蜂将飞向不同的食物源。

首先,在父代食物源的邻域内,按下式搜索产生一个新的食物源:

其中,j∈J,G为迭代数;为在第G次迭代第i个食物源的第j维;表示第k个食物源的第j维,k∈I且k≠i;ϕj是[-1,1]上服从均匀分布的随机数。

瞭望蜂阶段所有雇佣蜂完成更新任务后,飞回蜂巢通过舞蹈形式向瞭望蜂传递食物源的信息。每个瞭望蜂以轮盘赌的方式按如下概率选择一个食物源进行再次搜索:

其中,fiti表示第i个食物源的适应度值。显然,食物源的适应度值越大,则它被瞭望蜂选择的概率越高。瞭望蜂将在每个食物源的邻域内,按照式(3)产生新食物源,并采用贪婪选择方法判断新的食物源是否能够被保留,同时更新counter。

侦查蜂阶段选择具有较大counter数的食物源并与预先设定的阈值Limit进行比较,决定是否抛弃该食物源。即若counter>Limit,则被选择的食物源将被其雇佣蜂抛弃,同时该雇佣蜂将转变成侦查蜂,并按照式(1)随机产生新食物源。

3 本文算法

以下将详细介绍两种新颖的搜索策略、瞭望蜂局部学习策略和十字交叉搜索。

3.1 两种新颖的搜索策略

在ABC算法中,解的搜索策略起着至关重要的作用。虽然新食物源产生公式(3)有较强的搜索能力,但其局部开发能力较弱。为提高算法的局部开发能力及充分利用当前最好解的信息,文献[8]提出了如下搜索策略:

其中,i=1,2,…,SN,j∈J;ϕi,j是[-1,1]上的随机数;φi,j是[0,1.5]上服从均匀分布的随机数;k是从I中随机选取的数且k≠i。尽管式(5)利用全局最好解信息来指导搜索方向,但由于搜索策略(5)后两部分的指导方向不同,可能会造成震荡现象。文献[18]设计了如下搜索策略:

其中,j∈J;r1和r2是从I中随机选取的数且i≠r1≠r2;ϕi,j与式(5)相同。该搜索策略只在最后一项的指导下搜索而不偏向任何方向,从而有效地避免了震荡现象。然而该策略并没有充分开发种群中较好解的信息。为克服这些缺点,对雇佣蜂和瞭望蜂,分别提出如下两种搜索策略:

3.2 瞭望蜂局部学习策略

在雇佣蜂阶段,每个雇佣蜂对应一个食物源,几乎一半的计算资源被平均分配到所有食物源上;而在瞭望蜂阶段,根据与适应度值成比例的概率来选择被搜索的食物源。尽管从理论上讲,更高质量的食物源将被分配更多的计算资源,然而当适应度值之间没有显著差异时,所有食物源可能会获得几乎相同的概率,且被分配相同的计算资源。此外,在ABC算法中食物源按赌轮选择耗时较大,且式(3)更注重全局搜索,而没有利用当前最好解的信息,收敛速度慢。另一方面,虽然在优化单峰函数时,式(5)能利用当前最好解的信息加快收敛速度,但对多峰函数,由于的引导,使搜索方向容易向局部极优移动而导致优化过程陷入局部极优[16]。

基于以上分析,在瞭望蜂阶段,本文首先依据雇佣蜂分享的信息,即利用式(4)产生的概率信息选择一个优质蜜源,并利用式(8)对该食物源的某一维进行更新;其次,选择适应度值大的食物源作为更新后的个体;最后,为保持种群多样性,对更新后的个体利用如下策略进行局部学习:

其中,i、p和q∈I且p≠q≠i,j∈J;Xi,j表示更新后第i个个体的第j维;Li,j表示Xi的第j维学习后产生的候选解;φi,j是[-1,1]上服从均匀分布的随机数;fit(Xi)表示解Xi处的适应度值。若学习产生的食物源Li的适应度值好于对应的食物源Xi,则用Li代替Xi进入下一次搜索。因此策略(9)能有效地提高当前解之间互相学习的能力,加快收敛。

3.3 十字交叉搜索

十字交叉搜索[19](crisscross,CS)作为一种能有效搜索到高质量食物源的催化剂,有助于改善算法的收敛速度。该方法分为水平交叉搜索和垂直交叉搜索。水平交叉搜索在独立的超立方体中产生候选解的概率较大,而在它们周边区域产生候选解的概率较小;垂直交叉搜索通过对个体的某些维实施算术重组,在保持种群多样性的同时,能促使停滞维数跳出局部极优。

(1)水平交叉。对食物源中的所有个体,随机两两分为SN/2组,然后对每组个体随机选择某一维执行一种特殊的算术交叉。具体过程如下:

设某组中个体为Xi和Xj,随机选择第d维实施如下水平交叉,产生候选解:

其中,a1和a2是[0,1]上服从均匀分布的随机数;c1和c2是[-1,1]上服从均匀分布的随机数;分别表示由Xi,d和Xj,d产生的候选解。从式(10)、式(11)可以看出,右端前两项来自遗传算法中被广泛应用的算术交叉,能使候选解随机分布在两个父代的范围之内;而右端最后一项分别引入扩展系数c1和c2来提高全局搜索能力。

(2)垂直交叉。对全局最好解随机选取不同两维执行算术交叉,且无重复执行Lc×D次算术交叉,其中Lc控制实施垂直交叉搜索的维数数量,建议Lc∈[0.2,0.4]。算术交叉具体操作如下:

设d1和d2为在[1,D]中随机选取的两个整数,对Xbest实施垂直交叉操作产生候选解:

其中,r是[0,1]上服从均匀分布的随机数;表示由产生的候选解。从式(12)中可以看出,垂直交叉对父代的某一维采用算术重组。

3.4 算法框架

由3.1~3.3节,具有学习及十字交叉搜索的人工蜂群(LCSABC)算法的具体步骤如下。

算法1 LCSABC算法

步骤1初始化。

设置种群规模SN,问题维数D,精英解数量m,参数Lc、counter,阈值Limit。用式(1)随机产生SN个个体构成初始种群POP,并用式(2)计算适应度值。

步骤2雇佣蜂阶段。

(2.1)依适应度值选取Topm个精英解;

(2.2)利用式(7)搜索新食物源;

(2.3)比较新食物源与其对应父代个体的适应度值,较优个体进入下一次搜索;

(2.4)若新食物源被保留,则对应的食物源的counter=0,否则counter=counter+1。

步骤3瞭望蜂阶段。

(3.1)利用式(4)选取适应度值较大的食物源;

(3.2)利用式(8)搜索新食物源;

(3.3)比较新食物源与其对应父代个体的适应度值,较优个体进入下一次搜索;

(3.4)若保留新食物源,则对应食物源的counter=0,否则counter=counter+1;

(3.5)利用式(9)对食物源进行学习;

(3.6)比较学习产生的新食物源与对应父代个体的适应度值,较优个体进入下一次搜索。

步骤4十字交叉搜索。

(4.1)利用式(10)、式(11)对瞭望蜂实施水平交叉搜索;

(4.2)比较水平交叉产生的新食物源与对应父代个体的适应度值,较优个体进入下一次搜索;

(4.3)利用式(12)对全局最好解的不同两维无重复地实施垂直交叉Lc×D次;

(4.4)比较垂直交叉产生的新食物源与全局最好解的适应度值,较优个体进入下一次搜索。

步骤5侦查蜂阶段。

若counter>Limit,则抛弃食物源,并利用式(1)随机生成新个体。

步骤6停止准则。

若FES>FES_max,则停止计算并输出结果;否则转步骤1继续搜索。

4 数值实验及分析

为评估LCSABC算法的性能,本文选取10个标准函数[16]f1~f10(见表1)和30个CEC2014测试函数[17]f11~f40进行数值实验,并与基本ABC算法[3]、3种改进ABC 算法(qABC[10]、dABC[20]、ABCVSS[21])和两种非ABC 算法(DE[5]、PSO[4])进行比较。其中f1~f5和f11~f13是连续单峰函数,f6~f10和f14~f26是多峰函数,f27~f32是混合函数,f33~f40是复合函数。所有实验均在PC机(i5,6200 u,2.30 GHz,8 GB)上采用Matlab R2015b进行。

LCSABC算法的参数设置如下:种群规模SN=50,Limit=SN×D,m=SN×0.2,Lc=0.4,δ=0.05。表 2给出了比较算法的参数设置(见文献[16])。在实验中每个测试函数均独立运行25次,并用函数误差f(Xbest)-f(X∗)的平均值(Mean)和标准差(Std)作为评价算法性能的标准,其中Xbest为算法运行中获得的最优解,X∗为理论最优解。为确保算法评价的公平客观及具有统计意义,采用显著性水平为0.05的Wilcoxon秩和检验对算法性能进行评价。

Table 1 Benchmark functions表1 标准测试函数

Table 2 Parameters setting of allABC algorithms表2 所有ABC算法的参数设置

首先,对30维标准测试函数f1~f10进行数值实验,并与6种算法(ABC、qABC、dABC、ABCVSS、DE、PSO)进行比较。在数值实验中,所有算法的最大函数评估次数FES_max=150 000。表3给出数值结果,其中“+”、“-”和“≈”分别表示对比算法优于、劣于和相似于本文算法,且最佳数值结果用黑色加粗标注。

由表3可以看出,LCSABC算法总体上比其他6种算法具有明显的优势。对单峰函数f1~f5,LCSABC算法在f2~f5上均获得最好结果,ABC算法在f1上获得最好结果,而对f4,除PSO算法外,其余6种算法均能得到最优值。特别地,对多峰函数f6~f9,LCSABC算法均取得最好平均值和标准差,尤其对函数f7,获得了理论最优值。由显著性水平为0.05的Wilcoxon秩和检验知,LCSABC算法所得结果显著地优于ABC、qABC、dABC、ABCVSS、DE和PSO算法的函数个数分别为7、9、9、9、9和10,劣于它们的个数分别为2、0、0、0、0和0,以及相当于它们的个数分别为1、1、1、1、1和0。

此外,与ABC算法相比,尽管LCSABC算法对简单的单峰函数f1没有取得最好结果,但对其他9个函数均取得最好结果,且在多峰函数f7上获得了理论最优值。因此LCSABC算法能有效平衡全局搜索和局部开发。

为进一步说明LCSABC算法的进化性能,图1给出了8个函数f2~f9的进化曲线。由图1可以看出,对单峰函数f2~f5,LCSABC算法在100次迭代后均取得明显优于其他3种算法的最优值,其收敛速度明显优于DE、PSO和ABC,而对f4,LCSABC和ABC算法获得理论最优值的迭代次数几乎相同;对多峰函数f6~f9,LCSABC算法在进化过程中具有较快的收敛速度,能有效平衡全局搜索和局部开发。特别地,对函数f7,LCSABC算法取得了理论最优值,且收敛速度优于其他3种算法。因此LCSABC算法不仅在解的精度和稳定性方面明显优于其他6种算法,而且有效平衡了算法的全局搜索和局部开发能力。

Table 3 Comparison of 7 algorithms with 30D standard test functions表3 7种算法在30维标准测试函数上寻优性能比较

其次,对30个CEC2014测试函数f11~f40在10维上进行数值实验,并与6种算法ABC、qABC、dABC、ABCVSS、DE和PSO进行比较。在实验中,最大函数评估次数FES_max=100 000。表4给出数值结果,其中“+”、“-”和“≈”与表3相同,最佳的数值结果用黑色加粗标注。

由表4可以看出,与其他6种算法相比,LCSABC总体上具有明显的优势,表现出更好的性能。对单峰函数f11~f13,LCSABC算法在f11上获得了最好结果,其寻优能力明显优于其他6种算法,DE算法在函数f12~f13上取得最好结果;对简单的多峰函数f14~f26,LCSABC算法在函数f16、f18、f20、f21和f24上均取得最优的平均值和标准差。除DE和PSO算法外,LCSABC算法和其他4种算法在函数f18上都能获得理论最优值,qABC算法在函数f14和f15上获得最优值,ABCVSS算法在函数f17和f23上获得最优值,而ABC和dABC算法分别在函数f19和f22上获得最优值;对混合函数f27~f32,LCSABC算法对函数f32获得了明显优于其他6种比较算法的平均值和标准差;对组合函数f33~f40,LCSABC算法在函数f36、f38~f40上均获得到了较好的平均值且稳定性好于其他6种算法。特别地,LCSABC算法在f36上和dABC算法获得了相近的平均值且标准差好于dABC算法,ABC算法在f35上获得最优值,dABC算法在f37上获得最优值。由显著性水平为0.05的Wilcoxon秩和检验知,LCSABC算法所得结果显著地优于ABC、qABC、dABC、ABCVSS、DE和PSO算法的函数个数分别为20、18、19、19、22和29,劣于它们的个数分别为8、8、8、10、7和1,以及相当于它们的个数分别为2、4、3、1、1和0。

Fig.1 Evolutionary curves of 4 algorithms onf2~f9图1 函数 f2~f9上4种算法的进化曲线

此外,尽管标准ABC算法在简单函数f19和4个复杂函数f30、f33~f35上获得最优值,3种改进的ABC算法在8个简单函数f13~f15、f17、f22、f23、f25、f26和3个复杂函数f28、f29、f37上获得最优值,然而LCSABC算法在7个简单函数f11、f12、f16、f18、f20、f21、f24和7个复杂函数f27、f31、f32、f36、f38~f40上均能获得最优值。因此,LCSABC算法能有效地避免陷入局部最优,有效地平衡了搜索的全局性和局部性。

进一步,虽然DE算法在2个单峰函数f12和f13及4个复杂混合函数f27、f28、f30、f31上获得最优解,而PSO算法在混合函数f27上获得最优解,但LCSABC算法在22个多峰函数和复杂混合函数f14~f26、f29、f32~f39上均获得最优值。因此,在解复杂优化问题时,LCSABC算法能有效地避免陷入局部最优,减少早熟收敛现象。

Table 4 Comparison of 7 algorithms with 10D CEC2014 test functions表4 7种算法在10维CEC2014测试函数上寻优性能比较

续表4

综上所述,实验结果表明LCSABC算法能有效平衡全局搜索和局部开发能力,不仅在求解精度和稳定性方面表现出较好的性能,而且能有效避免算法陷入局部极优。

5 结论

为增强ABC算法的局部搜索能力,加快收敛速度和避免早熟收敛现象,提出了一种具有学习及十字交叉搜索的改进人工蜂群算法(LCSABC)。首先,对雇佣蜂和瞭望蜂,分别设计了两种新颖的搜索策略,通过精英解和全局最好解邻域的信息来加强全局搜索能力;其次,对瞭望蜂采用局部学习策略来加快收敛速度;最后,对瞭望蜂和当前最好解依次序采用十字交叉搜索方法来维持种群的多样性,避免了早熟收敛现象。对10个标准测试函数和30个CEC2014测试函数进行仿真实验,并与6种算法进行比较,结果表明LCSABC算法在收敛速度和寻优精度方面都有显著的提高。

[1]Azamathulla H M,Wu Fuchun.Support vector machine approach for longitudinal dispersion coefficients in natural streams[J].Applied Soft Computing,2011,11(2):2902-2905.

[2]Azamathulla H M,Ghani A A,Fei S Y.ANFIS-based approach for predicting sediment transport in clean sewer[J].Applied Soft Computing,2012,12(3):1227-1230.

[3]Karaboga D.An idea based on honey bee swarm for numerical optimization[R].Kayseri:Erciyes University,2005.

[4]Kennedy J,Eberhart R C.Particle swarm optimization[C]//Proceedings of the 1995 International Conference on Neural Networks,Perth,Australia,Nov 27-Dec 1,1995.Piscataway,USA:IEEE,1995:1942-1948.

[5]Storn R,Price K.Differential evolution:a simple and efficient adaptive scheme for global optimization over continuous spaces,TR-95-012[R].Barkeley:Global International Computer Science Institute,1995.

[6]Dorigo M,Birattari M,Stutzle T.Ant colony optimization[J].IEEE Computational Intelligence Magazine,2006,1(4):28-39.

[7]Jiao Licheng,Wang Lei.A novel genetic algorithm based on immunity[J].IEEE Transactions on Systems,Man,and Cybernetics,2000,30(5):552-561.

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

[9]Luo Jun,Li Yan.Artificial bee colony algorithm with chaoticsearch strategy[J].Control and Decision,2010,25(12):1913-1916.

[10]Karaboga D,Gorkemli B.A quick artificial bee colony(qABC)algorithm and its performance on optimization problems[J].Applied Soft Computing,2014,23(5):227-238.

[11]Aydin D,Özyön S,Yaşar C,et al.Artificial bee colony algorithm with dynamic population size to combined economic and emission dispatch problem[J].International Journal of Electrical Power&Energy Systems,2014,54(1):144-153.

[12]Cao Chunhong,Xu Guangxing.Geometric constraints based on improved artificial bee colony algorithm[J].Journal of Frontiers of Computer Science and Technology,2015,9(9):1122-1131.

[13]Tuba M,Bacanin N.Artificial bee colony algorithm hybridized with firefly algorithm for cardinality constrained meanvariance portfolio selection problem[J].Applied Mathematics&Information Sciences,2014,8(6):2831-2844.

[14]Gao Weifeng,Liu Sanyang.A modified artificial bee colony algorithm[J].Computers and Operations Research,2012,39(3):687-697.

[15]Ouyang Haibin,Gao Liqun,Li S,et al.Improved global-bestguided particle swarm optimization with learning operation for global optimization problems[J].Applied Soft Computing,2017,52(3):987-1008.

[16]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/368:1012-1044.

[17]Liang J J,Qu B Y,Suganthan P N.Problem definitions and evaluation criteria for the CEC 2014 special session and competition on single objective real-parameter numerical optimization,Technical Report 201311[R].Nanyang Technological University and Zhenzhou University,2013.

[18]Gao Weifeng,Liu Sanyang,Huang Lingling.A novel artificial bee colony algorithm based on modified search equation and orthogonal learning[J].IEEE Transactions on Cybernetics,2013,43(3):1011-1024.

[19]Meng Anbo,Chen Yucheng,Yin Hao,et al.Crisscross optimization algorithm and its application[J].Knowledge Based Systems,2014,67(4):218-229.

[20]Kiran M S,Findik O.A directed artificial bee colony algorithm[J].Applied Soft Computing,2015,26(C):454-462.

[21]Kiran M S,Hakli H,Gündüz M.Artificial bee colony algorithm with variable search strategy for continuous optimization[J].Information Sciences,2015,300:140-157.

附中文参考文献:

[9]罗钧,李研.具有混沌搜索策略的蜂群优化算法[J].控制与决策,2010,25(12):1913-1916.

[12]曹春红,许光星.基于改进人工蜂群算法的几何约束求解[J].计算机科学与探索,2015,9(9):1122-1131.

ImprovedArtificial Bee ColonyAlgorithm with Learning and Crisscross Search*

HUANG Shan+,GAO Xingbao

School of Mathematics and Information Science,Shaanxi Normal University,Xi'an 710119,China

2017-04,Accepted 2017-06.

This paper presents an improved artificial bee colony algorithm to overcome the weaker search ability and imbalance in computing resource allocation.To enhance the neighborhood search of the elites and global best solution,two new strategies are first designed for the employed bees and onlooker bees,respectively.Then a local learning strategy is used to the onlooker bees chosen probably to speed up the convergence speed and enhance the global optimization ability.Finally,to balance the exploration and exploitation effectively,the crisscross search method is employed to enhance the performance of the onlooker bees and global best solution such that the diversity of the population is preserved and the premature convergence phenomenon is reduced.The proposed algorithm is compared with six excellent meta-heuristic algorithms on 10 classical benchmark functions and 30 CEC2014 benchmark functions with different dimensions.The experimental results show that the proposed algorithm is very competitive.

artificial bee colony(ABC);crisscross search;local learning;numerical optimization;neighborhood search

+Corresponding author:E-mail:huangshan151567@snnu.edu.cn

10.3778/j.issn.1673-9418.1704059

*The National Natural Science Foundation of China under Grant No.61273311(国家自然科学基金);the Fundamental Research Funds for the Central Universities of China under Grant No.GK201603002(中央高校基本科研业务费专项资金).

CNKI网络优先出版:2017-06-08,http://kns.cnki.net/kcms/detail/11.5602.TP.20170608.1424.004.html

HUANG Shan,GAO Xingbao.Improved artificial bee colony algorithm with learning and crisscross search.Journal of Frontiers of Computer Science and Technology,2017,11(12):2004-2014.

A

TP18

HUANG Shan was born in 1992.She is an M.S.candidate at Shaanxi Normal University.Her research interest is intelligent optimization methods.

黄珊(1992—),女,甘肃酒泉人,陕西师范大学硕士研究生,主要研究领域为智能优化方法。

GAO Xingbao was born in 1966.He is a professor and Ph.D.supervisor at Shaanxi Normal University.His research interests include intelligent optimization methods,optimization theories and algorithms.

高兴宝(1966—),陕西陇县人,博士,陕西师范大学教授、博士生导师,主要研究领域为智能优化方法,最优化理论与算法。

猜你喜欢
测试函数适应度全局
改进的自适应复制、交叉和突变遗传算法
Cahn-Hilliard-Brinkman系统的全局吸引子
量子Navier-Stokes方程弱解的全局存在性
解信赖域子问题的多折线算法
一种基于精英选择和反向学习的分布估计算法
基于自适应调整权重和搜索策略的鲸鱼优化算法
落子山东,意在全局
一种基于改进适应度的多机器人协作策略
具有收缩因子的自适应鸽群算法用于函数优化问题
新思路:牵一发动全局