APP下载

基于能量优化的WSN数据收集和融合算法

2013-12-07刘三阳

电子技术应用 2013年5期
关键词:路由基站能耗

丁 娟,刘三阳,张 平

(西安电子科技大学 理学院,陕西 西安 710071)

无线传感器网络 WSN(Wireless Sensor Network)[1]是将大量微型传感器节点随机部署在目标区域,以自组织方式形成的网络,其目的是让这些节点协作地采集和处理网络覆盖区域的信息,并传递给控制管理中心。WSN将现代通信技术、微型传感器技术和网络技术有机融为一体,在军事、医疗、环境监测、智能交通等许多领域有极高的应用价值和广阔的应用前景。由于受到节点能耗的限制,如何在近乎苛刻的能源条件下延长网络生命成为WSN首要考虑的问题。

1 LEACH协议简介

LEACH(Low Energy Adaptive Clustering Hierarchy)[2]是一种低功耗自适应分层路由协议。该协议中网络运行时间按“轮”计量,每轮循环分为簇的建立和数据通信两个阶段。网络节点动态成簇,簇头负责收集、融合成员节点采集的数据,并将融合后的数据直接发送给基站。LEACH协议一方面能够保证各节点等概率地担任簇头,使得网络能量分布相对均衡;另一方面运用TDMA的MAC层机制来减少簇内数据发送冲突,降低了能耗。但该协议仍存在以下几点不足:(1)簇头的选择未考虑节点的距离和剩余能量因素,易导致簇头分布不均或能量低的节点当选簇头;(2)该协议提到了数据融合的概念,但并未给出具体的算法;(3)簇头与基站采用一跳通信模式,如果某个簇头距离基站较远,能耗会大幅增加,影响网络性能。

[3]针对突发事件监测网络利用蚁群算法构建数据收集链路,参考文献[4]提出了基于区域的簇头选择和采用贪婪算法构建簇间链式路由的多跳数据传输方法。以上两种方法节能效果都很显著,但单簇头使得网络的鲁棒性较差。参考文献[5]提出了基于自适应数据融合的路由协议,延长了网络时间,但未考虑到簇头的选择及其路由方式。

针对LEACH协议的不足,综合考虑簇头的选择、数据融合方法以及簇头与基站的通信方式三个方面,提出了改进算法LEACH-E。

2 改进的数据收集和融合算法

2.1 模型假设

本文对网络模型作如下假设:(1)基站固定;(2)所有节点同构,能量有限,具有定位功能以及数据融合能力;

(3)节点可调节功率大小与基站点通信;(4)节点能量消耗采用一阶无线电模式[6]。

2.2 算法描述

2.2.1 簇的建立

节点n产生随机数,当该值小于门限值T(n)时,该节点成为本轮的一个簇头,否则节点等待簇头发出公告,根据信号的强弱来决定自己要加入的簇。为避免节点因任务过重而过早死亡,LEACH-E算法中将T(n)定义如下:

其中,p为网络中簇头个数的百分比,r为当前轮数,G为最近 1/p轮未当选过簇头的节点集,Eo和 Ecureent分别是节点初始能量和当前能量。

同时,为了避免产生的簇头过于集中,甚至导致簇内通信彼此干扰[7]的情况出现,一旦选出的两个簇头间距小于通信半径的1/4,就取消其中能量较小的节点本次担任簇头的资格。

2.2.2 簇头的数据融合

数据融合[8]是将来自不同节点的信息中冗余、无效和可信度较差的部分删除,并处理成一个较小的、内容等价的信息,从而在满足用户需求的条件下最小化网络传输量。在WSN中,相比于数据的采集和处理,节点的能量主要消耗在无线通信模块,而数据融合正是一种能极大程度地减少通信量从而降低能耗的技术。

由于同一个簇内节点分布相对集中,不同节点一定时间内采集的数据有极大的相关性,本文采用主成分分析法对数据降维,即将多个原始变量线性组合为少数几个互不相关的综合变量(即主成分),从而使这些主成分能够反映原始变量的绝大部分信息,且所含的信息互不重叠。其具体步骤如下:

(1)簇头每隔一定时间收到一次N个成员节点发送的数据,当收到 M次后,构成原始数据矩阵 XM×N,其中 xij表示第j个节点第i次发送的数据。

(2)对 XM×N进行标准化处理得到, 记 μ1×N为均值向量,σ1×N为标准差向量。

(3)求标准化后变量的协方差矩阵 SN×N。

(4)求 S 的特征值 λ1≥λ2≥…≥λN>0及相应的单位正交特征向量 A=(a1,a2,…,aN)。

(6)计算标准化的原始数据在提取出的特征向量上的投影Y=。

(7)数据的重构。簇头将得到E、Y、μ、σ发送给基站,基站对数据进行重构,计算D=YET,同时将μ扩展成UM×N,其中U的每一行均由μ构成,将σ对角化为Σ,令X*=DΣ+U,即得到原始数据的近似。

2.2.3 簇间的路由

由能量模型可知,节点间路径越短,其通信能耗就越小。基于WSN拓扑结构不断变化的特点,本文采用蚁群算法建立簇间路由,从而将簇头的一跳通信改为多跳,在缩短单跳距离的同时保证簇头到基站的路径之和最短。

蚁群算法[9]是一种自组织的、并行的算法,其基本思想是蚂蚁能够根据相邻簇头间信息素的积累建立正向反馈机制找到通往基站的最短路径。首先,随机分配m只蚂蚁到n个簇头上,每条路径上初始信息素相等,每只蚂蚁根据路径上的信息素浓度、距离以及剩余能量独立选择下一跳节点,t时刻蚂蚁k从簇头i到相邻簇头j的转移概率定义为:

其中,Ni为节点i在通信半径以内的节点即邻居节点,Mk为第k只蚂蚁已走过的节点集,启发式因子ηij=1/dij2,τij、dij分别为两簇头间的信息素和距离。在所有蚂蚁完成一次搜索之后,按以下规则更新最优路径上的信息素量:

其中,ρ为信息素挥发因子,Q为信息素强度,Lk表示第k只蚂蚁在本次循环中所走路径的总长度。当算法运行达到最大迭代次数后,选择值最小的作为当前最优解,簇头将沿着得到的最优路径通过多跳方式将数据传给基站。

由于蚁群算法是一种启发式算法,下一跳节点的选择有一定的随机性,因此不能保证每次都能找到最短路径,这样可能会增加传输延迟和节点能耗,但同时也避免了一定时间内总是沿着唯一一条最短路径进行通信,进而导致该路径上的簇头承担了太多的发送任务而过早死亡的情况出现。

3 仿真实验与分析

本文运用MATLAB7.0进行仿真,分别从簇头向基站发送数据包的数目、节点的平均能耗和网络存活节点个数三个方面来比较改进前后算法的性能。

在100 m×100 m的区域内随机分布100个节点,基站位于(50,175)。具体参数设置如表1。

图1是簇头发送给基站的数据包数目。当簇头基于主成分分析法对数据融合之后,原本每个簇头要发送M×N个数据,如今只需传送(M×p+N×p+2N)个数据,从而大幅地减少了数据通信量,缓解了网络拥塞。图2直观地表明LEACH-E算法能有效减少节点的平均能耗。图3是网络存活节点个数随轮数的变化情况。LEACH中网络运行至第449轮时第一个节点死亡,当LEACHE在560轮时才出现死亡节点,前者在518轮时半数节点死亡,而后者在599轮时50%节点死亡,可见改进后的算法能将网络周期延长15%左右。这正是由于LEACH-E充分考虑了簇头的位置分布、剩余能量、通信方式等因素,使网络能量被均匀分担到每个节点上,避免了部分节点负载重而过早失效,从而有效延长了网络的生存时间。

表1 仿真参数表

本文基于LEACH协议,针对簇头的选择、数据融合算法以及簇头到基站的通信方式做了一系列优化。实验结果表明,该算法相比于LEACH协议能有效地节省节点能耗,保证网络负载均匀,延长网络生命。但本文未考虑数据融合带来的延迟问题,因此如何平衡数据融合的时效性是进一步探索和研究的方向。

参考文献

[1]王殊,阎毓杰,胡富平.无线传感器网络的理论及应用[M].北京:北京航空航天大学出版社,2007.

[2]HEINZELMAN W,CHANDRAKASAN A,BALAKRISHNAN H.Energy-efficient communication protocol for wireless microsensor networks[J].IEEE Computer Society,2002:3005-3014.

[3]杨靖,熊伟丽,秦宁宁,等.用于无线传感器网络的高效能数据收集算法[J].吉林大学学报(工学版),2011,41(6):1720-1725.

[4]李雅卿,李腊元.WSN中LEACH路由协议的改进及其仿真[J].计算机工程,2009,35(10):104-106.

[5]王培东,袁召兰,王瑜.基于自适应数据融合的 LEACH路由协议[J].电子技术应用,2011,37(7):123-126.

[6]廖明华,张华,谢建全.基于蚁群算法的 WSN能量预测路由协议[J].计算机工程,2012,38(3):88-90.

[7]张路桥,朱清新,吕涛,等.无线传感器网络中考虑干扰的拓扑优化[J].电子科技大学学报,2011,40(4):564-567.

[8]孙利民,李建中,陈渝.无线传感器网络[M].北京:清华大学出版社,2005:260-272.

[9]Duan Haibing.Ant colony algorithms:theory and applications[M].Beijing:Science and Technology Press,2007.

猜你喜欢

路由基站能耗
120t转炉降低工序能耗生产实践
能耗双控下,涨价潮再度来袭!
探讨如何设计零能耗住宅
铁路数据网路由汇聚引发的路由迭代问题研究
一种基于虚拟分扇的簇间多跳路由算法
日本先进的“零能耗住宅”
探究路由与环路的问题
基于移动通信基站建设自动化探讨
可恶的“伪基站”
基于预期延迟值的扩散转发路由算法