基于SOFM神经网络的无线传感器网络数据融合算法*

2013-06-20 03:12杨永健
传感技术学报 2013年12期
关键词:能耗无线神经网络

杨永健,刘 帅

(吉林大学计算机科学与技术学院,长春130012)

如今,大量的无线传感器网络应用在生活中的各个领域,为我们提供了很大的帮助。在该网络中,部署在远程环境中的传感器节点在没有任何网络拓扑先验信息的情况下完成自行配置,其最终目标是监测传感器区域中感兴趣的特定事件。然而,通常情况下,该网络中的传感器节点的能量有限,存储空间不大,计算能力较低等局限性成为了无线传感器网络应用的瓶颈,因此关于如何降低网络能耗,延长网络生存时间的研究是十分有意义的。

通常,无线传感器网络为了保证对监测区域的覆盖度,会在区域内部署较多的传感器节点,这些传感器节点的监测区域相互重叠,采集到的数据存在很大的空间相关性,从而导致高度的相似性;而且同一个传感器在短时间内采集的数据也可能具有很高的时间相关性。对这些冗余数据的存储,计算和发送会浪费网络中大量的资源,包括存储空间和传输能量,缩短整个网络的生存期。同时,过多的冗余数据也给后台的数据处理带来了不必要的计算开支。

针对上述背景,本文提出一种基于自组织映射神经网络的无线传感器网络数据融合算法(SOFMDA)。SOFMDA算法以无线传感器网络中的基于位置的分簇路由协议(只需要是分簇协议,并不指定具体的协议)为基础,以簇内节点为SOFM神经网络的输入层神经元,在簇头节点利用SOFM神经网络技术对数据分类,并提取特征,然后将代表原始数据的特征数据而不是所有的原始数据发送给汇聚节点,从而达到减少数据发送量,降低能耗的目的。

1 相关工作

1.1 SOFM神经网络

人工神经网络,亦称为神经网络,是一种应用类似于大脑神经突触连接的结构进行信息处理的数学模型[1]。它是一种运算模型,由大量的节点(或称神经元)和相互之间的加权连接构成。它可以模拟人类大脑活动,具有很强的非线性逼近、分布存储、模式分类和识别等能力,可以处理已知信息较少,考虑因素较多的信息处理问题。

与有导师学习规则的神经网络不同,SOFM神经网络使用无导师学习规则来训练网络,可以在没有预知正确模式的情况下(没有已知的输入和输出训练样本数据),通过对客观事件的反复观察、分析与比较,自行提炼其内在规律,并对具有共同特征的事物进行正确的分类。即,SOFM神经网络的训练只依赖于一组输入量,其自行寻找输入量中的内在特征,从而实现分类。图1展示了SOFM网络模型的一般形式。

图1 SOFM网络模型

SOFM网络采用了Kohonen学习规则,它不仅仅更新胜出的单个神经元的权值,并且对其一定邻域内的所有神经元的权值都进行更新,即图1中节点i为胜出的神经元,而在其周围的邻域内的节点(图中其他的实心节点),都要被更新。这种学习规则更接近于人脑内神经元的工作方式。Kohonen规则对权值进行更新的表达式如式(1)所示。

其中q代表训练轮数,α为学习速率,学习速率的取值关系到学习的效果和运算量,取值过大虽然学习次数较少但学习效果不理想,取值过小又可能导致长时间无法达到学习目标。

经过多轮的训练,使得获胜神经元附近的权值都向着输入模式靠近,所以SOFM是一种可以体现输入模式并保证输入数据拓扑结构的神经网络模型。

1.2 数据融合

周冲等人提出的 WSN数据融合算法[2]针对LEACH算法在簇头选择机制、数据融合以及簇头与基站通信的路由方面的不足,提出了改进方案,在簇头选择的算法中加入了能量控制条件,簇头与基站的路由改为更适合数据融合的多跳反向组播树,仿真实验表明与LEACH算法相比,性能上有所提升。Wang Leichun等人提出的基于空间相关性的数据融合算法[3],将空间位置和数据特征作为主要考虑因素对传感器数据做分类融合,实验表明该算法在能耗、数据采集量和融合质量等方面都优于RAA。Nithyakalyani,S等人提出的以数据为中心的融合技术[4],该技术是一种基于 Voronoi图的模糊聚类(VF)算法。该算法考虑节点剩余能量、簇头节点和邻居节点的距离和服务质量,在簇头节点进行数据融合。仿真实验表明,算法有效地提高了网络性能。

神经网络技术在解决无线传感器网络方面的问题已经发挥了很大的作用,也有了一定的研究成果。Renzik[5]等使用多层感知神经网络检测无线传感器网络中的信号变化情况,用以判断异常事件的发生。冯芳等提出的基于神经网络的无线传感器自适应路由算法[6],在基站上采用神经网络的自适应学习来选择簇头,并根据最优权函数值来选择最短路径中的下一跳,仿真实验表明网络性能是EMHR算法的1.8倍。Julio Barbanch等第一次将SOFM神经网络应用于无线传感器网络,并提出了基于SOFM的无线传感器路由协议[7],该协议没有考虑数据融合方面的内容。余黎阳等将BP神经网络和无线传感器网络分簇路由协议有机结合,构造出一个三层感知器神经网络[8],来完成数据融合的工作,仿真结果表明该方法有效地提高了LEACH算法[9]的性能,但该算法无法完成缺乏训练输出集合情况下的工作。孙凌逸等在文献[8]的基础上,增加了数据特征的处理[10],同样对LEACH算法进行了改进,效果比较明显,与文献[8]的问题相同,协议没有给出缺乏训练集合的情况下的实现。

SOFM神经网络可以和无线传感器网络很好的结合来解决数据融合的问题。无线传感器中的节点扮演神经网络的神经元角色,采集的数据作为神经元的输入量,在簇头节点做神经网络的增量学习工作,从而实现数据的分类。之所以采用无导师学习规则的神经网络是因为它可以不需要提前指定训练数据的正确分类结果,因为对我们来说,有时确实很难获得。

2 SOFMDA算法

SOFMDA算法,针对实时监测类应用而设计,如大型温室监控网,空气质量采集网等。在这些应用场景中,传感器节点不断地采集大量的监控数据,并发送给汇聚节点。汇聚节点受到的数据的冗余性主要来自于以下两个方面:(1)邻近的传感器节点采集的数据具有较高的相似性;(2)短时间内同一传感器节点采集的数据具有较高的相似性。然而,我们的研究将不局限于这两点,只要是可以量化的导致数据冗余的因素,都可以作为我们研究的对象,例如在某些特定的应用中传感器节点所处的光强度(温室监控),风速(森林防火监控)等。

2.1 概念和条件

为方便问题的研究,文中N个传感器节点随机分布在矩形感知区域内。文中使用的概念及标识如表1所示。

表1 本文的概念和标识

本文对无线传感器网络具有如下要求:

(1)所有节点在部署之后不能随意移动,且每个节点具有唯一的网内标识id号;

(2)节点的初始能量相同,不存在能量补给;

(3)网络中有唯一的汇聚节点(Sink),位置固定;

(4)汇聚节点的能量较充沛,不会出现死亡现象;

(5)网内节点可以获知自己所在的位置信息。

对于要求(5),因为无线传感器网络的数据融合必然要考虑到节点的空间相关性造成的数据冗余,所以位置信息是SOFM过程中要考虑的的重要因素。这也是大多数无线传感器网络路由算法中所要求的。

2.2 SOFMDA算法模型

SOFMDA算法对路由协议没有过多的要求,只要求是分簇路由协议(然而,不同的分簇协议也会导致最终的性能差别),且在整个网络内,节点成为簇头满足公平性的原则即可,所以我们将路由协议部分泛化处理,在某一时刻的网络拓扑T的情况下讨论问题。

设C为当前时刻T拓扑下网络中所有簇的集合,当前时刻网络中簇的数量为M,即‖C‖=M。Ci代表第 i号簇,Ci∈C,i=0,1,…,M-1,Ci-Head为Ci的簇头节点编号。我们的算法是在每一个簇头节点进行神经网络的分类操作和数据融合操作。设‖Ci‖=ni,则对于簇头Ci-Head内的神经网络将有Qi=ni个输入向量(包括Ci-Head采集到的数据),由于采用SOFM神经网络,所以Ci-Head并不需要训练集对应的正确输出。设对于当前的网络应用,影响网络中数据冗余度的因素为 e1,e2,…,er,则有每个输入向量有r个元素,则Ci-Head的输入矩阵为一个r×Qi的二维矩阵:

Ci通过这Qi个输入列向量训练网络的权值,从而达到对以后向量的分类操作。图2为Ci-Head中的SOFM网络结构示意图。

图2 Ci-Head中的神经网络结构示意图

其中,IW11为神经网络的权系数和阈值矩阵,‖ndist‖为输入向量p和IW11的偏差值,S1为最终需要的分类数,a1为最终的分类结果。经过Ci-Head内的SOFM神经网络,采集到的数据信息已经被分类为S1组,被分类到一组的数据具有较高的数据相关性,可以使用融合方法将同一组的数据进行融合,具体的融合方法将在下一节讨论。

图3为 SOFMDA 算法的模型图,ci1,ci2,…,cik为簇Ci的簇内成员节点,则k=Qi,分类部分由簇头结点Ci-Head完成,这也是SOFMDA的核心部分,其结构示意图如图2所示;a1,a2,…,as是原始数据经过SOFM后分类成的s个数据集合,在同一集合中的数据有很高的数据相关性,适合进行特征数据的提取,它们将作为DA(数据融合)的输入,提取特征值,也就是最终将发送到汇聚节点的数据。簇内节点在t时刻向簇头节点发送的数据为一个r+1元组,其格式为

前r个元素为影响冗余度因子,用来在簇头节点处进行SOFM分类;最后一个元素data为传感器采集的真实数据,需要在簇头节点处进行DA操作,从而获取最终的特征数据。

图3 SOFMDA模型图

由于SOFM神经网络随着输入样本的增加,不断调整其内部的权值和阈值矩阵,以使其能越来越准确的对输入数据加以分类,因此网络在运行之初的结果可能不够准确。应该为SOFM网络留出一定的自行训练时间,一般情况下SOFM对数据量不大的样本,训练200次左右即可达到准确。

2.3 SOFMDA中的特征提取

特征提取,将已经按照相关性分好类的数据融合为一个特征值,用此特征值来代表这一类数据,从而达到减少数据传输量的目的。

关于特征提取的方法,一般认为有两种方式,一种为取所有数据的算数平均值为特征值。即图3中DA部分按照式(3)计算特征值。

其中‖ai‖为集合ai中元组的数量,dataij为集合ai中第j个元组的数据。fi为这一时刻,簇头节点ci向汇聚节点发送的最终数据。这种做法运算简单,涵义清晰,但当数据变化范围较大时不能很准确的反应数据的整体特征,而且如果出现较大的奇异值时,可能会给出完全错误的特征数据。因此它适合应用在数据变化范围小且稳定的场景中。

另外的一种方式是采用可以使所有数据的二阶中心距最小的数据作为最终的特征数据。即寻找一个数据d,使得式(4)取最小值。将d作为最终的数据发送给汇聚节点。

这种方式可以有效地改善奇异值对整个数据特征的影响。但其对簇头节点的运算能力要求较高,且运算时间过长,除非在特殊的应用中,否则对于能量宝贵的无线传感器网络来说,一般不太实用。

除此之外,还有一些研究学者提出的特征提取处理方法同样可以应用到SOFMDA算法之中的DA部分,如流量分布加权融合算法[11]等,该算法通过实时计算网络中的流量分布,选择路由,从而达到节约能耗的目的。

该模型将SOFM神经网络的训练方法与传统的无线传感器网络的数据融合算法相融合,以SOFM为方法,数据融合技术为目的,构建了一种新的无线传感器数据融合算法。

3 仿真测试

本文采用MATLAB仿真测试算法的性能。以环境监测系统为应用场景。布置在感知区域内的传感器节点可以实时采集所处环境的温度和湿度数据,并将才记得数据发送到Sink节点。

实验中我们分别选取SOFMDA的分类数为4和6,将100个传感器节点部署在100 m×100 m范围的感知区域内,传感器节点本身可以采集温度和湿度数据。路由协议采用经典的LEACH协议。具体的实验参数如表2所示。

表2 仿真实验参数

其中冗余度影响因素是指我们认为的会影响数据冗余度的因素,在当前实验背景下,时间和空间是我们考虑影响冗余度最重要的原因。

图4中展示的是实验中的数据采集元件,分别采用的是LM35温度传感器(左)和SHT11湿度传感器(右)。每一个传感器节点都配备一个LM35和SHT11元件,用来采集温湿度数据。

SOFMDA采用同类算法常用的能耗模型[12],统计节点发送、接收和融合数据的能耗。在发送数据时,如果发送距离小于阈值d0,采用自由空间模型,否则,采用多路径衰减模型。节点发送和接收l bit数据的能耗如式(5)和式(6)所示。

其中,d是发送距离,Eelec是无线收发电路发送或接收单位长度数据的电路能耗,εfs和εmp分别是自由空间模型和多路径衰减模型的放大器能耗参数。

图4 温度和湿度传感器元件

为防止个别传感器节点可能产生的较大误差对整个特征数据的影响,在做分类之前,我们对数据进行归一化处理,即将所有采集到的数据转换为[0,1]区间之内,这样做不会改变最终的分类结果,却可以保证即使存在个别的奇异值,也不会对最终的结果产生很大的影响。

图5是随机部署的传感器网络分布图,‘+’为传感器节点,‘●’是这一时刻网络中的簇头节点,中央位置的‘☆’为汇聚节点。图中可以看出,节点的部署在空间上呈现随机性,距离较近的节点的数据冗余度比较大,适合使用神经网络的方法归为一类。

图5 100个节点网络的分布图

图6展示了某一时刻图4中标识出来的簇的簇头使用SOFM神经网络对13个簇内节点进行“6分类”和“4分类”之后数据的分布情况,两次分类都进行了12轮训练。图6(a)中将13个数据分类为3、3、0、2、2、3 个一类,图6(b)中将13 个数据分类为 1、5、3、4个一类。分类的数量会影响到数据准确性和融合程度。

图7给出了分类数分别为4和6时,网络中的误差情况。可以看出分类数为6的情况误差比总体低于分类数为4的情况,分类数越多,同类中的数据相关性就越明显,因此最终的特征数据也更加接近原始数据,同时可以看出,数据误差在网络刚刚建立时较大,这是因为SOFM神经网络在开始学习时的误差较大,随着数据的不断增加,由于SOFM的增量学习功能,使得网络最终的性能降低下来并趋于稳定。

图6 经过神经网络后的分类

图7 分类数对准确性的影响

图8给出了LEACH算法和SOFMDA算法在网络能耗方面的性能对比。可以看出SOFMDA能有效地减少能耗,同时4分类的情况能耗比6分类的能耗更低,这是因为分类数越少,数据融合的程度就越大,最终的特征数据就越少,通信能耗就越低。

同时结合图7,图8分析,对于分类数的选取同时影响到数据准确性和能耗水平,应该根据具体应用的要求适当选择,在准确度和能耗之间选取折中点。

图8 LEACH和SOFMDA能耗

图9显示了LEACH算法、6分类SOFMDA算法和4分类SOFMDA算法在不同轮数网络中死亡节点的数量的对比图。从图中可以看出,由于对原始数据做了分类融合和特征提取,SOFMDA算法从总体上降低了网络中各个节点的能耗量,从而延长了网络了整体的生命周期。同时,由于4分类比6分类有更高的融合度(同样的原始数据,4分类融合后的数据更少),同一时刻,4分类的算法比6分类算法的死亡节点数要更少。

图9 网络中死亡节点的数量

当网络规模增长时,SOFMDA算法可以很好的保持稳定性,不会产生由于数据包冲突导致的数据重传和能量损失。图10显示了网络中的节点数量分别在LEACH算法、BPNDA算法[10]和 SOFMDA(4)算法下对Sink节点收到的数据量的影响。可以看出,SOFMDA算法中汇聚节点收到的数据量比LEACH算法汇聚节点收到的数据量要少很多,同时比之前的BPNDA算法有一定的提升。这是因为SOFMDA算法采用神经网络的方法对原始数据进行分类,使得原始数据量成倍数地下降,在减少了传输能耗的同时,也大量地减少了网络中数据包的数量,从而减少了网络冲突的产生。在网络规模到达一定程度后,由于信道带宽和通信速率的影响,LEACH中的接收数据量趋于稳定,这时信道已经饱和,会产生大量的数据包冲突,而SOFMDA却一直保持在信道饱和点以下。

最后我们以仿真实验的方式给出SOFMDA算法相对于LEACH算法性能的提升程度。我们以Sink节点收到等量的数据包时,网络已经消耗的能量作为度量,来衡量算法的性能。图11是随着Sink节点收到数据包数量的增加网络消耗的总能量变化曲线。为比较的效果比较明显,我们将仿真时间提高到500 s。

图10 网络规模对数据量的影响

图11 SOFMDA算法性能测试

由于采用了对原始数据进行先分类再特征提取的方式,导致网络中数据传输量大大降低,从图11中可以看出Sink在收到相同数量的数据包的情况下,SOFMDA算法消耗能量的速度明显低于LEACH算法,在实验结束时SOFMDA算法的性能达到了LEACH算法的1.5倍左右。

4 结论

分簇算法和SOFM自组织映射神经网络相结合的SOFMDA算法,可以有效地降低无线传感器网络的能耗。与无线传输所消耗的能量相比,CPU指令所消耗的能量要低的多,因此,用较高的计算量换取低数据传输量是有意义的[13]。

仿真测试表明,本文提出的SOFMDA算法通过对原始数据分类,同类数据特征提取的方式,可以有效地减少数据的传输量,从而节约能源,减轻信道压力,提高信道利用率,延长网络的生命周期。

[1] 朱凯,王正林.精通MATLAB神经网络[M].北京:电子工业出版社,2010:246-270.

[2] 周冲,余震虹,王娜娜,等.无线传感器网络基于分簇路由的数据融合研究[J].现代电子技术,2012,35(7):13-46.

[3] Wang Leichun,Zhou Guoyu.A Spatial Correlation Based Data Aggregation Algorithm for Wireless Sensor Networks[J].Engineering Solutions for Manufacturing Processes,2013,655-657:655-659.

[4] Nithyakalyani,Kumar S,Suresh S,et al.An Approach to Data Aggregation in Wireless Sensor Network Using Voronoi Fuzzy Clustering Algorithm[J].Journal of Scientific and Industrial Research,2013,72(5):287-293.

[5] Reznik L,Von Pless G,AIKarim T.Intelligent Protocols Based on Sensor Signal Change Detection[C]//Proceedings of Systems Communications,2005:443-448.

[6] 冯芳,程良伦.无线传感器网络中一种新的基于神经网络的自适应路由算法[J].传感技术学报,2010,13(10):1476-1479.

[7] Barbancho J,CarlosLen J,Molina F,et al.Using Artificial Intelligence in Routing Schemes for Wireless Networks[J].Computer Communications,2007(30):2802-2811.

[8] 俞黎阳,王能,张卫.无线传感器网络中基于神经网络的数据融合模型[J].计算机科学,2008,35(12):43-47.

[9] Heinzelman W,Chandrakasan A,Balakrishnan H.Energy-Efficient Communication Protocols for Wireless Microsensor Networks[C]//Proceedings of 33rd Hawaii International Conference on Systems Science,Washington,DC,2000:8020-8030.

[10]孙凌逸,黄先祥,蔡伟,等.基于神经网络的无线传感器网络数据融合算法[J].传感技术学报,2011,24(1):122-127.

[11]蔡宗吟,刘才铭,刘毅,等.一种高性能数据融合算法在无线传感器网络中的应用[J].青岛科技大学学报(自然科学版),2013,34(3):309-314.

[12] Heinzelman W R.An Application Specific Protocol Architecture for Wireless Microsensor Networks[J].IEEE Transactions on Wireless Communications,2002,1(4):660-670.

[13] Min R,Bhardwaj M,Seong-hwan Cho,et al.Energy-Centric Enabling Technologies for Wireless Sensor Networks[J].IEEE Wireless Communications,2002,9(4):28-3.

猜你喜欢
能耗无线神经网络
120t转炉降低工序能耗生产实践
能耗双控下,涨价潮再度来袭!
《无线互联科技》征稿词(2021)
探讨如何设计零能耗住宅
神经网络抑制无线通信干扰探究
无线追踪3
基于ARM的无线WiFi插排的设计
日本先进的“零能耗住宅”
ADF7021-N在无线寻呼发射系统中的应用
基于神经网络的拉矫机控制模型建立