基于粒子群优化压缩感知的可见光定位算法 下载: 933次
Objective Over the past few years, the large-scale popularization of smart terminal devices has introduced a wide range of services, including indoor positioning. Indoor positioning systems that are based on visible light communication have four advantages over indoor positioning systems that are based on radio-frequency communication technology: 1) Centimeter-level positioning accuracy can be achieved; 2) They have high bandwidth and support high-speed data transmission; 3) There is no electromagnetic wave radiation, so they can be used directly in gas stations, operating rooms, and other places where electromagnetic radiation is prohibited; 4) They use mainly line-of-sight communication. Because of these advantages, indoor positioning based on visible light communication has gradually become a research hotspot. Currently, fingerprint positioning based on compressed sensing has two problems: 1) Using the linear least squares method to reconstruct the signal can easily fall into the local optimal solution, resulting in large positioning errors; 2) Large observation values are required to improve the accuracy of reconstructed signals, that is, a high-density light emitting diode (LED) layout is required. To solve the two abovementioned problems, a visible light positioning algorithm based on particle swarm optimization compressed sensing (PSO-CS) is proposed that aims to provide a high-precision positioning method under low-density LED layout.
Methods The research methods for visible light positioning propose in this paper are mainly based on compressed sensing and particle swarm optimization. First, based on the reconstructed and measured received signal strength (RSS) values, a fitness function based on the matched RSS residual is established. Second, based on the sparsity of the location fingerprints, the problem of solving the weight of fingerprint positioning is transformed into the problem of reconstructing the sparse matrix. Third, based on the inner product of the measurement matrix and the observation vector, the energy of the inner product is arranged from high to low to obtain the four fingerprint points with the highest energy value. Finally, combined with particle swarm optimization, the weight vector of four fingerprint points close to the target is reconstructed and the coordinates of the target are calculated.
Results and Discussion The simulation results show that the average positioning error of the PSO-CS algorithm is significantly lower than that of K-nearest neighbor (KNN), extreme learning machine (ELM), random forests (RF), artificial neural network (ANN), weighted K-nearest neighbor (WKNN), orthogonal matching pursuit (OMP), reweighted l1-norm minimization (RWl1M), and basis pursuit (BP) algorithms. In the low signal-to-noise ratio (SNR) range (5 dB-20 dB), even if the grid spacing is 50 cm, the average positioning error of the PSO-CS algorithm is still better than that of the Newton-Raphson (NR) and linear least square (LLS) positioning algorithms (Fig. 3). When the SNR is between 10 dB and 20 dB, the cumulative distribution of positioning errors made by the PSO-CS algorithm is significantly better than that of the other 10 algorithms (Fig. 4). Even in the low-density LED layout, the average positioning error based on the PSO-CS algorithm is still low (Fig. 8). The PSO-CS algorithm has good robustness. Even if the grid spacing is 50 cm and the fingerprint sampling rate is only 50%, the average positioning error curve fluctuation is still small, even after execution is repeated 50 times. When the SNR is 10 dB, the variance is 2.54 cm, and when the SNR is 20 dB, the variance is 1.38 cm. The variance in both cases is very small (Fig. 9 and Fig. 10). When the grid spacing is 50 cm and the SNR is 10 dB, compared with KNN, ELM, RF, ANN, WKNN, OMP, RWl1M, BP, NR, and LLS algorithms, the average positioning errors of PSO-CS algorithm are reduced by 75.88%, 89.15%, 85.44%, 90.25%, 58.05%, 80.82%, 86.29%, 80.01%, 73.57%, and 76.56%, respectively (Table 2). When its positioning accuracy is similar to that of the PSO-CS algorithm, the WKNN algorithm requires 34.3 times more fingerprints than the PSO-CS algorithm, and WKNN’s average calculation time is 2.5 times higher than PSO-CS’s (Table 3).
Conclusion In this paper, a novel particle swarm optimization compressed sensing algorithm is proposed and successfully applied to visible light positioning based on location fingerprints. Because only four neighbor fingerprints are required to participate in positioning, the dimension value of the swarm search is 4. The weight value of the fingerprint points is between 0 and 1; that is, the search space of the swarm is between 0 and 1. The dimensions and space are very small, so the time complexity of the proposed algorithm is low. This allows it to meet real-time positioning requirements. The simulation results show that even in the low signal-to-noise ratio and low-density LED layout, the average positioning error of the proposed algorithm is still low, and it remains significantly lower than that of similar algorithms. This paper also analyzes the influence of grid spacing, swarm size, sparsity, number of LEDs, and fingerprint sampling rate on positioning errors in the PSO-CS algorithm. The results obtained can provide a useful reference for the design of a practical visible light positioning system.
1 引言
作为室外定位系统的补充,室内定位系统逐渐成为目前研究的热点之一。与到达时间(TOA)和到达角度(AOA)两种定位方法相比,由于读取接收信号强度(RSS)值简单、硬件成本低且收发之间无需保持时钟同步,基于RSS的定位方法备受研究人员的关注[1]。近几年随着可见光通信(VLC)的发展,基于VLC的室内定位逐渐成为研究热点[2]。与射频通信技术相比,基于发光二极管(LED)通信的室内定位具有3个优点[3]:定位精度高,可以实现厘米级别的定位精度;频谱资源丰富,属于可见光频谱,无电磁波辐射,可直接在加油站、手术室等电磁波辐射禁止区域使用;多径干扰小,主要存在视距(LOS)通信。
室内可见光定位主要可以分为基于测距与无需测距两种定位方法[2-3],基于测距的定位方法采用朗伯光源模型得到收发之间的距离,进而实现定位[4-5]。无需测距的定位方法一般采用指纹匹配的方法实现定位[6-7]。基于测距的定位方法虽然简单,但需要获得朗伯光源模型的相关参数,实现起来较难。基于位置指纹的定位方法在离线阶段会不可避免地需要采集位置指纹信息,但是定位时无需依赖朗伯光源模型,可以有效地解决获取朗伯光源模型参数难的问题,且定位精度高[7]。机器学习是常用的指纹定位方法,如K最近邻(KNN)[8]、极限学习机(ELM)[9]、随机森林(RF)[10]及人工神经网络(ANN)等[11]。文献[ 12]采用加权K最近邻(WKNN)算法实现可见光定位,由于K个最近邻指纹采用不同的权重,取得较好的定位精度。基于机器学习的指纹定位通常将定位区域划分成不同类别的网格,通过训练与学习得到目标所属的类别,但为了提高定位精度,需要大量的样本学习,增加了实际应用的难度。WKNN虽然采用加权的方式实现定位,相比KNN,定位误差得到显著降低,然而权重的计算方法采用RSS向量之间距离的倒数[12],该权重值计算方法依然不够准确。由于位置指纹满足压缩感知(CS)的稀疏性,因此CS为可见光定位提供了一种新的研究方案。经典的CS算法包括正交匹配追踪(OMP)[13]、再加权l1范数最小化(RWl1M)[14]及基追踪(BP)[15]等。CS虽然在基于射频通信的指纹定位中被广泛使用[16-17],然而在VLC中的研究依然较少,文献[ 13]利用OMP重构算法实现可见光定位,文献[ 14]利用RWl1M重构算法实现可见光定位。
目前,基于CS的指纹定位存在2个问题:采用线性最小二乘法重构信号,容易陷入局部最优解,从而导致定位误差大;为了提高CS重构信号的准确性,需要较大的观测值,即需要高密度的LED布局,如基于OMP[13]与RWl1M[14]的可见光定位。为了解决这些问题,本文结合粒子群优化(PSO)较强的全局搜索能力及较低的时间复杂度[18-20],提出一种基于粒子群优化压缩感知的重构算法(PSO-CS算法),并将指纹定位的权重求解问题转换为稀疏矩阵的重构问题,旨在提供一种在低密度LED布局下实现高精度的定位方法。
2 基本理论
2.1 压缩感知
CS表明,当向量X∈ℝN是稀疏度为S的信号时,可以利用测量矩阵Φ∈ℝM×N和低维的观测向量Y∈ℝM,通过CS方法重构出高维的未知向量X∈ℝN,CS的基本表达式[16]为
式中:M为LED的个数,N为指纹点的个数。当M≪N时,(1)式是一个欠定方程组。但当向量X满足稀疏性的情况下,在一定条件下,(1)式可以转换为[16]
式中:‖X‖1为向量X的l1范数;ε为测量噪声。可以利用线性最小二乘法求解出向量XI∈ℝS,即
式中:索引集I∈ℝS;ΦI∈ℝM×S表示依次提取测量矩阵Φ对应索引集I的S列,并重新构成矩阵。
2.2 粒子群优化
在经典的粒子群算法中,通过在解空间域内随机产生Q个粒子,每个粒子都有各自的位置与飞行速度,通过不断的迭代,粒子群快速收敛于最优解,其中第j个粒子的速度与位置更新[18]分别为
式中:t为当前的迭代次数;k为搜索空间的维度,维度大小取决于稀疏度S的大小;r1与r2为[0,1]之间均匀产生的随机值;ω为惯性权重,其大小决定粒子的全局搜索能力;c1与c2分别为粒子的自我学习能力与社会学习能力;xj,k(t)与vj,k(t)分别为第j个粒子在第t次迭代后的位置与速度;pj,k(t)和gk(t)分别为第t次迭代后的个体最优解和全局最优解。
3 PSO-CS定位算法设计
3.1 指纹定位模型
基于LED通信的PSO-CS定位模型如
3.2 测量矩阵
离线阶段,由N个指纹点构成的RSS测量矩阵Φ∈ℝM×N为
式中:第n个指纹点的RSS测量向量φn=
3.3 观测向量
在线阶段,第l个目标的RSS观测向量Yl∈ℝM×1为
式中:φm,l为第l个目标读取到来自第m个LED的RSS值;l=1,2,…,C,C为目标的总数。
3.4 适应度函数
由于压缩感知重构的目的是寻找一个稀疏度为S的解向量XI,使重构误差最小。而基于压缩感知的指纹定位实质是找到S个最近邻指纹点,并重构出S个指纹点的权重值,因此建立适应度函数,表达式为
式中:I=max(ΦTYl,S),表示得到ΦTYl前S个能量最大的值,能量按照从高到低依次得到对应的索引集I∈ℝS;XI∈ℝS表示按照索引集I∈ℝS得到对应指纹的权重值向量;Ψ=ΦI,表示依次提取测量矩阵Φ对应索引集I的S列,并重新构成矩阵Ψ∈ℝM×S。因此定位的本质是找到一个解向量XI=[g1,g2,…,gS]T,使目标函数F取得最小值,即
式中:gk为粒子群迭代收敛时第k维输出的全局最优解。
3.5 算法描述
针对传统压缩感知,采用(3)式重构信号时容易陷入局部最优解,且需要高密度的LED布局,因此提出一种PSO-CS算法,其流程图如
最后,根据步骤3)输出的索引集I和XI=[g1,g2,…,gS]T,计算第l个目标的坐标(xl,yl),即
3.6 算法的时间复杂度
PSO-CS算法的时间复杂度如
表 1. PSO-CS算法的时间复杂度
Table 1. Time complexity of the PSO-CS algorithm
|
4 仿真分析
为了验证所提PSO-CS算法的有效性,对其与如下10种算法进行比对分析。包括5种常用的机器学习,分别为KNN[8]、ELM[9]、RF[10]、ANN[11]、WKNN[12];3种常用的压缩感知,分别为OMP[13]、RWl1M[14]、BP[15];2种被广泛使用的基于测量收发之间距离的定位方法,分别为牛顿迭代(NR)[5,21]、线性最小二乘法(LLS)[4,22]。其中ELM、ANN、RF三种机器学习分类的基本原理[7]:首先,将定位区域划分为若干个相等的网格点,其中每个网格点代表一个类别;其次,利用机器学习算法对每个网格点所属的类别进行训练;最后,与推导的模型进行比较,预测目标的位置。
4.1 测量模型
由于LED是可见光光源,服从朗伯光源模型,在仿真过程中,位置指纹的测量矩阵Φ与目标的观测向量Yl由朗伯光源模型产生。典型的室内可见光通信主要存在LOS通信,为了不失一般性,同样采用被广泛使用的LOS朗伯光源模型,如文献[ 4-7,12-14,19,23-28]均采用LOS朗伯光源模型。则接收到的光功率值为
式中:Ptr为LED的发射功率;d为LED与PD之间的距离;λ为LED的调制阶数;APD为PD的有效面积;β和α分别为LED的辐射角和PD的接收角;Ts和g分别为接收端的光滤波器增益和聚光透镜增益。为了不失一般性,同样假设cos β=cos α=h/d[12,14,20,22-24,26],h表示LED与PD之间的垂直距离。
4.2 参数设置
设置朗伯光源模型的参数为Ptr=5 W,Ts=g=1,PD的接收视角αFOV=π/2,APD=1 cm2,λ=1。为了公平比对,目标总数C为200,且随机均匀地出现在面积为4 m×4 m、距离地面高度为1 m的区域中。KNN与WKNN算法的K值为4,RSS向量之间的距离度量方法采用欧氏距离。PSO-CS、OMP、RWl1M、BP算法的稀疏度S为4。PSO的参数为ω=1,c1=c2=2,Tmax=100,Fmin=10-9,Q=50,粒子群的初始位置与速度在(0,1)之间随机产生一个值。M=4,即4个LED均匀地被布置在面积为4 m×4 m、距离地面高度为3 m的天花板上,L为50 cm。ANN与ELM算法的输入层、隐层及输出层的神经元数目分别为4、100及81,激活函数为Sigmoid。在RF算法中,树的数目为30,其中隐层神经元数目与树的数目均为离线阶段进行训练与学习得到的最优值,即分类精度达到最高时对应的取值,且分类方法采用文献[ 7]中的方法。
4.3 结果分析
4.3.1 信噪比RSN的影响
为了验证所提算法的有效性,分析了不同算法在不同信噪比RSN下的平均定位误差,其结果如
4.3.2 定位误差的累积分布函数(CDF)
11种不同算法的定位误差累积分布如
图 4. 定位误差的累积分布。(a)信噪比为10 dB;(b)信噪比为20 dB
Fig. 4. Cumulative distributions of the positioning errors. (a) Signal-to-noise ratio is 10 dB; (b) signal-to-noise ratio is 20 dB
4.3.3 网格间距L对PSO-CS定位算法的影响
PSO-CS定位算法的平均定位误差随网格间距的变化情况如
4.3.4 粒子群规模Q对PSO-CS定位算法的影响
PSO-CS定位算法的平均定位误差随粒子群规模的变化如
4.3.5 稀疏度S对PSO-CS定位算法的影响
PSO-CS定位算法的平均定位误差随稀疏度的变化情况如
4.3.6 LED个数M对PSO-CS定位算法的影响
PSO-CS定位算法的平均定位误差随LED个数的变化情况如
4.3.7 指纹采样率RSR对PSO-CS定位算法的影响
为了验证PSO-CS算法具有较好的鲁棒性,即在非均匀的网格结构下依然具有较好的定位性能,引入指纹采样率RSR,研究其对平均定位误差的影响。在给定的指纹采样率下,采用随机选取指纹的方法,采样率越低,指纹分布密度越低且越不均匀。为了更加准确地得到结果,在相同的采样率下,采用200个目标重复执行50次的平均值方法,结果如
图 10. PSO-CS定位算法的平均定位误差随次数的变化曲线,RSR=50%
Fig. 10. Variation curve of the average positioning error of the PSO-CS positioning algorithm with the number of times, RSR=50%
4.3.8 算法的时间复杂度分析
当L=50 cm,RSN=10 dB时,重复定位200次的平均计算时间如
表 2. L值相同时的平均计算时间
Table 2. Average computing time when L value is same
|
表 3. L值不同时的平均计算时间
Table 3. Average computing time when L value is different
|
5 结论
目前,基于压缩感知的可见光定位需要高密度的LED布局,采用线性最小二乘法重构信号时容易陷入局部最优解。为了解决这些问题,结合粒子群优化较强的全局搜索能力,提出一种基于粒子群优化压缩感知的可见光定位算法。由于求解权重的搜索维度与取值范围都很小,所提算法的时间复杂度较低,可以满足定位的实时要求。仿真结果表明,当网格间距为50 cm,信噪比为10 dB时,相比于KNN[8]、ELM[9]、RF[10]、ANN[11]、WKNN[12]、OMP[13]、RWl1M[14]、BP[15]、NR[5,21]、LLS[4,22]算法,PSO-CS算法的平均定位误差分别降低了75.88%、89.15%、85.44%、90.25%、58.05%、80.82%、86.29%、80.01%、73.57%、76.56%。还详细分析了网格间距、粒子群规模、稀疏度、LED个数、指纹采样率对PSO-CS算法定位误差的影响,所得结果可为实际可见光定位系统的设计提供有益的参考。
[4] 叶子蔚, 叶会英, 聂翔宇, 等. 基于接收信号强度检测的高精度可见光定位方法[J]. 中国激光, 2018, 45(3): 0306002.
[6] 赵楚韩, 张洪明, 宋健. 基于指纹的室内可见光定位方法[J]. 中国激光, 2018, 45(8): 0806002.
[7] Guo XS, Shao SH, AnsariN, et al. ( 2017-12-20)[2020-06-29]. https: ∥arxiv.org/abs/1703. 02184.
[9] Huang G B, Zhou H M, Ding X J, et al. Extreme learning machine for regression and multiclass classification[J]. IEEE Transactions on Systems, Man, and Cybernetics. Part B, Cybernetics: a Publication of the IEEE Systems, Man, and Cybernetics Society, 2012, 42(2): 513-529.
[10] Breiman L. Random forests[J]. Machine Learning, 2001, 45(1): 5-32.
[13] GligoricK, AjmaniM, VukobratovicD, et al. ( 2018-05-02)[2020-06-29]. https: ∥arxiv.org/abs/1805. 01001.
[14] Zhang R, Zhong W D, Qian K M, et al. A reversed visible light multitarget localization system via sparse matrix reconstruction[J]. IEEE Internet of Things Journal, 2018, 5(5): 4223-4230.
[19] Zhou B P, Lau V, Chen Q C, et al. Simultaneous positioning and orientating for visible light communications: algorithm design and performance analysis[J]. IEEE Transactions on Vehicular Technology, 2018, 67(12): 11790-11804.
[22] Gu WJ, AminikashaniM, Kavehrad M. Impact of multipath reflections on the performance of indoor visible light positioning systems[EB/OL]. ( 2015-05-28)[2020-06-29]. https: ∥arxiv.org/abs/1505. 07534.
[23] 王鹏飞, 关伟鹏, 文尚胜, 等. 基于免疫算法的高精度室内可见光三维定位系统[J]. 光学学报, 2018, 38(10): 1006007.
[24] 徐世武, 吴怡, 苏国栋. 基于正交频分复用调制的可见光通信指纹匹配定位算法[J]. 激光与光电子学进展, 2019, 56(9): 090601.
[25] 王杨, 赵红东. 基于智能手机的VLC/IPDR粒子滤波融合室内定位[J]. 中国激光, 2020, 47(7): 0706001.
[26] 徐世武, 吴怡, 王徐芳. 基于稀疏度自适应和位置指纹的可见光定位算法[J]. 光学学报, 2020, 40(18): 1806003.
[27] 曹燕平, 李晓记, 胡云云. 基于可见光指纹的室内高精度定位方法[J]. 激光与光电子学进展, 2019, 56(16): 160601.
[28] 陈道钱, 吴晓平, 华宇婷. 一种测距辅助的室内可见光指纹定位方法[J]. 激光与光电子学进展, 2019, 56(6): 060603.
Article Outline
徐世武, 吴怡, 王徐芳. 基于粒子群优化压缩感知的可见光定位算法[J]. 中国激光, 2021, 48(3): 0306004. Shiwu Xu, Yi Wu, Xufang Wang. Visible Light Positioning Algorithm Based on Particle Swarm Optimization Compressed Sensing[J]. Chinese Journal of Lasers, 2021, 48(3): 0306004.