基于BP神经网络的无线传感器网络路由协议的研究*

2013-04-30 09:01孔玉静华尔天魏星锋
传感技术学报 2013年2期
关键词:路由无线神经网络

孔玉静,侯 鑫,华尔天,魏星锋

(浙江工商大学计算机与信息工程学院,杭州310018)

无 线 传 感 器 网 络[1]WSN(Wireless Sensor Networks)是新型的信息监测系统,主要由大量的传感器节点协作完成数据的采集、传输及处理;传感器节点的能量主要靠本身携带的电池供应且容量有限,由于传感器节点常部署在环境比较恶劣的地方,很难更换电池,导致节点能量有限且不能补充。

对于能量有限的无线传感器网络,减少能量的消耗是延长网络寿命的重要措施。无线传感器网络节点的能量主要消耗在无线通信模块上,文献[2]表明传输1byte数据信息需要消耗的能量可以用来执行数千条计算指令,而且所消耗的时间也少很多。因此,本文在路由协议分簇结构中引入神经网络模型对传感器节点采集的数据进行融合处理,把融合得到的少量的特征数据传送给汇聚节点,减少节点的数据通信量,节省网络的能量消耗,延长无线传感器网络的生命周期。

无线传感器网络与神经网络[3]NN(Neural Networks)在有些地方很类似,比如无线传感器网络中的传感器节点具有感知数据处理信息的能力,好比神经网络中神经元一样;无线传感器网络节点之间通过一定的规则传递信息,则相当于连接神经元的突触。神经网络算法与无线传感器网络中应用的数据融合技术有相同的功能,即通过一定的规则对大量的数据进行运算处理,从而得到反映这些数据特征的结果。因此,可以把神经网络算法应用到无线传感器网络中实现数据的融合。

在近几年研究人员开展了很多把神经网络算法应用到无线传感器网络的研究,文献[4]中提出在无线传感器网络中应用一种神经网络模型来寻找最低的弱连通支配集,从而构建新的直接融合算法,可以选择一个合适的传输半径,使网络稳定并延长网络的生命周期。文献[5]中用反向传播(BP)神经网络建立马尔可夫模型计算了无线传感器网络的生命周期,该算法准确地给出了最大生命周期的价值且降低了计算复杂度。文献[6]提出了在无线传感器网络的分簇结构中利用基于主元分析(PCA)的神经网络融合算法对采集的数据进行处理,减少了数据的传输量并实现了不同参数类型的分类。文献[7]提出利用神经网络的自组织特征映射,在无线传感器网络路由协议中利用神经网络修改拓扑结构,提高网络能源的利用效率。文献[8]将神经网络算法应用到无线传感器网络的能源管理方法中,通过神经网络对传感器数据进行处理,降低传输数据的维数,从而降低通信成本及保护能源。文献[9]针对传感器的非线性输出受环境参数影响,为获得准确信息弥补不良环境影响,在无线传感器网络中引入计算有效的拉盖尔神经网络,从而弥补传感器的非线性和环境影响,降低能源消耗。文献[10]提出将神经网络的层次结构应用到无线传感器网络的分簇结构中,构造一个基于神经网络的数据融合模型。该模型能够降低网络的传输能耗,延长网络生命周期,但是该模型没有考虑节点数量改变和簇首分布的情况。

本文把数据融合技术应用到无线传感器网络的路由层中,在分层路由协议的基础上引入BP神经网络,提出一种新的数据融合算法BPDFA(Back-Propagation Data Fusion Algorithm)。

1 基于神经网络的协议算法改进

1.1 模型的假设条件

在现实的无线传感器网络应用中有很多不同应用类型的无线传感器网络,为方便讨论,有必要对本文中所研究的网络模型做一个条件假设,假设本文的无线传感器网络模型由N个传感器节点和唯一的汇聚节点(即基站)组成,并且该WSN具有以下性质:

(1)N个传感器节点随机分布在监测区域内,传感器节点部署好后就不再移动位置,并且所有节点都被事先编排了唯一的ID号,网络中每个节点都能够确认自己的位置坐标信息。

(2)每个传感器节点具有相同的类型,相同的初始能量和相同的数据处理能力,且节点能量有限不能补充,每个成为簇头的节点都消耗大致相同的能量。

(3)汇聚节点的位置是固定的且部署在监测区域外距离无线传感器网络较远的地方。

(4)汇聚节点的能量是无限供给的,能够以足够大的功率向所有节点直接发送信息,且适合进行复杂的运算,并不用担心汇聚节点的能量消耗问题。

(5)无线传感器网络中每个节点具有相同的结构,如表1所示。

表1 网络节点结构

1.2 分簇及簇首选取的改进

已有的LEACH分簇路由协议[11]相比平面路由协议能够提高网络性能,但是LEACH分簇路由协议的簇首选取是随机的,造成簇首在空间上分布不均匀,簇内节点数目差异太大,簇首负载不均衡,而且在簇首选取时没有考虑簇首节点的剩余能量,导致个别簇首过早死亡。此外,LEACH路由协议每轮循环都要重新构造簇结构,增加网络能量的消耗。针对以上这些问题,本文对LEACH分簇路由协议进行了改进。

本文BPDFA算法根据无线传感器网络的情况估算出最优簇首的数目K,结合统计的各个节点的邻节点数目对整个网络进行分簇,根据一定的规则把网络分成了K个区域,在各个区域内根据节点的剩余能量信息和节点曾当选过簇首的次数选取簇首,区域内其余节点为簇内节点从而构造簇结构。该算法无需每轮都进行分簇结构的构造,只要在网络初始布置的时候,运行一次分簇算法,得到稳定的分簇结构,在该结构内根据节点的剩余能量和节点曾当选过簇首的次数循环选取簇首。只有当网络中有新的节点加入或者失效的节点退出(或者簇首节点的剩余能量不足以完成一轮数据处理)时,才会重新运行改进算法。为了减少传感器节点的负担,本文把算法的运行放在汇聚节点中解决。

图1为分簇和簇首选取的过程。根据文献[12]中最优簇首数公式

其中N为传感器节点个数;K为簇的个数;dtoBS是簇首节点到基站(BS)的距离;εfs是簇成员与簇首通信时用的无线信号传播参数;εmp是簇首与基站通信时用的无线信号传播参数;S是整个无线传感器网络区域的面积。结合无线传感器网络的情况,可以估算出最优簇首数目K。对网络中各节点的邻节点数目Mj进行统计,设置网路分簇结构中节点数最高值为M,当Mj>M时放弃该组节点成簇;当Mj≤M时,根据各节点的邻节点数目的大小进行排序x1,x2,…,xi,…,xK,如果序列中有互邻节点,则舍弃邻节点个数少的节点,序列中后面的节点向前依次增补。最终,整个无线传感器网络被分为了K个区域。

图1 分簇及簇首选取流程图

假设Kj为任意的一个子区域,其中的节点集合为W,W={Qj|Qj是Kj中任意一个节点,且Qj的能量值为Ej},簇首节点在一轮中所需的能量值为ECH,当Ej<ECH时,该节点不参与簇首竞选进入睡眠状态,直到所有区域都竞选出簇首节点;当Ej≥ECH时,节点成为候选簇首集合S中的成员,参与簇首竞选。任选S中一个节点Qi,其能量为EQi,计算max(EQi),选取候选簇首集合S中剩余能量值最高的节点作为该区域的簇首节点。当所有区域中簇首竞选过程结束后,其他没有参与竞选的节点从睡眠状态唤醒,成为簇首的节点向所在区域的其他节点发送自己是簇头的信息,区域内其他节点选择加入该簇首。此时,网络的分簇结构就完全形成了。

1.3 BPDFA算法的模型结构

本文BPDFA算法是基于改进的无线传感器网络的分簇路由协议,在整个无线网络中根据一定的规则选取最优的簇首,形成稳定的分簇结构,在每个分簇结构中,簇内传感器节点采集到大量的原始数据经过预处理以后首先传送给簇首节点,在簇首节点内部进行数据处理后再发送给汇聚节点。BPDFA算法就是在簇内传感器节点与簇首节点间利用BP神经网络算法来处理数据的。

本文采用单隐层的BP神经网络模型对无线传感器网络采集的数据进行数据融合。相关研究已经证明,只要隐层节点数足够多,三层BP神经网络就具有模拟任意复杂的非线性映射的能力[13]。改进算法将三层BP神经网络应用各个簇中,在每个簇的神经网络模型中,簇内节点采集数据后,利用输入神经元函数对采集到的数据进行预处理,并将处理好的数据传送到簇首节点。簇首节点将收到的数据通过神经网络模型的隐层神经元函数和输出神经元函数的共同处理后,得到一组反映网络数据特性的特征值,最后把通过神经网络融合好的特征信息传送给汇聚节点。数据融合后的特征值量远远少于采集到的数据量,从而减少数据的传输量,降低了能量的消耗,延长无线传感器网络的寿命。改进算法的模型示意图如图2所示。

图2 改进算法的模型示意图

假设无线传感器网络中每个簇的簇成员节点采集n种不同类型的数据,那么该神经网络模型的输入层神经元有n个。输出神经元的个数l可以根据实际应用的需要进行不同的调整,与簇内节点的数量和采集的数据类型没有必然的联系,一般由所需的输出信息来决定。隐层神经元的数量m取决于训练样本的多少及样本中蕴含规律的复杂度,也与神经网络的输入输出神经元的个数有关。确定最佳隐层节点数的一个常用方法称为试凑法,可先设置较少的隐节点数训练网络,然后逐渐增加隐节点数,用同一样本集进行训练,从中确定网络误差最小时对应的隐节点数。在用试凑法时,可以用一些确定隐节点数的经验公式[14]。如或者,其中α为1~10之间的常数。这些公式计算出来的隐节点数只是一种粗略的估计值,可作为试凑法的初始值。

1.4 BPDFA算法工作流程

在本文BPDFA算法中,神经网络模型的建立需要首先知道一些运行参数的值(如神经元之间的权值),因此,当无线传感器网络的分簇结构稳定以后,在网络进人稳定的自治工作状态之前,需要训练BP神经网络,从而得到神经网络相应的参数值。由于无线传感器网络的节点能量有限且不能供给,为了尽可能减少传感器节点的能耗,延长无线网络的寿命,本算法将在无线传感器网络的汇聚节点内部完成神经网络的训练。BP神经网络训练流程如图3所示。

图3 BP神经网络训练流程

BPDFA算法的流程图如图4所示。无线传感器网络组网时先要确定网络中节点的状态及节点位置,进行网络的初始化,当网络节点状态都确定好后,无线传感器网络开始进行最优簇首的选择并建立分簇结构,此时簇首获得所有簇内节点的信息,分簇结构稳定后,簇首节点把所有簇内节点的相关信息发送给汇聚节点。汇聚节点依据获得网络信息构造BP神经网络结构,并搜集样本数据库中与簇内节点信息相匹配的样本训练神经网络,从而得到相关的神经网络参数。汇聚节点将神经网络各层的参数(权值、阈值)发送给对应的簇节点。无线传感器网络各个分簇就可以利用训练好的BP神经网络模型进行数据的融合处理,把处理好的数据以最短路径传送给汇聚节点。从而减少网络中数据的传输量,降低网络节点的能耗,延长网络的生命周期。

图4 改进算法的流程图

2 仿真实验

本文仿真实验通过网络仿真工具NS2仿真软件[15]对BPDFA算法进行仿真测试,为了更好地展现改进算法的有效性,对BPDFA算法和LEACH协议算法进行了对比仿真,主要分析对比两种算法对网络节点平均能耗和网络存活节点数目(网络生存周期)这两个指标的影响。

2.1 仿真环境

仿真环境设置:在100 m×100 m的范围内随机分布100个相同的节点,并把汇聚节点设置在离感知区域较远的位置,节点的初始能量为2J,数据包的长度为500 byte,无线信道的带宽为1 Mbit/s,无线信号载频为2.4 GHz,收发数据所耗的能量为50 nJ/bit,神经网络的权值初始值设置为1,阈值设为0.2,训练次数设为 1 000。

2.2 仿真结果

图5 网络节点平均能耗对比图

图5给出的是LEACH算法和BPDFA算法在网络节点平均能耗参数方面的比较,对于无线传感器网络来说,节点的能量比较有限,能耗问题成为网络生命周期的重要指标。节点的能量消耗越少,网络生命周期就越长。从图中可以看出,BPDFA算法的节点能量消耗低于LEACH算法,这主要是因为改进后的BPDFA算法根据网路的分布情况对网络进行分区,使簇首分布较LEACH算法均匀,在簇首的选择时,考虑了节点的剩余能量值,使网络内的节点平担能量的消耗,保证了整个网络的能量消耗更均衡。

图6显示了LEACH算法和BPDFA算法在网络存活节点数的对比情况。从图中可以看到,LEACH算法在350 s的时候开始出现节点死亡,且随着时间的推移节点死亡的速度逐渐加快,到460 s已经没有节点存活了,而BPDFA算法在450 s才开始有节点死亡,且死亡速度也没有LEACH算法快。由此可见,本文提出的BPDFA算法较LEACH算法能更好地提高网络的性能,延长网络的生存周期。主要是因为在改进后的分簇结构中应用了神经网络算法对簇内节点采集的数据进行了融合处理,减少了簇节点向基站传送的数据量,降低了通信时的能量消耗,而且算法的运行选择在汇聚节点中进行,减少了传感器节点的运行能耗,延长了节点寿命,从而提高了整个无线传感器网络的性能,延长了网络寿命。

图6 网络存活节点数的对比图

图7是当网络中节点数不同时BPDFA算法与LEACH算法节点平均能耗的变化情况。从图中可以看出使用BPDFA算法的网络节点平均能耗明显要比LEACH算法低,随着网络中节点数的减少,网络的节点平均能耗逐渐增加,BPDFA算法的增加幅度要低于LEACH算法。

图7 网络节点个数-节点平均能耗

4 总结

对于无线传感器网络,能量有限是其重要的影响指标,如何降低能耗,延长网络生命周期成为一个研究热点。本文在LEACH算法的基础上对分簇结构进行了改进,并把神经网络算法应用于改进的分簇结构中,提出了协议改进BPDFA算法,对网络采集的数据进行融合处理,从而减少网络中数据的传输量,降低整个网络的能量消耗,达到延长网络寿命的目的。

[1]孙利民,李建中,陈渝,等.无线传感器网络[M].北京:清华大学出版杜,2005:5.

[2]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-39.

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

[4]He Hongmei,Zhu Zhenhuan,Mäkinen Erkki.A Neural Network Model to Minimize the Connected Dominating Set for Self-Configuration of Wireless Sensor Networks[J].IEEE Transactions on Neural Networks,2009,20(6):973-982.

[5]Yang Wenjun,Wang Bingwen,Liu Zhuo.Back Propagation Neural Network Based Lifetime Analysis of Wireless Sensor Network[J].Advances in Neural Networks-ISNN 2009,PT3,Proceedings,2009:956-962.

[6]Feng Xiufang,Xu Zhanwei.A Neural Data Fusion Algorithm in Wireless Sensor Network[C]//Proceedings of the 2009 Pacific-Asia Conference on Circuits,Communications and System,2009:54-57.

[7]PatraChiranjib,Roy Anjan Guha,Chattopadhyay Samiran.Designing Energy-Efficient Topologies for Wireless Sensor Network:Neural Approach[J].International Journal of Distributed Sensor Networks,2010.

[8]Enami Neda,Moghadam Reza Askari,Haghighat Abolfazl.A Survey on Application of Neural Networks in Energy Conservation of Wireless Sensor Networks[J].Recent Trends in Wireless and Mobile Networks,2010,84:283-294.

[9]Patra Jagdish Chandra,Meher Pramod Kumar,Chakraborty Goutam.Development of Laguerre Neural-Network-Based Intelligent Sensors for Wireless Sensor Networks[J].IEEE Transactions on Instrumentation and Measurement,2011,60(3):725-734.

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

[11]宋立军.无线传感器网络 LEACH路由协议的改进与仿真[D].武汉:武汉理工大学,2010.

[12]刘园莉,李腊元,卢迪.节能的无线传感器网络分簇路由协议的研究木[J].传感器技术学报,2010,23(12):1792-1797.

[13]Omido,Judith D.Neural Networks and Pattern Recognition[M].San Diego:Academic Press,1998.

[14]李兆祥.无线传感器网络数据融合的算法研究[D].武汉:武汉理工大学,2011.

[15]黄化吉,冯穗力,秦丽姣,等.NS网络模拟和仿真[M].北京:人民邮电出版社,2010.?

猜你喜欢
路由无线神经网络
《无线互联科技》征稿词(2021)
铁路数据网路由汇聚引发的路由迭代问题研究
神经网络抑制无线通信干扰探究
无线追踪3
基于ARM的无线WiFi插排的设计
探究路由与环路的问题
ADF7021-N在无线寻呼发射系统中的应用
基于预期延迟值的扩散转发路由算法
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用