基于自适应CKF 的改进LANDMARC 井下定位算法研究

2024-03-02 13:36苗作华陈澳光朱良建赵成诚刘代文
金属矿山 2024年1期
关键词:协方差时刻滤波

苗作华 陈澳光 朱良建 赵成诚 刘代文

(1.武汉科技大学资源与环境工程学院,湖北 武汉 430081;2.冶金矿产资源高效利用与造块湖北省重点实验室,湖北 武汉 430081)

2022 年我国主要矿山总产量超50 亿t,有超300万名矿工在井下恶劣、危险环境下从事开采作业。 但是,井下巷道为密闭空间,井下人员的位置信息无法依靠卫星导航信号辅助获取[1]。 随着矿产资源开采规模和深度的不断增大,生产作业和开采难度不断加大,因此精准实时地掌握井下人员的位置状况显得十分重要[2]。 在井下定位的多种解决方案中,基于无线射频识别 ( Radio Frequency Identification,RFID)[3-4]的定位技术,因其抗干扰性强、时间短、精度高,不受视距通信问题困扰的特点[5],在矿山井下定位中得到了十分广泛的应用。

LANDMARC[6]、SpotON[7]等都是基于RFID 定位技术的研究成果,LANDMARC(Location Identification Based on Dynamic Active RFID Calibration)定位算法是通过实时获取的参考标签的信号接收强度(Received Signal Strength Indicator,RSSI)[8]作为参考,来计算其与阅读器之间的距离从而达到推算出待测标签位置的效果。 然而随着井下巷道距离增长及岔路增多,信号的多径效应十分严重,导致获取到的RSSI值准确度不高,使得多数基于LANDMARC 的定位算法的精准度不高。 近年来,滤波技术在提高射频定位精度上有着广泛的应用。 曹春萍等[9]将卡尔曼滤波(Kalman Filtering,KF)应用于射频定位中,利用待测目标最新的位置测量值进行位置迭代,得到一个关于目标位置较准确的预估值,极大地提高了射频定位精度,但卡尔曼滤波在环境噪声不确定性的情况下,其鲁棒性较低,且当实际测量模型处于非线性状态时,定位性能会急剧下降。 王鹏飞等[10]引入H∞滤波(H-Infinity Filter,HIF)用于定位结果优化,该方法无需进行有关噪声统计特性的假设,既不使用自由加权矩阵,也不需要任何模型进行转换,可以有效减少算法计算量,并大大提高了定位系统的鲁棒性,但H∞滤波不能保证定位结果均方根误差最小,算法精确度不够高。 朱晨迪等[11]引入粒子滤波(Particle Filter,PF)对待测目标位置进行最优值估计,很好地解决了非线性系统的位置预估问题,但是对于连续动态空间的样本更新过程仍需更新全部粒子及其权值,计算的冗余度与粒子数呈正相关,导致算法计算量较大。

为此,基于RFID 的LANDMARC 定位算法急需克服井下非线性环境干扰所造成的定位精度不高、自适应能力差以及算法收敛速度慢的问题。 赵德康等[12]研究表明:BP 神经网络具备很强的非线性映射能力和自适应性,针对井下环境能够有效提高定位算法的收敛速度及学习能力,使定位系统性能达到最优。 高嵩等[13]研究表明:容积卡尔曼滤波(CKF)具有在强非线性系统中保持稳定的特点,而且对于高维的状态空间定位,其滤波精度与粒子滤波[14]最为接近且计算量较小,是解决井下实时状态估计问题强有力的工具。 目前,应用神经网络方法对井下定位算法的改进研究较薄弱,因此本研究提出基于自适应CKF 的改进LANDMARC 井下定位算法,充分发挥了BP 神经网络的泛化映射能力和CKF 滤波强稳定性的特点,极大提高了井下LANDMARC 算法的定位精度、自适应能力以及定位系统的稳定性。

1 动态LANDMARC 定位

LANDMARC 定位算法本质上是一种基于待测目标信号接收强度RSSI 的质心权重算法[15]。 本研究结合LANDMARC 定位算法抽象出井下三维空间动态模型。 LANDMARC 定位系统由参考标签、目标标签、阅读器构成,其布局如图1 所示。

图1 LANDMARC 定位系统Fig.1 LANDMARC positioning system

传统的LANDMARC 算法是对静止目标进行定位,而井下待测目标位置在不断变化,对于移动目标则需建立动态模型[16]。 在矿山井下高斯分布是应用最广泛的分布模型,因此本研究重点针对高斯域非线性的状态估计问题进行分析,将三维状态[17]空间系统中的待测目标在k时刻的位置状态向量定义为Xk,则LANDMARC 定位系统下的待测目标状态转移方程可表示为

式中,f(·) 为系统非线性转移函数;wk为系统状态转移噪声。 同时,LANDMARC 定位系统下的待测目标观测方程可表示为

式中,zk为目标标签k时刻的观测向量,由k时刻每个阅读器所接收的信号强度值组成;h(·) 是k时刻定位系统的观测函数;X︿k为LANDMARC 定位系统第k时刻的待测目标位置状态向量预估值,作为观测值;vk为观测噪声,由障碍物对信号传播的遮蔽特性决定;wk和vk均为高斯白噪声且不相关。

利用式(2)含有噪声的观测函数可以预测待测目标位置状态向量值Xk,联立式(1)与式(2)可得到移动目标井下动态定位模型[18]。

2 LANDMARC 动态模型求解

2.1 容积卡尔曼滤波原理

现将式(1)、式(2)模型进行概率化,则对高斯域非线性系统模型的状态估计[19]的一般形式为

式中,Pk|k为k时刻位置状态向量Xk的误差协方差矩阵;Pk|k-1为k时刻位置状态向量预估值X︿k的误差协方差矩阵;为k时刻的位置状态估计值;Kk为卡尔曼增益矩阵;Pzz为k时刻观测向量zk的自相关协方差矩阵;Pxz为k时刻位置状态向量Xk与观测向量zk的互协方差矩阵。

CKF 选取权值相等的容积点采用球面径向容积形式进行积分计算[20-22],故本研究使用容积点集方式计算式(3)中的各参量,可得到CKF 在高斯域非线性系统下的递推公式。 由移动目标井下定位模型可知:利用CKF 算法对LANDMARC 定位系统得到的待测目标的位置状态值进行滤波更新,可以得到关于目标位置的一个初步预测值。 CKF 滤波算法实现方程表达如下。

2.1.1 时间更新

假设k时刻位置状态Xk的误差协方差矩阵Pk已知,对其通过Cholesky 分解可得矩阵Sk:

计算k时刻容积点:

式中,i=1,2,…,2n,n为状态维数;ζi为第i个容积点; [1 ]i为单位矩阵第i列;wi为权值;m为容积点数。

在上述计算基础上,进一步计算k+ 1 时刻状态转移方程的传播容积点,以及k+ 1 时刻待测目标位置状态预测值及误差协方差预测值。

2.1.2 量测更新

对k+ 1 时刻的Pk+1|k通过Cholesky 分解得平方根矩阵Sk+1|k:

通过计算k+ 1 时刻容积点、观测值的预测值及观测向量zk+1的自相关协方差矩阵,继而推算出k+1 时刻位置状态向量Xk+1与观测向量zk+1的互协方差矩阵。 最终得到观测函数h计算k+ 1 时刻传播容积点(i= 1,2,…,m):

k+ 1 时刻卡尔曼增益为

式中,Kk+1表示为k+1 时刻卡尔曼增益;Pxz,k+1|k为k时刻位置状态向量Xk与观测向量zk的互协方差矩阵。

k+ 1 时刻的位置状态估计值为

k+ 1 时刻的位置状态误差协方差估计值为

式中,Pk+1为k+1 时刻的位置状态误差协方差估计值;Pk+1|k为k时刻的位置状态误差协方差估计值;Pzz,k+1|k为k时刻观测向量zk的自相关协方差矩阵;为k+1 时刻卡尔曼增益的转置矩阵。

由上述公式可知,CKF 滤波算法通过时间更新和量测更新得到位置状态估计值Xk+1。 在时间更新阶段,滤波器根据前一步位置状态估计做出对当前位置状态值的预测;在量测更新阶段,在时间更新的基础上根据实时获取的当前位置状态观测值,从而获得一个精确度更高的位置状态估计值。

2.2 井下动态LANDMARC 定位模型求解

为求解井下动态LANDMARC 定位模型,需确定井下观测函数h与观测噪声vk的关系。 在井下较为封闭的空间中,射频信号强度随着传播距离衰减,常用的距离—衰减模型[23]为

式中,RSSI(d) 表示待测目标位置到阅读器所在位置的距离为d时的信号强度值;RSSI0表示距离为d0时对应的信号强度值;d0一般取1 m;η为路径衰减指数,受井下环境影响与信号传输路径无关;xσ是由于井下因多径效应引起的信号衰落,表示标准偏差为σ、均值为0 的高斯噪声。

在量测更新阶段,衰落值xσ和系统噪声,其中M为阅读器的个数,均会对测量值产生影响,这些统称为观测噪声,且vik=xσ+φik,则将第i个阅读器在k时刻所接收的待测目标的信号强度值作为观测值uik,表达式为

式中,dik为k时刻第i个阅读器到待测目标的位置距离。 于是,由k时刻所有阅读器的观测值uik所组成的观测向量的具体形式可以表示为

联立式(1)的位置状态转移方程与式(14)观测方程,即可构建出最终的井下非线性动态定位模型。

2.3 自适应容积卡尔曼滤波

在确定了井下具体定位模型的基础上,将CKF滤波算法与BP 神经网络相融合,利用BP 神经网络泛化映射的特性解决井下非线性空间的定位结果优化问题,得到更加精准的待测目标位置。 BP 神经网络由输入层,一个或多个隐含层和输出层构成,能够使确定约束条件下的一组参数组合的目标函数最小[24]。 其原理结构如图2 所示。

图2 BP 神经网络模型Fig.2 BP neural network model

为充分发挥BP 神经网络高度自学习和自适应能力,确定合适的输入神经元是关键,由式(10)可得CKF 滤波算法k+ 1 时刻的位置状态估计值,将其变换形式可得:

由式(15)可知,CKF 滤波算法的滤波结果与位置状态的估计误差、观测误差zk+1-以及卡尔曼增益Kk+1相关。 将这三者作为BP神经网络的输入,经过算法迭代学习优化,输出待测目标位置的真实值与预估值之差,通过自适应最小化差值,最终可以得到一个关于待测目标位置较准确的真实值T。 BP 神经网络优化的容积卡尔曼滤波原理如图3 所示。 应用自适应CKF 滤波算法对井下非线性动态定位模型进行求解,可以得到更加精准的待测目标位置。

图3 自适应CKF 算法原理示意Fig.3 Schematic the principal of adaptive CKF algorithm

在井下定位过程中,单一使用传统的LANDMARC 定位算法存在目标定位结果不准、移动轨迹波动大的现象。 为此,在动态模型定位与滤波算法研究的基础上结合BP 神经网络非线性优化的特点,提出了一种改进的LANDMARC 定位算法,流程如图4 所示。 首先设置LANDMARC 定位系统布局形式,通过LANDMRAC 定位算法将阅读器收集到的信号转化为待测目标位置状态预估值;然后结合自适应CKF 算法进行滤波处理,并对预估值进行修正优化和输出,提高传统LANDMARC 算法的定位精度及鲁棒性。

图4 LANDMARC 改进定位算法流程Fig.4 Flow of LANDMARC positioning improvement algorithm

3 试验与性能对比

3.1 建立实验环境

本研究以国内某金属矿区9 ~11 中段内部分区域的巷道位置信息为基础,由于矿山井下巷道不在同一水平面,针对井下信号的传播特点,模拟了50 m×50 m×50 m 的三维空间进行试验,真实、立体地反映了井下的工作环境。 定位系统部署情况如图5 所示。分别在三维空间模型的4 个顶点上安装了1 个阅读器,80 个参考标签均匀被分布该空间中,间距为10 m。 为确保定位的准确性和可靠性,所有参考标签均在4 个顶置阅读器的检测范围内。

图5 定位系统部署Fig.5 Layout of the positioning system

BP 神经网络由3 层结构构成,输入神经元的个数为3,分别为估计误差、观测误差以及卡尔曼增益Kk+1,结合试验效果设置隐含神经元个数为8,输出为真实值与预估值的差值,迭代次数为1 000 次,期望误差为0.01。 整个观测过程的参数设置见表1。

表1 观测过程参数设置Table 1 Parameter settings for observation process

待测目标真实运动轨迹以及传统LANDMARC定位算法的定位轨迹如图6 所示。

图6 LANDMARC 定位轨迹对比Fig.6 Comparison of LANDMARC positioning traj ectory

由图6 可知:传统LANDMARC 定位算法得到的目标标签的位置与真实值之间的距离偏差较大,并有个别预测点偏移真实轨迹极远。 反映出该算法能够粗略地反映出目标标签的运动轨迹,但是定位精度不高,定位性能不稳定。

为了评价本研究算法的定位性能,采用均方根误差来衡量其定位效果。该值能直观地反映出待测目标预估坐标与真实坐标(x,y,z) 之间的偏离程度,公式为

式中,RMSE为均方根误差;n′为预估坐标的真实个数。

3.2 定位结果与性能分析

由于KF 算法在定位环境处于非线性情况下,其性能会大幅度下降不适用于井下定位,故在图5 所示环境中仅将本研究算法与经由HIF 滤波的LANDMARC 定位算法及单一LANDMARC 定位算法进行性能比较。

图7(a)所示为3 种算法的定位轨迹,可以直观地看出,本研究算法和经过HIF 滤波得到的目标标签轨迹与真实轨迹更加贴近。 图7(b)所示为3 种定位算法的均方根误差。 分析可得:本研究算法和经由HIF 滤波的定位偏差都远小于传统LANDMARC 定位算法。 但是经HIF 算法滤波后的定位结果偏差波动较大,呈现逐渐发散现象。 相较于HIF 滤波算法,本研究算法得到的定位偏差分布较为平稳。

图7 算法轨迹预测与均方根误差对比Fig.7 Comparison of the trajectory prediction and root mean square error of the algorithms

为了更加精准地反映算法的定位性能,将3 种函数的均方根误差采用概率密度函数与累计分布函数方式,从定位偏差分布概率以及累计分布概率上分别进行比较,结果如图8 所示。 由图8(a)偏差概率密度分布图可以看出,本研究算法的定位偏差分布最为集中,小于1 m 占90%以上,且偏差的期望值最小。由图8(b)偏差经验累计分布图可知,本研究算法定位偏差小于0.612 m 的概率为60%,HIF 滤波算法的定位偏差小于1.221 m 的概率为60%,LANDMARC算法的定位偏差达到2.434 m。

图8 偏差概率密度与偏差累计分布Fig.8 Deviation probability density and deviation cumulative distribution

综合上述试验结果可知:在井下进行这种非线性环境下目标定位时,本研究算法相较于经由HIF 滤波的LANDMARC 定位算法和单一LANDMARC 定位算法,精度更高,性能更稳定。

4 结 论

针对传统LANDMARC 算法在井下定位不够精准的问题,本研究对其进行了改进,利用BP 神经网络的泛化映射能力,引入神经元参数对CKF 算法进行优化,充分结合BP 神经网络迭代式学习和CKF 算法在强非线性系统中保持稳定的特点,增强了定位算法的自适应能力,提高了井下定位精度。 基于井下真实场景的仿真试验结果表明:

(1)本研究所提算法的定位偏差在0.612 m 以下的概率达到60%,较传统LANDMARC 定位算法在精度上提高了1.822 m,可满足井下复杂动态环境的高定位精度要求。

(2)引入自适应CKF 算法进行滤波处理可以大幅提高传统LANDMARC 定位算法的稳定性。 本研究所提算法定位偏差分布更为集中,偏差在1 m 以下的占90%以上,可满足井下复杂动态环境的高稳定性要求。

(3)试验中发现,当目标标签在距离阅读器较远位置移动时,本研究算法定位的实时性会较距离近的位置有所下降。 因此,进一步提升该算法远距离井下定位的实时性是后续研究重点。

猜你喜欢
协方差时刻滤波
冬“傲”时刻
捕猎时刻
多元线性模型中回归系数矩阵的可估函数和协方差阵的同时Bayes估计及优良性
不确定系统改进的鲁棒协方差交叉融合稳态Kalman预报器
街拍的欢乐时刻到来了
RTS平滑滤波在事后姿态确定中的应用
基于线性正则变换的 LMS 自适应滤波
一天的时刻
基于随机加权估计的Sage自适应滤波及其在导航中的应用
纵向数据分析中使用滑动平均Cholesky分解对回归均值和协方差矩阵进行同时半参数建模