位置指纹算法关键参数的提取
2015-10-21徐潇潇谢林柏
徐潇潇, 谢林柏
(江南大学物联网工程学院,江苏无锡214122)
位置指纹算法关键参数的提取
徐潇潇, 谢林柏*
(江南大学物联网工程学院,江苏无锡214122)
针对传统的位置指纹定位算法在室内定位中存在着接收信号强度值不稳定以及不同终端设备获取AP信号强度能力不一样的问题,对传统的位置指纹定位算法进行了改进。对离线阶段采集到的RSSI值进行处理,去除了较大误差的样本,利用RSSI信号强度差值取代RSSI值作为信号特征录入Radio Map,减小了由于设备差异而产生的指纹信息误差。测试阶段,在Android和PC平台上进行验证,实验结果表明,改进的算法可以有效地去除离线阶段误差较大的样本并提高了该算法针对不同终端应用的能力。
位置指纹;Shadowing模型;RSSI差值;安卓
随着无线路由器的普及,手机和笔记本等移动终端可以随时随地地接入网络。然而,与室外相同,人们在室内同样对位置信息有着强烈的需求。但是GPS全球定位系统无法精确地应用于室内环境[1]。在现阶段室内定位系统研究中,位置指纹定位算法以其较高的精度、较低的成本等优点,得到了比较广泛的应用[2]。
现阶段关于WiFi室内定位的研究主要集中于在线阶段的匹配算法,主要有KNN算法、权重的KNN算法、概率分布法等,然而关于离线阶段数据采集的研究比较少[3]。由于室内环境比较复杂, RSSI值容易发生较大抖动,若不对误差较大的值进行相应处理,则在线定位阶段很容易造成较大的定位误差[4]。此外,现阶段的研究对于离线阶段和在线定位阶段几乎无一例外地采用同一终端设备进行测试[5]。然而,即使是同一厂商的终端设备,其接收AP信号的能力也有可能不一样。在实际应用中,往往需要不同的设备利用同一个Radio Map进行定位。若直接采用RSSI值作为信号特征,势必会在定位时出现较大的误差。
针对上述问题,文中在传统位置指纹定位算法的基础上,对离线阶段获得的RSSI值进行处理,去除误差较大的数据,并利用不同AP之间RSSI的差值取代传统的RSSI值作为信号特征录入Radio Map。测试阶段,通过Android客户端以及PC端分别对AP信息进行采集,并分析了改进算法的有效性。
1 位置指纹定位算法的基本原理
WiFi室内定位相比其他方法的一个优势就是可以利用手机、电脑等移动终端外加一个定位软件即可定位,无需添加额外的硬件设备,节省成本。
位置指纹定位算法将待定位置周围的AP信号特征与Radio Map的参考点信号特征对比,并通过一定的匹配算法计算出待定位置的位置信息。该算法能够在一定程度上减小由信号强度路径损耗造成的定位误差[6]。位置指纹定位算法的工作模式一般由两个阶段组成:离线阶段和在线阶段。
离线阶段,在定位区域选取若干个参考位置,记录下每个参考位置的信号特征,每个信号特征对应一个唯一的物理位置。令参考位置指纹R:
对应的MAC地址为
式中:p为参考位置通信范围内搜索到的AP个数; rssii为接收到的来自第i个AP的RSSI值;maci为第i个AP的MAC地址。
在线阶段,获取待定位置的信号特征A:
通过一定的匹配算法,将信号特征A与数据库中的参考位置信号特征进行对比,最终计算出待定位置的物理位置。
2 基于RSSI差值的位置指纹算法
2.1 离线阶段采样数据的处理
由于AP的RSSI值具有不稳定性,即使在同一位置使用同一终端设备对同一AP的RSSI值进行测量,其测量结果也会发生一定的波动,特别是在人员流动比较频繁的地方。所以在将参考位置的信号特征录入Radio Map之前,必须对采样数据进行一定的处理,除去误差较大的数据,以提高定位的精度。
位置指纹算法在离线阶段和在线阶段都需要采集AP的RSSI值。一般情况下为了保证数据的精确度,离线阶段的采样时间比较长,而在线阶段考虑到用户体验等因素,信号的采样时间不宜过长。
3σ准则通常用于去除误差较大的数据[7]。假设终端设备在某一固定位置对某一固定AP的RSSI值按照固定频率进行k次采样,采样结果为{r1,r2, r3,…,rk}。由贝塞尔公式计算可得采样值的均方根误差:
其中
若|vi|≥3σ,则其对应的采样值rssii应被视为较大误差而剔除。由于人员流动等因素的存在,导致了AP的信号直方图具有偏左性[7],文中先去除采样值中最小的5%的数据,再对剩下的数据进行3σ处理。最后将处理后的结果录入Radio Map。
2.2 RSSI差值特征分析
由于终端设备的多样性,不同终端的无线模块有所差异,所以势必出现相互间接收AP信号能力存在差异这一问题。这主要是由于不同的设备间天线的增益不一致产生的[8]。
现阶段关于位置指纹定位算法的研究在离线训练阶段和在线定位阶段往往都采用同一个终端设备进行测试,而在现实情况中,一个Radio Map往往要满足多种型号的终端设备对定位的要求。如果直接采用RSSI值作为信号特征录入Radio Map,在采用不同设备定位时,势必产生较大的定位误差,而且这种误差是无法通过提高匹配算法的精度改变的,相反,越是精确的匹配算法越容易产生更大的误差。
为了解决这一问题,文中采用RSSI差值作为信号特征,假设在某一参考节点扫描附近AP获得的RSSI信号特征如式(1)所示,则对应的RSSI差值信号特征为D:
其中,由式(1)推得diffi=rssii-rssii+1。
无线信号传输中普遍采用Shadowing模型[9]:
式中:P(d)为距离AP d处移动终端接收到的信号强度;P(d0)为距离AP d0处的信号强度,一般d0取1;m,n为路径损耗系数,通常由实际现场测试得到; Xσ为一个均值为0的高斯随机变量。
Friis传输公式给出了在距离发射端d处接收端的接收功率表达式[10]:
其中:PT为AP的发射功率;GT为AP的天线增益; GR为移动终端的天线增益;η为系统损耗因子,且满足0<η<1;λ为AP信号的波长。由式(3)可得,不同移动终端测量同一AP的RSSI值产生的误差来自于终端的天线增益GR。将式(3)转化为以dBm为单位的数据并代入式(2)可得:
假设移动终端在某一位置时,距离AP1和AP2的距离分别为d1与d2,则两个AP信号在到达该位置时的信号强度应分别为P(d1)和P(d2)。
式(5)与式(6)两者相减可得:
由式(7)可知,移动终端的RSSI差值取决于两个AP各自的发射功率、天线增益、波长及损耗因子, AP一旦完成部署,这些参数可以保持不变[11],从而可以消除由于移动终端天线增益不同而带来的测量偏差。所以,从理论上而言,利用RSSI差值作为位置指纹信息可以在一定程度上克服不同设备定位产生的误差。
2.3 KNN匹配算法的改进
传统的KNN匹配算法在应用于位置指纹定位算法时存在以下问题:终端设备在不同的参考位置所搜索到的AP个数存在差异。
针对上述问题,文中选取固定的k(k≥3)个 AP作为参考,避免不相关AP的干扰,文中k取7。若在某次采样中没有搜索到某一参考AP,则给其赋值搜索到的AP中信号强度值最小的值减去5 dBm,即rssimin-5 dBm,确保每个参考位置的信号特征中均包含了所有参考AP对应的RSSI值。在计算距离时,选取待定位置信号强度特征中信号最强的n个AP,且满足n≤k,文中n取4。
距离公式表达式为
其中:Ai为待定位位置测得的第i个AP的RSSI值; Ri为参考点中第i个AP的RSSI值。本系统取r=2,此时该距离又称为欧几里得距离[12]。
在获得待测位置的RSSI信号特征后,分别计算与各个参考节点的距离d,选出距离值最小的m个参考位置,给予不同的权值,计算出定位结果,文中m取3。
待定位位置的坐标可表示为
其中,wi为权重,该值取决于参考节点与待测位置之间的欧氏距离。距离越小,则该节点对定位结果的影响最大。wi的计算公式为
3 算法测试
离线阶段,采用Google Nexus S手机作为采样工具,该手机采用Android操作系统。为了满足测试的需求,需要设计一个客户端以实现对周围WiFi信息采集的功能。该客户端需要利用以下的接口和类:ScanResult,WifiInfo和WifiManager。App涉及到对WiFi的操作,所以要在AndroidMainfest文件中进行一定配置,以获得相应的操作权限。
WirelessMon可以实时显示周边AP的信息,列出计算机接收到AP的信号强度,实时监测无线网络的传输速度,可使用户了解网络的速度或其稳定性。所以在在线阶段,硬件设备采用联想G490笔记本电脑,软件采用WirelessMon进行数据采样。
测试地点为南通移动综合楼七楼,测试场地面积大小为30 m×13 m,测试所用的AP个数为7个,每隔1 m设置一个参考位置节点,共计31×14= 434个。
图1为采用手机对某一AP进行200次采样且采样间隔为2 s的采样波形图。
图1 手机对AP的200次采样Fig.1 M obile phone′s 200 sam p les of AP
由图1可知,采样过程中存在着一些较大的误差,测量的最大值与最小值达到了19 dBm,采样的平均值为-60.585 0 dBm。
图2为去除较大误差后的采样图。
图2 处理后的采样值Fig.2 Sam p les after processing
由图2可以看出,剩余数据的平均值为-59.188 4 dBm,在一定程度上去除了由于较大误差带来的测量影响。
采用手机和PC分别对7个AP进行采样,并对采样所得的数据进行相同处理,去除较大误差后取平均值。图3为手机和PC分别测量7个AP并处理后所得的RSSI平均值。
图3 处理后的手机与PC的采样值Fig.3 Sam p les ofmobile phone and PC after processing
由图3可知,PC获取AP信号的能力要明显优于手机,同样条件下,采用PC测得的值始终大于手机测得的值。
图4为PC和手机所测得RSSI的差值。
图4 手机与PC的采样值对应的信号强度差值Fig.4 RSSI′s difference value of mobile phone and PC′s sam p les
由图4可得,采用RSSI差值可以有效减小因不同设备获取信号强度能力大小带来的采样误差。
在进行定位测试时,分别采用RSSI值和RSSI差值作为信号特征,在两种情况下各进行20次定位测试,对应的误差如图5所示。
由图5可知,若直接采用RSSI平均值值作为指纹信息录入Radio Map进行定位,产生的误差较大,测试所得的平均误差为5.186 5 m;在采用RSSI差值进行定位的情况下,误差有了明显的减小,定位平均误差为2.097 5 m。
4 结 语
文中针对传统的位置指纹算法在定位时存在着接收信号强度不稳定以及不同终端接收信号的能力不同这一问题,对算法进行了改进。离线阶段,对采集到的信号强度值进行处理,先舍去采样值最小的5%的数据,并对剩余数据进行处理,去除了偏差较大的采样数据,并采用信号强度值的差值作为信号特征而非直接采用RSSI值。实验结果表明,改进的算法不仅能够去除离线阶段误差较大的采样值,而且可以提高该算法面向不同终端设备进行应用的能力。
[1]Mok E,Retscher G.Location determination using WiFi fingerprinting versus WiFi trilateration[J].Journal of Location Based Services,2008,1(2):145-159.
[2]Jose M Alonso,Manuel Oca~na,Noelia Hernandez,etal.Enhanced WiFi localization system based on soft computing techniques to dealwith small-scale variations in wireless sensors[J].Applied Soft Computing Journal,2011,11(8):4677-4691.
[3]JoséAntonio Gómez Martin,Ana Verónica Medina Rodríguez,Enrique Dorronzoro Zubiete,et al.Fingerprint indoor position system based[J].Journal of Networks,2013,8(1):37-44.
[4]王赛伟.基于位置指纹的WLAN定夺内定位方法研究[D].哈尔滨:哈尔滨工业大学,2009.
[5]彭浪.室内Radio Map建立方法与性能分析[D].哈尔滨:哈尔滨工业大学,2010.
[6]朱建新,高蕾娜,张新访.RSS测距定位模型的Cramer-Rao界分析[J].计算机工程与应用,2008,44(35):100-102.
ZHU Jianxin,GAO Leina,ZHANG Xinfang.Cramer-Rao lower bound analysis on RSS-ranged localization model[J].Computer Engineering and Applications,2008,44(35):100-102.(in Chinese)
[7]张兴.WLAN室内定位信号特征提取算法研究[D].哈尔滨:哈尔滨工业大学,2013.
[8]秦泗明.基于位置指纹的WiFi室内定位技术研究[D].成都:电子科技大学,2013.
[9]张先毅,王英龙,郭强,等.无线传感器网络室内信道模型的研究[J].计算机应用研究,2009,26(12):4713-4715.
ZHANG Xianyi,WANG Yinglong,GUO Qiang,et al.Research of indoors channel fadingmodel in wireless sensor networks[J]. Application Research of Computers,2009,26(12):4713-4715.(in Chinese)
[10]涂岩恺.无线局域网室内定位关键参数计算[J].信息技术,2013(11):23-25.
TU Yankai.Key parameter computation ofWiFi indoor positioning[J].Information Technology,2013(11):23-25.(in Chinese)
[11]邓中亮,王文杰,徐连明.一种基于K-means算法的WLAN室内定位楼层判别方法[J].软件,2012,33(12):114-117.
DENG Zhongliang,WANGWenjie,XU Lianming.A K-means based method to identify floor in WLAN indoor positioning system [J].Software,2012,33(12):114-117.(in Chinese)
[12]张晓亮,赵平,徐冠青,等.基于一种优化的KNN算法在室内定位中的应用研究[J].电子设计工程,2013,21(7):44-46.
ZHANG Xiaoliang,ZHAO Ping,XU Guanqing,et al.Research of indoor positioning based on a optimization KNN algorithm[J]. Electronic Design Engineering,2013,21(7):44-46.(in Chinese)
(责任编辑:邢宝妹)
Study on the Extraction of the Key Parameter of Positioning Fingerprint A lgorithm
XU Xiaoxiao, XIE Linbo*
(School of Internet of Things Engineering,Jiangnan University,Wuxi214122,China)
To solve the problem that the instability of the signal strength value in the traditional location fingerprinting positioning algorithm for indoor position and the existing difference when the different terminal devices receive AP signals.This paper,improves the traditional positioning fingerprint algorithm,and filters the RSSI values during the off-line sampling stage,so that we can eliminate the samples with large errors.We use the RSSI′s difference into the radiomap as the singal feature instead of the RSSI value,so that we can reduce the error of the fingerprinting information caused by the difference of devices.During the testing phrase,the tested results on android and PC platform show that the developed algorithm can eliminate the samples with large errors in the off-line stage and improve the ability of adapting to different terminal devices.
location fingerprint,Shadowingmodel,RSSIdifference,android
TN 911.25
A
1671-7147(2015)03-0264-05
2014-12-20;
2015-01-28。
国家自然科学基金项目(60973095)。
徐潇潇(1991—),男,江苏启东人,控制工程专业硕士研究生。
*通信作者:谢林柏(1973—),男,湖南永州人,教授,硕士生导师,工学博士。主要从事控制理论、控制工程等研究。Email:xie_linbo@jiangnan.edu.cn