基于Chan-Taylor 和优化BP 神经网络的5G 室内定位算法

2023-09-19 07:47李帅辰武建锋
中国惯性技术学报 2023年8期
关键词:定位点定位精度基站

李帅辰,武建锋

(1.中国科学院国家授时中心,西安 710699;2.中国科学院大学 集成电路学院,北京 100049;3.中国科学院大学 电子电气与通信工程学院,北京 100049)

近年来,随着导航与定位技术的发展和人们对室内复杂环境下定位精度要求的提高,室内定位成为定位领域研究的热点之一[1]。经过数十年的发展,室内定位技术已经较为成熟,第五代移动通信技术(Fifth-Generation,5G)由于其建设成本低、覆盖面积广和超宽带等优点,被越来越多地应用在室内定位中,弥补了室内环境下卫星导航定位精度不足的缺点[2]。

近数十年,国内外研究人员对室内定位技术进行了多方面的研究。徐建华等人[3]针对UWB 室内定位精度易受环境影响的问题,在低速、多节点的情况下,提出了一种基于移动节点辅助定位的方法。实验结果表明该方法的定位均方根误差明显优于最小二乘法和Chan 算法。王旭等人[4]针对在钟差预报中小波神经网络预报结果的不稳定性问题,提出一种粒子群优化小波神经网络的钟差预报模型,提高了预研结果稳定性。Bi J 等人[5]为了提高定位精度,提出了一种基于粒子群优化支持向量回归的WiFi 室内定位算法。实验结果表明,与基于卷积神经网络的方法相比,该算法有效降低了RMSE。Su D 等人[6]设计了一种混合模型,即卷积-递归神经网络,用于在复杂的室内可见光传播环境中学习从接收信号强度到位置坐标的非线性映射,利用移动终端光电探测器的接收信号强度提取几何特征,通过深度学习推断精确的位置坐标,仿真结果表明该方法可以达到厘米级的定位精度。Edgar S 等人[7]提出了一种改进的混合技术,从可用的无线局域网接入点接收信号强度信息,结合无线传感器网络技术,实现基于指纹的室内定位,有效降低了定位误差。Peng S 等人[8]的算法设计是加权K近邻和卡尔曼滤波算法的集合,并提出了加权K近邻粒子滤波和加权K近邻扩展卡尔曼滤波,有效降低了定位误差。

Chan 算法计算量小,但受非视距(Non Line of Sight,NLOS)误差的影响较大,而NLOS 误差的存在又会导致定位时产生多径效应,因此Chan 算法的定位精度会随着室内障碍物的增多而大幅降低[9]。Taylor算法虽然有很好的鲁棒性,适用于复杂的室内环境,但其过于依赖初始值,在复杂的实际环境中具有一定的实现难度[10]。为此,融合Chan 算法和Taylor 算法,即使用Chan 算法计算出的定位值作为Taylor 算法的初始值进行迭代求解。该算法融合了Chan 算法计算量小的特点和Taylor 算法精度高、鲁棒性好的优点,在没有任何已知点信息的情况下,可以完成定位。

在小样本训练的情况下,BP 神经网络具有良好的训练效果;当训练样本较大时,BP 神经网络无法实现高精度的训练效果且每次运行结果容易受随机初始值的影响,导致训练结果的方差较大。因此,本文使用遗传算法对BP 神经网络进行了优化,实现了GA-BP算法。GA-BP 算法在机械故障检测、智能电网和智能控制等领域的应用比较广泛[11],但在5G 室内定位领域的应用和文章鲜有报道,因此本文旨在实验分析该算法在5G 室内定位领域的可行性和适用性。

1 定位精度因子与室内定位算法

1.1 几何精度因子和系统定位精度

几何精度因子(Geometric Dilution of Precision,GDOP)是衡量定位精度的指标[12]。二维定位方面主要关注水平精度因子(Horizontal Dilution of Precision,HDOP)。

单点定位依靠基站和待定位点之间的距离观测量,由多个伪距方程组成的非线性方程组可表示为:

其中,c为光速;(x,y,z)为待定位点的坐标;(xi,yi,zi)为第i个基站的坐标;ρi为待定位点到第i个基站之间的伪距;Δt为时钟偏差估计值。

将式(1)在近似位置(x*,y*,z*)处进行泰勒展开,只保留一阶项,可得:

另一个影响定位精度的因子是用户等效距离误差(User Equivalent Range Error,UERE),其意义是表征接收机到定位点的真实距离差与实际测量得到的伪距差之间差值的标准差。HDOP 与UERE 两者的乘积即为系统定位精度。

1.2 基于TDOA 的Chan 算法

Chan 算法是基于到达时间差(Time Differences of Arrival,TDOA)的一种定位方法。Chan 算法是非递归双曲线方程组解法,具有解析表达式解,该算法在测量误差服从理想高斯分布时,定位精度高且计算量小,但在实际环境中存在误差较大的测量值时,该算法的性能会显著下降。二维情况下,可分为只有三个点参与定位和三个点以上参与定位。

只有三个点参与定位时,定位条件如图1 所示。图中BS1、BS2 和BS3 为基站,基站的坐标已知,分别为(x1,y1)、(x2,y2)和(x3,y3)。MS 为待定位点,坐标位置记为(x,y)。假设BS1 为固定基站,此时所有的距离差ri都是以BS1 为基准。

图1 三个点参与定位的TDOA 图Fig.1 TDOA diagram of three points participating in positioning

根据几何关系可以得到:

将式(8)代入式(9)可消除方程中未知数的平方项,仅保留了一次项,得到了一系列的线性方程组。当i=1,2,3时,可得:

求解式(10)可得:

将式(11)代入式(8)可求得r1和待定位点的坐标(x,y)。

当基站的数量大于3 时,TDOA 得到的非线性方程组个数要多于位置变量的个数,此时可以采取最小二乘法等方法来充分利用冗余数据,使得Chan 算法能够更好地计算出待定位点MS 的坐标[13]。

1.3 基于TDOA 的Taylor 级数展开算法

Taylor 级数展开法是一种迭代算法,在Taylor 级数展开的基础上,利用初始迭代值进行加权最小二乘法(Weighted Least Squares,WLS)估计,然后求解位置估计误差的局部最小二乘解,并对待定位点的位置进行更新。Taylor 算法的前提是需要待定位点的初始估计值,而算法的主要思想是通过不断迭代来修正待定位置的估计值,最后逐渐逼近待定位点的真实位置坐标。

假设待定位点坐标的估计值为(x0,y0),真实值为(x,y),且x=x0+Δx,y=y0+Δy,则函数fi(x,y,xi,yi)在(x0,y0)处Taylor 级数展开结果为:

将fi(x,y,xi,yi)在(x0,y0)处进行泰勒展开,并忽略二阶以上的分量可得:

在下一次递归计算中,令x'=x0+Δx,y'=y0+Δy,更新定位点的坐标值进行迭代计算。重复以上的步骤直到误差满足设置的阈值时结束计算,输出定位结果。

1.4 基于TDOA 的Chan-Taylor 算法

在室内定位中,多径效应是影响定位精度的干扰因素之一。多径效应会导致信号衰减,信噪比下降,最终导致测量误差,定位精度也随之降低。

在室内存在大型障碍物如墙壁和立柱时,由于大型障碍物会严重阻挡信号的传播路径,会产生阴影效应。在信号接收区域存在半盲区,接收端在这一区域内无法收获信号,导致终端在接收过程中信号发生起伏变化。这种因大型障碍物阻挡而导致的信号强度变化称为阴影效应。

Chan 算法的定位精度高且计算量小,但Chan 算法在复杂环境下,比如,在有非视距误差和多径干扰严重的环境下性能会有显著下降。Taylor 算法具有很强的适应性和鲁棒性,在实际工程中得到了很广泛的应用。但Taylor 算法过于依赖初始值的选取,若给出的初始值和真实值相差过大,会导致定位误差显著增大甚至发散。因此本文结合两种算法的优点,将Chan算法得到的结果作为Taylor 级数展开算法的初始值进行迭代运算,计算出精度高、适应性强的定位点坐标。

1.5 BP 神经网络

反向传播(Back Propagation,BP)神经网络是一种按照误差逆向传播算法训练的多层前馈神经网络,是应用最广泛的神经网络模型之一[14]。BP 神经网络具有任意复杂的模式分类能力和优良的多维函数映射能力。从结构上讲,BP 网络具有输入层、隐藏层和输出层;从本质上讲,BP 算法就是以网络误差平方为目标函数、采用梯度下降法来计算目标函数的最小值。

由于本文的模型较为简单且训练集个数较少,故采用单隐藏层的BP 神经网络进行定位,简单高效,算法复杂度较低。在本文的室内定位应用场景中,BP神经网络的输入为训练集中45 个点的伪距观测值和真实坐标,以此来训练网络。网络训练完成后,根据测试集中各点的伪距观测值输出这些点的坐标。

1.6 GA-BP 神经网络

GA-BP 神经网络即使用遗传算法优化的BP 神经网络。遗传算法(Genetic Algorithm,GA)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的模型。该算法通过数学的方式,利用计算机仿真运算,将问题的求解过程转换成类似生物进化中的染色体基因的交叉、变异等过程。遗传算法已被人们广泛地应用于组合优化、机器学习、信号处理、自适应控制和人工生命等领域[15]。

首先将所有参数平铺成一条染色体的形式,效果如图3 所示。图中,w1为连接输入层和隐含层的权重矩阵,b1为连接输入层和隐含层的偏差,w2为连接输出层和隐含层的权重矩阵,b2为连接输出层和隐含层的偏差。

图3 GA-BP 神经网络参数Fig.3 Parameters of GA-BP neural network

图4 为GA-BP 神经网络产生初始种群的示意图。gen_num为种群数量。

图4 GA-BP 神经网络产生初始种群Fig.4 Initial population generated by GA-BP neural network

计算各个种群的适应度函数,设输入数据为x,真实输出为y,经过模型预测输出为y*。计算上一个种群的适应度函数,适应度越大对应的概率越大,越容易被选择。因此,本文选择轮盘赌的方法选出适应度较大的染色体,随后进行交叉和变异,这一步本质上是为了增加种群的多样性。

GA-BP 神经网络相较于BP 神经网络,主要的提升包括:

1)降低运算结果的随机性。BP 神经网络使用随机初始值,导致输入数据相同但计算得到的结果不同,不稳定。

2)提高泛化能力。过拟合是神经网络面临的一个重要问题,而遗传算法优化的BP 神经网络可以通过控制种群的多样性来避免过拟合问题,从而提高网络的泛化能力。

3)改进学习速度。BP 神经网络的学习速度较慢,而遗传算法优化可以加速网络的学习速度,提高网络的训练效率。

本文使用遗传算法计算出最优初始阀值权值赋予网络预测,使得BP 神经网络参数(包括输入和隐藏层之间的权重参数、隐藏层神经元的偏置、隐藏层和输出层之间的偏置以及输出层神经元的偏置等)的配置最优化,测试集的预测误差最小化,降低适应度函数值。具体的实现方式为改变网络参数的初始值,用BP 神经网络的反向传播寻得整个网络参数的最优解。经过实验,最终选用单隐含层模型,该模型对于简单的建模问题结构简洁且性能高效,采用Sigmoid 作为隐藏层的激活函数,神经元个数为7。

在本文室内定位应用场景中,神经网络的输入为训练集中45 个点的伪距观测值和坐标,以此训练网络,根据测试集各点的伪距观测值输出这些点的坐标。

2 实验验证

2.1 实验平台介绍

在中国科学院国家授时中心航天城场区地下室建设了四个5G 增强定位型基站,发射频率为3.5 GHz,具备定位参考信号(Positioning Reference Signal,PRS)带内参考信号的下行播发功能。在地下室构建了约510 m2的长方形室内定位场景,场景长约30 m,宽约17 m,中间为6 根钢筋水泥混合立柱,场景示意如图5所示,以基站4 为坐标原点(0,0,0),红线为X 轴,绿线为Y 轴。

图5 测试环境示意图Fig.5 Schematic diagram of the test environment

本次测试所选基站为1 号、2 号、4 号和5 号基站,3 号基站已移除。四个基站的坐标分别为:1 号基站(13.731 m,27.501 m,3.205 m);2 号基站(0.192 m,28.078 m,3.322 m);4 号基站(0.501 m,1.161 m,3.483 m);5 号基站(14.645 m,1.326 m,3.492 m)。

关于时间同步,室内定位系统的时间以国家授时中心(National Time Service Center,NTSC)保持的协调世界时(Universal Time Coordinated,UTC)为时频参考,采用White Rabbit 技术实现四个基站之间的时间同步[16],传输介质采用光纤,采用主从星型连接模式,如图6 所示。

图6 时间同步示意图Fig.6 Schematic diagram of time synchronization

图6 中各基站之间同步精度优于1 ns,符合TDOA对时间同步的要求。

2.2 实验结果与分析

2.2.1 定位结果测试与分析

本文选择了13 个具有代表性的点,涵盖了受遮挡等干扰严重的点和定位条件较好的点。

首先,本文计算了HDOP、UERE 和水平定位精度(UERE×HDOP),HDOP 和水平定位精度在理论上分别表征测量数据的误差和标准差。本文计算UERE 时,根据5G 基站到定位点的真实距离差与实际测量得到的伪距差之间差值计算得到的。

13 个定位点的水平定位精度和 HDOP 与Chan-Taylor 算法定位结果的误差和标准差如表1 所示,本文的定位误差为各算法计算出的定位点坐标和使用全站仪测量出的真实坐标之间的欧氏距离。

表1 水平定位精度和HDOP 与实际定位结果对比Tab.1 Comparison of horizontal positioning accuracy,HDOP and actual positioning results

经过计算,Chan-Taylor 定位结果的标准差和水平定位精度基本成正比例关系,即水平定位精度越小,定位结果的标准差越小。Chan-Taylor 的定位误差和HDOP 基本成正比例关系,即HDOP 越小,定位结果的误差越小。个别点如点34,由于该点接收信号受柱子遮挡的影响较大,导致无线信号不能直接传播,非视距传播对定位精度的影响很大,多径效应尤其是阴影效应也明显,故定位误差相较于理论值更大。

分别使用Chan-Taylor 算法、BP神经网络和GA-BP神经网络三种算法进行定位,定位误差如图7 和表2所示。BP 和GA-BP 算法的定位误差均为同参数计算5次的平均值,训练样本数量为45,属于小样本训练。在本次训练中,隐藏层的神经元个数为7,最大迭代次数为10000,学习率为0.1,目标误差为0.0001。

表2 三种算法的定位误差Tab.2 Positioning error of three algorithms

图7 三种算法定位误差对比Fig.7 Comparison of positioning error of three algorithms

在测试的13 个点中,Chan-Taylor 算法定位误差最小为0.1895 m,平均定位误差为0.4333 m;BP 算法的定位误差最小为0.2066 m,平均为0.3649 m;GA-BP算法的定位误差最小为0.2498 m,平均为0.3944 m。

由此可知,在小样本训练中,对于大部分定位点,BP 算法的定位误差优于GA-BP 和Chan-Taylor 算法。BP 算法的定位精度可以达到0.2 m~0.5 m,GA-BP 算法的定位精度可以达到0.2 m~0.6 m,Chan-Taylor 算法的定位精度可以达到0.2 m~0.6 m。

本文选取2 个点进行分析,对比三种算法在小样本条件下的定位结果。在点20 连续测量50 组数据,得到的定位结果如图8 所示。可以得到Chan-Taylor算法的定位误差为0.4078 m,BP 算法的定位误差为0.2636 m,GA-BP 算法的定位误差为0.3472 m,BP算法的定位误差优于GA-BP 和Chan-Taylor 算法。

图8 点20 三种算法定位结果对比Fig.8 Comparison of positioning results of three algorithms for point 20

图9-10 为点20 在X 轴、Y 轴方向上用三种算法得到定位误差。从图中可以看出,在X 轴方向上,BP和GA-BP 算法的定位误差与Chan-Taylor 算法近似;在Y 轴方向上,BP 和GA-BP 算法的整体波动更大,但BP和GA-BP 算法的定位误差明显优于Chan-Taylor算法,且Chan-Taylor 算法的定位结果有一定的系统偏差。

图9 点20 三种算法的X 轴定位误差对比Fig.9 Comparison of X-axis positioning error of three algorithms for point 20

图10 点20 三种算法的Y 轴定位误差对比Fig.10 Comparison of Y-axis positioning error of three algorithms for point 20

在点30 连续测量60 组数据,得到的定位结果如图11 所示。Chan-Taylor 算法的定位误差为0.3741 m,BP 算法的定位误差为0.2066 m,GA-BP 算法的定位误差为0.2498 m,BP 算法的定位误差优于GA-BP 和Chan-Taylor 算法。

图11 点30 三种算法定位结果对比Fig.11 Comparison of positioning results of three algorithms for point 30

图12-13 为点30 在X 轴、Y 轴方向上用三种算法得到定位误差。从图中可以看出,在X 轴和Y 轴方向上,BP 和 GA-BP 算法的定位误差明显优于Chan-Taylor 算法,但BP 和GA-BP 算法的整体波动更大,部分点的误差接近1 m。

图12 点30 三种算法的X 轴定位误差对比Fig.12 Comparison of X-axis positioning error of three algorithms for point 30

图13 点30 三种算法的Y 轴定位误差对比Fig.13 Comparison of Y-axis positioning error of three algorithms for point 30

综上所述,在小样本训练的情况下,BP 和GA-BP算法的定位误差优于Chan-Taylor 算法,但BP 和GA-BP 算法的整体波动更大。

由于本次测量条件有限,只有45 组数据用于BP和GA-BP 神经网络的训练,为小样本训练,可能导致神经网络的训练不充分,进而导致定位结果的精度和稳定度不高。本文接下来的工作旨在分析在训练集数据足够多的情况下,训练得到的网络在室内定位领域的效果。仿真了四组数据,对伪距数据进行人为干扰,加上随机误差,训练集的点数分别为100、200、300和400 个。大样本训练下三种算法的定位误差如图14和表3 所示。

表3 大样本训练下三种算法定位误差对比Tab.3 Comparison of positioning error of three algorithms under large number of sample training

图14 不同训练集个数下三种算法的定位误差对比Fig.14 Comparison of positioning error of three algorithms under different number of training sets

由图14 和表3 可知,随着训练集个数的增加,BP 和GA-BP 算法的定位结果明显得到了改善。实验证明,当训练集个数大于100 后,GA-BP 算法的定位结果优于BP 算法,并明显优于Chan-Taylor 算法。

综上所述,在训练集数量小时,BP 算法的定位精度最高,GA-BP 算法次之,Chan-Taylor 算法最低,当训练集数量大于100 时,GA-BP 算法的定位精度优于BP 算法,GA-BP 和BP 算法的定位精度明显优于Chan-Taylor 算法,且GA-BP 算法的稳定度高于BP算法。根据以上分析,可以根据训练集数目的多少选择室内定位算法,如图15 所示。当无样本可用时,采用Chan-Taylor 算法进行计算;当有小样本可用时,采用BP 算法效果更佳;当有大样本可用时,采用GA-BP 算法以提高定位精度。

图15 不同场景下的5G 室内定位算法Fig.15 5G indoor positioning algorithms in different scenarios

3 结论

本文基于5G 毫米波观测值,将Chan-Taylor 算法、BP 算法和GA-BP 算法用于室内定位,将定位值与真实值进行对比,比较三种算法在室内定位方面的表现。

实验表明,在小样本训练(45 个点)的情况下,BP 算法的定位误差优于GA-BP 和Chan-Taylor 算法。在测试的13 个点中,Chan-Taylor 算法的平均定位误差为0.4333 m;BP 算法的平均定位误差为0.3649 m;GA-BP 算法的平均定位误差为0.3944 m,但BP 和GA-BP 算法的定位结果整体波动更大。随着训练集个数的增加,BP 和GA-BP 算法的定位结果明显得到了改善。经过实验,在训练集个数达到约100 后,GA-BP算法在避免过拟合方面有所改善,定位结果优于BP算法,并明显优于Chan-Taylor 算法,但Chan-Taylor算法在算法复杂度和适应性方面优于神经网络。

神经网络需要依靠大量的已知点的信息才可以进行定位,而Chan-Taylor 算法在没有任何已知点信息的情况下也可以完成定位,具有很强的方便性和适用性。

猜你喜欢
定位点定位精度基站
北斗定位精度可达两三米
数独小游戏
GPS定位精度研究
GPS定位精度研究
组合导航的AGV定位精度的改善
地铁刚性接触网定位点脱落状态分析
汽车大灯定位方案设计研究
我的结网秘籍
可恶的“伪基站”
基于GSM基站ID的高速公路路径识别系统