人工蜂群算法改进

2016-12-22 21:41敖媛丁学明
软件导刊 2016年11期

敖媛++丁学明

摘 要:针对人工蜂群算法易陷入局部最优、收敛速度慢的问题,在算法中引入量子策略,设计蜂群系统中单个蜜蜂的势阱模型,模拟蜂群量子行为,提出一种具有量子行为的人工蜂群算法。改进的算法在算法前期保持了原算法中蜂群的多样性,后期使用量子策略增强了原算法的开采能力,提高了算法的收敛速度。最后,用标准测试函数进行测试。实验结果表明,改进的人工蜂群算法在保持原算法有效性的同时,大幅提高了算法的收敛速度和精度。

关键词关键词:人工蜂群算法;群智能优化算法;量子策略;标准测试函数

DOIDOI:10.11907/rjdk.161955

中图分类号:TP312

文献标识码:A 文章编号文章编号:16727800(2016)011006503

基金项目基金项目:

作者简介作者简介:敖媛(1992-),女,贵州盘县人,上海理工大学光电信息与计算机工程学院硕士研究生,研究方向为最优化算法、系统辨识;丁学明(1971-),男,安徽芜湖人,博士,上海理工大学光电信息与计算机工程学院副教授、硕士生导师,研究方向为系统辨识、智能控制、嵌入式系统。

0 引言

智能优化计算已经被证明是解决复杂工程问题的有效方法[1]。遗传算法(GA)、蚁群算法(ACO)、粒子群算法(PSO)等群智能优化算法成为研究热点[2]。

人工蜂群算法(Artificial bee colony algorithm,ABC )是Karaboba于2005年根据蜜蜂觅食行为提出的智能优化算法,具有自适应、自组织、自学习特征,已被证明是解决复杂工程问题的有效方法[3],广泛应用于函数优化、神经网络参数优化、工业系统设计优化等领域[3]。尽管人工蜂群算法优化能力很强,但其仍存在易陷于局部最优、收敛速度慢的问题[48]。针对这些问题,很多学者开展了研究,文献[3]在ABC算法中引入OBL策略,文献[8]提出了一种全局指导的ABC算法,但都未解决上述问题。

本文针对ABC算法易陷入局部最优、收敛速度慢的问题,在ABC算法中引入量子策略,提出一种基于量子行为的人工蜂群算法(Improved Quantum Inspired Artificial bee colony algorithm,IQABC),并使用6个标准测试函数验证算法的可行性、收敛性及精度。实验结果表明IQABC不仅提高了算法的精度、收敛性速度,而且有效克服了ABC易陷入局部最优的缺点,验证了算法的有效性。

1 人工蜂群算法

人工蜂群算法是一种由蜜蜂觅食行为所启发的新的群智能算法。自然界中的蜂群主要由雇佣蜂(引领蜂)、跟随蜂和侦查蜂组成。其中雇佣蜂和跟随蜂负责开采食物源,侦查蜂负责探索新的食物源。ABC算法就是根据自然界蜂群3种类型的蜜蜂行为所设计的一种迭代算法,其算法描述如下:

设每个食物源代表一个可行解,在蜂群中有N个食物源可开采,第i个食物源在d维搜索空间中所代表的解为:xi=[x1i,x2i,…,xdi,…,xDi],i=1,2,…,N,算法执行过程为:

(1)在可行解空间内随机初始化解的位置,并计算出当前的适应度值。

(2)在第t次迭代中,雇佣蜂根据公式(1)更新解的位置:

(3)跟随蜂按照食物源概率大小使用轮盘赌方式选择采蜜的食物源,食物源被选中的概率由式(2)决定,被选中的食物源也由式(2)更新。

其中,fit(i)是第i个食物源的适应度,N为总共食物源的个数。

(4)一个解xi经过有限次迭代后没有变化就会被放弃,此时侦查蜂根据公式(3)重新探索新的食物源。

式(3)中,best(t)为最好的适应度值所对应的解,worst(t)为最差的适应度值所对应的解。

从ABC算法的执行过程可知,算法中雇佣蜂和跟随蜂在解的附近进行局部搜索,当经过有限次迭代后没有开采到更优的解,则会把这个解放弃,由侦查蜂负责进行全局搜索。ABC算法由于模仿蜂群中的觅食行为,能较好地平衡搜索过程中的开发和勘探。但文献[8]指出,其具有收敛速度较慢、易陷入局部最优的缺点。

2 人工蜂群算法的δ势阱模型

由公式(3)可知,在ABC中,当蜜蜂陷入局部最优后,侦查蜂的行为仅根据当前最好和最坏的食物源随机选择新的食物源,以调节算法的勘探能力。尽管这在一定程度上可以加强全局搜索,使其跳出局部最优,但容易导致收敛速度慢,重新陷入局部最优问题。因此,本文在ABC算法中引入量子策略,改善人工蜂群算法收敛速度慢、易陷入局部最优的缺点,加快算法后期的收敛速度和收敛精度,平衡算法开采和勘探能力。

根据文献[12-14]中对ABC算法的收敛分析知,整个蜂群系统最终将收敛于某点g。假设整个蜂群系统是一个量子系统,蜂群中的每一种蜜蜂都具有量子行为,收敛点g附近存在δ势阱,定义δ势阱的步长L为第i个食物源的位置与当前所有食物源位置的平均值之间的距离,即L=2δ(xi-),其中δ为控制参数。因此,蜂群系统中的蜜蜂应根据公式(5)进行运动,产生新的食物源。

3 量子行为的人工蜂群算法

当雇佣蜂和跟随蜂经过Limit次迭代后仍没有变化,可认为算法已收敛于当前的全局最优点best(t),此时使侦查蜂具有量子行为,由公式(5)进行更新,加快算法的收敛速度,指导算法收敛于全局最优。因此,IQABC的实现流程如下。

4 实验仿真及结果

验证一个新提出的算法是否有效,最基本的方法是使用测试函数。从文献[15]中选取F1:Sphere、F2:Rastrigr、F3:Griewank、F4:Ackle、F5:Schwefel、F6:Step六个标准测试函数对IQABC算法进行测试,验证算法的精度及有效性,6个标准测试函数见表1。

分别使用ABC和IQABC对测试函数F1-F6进行求解,每个测试函数上单独运行30次。ABC和IQABC的种群大小均取100,Limit取0.6,IQABC中δ取0.1,得出实验结果如图1-图6,ABC和IQABC的统计结果对比见表2。

由实验结果可知,IQABC在保证算法有效性的同时,大幅提高了算法的收敛速度及精度,有效解决了算法易陷入局部最优、收敛速度慢的问题,平衡了算法开发和勘探能力。

5 结语

本文提出了一种具有量子行为的人工蜂群算法,通过在ABC中引入量子策略,在算法前期,保持蜂群算法自组织、自学习特性;在算法后期,使侦察蜂具有量子行为,降低了算法的随机性,提高了算法的收敛速度及精度。通过对6个标准测试函数实验,表明IQABC改善了ABC易陷入局部最优的缺点,加快了算法收敛到最优解的速度,验证了算法的有效性。

参考文献:

[1] FOGEL, D B. An cntroduction to evolutionary computation tutorial [C].Congress on Evolutionary Computation (CEC2001), Seoul, Korea, 2001.

[2] CHEUNG N J, DING X M,SHEN H B. OptiFel:a convergent heterogeneous particle swarm optimizati on algorithm for takagi sugeno fuzzy modeling [J]. IEEE Transactions on Fuzzy Systems, 2014, 22 (4): 919933.

[3] TEODOROVIC D, DELLORCO M. Bee colony optimization——a cooperative learing approach to complex transportation problems[C]. In proceedings of 10th EWGT Meeting and 16th MiniEURO Conference, Poznan, Poland, 2005:316.

[4] DERVIS K, BEYZA G. A comprehensive survey: artificial bee colony algorithm and applications[J].Artificial Intelligence Review, 2014, 42(1):2257.

[5] 毕晓君,王艳娇.改进人工蜂群算法[J].哈尔滨工程大学学报,2012(33):118123.

[6] 张冬丽.人工蜂群算法的改进及相关应用研究[D].秦皇岛:燕山大学,2014.

[7] 邱剑锋.人工蜂群算法的改进方法与收敛性理论的研究[D].合肥:安徽大学,2014.

[8] GUOPU Z, SAN K. Gbestguided artificial bee colony algorithm for numerical function optimization[J].Applied Mathematics and Computation,2010,217(1):31663177.

[9] SUN J, FENG B, XU W B. Particle swarm optimization with particles having quantum behavior [C]. Roma:Proceding of IEEE Congress on Evolutionary Computation,2000.

[10] DING X, XU ZHENKAI, NGAAM J, et al. Parameter estimation of takagisugeno fuzzy system using heterogeneous cuckoo search algorithm [J]. Neurocomputing, 2015, 151(3):13321342.

[11] 王建,丁学明,董新燕. 基于量子策略的布谷鸟搜索算法研究[J]. 电子科技,2015,28(12):4044.

[12] BILAL A. Chaotic bee colony algorithms for global numerical optimization [J]. Expert Systems with Applications,2010,37(8):56825687.

[13] GUOQIANG L, PEIFENG N, XINGJUN X. Development and investigation of efficient artificial bee colony algorithm for numerical function optimization [J]. 2012,12(1):320332.

[14] DERVIS K, BARBAROS B. On the performance of artificial bee colony (ABC) algorithm[J]. Applied Soft Computing,2008,8(1):687697.

[15] SUGANTHAN P W, HANSEN N, LIANG K J, et al. Problem definitions and evaluation criteria for the CEC 2005 special session on real paramerter optimization [R]. Singapora:Nanyang Technological University, 2005.

(责任编辑:杜能钢)