HOU Xin,ZHANGDongwen,ZHONGMing
(1.Zhejiang Gongshang University College of Computer Science and Information Engineering,Hangzhou 310018,China; 2.China United Engineering Corporation,Hangzhou 310018,China)
Data Aggregation ofWireless Sensor Network Based on Event-Driven and Neural Network*
HOU Xin1*,ZHANGDongwen1,ZHONGMing2
(1.Zhejiang Gongshang University College of Computer Science and Information Engineering,Hangzhou 310018,China; 2.China United Engineering Corporation,Hangzhou 310018,China)
To reduce energy consumption and data redundancy of wireless sensor network(WSN)emergency monitoring,a data fusion algorithm EBPDF(Event-Driven Back-Propagation Data Fusion Algorithm)based on event-driven dynamic clustering scheme and BP neural network is proposed.Dynamic clusters as well as cluster head election process is based on the severity of the incidentand the node residual energy.The life cycle and coverage of the cluster are adjusted dynamically according to the urgency of the event and the node residual energy.Meanwhile the hierarchy of the neural network is combined with the cluster structure ofWSN in order to reduce the network traffic.The threelayer neural network model is applied in the dynamic cluster structure,so a few eigenvalueswhich is sent to the sink node can be extracted from the raw data collected by the neural network algorithm.Themethod prolongs the network life cycle,reduces the redundancy of data transmission.The simulation experiments show that,compared with LEACH algorithm,EBPDF can reduce network traffic and the number of node communication effectively.
WSN;data fusion;event-driven;BP neural network;dynamic clustering scheme;LEACH algorithm
无线传感器网络WSN(Wireless Sensor Network)可以协同大量的无线同构节点对网络覆盖区域的环境信息进行探测和感知。WSN网络节点通常采用电池供电,能量有限且很难得到有效的补充;节点的部署和监测区域经常交叉重叠,致使事件重复监测;为降低外界干扰而配置的冗余节点造成链路传输的负载增加,缩短整个网络的生命周期[1]。作为上述问题的解决方案之一,本文将监测目标设置为特定事件,且节点仅在达到一定阈值的事件发生时才进入兴奋监测状态,其余时间处于低功耗侦听状态,从而有效地降低网络的能量消耗;同时,在数据传输中引入基于BP神经网络的数据融合算法,避免传输大量冗余信息,减少节点通信开销。与其他数据融合技术相比,BP神经网络具有以下优点:较强的非线性映射能力,自学习和自适应能力,泛化能力,容错能力。通过无线传感器网络所获得的初始数据进行训练得到相应的样本,可十分精确的反映网络动态。
目前无线传感网络基于神经网络的数据融合基本是通过结合路由协议来实现,如LEACH协议[2]以循环方式随机选取簇头,使网络能耗平均分配到各节点,通过构建最短路径树以实现数据融合和传输。但LEACH协议的节点都采用数据连续发送和单跳路径选择模式,不适于大范围面积监测。TEEN[3]根据突发事件对LEACH做出改进,增设软硬阈值,其分簇选举方面仍与LEACH相似;但该算法不足在于若门限值达不到节点永远不会同簇头通信,用户无法得到实时性的监测数据。文献[4]提出一种基于能量控制、睡眠调度、路径传输的拓扑控制方案,充分降低数据在路由传输过程中能量消耗。文献[5]将链路稳定性和能量管理路由策略相结合,同时为了增加节点可持续性,文章中引入可扩展路由策略,在保证网络QoS的基础上增加路径可扩展性,从而降低整体网络的路由发现开销。文献[6]对LEACH协议的分簇方案进行改进,节点在部署后首先规划虚拟簇,并固定且不再改变,并以该分簇方案为基础加入神经网络数据融合算法,从而降低数据传输量,达到节省能量消耗的目的。文献[7]提出一种数据聚合协议RDAG,该协议将无结构实时数据感知策略、等待策略以及时空相关度相结合,从而降低网络延迟,提高数据融合算法在事件驱动的动态场景下的数据传输效率。文献[8]将反向传播神经网络应用于无线传感网络模型,构建马尔科夫模型,并计算了传感器网络的生命周期,该算法能够准确给出无线传感网络的最长生存时间并有效的降低了计算复杂度。文献[9]提出将神经网络的层次结构加入到WSN的分簇结构中,构造出一个层次结构与神经网络相结合的数据融合模型。经仿真对比该模型能够延长网络节点生命周期,降低通信开销。但该模型并没有考虑突发事件特征、事件严重程度和节点剩余能量。
节点数据传输有如下问题:节点在部署时具有较高的交叉和重复覆盖度,导致监测区域内的监测数据具有较高的相似性,以致节点在数据传输时会额外传输大量冗余数据,造成节点能量开销较高;监测区域内若节点一直处于监测状态,且没有特殊事件发生时,监测到的数据绝大部分为重复性监测,且实际性意义较低,节点若一直处于监测状态,其能量消耗也会增加。根据上述情况,本文改进原有的LEACH和TEEN协议,在簇结构建立和簇首选举过程中,引入神经网络层次结构、突发事件驱动理论和节点剩余能量方案。为进一步降低节点通信开销,本文在路由协议的构建中引入BP神经网络数据融合模型,对于突发性事件会导致节点产生大量的监测数据,利用BP神经网络模型对监测的数据进行融合处理,把得到少量的特征数据传送给汇聚节点,从而减少节点的数据通信量,平衡节点能耗,延长网络寿命。
在无线传感器网络中典型的分簇路由协议都是提前规划好簇的结构,尽管其在分簇过程中考虑了节点相对位置以及能量等因素,但很少有分簇协议将监测区域内突发事件紧急程度,发生的具体位置以及突发事件区域采集的信息的相似度作为考虑的重点。传统的分簇结构如图1所示,若事件突发区域内部节点分属于3个不同的簇,其检测到的信息具有较高的相似度,但节点的数据必须发送到不同的簇头,并由3个不同的路径传输到汇聚节点。这种分簇方案将会大大增加与事件突发区域无关的节点通信开销。
图1 传统的分簇结构
1.1 网络模型
本文假定N个无线传感网络节点随机分布在某区域A内,且该网络具有如下性质[6]:
(1)无线传感器网络节点部署后不再移动,是静态的。
(2)汇聚节点(基站)唯一,且部署在监测区域A以外的固定位置。
(3)节点能量相同且不能补充,发射功率有限;汇聚节点能量可持续供给,能够以最大功率直接向所有的节点发射信息,并可运行复杂的运算。
(4)网络节点同构,所有的节点具有相同的通信和处理能力。
(5)节点能够获知其相对位置信息。
前4项为无线传感器网络的典型设置。第5项尤为重要,节点通过获取自身的位置信息,这样其采集到的数据才具有更强的针对性,尤其是传感器网络用于监测突发事件之时,可通过节点的位置信息迅速确认事件突发地点。
1.2 无线传感器网络节点模型
从能量节省角度考虑,所有的节点初始都设置为休眠状态。节点内部会预设事件监测阈值,当突发性事件发生时,节点内部通过比较检测到的数据与预设的阈值所得差值大小,从而判断出事件紧急程度,进而控制节点进入活动或兴奋状态。处于活动的节点只进行数据的中转和传输,本身并不监测数据,若收到成簇信息或收到阈上刺激,便会转化为兴奋状态。活动节点和兴奋节点只在簇的生命周期结束后才转入休眠状态。处于兴奋状态的节点既能感知数据又可传输数据,处于活动状态的节点只进行拓扑结构的组建和数据转发,并不采集数据。节点状态图如图2所示。
图2 节点状态图
1.3 节点阈值定义
突发事件监测的一个重要特征就是事件驱动,节点通过判断监测感知的数据是否达到所设定的阈值以及事件的紧急程度,继而设置节点处于不同的状态级别。节点的阈值定义参考文献[3]和文献[10],并在其基础上提出改进和创新,详细阈值定义如表1所示。
表1 节点阈值定义
如表1所示,本文设定的阈值相对于文献[3]和文献[10],增加了事件刺激强度ESI、簇头选举标准SEC、节点剩余能量Erest以及簇头选举能量门限Elow等参数。通过增加这些预定参数可以更有效的控制算法选择簇头的范围,屏蔽掉能量剩余较小的节点,增加时间发生较强区域内的节点被选择到的概率,从而尽量选择出最符合成簇要求的节点。避免能量较低的节点由于被选择为簇头,造成因能量不足而无法正常工作。
1.4 基于突发事件严重程度的动态成簇算法
本文提出的动态成簇算法改进了TEEN协议的节点数据采集方案,能够实时性的采集事件发生时的相关数据。在基于文献[3]所述算法流程基础上,考虑了节点剩余能量和节点状态变化,详述如下:
(1)节点初始化。其过程包括:基站使用单跳通信方式向节点发送基站的位置信息;所有节点获取自身的位置信息;节点通过简单的信息交换获得邻居节点的位置信息和到基站的距离等。
(2)节点初始化后不分簇,状态均置为休眠抑制状态。
簇头节点向周围广播其成簇消息,广播内容包括其成为簇头的标志、簇头身份、传播跳数K、簇头兴奋周期CHET、簇头选举标准SCE和节点剩余能量。
(4)当节点收到簇头节点的成簇消息后,但同一区域内由于事件发生不均匀性,不同节点可能处于兴奋、活动和休眠状态,若处于这3种状态的节点收到簇头的成簇信息,其要做出不同的响应并加入最合适的簇内,节点成簇状态如表2所示。
表2 节点成簇后状态转换表
其次判断K值,若K-1>0,节点将修改K值并转发该消息。若节点收到相同的簇头的成簇信息,优先选择K值较大的路径成簇。如果已经处于兴奋状态的节点接收到不同的簇头广播消息,则根据CHET值、跳数K和剩余能量等参数值综合考虑加入哪个簇。
(5)若突发性的事件中产生如图3所示状况,剧烈事件发生区域内相邻的3个节点都达到阈值要求而成为簇头节点,这样便很容易形成冗余簇头。因此在成簇过程中,已成为簇头的节点若接收到周围节点传播的成簇信息,则其通过判断自身的事件刺激强度ESI、簇头兴奋周期CHET、簇头选举标准SCE和节点剩余能量等数值,来决定其是否继续保持簇头,或放弃成为簇头并加入情况优于自身且距离最近的簇头。同时在簇的生命周期内,簇内的节点也不会因新的较强刺激而成为簇头。
图3 突发性事件簇头冲突示意图
(6)若簇结构形成时间T>CHET,则表明簇头的生命周期结束。此时,簇头释放该簇,簇内节点转入抑制状态。若有新的突发事件发生,节点将重新竞争簇头。
神经网络具有极强的非线性逼近、分布式运算、大规模并行处理、自主训练学习等优点,特别适合处理多因素、精确度低和模糊度高的信息融合问题。无线传感器网络和神经网络有相似的地方:无线传感器网络节点具有感知处理数据的能力,相当于神经网络神经元部分;网络节点之间数据链路传输相当于神经元之间的突触完成信号传递。无线传感器网络的数据融合与神经网络都是对大量的数据进行运算和处理,都是通过特征值反应最终结果。本文根据神经网络结构建立多层次的无线传感器网络分簇结构,以便提高BP神经网络算法的数据融合效率[11-13]。
2.1 EBPDF算法的模型结构
本文提出的EBPDF(Event-Driven Back-Propagation Data Fusion Algorithm)算法基于事件驱动和剩余能量的改进分簇算法,在所监测区域内,无线传感网络根据特定的规则,于事件突发区域内选择最优簇首,并形成相对稳定的拓扑结构。在每个所形成的虚拟簇结构中,当节点检测到的数据满足所设定的阈值后,节点经由特定事件触发开始工作。EBPDA算法就是在簇内节点和簇头内部使用BP神经网络算法来达到数据处理要求。
元祐八年九月,高太后驾崩,哲宗亲政,以司马光为代表的“元祐党人”受到打击,苏轼首当其冲。短短几年,换了四五个地方,在京城几个月,换了五六个职位,终不得重用。元祐八年,又离开京城出知定州,次年再次以所作诗词多涉“讥讪”朝廷降为左承议郎,贬往惠州、儋州一带,短短的五六年中,朝廷连下五道命令,一降再降,贬为惠州宁远军节度副使、琼州别驾,由一个“从二品”的高官降到九品小官,一共降了八个品级,十四个官阶,几乎死在海南。
研究表明,BP神经网络中只要中间隐层节点数量足够多,其便具有模拟任意复杂的非线性映射的能力[13]。本文提出的改进型数据融合算法EBPDA采用单隐层的神经网络模型,该算法将三层BP神经网络应用到所形成的虚拟簇内,首先通过输入神经元对采集到的数据进行预处理,并发送到簇头节点。簇头节点通过模型的隐层和输出神经元函数对接收的数据进行处理,最终得到一组可较为精确反映WSN特征数据的特征值。该特征值通过一定的路径最终被传送到汇聚节点[6]。改进型算法的模型如图4所示。
图4 神经网络算法的模型示意图
假设无线传感器网络的一个簇内有n个多传感器成员节点,同时每个簇的成员节点采集m种不同类型的数据。则输入层的神经元有n×m个,输出神经元s的数量可根据实际需求进行动态调整,其与成员节点数量m相关性较小。隐层神经元的数量k由训练样本的数量以及算法规律的复杂程度决定,同时与输入输出的神经元也有直接的关系。
为确定最佳隐层节点数,本文采用常用的“试算法”作为选择依据。通过事先设置一个数量较少动态可变的隐层节点训练网络,在基于相同的训练样本,通过对比不同隐层神经元数量下的训练次数和数据精度,从而确定误差最小的隐层节点k值的大小。在确定最佳隐层节点数量可使用经验公式:~10之间的常数。
2.2 神经网络算法训练步骤
神经网络模型在建立之初需要离线训练BP神经网络,从而得到神经网络的参数值(如神经元之间的权值)。神经网络模型运行之前需要有一个稳定的分簇结构,本文EBPDF算法采用的是基于事件驱动的分簇方案,当某一区域突发剧烈事件时,节点通过相互之间交流信息从而形成稳定的分簇结构。考虑到节点能量有限,且神经网络的训练需要消耗较大的能量,本算法将神经网络训练过程交由汇聚节点完成,网络训练步骤如图5所示[13]。
图5 BP神经网络训练流程
2.3 EBPDF算法工作流程
EBPDF算法在经过利用与节点相匹配的信息进行样本训练之后,汇聚节点会将样本训练所得的神经网络参数(权值和阈值)发送到对应的簇头节点,无线传感器网络簇头节点利用训练好的BP神经网络结构进行数据融合处理。其工作流程如下所示[6]:
(1)无线传感器网络初始化,节点根据汇聚节点发布的位置信息进行定位。
(2)当事件突发时,事件突发区域EA内的节点根据分簇方案开始进行簇结构的建立以及簇首的选举,待EA内部分簇拓扑结构稳定后,簇头内部含有其所在簇内所有簇成员节点的相关信息。
(3)簇头节点将所有的簇内节点信息通过最优传输路径发送给汇聚节点。
(4)汇聚节点通过获得的节点信息构造神经网络体系结构,并根据数据库中的匹配的样本进行初始化训练,最终得到BP神经网络各层参数值(如权值、阈值),汇聚节点将训练所得的参数值及时发送到原始簇头。
(5)突发事件区域内的各个簇头节点利用训练好的神经网络进行数据融合处理,并将融合后的数据通过最优路径传输到汇聚节点,最终完成数据融合。
本文提出的EBPDF算法改进了LEACH协议,弥补了TEEN协议由于门限值达不到,节点不会和簇头通信,用户无法得到实时性数据的问题。为了分析和比较EBPDF算法的性能,本文采用NS2作为理论测试软件,为体现改进后的算法的有效性,将EBPDF算法与LEACH算法进行对比,主要比较节点能量消耗和网络生存周期等指标。神经网络的权值初始值设置为1,阈值设为0.2,训练次数设为1 000。网络初始化设置如表3所示[6]。
表3 网络初始化设置
判断无线传感器网络数据融合的一个重要指标是减少数据包的收发频率以减少能量消耗。LEACH算法中簇头的选举与突发性事件并无相关性,其簇头是随机产生,并未考虑到节点剩余能量。整个监测区域内所有的节点同时监测会产生大量的数据,且数据并未在事件突发区域得到有效融合。EBPDF算法数据收集仅在能够达到一定阈值的事件发生时动态工作,而且加入到簇中的节点只有事件发生区域内的节点,而且簇的生命周期取决于事件的激烈程度和节点剩余能量。簇的生命周期结束后,簇会立即被释放,节点转入休眠侦听状态。处于侦听状态的节点也会消耗一定的能量,但远远小于节点检测和传输数据所消耗的能量。
为测试不同范围的突发事件发生的情况下基于事件驱动的分簇方案的性能,假设LEACH协议和EBPDF算法的分簇方案比较时,不考虑数据融合性能的影响。首先选取了5种不同规模的网络场景: 20 m×20 m,40 m×40 m,60 m×60 m,80 m×80 m,100 m×100 m大小的区域内有连续突发性事件发生,节点运行周期为200 s。节点均匀分布,且节点有效通信距离为30 m。图6显示了EBPDF算法的基于事件驱动的层次性分簇方案选举出簇头的个数明显低于LEACH算法的分簇方案。因为LEACH簇头选举与事件无关,且簇头选举由概率选举产生,簇头的个数具有不确定性。而EBPDF簇头选举由事件驱动,与事件的覆盖范围有关,参与分簇的节点仅限于事件发生的区域,因此能够节省网络整体能耗。
图6 网簇头选举个数对比图
无线传感器网络节点的能量消耗主要来自于节点间的通信,若能够有效的降低节点发射频率,则网络节点的平均能耗将会大大降低。LEACH算法在路由协议中没有加入特定的数据融合算法,对于接收到的数据直接在簇头进行简单地融合,之后通过一定的路径发送到基站,大量的数据发送会导致节点通信频率增加。
在EBPDF算法中,本文引入BP神经网络算法,并结合层次性分簇结构方案,虽然在事件发生时同样产生大量数据,但通过BP神经网络模型融合后的所得的特征值的数据量大大小于原始数据量。相关研究表明无线节点传输1byte数据所消耗的能量可以执行数千条计算指令[14]。虽然EBPDF算法在节点和簇头内部进行数据融合处理时需要进行一定的融合计算,但EBPDF算法能够有效降低节点的通信数据量的大小,从而达到平均节点能耗的目的。
本文在此通过仿真模拟EBPDF算法的BP神经网络数据融合模型与LEACH算法的数据传输过程作对比,假设突发事件在整个监测区域EA内周期性发生,最终通过实际模拟运算所得出的仿真结果如图7所示。
图7网络节点平均能耗对比图
图7 显示了LEACH算法和EBPDF算法在设定的时间内节点平均能耗。由于EBPDF算法在由突发事件发生时才会动态成簇,不需要所有的节点都处于工作状态,随着突发事件时间的增加,EBPDF算法能够有效地提高网络性能,减少簇头节点到汇聚节点的数据传输量。
针对监测环境中突发事件驱动和无线传感器网络能量有限的特点,本文提出了一套基于反向传输BP神经网络的数据融合算法EBPDF。该算法以基于事件驱动和能量剩余管理方案的无线传感器网络动态分簇算法为基础,并在LEACH协议和TEEN的基础上进行了改进。簇的生存周期和覆盖范围随事件严重程度和节点能量剩余而动态调整,同时利用BP神经网络算法对网络采集的数据进行多层次的融合处理,从而降低节点通信开销,最终降低整体网络的能量消耗,平衡节点能耗,延长网络使用寿命。
[1]孙凌逸,黄先祥,蔡伟,等.基于神经网络的无线传感器网络数据融合算法[J].传感技术学报,2011,24(1):122-127.
[2]Heinzelman WR,Chandrakasan A,Balakrishnan H.Energy-Efficient Communication Protocol for Wireless Micro-Sensor Networks[C]//Proceedings of the 33rd Annual Hawaii Interna-tional Conference on System Sciences.Hawaii,USA,2000.3005-3014.
[3]Manjeshwar A,Agarwal D P.TEEN:A Routing Protocol for Enhanced Efficiency in Wireless Sensor Metworks[C]//The 1st International Workshop on Parallel and Distributed Computing Issues in Wireless Networks and Mobile Computing,2001:2009-2015.
[4]Zhang Xue,Ding Xuyang,Lu Sanglu.Principles for Energy-Efficient Topology Control in Wireless Sensor Networks[C]//Wireless Communications,Networking and Mobile Computing,2009.
[5]De Rango F,Guerriero F,Fazio P.Link-Stability and Energy Aware Routing Protocol in Distributed Wireless Networks[J].Parallel and Distributed Systems,2012,23(4):713-726.
[6]孔玉静,侯鑫,华尔天,等.基于BP神经网络的无线传感器网络路由协议的研究[J].传感技术学报,2013(2):246-251.
[7]Yeganeh MH,Yousefi H,Alinaghipour N,et al.RDAG:A Structure-Free Real-Time Data Aggregation Protocol forWireless Sensor Networks[C]//RTCSA,2011:51-60.
[8]Yang Wenjun,Wang Bingwen,Liu Zhuo.Back Propagation Neural Network Based Lifetime Analysis of Wireless Sensor Network[J]. Advances in Neural Networks-ISNN,2009:956-962.
[9]余黎阳,王能,张卫.无线传感器网络中基于神经网络的数据融合模型[J].计算机科学,2008,35(12):43-47.
[10]高迪,陈斌,裴丽莹,等.基于事件驱动的无线传感网络动态分簇路由算法[J].系统仿真学报,2008,20(11):2836-2839.
[11]李兆祥.无线传感器网络数据融合的算法研究[D].武汉:武汉理工大学,2011.
[12]张庆伟.基于粗糙集与神经网络的WSN数据融合算法研究[D].太原:太原理工大学,2011.
[13]郭军.BP神经网络算法研究[D].武汉:华中科技大学,2005.
[14]Min R,Bhardwaj M,Seong-hwan Cho,et a1.Energy-Centric Enabling Technologies forWireless Sensor Networks[J].IEEEWireless Communications,2002,9(4):28-39.
[15]Enami N,Moghadam R A,Haghighat A.A Survey on Application of Neural Networks in Energy Conservation ofWireless Sensor Networks[J].Recent Trends in Wireless and Mobile Networks,2010,84:283-294.
[16]Patra J C,Meher P K,Chakraborty G.Development of Laguerre Neural-Network-Based Intelligent Sensors for Wireless Sensor Networks[J].IEEE Transactions on Instrumentation and Measurement,2011,60(3):725-734.
侯鑫(1981-),男,副教授,主要研究领域为无线传感网络,无人机控制、导航和制导研究,houxinemail@ 163.com。
基于事件驱动和神经网络的无线传感器网络数据融合算法研究*
侯鑫1*,张东文1,钟鸣2
(1.浙江工商大学计算机与信息工程学院,杭州310018,2.中国联合工程公司,杭州310018)
为降低突发事件监测的无线传感器网络(WSN)的能量消耗和数据冗余,设计并实现一种基于事件驱动的动态分簇BP神经网络数据融合算法(EBPDF)。其中动态成簇以及簇头选举过程基于事件严重程度和节点剩余能量,簇的生命周期和簇的覆盖范围根据事件紧急程度和节点剩余能量进行动态调整。同时,为减少网络通信量,将神经网络层次结构与WSN的簇结构相结合,在动态形成的簇结构中应用三层神经网络模型,通过神经网络算法从采集到的大量原始数据中提取出少量特征值,并发送到汇聚节点,从而延长网络生命周期,降低数据传输的冗余度。理论仿真实验证明,与LEACH算法相比,该算法既能有效降低网络通信流量,又能减少节点通信次数。
无线传感网络;数据融合;事件驱动;BP神经网络;动态分簇;LEACH算法
TN925.93;TP212
A
1004-1699(2014)01-0142-07
2013-06-07修改日期:2013-12-09
C:6150P
10.3969/j.issn.1004-1699.2014.01.026
项目来源:浙江省自然科学基金项目(LQ13F030006);浙江省教育厅科技项目(Y201225769);浙江省电子商务与物流信息技术研究重点实验室项目(2011E10005);浙江工商大学创新基金项目(1130XJ1512160);浙江省大学生科技创新活动计划(新苗人才计划)项目(3070JQ4213073G)