用于WSNs的间歇型参数估计算法
2021-10-15李林
李 林
(天津商业大学 信息工程学院,天津 300134)
0 引 言
在无线传感器网络(wireless sensor networks,WSNs)用于目标定位与追踪、频谱感知、自动雷达、导航及机器视觉等领域时,常常需要节点协同估计同一个未知参数。WSNs中的每个节点用一组输入观测未知参数,由于环境复杂这些观测值是未知目标参数受多元噪声如环境或测量噪声干扰后的观测值,由这些观测数据所得到的参数与原始目标参数相去甚远。所以,如何从噪声干扰中精确地估计出原始目标参数是一个重要的问题[1]。参数估计算法已经有了大量的研究,通常会选用一些自适应算法作为参数估计算法,如线性预测算法、最速下降算法、递归最小二乘算法、平方根自适应算法和最小均方(least mean square,LMS)自适应等。
近些年来,解决WSNs中的参数估计问题一般有两种不同类型的算法:一种是集中式的参数估计算法,另一种是分布式的参数估计算法。集中式估计算法是每一轮所有节点将自己的本地估计值传输给网关,网关收集网络的全部信息后计算出全局的估计值,再发还给传感器节点。由于每一轮的估计都获取了网络的全局信息,这种方法做出的参数估计非常精确。但是WSNs中节点的能量有限,这类算法用于WSNs中,每一轮估计时网关都需要与节点进行信息交互。特别地,当网络是多跳网络时,能量消耗巨大,网络的生存时间堪忧,无法在实际中应用。分布式估计算法中每个节点对参数的估计无需网关参与,节点仅与部分其他节点交换自己计算出的本地估计信息,大大地降低了通信量,WSNs更适合分布式估计算法。
常见的分布式估计算法分为分布式增量[2,3]、扩散[4~6]和共识三种类型。分布式增量算法中,每个节点接收前一个节点的估计与自己的信息结合来进行下一时刻的估计,随后再将自身的估计发送给下一节点。这种算法在节点数目较多和拓扑复杂时鲁棒性较差。分布分布式共识和扩散算法中,节点每轮仅与其邻居节点交换信息,将这些信息融合后,通过参数估计算法递归计算下一时刻的估计值[4]。分布式共识估计算法在于增加了一个强制邻居节点合作的过程。文献[7]指出,采用分布式扩散算法的网络其估计性能优于分布式共识算法,收敛速度更快而且均方偏差(mean square deviation,MSD)更小。与其他算法相比,分布式扩散算法有着更好的估计性能、更好的可扩展性和鲁棒性。
为降低WSNs用于参数估计时的整体通信负载,本文提出了一种间歇型LMS参数估计算法。算法中,节点是否传输自身的估计值取决于一个交替参数,节点仅仅被间歇参数选中的时刻与邻居节点交换估计值。有信息交换时,节点通过邻居节点和自身的估计值加权做和,作为下一时刻估计值的更新依据;无信息交换时,节点仅用自身的本地估计值作为下一时刻估计值的更新依据。最后节点根据得到的自适应归一化步长,计算出下一时刻的估计值。通过该算法,可在损失少许估计性能的情况下大大降低网络通信负载。
1 问题描述
本文所考虑的问题是一个有N个节点的WSNs,典型的N=10的用于参数估计的WSNs如图1所示。
图1 N=0的用于参数估计的WSNs模型
其中,圆圈表示节点,箭头表示节点之间的通信链路,WSNs参数估计的线性回归模型可表示为
(1)
2 分布式LMS扩散算法
集中式LMS算法中,网关需要收集整个WSNs的全局信息,集中地处理这些信息。传感器节点需要每轮将信息发送或者转发给Sink节点,每轮的估计都会产生很大的通信负载[8]。在WSNs中,节点通常由电池供电,能量非常宝贵,而节点的能量大部分由通信模块消耗。由于通信量太大,集中式LMS算法很难用于实际的WSNs。当网络拓扑变化或者通信链路改变时,集中式LMS算法的估计性能也会变得很差。为了克服集中式LMS算法的缺陷,本文采用分布式LMS扩散算法。
在分布式共识和扩散LMS算法中,每个节点只需要与邻居节点交换估计信息来获取估计值,如图2所示。
如果两个节点可以直接通信,则定义这两个节点互为邻居节点[9]。例如,节点7的邻居节点定义为Ω7,其中,Ω7包含节点7本身。每个节点需要计算其本地估计值,并从邻居节点中获取邻居节点的本地估计。如图2中,箭头表示节点之间的通信链路,节点7的邻居节点集合Ω7为节点3,5,6,7,8。这些节点可以与节点7直接通信。由于网络采用分布式共识和扩散算法,当网络中一些节点无法正常通信,整个网络仍能继续工作。
图2 分布式LMS扩散算法中用于参数估计的WSNs模型
分布式扩散LMS参数估计算法可以分为3个阶段,分别是信息交换阶段、适应阶段和融合阶段。根据网络的拓扑,节点i赋予不同的融合系数来融合每个邻居的估计值
(2)
式中γii为节点i自身估计值的融合系数,γij为其邻居节点j在节点i的融合阶段的融合系数,融合系数需要满足式(2)。融合系数的计算多种规则,如Metropolis,Laplacian和最大度规则,本文中选用的Metropolis规则如式(3)所示
(3)
分布式共识算法与扩散LMS算法的主要区别是,共识算法在适应阶段用加权融合后的估计值和本地估计值结合用来计算下一时刻的估计值,扩散算法在数据融合后,适应阶段仅用融合后的估计值计算下一时刻估计值。文献[3]指出,分布式扩散算法的网络估计性能都优于分布式共识算法,收敛速度更快而且MSD更小。这里选用分布式扩散LMS算法,并给出推导过程。
分布式扩散LMS算法中,节点需要从自身以及邻居节点的估计值中寻求对未知参数wo的估计。在每个t时刻,节点i对的估计值为wi(t),则下一时刻t+1的估计值的更新方程的递归表达式为
(4)
式中μi为节点i的LMS算法步长。
(wi-wj(t))+o‖wi‖2
(5)
同样的,可以将其在wi(t)处也用泰勒级数展开,可得
(wi-wj(t))+o‖wi‖2
(6)
随后,将式(5)和式(6)都代入式(4)中,因为融合系数满足式(2),则式(4)可以转换为式(7)
(7)
式中 大括号内部的式子是一个关于wi的函数f(wi)。为了得到wi(t+1),则需要求出使得f(wi)最小的wi
f′(wi)=0
(8)
则求解关于wi的方程(8),可得出wi(t+1)的分布式更新函数为
(9)
(10)
式(9)为适应阶段,式(10)为融合阶段,分布式扩散LMS算法可表示为图3。
图3 分布式扩散LMS算法架构
3 间歇型参数估计算法
对于WSNs,第2章中的标准分布式扩散LMS的网络负载依然很高。而如果节点仅仅用自身估计值而不与邻居节点合作,计算出的下一时刻估计值精确度不够,整体网络估计性能较差,很难满足需求。本文提出的一种用于WSNs参数估计的分布式间歇型参数估计算法,该算法可根据网络的估计精度需求,降低网络整体通信负载。
为进一步降低通信负载进而降低网络的能量消耗,间歇型参数估计算法中节点不需要在每个时刻t都进行信息交换。间歇型参数估计中引入了一个间歇参数P来决定节点是否在此时刻发送自身的本地估计值。网络正常工作时P个单位时刻作为一个单位循环。在一个循环中,前P-1个时刻节点只有适应过程,仅用自身估计值更新下一时刻的估计值,最后一个时刻与邻居之间交换信息,触发融合阶段,用融合后的估计值用来更新。
简单的说,节点仅仅在时刻“tmodP=0”时为选中状态,与邻居节点交换自身的估计信息。通过间歇型参数估计算法,通信负载降低至标准扩散算法的1/P。为了提高网络的估计性能,这里提出的间歇型参数估计算法将步长μ归一化处理,用μ′代替标准扩散算法中μ,μ′用式(11)计算
(11)
算法步骤如算法1。
算法1间歇式参数估计算法
Initialize:
Set the alternative parameter P;
Foreach node iWi(0)=0 for whereWiisMx 1 estimation vector
end
Running:
Foreach time instant t=1,2,...,T
Foreach node i=1,2,…,N
IftmodP=0
Combination:
elseφi(t+1)=wi(t)
end
Adaptation:
end
end
4 实 验
为了与标准LMS算法对比,考虑网络拓扑较为复杂的情况,仿真中采用的WSNs有N=50个节点,拓扑为随机生成,具体图4所示。
图4 仿真拓扑图
图4中,端点表示传感器节点,线段表示节点之间的通信链路。在仿真中,输入回归向量为AR-1[10]过程ui(t)=xi(t)+ρiui(t-1)的一个采样ui(t)=[ui(t)ui(t-1)…ui(t-M+1)]T,相关系数ρi=0.5,xi(t)是一个σx,i=1的白噪声过程。参数M=10,则回归输入向量ui(t)为10×1的向量。仿真中时间t=1,2,...,T,其中,T=2 000。每个节点的噪声vi(t)是一个0均值的高斯过程。设每个节点的输入回归向量和噪声都在时间和空间上相互独立。
图5 网络平均MSD对比
图5中可以看出,在时间t大于300时,几种算法的MSD均可达到稳定状态。三种算法对比,本文提出的间歇型参数估计算法和NDLMS低于-40 dB,无合作NLMS算法低于-40 dB。仿真中,可以看出,NDLMS有最好的MSD性能,当P=2时,间歇型参数估计的性能接近于NDLMS。随着P的增大,MSD上升,节点平均估计性能降低。三种算法的收敛速度几乎相同。
为评估稳定状态的估计性能,取后500个时刻的数据描述稳定状态,将这500个时刻的瞬时值求平均。定义节点i的稳定状态MSDi为:MSDi(dB)=20log(E‖w-wi(t)‖2)。图6可以看出间歇型参数估计算法的稳定状态的MSD在P=2,5,8时,约在-50,-46,-44 dB。NDLMS约在-53 dB,无合作NLMS在-36 dB。三种算法的平均数值比较如表2所示,当P=2,5,8时,间歇型参数估计算法可达到NDLMS算法MSD稳定状态估计性能的94.3 %,84.4 %和82 %。
图6 各节点稳定状态的MSD性能对比
图5、图6和表1可以看出:交替系数P较小时的间歇型参数估计算法的收敛速度和MSD性能较好,可接近于NDLMS。表2为平均单位时刻传输的数据包数量对比,其中,NDLMS算法的数量为25 000。无合作NLMS中节点不与其他节点通信不作考虑。由于间歇型参数估计不是每时每刻都需要在邻居节点之间交换估计值,其所需传输的数据包数量在P=2,5,8时分别为12 500,5 000,3 125。
表1 稳定状态下的平均MSD/dB对比
表2 平均通信负载对比
WSNs中NDLMS算法的通信负载较大,而无合作NLMS算法的性能又很难满足估计性能要求,这里提出的间歇型参数估计算法在大大降低通信负载的同时,网络估计性能接近于NDLMS。表2是仿真中NDLMS和间歇型参数估计的平均通信负载对比。通过间歇型参数估计,通过对特定网络设置合适的交替参数,可以在网络的估计性能和通信负载二者中找到平衡。
5 结束语
本文首先介绍了参数估计的背景,给出了WSNs参数估计问题的数学模型。随后,深入地介绍了集中式LMS的算法和分布式LMS算法的优劣,指出WSNs中更适用与分布式算法。为进一步降低网络的通信负载,提出了间歇型参数估计算法,并给出间歇型参数估计算法的运行步骤。最后,仿真表明,间歇型参数估计算法对一般的参数估计可在损失少许网络估计性能的情况下大大降低网络通信负载。