当前位置:文档之家› QCSA-ACO路由算法设计

QCSA-ACO路由算法设计

计算机工程与设计ComputerEngineering andDesign 2010,31(7) 1413 ・网络与通信技术・ QCSA—ACO路由算法设计 

齐观I临, 吕 英, 沈崧 (中国航天科工集团第二研究院706所) 摘 要:对移动自组织网路由协议进行研究,分析了基于蚁群算法的移动自组织网路由协议,提出了基于蚁群算法的快速 收敛拥塞避免的路由算法——QCSA—ACO(quick convergence stagnation avoidance—ant colony optimization)。通过使用设置信息素 门限、信息素奖惩措施和噪声选路措施,加快了路由收敛速度,避免了蚁群算法使用中由于信息素过度集中造成的搜索停 滞现象。仿真实验结果表明,该算法能够提高移动自组织网的性能。 关键词:移动自组织网;蚁群算法;快速收敛拥塞避免;信息素奖惩;噪声选路 中图法分类号:TP18;TP393.02 文献标识码:A 文章编号:1000—7024(2010)07—1413—04 

Design of QCSA—ACO routing algorithm QI Guan—lin,LU Ying, SHEN Song (Institute 706,Second Academy of China Aerospace Science and Industry Corporation,Beijing 1 00854,China) 

Abstract:The route protocol ofMANET(mobile Adhoc networks)is researched,a new route algorithm based ACO(ant colony op— timization)called QCSA—ACO(quick convergence stagnation avoidance—ant colony optimization)is proposed.Through utilizing phe・ romone limits,pheromone bonus and punishment,noise route selecting mechanism,QCSA—ACO fastens route convergence rate and avoids the search stagnation.Simulation experimental results show that this algorithm can improve the performance of MANET. Key words:MANET;ACO;QSCA—ACO;pheromone bonus&punishment;noise encourage route—selection 

0引 言 1基于蚁群算法的移动自组织网路由协议的概述 移动自组织网…是指由一‘组带有无线通信收发装置的移 动节点组成的一个多跳、自组织、无中心网络,整个网络没有 固定的网络基础设施。由于移动白组织网中每个节点都可以 自由移动、网络的拓扑结构将会不断变化、每一个网络节点的 能源有限、传输的无线带宽有限且误码率高,传统的网络路由 协议不能适用于移动自组织网的需求,必须采用合适的路由 算法以解决移动自组织网中的路由问题,降低路由产生过程 中的洪泛搜索。人工智能算法是当前算法研究领域的一个热 点,这种算法在实践中解决旅行商、网络问题、分配等复杂问题 方面展现了很大的优势。蚁群算法是人工智能算法的一种,使 用蚁群算法建立路由时,算法使用本地信息,不需要在节点之 间传递信息;结合链路质量等不同因素建立均衡路由;建立从 源节点到目的节点之间的多路径路由,蚁群算法特别适用于解 决移动自组织网的路由问题。但是,由于蚁群算法要经过很多 次的探测才能搜索到合适的路由,路由收敛的过程中延迟比较 大;随着一条路径的不断被使用,该路径上面的信息素浓度会 不断地提高,就会造成路由算法对网络拓扑结构的变化不敏 感,造成搜索停滞,论文结合蚁群算法来对移动自组织网路由 协议进行改进研究,通过使用设置信息素门限、信息素奖惩措 施和噪声选路措施,加快路由收敛速度和避免搜索停滞。 意大利学者Dofigo通过观察蚁群觅食的过程,抽象出来 蚁群算法“ 。蚂蚁在走过的路上会留下一种叫做信息素的物 质,这种物质能够随着时间的推移挥发,蚂蚁能够根据留在路 径上的不同的信息素浓度的高低来选择路径,信息素浓度高, 就选择这条路径;反之,信息素浓度低,则不选择这条路径。 路径短,蚂蚁走过留下的信息素浓度就高,后来的蚂蚁选择这 条路径的概率就大,通过这种正反馈,蚂蚁就可以发现最短路 径。Dofigo通过使人工蚂蚁具备记忆能力、间接通信能力、正 反馈、负反馈能力,以便用来模拟自然界蚂蚁的行为,通过这 种机制建立起一种增强型学习系统,通过信息素的不断更新 达到最终求解的目的。蚁群算法能够根据应用的不同环境自 组织、自动学习,是一种性能优良的随机优化算法。 由于蚁群算法具有本质并行性、协同工作性、动态自学 习 ,因此它被广泛应用于解决旅行商问题(TSP)、分配问题、 和网络问题等。蚁群算法用来解决路由问题最大的特点就是 不需要进行直接的信息传递,通过信息素间接的就可以建立 

一条路由。将蚁群算法应用到移动自组织网路由协议中,可 以使移动自组织网路由协议具有适应动态拓扑变化、路由信 息计算本地化、路由考虑链路参数、多路经路由的特点,因此 产生了很多基于蚁群算法的移动自组织网路由协议。 

收稿日期:2009—05 18;修订日期:2010一叭.05。 作者简介:齐观临(1984一),男,山东临清人,硕士研究生,研究方向为移动自组织网: 吕英,男,研究员,研究方向为并行计算: 沈崧, 男,研究员,研究方向为移动计算。E—mail:hovicqi@163.tom 1414 2010,31(7) 计算机工程与设计Computer Engineering and Design ARAb 算法是由Mesut Gunes,Udo Sorges,Imed Bouazizi提 出的一个基于蚁群算法的移动自组织网路由协议,ARA算法 通过使用前向蚂蚁和后向蚂蚁两种不同的蚂蚁分组来建立路 由,前向蚂蚁负责探测路径、采集信息,后向蚂蚁对信息素浓 度进行更新,通过这种方式实现信息素浓度随着不同路径的 特征不均衡分布,以便使蚂蚁分组能够根据这些找到路径。 ARA算法使用简化版的蚁群优化算法,且信息素浓度的更新 使用简单的累加机制,这就会产生由于信息素浓度过度集中 造成的搜索停滞现象,这样就会造成路由算法对移动自组织 网拓扑变化反应不敏感,降低移动自组织网的性能。 

2 QCSA-ACO设计思想 QCSA.ACO算法的基本出发点有两个:第一是针对蚁群 算法收敛时间比较长,从算法开始运行,到产生路径需要经 历比较长的时间;第二是信息素过度集中之后产生搜索停 滞,就是此时的算法对移动自组织网节点拓扑结构的变化不 敏感,网络的情况已经发生变化,而算法却不能及时地反映 这种变化。这两个基本的着眼点,可以通过操纵信息素浓度 表来完成。从这两个着眼点出发,对ARA算法的信息素更 新公式和转移概率公式进行改进。对信息素更新公式,引入 奖惩措施,来加快算法收敛的速度;对转移概率公式,引入噪 声选路机制,增加随机选路能力,避免信息素过度集中引起 的搜索停滞现象。 QCSA.ACO有路由发现和路由维护两个主要的过程,路 由发现通过使用蚂蚁分组按需的完成。当源节点需要建立 

一条到达目的节点的路由时,首先发送前向蚂蚁(FANT)分 组,FANT分组收集所经过路径中各节点的负载信息,比如经 过的节点、时延、队列占用率等信息,直到目的节点接受到 FANT分组,这时目的节点将FANT销毁,产生后向蚂蚁 (BANT)分组,BANT沿着搜集到的路径信息返回到源节点, 同时更新经过节点上的信息素浓度。在建立路由之后,需要 使用路由维护分组(RMPKT)分组对路由进行维护,这种分组 周期性的加在数据分组的后面,随数据分组一起发送,中间 节点接受到之后,根据RMPKT分组中的信息,对该节点的信 息素进行更新。 体系结构对网络协议的设计十分重要,并且在很大程度 上影响网络的规划和整体的性能。传统严格分层的网络体 系结构,使得移动自组织网路由协议的设计缺乏适应性,为 了使QCSA.ACO更具适应性,采用跨层的体系结构,QCSA— ACO跨越网络层和链路层,使网络层的协议能够使用链路层 的延迟和队列信息,使协议能够全局的方式适应网络的需 求。以TCP/IP协议的分层来说,QCSA—ACO协议寄居在网 络层,为网络层的IP协议提供路由支持。IP dispatch模块主 要负责一些初始化,创建相关的子进程,处理来自子进程的 数据包和将数据包发送到上层,manet 主要对移动自组mgr 织网路由协议进行调用,QCSA—AC0负责路由的搜索和维护 工作。如图l所示。 3 QcsA-Aco协议规则 (1)各节点信息素浓度的初值和终值 图1 QCSA—ACO分层结构 在原来的蚁群算法之中,信息素浓度的终值可以随着 经过的蚂蚁数目的增加不断的增大,这种情况是造成蚁群 算法在找到最优路径之后对拓扑结构变化不敏感——也就 是所谓的搜索停滞的原因之一。所以在论文中,设定信息 素浓度的上限为一固定值,以此来作为对搜索停滞现象的 一个预防机制。 lim (dest,t)=OdENextHop(i,dest) (1) 随着时间的推移,节点上面信息素的浓度不断降低,不断 的趋于0,在原来基于蚁群算法的移动自组织网路由协议中, 如ARA,信息素的值是不会趋于0的,因此不会删除信息素表 项中下一跳的内容,这从一定程度上面也影响了路由算法对 移动自组织网络拓扑结构的快速反应,QCSA.ACO路由协议 对节点信息素浓度设定一下限值,低于此下限,就清0此信息 素表项,以适应拓扑结构的快速变化。 (2)信息素浓度奖惩措施 在蚁群算法中,蚂蚁分组每一次经过一个节点,就对该 节点所在的链路的信息素浓度进行更新。假定每一个蚂蚁分 组对链路 产生的信息素增量为△ (dest, ,在不引起混淆的 情况下,进行如下简化, (dest,力简化为 将△ (dest,f)简化 为△ 在QCSA—ACO算法中,信息素更新的公式改进为 △ 0=(1一p) t 妒 +∑△ pe(O,1】 (2) I 式中: 厂信息素浓度更新之后的值,P——用来表征信息 素挥发强度的一个系数,t——经历的时间, ——前一次的 信息素浓度值,△ 卜第k个蚂蚁分组带来的信息素浓度增 量。在ARA算法中,△ ——一个固定值,不能反映网络的 特征。在QCSA.ACO算法中,通过引入一个 )函数将这个参 数进一步细化,使其能够反映网络的特点,改进如下 △ =.厂( v,d,h) (3) 

相关主题