改进蝙蝠算法在模糊层次分析中的应用①
2018-04-21张晓琪唐天国
计算机系统应用 2018年3期
张晓琪, 胡 振, 唐天国
(南充职业技术学院 信息与管理工程系,南充 637131)
蝙蝠算法(Bat Algorithm,BA)是剑桥大学的Xin-She Yang基于蝙蝠的回声定位特性提出的一种群体智能搜索算法[1],它完美结合了现有成功算法的主要优点[2],具有模型简单、求解效率高、潜在并行性和分布式等特点[3,4],其准确性和有效性优于遗传算法(Genetic Algorithm,GA)、粒子群优化(Particle Swarm Optimization,PSO)算法等经典算法[5,6],已被应用于多个学科和工程领域[7-9]. 但BA没有变异机制,难以保持种群的多样性,容易陷入局部最优而发生早熟收敛,致使求解精度较低; 它比PSO算法加强了局部搜索,却也引起了后期收敛速度变慢的问题. 为了改善性能,已研究出各种进化的、有效的变种蝙蝠算法[10],如: 刘长平等通过引入逻辑自映射函数改进局部搜索能力,提出了一种具有混沌搜索策略的蝙蝠优化算法[3,6]; 肖辉辉等将差分进化(Differential Evolution,DE)算法的变异、交叉和选择机制融合到基本蝙蝠算法中,增强了种群的多样性、全局寻优能力和搜索能力,形成了一种基于算法改进的蝙蝠算法[4]; 薛威力等通过动态调整参数和高斯扰动避免陷入局部最优,提出了一种基于方差改进的蝙蝠算法[10]. 这些改进策略能够增强全局寻优能力、提高求解精度,但同时对算法的简捷性和运行效率带来了不利影响.
本文提出一种基于权重因子、Cauchy分布随机数扰动和非线性规划的改进蝙蝠算法,并将其应用于模糊层次分析中的判断矩阵一致性修正与因素权重计算,取得了较为满意的结果.
