标题 | RSSI测距定位与指纹法定位的算法研究 |
范文 | 周向 摘要:室内定位技术在现代生活中的作用越来越明显,而室内定位技术的关键在于室内定位算法, 通过比较RSSI(Received Signal Strength Indication, RSSI)测距算法,和BP神经网络指纹定位法,结果表明BP(Back Propagation)神经网络指纹定位算法在定位精度上高于传统的RSSI测距算法,但是指纹法却不具备RSSI测距算法的易移植性。 关键词:室内定位;RSSI测距算法;BP神经网络指纹定位 中图分类号:TP311? ? ? ? 文献标识码:A 文章编号:1009-3044(2019)28-0231-03 1 引言 已知的定位技术,如全球定位系统(Global Positioning System, GPS)[1]和北斗卫星导航系统(Bei Dou Navigation Satellite System, BDS)[2]都是适用范围很广的室外定位技术,但是基本不适用于室内定位。由于科技的发展,人们对室内定位技术的迫切需求,于是大量学者开展了关于室内无线定位技术的研究。主要分为两大类:传统定位算法和指纹法。 传统定位方法有:到达时间(Time of Arrival, TOA)[3]、到达时间差(Time Difference of Arrival, TDOA)[4]、质心法[5],信号接收强度 [6]等。目前使用RSSI值测距定位的算法较多,该技术主要使用RF(Radio Frequency)信号,根据接收信号强度值计算信号的传播损耗,按照相应传播损耗模型将传播损耗值转化为距离。然后根据三边测量法,估算对应坐标。 指纹法:BP神经网络指纹定位法[7],卷积神经网络指纹法[8]等。指纹法具有较好的定位精度,但是需要较强的计算能力。但不便于移植,一旦环境的改变,则需要重新匹配指纹。 2 RSSI测距 2.1基本原理 基于RSSI值測距是获取无线网络节点位置信息的重要手段,常用的无线信号传播损耗模型为[6]: [PLd=PT-PLd0-10ηlgdd0+xσdB,xσ~N0,σ2](1) 其中,d表示发射结点与接收节点之间的距离,[PLd]表示阅读器收到距离为d(m)时标签的RSSI值,d0为基准距离通常为1(m),[PT]为信号发射功率,[PLd0]为基准距离RSSI值,[η]为路径损耗指数,一般取[2~4]。[xσ]表示均值为0,方差为[σ2]的高斯噪声,单位是dB,[σ2]通常取值[4≤σ2≤10]。 2.2 RSSI测距过程为: 1)信标节点发射信号; 2)未知节点接收信标节点发射的信号; 3)通过发射信号强度与接收信号强度的对比估算出信标节点到未知节点之间的距离; 4)当一个未知节点得到至少三个到未知节点之间的距离信息时,使用三边测量法求出该未知节点的估计坐标。 2.3三边测量定位[9] 如图1所示,通过RSSI测距的式(1)可求出未知节点q到3个信标节点[Ax1,y1,Bx2,y2,C(x3,y3)]之间的距离[d1,d2…dn],用三边测量法求出未知节点q的坐标[xq,yq]。 分别以A,B,C为圆心,以未知节点到该三点的距离为半径做圆,如图1所示,图中阴影部分即为位置节点的坐标区域,为使误差较小,一般取阴影部分质心作为未知节点的估算坐标。 3 指纹法-BP神经网络定位基本原理 3.1指纹法基本原理 指纹法是用信号强度RSS(Received Signal Strength)作为特诊的,通过匹配相应坐标处的RSS信息来确定未知节点坐标的一种方法。一般分为离线训练和在线测试两个阶段。 其中离线阶段主要是构建指纹数据库,将实验区域坐标化,将实验区域及周围均匀布置天线。然后根据精度要求,在测量区域内各个坐标处的信号强度并记录,既指纹信息由各个测量点的实际坐标信息和该位置处的RSS信息做成。 在线定位阶段:用户在实验区域内任意位置,提交该位置的RSS信息,然后神经网络算法通过匹配指纹数据库得到该用户最有可能的位置信息。 3.2 BP神经网络 BP神经网络即误差反向传播网络,它采用前馈神经网络模型[10],使得多层感知机有了强大的计算能力,是自出现以来使用最为广泛的一种神经网络模型。因此本文结合BP神经网络模型与RSS进行定位。 BP网络训练步骤为: 1) 各层权值和阈值的初始化,设置循环次数和误差代价函数; 2) 提供输入矩阵和教师信号,将得到的输出矩阵与教师信号比较; 3) 计算输出层误差和隐藏层误差值; 4) 根据误差修正输出层和隐藏层权值; 5) 每次训练后判断指标是否达到精度要求。如果满足转到第6)步,不满足回到第2)步; 6) 停止。 4实验数据分析 仿真实验区域面积为100米*100米,选取空旷地区的路径损耗指数[η] =2.0, 信噪比为20dB,取RSSI噪声为[xσ~N0,4]。节点通信半径为20米。实验次数50次,结果取其平均值。平均误差定义为: [E=i=1NEiN]? ? ? ? ? ? ? ? ? ? ? ? ? (2) 其中,N为实验次数,节点i的位置估计绝对误差为: [Ei=xi-xi2+yi-yi2]。 本文使用的BP神经网络,只包含三层,即输入层,隐藏层,输出层。其中,输入层神经元个数由信号发射天线个数确定;隐藏层神经元个数由Kolmogorov定理求出,隐层结点数s=2n+1(n为输入层结点数);输出层为2个神经元,即输出坐标(X,Y)的值。选取sigmoid函数作为激活函数。 1)RSSI测距算法 ①RSSI测距算法,节点总数为200个,未知节点总数和节点总数之比在20%~80%之间变化。 从图2中可以看出当信标节点比例在[20%~80%]之间变化时,RSSI测距定位算法的平均定位误差在逐步下降,从信标节点比例为20%时3.47的平均定位误差下降到信标节点比例为80%时的2.95。从图2中还可以得出,随着信标节点比例的增加,平均低昂为误差逐渐降低,且下降趨势逐渐减小。 ②保持信标节点与未知节点例为2:8,节点总数在[60~200]范围内变化。 从图3中可以看出,随着节点总数在60~200之间逐渐增加,平均定位误差逐渐降低,且在节点总数达到200时,具有最低的平均定位误差2.60。而且在节点总数增加的过程中误差减小的趋势逐渐减小,趋于稳定,表明,通过增加节点总数不能无限制的提高定位精度。 2)BP神经网络指纹法 ①信号发射天线为4个,提高指纹库精度。 从图4中可以清晰地看出,随着采样精度的变小(如:采样精度为0.2,则每0.2米进行一次数据采集),定位误差减小,说明采样精度的提高有利于定位精度的提高。从图中可以清晰地看出,在采样精度为0.2时,具有最高的定位精度,平均误差只有0.68m。 ②指纹库精度保持为1米/组,增加信号发射天线数量 从图5中可以看出,随着天线个数的增加,未知节点的定位精度逐渐身高,但是由于采样精度的限制,使得定位精度智能靠近采样精度,不能达到更搞得定位精度。这说明,同时提高采样精度和天线个数,可以让定位精度进一步提高。 3)两种算法对比 由于两种方法的原理不同,导致实验环境不能完全一致,但是我们可以从以下几个方面进行对比: 从表1中,我们可以清晰地看出,BP神经网络指纹法,在定位精度上远优于RSSI测距算法。但不利于程序的移植,而RSSI测距算法具有良好的算法移植性。 5 结论 传统的RSSI测距算法在增加节点总数或者提高信标节点比例情况下,都可以提高RSSI测距的定位精度。而基于BP的指纹定位法,也能在提高采样精度,或者增加天线个数的情况下减小定位误差。就两种算法的定位精度而言,指纹法优于RSSI测距算法,但是,RSSI测距算法,受环境改变影响较大,不利于算法移植,而RSSI测距算法,受环境影响较小。 参考文献: [1] 魏二虎,刘学习,刘经南.北斗+GPS组合单点定位精度评价与分析[J].测绘通报,2017(5):1-5. [2] 谭述森,张天桥.北斗多业务卫星系统与应用——论北斗Bs导航[J].国防科技大学学报,2017,39(5):1-5. [3] 浦佳祺,陈德旺.基于最小二乘法和BP神经网络的TOA定位算法[J].计算机技术与发展,2018,28(5):5-8. [4] 张会新,陈德沅,彭晴晴,等.一种改进的TDOA无线传感器网络节点定位算法[J].传感技术学报,2015,28(3):412-415. [5] 胡斌斌,倪晓军.基于RSSI测距室内定位改进质心算法[J].计算机技术与发展,2017,27(9):133-136+140. [6] Yun FengLeng,Hai Ping Zhu,TalalAlshaNIri,Fei He. An Improved RSSI Positioning Algorithm Based on Reference Distances[J]. Advanced Materials Research,2014,3255(971). [7] 李航. 基于位置指纹方法的WIFI室内定位技术研究[D].长春工业大学,2018 [8] 赵银龙. 基于WiFi室内位置指纹定位关键技术研究[D].河北科技大学,2018. [9] 刘琛,倪雪莉.基于三边测量法的移动锚节点定位方案[J].信息技术,2019(3):29-32,36. [10] 卢滢宇.竞争算法优化BP神经网络性能研究[J].计算机系统应用,2019,28(5):173-177. 【通联编辑:唐一东】 |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。