一种基于蚁群多路径的无线传感器网络的数据传输方法与流程

文档序号:12949642阅读:334来源:国知局
一种基于蚁群多路径的无线传感器网络的数据传输方法与流程
本发明涉及传感器网络协议领域,具体涉及一种基于蚁群多路径的无线传感器网络的数据传输方法。
背景技术
:在无线网络中,传感器节点能量十分有限,其能效利用率较低,分簇路由协议能有效提高网络能效,得到了广泛应用。目前,在分簇路由协议中引入蚁群多路径概念,进行多路径的选择,其重点研究是蚁群算法的应用,采用多条传输路径的方式,进行下一跳选择的研究。然而,自适应阈值敏感能量有效的传感器网络协议(apteen)属于混合型数据模式,兼有主动型与响应型的特点。既能周期采集数据,又能对突发事件快速做出反应,适用于实际应用环境。然而,在apteen路由协议中,其簇头既要完成簇内数据收集与融合,又要完成与距离较远的汇聚节点的簇间数据传输,导致能量效率利用率很低。另外,由于现有很多分簇路由协议,其簇头的选择是随机数与阈值t(n)比较的方式,由于t(n)考虑因素较少,选举方式存在很多不足,很多现有协议会针对不同因素对leach协议中t(n)进行优化。而对于apteen路由协议t(n)改进的技术相对很少。技术实现要素:本发明的目的在于针对apteen路由协议能量效率利用率低的问题,在apteen协议基础上,本发明提出了一种基于蚁群多路径的无线传感器网络的数据传输方法,该方法引入蚁群多路径概念,利用蚁群算法进行中间节点选择,中间节点的选择分担了簇头远距离传输数据的任务,簇间能量的花费均衡到中间节点上,避免簇头因完成额外的任务而过早死亡;而且在每次有数据由簇头传送至汇聚节点,都进行中间节点的选择,将数据分流到多条路径上,使得网络能耗更加均衡。另外,本发明的方法通过考虑将节点的剩余能量及信息传输的距离两个和能耗相关的因素,来优化t(n),提高了能效利用率以及网络的合理性。为了实现上述目的,本发明提供了一种基于蚁群多路径的无线传感器网络的数据传输方法,所述方法包括:步骤1)在无线传感器网络中,根据节点的剩余能量及信息传输的距离两个因素设置节点阈值t(n),根据节点阈值选择簇头,再依据簇头对无线传感器网络的节点进行分簇;步骤2)在第m个分簇中根据信息素浓度选择一个节点为该簇的中间节点;步骤3)在每个分簇中,簇成员在分配的tdma期间向簇头传输数据时,当簇头接收来自所有簇成员数据之后,进行融合数据并把融合的数据发送到中间节点,中间节点转发数据至汇聚节点。作为上述方法的一种改进,所述步骤1)包括:步骤1-1)每个节点生成0或1的随机数;步骤1-2)设置节点阈值t(n):其中,r为节点n到汇聚节点的距离,rmax代表所有节点到汇聚节点距离的最大值,β代表调节因子,p为所有节点中成为簇头的概率;g为前轮还未选作簇头的节点集合,en表示节点n当前剩余能量,einit表示节点n的初始能量;步骤1-3)每个节点将产生的随机数和节点阈值t(n)进行比较,若随机数小于节点阈值t(n),则节点n为本轮的簇头;如果节点为簇头,广播消息,宣布自己为本轮的簇头;步骤1-4)根据选择出的簇头,对整个网络进行分簇;非簇头节点收到广播信息后,根据接收信号强度决定加入哪个分簇,向接收信号最强的簇头发送加入请求,成为该簇簇成员,并利用蚁群算法建立簇头与簇成员间的虚拟链接。作为上述方法的一种改进,所述步骤2)具体为:在第m个分簇中,根据公式(2)计算簇成员i的信息素浓度τmi(t):其中,q为预先设定的值,ρ为信息素挥发率,em为簇头节点当前剩余能量,einit为簇头的初始能量,dmi为该簇中的簇成员i到簇头的距离;簇成员i向簇头发送数据之后,向簇头汇报其剩余能量信息;相应链路上信息素浓度增加量为:ei表示簇成员i当前剩余能量,einit表示簇成员i的初始能量,α表示调节因子;根据式(2)和式(3),簇成员i的信息素浓度为:簇头根据式(4)选取链路上信息素浓度最大的簇成员节点为中间节点。本发明的优势在于:1、本发明的方法相比传统apteen路由数据传输方法,大大的延长网络生命周期;2、在本发明的方法中,簇头采用优化的阈值选择方式,中间节点的选取通过蚁群算法,根据信息素浓度进行选取;簇头只与中间节点通信,而不与距离较远的汇聚节点直接通信;避免簇头既要收集数据并融合,又要远距离通信的状况,很大程度上节约能量;3、在本发明的方法中,每次数据传输都根据蚁群算法概率地选择中间节点,因而中间节点很有可能会不同,进而形成多条数据传输路径,将数据分流至多条路径上,均衡能量消耗。附图说明图1为本发明的基于蚁群多路径的无线传感器网络的数据传输方法的流程图;图2为本发明的网络模型的示意图;图3为10节点场景的网络拓扑图;图4为网络生命周期的比较示意图;图5为apteen算法节点能耗示意图;图6为amapteen节点能耗示意图;图7为不同当选簇头概率下apteen网络生命周期示意图;图8为不同当选簇头概率下的amapteen生命周期比较示意图;图9为20节点场景的网络拓扑图;图10为apteen节点存活总时间示意图;图11为amapteen节点存活总时间示意图。具体实施方式下面结合附图和具体实施例对本发明进行详细的说明。如图1所示,一种基于蚁群多路径的无线传感器网络的数据传输方法,所述方法包括:步骤1)对无线传感器网络的节点进行分簇;具体包括:步骤1-1)每个节点生成0或1的随机数;步骤1-2)设置节点阈值t(n);设置节点阈值为:其中,r为节点n到汇聚节点的距离,rmax代表所有节点到汇聚节点距离的最大值,β代表调节因子,p为所有节点中成为簇头的概率;g为前轮还未选作簇头的节点集合,en表示节点n当前剩余能量,einit表示节点n的初始能量。步骤1-3)每个节点将产生的随机数和节点阈值t(n)进行比较,若随机数小于节点阈值t(n),则节点n为本轮的簇头;如果节点为簇头,广播消息,宣布自己为本轮的簇头;式(1)中的节点阈值t(n)考虑了节点的剩余能量,以及到sink节点的距离。在成簇与簇内传输阶段,节点被动态分成多簇,每个节点根据产生的随机数和优化阈值公式(1)阈值进行比较,判断是否为本轮的簇头。如果是簇头,广播消息,宣布自己为本轮的簇头;步骤1-4)根据选择出的簇头,对整个网络进行分簇;非簇头节点收到广播信息,根据接收信号强度决定加入哪个分簇,向接收信号最强的簇头发送加入请求,成为该簇簇成员,利用蚁群算法建立簇头与簇成员间的虚拟链接(初始信息素浓度值为0)。步骤2)每个簇选择一个节点为该簇的中间节点;在第m分簇中,簇头收到簇成员加入消息后,为本簇所有簇成员分配时分复用(tdma)时隙,并发送给簇成员。此时根据公式(2)计算信息素浓度,其表达式为:其中,q一般为预先设定的值,本实施例设置为10,ρ为信息素挥发率,emnit为簇头的初始能量,em为簇头节点当前剩余能量,dmi为该簇中的簇成员i到簇头的距离,该距离可根据拓扑中节点位置坐标求得。当簇成员向簇头传输数据时,簇成员将收集数据在所分配的tdma时隙将数据发送给簇头。其中簇成员向簇头数据传输判断条件与apteen一致,即包括软硬阈值以及计数时间比较,具体内容包括:簇形成之后,簇成员开始不断检测,当检测的数据首次超过ht,将检测值存到内部变量sv中,并根据分配的tdma传送数据至簇头。之后,簇成员继续感知。只有在检测值超过ht,同时在发射机与接收机的检测值中的变化量超过st时,检测值才会再次被存储与传送,并将监测数据通过簇头转发至sink节点。计数时间是节点两次报告之间最大时间间隔。在设定计数时间内,节点检测数据没有超越阈值导致长时间没有任何数据传送,强迫节点将当前检测数据向sink节点汇报;所有簇成员向簇头发送数据之后,向簇头汇报其剩余能量信息;相应链路上信息素浓度增加量为:ei表示簇成员i当前剩余能量,einit表示簇成员i的初始能量,α表示调节因子。根据式(2)和式(3),簇成员i的信息素浓度为:簇头根据式(4)选取链路上信息素浓度最大的簇成员节点为中间节点。只要有数据从簇头向汇聚节点传输,簇头选择信息素浓度值最大的节点为中间节点。而每次选择的中间节点很有可能不同,进而形成簇头与汇聚节点间多条数据传输路径。含有中间节点的分簇网络结构如图2所示。步骤3)簇成员在分配的tdma期间向簇头传输数据时,当簇头接收来自所有簇成员数据之后,进行融合数据并把融合的数据发送到中间节点,中间节点转发数据至汇聚节点。由于簇头节点只与中间节点通信,而不与汇聚节点直接通信。大部分能量消耗由中间节点执行,很大程度上减少簇头的能耗。延长无线传感器网络的生命周期。当存活节点仅剩最后一个时,而不再进行簇头及中间节点的选择,amapteen则是直接由该节点实时的向汇聚节点发送数据。在选择簇头时,考虑到节点的剩余能量,以及到汇聚节点的距离两个与能耗相关的参数,使得能量消耗更均衡。以簇头作为起点,汇聚节点作为终点,利用蚁群算法改变原来的单路径为多路径通信,信息素浓度计算公式中综合衡量路径的簇头与汇聚节点的距离和所历经节点的剩余能量与节点耗能有关的因素,寻找由簇头到汇聚节点间的最优路径,优化的路径能提高能量的有效性。中间节点的选择为簇头承担了远距离数据传输任务,簇头节点能耗更加的均衡,簇头节点的生存时间就会延长。将任务分流到多条路径上,遍及整网的各个节点,网络分布更加均匀。因此优化的路径能有效的节约能耗,使节点的能耗更加均衡。避免了单条路径因转发大量数据而提前耗尽能量的现象,即避免出现“热区”现象。下面定义本发明的方法形成的路由协议为amapteen:每次有数据从簇头至汇聚节点传输,每一簇中根据蚁群算法选择一个中间节点。簇头完成对簇成员的数据收集、融合,并将融合数据发送至中间节点。中间节点则将融合数据转发至距离较远的汇聚节点。避免了簇头与汇聚节点的直接通信,很大程度上减少能耗,整网生存时间被延长。簇头与汇聚节点间的每次数据传输,都需要进行中间节点的选择。而中间节点是根据蚁群算法计算信息素浓度值概率地选择,形成簇头到汇聚节点的路径是当前局部最优的,每次选择的中间节点很有可能不同,进而形成簇头与汇聚节点间是多条传输路径。仿真模型包含许多分成簇的传感器节点和一个固定汇聚节点。使用opnet平台评估amapteen的性能并与apteen进行比较。在仿真中,10节点网络被随机分布在(x=0,y=0)*(x=200,y=150)范围,汇聚节点位于(x=75,y=175),其网络模型如图3所示。簇成员不断感知数据,假设每轮检测k次,如果簇成员未向其簇头传送数据的次数超过计数时间,簇成员被迫向簇头传送数据。仿真参数如表1所示:表1参数名值初始能量0.5j硬阈值5软阈值0.1计数时间3当选簇头概率0.2每轮检测数k10每轮持续时间20s如图4所示,amapteen比传统的算法网络生命周期更长。由仿真结果可知,amapteen算法网络生命周期比apteen延长了约1.9倍。amapteen在延长整网的网络生命周期方面效果显著,就能量高效性而言更优于apteen。apteen节点能量消耗如图5所示,节点1、3和6三条能耗曲线随着仿真时间增加稳定下降。节点6失效最早,节点3节点存活时间最长。根据图5所示网络拓扑图可以看到,节点3离汇聚节点最近,节点3作为簇头传输数据时,以距离短的优势,降低传输数据的能耗。由此可见,距离对节点能耗影响较大,避免远距离传输,对提高网络能效有重要意义。图6是amapteen节点能耗,节点1、节点3、节点6与图5节点能耗曲线相似。节点3和节点6两条能耗曲线随着仿真时间的增加稳定下降,节点1的能耗曲线开始呈现下降趋势,但是大约在4200s骤降。与图5相比,由于amapteen算法使用多路径方式来均衡能量消耗,可以看到节点1、节点3和节点6生存时间被延长。降低了单个节点的能量消耗。图7为p0=0.1,p1=0.2,p2=0.05三个不同当选簇头概率p对应的网络生命周期曲线。不同p所对应总轮数分别为round0=143、round1=71、round2=290。观察图7可知,当选簇头概率值越小,网络寿命越长,循环次数也越大。但是当p值很小时,满足阈值t(n)节点数很少,会造成不能有效分簇,造成能量的浪费;即使有簇头当选,形成分簇个数太少,每一簇成员较多,工作负载过重,易造成节点死亡。相反,当p值过大时,相比较平面路由的优势不能很好体现。因此,分簇路由协议在设计过程时需要合理选择当选簇头概率。当选簇头概率的选取对于网络性能起着至关重要的影响,图8比较了amapteen协议在当选簇头概率为0.05、0.1、0.2三种情况下的能量消耗。与图7相比较可知,当选簇头概率为0.05、0.1和0.2情况下,amapteen比apteen存活时间更久。wsn(wirelesssensornetwork,无线传感器网络)是一种大规模网络,对于其资源和能量非常有限特点,不仅需要考虑节点能耗问题,还需要考虑网络的可扩展性以及能耗均衡性。构建图9所示20节点场景网络拓扑图,扩大网络规模至20个传感器节点,验证网络的有效性和可扩展性,图10为apteen协议10节点和20节点存活总时间比较。由图10可知,两个能耗曲线下降趋势相同,并且首个节点失效时间非常接近,而且20节点网络的节点存活总时间相比较10节点网络几乎提高近一倍。因此,本文建立的网络平台具有有效性,而且,apteen网络属于能量高效性路由协议,具有较好的可扩展性,适合大规模网络。当选簇头概率对于apteen网络性能存在一定影响。当选簇头的节点数较多时,会增加通信中节点能耗,缩短网络生命周期。而当选簇头的数太少时,分配到每一簇内成员数太多,增加簇头网络负载,造成簇头过早死亡,导致网络能耗不均衡问题。因此本文针对不同当选簇头概率对apteen网络性能进行研究。图11显示amapteen算法10节点与20节点存活总时间的比较。与图10所示网络生命周期曲线的走势一致,因而amapteen协议保留了网络的有效性和可扩展性。与apteen协议相比较,无论是10节点还是20节点网络拓扑网络生存时间均有所延长。因此,无论是是在能量高效性还是可扩展性,amapteen都更优于apteen协议。最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1