您好,欢迎来到宝玛科技网。
搜索
您的当前位置:首页优化型蚁群算法在旅行商问题中的应用研究

优化型蚁群算法在旅行商问题中的应用研究

来源:宝玛科技网
总第248期 计算机与数字工程 Computer&Digital Engineering Vo1.38 No.6 22 2010年第6期 优化型蚁群算法在旅行商问题中的应用研究 于海平杨艳霞 武汉430083) (武汉科技大学城市学院信息工程学部摘要针对基本蚁群算法的搜索时间长和局部收敛等现象,提出一种用于求解旅行商问题(TSP)的优化型蚁群算 法,该算法有效地将最大最小蚁群算法(MMAS)和遗传算法(GA)相结合,一方面在很大程度上缩短了算法的寻优时间;另 一方面有效地避免了算法的早熟停滞现象。利用MATLAB对多种TSP问题进行仿真研究,实验结果证明了优化型蚁群 关键词最大最小蚁群算法;信息素;旅行商问题;遗传算法 TP301.6;TP18 算法在性能上优于MMAS和GA。 中图分类号Research on Applying Optimization—based Ant Colony Algorithm in the Traveling Salesman Problem Yu Haiping Yang Yanxia (Department of Information Engineering,Wuhan University of Science and Technology City College,Wuhan 430083) Abstract Aiming at the phenomena such as searching for a long time and the local convergence of ant colony algo— rithm,this paper presents a new optimization ant colony algorithm to solve traveling salesman problem.It effectively ant col— ony algorithm and genetic algorithm combined,on the one hand a large extent,the algorithm optimization to shorten the time;the other hand,the algorithm was effective in avoiding premature stagnation.Using matlab simulation of the TSP,the experiment proves the algorithm iS better than MMAS and GA. Key Words max-min ant system,pheromone,traveling salesman problems,genetic algorithm Class Number TP301.6:TP18 l 引言 蚁群算法(Ant Colony Optimization)又称蚂 路径信息,最终将找出最优路径。 蚁群算法是一个关于信息素的正反馈过程。 它具有较强的鲁棒性、并行性以及易于与其他启发 算法相结合等优越性,被广泛应用于解决各种具有 NP难度的问题[】],如旅行商问题(TSP)、图形着色 问题(GCP)和网格分割问题。 蚁算法,是一种用来在图中寻找优化路径的机率型 算法。它是意大利学者Marco Dorigo等人首先提 出来的。具体过程如下:根据仿生学家的长期研究 发现蚂蚁并没有视觉,但在运动过程中会留下一种 2O世纪90年代以来,研究人员对蚁群算法进 行了不断的研究和改进,蚁群算法虽然可以解决诸 特殊的分泌物一信息素,后面的蚂蚁可根据前边走 过的蚂蚁所留下的信息素选择其要走的路径。一 条路径上的信息素越多,蚂蚁选择这条路径的概率 就越大。因此,在整个寻找最短路径过程中,虽然 如TSP问题,但是普遍存在收敛速度慢、求解结果 容易陷入局部最优等缺陷。基于以上原因,本文提 出了一种新的优化型蚁群算法,并结合经典的TSP 单个蚂蚁的选择能力有限,但通过信息素的作用, 蚂蚁群具有非常高的自组织性,蚂蚁之间通过交换 问题,找出了最优TSP路径,相对于基本的蚁群算 法和遗传算法极大地缩短了算法的搜索时间。本 *收稿日期:2010年1月19日,修回日期:2010年2月23日 作者简介:于海平,女,硕士,讲师,研究方向:人_T智能、数据挖掘。杨艳霞,硕士,讲师。 2010年第6期 计算机与数字工程 文通过在MATLAB7.0的平台下验证了这一算法 的有效性。 2 TSP问题描述 旅行商问题是一个经典的组合优化问题E ,问 题要求得到一条遍历所有给定城市的最短闭合路 径。属于NP难问题。随着城市数目的不断增加, 导致求解空间成指数级增长,通过穷举法根本无法 求解,因此用优化算法解决TSP问题就十分必要。 下面是TSP问题的提出。 TSP问题可以简单描述如下:对于N个城市, 它们之间的距离已知,有一旅行商要从某一城市出 发走遍所有的城市,且每一个城市只能经过一次, 最后回到出发城市,问如何选择路线可使他所走过 的路程最短。该问题可以表示为:设有N个城市C 一{C ,C ,C。,… },给定C中任意两个城市问的 距离d(G,Cs)一 ,1 X,Y N,现在要找出一 个城市的排列,使得闭合路径长度为最小。 3 蚁群算法与最大最小蚁群算法 3.1基本蚁群算法 蚂蚁是一种群体生活的昆虫,在巢穴和食物之 间,大部分蚂蚁总是往返于巢穴和食物之问最近的 路径上,那么蚂蚁是如何得知哪一条路径最短的 呢?经生物学家们的研究得知,蚂蚁在行进中不断 释放称之为信息素的东西,利用这种信息素,蚂蚁 可以相互通信、协同工作:路径上经过的蚂蚁越多, 信息素数量就越大,则该路径就越容易被选中;不 过,时间越长,信息素数量就越小,则该路径就不容 易被选择。最终所有蚂蚁就选择了最短路径,下面 以求解平面上n个城市的TSP问题为例,来具体 说明基本蚁群算法的原理l_5 。 z只蚂蚁在初始时刻,各条路径上的信息量均 相等(设为常数c),蚂蚁在运动过程中根据各条路 径上的信息量决定转移方向,移动概率为: ,( )一{ ∑[矗( ) ・[ ( 若 ∈d/aued(k)  ̄kaud(k) ) 0, 否则 (1) 从以上公式中可以看出:蚂蚁在选择转移路径 的时候,一方面选择路径较短,并且信息素浓度较 高的路径,随着时间的推移,以前留下的信息素逐 渐消逝,其中p是轨迹的持久性(在0~1范围内), 参数(1一p)表示信息消逝的程度,经过 个时刻, 信息素要做如下调整: ( + )一(1--p)・△ +p‘ (£) (2) △ 一∑△ (3) 一1 △ 一 l L k ,若第k只蚂蚁在本次循环中经过巧 【0, 否则 (4) 其中 表示各条路径上的初始信息素浓度值。 最终蚂蚁将按照移动概率选择城市,最后形成 一条封闭路径。当所有的蚂蚁完成闭合路径选择 后,则一次迭代结束,利用全局信息素更新路径的 信息量,再进行下一次的迭代,直到收敛或达到最 大迭代次数为止。下面是针对以上算法给出了主 要的参数说明如下: 1)?IF/:蚂蚁的数目; 2) :城市总数; 3)d(i,J):城市i和城市J之问的距离; 4) (£):t时刻城市i与城市J间的路径( ,J) 上的信息素浓度。其中 (O)一C; 5) ( ):状态转移概率。其中:allowed(k) 一{0,1,2,3,…, ~1}一tabu(尼)表示蚂蚁下一步 允许选择的城市。Tabu(是)记录蚂蚁k当前所走 过的城市;77 ,(£)表示路径( ,J)距离d( ,J)的倒 数;a、 分别表示信息素和路径信息对转移概率的 影响程度。 3.2最大最小蚁群算法(MMAS) 利用最优解信息能够改进算法性能,但是蚁群 优化算法中的贪婪式搜索却容易造成搜索的早期 停滞现象。为了既能改进算法性能,又能尽量避免 搜索停滞,Thomas Stutzle提出了MMAS算 法 ,并通过实验验证了它的性能。MMAS算 法是在基本蚁群算法基础上进行了许多改进之后 的算法,相对于基本的蚁群算法主要在下面三方面 不同: 1)在算法运行期间为了找到最优解,更多地 利用最优解信息,即每次迭代后仅允许一只最优的 蚂蚁增加信息素,该最优蚂蚁可以是当前代最优 的,也可以是全局最优的。 2)为了尽量避免搜索停滞现象,该算法对信 息素进行了,信息素 ∈[ ,Trim ]。 3)此外,该算法将信息素初始化为 ,有利 于算法在最初阶段搜索到更多的解。 在搜索最短路径的过程中,基本蚁群算法有以 24 于海平等:优化型蚁群算法在旅行商问题中的应用研究 第38卷 下不足之处: 变异时就是把它变成0,反之亦然。 1)搜索时间较长,蚁群中每个个体的运动是 随机的,虽然通过信息素的交换能向着最优路径进 TSP问题是典型的、易于描述却难以处理的组 合优化问题,遗传算法解决这类问题是比较有效 的。但是,在实际应用中遗传算法受编码、迭代次 数、种群规模的,造成种群多样性和选择性压 化,但当群体规模较大的时候,很难再杂乱无章的 路径中找出一条最优路径。 2)蚁群算法容易出现早熟停滞现象。这样就 造成了不利于发现更优的解空间。 针对以上两点的不足之处,提出了一种优化型 力的冲突,即强选择性压力导致遗传搜索过早收 敛,强种群多样性导致遗传搜索效率低下,因此需 要研究更好的方法来解决TSP问题。 混合蚁群算法(Optimized Hybrid Ant Colony, OHAC)。 3.3遗传算法 遗传算法(Genetic Algorithm,GA)[6-7,10]的基 本思想是基于Darwin进化论和Mendel的遗传学 说的。它是计算数学中用于解决最优化的搜索算 法,是进化算法的一种。其主要特点是群体搜索策 略和群体中个体之问的信息交换,搜索不以梯度信 息为基础。它尤其适用于处理传统搜索方法难于 解决的复杂和非线性问题,可广泛应用于组合优 化、机器学习、自适应控制、规划设计和人工生命等 领域。 遗传算法GA把问题的解表示成“染色体”,在 算法中也即是以二进制编码的串。并且,在执行遗 传算法之前,给出一群“染色体”,也即是假设解。 然后,把这些假设解置于问题的“环境”中,并按适 者生存的原则,从中选择出较适应环境的“染色体” 进行复制,再通过交叉,变异过程产生更适应环境 的新一代“染色体”群。这样,一代一代地进化,最 后就会收敛到最适应环境的一个“染色体”上,它就 是问题的最优解。 遗传算法的三个重要步骤是: 1)选择(Selection) 这是从群体中选择出较适应环境的个体。这 些选中的个体用于繁殖下一代。故有时也称这一 操作为再生(Reproduction)。由于在选择用于繁 殖下一代的个体时,是根据个体对环境的适应度而 决定其繁殖量的,故而有时也称为非均匀再生(dif— ferential reproduction)。 2)交叉(Crossover) 这是在选中用于繁殖下一代的个体中,对两个 不同的个体的相同位置的基因进行交换,从而产生 新的个体。 3)变异(Mutation) 这是在选中的个体中,对个体中的某些基因执 行异向转化。在串bi中,如果某位基因为l,产生 4优化型混合蚁群算法 4.1 0HAC算法思想 ()HAC算法思想就是在蚁群算法的基础上结 合最大最小信息素算法(MMAS)和遗传算法,来弥 补以上基本蚁群算法的缺陷。最大最小信息素算 法在每次迭代路径上增加的最大信息素为1/L ( ),其中L(s )为对应全局最好解的路径长度, 更新最好解时,同时更新 。 ,Z'ma ,其中Z'ma 与轨迹 的持久性 以及L(s )成反比,而与精英蚂蚁的 数目成正比,这样就可以解决基本蚁群算法带来的 早熟停滞现象。另一方面,针对遗传算法中的三个 过程:选择、交叉、变异来进行局部调整,之前遗传 算法中的交叉式按照一定概率选中种群中的多个 染色体,对个体基因型进行两两交叉,如果需要交 叉的染色体是奇数,则舍去,也就是说在交叉的过 程中交叉片段相同,与蚁群算法结合后,选取的交 叉片段选取一个随机数。这样有利于提高染色体 的应变能力,在解决TSP问题上可以缩短问题搜 索的时间,从而提高搜索效率。 4.2 OHAC算法的基本步骤 OHAC算法的步骤如下: 1)状态初始化,初始化参数种群:100;最大迭 代数:5000;交叉概率:0.5;变异概率:0.1,a一3, 一1,z'0—0.0001,p一0.6;Q=3oo; 2)将蚂蚁随机放置各个城市节点上,并将第志 只蚂蚁的出发城市加入tabu(走)表; 3)启用状态转移规则,使用上面式(2)更新信 息素。直到所有蚂蚁均完成解路径的构造; 4)记录当前迭代产生的最优解;并形成新的 蚂蚁群体; 5)给出随机函数,执行遗传算法的交叉操作, 同时实施最有保留策略; 6)应用全局信息素更新规则; 7)判断是否满足算法终止条件,如果满足则 停止,否则转2)。 2010年第6期 计算机与数字工程 25 5 仿真结果 选择的原则是蚂蚁总数是城市总数的2/3,city=== 33,ant===22;city一75,ant一50;city一100,ant一 本次实验的运行环境如下:AMD Anthon 70。仿真实验结果如图1~图3所示。 3.0Hz,4G内存,Windows XP Professional系统; 表1仿真TSP实验数据 用Matlab7.0版本仿真实现。仿真实例中的参数 配置如下:信息挥发率选取0.4,交叉概率:0.5;变 异概率:0.1,信息指数和启发式指数分别选取3, 1,初始化信息素浓度取值为0.5,迭代次数选取 200。根据城市数目不同,选取的蚂蚁个数也不同, 1O0 80 60 40 20 0 图1 OHAC算法发现的 图2 OHAC算法发现的 图3 OHAC算法发现的 33个城市路径 75个城市路径 i00个城市的路径 6 结语 recent trends[J] Physics of Life Reviews,2005,2(4) 343~373 本文结合经典的TSP问题设计了优化型蚁群 E5]STBTZI E T,HOOS H,H.MAX2M IN ant system 算法,通过仿真实验证明,此算法对于旅行商问题 [J].Future Generation Computer Systems,2000,16 具有比较高的性能。同时也有效的弥补了基本蚁 (8):889~914 群算法中带来的搜索时间长、容易陷入局部最优等 [6]黄立君,许永花.遗传算法和蚁群算法融合求解TSP 不足。但是改进的蚁群群算法还有待于更细致的 [J].东北农业大学学报,2008,39(4):1。9~113 [7]Christopher Mark Coleman.Investigation of Simulated 研究,比如说,在实验中的一些参数的设置上,参数 Annealing,Ant-Colony Optimization,and Genetic A1一 取值不同,对收敛的速率上影响很大。因此在以后 gorithms for Self_Structuring Antennas[J]. IEEE 的工作中还有待于做详细的研究。 Transactions on antennas and Propagation,2004,52 参考文献 (4):1007 ̄1013 E1]段海滨.蚁群算法原理及其应用[M].北京:科学出版 r-8]R.Tehrani,F.Khodayar.Optimization of the Artifi 社,2005:20 ̄45 cial Neural Networks using Ant Colony Algorithm to [23 Computation and Simulation Analysis of a Kind of Mul— Predict the Variation of Stock Price Index[J].Journals tiple Traveling Salesman problemEJ].Journal of Sys— of Applied Sciences,2010,10(3):221~225 tern Simulation。2009(20):45~5O [9]-r.Stiitzle,H.H.Hoos.Ma ̄Min Ant System[J].Fu— E3]李将军,叶仲泉,宫子风.改进蚁群算法及其仿真研究 ture Generation Computer Systems,2000,16(8):889 ̄914 [J].计算机应用,2008(28):94 ̄96 [1O]周明,孙树栋.遗传算法原理及应用EM].北京:国防工 r4]BI UM C.Ant colony optimization:Introduction and 业出版社,2000:45 ̄50 钸{ ; ’;.  .铞 秘 尔 带 乖 乖 绵 蟛 矫 铈 (上接第l8页) [4]张晓丽,韩芳溪,王睿.基于Voronoi图的无线传感器网 参考文献 络的节点调度机制[J].计算机应用,2006(6):199 ̄200 [1]周培德.计算几何一算法设计与分析[M].第2版.北 [5]Li XY,Wan PJ,Frieder O.Coverage in wireless ad 京:清华大学出版社,2006 hoc sensor networks[J].IEEE Trans.on Computers, r2]AKYII D IZ IF,SU WI ,SANKARASUBRAMAN 2003,52(6):753~763 IAM Y,et a1.A survey on sensor networks[J].IEEE [6]张文哲,李明禄,伍民友.一种基于局部Voronoi图的目 CommunicationsMagazine,2002,40(8):102~114 标穿越算法[J].软件学报,2007,18(5):1246 ̄1253 [3]孙利民,李建中,等.无线传感器网络[M].北京:清华大 E7]李克清.基于Delaunary三角剖分的目标穿越算法[j]. 学出版社,2005 常熟理工学院学报,2009(2):98~100 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baomayou.com 版权所有 赣ICP备2024042794号-6

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务