传感器网络中基于簇的融合树构建算法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

传感器网络中基于簇的融合树构建算法
林益;杨靖;李捍东
【摘要】针对无线传感器网络中节点能量有限的特点,提出一种基于簇的数据融合树构建算法.该算法利用基于簇的层次结构减少路由维护代价并提高系统可扩展性;利用数据融合树处理网中冗余信息,降低数据传输量,实现了节点能量高效地使用.仿真结果表明,该算法能有效降低节点能量消耗,并延长网络生存期,性能优于典型算法.【期刊名称】《计算机工程与应用》
【年(卷),期】2010(046)012
【总页数】4页(P99-102)
【关键词】无线传感器网络;能量高效;簇;数据融合树
【作者】林益;杨靖;李捍东
【作者单位】贵州大学,教务处,贵阳,550025;江南大学,通信与控制工程学院,江苏,无锡,214122;贵州大学,电气工程学院,贵阳,550025;贵州大学,电气工程学院,贵阳,550025
【正文语种】中文
【中图分类】IP393
1 引言
无线传感器网络(Wireless Sensor Networks,WSNs)的能量受到严格限制,所以WSNs设计的首要目标是高效地使用能源。

从文献[1]的研究结果可知,在
WSNs中,处理器执行指令的能耗远小于数据传输的能耗,所以可以通过设计合
理的路由协议来减少数据传输量,实现节能,而将数据融合技术与路由协议相结合可有效减少数据传输量。

路由协议负责将数据包从源节点通过网络转发至目的节点,它的功能包括寻找源节点和目的节点间的优化路径和将数据包沿优化路径转发[2]。

无线传感器网络中路由协议可以分为基于数据的路由协议(Data-Centric,DC)[3-4]和基于地址的路由协议(Address-Centric,AC)[5]两种。

DC路由协议是在数据融合思想上提出的,通常可以分成三类:(1)基于查询的
路由,如文献[2]中介绍的 DD(Directed Diffusion)路由协议和文献[6]中介绍
的一种改进的DD路由协议;(2)基于层次的路由,如文献[7]中的LEACH (Low Energy Adaptive Clustering Hierarchy)路由协议;(3)基于数据融合树的路由,如文献[8]中涉及的三种融合树,CNSDC(Center at Nearest Source Data-Centric Protocol)、SPTDC(Shortest Paths Tree Data-Centric Protocol)、GITDC(Greedy Incremental Tree Data-Centric Protocol)。

从文献[8]的研究结果可知,基于DC的路由算法在节能方面优于基于AC的路由算法,其中GITDC算法的性能最优,但是它是一种集中式路由算法,需要知道全网拓扑情况,可扩展性不好。

在国内,也有一些研究者将融合树的概念用于WSNs,如文献[9]根据极大独立集和根树的概念构建分布式簇树骨干网,并通过簇头轮换
均衡节点能耗;文献[10]提出一种基于能耗度量的融合树构建算法,该算法根据能耗选择路由,在压缩比较小的情况下节能效果优于GITDC算法。

文中基于数据融合和分簇的思想,针对GITDC算法的不足,提出了一种基于簇的数据融合树构建算法DATCA(Data Aggregation Tree Constructing Algorithm based on Clustering)。

算法基本思想如下:首先,用基于权值的分簇算法对网络分簇;然后,由当前簇头利用GITDC算法构建簇内的数据融合子树;最后,根据通信代价将这些子树连接
起来构成完整的融合树。

这样就解决了GITDC算法可扩展性不好的问题,并充分利用了GITDC算法构建的路由树的融合效果好的优点。

算法具有如下良好的性质:(1)是分布式算法,具有较好的可扩展性;(2)分簇算法计算开销小,通过节
点间互换信息实现;(3)数据沿融合树传输,融合后才发送,节省了节点能量。

2 模型和问题描述
2.1 网络模型
用一个加权的无向连通图G(V,E,W)表示WSNs,V是所有节点集合,
E={e1,e2,…,en}是所有边的集合,每条边表示两个节点间存在通信链路,W
是边的权值,表示两点间通信链路的长度。

该图满足如下条件:G是无自圈的连通图,G中任意两个节点间最多只有一条边。

设图中有n个节点,m个簇,每个簇中有km个节点,则n=,簇内节点通过融合点构成簇内的融合子树。

网络结构模型如图1所示。

图1 网络模型结构图
2.2 能耗模型
采用文献[2]中的能耗模型:将k-bit信息从节点i传输至节点j,则节点i的发射
能耗为:
上两式中,ETx表示发送1 bit信息的能耗,单位为J/bit;ERx表示接收1 bit的能耗,单位为J/bit;Eamp表示将1 bit数据发送dn米的能耗,单位为J/(bit·m2),n可取2(节点间距离近)或4(节点间距离远)。

如果考虑数据融合消耗的能量,则公式(2)可变为:
公式(3)中,EDF是融合1 bit数据的能耗。

在理想的融合方式下,进行数据融
合的节点可将n个长度相等的输入数据分组合并成1个输出分组,节能效率为
(n-1)/n。

2.3 问题描述
在WSNs中,Sink节点在收集数据时是通过反向组播树的形式从分散的传感器节点逐步将监测的数据汇集起来。

从文献[8]的理论分析可知,寻找最优数据融合树问题等同于求解最小Steiner树的NP-C问题,所以在实际应用中需采用近似求解算法。

文章在分簇基础上采用GITDC算法和DFS(Depth First Search)算法相结合求解该问题。

定义1融合子树,在每个簇中利用贪婪搜索算法构成的树为融合子树。

定义2融合点(数据融合点),进行数据融合处理的节点。

3 算法设计
DATCA算法分为两个阶段:簇建立阶段和路由建立阶段。

3.1 簇建立阶段
在成簇阶段,采用基于权值的分簇算法对网络进行分簇。

文献[11]中介绍了一种基于权值的分簇算法,但该算法适用于Ad hoc网络,所以文中做了一些改进,使之更适合于无线传感器网络。

文中设计了如下的权值计算公式:
式(4)中,Wi是权重值;C1、C2、C3是权值系数(C1+C2+C3=1)。

Ei是节点当前可用能量;Pi是节点i成为簇首时,簇内的通信总能耗;
Correlation_Degreei是相关度函数,表明节点i与邻居节点的相邻程度。

公式(5)中r为保证网络的连通概率不小于1-ε时的通信距离[12]:a为一圆形区域的半径,n为网络中的节点数。

具体步骤:首先,在获知邻居节点相关信息后,节点先根据公式(4)、(5)计算自身的权值,并按有效通信半径向邻居节点发送消息。

然后,各节点将接收到的邻居节点的消息中的权值与自身权值相比较,如果自身权值是最大的,则宣布自己
为簇头节点;否则,等待。

最后,非簇头节点根据与簇头节点的距离选择加入一个簇。

文中,簇头节点的功能主要是收集簇内节点的剩余能量和维护簇内的拓扑结构,避免了传统的分簇算法在簇头集中数据并进行发送,导致簇头节点能量消耗过快的缺陷。

3.2 路由建立阶段
3.2.1 路由建立
首先,传感器节点通过算法1获知到Sink节点的最少跳数和能耗;然后,当前簇头根据算法2构建簇内数据融合子树和簇间路由。

算法1、算法2的流程图如图2、图3所示。

3.2.2 路由维护
(1)新节点加入:发出Join消息,收到的节点应答该消息,新加入节点选择到Sink节点代价最小的一个节点作为父节点,并广播该消息。

(2)节点失效:如果是孩子节点,则父节点将该节点从Childlist中除去;如果是父节点,则孩子节点从邻居节点中选择到Sink节点代价最小的一个节点作为父节点。

3.3 算法性能分析
假设网络中有n个节点,服从均匀分布,如果分成k个簇,则每个簇n/k个节点。

定理1 DATCA算法的时间复杂度为O(max{n,n2/k2})。

证明因为GITDC算法在树上添加任意一个节点时都要对网络中所有节点进行判断,所以时间复杂度为O(n2);文中算法的时间复杂度由算法1和算法2的时间复
杂度确定,算法1最坏的一种情况是从Sink节点发出的消息通过一条单链形式将所有节点遍历一次后返回,所以算法1的时间复杂度为O(n);算法2的时间复杂度由GITDC算法的复杂度确定,为O(n2/k2)。

综上,DATCA 算法的时间
复杂度为 O(max{n,n2/k2})。

图2 算法1流程图
图3 算法2流程图
定理2 DATCA算法的消息复杂度为O(max{n,n2/k})。

证明在GITDC算法中,如果更新网络拓扑图,需要向其他节点广播自己的地理位置,则共需要n×n条控制消息,所以消息复杂度为O(n2);而文中算法构建簇的消息数为n×p+n×p+k+n-k=(2×p+1)n;算法 1 的消息数为2×n,算法
2 的消息数为k×(n/k)×(n/k),所以消息数是(2×p+3)n+n2/k,则算法DATCA的消息复杂度为O(max{n,n2/k})(p为节点成为簇头的概率)。

从上面证明可看出,与GITDC算法相比,文中算法具有更少的控制消息和更低的
时间复杂度。

定理3 DATCA算法构成的是一颗最小生成树。

证明采用算法GITDC构建的簇内子树具有n/k-1条边,所有子树具有k(n/k-1)条边,将所有子树连接起来需要k-1条边,所以该生成树具有n-1条边,从算法1、算法2可知该生成树为具有n-1条边的最小生成树。

4 仿真研究
用于仿真的网络具有下面性质:
(1)传感器节点和Sink节点在部署后均不再发生位置移动,且传感器节点能量
有限;
(2)传感器节点同构,均具备数据融合的功能;
(3)传感器节点可以自由调整其发射功率以节约能量消耗,信道对称。

仿真区域大小为100 m×100 m,选择边界上一个节点为Sink节点,其余节点作
为源节点,节点数为70~120,每个节点初始能量为1 J,节点有效通信半径为
25 m。

采用文献[3]中参数设置:Eelec=50 nJ/bit,Eamp=100 pJ/(bit·m2),
数据融合能量消耗EDF=5 nJ/bit,传输的数据包固定为1 000 bit。

节点间传输的数据都能正确接收。

4.1 能耗比较
图4为DATCA、AC和GITDC算法单次通信能耗的比较。

图4 通信能耗比较图
从图4看出,DATCA与GITDC能耗较低,AC算法能耗最高。

虽然AC算法能按到Sink节点的最少跳数路径传输数据,但是它不执行数据汇聚,所以能耗较高。

图5为出现第一个失效节点时网络中剩余节点的平均能量比较。

图5 平均能量比较图
从图5可以看出,与AC算法相比,其余两种算法更能均衡节点能耗。

这是由于AC算法过度使用中间节点转发数据,导致中间节点能量很快消耗殆尽,当中间节点失效时,别的节点还剩余较多能量,所以平均能量还保持在较高值;而其余两种算法利用融合树进行数据传输,在中间节点通过数据融合降低节点数据的发送量,所以在第一个节点失效时,节点平均能量保持在一个较低的值,部分起到均衡节点能耗的作用。

4.2 网络生存期比较
图6为DATCA、AC和GITDC算法网络生存期的对比情况。

网络生存期定义为第一个节点失效时的时间。

图6 网络生存期比较图
从图6可以看出,DATCA算法在多数情况下优于其余两种算法,在节点数较多情况下,性能更好。

AC算法因为不执行汇聚操作,所以部分中间节点将转发大量数据,导致能量消耗过快而失效,它的网络生存期最短。

5 结语
针对传感器节点能耗集中在数据传输上,提出了一种基于簇的数据融合树构建算法
DATCA。

该算法利用数据融合技术处理网络中的冗余信息,因此既降低了网络中数据通信量,又提高了节点能量的使用效率,与文献[8]中算法相比,可获得更好
的性能。

但采用数据融合技术,不但会增加汇聚节点的能耗,而且会增加网络延迟时间,今后将在传感器节点之间的协同,以及如何降低时延上作进一步研究。

【相关文献】
[1]Estrin D.Wireless sensor networks tutorial Part IV:Sensor network
protocols[R].Mobicom,USA,2002:23-28.
[2]孙利民,李建中,陈渝,等.无线传感器网络[M].北京:清华大学出版社,2005:27-28.
[3]Intanagonwiwat C,Govindan R,Estrin D.Directed diffusion:A scalable and robust communication paradigm for sensor networks[C]//Proc of ACM MobiCom,Boston,MA,2000:56-67.
[4]Heinzelman W,Chandrakasan A,Balakrishnan H.An application-specific protocol architecture for wireless microsensor networks[J].IEEE Transactions on Wireless Communications,2002,1(4):660-670.
[5]Akyildiz I F,Su W,Sankarasubramaniam Y,et al.A survey on sensor networks[J].IEEE Communications Magazine,2002,40(8):102-114.
[6]崔艳荣,曹加恒,何宁,等.能量高效的传感器网络数据查询路由[J].计算机应用研究,2008,
25(2):562-564.
[7]Heinzelman W R,Chandrakasan A P,Balakrishnan H.Energy-efficient communication protocol for wireless microsensor networks[C]//Proceedings of the 33rd Annual Hawaii International Conference on System Sciences,Jan 2000:3005-3014.
[8]Krishnamachari B,Estrin D,Wicker S.Modelling data-centric routing in wireless sensor networks[C]//Proceedings of IEEE,Infocom,2002:2-14.
[9]李翔,阎新芳,孙雨耕,等.无线传感器网络中簇树骨干网的构建及算法[J].传感技术学报,2006,19(4):1279-1283.
[10]孙大洋,刘衍珩,王爱民.一种基于能耗度量的融合树构建算法[J].计算机研究与发展,2008,45(1):104-109.
[11]Chatterjee M,Das S K,Turgut D.WCA:A weighted clustering algorithm for mobile ad hoc networks[J].Journal of Cluster Computing,2002,5(2):193-204.
[12]Mhatre V,Rosenberg C.Design guidelines for wireless sensor networks:Communication,clustering and aggregation[J].Ad Hoc Networks,2004,2(1):45-63.。

相关文档
最新文档