首页> 中国专利> 一种基于能量的无线传感网络簇头继承分簇方法

一种基于能量的无线传感网络簇头继承分簇方法

摘要

本发明公开一种能量高效的基于簇头继承机制的无线传感器网络路由方法,适用于分层的传感器网络结构。本路由方法由初始化,稳定传输和簇头继承三个阶段组成。初始化阶段完成整个网络的初始化分簇过程;稳定传输阶段,各个簇分别对簇内节点的数据进行收集并转发给基站;当簇头节点的剩余能量低于节点在首次担当簇头时所设置的能量阈值时,即进入簇头继承阶段,本阶段将进行簇头继承操作。本路由方法主要针对传统分簇算法需要定期地根据一个随机概率频繁更换簇头所带来的问题进行改进,通过能量阈值参数的设置,使得网络中节点的能耗更加均衡,并且簇头更加自主动态地进行更换,从而更有效地延长网络的生存时间。

著录项

  • 公开/公告号CN101841884A

    专利类型发明专利

  • 公开/公告日2010-09-22

    原文格式PDF

  • 申请/专利权人 北京航空航天大学;

    申请/专利号CN201010167285.X

  • 发明设计人 杨冰;丁嵘;

    申请日2010-04-30

  • 分类号H04W40/02(20090101);H04W52/02(20090101);H04W84/18(20090101);H04L12/56(20060101);

  • 代理机构11251 北京科迪生专利代理有限责任公司;

  • 代理人李新华

  • 地址 100191 北京市海淀区学院路37号

  • 入库时间 2023-12-18 00:44:04

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-04-17

    未缴年费专利权终止 IPC(主分类):H04W40/02 授权公告日:20120502 终止日期:20190430 申请日:20100430

    专利权的终止

  • 2012-05-02

    授权

    授权

  • 2010-11-10

    实质审查的生效 IPC(主分类):H04W40/02 申请日:20100430

    实质审查的生效

  • 2010-09-22

    公开

    公开

说明书

技术领域

本发明属于无线传感器网络通信技术领域,具体是一种能量高效的基于簇头继承机制的无线传感器网络路由方法,解决资源受限的无线传感器网络高效路由的问题,此方法适用于分层的传感器网络结构。在无线传感器网络中应用此方法能够减少网络的能量损耗,平衡网络中各个节点的负载,防止部分节点因能量消耗过快而失效,延长网络的生存时间。

背景技术

无线传感器网络(Wireless Sensor Networks)是由部署在监测区域内大量的微型传感器节点通过无线通信形成的一个多跳的自组织网络系统,其目的是协作地感知、采集和处理网络覆盖区域里被监测对象的信息,并发送给观察者。

无线传感器网络是一种无中心节点的全分布系统。通过随机投放的方式,众多传感器节点被密集部署于监控区域。这些传感器节点集成有传感器,数据处理单元和通信模块,他们通过无线信道相连,自组织地构成网络系统。传感器节点之间具有良好的协作能力,通过局部的数据交换来完成全局任务。由于传感器网络的节能要求,多跳,对等通信方式交织传统的单跳、主从通信方式更适合于无线传感器网络,同时还可有效避免在长距离无线通信过程中所遇到的衰减和干扰等各种问题。通过网关,传感器网络还可以连接到现有的网络基础设施上(如Internet,移动通信网络等),从而将采集到的信息传给远程的终端用户使用。

在无线传感网络的研究中,由于节点的能量有限,如何更有效的利用节点能量,均衡网络负载,以延长网络的生存时间是最重要的问题。对于拥有大量节点的无线传感网络,分层的拓扑结构在网络管理和可扩展性上具有较多的优势。在这种网络结构中,簇头(Cluster Head,CH)承担簇内的数据收集和处理工作,收集的数据通过簇头间的路由发送至Sink节点。分簇算法也是目前的主流路由算法,在众多的分簇算法中,LEACH(lowenergy adaptive clustering hierarchy)算法是比较成熟且常用的分簇路由算法,它的成簇方法贯穿于其后提出的很多层次路由协议中,如PEGASIS,HEED等。LEACH是一种基于簇的低能耗自适应的路由协议,其操作被分为若干的轮(round),每轮包括簇的建立阶段和稳定阶段,如图1所示。在簇的建立阶段,节点被选择担任簇头的概率将由一个阈值T(i)确定,网络中每个节点i将产生一个0~1之间的随机数,并将其与T(i)进行比较,产生的随机数小于T(i)的节点将被选择担任簇头,其它节点则作为非簇头节点,选择距离自己最近的簇头加入。T(i)表示如下:

其中k是每轮中的簇头期望个数,N是网络中的节点总数,r表示当前的轮次G是前r轮数据传输过程中均未担任过簇头的节点的集合;在数据通信阶段,簇内节点把数据发送给簇头,簇头进行数据融合并将结果发送给Sink节点。LEACH算法能够保证各节点等概率地担任簇头,使得网络中的节点相对均衡地消耗能量。但LEACH算法也存在许多局限,如需要频繁定期地对簇结构进行重构,采用完全随机的方式选择簇头,未考虑节点剩余能量等。

针对LEACH算法存在的局限,国内外学者提出了许多改进的算法,PEGASIS(Power-Efficient Gathering in Sensor Information System)算法提出了簇内多跳的概念,通过在簇内建立一条遍历所有簇成员节点的链路,每个节点只与距离自己最近的节点通信,并且在每一跳均进行数据融合,进一步降低了网络能耗。HEED(Hybrid Energy Efficient Distributed)算法针对LEACH簇头分布不均匀这一问题进行了改进,在簇头选择中考虑了节点的剩余能量,并以主从关系引入了多个约束条件作用于簇头的选择过程,能产生分布更加均匀的簇头。2009年,笔者针对LEACH算法中簇头选取机制的不足进行了改进,提出了基于软阈值的簇头选举方法(STCS,SoftThreshold based Cluster-head Selection Method)。该算法不同于LEACH所采用的硬性阈值策略,而使用一种动态调整阈值的方式,根据节点在上一轮担任的角色以及簇内节点的数目进行调整,而不是在每次担任过簇头之后简单地将阈值设为0。软阈值的设置如公式(2)所示:

同样r表示当前的轮次(p是预先设定的节点被选中担任簇头的初始概率),

当r=0时,T(i)|r=0=p;

当r>0时,

Gr-1表示在第r-1轮中被选择担任簇头的节点集合,C(i)表示节点i在第r-1轮中所属的簇,NUM(C(i))表示该簇C(i)的簇成员数目。ε作为软阈值参数,用于对软阈值进行调整,它的取值将影响节点在每一轮中成为簇头的概率。

前面提到的算法大都是基于轮次(round)进行的,并且主要是从LEACH算法的阈值设置上进行改进。本发明不同于前面提到的诸多改进算法,它将从一种全新的角度对LEACH算法进行改进,摒弃了轮次的概念,避免了频繁定期地对簇进行重构,更有效地节省网络能耗,延长网络的生存时间。

发明内容

本发明主要针对LEACH算法中需要频繁定期地进行簇的重构操作所带来的能耗,以及LEACH中并未考虑节点的剩余能量,不利于节点能耗均衡的问题进行改进,提出了一种基于能量的簇头继承分簇方法(ECI,Energy based Cluster-head InheritanceMethod)。该方法摒弃了传统无线传感网络分簇协议中的轮的概念,分簇的过程不必定期的进行,并且在簇头选择的过程中考虑节点的剩余能量信息。另外,簇头选举将采用继承的方式,由原簇头节点在簇内挑选剩余能量最多的节点作为继任簇头,从而在簇内自组织地完成簇头更换的过程。通过减少簇的频繁重构,并且在簇头选择过程中考虑节点的剩余能量因素,能够更好的均衡网络能耗,延长网络生存时间。本发明的操作过程主要分为三个步骤:初始化阶段,稳定阶段和簇头继承阶段,其操作过程示意图如图2所示。

1.初始化阶段

初始化阶段将完成整个算法过程的初始化过程,为后面的算法正常执行建立基础。网络中的所有传感器节点均同构,并且具有相同的初始能量,因此初始化可以采用与LEACH相同的构建簇方式,基于随机概率选择初始时的簇头节点。

网络中的节点在初始化阶段以相同的初始概率参与簇头选举,该初始概率记为Pinit,它是网络中簇头节点占网络节点总数比例最优值。同样地,每个节点产生一个介于0到1之间的随机数,然后将其和Pinit比较,如果随机值小于Pinit,节点被选中担任簇头节点。作为簇头节点,需要首先为自己设置一个能量阈值E_thresh(比如为节点当前剩余能量的一半),以决定何时更换簇头,设置好能量阈值后,节点广播ADV_CH消息,通知其他节点自己担任簇头,ADV_CH消息中包含簇头的ID,之后簇头节点等待来自成员节点的请求加入消息;如果节点产生的随机数大于或等于Pinit,则作为簇成员节点,等待来自所有其他簇头节点所广播的ADV_CH消息,然后根据接收到的ADV_CH报文的信号强度选择距离自己最近的簇头节点,并向该节点发送JOIN_REQ消息请求加入该簇,簇头节点收到簇内节点的JOIN_REQ消息后,为簇内各个节点分配TDMA时隙,并将该信息通过ADV_SCH报文广播给簇内的节点,当簇内的节点收到该报文后,算法的初始化阶段结束。各个簇内节点将在自己分配到的时隙发送DATA报文给簇头节点,其他时间即进入休眠状态以节省能量。

2.稳定传输阶段

一旦簇的结构在初始化阶段构建好之后,ECI操作步骤进入稳定传输阶段,在这个阶段中,各个簇内自组织地进行数据传输,簇成员节点将自己在环境中监测到的信息包含在DATA报文中,同时附带自身当前的剩余能量信息curEnergy,然后,在稳定阶段的每一帧中TDMA调度表所分配的时隙内将DATA报文发送给簇头节点。当簇内节点将DATA报文发送给簇头节点之后,并不是像以往算法那样简单地进入休眠状态,然后等待下一次的传输,而是继续等待一个时隙的时间,监听是否有来自簇头节点的CHG_CH消息,如果收到该消息的话,节点将进入簇头继承阶段,否则节点进入休眠状态,等待下一帧的数据发送;作为簇头节点,当收到来自各个簇内的DATA报文之后,提取各个簇内节点的剩余能量信息,并将其存储于簇内节点剩余能量列表CMEnergyList中,当收集完一帧中所有簇内节点的监测数据后,簇头将收集到的数据与自身的数据进行一些相应的融合操作,然后发送给Sink节点,此时即完成了稳定阶段一个帧中的数据传输。在每个帧的末尾,簇头将会判断自己当前所剩余的能量值是否仍然大于刚开始担任簇头时所设置的能量阈值E_Thresh,若是,簇头节点将继续下一帧的数据传输,等待接收来自簇内的DATA报文,否则簇头节点进入簇头继承阶段。

3.簇头继承阶段

在簇头继承阶段,原簇头节点将会把自己担任的簇头位置移交给同一个簇内的其他节点,也即簇头继承的过程。新簇头节点的选择将依据簇内节点的剩余能量信息来确定。簇头节点在进入簇头继承阶段后,将根据之前存储的簇内剩余能量列表CMEnergyList选择剩余能量最多的簇内节点作为继任的簇头节点,然后将继任节点的ID包含在CHG_CH报文中,然后在下一帧中各个簇内节点发送DATA数据的下一个时隙,将CHG_CH报文分别发送给簇内的节点。簇内节点收到CHG_CH报文后,首先比较自身的ID是否与CHG_CH报文中包含的ID相同,若是,则节点得知自己即被选中作为继任簇头节点,将担任新的簇内传输的簇头,新簇头同样需要设置一个能量阈值E_thresh,然后等待新的簇内成员发送的请求加入报文;若簇内节点比较自身的ID与CHG_CH报文包含的ID不一样时,知道自己并没有被选中担任簇头,然后在本地将新的簇头节点ID保存为CHG_CH报文所包含的ID值,并向新簇头节点发送JOIN_REQ消息请求加入,实际也相当于向新的簇头节点注册的操作。随后的过程和前面初始阶段描述的相同,当新的簇内节点分配好TDMA调度表后,ECI方法再次进入稳定阶段。

附图说明

图1LEACH算法的简要流程图;

图2ECI方法的操作过程示意图;

图3ECI方法与LEACH和STCS算法节点存活数随时间的变化曲线图,图3a为场景1,

图3b为场景2。

具体实施方式

具体实施方案可分为初始化阶段,稳定阶段,簇头继承阶段三个部分。

初始化阶段:首先将节点以一定的密度部署在监测区域,各传感器节点烧录对应的协议程序。i表示传感器节点的编号,各节点设置簇头选举的初始概率Pinit均设置为0.05。每个节点产生一个0到1之间的随机数。将该数与初始概率Pinit进行比较,若随机数小于Pinit,则节点设置自身为当前轮的簇头节点,同时设置一个能量阈值E_thresh为自身当前剩余能量的1/2,并广播ADV_CH报文通告自身的簇头信息。否则,若随机数大于或等于Pinit,则节点设置自身为簇成员节点,等待接受来自簇头的ADV_CH消息。当簇成员节点接收到来自周围各簇头发送的ADV_CH消息之后,将比较接收到各簇头报文的信号强度,然后选择信号最强的节点作为自己将要加入簇的簇头节点,并向其发送JOIN_REQ消息。簇头节点接收到簇成员节点发送的JOIN_REQ消息后,将其设置为本簇的簇成员节点,并记录。如此,距离较近的节点将组成簇,簇头节点为簇内成员分配TDMA调度表并发送至各成员节点,网络中簇的初始划分过程结束。

稳定阶段:稳定阶段由若干的帧组成,每一帧完成一次簇成员节点的数据的收集。在每个帧中,簇成员节点根据簇头节点分配的TDMA时隙,在指定的时间进行数据传输。数据报文DATA将包括节点自身监测到的数据信息以及节点自身当前的剩余能量curEnergy,被传给簇头节点,然后簇内节点将等待一个时隙,监测是否有来自簇头节点的CHG_CH报文,若有,节点进入簇头继承阶段,否则节点进入休眠状态,等待下一帧中的TDMA时隙进行数据采集传输。簇头节点收到来自所有簇成员的数据之后,提取DATA报文中的数据信息以及发送节点的剩余能量信息,将节点剩余能量存储于簇内节点剩余能量列表CMEnergyList中,当收集完一帧中所有簇内节点的数据后,簇头节点将对所有簇内节点的数据以及自身监测的数据进行一定的融合操作,然后将数据传送至Sink节点。这时即完成了一帧的数据传输,簇头节点将检查自己当前的剩余能量是否低于初始担任簇头时所设置的能量阈值E_thresh,若是,将触发簇头继承操作,节点进入簇头继承阶段。否则继续等待下一帧的数据传输。

簇头继承阶段:簇头继承阶段将完成簇头的更换过程,作为簇头节点,当判断自身的剩余能量低于初始担任簇头时所设置的能量阈值时,它将从前面存储的CMEnergyList列表中选择剩余能量最多的节点担任继任簇头,然后将继任簇头的ID保存在CHG_CH报文中,在下一帧时分别给簇内节点发送更换簇头的CHG_CH消息。簇成员节点在发送完DATA之后,等待一个时隙,收到来自簇头节点发送的CHG_CH报文后,首先判断报文中包含的ID是否与自己的ID相同,若是,簇内节点得知自己被选中担任继任簇头,然后设置自己为簇头节点,同时将能量阈值E_thresh设置为当前剩余能量的1/2,之后等待其它节点发送JOIN_REQ消息向新簇头注册。如果簇内节点发现自己的ID与CHG_CH报文包含的ID不同时,则保存新簇头节点的ID,并向新的簇头节点发送JOIN_REQ消息进行注册,新簇头也即继任簇头收集完来自簇头节点的JOIN_REQ消息后,分别为簇内节点分配新的TDMA调度表并广播通知簇内节点。这样即完成簇头继承操作过程。

示范性实例分析:

网络生存时间(life-time)是衡量无线传感器网络路由协议性能的核心指标。由于传感器节点能量有限,如何最大限度的利用传感器能量,尽可能地延长网络使用寿命是诸多协议首要考虑的问题,基于能量的簇头继承分簇方法主要针对以LEACH为代表的传统分簇协议通常需要频繁定期地进行分簇所带来的能量过快损耗的问题,采用能量阈值触发簇头更换的方式,能够更有效的均衡网络的能耗,延长网络的生存时间,为了验证ECI方法的有效性,从传感器节点的平均能量消耗以及存活节点数对所提出的方法进行仿真,并与笔者之前提出的STCS算法以及经典的LEACH算法进行比较分析。使用的仿真工具是被业界公认的NS2仿真工具。

为了测试网络规模对路由协议的性能影响,设置了两种节点部署场景:

场景1:将100个节点随机分布在100*100m2的区域内,Sink节点部署在(50,175)处的位置;

场景2:将400个节点随机分布在400*400m2的区域内,Sink节点部署在(200,500)处的位置;

每个传感器节点的初始能量设为2J。基于能量的簇头继承分簇方法ECI与基于软阈值的簇头选举方法STCS以及LEACH的网络生存时间与节点存活数比较曲线图如图3的(a)、(b)所示。

图3(a)所示为在场景1下分别仿真LEACH,STCS和ECI方法。从图中我们可以清晰地看出,ECI在很大程度上提高了网络生存时间:不仅在第一个节点失效时间上,而且总的网络生存时间都远超过LEACH和STCS。STCS算法由于允许节点多次参与簇头选举,虽然让每一轮簇头选举有了更多的选择,不至于让网络中可以选择担任簇头的范围越来越小,但是允许节点不止一次的参与簇头选举,导致一些节点可能会在算法初期由于多次担任簇头而过快耗尽了节点的能量,因此STCS的第一个节点失效时间总是早于LEACH算法。而ECI方法采用基于能量的簇头继承机制,有效地均衡了网络中的节点能耗,延长了网络的生存周期,并且不存在节点过早失效的问题。图3(a)很好地反映了ECI方法的性能。

另外,为了观察ECI方法在网络规模增大的情况下的性能,我们在场景2下进行仿真。在监测区域和网络中的节点数目均扩大为原来四倍的较大规模网络场景中,我们同样分别对ECI,STCS和LEACH三种算法进行仿真,并比较各自的网络存活节点随着时间轴的变化曲线,如图3(b)所示。

从图3(b)可以看出,在较大规模的网络场景下,算法的性能与场景1中的性能有些许差异,在ECI方法中,第一个节点失效的时间早于其他两种算法,但整个变化曲线较为平缓,并且在总体上的网络生存时间上仍然超过了STCS和LEACH两种算法,因此从总体上来说,ECI在网络规模扩大四倍的情况下性能仍然是最优的,网络生存时间仍然得到了扩展。

综上所述,基于能量的簇头继承分簇方法在平均网络能耗,延长网络生存时间等方面相较LEACH和STCS而言都表现出了良好的性能,随着网络规模的扩大,本方法仍然能够表现出较好的性能,显示了良好的可扩展性。

符号说明:

WSN:无线传感器网络

Sink:汇聚节点,基站

ECI:基于能量的簇头继承分簇方法

STCS:基于软阈值的簇头选举算法

LEACH:低开销自适应分簇路由算法

TDMA:时分多址

Pinit:节点被选中担任簇头的初始概率

E_thresh:节点能量阈值,决定何时更换簇头

CMEnergyList:簇内节点剩余能量列表,保存簇内各节点的剩余能量

curEnergy:节点当前剩余能量

报文类型:

ADV_CH:广播通知其它节点自己担任簇头的报文

JOIN_REQ:请求加入簇的报文

ADV_SCH:分配TDMA调度表的广播报文

DATA:传感器监测数据的报文

CHG_CH:通知继任簇头的报文

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号