汪 亮,陈燕红
(湖南机电职业技术学院电气工程学院,湖南 长沙 410151)
无线传感器网络被誉为二十一世纪最具影响力的科学技术之一[1],其已成为我国重点研究项目之一。 由于无线传感器网络节点通常由电池提供能量,导致能量存在上限且无法补充,因此建立有效无线传感器网络分簇路由算法用以控制节点能量消耗十分重要[2]。 但是现阶段无线传感器网络分簇路由控制方法由于样本数量较少、网络节点间剩余能量差高的问题,导致控制方法的效果无法达到预期。相关学者深入研究了该问题,并且取得了一定成果。
王宗山等[3]首先通过改进人工蜂群优化的模糊C 均值算法聚类分簇网络节点,并由节点状态分布式竞选簇首,然后采用基尼系数优化的蜂群算法作为簇间路由算法,最后利用轮询机制控制簇内通信,构建无线传感器网络分簇路由算法。 该方法延长了无线传感器的使用寿命,但是其由于样本较小、蕴含的信息有限,导致簇首数量选择不理想。 Nishi等[4]认为从传感器节点到Sink 的通信是一个能量消耗的任务,分簇是传感器网络中提供通信的策略之一,利用移动中继设计了继电器和节点聚类方法,构建无线传感器网络分簇路由算法。 该方法有效分簇了无线传感器网络,但是其网络能耗均衡性较差,导致网络节点间剩余能量差高,工作效率不佳。 胡润彦等[5]建立每轮网络能耗总量和分簇数量的目标函数并获取最优分簇数,通过双层模糊决策选择簇首节点,构建无线传感器网络分簇路由算法。 该方法在实际应用中可以有效降低网络节点间剩余能量差,但是该方法存在分类准确率低的问题。 李洪兵等[6]考虑邻近簇首和邻近节点的状态,分级处理节点,在选取簇首时,根据簇首位置和簇群范围优化簇首,以此降低发生簇首分布过密和簇群范围不合理情况的概率,在数据传输时,通过节点剩余能量、节点间距离和邻近节点,采用中继方式均衡节点能耗,从而降低无线传感器网络总能耗,该方法提高了网络能耗均衡性,但是在实际应用中增加的无线传感器网路寿命未达到预期值。
为了解决上述方法中存在的问题,提出基于小样本无梯度学习的无线传感器网络分簇路由方法。该方法引入小样本无梯度学习算法,并且结合了生成对抗网络,处理小样本数据,优化算法,实现无线传感器网络分簇路由的设计,以期提高无线传感器网络分簇路由的工作效率和使用寿命。
从统计学角度分析,数据规模越大,能够从中学习的网络结构和分布构成越丰富、特征刻画越明确,由此产生了大规模的大数据样本处理方法,但在实际样本应用中,受环境、成本、时间等客观因素影响,并非所有情况下均能够获取到大量数据样本,因此小样本数据处理同样十分重要,处理小样本能够在有限数据内获取更丰富的信息,实现小样本的有效利用[7]。
基于小样本无梯度学习的无线传感器网络分簇路由方法采用条件生成对抗网络处理小样本学习数据[8],用p1,p2,…,pm表示小样本机器学习数据,将数据映射至由复值函数构成的Hibert 空间H中,得到对应数据φ(p1),φ(p2),…,φ(pm),用β表示投影方向,JεB表示H中类间散布矩阵,βT表示H中全部数据样本平均值,m表示样本数量,结合再生核理论[9],转换特征提取问题为最优化求解问题K(β),如下所示:
转换式(1)中投影方向为样本点线性输出,用β′表示β的转置;CB表示经过变化后类间散布;CW表示经过变化后类内散布;vj表示总平均值;wi表示类别i对应平均值;β′T表示转置后全部数据样本平均值。 得到转置后优化求解问题K(β′),如下所示:
依据以上计算求得样本特征值,采用对应的特征向量构建特征矩阵,用于后续计算。
针对处理数据中存在的不平衡情况,需要计算数据特征相对熵,结合相对熵变化,平衡小样本数据类[10]。 用A表示构建的特征矩阵,P(a)表示A的概率分布,a∈A,A∈Ω,Ω表示有限集合,则A的信息熵H(A)如下所示:
假设存在两个类不同的特征矩阵B和D,b∈B,d∈D,用ρ(b)表示B的边缘概率;ρ(d)表示D的边缘概率;P(b,d)表示B和D联合概率分布。得到B和D互信息Q(B,D),如下所示:
互信息在信息熵调节中具有重要作用,其能够反映数据信息量变化情况。 结合式(4)计算B和D的相对熵L(B|D),如下所示:
式中:P(b)表示B的概率分布。 通过相对熵能够描述B和D之间的平衡性,若数据不平衡,则通过调节信息熵使相对熵达到平衡目标,实现数据平衡后,将数据输入条件生成对抗网络加以处理。
用S表示一个条件生成对抗网络,S具有对应最优判别器W,在W结果达到最优并输出结果WS时,完成小样本处理。 用gs表示S生成的数据分布,gdata表示未经处理时的最小化真实分布,则WS=以gs和gdata散度J(gdata‖gs)作为数据处理目标函数F(S)的等价函数,则有:
在提前设定W的条件下,即可实现目标函数F(S)的求解,完成不改变原始数据内容的小样本学习数据处理。
无梯度学习的无线传感器网络分簇路由方法是通过LEACH 协议算法和遗传算法(GA)优化的BP神经网络(GABP)相结合实现的,该方法在求解具有非凸、不可导、有大量局部极值目标函数中表现优异。 选择LEACH 协议算法的原因是该算法的网络拓扑结构为分层结构,簇首节点形成高层网络,使得簇内节点不需要存储路由信息,简化了路由路径选择,并且可以随机选取簇首节点,同时,具有数据融合处理的功能,减少了无线传感器网络的信息传输量,更加符合无线传感器网络分簇路由方法。 选择结合遗传算法(GA)优化的BP 神经网络(GABP)是因为BP 算法具有寻优精确的特点,但是全局寻优能力有限,而遗传算法具有很强的宏观搜索能力和良好的全局优化性能,因此将三种算法相结合,从而提高网络能耗均衡性、延长网络寿命。
2.1.1 BP 神经网络
BP 神经网络是一种结构为三层或三层以上的神经网络[11],其中每层均由若干神经元构成,网络结构及神经元模型如图1 所示。
图1 BP 神经网络结构及神经元模型图
图1 中,f表示神经元传输函数,f=ωr+b;r表示神经元输入;ω表示权值;b表示偏置;x1,x2,…,xm表示输入参数;ωij和φik分别表示输入层与隐含层和隐含层与输出层连接权值。 最终得到输出y1,y2,…,ym。
在BP 神经网络正向传播过程中,输入信息由输入层传输至隐含层,在隐含层中经过处理输出各单元实际值;在反向过程中,若输出值不符合预期,则通过反向学习,并修正各个层次连接权重,使BP 神经网络学习误差达到预期,完成BP 神经网络学习。
2.1.2 GA 算法
GA 算法是根据“优胜劣汰,适者生存”理论诞生的种群择优算法[12],结合种群选择、交叉、变异操作,实现种群优化,在多代循环后,得到符合要求的个体,即完成最优解逼近,选择、交叉、变异操作的主要流程如下所示:
①选择
选择是依据特定概率选择种群中个体作为繁殖后代的父本,并且由适应度决定概率。 选择操作可以保留优秀个体,从而经过繁衍得到更多优质个体,完成期望值逼近。
②交叉
交叉结合自然界信息交互思想,通过交换两个被选择个体上的一点或多点位置,产生新的个体,在全局角度上改善个体结构。
③变异
变异操作依据特定概率选择个体,变异选择个体中某段染色体,加强个体的适应度。
GA 算法在全局寻优中表现优异,而BP 神经网络在局部寻优中具有一定优势,因此将两者相结合,建立GABP 算法,提高算法性能,主要流程如下所示:
①染色体编码
BP 神经网络负责编码全部权值和偏置并生成染色体X,σm表示各个隐含层之间连接偏置,sn表示输出层偏置,得到一组染色体X如下所示:
②适应度计算
适应度函数对个体被选中的概率起到决定性作用,结合预测输出yi和期望输出ei构建染色体Xi的适应度函数K(Xi):
式中:α表示系数;n表示神经元总数;i∈[1,n]。
③遗传操作
计算个体适应度值,并引入轮盘赌法选择概率,用M表示种群数量,则每个基因被选中的概率pi如下所示:
采用式(9)选择两个基因,记作Xa和Xb,交换两者第k位的染色体,得到新染色体Xak和Xbk,新染色体如下所示:
式中:γ表示[0,1]中的常数。
在父代中选取个体基因的基因点Xij,通过均匀分布的随机数替换Xij,提高基因适应性,用Xmax和Xmin分别表示选取的个体基因上下界;u表示当前进化次数;g(u)表示u的相关函数;r1和r2分别表示[0,1]中随机数;Umax表示进化次数最大值。 得到新基因点X′ij如下所示:
变异操作能够提高局部寻优能力,并保障种群多样性。
基于小样本无梯度学习的无线传感器网络分簇路由方法采用LEACH 协议算法,初步划分各传感器节点为簇[13],LEACH 协议算法通过随机选择簇首方式生成网络,并以“轮”为周期重组网络,选取新簇首,平衡网络能量高损耗。 在LEACH 协议算法建簇阶段中,全部节点随机生成在[0,1]内,比较该随机数值与设定阈值ψ(m),确定是否设置该节点为簇首。 用η表示成为簇首节点数与网络中总节点数之比;W表示当前轮结束后还未成为簇首的节点集合;R表示已完成循环轮数;mod(·)表示求余函数。ψ(m)遵循以下规则:
根据式(12),若随机数值小于ψ(m),则将其设置为簇首。 在第一轮簇首选择中,簇首节点由LEACH 协议算法随机决定,簇首负责分配簇内成员相应工作。
经LEACH 协议算法划分后的每个分簇均与BP神经网络模型一一对应。 GABP 算法具有泛化能力强、收敛速度快等优点,将其应用于簇首节点和数目选择的主要流程如图2 所示。
图2 GABP 算法的簇首节点和数目选择流程
基于GABP 的无线传感器网络分簇路由算法的主要步骤如下所示:
①结合无线传感器网络拓扑结构,设定BP 神经网络拓扑结构,初始化权值和偏置并传递至GA算法,用m和n分别表示输入和输出节点数,λ表示[0,10]范围内的调节常数,计算隐含层节点个数v,如下所示:
②计算每个个体适应度值并将适应度值较高的个体交叉、变异获取新种群,更新后的种群若满足要求,则进入步骤3,若不满足要求,则重复计算直到符合要求为止。 用θ表示邻居节点密度,l表示节点传输距离,Qn-res和QN-res分别表示节点n剩余能量和全部节点剩余能量总和,ῶ、ε和φ表示权值系数,三者满足ῶ+ε+φ=1,定义无线传感器网络分簇路由中采用的适应度函数Z,如下所示:
③传递获取到的最优解至BP 神经网络,结合误差δn更新权值和偏置,用X(i)表示网络输入值,Gi和Gj分别表示输入层和隐含层输出,ξ表示系数,yn表示预测输出,en表示期望输出,n表示输出层数量,得到ωij和φik的更新ω′ij和φ′ik,如下所示:
④判定经过BP 神经网络处理后输出误差δn是否符合提前设定的期望值,若符合,则算法结束,若不符合,则返回步骤3 继续执行。
采用训练后的GABP 算法为LEACH 协议算法选择簇首节点和簇首数量,实现基于小样本无梯度学习的无线传感器网络分簇路由。
为验证所提方法的有效性和可行性,需要测试所提方法的性能。 选取簇首数量、网络能耗均衡性和网络寿命为性能指标,检测所提方法、文献[3]方法和文献[4]方法提出的无线传感器网络分簇路由算法在小样本情况下的分簇效果。 以某公司的无线传感器网络为研究对象,该公司无线路由的数量为10 个,具体参数如表1 所示。
表1 实验参数表
根据实验目的,对比分析所提方法的性能,检测结果如下所示。
3.2.1 簇首数量分析
用M表示节点总数,D表示区域边长,lch-s表示簇首与Sink 节点间距离,εfs和εamp分别表示自由空间信道模型和多径衰落信道模型下的能耗系数,得到无线传感器网络中最优簇首个数N,计算公式如下所示:
结合所设计实验环境的实际情况,经计算得到,在所设计实验中N∈[1,6.3]。 根据理论和经验可知在簇首数量为4 个、5 个和6 个时,协议每轮消耗能量均值最低且第一个死亡节点和所有节点死亡出现时经历轮数相对较多,即在簇首数量为4 个、5 个和6 个时无线传感器网络状态更为理想。
分别统计所提方法、文献[3]方法和文献[4]方法运行200 次的簇首数量分布情况,如图3 所示。
图3 簇首数量分布检测结果
由图3 可以看出,所提方法的簇首数量均分布在4 个、5 个、6 个、7 个处,其中大部分为4 个、5 个和6 个,符合理想状态下的簇首数量,文献[3]方法簇首数量在1 个到12 个之间均有出现,文献[4]方法簇首数量分布于2 个到9 个之间,文献[3]方法和文献[4]方法的簇首数量分布较为分散,对簇首数量选择不及所提方法。 因为所提方法采用条件生成对抗网络处理小样本数据,在有效小样本中得到更为丰富的可用信息,在无线传感器网络分簇路由中得到更为优异的分簇效果。 分类准确率如图4所示。
图4 分类准确率
分析图4 中的分类准确率曲线可知,三种方法的曲线差异较大,但是三种方法的分类准确率曲线均随着传感节点数量的变化而变化。 其中所提方法的分类准确率曲线一直呈现上升趋势,未出现降低的情况,并且在传感节点数量达到20 个后,准确率曲线一直在文献方法分类准确率曲线之上,上升幅度大于文献方法,并且在传感节点数量达到100 个时,所提方法的分类准确率达到了96.3%,而两种文献方法的分类准确率曲线均出现不同程度的下降,出现了较大的波动,文献[3]方法在传感节点数量为40 个时,准确率开始上升,在传感节点数量为100 个时,分类准确率为87.3%,而文献[4]方法在传感节点数量为20 个时,分类准确率曲线开始上升,在传感节点数量为100 个时,准确率达到89.2%,对比三种方法的分类准确率可知,所提方法的准确率最高,分别比文献方法提高了9.0%和7.1%,由此可知,所提方法有效提高了无线传感器网络分类准确率。 这是因为所提方法采用了GABP算法优化簇首节点和簇首数量,提高了全局寻优的性能,从而提高了分类的准确率。
3.2.2 网络能耗均衡性分析
以网络节点间剩余能量差衡量网络能耗均衡性,网络节点间剩余能量差越小则对应网络能耗均衡性越好。 用M表示无线传感器网络中节点总数,表示节点k当前剩余能量,Eavg表示全网当前剩余能量均值,得到无线传感器网络节点间剩余能量差ΔE计算公式如下所示:
根据式(17)分别计算不同迭代次数下所提方法、文献[3]方法和文献[4]方法的网络节点间剩余能量差,检测结果如图5 所示。
图5 网络节点间剩余能量差检测结果
由图5 可以看出,所提方法、文献[3]方法和文献[4]方法在迭代次数由20 增加到200 过程中网络节点间剩余能量差均有所增加,在迭代次数为20 次和40 次时,三种方法的网络节点间剩余能量差相差不大,但在后续迭代次数增加过程中,文献[3]方法和文献[4]方法的网络节点间剩余能量差出现大幅度升高,而所提方法始终低于另外两种方法,所提方法最高的网络节点间剩余能量差为0.015 8,文献[3]方法的网络节点间剩余能量差值为0.021 6,文献[4]方法的网络节点间剩余能量差值为0.027 3,前者与文献方法相比,分别降低了0.005 8 和0.011 5,因此,说明所提方法的网络能耗均衡性最好,能耗分配结果更加合理。 这是因为所提方法应用了LEACH 协议算法,该算法的簇首节点形成高层网络,使得簇内节点不需要存储路由信息,简化了路由路径选择,并且具有数据融合处理的功能,减少了无线传感器网络的信息传输量,从而降低了能耗,增强了网络能耗均衡性。
3.2.3 网络寿命分析
定义网络寿命为整个无线传感器网络首个节点能量全部消耗殆尽的时间,检测所提方法、文献[3]方法和文献[4]方法的网络寿命,如表2 所示。
表2 网络寿命检测结果
由表2 可以看出,所提方法的网络寿命明显高于文献[3]方法和文献[4]方法,所提方法的网络寿命达到了241 轮,文献[3]方法仅为42 轮,较所提方法少199 轮,文献[4]方法为128 轮,较所提方法少113 轮,三种方法相比的结果表明所提方法的网络寿命最长,说明所提方法能够使节点消耗更加均衡,有效延长了无线传感器网络寿命。 这是因为所提方法有效地将LEACH 协议算法和GABP 算法相结合,使其具备了三种算法的优点,形成优势互补,提高了节点能耗的均衡性,从而提高了无线传感器网络的使用寿命。
无线传感器是将无线通信、传感器和微处理相结合的高新技术,但目前无线传感器网络技术发展仍受到节点能量的限制,设计科学合理的无线传感器网络分簇路由算法是提高无线传感器网络技术的有效途径。 为了解决目前存在的簇首数量选择不理想、网络能耗均衡性较差、网络寿命较短问题,提出基于小样本无梯度学习的无线传感器网络分簇路由方法,通过条件生成对抗网络处理小样本数据,结合LEACH 协议算法和GABP 算法实现小样本无梯度学习无线传感器网络分簇路由算法构建。 该方法的簇首数量均分布在4~7 个处,相较于文献对比方法,网络节点间剩余能量差降低了0.005 8 和0.011 5,并且网络寿命分别提高了119 轮和113 轮,因此其能够获取到更理想的簇首数量、增强网络能耗均衡性,延长网络寿命,在无线传感器网络应用中具有积极的意义。