张长宏
(青海民族大学计算机学院 青海 西宁 810007)
无线传感器网络(wireless sensor network,WSN)是由任意部署在监测区域的节点组成,无基础设施、通过无线通迅方式形成的自组织多跳的网络系统。在军事、环境监测、智能家居和城市交通等方面的应用前广阔,成为当前的研究热点之一。但这些传感器节点体积小,能量有限,不能更换电池,因此要最大限度延长网络的生命周期。分簇算法因具有良好的扩展性,能量高效而成为研究热点。
文献[1]中提出的LEACH协议是一个同构分簇协议,该协议中随机、分布式的选取簇头节点的,并周期性的轮换簇头节点,有效的延长了网络的生命周期。文献[2]提出的SEP算法是对LEACH协议进行改进,使其适应异构网络。但两者都没有考虑节点的剩余能量。本文提出的算法是对SEP算法的簇头的改进。
LEACH是最早设计分布式成簇协议,周期性轮换簇头,每轮分为簇的建立阶段和数据传输阶段两个阶段。为节省能量,一般数据传输持续时间要大于网络建立的时间。
簇的建立阶段完成簇头的选择和非簇头节点按就近原则加入对应的簇。簇头的选择是分布式进行,每个节点产生一个随机数,如果选定的值小于阈值Ki(t),则这个节点就当选为簇头。Ki(t)由公式(1)得出,其中r表示已完成的轮数,p为簇头节点占总节点的比例,G表示节点在前r mod(1/p)轮没有当选中簇头节点的集合。
选出的簇头发布消息成为簇头,非簇头节点根据收到的消息加入对应的簇,并发消息给簇头,簇头为按TDMA方式每个簇内节点分配时隙。
数据传输阶段每个节点按所分配的时隙传输数据给簇头节点,簇头节接收簇内节点发来的数据并融合处理提交给基站。节点在空闲的时隙进入休眠状态,减少了监听所消耗的能量。提交给簇头节点数据进行融合再传输减少了数据流量,降低了能耗。
SEP算法对LEACH协议改进使其适应异构网络。异构网络中节点有两种,一种是普通节点,另外一种是高能量节点,对高能量节点和正常节点设置不同的概率pa和pn,使得m*pa+(1-m)pn=p, 其中pn=p/(1+αm),pa=p(1+α)/(1+αm),m是高能量节点的比例,α是高能量节点比普通节点能量高出的倍数,这样每轮选出的平均簇头数没变,高能量当选簇头的机会增大,普通节点当选簇的机率减小,从而使所有节点能均衡的消耗能量。其它与LEACH协议相同。
根据前面的分析可知,两种算法的簇头都是随机产生的,因每个节点所处的位置不同,每一轮每一个节点所消耗的能量是不同的,周期性轮换簇头将会使一些低能量节点快速死亡,两种算法簇头的选择没有考虑节点的剩余能量,缩短了网络的稳定期。本文在SEP算法的基础上提出了一种新的协议。协议分为两个阶段,簇的建立阶段和数据传输阶段,簇头建立阶段对节点当选簇头加了一定的限制,如当节点能量小于一定值时,只能采集和传送数据,不能当选簇头。另外,簇头的选择时引入了节点剩余能量和估计能量的比值因子EE,对SEP协议中的阈值进行优化。当选簇头的节点发消息通知其它节点,其它节点根据收到的信号选择最强的簇头为自己的簇头,簇头根据收到的信息按TDMA方式为每个节点分配时隙,簇的建立阶段结束。数据传输阶段与LEACH协议相同。
网络由N个随机部署的传感器节点组成,同时有以下假设:(1)传感器网络为高密度静态网络,传感器节点和基站部署后均不再发生位置移动,基站唯一,而且基站的能量是无限制的;(2)节点具备数据融合功能,每个传感器节点都有一个唯一的标识(ID);(3)节点可以根据接收方距离的远近调整其发射功率以减小能量消耗。协议采用的一阶无线电模型,当发送距离较近时(d≤d0),采用自由空间信道模型;当发送距离较远时(d>d0),采用多路径衰减模型。具体如下:传感器节点发送l bit数据消耗的能量为:
传感器节点接收l bit数据消耗的能量为:
在簇的建立阶段引入了节点剩余能量和估计能量的比值EE来优化阈值,计算如公式(4)。SEP-E协议每轮先检测自己的能量值是否小于一个特定值,如小于初始能量的0.05%,则退出簇头的竞争;如大于则不同类型的节点按公式(5),(6)计算其阈值,高能量节点和普通节点分别产生一个0到1的随机数与阈值Ki(tn),Ki(ta)进行比较,小于阈值的节点选为簇头。计算公式如下:
公式(4)中,r为当前运行的轮次,N0为无线传感器网络的预计运行最大轮次,E0为节点的初始能量,Ei为节点i的剩余能量。每个节点产生的随机数与Ki(tn)或Ki(ta)相比较,剩余的能量越大,比值EE越大,当选簇头的可能性就越大,反之剩余的能量越小,比值EE越小,当选簇头的可能性就越小,从而避免了低能量节点能量快速耗尽。当选簇头的节点向网络广播信息,通知产生了一个新簇头,接收到消息的节点根据信号的强度选择一个簇头加入,并告知簇头节点,簇头按TDMA方式为每个簇内节点分配时隙。
传感器节点将采集的数据按照簇头分配的时隙传送到簇头节点,簇头节点进行数据融合后将结果直接发送到基站。
图1 网络生存周期比较
实验采用MATLAB进行仿真,模拟实现了LEACH,SEP,SEP-E进行了性能比较。仿真主要参数如下:100个节点随机分布在100m*100m的区域中,基站位于(50,175),簇头的概率p=0.05,SEP-E中的节点的预计运行最大轮次为N0=2000轮,节点初始能量E0=0.5 J,Efs=10 pJ/bit/m2,Emp=0.0013 pJ/bit/m4,数据长度l=4000 bit,Eelec=50nJ/bit,数据融合能量EDA=5 nJ/bit/sysnal。图1给出了LEACH,SEP与SEP-E协议网络生存周期的比较,以仿真轮数代表时间,LEACH,SEP,SEP-E三种算法第一个节点死亡出现的轮数分别为684,817,895, 半数节点死亡的轮数分别为907,1051,1123,最后一个节点死亡的轮数分别为大于5000,5000,5000。从图中我们可以看出SEP协议第一个节点死亡的轮数比LEACH提高了19%,而SEP-E协议比SEP协议提高了9.5%。半数节点死亡的轮数SEP算法比LEACH提高了15.8%,而SEP-E比SEP算法提高了7%。而最后一个节点SEP-E算法比SEP算法只剩一个节点的轮数要小,而LEACH算法则在5000轮时还有6个节点存活。
在无线传感器网络中,将从开始到第一个节点死亡的时期称为稳定期,该值越大,网络的性能越好。将第一个节点死亡到全部节点死亡称为不稳定期,不稳定的长短表明了网络的收敛性,不稳定期越短,网络性能越好。从图中我们还看到SEP-E比SEP协议有更好的收敛性。
根据结果分析,主要的原因是对于簇头的优化避免了一些低能量节点提前死亡,使能量的消耗尽可能均衡使网络有了较长的生命周期。
本文分析了LEACH和SEP协议,在此基础上提出了一种新的路由协议SEP-E,仿真结果显示,网络生命周期有了较大的提高,而且在收敛性方面也优于SEP,从而提升了异构网络性能。今后将结合实际的应用研究更适合的协议。
[1]W.R.Heinzelman,A.P.Chandrakasan,and H.Balakrishnan.Energy efficient communication protocol for wireless microsensor networks[C].Maui,Hawaii:The 33rd Hawaii International Conference on SystemSciences(HICSS-33),2000.
[2]G.Smaragdakis,I.matta.Sep:a stable election protocol for clustered heterogeneous wireless sensor networks//http://csr.bu.edu/sep/SEP_SANPA04.pdf.