基于分组协同进化策略的果蝇优化算法研究
2021-04-02戴宝赋谭建军孙先波易金桥
胡 天,戴宝赋,谭建军,孙先波,黄 勇,朱 黎,易金桥
(湖北民族大学 信息工程学院,湖北 恩施 445000)
果蝇优化算法(Fruit Fly Optimization Algorithm,FOA)[1]是基于果蝇觅食行为提出的一种智能群体优化算法.该算法具有低参量、快收敛、高效率等优点,被广泛应用于数据预测[2-3]、图像处理[4]、路径优化[5-6]、故障诊断[7]、多维背包问题[8]等.针对FOA算法在寻优过程中易于陷入局部最小值且迭代次数多的问题,张铸等[9]提出了一种混沌步长果蝇优化算法(A novel Fruit Fly Optimization Algorithm with Chaotic Step,HSFOA),该算法将Hénon混沌映射引用为步长因子,提高了算法的全局搜索能力和收敛速度;王念等[10]提出了一种加权果蝇优化算法(Weighting Fruit Fly Optimization Algorithm,WFOA),该算法引入三维坐标和加权因子,克服了果蝇优化算法只能在二维平面寻优的局限性;张水平等[11]提出了一种基于动态调整搜索策略的果蝇优化算法(Fruit Fly Optimization Algorithm with Dynamic Adjustment of Search Strategy,FOAASS),该算法利用混沌映射增强种群初始位置的均匀性和随机性,通过转换概率随机选取搜索半径并对其进行动态调整.以上研究成果提高了果蝇优化算法的搜索能力和收敛速度.
分组协同进化是一种有效提高学习效率和学习能力的群体学习模式[12],本文将这一模式与果蝇群体寻优相结合,研究基于分组协同进化策略的果蝇优化算法(Group coevolution Fruit fly optimization algorithm,GCFOA),并选取8个经典函数[13]采用GCFOA算法计算函数最小值,最后与IFOA、WFOA、FOA、PSO(粒子群算法)、BA(蝙蝠算法)算法计算结果进行比较.
1 GCFOA算法
在经典FOA算法采用定步长方法进行动态寻优的基础上,先将果蝇群体分为两组,分别进行动态寻优和相互学习,扩大算法的搜索范围,快……
