论文部分内容阅读
摘 要:路由协议一直以来都是Ad Hoc网络的研究热点。文章在结合蚁群算法基本原理的基础上,对蚁群算法进行了优化,并进行了算法仿真实现,并且对优化算法与DSR以及AODV算法进行了对比,仿真结果表明,蚁群优化算法下的Ad Hoc网络路由算法要比其他算法具有更好的性能。
关键词:蚁群优化;Ad Hoc网络;路由协议
一、优化的蚁群算法
优化以后的算法从状态转移规则出发,提出了Lij(t)以及Eij(t),函数Lij(t)代表节点i、j之间在t时刻具备了的数据发送能力,它充分的考虑了节点之间通信情况。函数Eij(t)则代表t时刻节点j具备的能量,其公式如下所示:
(1)
在网络当中主机需要发送数据的时候,公式当中的msgij(t)就是数据分组程度,Length作为节点缓存队列总长度,0是等待发送数据分组长度总和。蚂蚁按照下述公式计算下个节点的选择概率:
(2)
(3)
利用计算出来的节点概率,能够选择下个节点。该算法的不足在于:节点之间的通信情况对于路径选择会产生影响。在网络通信任务相对较少的时候,路径选择会存在空闲节点,端到端延时情况会有所增加,导致不必要浪费。
在这种情况下,很多逐级会选择这条路径,导致了电池电量很快就耗完。所以笔者在充分考虑这一情况的基础上,对公式进行了必要的改善。
假设节点j开始时候的能量是Ej_begin,现在时刻t,节点j剩余的能量是Ej_t。
(4)
为了能够让蚂蚁选择下个节点的时候,考虑其中能量较大的节点。把该函数用于更新路径信息素。
(5)
上述公式把剩余节点能量和信息素更新放在一块使用,在蚂蚁选择下个节点的时候,充分的考虑了能量这一因素。
二、算法路由实现
蚂蚁类型的确定:前向蚂蚁F_ANT以及后向蚂蚁B_ANT。前向蚂蚁F_ANT搜索到目的节点路径,收集路径上的各种信息到决策表,在F_ANT到达目的节点以后马上会变成后向蚂蚁,并且沿着原来的路径返回,在返回的路径上及时的更新路径节点信息。在源节点存在通信请求的时候,前向蚂蚁F_ANT按照初始化可能性路由表选择下个节点。在F_ANT在节点i以后,查询这个节点非源节点,并将路径信息存储到F_ANT信息当中。F_ANT经过公式(2)和(3)选择下个节点继续前行。在F_ANT到达目的节点以后马上转换角色,转变成B_ANT并且带着消失了的F_ANT信息,此后,它依据之前角色走过的路径返回出发点。因此,在一段时间里面,目的节点会受到多个或者一个B_ANT信息,它会按照收到信息构建多条从源节点一直到目的节点路径,充分考虑节点剩余能量实现信息素动态更新。
三、仿真与性能分析
在仿真的过程中,将节点停留时间作为参数,把该改进算法和DSR、AODV算法做出了对比。
(一)不同停留时间
第一,数据包发送成功率。从上图能够发现三种算法伴随着停留时间的降低,节点数据包发送的成功率也随之降低。可是改进算法在数据包发送成功率方面要比DSR以及AODV算法要好。主要是因为很多算法选择的都是最短的路径,相关节点也会选择这条路径,这样就会导致网络拥塞,节点能量消耗也会随之提升。这种改进算法按照拓扑变化,快速调整信息素以及充分考虑节点能量来满足网络拓扑变化,使得负载更加的均衡,避免网络堵塞。因此优化以后的算法相较于DSR以及AODV算法而言,数据包发送成功率更高。
第二,端到端延时。改进算法使用了全新策略,将队列缓存长度考虑进去,同时也考虑了剩余节点的能量,综合上面多种因素,选择性能相对较好的节点来作为下个节点,负载更加的合理和均匀,解决了网络堵塞的问题,从而有效的降低了网络延迟。其他的两种算法都选择了相对较短的路径,其他节点也会选择这条路径,由此就会产生网络堵塞的问题,延迟也会提升。改进算法端到端延迟回避DSR以及AODV算法小。
(二)不同速度
(1)数据包发送成功率。从图中能够发现,节点移动速度保持在0-20m/s,伴随着运动速度的持续变大,网络拓扑结构也产生了较大的变化,三种不同算法数据包的发送成功率都有所降低。优化算法实时监测网络拓扑的变化状况,充分的考虑节点剩余能量以及节点空置率,并且按照当前实际情况作出相应调整,保证网络负载均衡,为发送数据探寻更好的路径传输。
(2)端到端延时。伴随着节点移动速度的增大,端到端延时也呈现出增大的态势。优化算法在端到端延时上依然比另外两种算法有着更好性能。由于优化算法更多的考虑了节点控制率以及剩余能量。在节点选择的过程中,会选择那些性能相对优秀的节点,从而快速的适应网络拓扑变化,保证网络负载均衡,从而明显降低端到端延時。
四、结语
综上所述,蚁群优化算法路由协议在无限移动自组织网络环境当中是可行、有效的,其网络性能相较于传统AODV协议网络性能有了明显的提升,可以作为全新的Ad Hoc网络路由协议方案。
作者简介:杨君芳,天津职业技术师范大学。
关键词:蚁群优化;Ad Hoc网络;路由协议
一、优化的蚁群算法
优化以后的算法从状态转移规则出发,提出了Lij(t)以及Eij(t),函数Lij(t)代表节点i、j之间在t时刻具备了的数据发送能力,它充分的考虑了节点之间通信情况。函数Eij(t)则代表t时刻节点j具备的能量,其公式如下所示:
(1)
在网络当中主机需要发送数据的时候,公式当中的msgij(t)就是数据分组程度,Length作为节点缓存队列总长度,0是等待发送数据分组长度总和。蚂蚁按照下述公式计算下个节点的选择概率:
(2)
(3)
利用计算出来的节点概率,能够选择下个节点。该算法的不足在于:节点之间的通信情况对于路径选择会产生影响。在网络通信任务相对较少的时候,路径选择会存在空闲节点,端到端延时情况会有所增加,导致不必要浪费。
在这种情况下,很多逐级会选择这条路径,导致了电池电量很快就耗完。所以笔者在充分考虑这一情况的基础上,对公式进行了必要的改善。
假设节点j开始时候的能量是Ej_begin,现在时刻t,节点j剩余的能量是Ej_t。
(4)
为了能够让蚂蚁选择下个节点的时候,考虑其中能量较大的节点。把该函数用于更新路径信息素。
(5)
上述公式把剩余节点能量和信息素更新放在一块使用,在蚂蚁选择下个节点的时候,充分的考虑了能量这一因素。
二、算法路由实现
蚂蚁类型的确定:前向蚂蚁F_ANT以及后向蚂蚁B_ANT。前向蚂蚁F_ANT搜索到目的节点路径,收集路径上的各种信息到决策表,在F_ANT到达目的节点以后马上会变成后向蚂蚁,并且沿着原来的路径返回,在返回的路径上及时的更新路径节点信息。在源节点存在通信请求的时候,前向蚂蚁F_ANT按照初始化可能性路由表选择下个节点。在F_ANT在节点i以后,查询这个节点非源节点,并将路径信息存储到F_ANT信息当中。F_ANT经过公式(2)和(3)选择下个节点继续前行。在F_ANT到达目的节点以后马上转换角色,转变成B_ANT并且带着消失了的F_ANT信息,此后,它依据之前角色走过的路径返回出发点。因此,在一段时间里面,目的节点会受到多个或者一个B_ANT信息,它会按照收到信息构建多条从源节点一直到目的节点路径,充分考虑节点剩余能量实现信息素动态更新。
三、仿真与性能分析
在仿真的过程中,将节点停留时间作为参数,把该改进算法和DSR、AODV算法做出了对比。
(一)不同停留时间
第一,数据包发送成功率。从上图能够发现三种算法伴随着停留时间的降低,节点数据包发送的成功率也随之降低。可是改进算法在数据包发送成功率方面要比DSR以及AODV算法要好。主要是因为很多算法选择的都是最短的路径,相关节点也会选择这条路径,这样就会导致网络拥塞,节点能量消耗也会随之提升。这种改进算法按照拓扑变化,快速调整信息素以及充分考虑节点能量来满足网络拓扑变化,使得负载更加的均衡,避免网络堵塞。因此优化以后的算法相较于DSR以及AODV算法而言,数据包发送成功率更高。
第二,端到端延时。改进算法使用了全新策略,将队列缓存长度考虑进去,同时也考虑了剩余节点的能量,综合上面多种因素,选择性能相对较好的节点来作为下个节点,负载更加的合理和均匀,解决了网络堵塞的问题,从而有效的降低了网络延迟。其他的两种算法都选择了相对较短的路径,其他节点也会选择这条路径,由此就会产生网络堵塞的问题,延迟也会提升。改进算法端到端延迟回避DSR以及AODV算法小。
(二)不同速度
(1)数据包发送成功率。从图中能够发现,节点移动速度保持在0-20m/s,伴随着运动速度的持续变大,网络拓扑结构也产生了较大的变化,三种不同算法数据包的发送成功率都有所降低。优化算法实时监测网络拓扑的变化状况,充分的考虑节点剩余能量以及节点空置率,并且按照当前实际情况作出相应调整,保证网络负载均衡,为发送数据探寻更好的路径传输。
(2)端到端延时。伴随着节点移动速度的增大,端到端延时也呈现出增大的态势。优化算法在端到端延时上依然比另外两种算法有着更好性能。由于优化算法更多的考虑了节点控制率以及剩余能量。在节点选择的过程中,会选择那些性能相对优秀的节点,从而快速的适应网络拓扑变化,保证网络负载均衡,从而明显降低端到端延時。
四、结语
综上所述,蚁群优化算法路由协议在无限移动自组织网络环境当中是可行、有效的,其网络性能相较于传统AODV协议网络性能有了明显的提升,可以作为全新的Ad Hoc网络路由协议方案。
作者简介:杨君芳,天津职业技术师范大学。