无线传感网络基于事件响应型的算法
2016-10-14李为为
李为为
无线传感网络基于事件响应型的算法
李为为
(阜阳职业技术学院, 安徽 阜阳 236000)
针对无线传感器网络用于大规模养殖业对突发事件监测的情形,提出一种事件响应型的分簇算法。与已有的主动型算法不同的是,本文提出的算法只有节点感知突发事件的发生,才会传递信息到汇聚节点,通过仿真实验表明,采用这样的方式,可以监测一些突发事件,减少网络通信量,延长网络的生命周期。
传感器网络;响应型分簇算法;大规模养殖业
无线传感器网络(wireless sensor networks,WSN)是一种多跳分布式的自组织网络。它通过网络中的节点协作的感知,将节点采集到的数据进行处理,并通过无线的方式把信息发送到用户终端。WSN节点对成本和功耗要求低的特点给信息世界带来了新的亮点,这项技术的影响力很多人认为能够与因特网相比。相比因特网能够访问任何区域的信息,传感网将能进一步扩展人类与现实世界的联系[1,2]。WSN节点体积小,能量有限,网络中部署的节点数据量大,而且部署的节点有的环境比较复杂,很难人为更换电池,因此目前对无线传感器网络的研究热点主要是如何做到减少能耗,延长使用时间。由于网络中的节点主要是通信侦听并消耗传输能量,因此设计能量高效的路由协议成为研究的一个趋势。
路由协议是解决数据传输路径问题,它完成将数据分组从源节点转发到目的节点的功能,是无线传感网的关键技术之一。与传统通信网络不同,无线传感网中没有基础设施和全网统一的控制中心,是一种分布式的自组织网络,必须采取分布式的方式获取网络拓扑信息[3]。由于无线传感网是由大量的结构简单的低成本、能量受限、通信能力受限、存储和处理能力受限的节点构成,网络拓扑结构动态变化。所以,传统的自组织网络的路由协议不能直接使用,必须针对传感网的特点和应用设计出高能效的传感网路由协议。这里提出的主动型网络主要用来监测某个特定事件发生,传感器节点只有在节点监测到相应事件时才会向汇聚节点发送信息,诸如对养殖场周围安全的监测。只有养殖场周围有事件响应,例如有偷盗等行为,传感器节点采集到特定的事件发生,才会给汇聚节点传送信息,这样节点传输信息的能耗可以得到节约,进而可以实现能量消耗的均衡性。
目前,比较有代表性的路由算法有平面的洪泛法、闲聊法、SPIN法;基于分簇的LEACH协议、PEGASIA协议、TEEN协议;基于查询的谣传路由、定向扩散路由协议;基于QOS的SPEED协议、SAR协议、ReInForM协议;基于地理位置的GAF路由协议、GEAR路由协议、GEM路由协议。
上述基于事件响应的路由算法可以用于大规模养殖业突发事件可能发生的情况。在养殖区域,当没有事件发生时,节点进行区域的监测,只有监测到突发事件发生时节点才向汇聚节点发送数据。所以在LEACH[4]算法的基础上,可以设计出无线传感网络基于事件响应的协议,同时考虑节点根据与汇聚节点的距离远近来决定是否接受簇头信息。提到的LEACH算法的中心思想是,每一轮通过一定概率循环选择簇头节点,通过网络中的节点轮换作为簇头,从而平衡整个网络中的能量消耗。
1 事件响应型算法模型
本文提出的算法主要用于大规模养殖业突发情况发生的场合[5]。针对养殖业这样的场景建立如下图1所示的基于事件响应的模型。
图1 基于养殖业的传感器网络算法模型
在图1中,簇头节点负责将信息传递给汇聚节点,一轮完成后节点将信息传递给汇聚节点。采用了LEACH算法中的分簇机制,网络中的节点采用数据压缩技术,减少了节点发送信息的数据量;采用LEACH算法中随机等概函数来选择簇头节点,防止出现簇头节点能量消耗过快的情况。
所提出的算法的核心思想如下:没有监测到突发事件时,节点随机部署在养殖场区域,采用改进的LEACH算法进行区域的监测,确保对区域的完全覆盖。当节点监测到有突发事件发生时,簇头节点才会向汇聚节点发送信息,因此减少了不必要的能量消耗。当监测区域不再有突发事件发生时,节点重新采用改进的LEACH算法进行区域监测。该算法把簇头节点发送和接受节点的能耗、节点加入簇以及向簇头节点发送信息的能耗都进行了详细设置。
2 基于事件响应的调度算法
2.1基本假设
对于分簇的算法,簇头节点和非簇头的成员节点是网络中的两大类节点。簇头节点的选择,可依据一定的协议算法,簇头节点可以控制或者管理簇内的其它节点,可以把簇内节点的信息进行收集和融合,簇头节点能够相互传递信息。本文提出如下假设:每个节点部署后,初次根据LEACH算法选择簇头节点,节点通过判定自身到汇聚节点与到簇头节点的距离来决定是否加入簇;为方便接收信息,汇聚节点设置在网络中心;初始时传感器网络中的节点能量相同,汇聚节点有足够的能量来接收簇头发送的信息[6];每一轮通信结束后,计算网络中的节点能量消耗,下一轮重新选择簇头节点。
2.2 相关说明
算法和仿真中用到的符号描述如下。
节点数:N;
簇头所占百分比:p;
数据包长度:packetLength;
控制包长度:ctrPacketLength;
传输放大器类型:Efs,Emp;
数据聚合能量:EDA;
初始能量:Eo;
2.3 算法步骤
描述提出的算法如下:
a) 建立簇。网络初始部署后随机产生0-1的随机数,将这个值与概率值T(n)如果比这个值小,节点广播通知网络内的节点自己成为簇头的消息。网络中把当选过簇头的节点T(n)的值设为0,这样已经当选过簇头的节点在下一轮选择中不再参与竞争簇头,下一轮的循环从没有当选过簇头的节点中选择簇头。为了减少发送信息的能量消耗,网络中的节点通过比较自身到汇聚节点和簇头节点的距离来判定是否加入簇,并给簇头相应回复。
b)传输数据阶段。簇头节点在得到网络中节点加入簇的回复信息后,簇头就会为簇头中的节点分配一个时隙,时隙的分配通过创建TDMA表来分配。分配完成后,簇头节点广播告诉簇内成员这张表的信息。为了降低不同簇头节点的相互干扰,不同的簇采用不同的TDMA方式来通信
c) 再次成簇。簇头节点接收到簇内成员节点的信息后,簇头节点采用数据融合技术将融合后的信息传递给汇聚节点。经过几轮后,网络中的节点重新回到建立簇的阶段,开始循环选择簇头过程。
3 仿真结果与分析
计算簇头和普通节点能量消耗,我们仿照文献[4]的能量模型,并且设置能量阀值[7]。如果接收能量值低于这个阀值,则证明没有突发事件,簇头节点将不会向汇聚节点发送信息;否则,簇头节点向汇聚节点发送信息。
为了验证所提出算法的优越性,我们比较LEACH算法与改进后的算法进行对照,并仿真对比这两种算法中节点剩余平均能量和存活节点数目。网络的部署区域假设是100m×100m的正方形区域,网络中部署的节点数目为300。网络中传感器节点的初始能量设置为0.5J,汇聚节点在网络中心(50,50)的位置。为了得到更加准确的结果,仿真中取100次运行程序结果的平均。
仿真场景1:
比较节点剩余平均能量
300个节点均匀分布在正方形区域,网络运行1300轮。节点剩余平均能量如图2所示,其中蓝线为LEACH算法,红线为提出的事件响应算法。
图2 节点剩余平均能量对比
图2显示了当节点数为300时,两种算法对应的节点平均剩余能量。图2可以看出,当网络运行在1000轮次以内时,提出的算法节点的剩余能量大于LEACH算法。
图3 存活节点数目对比
仿真场景2:
存活节点数目对照,参数设置如下:
传感器节点数:300个;
网络运行论数:800-1600;
图3显示了两种算法对应的存活节点数目结果。图3可以看出,当网络运行从800到1100轮次时,提出的算法的存活节点数远大于LEACH算法。但由于提出算法也具有不足之处,在1100到1200轮次存活节点数目小于LEACH算法。
本文提出了一种传感器网络事件响应型的调度算法。节点只有在有特定事件发生后才会向汇聚节点发送信息,从而减少更多发送信息的能量消耗,延长了网络生命周期。
[1] 马祖长, 孙怡宁, 梅涛. 无线传感器网络综述[J]. 通信学报, 2004, 25(4): 114-124.
[2] 孙利民, 李中建, 陈渝等. 无线传感器网络[M ]. 北京: 清华大学出版社, 2005.
[3] Ye W, Heidemann J, Estrin D. An energy-efficient MAC protocol for wireless sensor networks.[C], 2002, 1567-1576.
[4] Deng S, Li J, Shen L. Mobility-based clustering protol for wireless sensor networks with mobile nodes[J].
[5] 石高涛, 廖明宏. 大规模无线传感器网络随机休眠调度节能机制[J]. 计算机研究与发展, 2006, 43(4): 579-585.
[6] Heinzelman W, Chandrakasan A, Balakrishnan H. An application-specific protocol architecture for wireless microsensor networks[J].IEEE Transa-actions on Wireless Communications, 2002, 1(4): 660-670.
[7] 陈宏滨,冯久超.基于阀值判决的无线传感器网络混沌信号重构[J].西南大学学报(自然科学版),2010,32(1):124-128.
2015-10-31
安徽省质量工程项目“Asp.net网络编程设计”(2013gxk120)。
李为为(1984-),女,河南周口人,阜阳职业技术学院助教,硕士。主要研究方向:传感器网络拓扑控制。
TN915
A
1672-4437(2016)01-0071-03