猴群算法及其改进综述

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:liuqinggang
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:猴群算法(Monkey Algorithm,MA)是近几年提出的一种新颖的群体智能算法,依据它算法本身的“空翻”特点,使得它在算法收敛后期易跳出局部最优而区别于其他仿生群体智能算法。该文从生物背景、算法原理、算法改进及算法应用等各个方面理论讲述猴群算法,分析猴群算法的优缺点,并从就不足之处总结到目前为止学者们从算法的各方面(包括:混合算法、参数设置等)提出的相应的改进策略。最后,综合阐述了猴群算法现阶段仍存在的急待研究的一些问题。
  关键词:猴群算法;算法原理;算法改进;算法应用
  中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2017)32-0092-03
  Research on the Algorithm of Monkey Group
  ZENG Xiu, WEI Zhen-hua
  (Information Engineering Institute,East China University Of Technology, Nanchang 330013, China)
  Abstract: The monkey algorithm is a new kind of group intelligence algorithm proposed in recent years. Based on its "somersault" feature, it is easy to jump out of the local optimal and different from other bionic group intelligence algorithms. This paper analyzes the advantages and disadvantages of the monkey algorithm from the aspects of biological background, algorithm principle, algorithm improvement and algorithm application, and summarizes the advantages and disadvantages of the monkey algorithm from the shortcomings. So far, scholars have learned from all aspects of the algorithm (including: Hybrid algorithm, parameter setting, etc.) proposed the corresponding improvement strategy. Finally, some problems of monkey group still exist are still discussed.
  Key words: monkey group algorithm; algorithm principle; algorithm improvement; algorithm application
  猴群算法(Monkey Algorithm, MA)是Zhao和Tang在2008年提出的一种新型仿生群体智能算法。MA算法模拟猴群攀爬的行为特点,分析抽象出攀爬行为、观跳行为和空翻行为这三种独立行为。由于猴群算法发展时间较短,系统的算法理论不足,研究的资料也不十分充裕。本文就这些问题,查阅大量相关的研究资料,对猴群算法进行清晰的理论梳理,细致分析攀爬、观跳、空翻这三个行为的算法描述和特征。并从参数设置和混合算法两个方面总结分析了当前专家学者对猴群算法的改进方法和应用领域研究。
  1 猴群算法
  1.1 猴群算法的生物背景
  经过长期的对猴群活动习性的观察发现,猴群在爬山的过程中,总是可以分解为攀爬、观跳、空翻行为。首先,猴子会在较小范围内爬行,不断向更高处前进。猴群的攀爬行为就相当于狼群算法中搜寻猎物的过程,寻找局部地区内的一个最优值。找到更优的值,就替换掉原来的值。猴子爬到所在地的最高处时,就观察附近有没有更高的位置,如果有,就跳跃至更高处,然后继续攀爬行为至顶端,这就是狼群的观跳行为。为了发现全局最高的地方,猴子会空翻至更远的区域,然后继续爬行,就是猴群的空翻行为。重復几次这样的行为,直至到达全局最高点处。
  猴群算法与蜂群算法、狼群算法等群体智能算法有所区别,蜂群算法中有引领蜂、侦查蜂及跟随蜂,狼群算法则有搜寻狼、头领狼和围攻狼,角色之间相互转换。而在这里,猴群没有角色的变更,只有阶段性的行为变化。其中攀爬行为穿插在整个的前进过程中,例如在观跳行为的前后和空翻行为前后,是个耗时最长的行为。
  1.2 算法定义
  设猴群的爬山空间是一个SN*Di空间,SN是整个猴群个体总数,Di是变量数目即空间维度。任意一猴子个体i在解空间中的当前位置信息表示为:[Xi=(Xi,1,Xi,2,...,Xi,Di)],参数[Xi,d]表示猴子个体在第d维空间中的位置。猴子个体在行动过程中到达的某个位置的高度为:[Pi=F(X)],是目标函数值。算法的目的是求解目标函数的最优值,映射为猴群寻找全局范围内的最高点的过程。
  1.3 猴群智能行为
  猴群算法模拟猴群爬山活动行为对目标函数进行优化,将整个爬山过程三种行为:攀爬、观跳和空翻。
  1.3.1 攀爬行为
  猴子在所在区域的小范围内搜寻局部最优值。如果找到更优值的位置,就更新位置信息,用更优值所在的位置替换掉原来的位置。猴子个体i首先探查依据伪梯度方向从点[Xi]=([Xi,1,Xi,2,...,Xi,Di])前进一步到达的位置[Pi],若[Pi]超出[X]的取值范围:[[Xld,Xud]],则[Pi]取边界值。否则,若[Pi∈[Xld,Xud]],计算该猴子个体在[Pi]位置上的目标函数值[F(Pi)]。若[F(Pi)  随机产生序列向量[ΔXi]:[ΔXi]=([ΔXi,1,ΔXi,2,...,ΔXi,Di])。其中,随机产生随机数[θ],若[0.5≤θ≤1],则[ΔXi,d=a];若[0≤θ<0.5],[ΔXi,d=-a]。这里的[a]是攀爬步长。计算伪梯度[fi(Xi,d)=(fi,1(Xi,d),fi,2(Xi,d),...,fi,Di(Xi,d))],[d={0,1,...,Di}],其中:
  [fi,d(Xi,d)=f(Xi,d ΔXi,d)-f(Xi,d-ΔXi,d)2ΔXi,d] (1)
  2) 点[Pi]处的函数值计算:
  设点[Xi,d]沿伪梯度前进一步的位置点[Pi]的值为:[Pi=(P’i,1,P’i,2,...,P’i,Di)],其中[P’i,d=X’i,d a*sign(fi,d(Xi,d))]。这里的[sign]函数是符号函数。若[P’i,d∈[Xld,Xud]],则计算点[Pi]处的函数值[F(Pi)]。
  1.3.2 观跳行为
  经过攀爬行为,猴子爬到了所在区域的局部最高点处。猴子在一定视野内观望所在点的四周区域,查看更高点位置所在。如果有,则猴子跳至更高点所在地,更新位置信息。否则,不跳。
  设视野宽度为[φ](即:猴子从所在点出发向外能观望的最远的距离),猴子个体i从当前所在位置点[Xi=(X’i,1,X’i,2,...,X’i,Di)]向四周望去,视线的落脚点位置为[Pi=(P’i,1,P’i,2,...,P’i,Di)],[d={0,1,...,Di}],其中,[P’i,d]的值为:
  [P’i,d=rand(0,1)*(Xi,d-φ,Xi,d φ)] (2)
  若[Pi]超出[X]的取值范围:[[Xld,Xud]],则[Pi]取边界值。若[Pi∈[Xld,Xud]],计算目标函数值[F(Pi)]。若[F(Pi)  1.3.3 空翻行为
  猴子在找到局部最优值的位置后,猴群为寻找到全局最优解,而以某个位置为支撑点,以一定的距离系数,进行空翻行为。跳出局部最优值区域,实现逃逸行为。然后在新的区域中继续寻找全局最高点,重复攀爬、观跳和空翻行为。
  猴子个体i以空翻半径[μ]的长度进行空翻行为,其中[μ]在空翻区域[[b,c]]内取任意值:[μ=rand(0,1)*[b,c]]。空翻的支点为群体的重心[X=(X1,X2,...,XDi)],计算公式为:[Xd=1SNi=1SNXi,d],[d={0,1,...,Di}]。则空翻后得到的位置点为[Pi=(P’i,1,P’i,2,...,P’i,Di)],其中[P’i,d]:
  [P’i,d=Xi,d μ*(Xd-Xi,d)] (3)
  若[Pi]超出[X]的取值范围:[[Xld,Xud]],则[Pi]取边界值。若空翻落点[Pi∈[Xld,Xud]],计算目标函数值[F(Pi)]。若[F(Pi)  1.4 猴群算法的步骤
  1) 猴群位置[Xi]初始化。设置种群中个体总数SN,变量数目Di,攀爬步长[a],视野宽度[φ],空翻区域[[b,c]],最大攀爬次数[Tmax]以及最大迭代数[Kmax],k=1。
  位置点[Xi]=([Xi,1,Xi,2,...,Xi,Di])的初始化公式为:
  [Xi,d=rand(0,1)*(Xu,d-Xi,d) Xi,d] (4)
  2) 第i只猴子个体从当前位置出发,执行攀爬行为(1),更新位置信息。
  3) 执行观跳行为(2),更新位置信息。
  4) 执行空翻行为(3),更新位置信息。
  5) 判断是否满足结束条件(到达求解精度)或者是否到达最大迭代次数[Kmax]。k=k 1。若满足,则终止算法。否则,返回2)。
  6) 输出全局最优解及它相应的位置信息。
  2 猴群算法的改进
  与蜂群算法(ABC)、狼群算法(WCA)、粒子群算法(PSO)等典型的仿生群体算法相比,猴群算法具有调控参数少,结构简单易操作,CPU消耗低等特点。更重要的是,由于猴群算法特有的空翻行为,使得猴群算法能轻易跳出局部最优值的束缚,使得它不会过多地受高维数或多峰的影响,寻优速度更快。这是明显有别于其他群体算法的一个重要特点。然而,猴群算法仍然存在着很多不足的地方:1) 虽然猴群算法的调控参数不多,但是在求解不同的函数优化问题时,对参数值的设置变化特别的敏锐。若设置不恰当的话,极有可能花费大量的时间也无法找到全局最优解。2) 由于猴群算法的观跳行为和空翻行为存在很多的随机性,这中间的过程可能会耗费较多的时间,造成整个算法优化过程的耗时冗长。3) 求解精度不佳。虽然猴群算法特有的空翻行为能帮助它很好地跳出局部最优值,但是空翻行为也存在极大的随机性。针对这些缺陷问题,学者专家们进行了详细细节分析,提出问题所在,并进行了相应的改进方法研究。
  2.1 参数改进
  徐小平[1]等人就猴群算法的攀爬行为在解决离散变量组合问题时可能存在失效的问题,将猴群个体的位置信息运用整数编码方法,改进了算法的初始化方式。为提高猴群算法的求解精度,在攀爬行为中引进了“好动算法”,通过细微随机地调整猴子位置信息中的若干变量,进行精细的目标搜寻。提高了算法的局部搜寻能力。李文利[2]等人对攀爬行为中依靠伪梯度计算前进的缺陷,重新定义攀爬行为。将支路搜索权数引进,运用不同支路负荷能力不同进行权值计算然后排序,并去除权值低的支路,提高了算法局部寻优性能。并在算法后期观望行为中运用循环次数递增机制,提高了算法的求解效率。郝士鹏[3]根据混沌搜索的随机遍历不重复的特点,在猴群算法的攀爬、观跳行为中引入混沌特征。并对猴群算法的固定步长攀爬行为和固定视野观跳行为的缺陷问题,提出引入自适应攀爬步长参数和混沌自适应观跳系数。使得攀爬步长随攀爬次数的增长而线性递减,视野系数因为站得越高而越广,提高算法后期的搜索精度和逃脱效率。   文献[4]中,引入非线性自适应攀爬步长和非线性自适应视野范围参数,更细致多变。另外,它就猴群算法中缺乏群体意识和信息交互问题,而提出猴王概念,让较差个体向猴王学习。并在空翻行为中,以猴王位置为支点,运用基于学习因子的空翻步长,引进小生境技术,提高了算法的整体寻优能力。文献[5]中,基于猴群算法对连续变量问题的优化缺陷,它引入双重编码方法。引入混沌搜索和小生境技术,并运用适应度共享淘汰劣势个体生成新个体,提高种群多样性。并应用到国贸大厦的传感器分布优化设置问题中,验证了改进算法的良好性能。徐小平[6]等人为提高猴群位置初始化时的均匀分布程度,引入Kent混沌映射方法,并改进攀爬行为,引入随着攀爬前进过程而递减的步长因子,提高了算法的求解精度。杜国璋[7]等人在初始化种群时则运用了正态分布方法增加群体多样性,并将模态置信度MAC矩阵作为目标函数。应用到了纸纱符合袋糊底机涂胶机构健康检测中的传感器优化布置问题中,证实了改进算法的良好性能。周志鹏[8]等将猴群算法进行自适应改进,针对其中调控参数多且固定和敏感度高带来的缺陷问题,在猴群算法后期陷入局部最优值时,引用高斯变异,提出一种基于高斯变异的自适应猴群算法(GAMA)。明显提高了算法的全局搜索能力和求解精度。孫承祥[9]等,提出在猴群攀爬行为的前期仍执行定步长的爬行搜素,在发现目标函数值没有太大变化时,再运用线性变化步长。他们将风电场进行建模,并将算法应用。
  2.2 混合算法
  伊廷华等[10]将病毒算法和猴群算法相融合,提出一种病毒猴群算法(VMA)。他将整个群体分为猴子子群和病毒子群两个子群,并让病毒子群去感染猴子子群实现个体之间的信息交互,提高了算法的局部寻优效率。并将猴群分类分别进行大、小病毒的感染,增加算法求解精度。且以大连国贸大厦传感器分布项目为对象进行实际应用,用仿真实验验证了改进算法的优良性能。贾赛赛[11]等人,看中鱼群算法较强的局部寻优能力,及其内部特殊的鱼群追尾行为又能帮助算法快速地靠近更优解特征,将其引入猴群算法的空翻行为之后,强强联合,提出混合混合猴群算法。并对凸多面体碰撞检测问题进行建模,把混合猴群算法应用到该问题求解过程中,仿真实验验证了该算法无论是在目标函数精度求解方面,还是在算法耗时方面都有了很大的性能提升。
  3 猴群算法的应用研究
  虽然猴群算法是近几年提出来的,发展时间并不长,但基于它自身不同于其他算法的优势,还是被很多的专家学者所偏爱。他们纷纷跃跃欲试,将猴群算法运用到各个研究领域,这之中有较多的传感器布置优化问题、资源分配问题、汽车能量管理问题等,并且还在不断地扩展。
  在文献[12]中,通过考虑每台设备的安装,采购,运行和维护成本,采用猴群算法去求解混合动力系统的优化问题,以便在项目期间最大限度地减少全球变暖效应和总体系的成本。陈海涛[13]等针对猴群算法收敛过早问题,提出引入反向学习和混沌搜索方法初始化猴群位置,另外设置随迭代次数呈指数下降的爬行步长和呈指数增大的视野参数。将改进的算法应用到云计算的资源分配中,成功降低了资源消耗。张彤[14]等针对风力发电的间断和非确定特征,为方便风电场运行稳定,模拟风电场工作性能原理进行静态和动态两个方面等值建模。将猴群算法(MA)和遗传算法(GA)两种算法从机理、流程、效率和灵活性多个方面进行比较,突出猴群算法的优势。并运用猴群算法到建模当中去进行仿真实验。申彩英[15]等将猴群算法理论应用到混合动力汽车系统的能量管理问题中,实现汽车耗油量的有效降低。张佳佳[16]等人将猴群算法应用到电脑入侵监测系统中,将数据集分类整合建立模型,改进系统的规则生成质量,提高检测效率。史振华[17]等人针对云计算中任务费用和消耗时间分配问题,将猴群算法改进并应用,有效地提高了其资源配置能力。
  这些也只是在实际工程设计问题应用中的一小部分,未来随着猴群算法的发展壮大,猴群算法将应用到更多的实际工程领域中,如系统设计、资源分配、能源调控、优化配置、扩展规划等。
  4 结束语
  猴群算法(MA)调控参数少易实现,且因“空翻”行为不易陷入局部最优,在众多群体算法中比较显著。但仍有很多问题有待研究:1)种群初始化问题。猴群位置初始化方式比较单一、随机,不能保证种群的质量,这样降低了目标函数最优值的求解效率。需要改进种群均匀分布情况。2)固定的攀爬步长和观望视野参数。不能结合猴群实际的爬山情况适当调整爬行步长,会很大程度影响寻优的能力。不能随情况变化调整的观望视野,也很大程度限制了猴群的“逃逸”能力,易使算法过早收敛。3)猴群算法的理论研究。虽然猴群算法已经发展了起来,但在猴群行为的理论研究上仍缺乏比较系统和细致的理论基础和改进。4)缺乏群体意识。猴群算法比较侧重个体的行动过程,而忘却了群体之间信息的交流和协作精神。让算法因不能及时了解大局的情况而不能及时调整算法的行为。
  参考文献:
  [1] 徐小平, 张东洁. 基于猴群算法求解旅行商问题[J]. 计算机过程与应用, 2017, 210(832).
  [2] 李文利, 聂宏展. 改进猴群算法在输电网扩展规划中的应用[J]. 吉林电力, 2012, 40(6):28-31.
  [3] 郝士鹏. 混沌猴群算法及其应用[D]. 天津: 天津大学, 2010.
  [4] 张亚洁. 猴群算法及其应用研究[D]. 西安: 西安电子科技大学, 2014.
  [5] 伊廷华, 张旭东, 等. 基于小生境猴群算法的传感器优化布置方法研究[J]. 工程力学, 2014, 31(9):112-119.
  [6] 徐小平, 张东洁. 一种改进的猴群算法[J]. 计算机系统应用, 2017, 26(6):193-197.
  [7] 杜国璋, 马丽. 改进的猴群算法在传感器优化布置中的研究[J]. 传感器与微系统, 2015, 34(8):152-155.
  [8] 周志鹏, 谢瑾秋. 基于高斯变异的自适应猴群算法[J]. 科技视界, 2014: 16-18.
  [9] 孙承祥, 宋玮. 基于改进猴群算法的山地风电场建模研究[J]. 可再生能源, 2015, 33(2):220-225.
  [10] 伊廷华, 张旭东. 基于病毒猴群算法的传感器优化布置方法研究[J]. 计算力学学报, 2014(19):285-290.
  [11] 贾赛赛, 刘志勤, 等. 基于混合猴群算法的凸多面体碰撞检测[J]. 计算机工程与设计, 2016, 37(10):2789-2793.
  [12] Ituarte-Villarreal C M, Lopez N, Espiritu J F.Using the monkey algorithm for hybrid power systems optimization[J]. Procedia Computer Science, 2012, 12: 344-349.
  [13] 陈海涛. 改进的猴群算法在云计算资源分配中的研究[J]. 计算机系统应用, 2015, 24(8):191-196.
  [14] 张彤. 基于猴群算法的风电场等值建模方法及应用研究[D]. 天津: 天津大学, 2012.
  [15] 申彩英. 基于猴群算法的混合动力汽车能量管理策略[J]. 计算机工程与应用, 2014, 50(14):9-13.
  [16] 张佳佳, 张亚萍. 基于猴群算法的入侵检测技术[J]. 计算机工程, 2011, 37(14):131-133.
  [17] 史振华, 陈暄. 云计算中一种改进的猴群算法在资源分派中研究[J]. 计算机测量与控制, 2015, 23(9):3188-3191.
其他文献
世界一流大学具有四个方面的特征:1、综合性一流大学一般都是综合性大学.(1)一流大学的综合性体现为学科门类齐全.具体为既有基础扎实、实力雄厚、富有文化底蕴或长期积累的
一、2008年1~9月国内造纸工业生产情况 1.生产情况 据中国造纸协会对规模以上造纸企业2008年1~9月份生产情况的统计,1~9月纸及纸板生产量共完成6273.97万吨.比2007年同期5688.75万吨
试论贮粮仓条件与粮食霉变宋国权(黑龙江省红旗岭农场粮贸公司)王颖(黑龙江省农垦科学院科技开发中心)凡贮粮发生霉变,必定是其水分含量较高.水分是贮粮微生物和粮食机体生命活动的
大豆新品种合丰36号郭泰,齐宁,刘忠堂,张荣昌(黑龙江省农业科学院合江农科所)合丰36号原试验代号合交88-851,是黑龙江省农业科学院合江农科所1984年以早熟、丰产、适应性强的合丰26号为母本,以晚熟、
虎年,理应虎虎有生气,然而,虎年的股市走势却令不少股评人士大跌眼镜,众多股票投资人输多赢少。那末,兔年的股市走势将会怎样演变呢?
2007年,由于美国次级债泡沫的破灭,给美国银行业造成了前所未有的冲击,很多银行濒临破产的边缘,之后.这场金融危机开始影响到美国的实体经济,并迅速蔓延到全球各地.由此产生了一场席
无可否认,半年前一度传统手机造型的V70初上市,其360度大回环之开盖方法,确实曾掀起不少话题,但热潮迅速冷却,现在价钱已由高峰期的4,500港元回落到2,500港元。假如你对此设计情有独
高校后勤是高等学校的重要组成部分,对促进高等学校的发展有着十分重要的作用.高校后勤在其长期的发展过程中,逐步形成了具有自身特色的文化,而这种文化对推动高校后勤的持续
2010年10月23日,富士施乐最新推出的彩色数码印刷系统Color1000Press正式落户北京金木堂数码快印中心。这是富士施乐在中国北方区装机的首台Color1000Press。
国务院发展中心负责人曾表示,我国中小企业的资产以及财产效应不容乐观,当前中小企业的退出率很高,近30%的中小企业在两年内可能消失,60%的中小企业在未来的四五年内可能消失。国家