论文部分内容阅读
蝙蝠算法(BA)是一种通过模拟蝙蝠猎食行为进行全局寻优的群智能优化算法,在性能上优于遗传算法和粒子群算法,具有易操作、参数少和鲁棒性强等特点,对求解各种组合优化或连续优化问题有很大帮助,可应用于多个领域,如图像处理、资源配置、数据挖掘、信息处理和金融等等。但是对于求解一些更为复杂的问题,算法本身仍存在缺陷,例如种群多样性不足、寻优精度低、收敛速度慢和易陷入局部最优等。本文分析了蝙蝠算法的寻优步骤和仿生原理,并且将它和不同的群智能优化算法进行了比较,总结了算法在求解不同优化问题中的优势和不足,提出了一种基于反向学习策略的蝙蝠算法(OLBA)。针对种群多样性不足问题,在种群初始化时采用均匀设计理论,使得蝙蝠个体能够相对均匀地分布在搜索空间,从而构造出多样性更好的种群;针对寻优精度低和收敛速度慢的问题,借助反向学习策略,对精英蝙蝠个体进行反向学习,生成指定大小的反向种群,然后将当前种群和反向种群中的蝙蝠个体一起进行优胜劣汰,从而优化了蝙蝠种群中的个体位置;在蝙蝠个体的更新公式中加入了自适应的移动因子,达到了动态调整移动步长的目的,使其能更好地趋向最优目标;针对易陷入局部最优问题,设置了种群差异性的阈值,当不满足阈值时,对当前种群中部分适应度值较差的个体进行搜索空间内的重新初始化,通过改变这些蝙蝠个体的位置,提高种群的差异性,有效地避免了算法的未成熟收敛。本文采用6种单峰测试函数和4种多峰测试函数分别对BA、具有Lévy飞行特征的蝙蝠算法(LBA)和OLBA进行了仿真,通过实验结果的对比分析可以得出,OLBA在寻优过程中,能够加快收敛速度,提高解的精度,并且求得的全局最优解相对稳定。综上,OLBA的改进策略具有有效性和可行性。本文的主要工作是针对蝙蝠算法的缺点进行改进。其中合理设置初始种群、制定种群差异性判断规则、对精英个体的操作处理、蝙蝠个体更新公式等都是影响算法性能的关键。在后续的工作中,将对算法中参数的设置进行深入研究,例如个体更新公式中移动因子的选择、种群差异性的阈值等,并对其它群智能优化算法进行更为细致的分析,取长补短,找到突破点,挖掘蝙蝠算法的潜力,力求进一步改善算法的性能,从而更好地将它应用到实际中。