基于最近邻居的区域定位改进算法
马捷中, 刘云超, 郭阳明, 何佩    
西北工业大学计算机学院, 陕西西安 710072
摘要: 在分析基于RSSI的LANDMARC定位系统及算法的基础上,提出了一种改进三角区域定位方法,消除了远距离不良参考标签对定位精度的影响。同时,在布置有大量阅读器的场合,该法可有效减少计算量。Matlab仿真结果表明,该算法具有更高的定位精度。
关键词: RFID     室内定位     LANDMARC     区域定位    

目前,智能交通系统(intelligent transport system,ITS)架构的33种客户服务中有20多种都涉及到车辆的实时定位[1]。因此,研究准确、高效的车辆实时定位技术成为近来智能交通领域的一个热点。智能停车管理系统中解决车主离场时寻车难的问题便属于这一研究的具体应用。常见的室内定位技术[2]主要有:红外技术、无线局域网技术、超声波技术、超宽带技术以及射频识别技术。射频识别标签因其可支持快速读写、非可视识别、移动识别、多目标识别等优点成为定位系统的首选[3],并被广泛应用于生产、物流、交通、防伪等各个领域,被认为是当下最有应用价值的技术之一。通过RFID室内定位技术实现智能停车场内车辆实时定位,可帮助车主快速寻车离场,有效提高停车场利用效率。

当前,对RFID定位的研究如火如荼,而研究出的算法也是多种多样,归纳后主要分为以下4类[4]:到达时间定位(time of arrival,TOA)、到达时间差定位(time difference of arrival,TDOA)、信号强度定位(received signal strength indication,RSSI)以及方向测量定位(angle of arrival,AOA)。TOA和TDOA定位要求阅读器与标签在时间上严格保持一致,使用AOA算法则需要给阅读器安装上昂贵的接收天线阵列,这3种方法硬件成本都比较高。基于RSSI算法的LANDMARC系统通过参考标签进行辅助定位,依据参考标签与待定位标签之间的信号强度差异选择“最近邻居”,然后通过加权计算得到待定位标签的位置信息,该方法在不增加阅读器等硬件设备成本的情况下提高了系统的定位精度,是目前研究广泛且优势比较突出的室内定位算法。

1 LANDMARC定位系统及算法 1.1 LANDMARC室内定位系统

图 1所示,一个完整的LANDMARC定位系统架构由定位服务器(location server)和若干个定位单元(positioning unit)构成。每个定位单元由区域定位服务器(region location server)、无线数据采集器(wireless data collector)和若干个更小的定位单元(positioning cell)组成。而这些更小的定位单元则是由一个RFID 阅读器(RFID reader)和若干参考标签(reference tag)组成的最小定位基础结构。参考标签用来辅助定位以提高目标标签的定位精度。阅读器用来读取信号覆盖范围内的标签信息,解码后通过数据采集器传给定位服务器。无线数据采集器采集其信号覆盖范围内阅读器传来的数据信息,并集中发送到区域定位服务器以供定位目标使用。各个区域定位服务器将各个定位目标的位置信息集中存储到一个定位服务器上形成一个完整的定位系统。一个完整的定位过程可简单描述为:每个阅读器通过自带天线每隔一段时间间隔就对固定区域进行扫描一次,当标识特定目标的RFID标签(tag)进入天线信号的覆盖范围后被激活,然后通过内置天线向阅读器发送自身的标签信息,阅读器读取到信息后进行解码,并将数据信息发送到区域定位服务器进行定位,最后各区域定位服务器将定位信息集中存储到定位服务器中。

图 1LANDMARC定位系统架构
1.2 LANDMARC室内定位算法

LANDMARC系统最早由密歇根州立大学的M.Ni Lionel提出,是一种基于主动射频识别检验的实时定位系统[5]。该法通过引入价格低廉的参考标签来进行辅助定位,在提高整个系统定位精度的同时又不增加读写器的硬件成本。LANDMARC采用“最近邻居”算法。首先以信号强度为标准,在所有参考标签中选择k(k值是人为选定的)个距离待定位标签最近的参考标签,然后根据各参考标签所占的权重计算待定位标签的位置。具体定位算法[6]如下:

假设有阅读器(reader)M个,待定位标签(tag)L个,参考标签(rf-tag)N个。将阅读器能量等级分为8级(1~8),每隔30 s从能级1到8进行一次循环扫描,得到rf-tag的信号强度矢量Ri=(Ri1,Ri2,…,RiM)。其中Rij(i∈(1,N),j∈(1,M))表示第irf-tag被第j个reader首次读到时的信号强度值。同理可得tag对应的信号强度矢量Ti=(Ti1,Ti2,…,TiM)其中Tij(i∈(1,L),j∈(1,M))表示第i个tag被第j个reader首次读到时的信号强度值。定义tag与rf-tag之间的关联度为Ei=(Ei1,Ei2,…,EiM)。Eij定义如下

表示第i个tag同第j个rf-tag之间的关联度,其中(i∈(1,L),j∈(1,N))。两标签的关联度与距离成正比,即距离越近则其关联度值越小,反之越远,则关联度越大。由于所有rf-tag的位置坐标是已知的,于是通过(2)式便可得到tag的坐标值

式中,k是人为选定的“最近邻居”数。对于具体的某一待定位标签tag-t,也就是在(Et1,Et2,…,EtN)中选择值最小的kE所对应的参考标签。wi代表参考标签i所占的权重,距离越近则权重越大。rf-tag所占权重可通过以下公式计算得到。

定位误差即为所求坐标与tag实际坐标的差值,定义为

式中:(x0,y0)为tag的实际坐标;(x,y)为通过LANDMARC算法计算得到的坐标。

LANDMARC定位系统中由于参考标签与待定位标签处在相同的环境之下,即环境的动态变化对两者的影响是等同的,因此该法可以很好地适应环境的动态变化。

2 改进的定位算法

LANDMARC定位算法在求解“最近邻居”时,所有参考标签都作为“最近邻居”的候选标签参与计算,但事实上大部分参考标签的计算并没有实际价值[7],白白增加了计算量。而且由路径损耗公式可知,当标签离阅读器距离越远时,信号损耗越快,误差越大。因此,距离阅读器越远的参考标签的参考价值越小,如果将这类参考标签考虑进去会最终影响整个系统的定位精度。在实际应用中,如图 2所示,无论待定位标签处于何位置,都会处在它周围3个阅读器构成的三角形区域内,而该待定位标签的“最近邻居”参考标签的选取也必然出自这3个阅读器的读写范围。所以在选用LANDMARC算法进行定位时,可以考虑在离待定位标签最近的3个阅读器读写范围内选取最近邻居标签,尤其是在读写器数量较多的时候,该方法会有效减少计算量,并且由于消除了远距离“不良”参考标签对定位精度的影响,在一定程度上提高了系统的定位精度。

图 2 阅读器标签位置示图

改进的算法同样假设阅读器(reader)有M个,参考标签(rf-tag)N个,待定位标签(tag)L个。将reader的能量等级分为1~8,并且每30 s从1级到8级进行一次循环扫描。针对每个标签(包括tag和rf-tag)定义一个8 bit的变量,每一位都初始化为0,若某个标签被阅读器j在功率等级i时读到,就将相应的二进制数的第i位置1。当待定位标签同时被3个reader检测到信号时,停止加大功率。选择最先读到标签信号的3个reader。

不失一般性,假设选定的3个阅读器为reader-a、reader-b和reader-c。从rf-tag中选取对应值不为零的标签(假设有x个,1≤x<N),得到参考标签矩阵

式中:Rij(i∈(1,N),j∈(1,M))表示第i个rf-tag同第j个reader对应的二进制串。同理,tag对应的矩阵记为

式中:Tij(i∈(1,L),j∈(1,M))表示第i个tag同第j个reader对应的二进制串。针对某个具体的待定位标签Tag-p,从所有阅读器中按上述方法选择最近的3个,从而得到代表待定标签Tag-p值的二进制串矩阵

将矩阵TpR中的对应元素进行按位“与”运算,在运算结果中含有“1”越多说明这2个标签同时被读到的次数越多。针对某个具体的待定位标签tag-p,假定a,b,c分别为1,2,3。定义一个TpR的按位“与”操作,其结果矩阵为

矩阵TR的第i行代表第i个参考标签与待定位标签在周围最近的3个阅读器上信号强度关联关系,某行中1的个数越多则说明该行对应的参考标签与待定位标签在距离上越接近。为此求出每行1的个数,然后从大到小排序,取前k行代表的参考标签作为最近邻居。通过(9)式得到待定位标签的位置坐标:

wi表示参考标所占的权重。离待定位标签距离越近则所占权重越大(即TR中每行1的个数越多则该行对应的参考标签权重越大)。这里采用一种更为简单的求解方式,即wi以第i行中1的个数占选定的k行中1的个数的百分比来表示。

为进一步缩小定位误差,这里加入一些优化措施。当k取值为1时,取前3个信号强度最大的参考标签,求出它们的质心坐标,然后计算该质心同信号强度最大的参考标签之间的中点坐标,以此作为待定位标签的最终位置;当k取值为2时,以选定的信号强度最大的2个参考标签的中点坐标作为待定位标签的最终位置。

3 仿真分析

为验证改进算法的有效性,本文构建了一个16 m×16 m的室内仿真环境,用以对比分析原始LANDMARC算法与改进算法的性能。仿真环境中,阅读器及参考标签的布局如图 3所示。从左向右、从下到上阅读器编号依次为1~9。

图 3 标签与阅读器分布示意图
3.1 仿真实验1

原始LANDMARC算法中,k=4时可以达到最高定位精度[6]。因此,本文在matlab R2012a版仿真环境中,令k=4,路径损耗指数n取1.8,随机生成2 000个待定位标签,每个标签重复定位3次取平均值(以下实验中如无特殊说明,则环境配置与上述相同),用LANDMARC算法及改进算法对待定位标签进行定位。2种算法的误差累积分布如图 4所示。

图 4 2种算法的误差累计分布图

图 4可以看出,本文提出的算法与原LANDMARC算法相比,不仅有效减小了最大定位误差,而且提高了系统整体定位精度。

为测试“最近邻居”k值的选取对本文提出的三角区域定位算法误差的影响,本文仿真中不再使用动态选取最近邻居策略,而是以人为的方式固定选取若干个值:随机产生500个待定位标签,分别在k等于2、3、4、5时用本文算法进行测试,得出不同k值下的系统定位误差累积分布图,如图5所示。

图 5 不同k值的误差累计分布图

图 5可以看出,当k依次取2、3、4时,定位精度的提高较明显,但k=5与k=4相比,系统整体定位精度并未提高,可见k取4时,该定位方法定位效果亦是最佳。

3.2 仿真实验2

为进一步测试阅读器个数对定位精度的影响,将阅读器个数分别设置为9个(1~9号阅读器方案1)、6个(1~3,7~9号阅读器方案2)、4个(1、3、7、9号阅读器方案3),同样测试2 000个待定位标签,每个标签重复测试3次取平均值,最终得到不同阅读器个数下的定位误差累积分布结果如图 6所示。

图 6 不同阅读器个数的误差累积分布图

图 6中可以看出,随着阅读器个数的增多,系统的定位精度也就越高,最大定位误差值也就越小。所以,在某些特殊的场合,通过增加阅读器的个数来提高系统的定位精度也不失为一种方法。

4 结 论

将RFID定位技术应用于现代智能停车管理系统当中,可实现车主离开时快速寻车功能,不但完善了停车管理系统的功能、提高了服务质量,使其更具人性化,而且在一定程度上提高了车位利用率。本文参考常见的室内定位技术,分析了基于RSSI的LANDMARC定位系统及算法。在此基础上提出了一种改进的三角区域定位方法,消除了远距离不良参考标签对定位精度的影响。仿真结果表明该算法具有更高的定位精度。同时,在布置有大量阅读器的场合,该法可有效减少计算量。

参考文献
[1] 傅常伦.基于车辆定位系统的数据融合及其在城市交通中的应用[D].上海:同济大学,2008,Fu Changlun. Vehicle Locating System Based Data Fusion and Its Application in Urban Traffic[D]. Shanghai, Tongji University, 2008 (in Chinese)
Cited By in Cnki (4)
[2] 俱莹.基于RFID的室内定位算法研究[D].天津:天津大学,2010,Ju Ying. Study of Indoor Location Algorithm Based on RFID Technology[D]. Tianjin, Tianjin University, 2010 (in Chinese)
Cited By in Cnki (12)
[3] 陈媛,张静,黄丽丰.基于RFID和GPRS技术的危险品物流系统模型研究[J].包装工程,2008,29(5):78-80,Chen Yuan, Zhang Jin, Huang Lifeng. Study on Dangerous Goods Logistics Model Based on RFID and GPRS[J]. Packaging Engineering, 2008, 29(5): 78-80 (in Chinese)
Cited By in Cnki (22) | Click to display the text
[4] 吕舟.基于ZigBee的无线定位网络的研究与实现[D].武汉:华中科技大学,2009,LÜ Zhou. Research and Implementation on Wireless Network Based on ZigBee[D]. Wuhan, Huazhong University, 2009 (in Chinese)
Cited By in Cnki (7)
[5] Li Xingpeng, Hu Yongmei, Song Jibo, et al. Indoor Positioning Simulation Based on Landmarc System[J]. The Computer Engineering and Application, 2008(27):209-212
[6] Lionel M Ni, Liu Yunhao, Yiu Cho Lau, et al. LANDMARC:Indoor Location Sensing Using Active RFID[J]. Wireless Networks, 2004(10):701-710
Click to display the text
[7] Kim T, Lee S, Park S C. Effect of Collision on Movement Tracking Using Active RFID Power Measurement[C]//Consumer Communications and Networking Conference, 2009
[8] 孙瑜,范平志.射频识别技术及其在室内定位中的应用[J]. 计算机应用, 2005, 25(5): 1205-1208,Sun Yu, Fan Pingzhi. RFID Technology and Its Application in Indoor Positioning[J]. Computer Applications, 2005, 25(5):12050-1208 (in Chinese)
Cited By in Cnki (136) | Click to display the text
Improving Location Algorithm with LANDMARC System
Ma Jiezhong, Liu Yunchao, Guo Yangming, He Pei     
Department of Computer Science and Engineering, Northwestern Polytechnical University, Xi'an 710072, China
Abstract: This paper briefly introduced some common indoor positioning technologies and analyzed the LANDMARC system which is based on RSSI and its algorithm. On the basis of it, we proposed a triangle region positioning method which can eliminate the bad influence on the positioning precision produced by the long-range reference labels and effectively reduces the amount of computation when there are a large number of readers. The simulation results obtained with MATLAB and their analysis show preliminarily that the algorithm proposed in this paper gives higher precision.
Key words: computer simulation     data acquisition     errors     MATLAB     matrix algebra     quality of service     radio frequency identification(RFID)     servers     indoor positioning     LANDMARC     region positioning    
西北工业大学主办。
0

文章信息

马捷中, 刘云超, 郭阳明, 何佩
Ma Jiezhong, Liu Yunchao, Guo Yangming, He Pei
基于最近邻居的区域定位改进算法
Improving Location Algorithm with LANDMARC System
西北工业大学学报, 2015, 33(1): 93-97
Journal of Northwestern Polytechnical University, 2015, 33(1): 93-97.

文章历史

收稿日期: 2014-05-12

相关文章

工作空间