基于非均匀变异算子的改进蚁群优化算法
- 格式:pdf
- 大小:310.88 KB
- 文档页数:4
第39卷 V01.39 第10期 NO.10 计算机工程 Computer Engineering 2013年10月
October 2013
・人工智能及识别技术・ 文章编号.100o—_3428(2013)10—_0196_-o4 文献标识码:A 中圈分类号z TP301.6 基于非均匀变异算子的改进蚁群优化算法 龚跃,吴航,赵飞 (长春理工大学计算机科学技术学院,长春1 30022)
摘要:为解决对称旅行商问题,在改进蚁群优化算法的基础上,提出一种引入非均匀变异算子的改进算法。在路径寻优时采用 改进的蚁群优化算法,且在完成一次循环迭代后,运用非均匀变异算子对已完成该次任务的蚁群进行变异处理,从而加快算法收 敛速度,经过Jv次进化直至达到满意结果。仿真结果表明,在寻最优解的能力和算法稳定性方面,该算法比基本蚁群算法和蚁群 优化算法更强。 关健词:旅行商问题;蚁群优化算法;变异算子;遗传算法;非均匀变异
Improved Ant Colony Optimization Algorithm Based 0n N0n.unif0rm Mutation Operator GONG Ylue.WU Hang,ZHAO Fei (School of Computer Science and Technology,Changchun University of Science and Technology,Changchun 1 30022,China) [Abstract]This essay puts forward an improved ant colony algorithm based on the introduction ofthe variability ofnon—uniform mutation operator.It makes the path optimization,which uses optimized ant colony algorithm to complete the task of ant colony after the completion of one iteration and non—uniform mutation operator mutation.It can speed up the convergence of the algorithm.The satisfactory results are reached after N evolutions.Simulation results demonstrate that the optimal solution and stability of the improved algorithm are better than the basic ant algorithm and Ant Colony Optimization(ACO)algorithm. [Key words l Travelling Salesman Problem(TSP);Ant Colony Optimization(ACO)algorithm;mutation operator;Genetic Algorithm(GA); non.uniform mutation D0I:10.39694.issn.1000—3428.2013.10.04t
1概述 旅行商问题(Travelling Salesman Problem,TSP)是著名 的NP问题,在各个领域都有着广泛运用。把此问题描述为: 存在,2个城市 {vl,V2,…,1;i}且i∈{1,2,…,n),已知其任意 两两城市之间的距离为 ,求从某座城市Vx出发,遍历所 有已知的 v 城市,且任意一座城市有且只能经过一 次,最后再回到出发城市 ,使得总路程三最小。 从描述中可知,若求解TSP问题的规模与城市数目m 是以指数增长的。所以,城市数量越多,就很难精确地求 出其最优解(求出其最优解所花费的时间将很长)。如当 m=76时,城市之间存在的可能的路径76 7/2=9.427e+1 10。 这是一个巨大的数字,而在实际应用中,并非需要最优解, 在权衡了代价问题,应用中可以接受一个有效的无限接近 最优解的优解,此时,需要寻找一种近似求解算法。 针对TSP问题,提出解决算法主要有模拟退火算法、 遗传算法(Genetic Algorithm,GA)、蚁群优化(Ant Colony Optimization,ACO)算法:如随机扰动蚁群算法…;改进蚁 群算法运用于系统设计I2】、中间件设计【3 及任务调度【4 ;蚁 群算法收敛速度的分析 等。此外,也有很多研究者提出融 合GA算法和蚁群优化算法的思路,如文献【6】提出带杂交 算子的蚁群优化算法,文献[7]提出运用变异算子具有变异 特征的蚁群优化算法,文献[8]提出同时具有杂交算子、变 异算子的融合遗传算法,即改进的蚁群优化算法。 将遗传算法与蚁群优化算法融合的目的就是利用蚁群 优化算法的信息素克服遗传算法不能利用系统中的反馈信 息造成无为冗余迭代的缺点,同时,也是借用遗传算法的 快速全局搜索能力解决蚁群优化算法速度慢的缺陷。在前 文提出的融合算法中,无论是杂交算子还是变异算子,都 没有随着系统迭代的不同时期对杂交算子的杂交点或者变 异算子的变异做出相应的变化。为此,本文提出一种基于 非均匀变异算子二次搜索的改进蚁群优化算法。在不同的
基金项目:国家“863’’计划基金资助项N(2006AA701306);国家科技型中小企业技术创新基金资助项目(05C26212200378) 作者简介:龚 ̄(1960一),男,教授,主研方向:网络通信;吴航、赵飞,硕士研究生 收藕日期:2012.08.13 修回日期:2012—1 1-12 E-mail:gongyue888878@sina・tom 第39卷第l0期 龚跃,吴航,赵飞:基于非均匀变异算子的改进蚁群优化算法 197 演化时期,蚂蚁种群将会有不同的突变率,发生突变的蚂 蚁变异点只限制在全程路径的前段部分,后段部分由变异 后产生的新个体,其路径长度基本不优于其父代。 2 蚁群优化算法基本原理 人工蚁群优化算法由文献[9-10]提出,文献[11]对其进 行了优化,该算法的设计是受到人们对自然界中真实的蚁 群集体找穴和觅食行为的启发。具体蚂蚁找穴和觅食的行 为表现为:蚂蚁在找穴或觅食过程中会受到自身在行进途 中在所经过路径上所释放激素的影响。当蚂蚁在行进选择 路径时会被激素较浓的路径所吸引,往激素浓的方向行进。 如此一来,就会有越来越多的蚂蚁选择激素浓度强的路径, 而这条路径上激素的强度自然就会越来越大。这样久而久 之蚂蚁的群体就会表现出一种信息正反馈的现象。随着时 间的迁移,较短路径上的激素将会越来越浓。 3基本蚁群优化算法的AS模型 为解决TSP问题,最先运用的是基本蚁群优化算法的 AS(Ant System)模型。在模型中有如下定义:蚂蚁的数量为 m,城市的数量为 ,城市之间的距离为do.(id=l,2,…, ),城 市i、城市,之间路径上所残留的信息素量为z(ij),城市v 到城市v/的启发函数为tl(ij)(蚂蚁从城市v 转移到城市vj 的期望度),n为信息启发因子, 为期望启发因子,这2个 参数是调整信息与期望度的权重, 为第k只蚂蚁还未经 过的城市。则蚂蚁k从城市v 到城市 的转移概率函数为: = [ (f, )] ×[ (f, )] [ (f, )] ×[77(f,明 SECk 0 J∈ (1) other 在蚂蚁每走完一步或者完成一次所有城市的遍历后, 要对残留信息素进行更新,这样可以避免残留信息素量过 多而掩没了启发信息。更新公式如下: m (f, )÷一(1-p)x z'(i, )+∑△ (f, ) k=l (2) 其中,P是信息素挥发因子;而△ ( ,/)是第k只蚂蚁经 过路径 的信息素增量;∑△ (f,J)是所有蚂蚁在路径/j k=l 上的总信息素增量。 在AS模型中,根据信息素更新策略的不同,提出 3种不同的模型:Ant—Cycle模型,Ant-Quantity模型及 Ant.Density模型【J 。这3种模型的不同之处就是对 △ (f,J)的定义方式的不同。具体如下: (1)在Ant—Cycle模型中: r n △ (f√):』 √ 是第七只蚂蚁本次循环路径 f 0否则 (2)在Ant-Quantity模型中: “): 腿 只蚂蚁经过路径 l0否则 (3)在Ant-Density模型中: △ ( √)={ 是第 只蚂蚁经过路径
在解决对称TSP问题时,Ant-Cycle模型的性能较好。 4蚁群优化算法的ACS改进模型 在AS的基础上,针对AS收敛速度慢,易早熟的缺陷, 后期又提出改进的模型ACS(Ant Colony System) 。在ACS 中基于AS做了一些简单的修改: (1)蚂蚁的转移规则:
P :arg Z max{[ ( , )] ×[77( )] )g≤ 。
I 。the (3) 引入参数q0(0≤qo≤1),这里qo称之为蚂蚁犯错因
子;而q为一在区 0,1]的随机数。当q≤q 时,蚂蚁将
沿着I彳(f, )l“×I 77(f, )I 最大的路径方向前进;而当 g> 时,蚂蚁就会概率性的犯错,不一定朝最大的方向前 进,这样就丰富了蚁群的解空间。 (2)局部更新规则: 在蚂蚁完成一次城市转移后,会对本次转移城市之问 路径上的信息素执行如下更新: (f, )+---(1一P)xr(i,J)+pxAr(i,J) (4) (3)全局更新的修改: 在ACS模型中,并非所有蚂蚁在完成一次循环后都进 行全局更新。在ACS中只会对在本次循环中路径最优蚂蚁 的路径进行更新,具体更新规则如下: (f, )一(1一 )× (f,j)+a ̄Ar(i, )
/)=譬 (5)
其中,a是控制全局路径上残留信息素的量因素;L为本次 循环最优路径的长度。 蚁群优化算法的缺陷为:早熟,收敛速度慢。早熟是 由于蚂蚁选择转移的城市时,总是趋向于信息素最强的路 径,这就造成整个蚁群的解空间不够丰富,蚂蚁创造力低 下,从而导致蚁群陷入局部最优解的陷阱。改进的蚁群优 化算法在一定程度上缓解了蚂蚁创造力低下、解空问的不 够丰富,有效地避免了早熟现象,提高了收敛速度。但是 如果在蚁群完成一次迭代后,融入GA算法,利用GA算 法中的变异算子,对蚁群中的部分个体实施变异,然后再 让变异的个体进行二次的城市遍历,从而产生新个体,将