APP下载

基于人工鱼群算法优化神经网络的WSN数据融合

2018-10-19胡向东李秋实

关键词:鱼群步长权值

胡向东,李秋实

(重庆邮电大学 自动化学院,重庆 400065)

0 引 言

无线传感网(wireless sensor network, WSN)针对特定区域分布大量感知节点,形成多跳自组织网络以实时监测和收集目标信息,经融合处理后汇聚到sink节点供用户决策[1];无线传感网广泛应用于军事国防、生物医疗、环境监测等众多领域。由于网络中感知节点的覆盖范围往往相互重叠、节点无人值守易被捕获劫持,故会采集到冗余甚至错误的数据,这些数据无意义甚至有害,并会因进入后续的逐跳传输而造成网络能量的极大浪费[2]。而无线传感网中节点的能量通常依赖难以补充的电池提供,节省能量是无线传感网的基本需求,因此,传输数据前就剔除冗余数据等具有重要意义。

数据融合是将收集到的原始数据组合,筛选出更精简、更可靠结果的技术[3]。WSN中的数据融合能够一定程度降低数据的冗余性,减少数据传输量,达到节省节点能量消耗、延长网络生命周期的目的。

1 研究现状综述

数据融合分为数据级融合、特征级融合和决策级融合。传统的数据融合的方法可归为随机类和人工智能类。随机类一般包括加权平均法[4]、卡尔曼滤波法[5]、贝叶斯估计法[6]等;人工智能类一般包括模糊逻辑推理法[7]、神经网络方法[8]等。每种数据融合方法都有自己的特点和适用场景,尽管它们为特定场景的数据融合实现提供了技术方法,但也存在一定的局限性。

迄今为止,无线传感网领域的数据融合方法研究是一个热点。如孙凌逸等[9]提出了利用神经网络解决无线传感网数据融合问题,即将前馈反向传播神经网络(back propagation neural network, BPNN)与低功耗自适应集簇分层型(low energy adaptive clustering hierarchy, LEACH)协议相结合,每个簇都是单独的神经网络,簇头节点仅将提取后的少量特征数据发送给sink节点,从而减少数据的传输量,降低节点能耗,延长网络寿命[9]。杨永健等[10]提出基于自组织特征映射神经网络(SOFM神经网络)结合LEACH协议数据融合,实验表明,该方法能够有效延长网络周期,无线传感器网络生命周期达到了LEACH算法的1.5倍。郭润龙等[11]提出了一种组合RBF神经网络 (radial basis function neural network, RBFNN)和证据理论的数据融合方法。感知节点将收集到的数据经预处理后直接传输给RBF神经网络,神经网络的输出作为证据理论的初始证据,通过证据理论的组合规则进行数据融合,得到各个信息源的信任度,监测传感器节点的工作状态。

W-Norden等[12]基于遗传算法优化神经网络进行无线传感网数据融合,应用在多任务进程管理系统,实验表明,该系统有较强的鲁棒性。赵亚光等[13]将蚁群算法应用到神经网络,优化神经网络的参数,克服BP神经网络易陷入局部最优的问题。利用优化后的BP神经网络数据融合,从而减少数据传输量,延长网络周期。

简言之,以上述研究成果为代表的现有神经网络数据融合方法普遍使用单层BP神经网络等浅层单一模型训练,采用随机参数,存在训练困难且易陷入局部最优值、数据融合提取的特征数据不理想等不足;部分研究将智能算法与神经网络相结合,提高了数据融合的准确性,但受限于算法本身的不完善,还有较大的优化空间。

2 基于BP神经网络数据融合

神经网络可以模仿人脑结构进行信息处理,且在处理的过程当中可以自我学习,反复调整自身的权值和阈值,使实际的输出值逐渐逼近期望值,直到两者的差距在给定的允许范围内[14]。代表性的神经网络模型有BPNN,RBFNN,HOPFIELD神经网络等。其中,BP神经网络采用的传递函数是Sigmoid型可微函数,实验证实能够模拟非线性数学模型,能够实现对任意函数的实值映射,正是因为BP神经网络具有很强的逼近能力,其被广泛应用于模式识别、分类、自动化系统、图像处理以及机器学习等领域。

利用BP 神经网络进行无线传感网数据融合,称为BPNNDF(back propagation neural network data fusion) 算法,其结构如图1所示。该算法结合了LEACH路由协议,在完成分簇后,感知节点将监测到的数据发送到簇首节点,组建BP神经网络,根据输入层神经网络函数进行预处理后,根据隐含层和输出层的神经网络函数后续处理,通过BP神经网络的自学习能力,提取特征数据,将特征数据传送到sink节点,以达到减少数据传输量、节省网络能量的目的。

图1 BPNNDF算法的结构Fig.1 Structure of BPNNDF Algorithm

虽然近几年来人们对神经网络的研究取得了很大的成果,特别是 BP 神经网络更是被广泛应用于模式识别、预测预报、优化控制以及智能决策等实际问题中,但同时 BP神经网络也暴露出以下不足。

①网络结构难以确定,即神经网络的隐含层层数以及隐含层的神经元个数不确定。实验中只能通过经验或者尝试法来确定网络结构,导致这些方法效率较低;

②初始权值阈值不确定,BP神经网络的初始权值阈值一般通过随机产生,造成输出结果震荡较大,难以达到期望的效果。

3 基于人工鱼群优化BP神经网络的数据融合

为了应对基于BP神经网络数据融合存在的不足,探索人工鱼群优化BP神经网络。人工鱼群算法(artificial fish swarm algorithm, AFSA)是一种由李晓磊提出的智能搜索算法,从提出开始就得到了国内外学者的广泛关注,该算法经过不断的理论完善开始应用于各个领域,由解决一维静态优化问题发展到解决多维动态组合优化问题。该算法具有较快的收敛速度和优秀的全局搜索能力,与BP神经网络相结合,能够很好地克服BP神经网络陷入局部极值的缺陷[15]。

AFSA原理是有一种仿生生物——人工鱼,可以在一片水域中通过自行觅食或尾随其他人工鱼,找到食物浓度最高的地方,经过一段时间后,人工鱼数目最多的地方一般就是本水域中食物浓度最高的地方。人工鱼群算法以此为基础,通过人工鱼的觅食、聚群、追尾和随机行为等实现寻优。

①觅食行为。人工鱼的觅食行为是指在水中随机地自由游动,当发现食物时,则会向食物逐渐增多的方向快速游去。

②聚群行为。人工鱼在游动过程中为了保证自身的生存和躲避危害会自然地聚集成群,但同时人工鱼还要尽量避免和其他人工鱼过于拥挤,超过设置的拥挤度。

③追尾行为。当人工鱼群中的一条或几条人工鱼发现食物时,其临近的人工鱼会尾随其快速到达食物点。

④随机行为。单独的人工鱼在水中通常都是随机游动的,这是为了更大范围地寻找食物点或身边的伙伴,避免人工鱼过早聚在一起。

在人工鱼群算法中,人工鱼总是向着食物浓度更高的方向移动。在视野范围较小时,人工鱼的觅食行为以及随机游动更为突出;在视野范围较大时,人工鱼由于容易发现视野内的同类,追尾行为和聚群行为比较突出。从整个寻优过程来看,视野和步长越大,人工鱼群越容易跳出局部最优,得出全局极值并收敛;视野和步长越小,人工鱼群越能在视野内更多次的寻找最优解。受王联国等[16]提出的人工鱼群算法启发,本文提出改进的人工鱼群算法(improved artificial fish swarm algorithm, IAFSA),采取自适应动态的视野和步长策略:①设置一个随周期变化的基准视野和步长。算法运行初期,人工鱼的视野范围和步长应该相对较大,可以增强算法跳出局部最优的能力和算法收敛速度;算法运行后期,视野和步长逐渐减小,此时,人工鱼已经定位在最优解附近区域,小的视野和步长有利于找到最优解;②针对个体人工鱼自适应调整。适应度较差的人工鱼,距离全局最优解较远,应适当增加视野和步长;适应度较好的人工鱼,已经接近全局最优解,应适当减小视野和步长,强化局部搜索能力。

本文设置步长随视野动态调整,符合人工鱼寻优特征,也有助于减少算法复杂度。

step=visual·λ,λ∈(0,1)

(1)

设置人工鱼的初始视野(Fv)和人工鱼的初始步长(Fs)后,周期t的基准人工鱼视野Fvt通过(2)式计算更新

(2)

(2)式中:γ为衰减因子;t为当前周期数;Tmax为最大设置周期。

每个周期后,计算所有人工鱼的适应度中位数,根据个体鱼适应度与中位数的差异率,再次调整视野和步长。设人工鱼Fi的适应值为Xi,求出所有适应值的中位数Xm,根据周期t的基准视野,求出个体人工鱼Fi在周期t视野Fvti为

Fvti=Fvt·[1+(Xi-Xm)/Xm]

(3)

人工鱼群算法优化BP神经网络的基本思路是设BP神经网络输入层有j个神经元,有k个隐含层,输出层元素有l个神经元,则待调整的参数是j·k+k·l个权值和k+l个阈值,人工鱼的状态以神经网络的初始权值和阀值代表,每条人工鱼代表一个神经网络,每条人工鱼的状态就可以用一个j·k+k·l+k+l维的变量表示。人工鱼的个体适应值X为其对应的神经网络训练误差Err的绝对值的相反数,个体适应值越高,代表对应的神经网络误差越小。

人工鱼群算法利用算法强大的寻优能力不断寻优,得到较优的状态解,解的各个状态代表BP神经网络的权值和阈值被调整到全局最优值附近。采用调整后的权值和阈值代替初始随机设定的权值和阈值,能够避免BP神经网络陷入局部极值的缺陷,并且因为寻优后得到的权值和阈值相对固定,可避免随机取值带来的网络震荡。

基于人工鱼群算法的BP神经网络参数寻优流程如图2所示。

图2 AFSABP参数寻优流程Fig.2 Flow chart of AFSABP parameter optimization

4 仿真实验

仿真实验采用缙云山火灾经验数据库,消防专家经过大量试验和研究得出不同烟雾信号、温度信号、CO信号3个参数值对应的火灾概率。通过无线传感网采集3个参数值对火灾进行实时监测有着重要意义。

在酷睿双核CPU,8G RAM的计算机上采用Matlab 2016进行算法仿真测试。人工鱼群算法中的参数设定:人工鱼数量FishNum=10;最大设置周期Tmax=50;最多试探次数TryNum=1;拥挤度因子δ=0.618;初始视野Fv=1.5;视步系数λ=0.2,t为当前周期数,衰减因子γ通过(2)式计算。

BP神经网络的隐含层的数目太少,则BPNN获取的信息不足以解决问题;若数目太多,则会导致学习时间过长,同时可能会出现过拟合的问题。表1为不同隐含层数目的的误差对比试验结果。

表1 隐含层节点数与融合误差

从表1可以看出,随着隐含层神经元数目的增加,融合误差呈现先减少后增加的趋势,当神经元数目为5时,融合误差最小。实验涉及烟雾信号、温度信号、CO信号共3个输入参数,火灾概率1个输出参数,即输入层有3个神经元,输出层有1个神经元, 隐含层设为5个神经元,故设置的BP神经网络结构为3-5-1,共有3·5+5·1=20个权值,5+1=6个阈值,共26个待优化参数。

选择人工鱼群优化神经网络、遗传算法优化神经网络(genetic algorithm back propagation,GABP)、蚁群算法优化神经网络(ant colony optimization,ACOBP)以及前馈反向传播神经网络(back propagation, BP)进行Matlab实现,并进行对比实验,为方便对比优化效果,GABP的群体大小设置为10,ACOBP的种群规模设置为10,两者的迭代次数都设为50。

利用预测值与实际值的平均相对误差(average relative error, AvRE)为

(4)

均方根误差(root mean square error, RmSE)为

(5)

最大相对误差(maximum relative error, MaxRE)为

MaxRE=Max(Err(1)+Err(2)…Err(N))

(6)

及最小相对误差(minimum relative error, MinRE)为

MinRE=Min(Err(1)+Err(2)…Err(N))

(7)

作为主要评价指标,并给出融合一致性对比和融合误差对比,直观对比各方法的融合效果。

表2给出了1 000次试验下各种融合方法的各类型误差的平均值,可以看出,本文的AFSABP数据融合结果的各类型误差平均值都小于其他方法,相较于传统BP数据融合方法,可减少3.06%的相对误差和3.74%的均方根误差,有统计学上的优势。

表2 4类误差均值对比

图3、图4分别给出了各种方法的融合结果与实际值的一致性分析及相对误差对比,由图3、图4可知,基于AFSABP的融合结果相较于其他算法与实际值的一致性更好,平均相对误差及最大相对误差最小,而且其他算法在融合过程中容易出现震荡,导致结果偏差较大。AFSABP数据融合算法较其他算法表现出更高的准确性和稳定性。

图3 融合一致性对比Fig.3 Comparison of fusion consistency

图4 融合误差对比Fig.4 Comparison of fusion error

为测试改进人工鱼群算法的性能,选择与传统人工鱼群算法进行仿真测试对比。图5显示了传统人工鱼群算法和本文改进的人工鱼群算法在数据融合过程中的收敛情况。由图5可以看出,原有的鱼群算法在第38个周期找到最靠近全局最优值的点,而改进后的算法在第23个周期完成寻优;结合表2和图5可以看出,本文算法寻优结果精度高于原有算法的寻优结果精度。结果表明,本文改进的鱼群算法在收敛速度和寻优精度上较原有鱼群算法都有明显进步。

图5 算法迭代收敛对比Fig.5 Comparison of iterative convergence of algorithms

综合可知,AFSABP算法相较于其他方法,可得出更高的数据融合结果准确性。火灾场景具有代表性,意味着AFSABP算法具有好的应用前景。

5 结束语

本文针对现有无线传感网神经网络数据融合存在容易陷入局部最优解的缺陷,提出基于人工鱼群算法优化神经网络的WSN数据融合方法。算法以LEACH路由协议为基础,在节点分簇后,簇头节点利用改进的人工鱼群算法优化神经网络的权值和阈值,以此对簇内节点采集的数据进行数据融合,并将经融合提取出的特征数据输送给汇聚节点,从而减少数据传输量,降低节点能量消耗,进而延长网络的生命周期。仿真实验对比结果表明,改进后的鱼群算法在收敛速度和寻优精度上都有显著进步,本文方案较典型的BP神经网络数据融合方法可减少3.06%的相对误差和3.74%的均方根误差。

猜你喜欢

鱼群步长权值
一种融合时间权值和用户行为序列的电影推荐模型
基于Armijo搜索步长的BFGS与DFP拟牛顿法的比较研究
CONTENTS
基于随机森林回归的智能手机用步长估计模型
鱼群漩涡
基于权值动量的RBM加速学习算法研究
基于多维度特征权值动态更新的用户推荐模型研究
基于改进鱼群优化支持向量机的短期风电功率预测
基于人工鱼群算法的光伏阵列多峰MPPT控制策略
基于动态步长的无人机三维实时航迹规划