APP下载

一种无线传感器网络覆盖空洞的修复方法

2012-12-04蕾,钱

黄山学院学报 2012年5期
关键词:覆盖率空洞半径

张 蕾,钱 峰

(铜陵学院 数学与计算机科学系,安徽 铜陵244000)

1 引 言

由于嵌入式系统技术在近几年快速发展,无线传感器网络(WSN)已成为最重要的研究领域之一。覆盖率是无线传感器网络有效的重要度量指标。根据Paikh等提出的理论:[1]传感器网络的覆盖率为100%是不可能的,当覆盖率≧70%时,网络才有效。针对如何保持一个良好的网络覆盖率,许多方法陆续被提出,其中不少方法需要移动传感器节点。文献[2]中提出了VFA,方法中假设每个传感器节点之间存在引力和斥力。如果任何两个节点太近,斥力会将它们分开,反之,引力会拉近它们。VFA会使网络拓扑更加的均衡,但需要所有节点知道其位置。由于方法中所有节点的感知半径被假定为固定的,所以能量低的节点会快速耗尽其能量。EVFA[4]是VFA的分布式版本,这意味着剩余能量高的节点比低的节点有更大的感知半径。能有效地利用网络中的能量资源,延长网络的生存时间。

2 问题描述和系统模型

2.1 覆盖空洞

当传感器网络中某一节点因其本身能量耗尽或被破坏而失效,导致网络原有的覆盖区域缺失或者数据无法送达基站的现象,称为 “覆盖空洞”(coverage holes)现象。覆盖空洞直接导致网络覆盖率下降,也会给一些应用带来很多问题。如在医疗中,我们会使用实时传感器来监控病人身体的健康情况,如果传感器失效,将失去病人的病情信息。

在诸如VFA的方法中,当某个节点失效,基站会给网络中每个活动节点计算出一个新的位置,然后移动传感器节点修复覆盖漏洞。因为移动节点需要耗费大量的能量,本文提出一个有效的方法来修补覆盖空洞,是网络保持一个良好的覆盖率。

2.2 系统模型

假设无线传感网络系统由一个基站和多个传感器节点构成,基站负责收集来自所有传感器节点发送来的数据,我们采用文献[2,4]中的概念,假设节点间存在虚拟力,利用节点间的虚拟力可以保证移动节点间的合作。因为能量的限制,每个节点采用多跳的方式传输包,因为单跳传输可能要耗费更多的能量。传感器的感知模型为圆盘模型。

本文的方案基于以下假设:

1.基站是固定的,所有传感器节点均可移动;

2.所有传感器节点通过GPS或其他定位机制知道自己的位置信息;

3.所有传感器节点都可调整自己的感知范围和通信范围。最大的感知半径(RS)设为20m,最大的通信半径(RC)设为40m。

图1 节点g即将失效前

3 无线传感器网络覆盖空洞修复

3.1 节点间信息的交换

为了减少修复覆盖空洞所需移动节点的数目,我们将每个传感器节点的通信范围划分成3个区间:-π/6到 π/2之间的区域为区间 1,π/2到-5π/6之间的区域为区间2,-5π/6到-π/6之间的区域为区间3。然后对各区间分别计算其每个邻居节点的ED_value。

其中,d为节点与其邻居节点的距离。节点会选择该区间邻居节点中ED_value值最大的节点作为节点在这个区间的指定节点。

最初,每个节点在其通信半径内通过广播hello消息包获得邻居节点的相关信息。一个Hello消息包含如下信息:节点id,节点位置,剩余能量和到基站的距离,邻居节点及距其距离的列表,各区间所指定的节点。每个节点通过hello消息包记录来自邻居节点的信息。节点间信息交换完成后,每个节点选择距基站距离最小的邻居节点作为其向基站传输数据包的下一跳。

当hello包完成交换后,节点将知道其是否被其邻居节点选择为指定节点,这些信息被记录在它们各自的表中。网络完成部署后,每个节点开始工作并向基站传送数据包。每个节点也将定期广播hello包用于维护网络拓扑。

3.2 节点的移动

当某个传感器节点能量即将耗尽,即向其3个区间所指定的节点发送cover_request消息通知它们覆盖其工作区域。计算每个指定节点需要移动的距离为:

dist(i)为该节点与邻居节点i的距离,k为所有3个区间指定节点的数目(1≤k≤3)。average_energy为所有指定节点能量的均值。如果邻居节点没有定期收到来自于节点g的hello消息,它将假定节点g已经死亡,将计算移动距离并自动移向目标位置。

图1中,经过信息交换阶段后,节点g分别选择a,b,d作为其3个区间的指定节点,因为这3个节点分别在其所在区间的ED_value最大。如果节点g即将死亡,其向3个区间的指定节点发送coverrequest消息,这些节点收到消息后将各自计算移动距离并移向目标位置。

3.3 增大感知半径

节点在收到cover_request消息并移动到目标位置后,它将扩大其感知半径以覆盖死亡节点的范围。新的感知半径由初始感知半径加上移动距离,这样使得原有的区域仍然能覆盖。图2显示了节点g死亡后的拓扑,节点a,b和d移动到一个新的位置并且扩大他们的感知半径。节点a,b和d再次通过广播hello消息获取其邻居节点的相关信息。

图2 节点g死亡后

4 仿真实验

利用JAVA编写程序模拟我们的仿真环境,假定网络100个传感器节点随机部署在大小为100m*100m的方形区域内,所有的节点均可移动,传感器节点的初始能量在150J到3000J的范围内。离基站越近的节点拥有越多的能量,因为离基站越近其负载越大,依式(3)计算节点能量消耗。

α和 β是两个调整参数。Rs为感知半径,Rc为通信半径,l为数据包大小,固定为512byte,实验中我们假设各节点接收能耗为一固定值0.205j,节点移动每米消耗能量为27.96j。通过仿真实验,对本文提出的方法与VFA与EVFA在3个方面的性能进行比较,分别是覆盖率,剩余能量,连接节点的数目。

图3显示的3种方法的网络覆盖率。因为覆盖率在0到300个时间单位下没有变化,我们仅显示300个时间单位后的结果。当节点开始失效,覆盖率开始下降。在这里,我们只统计那些与基站仍然保持连接的节点数目。可以看到,当VFA与EVFA得覆盖率下降很快时,我们的方法仍然能保持好的覆盖率。EVFA中的传感器节点可根据其能量调整感知半径,故其覆盖率有时会小于VFA。

图5 连接基站节点数量

5 结束语

针对无线传感器网络中节点因能量耗尽或环境破坏而失效导致产生覆盖空洞的现象,本文提出了1种解决办法,基本思想是选择最多3个ED_value值最大的节点,通过节点移动并扩大其感知半径来修复覆盖空洞。通过仿真实验表明了改方法能保证较好的网络覆盖率,延长了网络的生存时间。

图4显示网络剩余能量。本文的方法比VFA与EVFA有更高的能量剩余,因为在这两种方案中,当节点死亡时,所有的传感器节点都可能移动,这需要消耗大量的能量。而本文的方法最多只需要移动3个节点。

图5中可以看出本文的方法比VFA与EVFA能保持更多的节点连接,因为节点花很多的能量在移动上,所有死亡的更快。

[1]Parikh S,Vokkarane V M,Liudong X,Kasilingam D.Node-ReplacementPoliciestoMaintainThreshold-CoverageinWireless Sensor Networks[C].Proceedings of 16th International Conference on Computer Communications and Networks,2007:760-765.

[2]Zou Y,Chakrabarty K.Sensor deployment and target localization based on virtual forces[C].in Proc.IEEE INFOCOM Conference,2003:1293-1303.

[3]Zhang S,Liu Y,Pu J,Xiao Z,Zhang X.An Enhanced Coverage Control Protocol for Wireless Sensor Networks[C].Hawaii International Conference on System Sciences,2009:1-7.

[4]Younghwan Yoo,Agrawal D P,Mobile Sensor Relocation to Prolong the Lifetime of Wireless Sensor Networks[C].IEEE Vehicular Technology Conference,2008:193-197.

猜你喜欢

覆盖率空洞半径
民政部等16部门:到2025年村级综合服务设施覆盖率超80%
我国全面实施种业振兴行动 农作物良种覆盖率超过96%
连续展成磨削小半径齿顶圆角的多刀逼近法
空洞的眼神
一些图的无符号拉普拉斯谱半径
基于喷丸随机模型的表面覆盖率计算方法
2015年湖南省活立木蓄积量、森林覆盖率排名前10位的县市区
用事实说话胜过空洞的说教——以教育类报道为例
热采水平井加热半径计算新模型
臭氧层空洞也是帮凶