求解全局优化问题的改进人工鱼群算法

2019-07-08 03:41范永利胡春燕张悦
软件导刊 2019年6期
关键词:智能算法

范永利 胡春燕 张悦

摘 要:针对人工鱼群算法的不足,提出一种改进的人工鱼群算法NAFAS。该算法对原有觅食行为进行改进,引进双高斯函数与其融合,使在寻优后期人工鱼群能快速逃离局部极值区域,从而提高全局寻优能力。与其它多种智能算法进行仿真测试并比较分析,结果表明,改进的人工鱼群算法搜索速度快、寻优精度高。

关键词:人工鱼群算法;双高斯函数;全局优化;智能算法

DOI:10. 11907/rjdk. 182483

中图分类号:TP312

文献标识码:A文章编号:1672-7800(2019)006-0080-05

Abstract:Artificial fish swarm algorithm optimizes through the simulation of the fish behaviors, such as preying, swarming, following and moving in the search area, which?is an application of the swarm intelligence. It has the advantages of the better global search abilities and the excellent robustness. Whats more, the algorithm is easily and simply operated. But it is easy to fall into local optima in the flat area and becomes lower in the later period of algorithm. To overcome the shortages of the artificial fish swarm algorithm, this paper presents an improved artificial fish swarm algorithm which is named NAFAS. In order to enhance the global searching ability , the bimodal Gaussian is integrated into the function of the prey behavior. so the artificial fish can escape from local extreme areas quickly. Compared with some typical evolutionary algorithms, the numerical experiment results show that NAFAS not only has efficient search performance on the optimal precision excellently,but is also an excellent algorithm for solving global optimization problems.

Key Words:artificial fish swarm algorithm; bimodal Gaussian; global optimization; intelligent algorithm

0 引言

優化算法是以某种机制和思想为基础,用某一途径找到满足某种需求解的一种搜索过程。群体智能优化算法在诸多优化算法中有着举足轻重的地位。群体智能指由一些自治体构成的群体组合在一起所共同突显出来的智能。群体智能优化算法主要受自然界中昆虫、鱼类、鸟类、兽类、微生物等一些群体生物启发,通过对群体中那些自治体间的相互协作与竞争行为的模拟实现对问题最优解的搜索,并因此得到解决传统复杂问题的新方法。常见的群体智能算法有粒子群优化算法(PSO)[1]、蛙跳算法(FLA)[2]、蚁群优化算法(ACO)[2]、细菌觅食算法(BFA)[3]、蜂群优化算法(BCO)[4]、人工鱼群算法(AFSA)[5]等。各种群体智能算法的适用条件不同,在解决实际问题时所表现出的性能也不尽相同。

人工鱼群算法(AFSA)最初由李晓磊博士[6]于2002年提出。该算法由鱼类的聚群、追尾、觅食、随机4种基本行为构成,模拟出整个鱼群在水中从随机游动到吸食最大浓度食物(最优解)的过程。与传统智能优化算法相比,人工鱼群算法对初值和参数的选择不敏感,适用性强,具有良好的全局极值搜索能力。目前人工鱼群算法已经在通信工程、数据挖掘、信号和图像处理、控制科学、人工神经网络、农业水利、电力系统、数值计算、NP优化、参数优化、交通运输等方面得到广泛应用,但随着鱼群算法研究的深入,其所面临的优化问题规模和复杂程度不断增加,人工鱼群算法存在以下明显不足:①在较为平坦的区域内或对多峰函数进行寻优时,搜索行为容易陷入到局部最优解区域,寻优解收敛到全局的最优解速度较慢[7];②由于算法参数在整个寻优过程中固定不变,算法寻优速度在初期时较快,在后期时收敛速度明显变慢[7]。此外,对于不太合适的步长,人工鱼容易最终聚集在局部最优值点周围,以后每移动一步[8]都难以逃离局部极值区域,故此寻优值难以逼近最优值。

为克服人工鱼群算法不足,本文提出一种改进措施并构建出新人工鱼群算法(NAFSA)。新人工鱼群算法对原有算法的聚群行为和追尾行为进行了保留,但对觅食行为和随机行为进行了改进。人工鱼群在进行多次迭代寻优过程之后,最终以正态分布形式分布在最优解周围,新算法添加了新的人工鱼群更新机制,将固定参数变为动态参数[9]。算法在保留上次迭代中部分人工鱼吸附到最大食物浓度的位置之后,将其它人工鱼淘汰,并通过双高斯函数集体产生新一代人工鱼群,从而提高人工鱼群的多样性,增加鱼群自由游动的可能,尽最大可能逃离局部极值区域,提高了算法全局的寻优能力。

猜你喜欢
智能算法
神经网络智能算法在发电机主绝缘状态评估领域的应用
基于超像素的图像智能算法在矿物颗粒分割中的应用
从鸡群算法看群体智能算法的发展趋势
蚁群算法在路径优化问题的应用研究