文献标识码:A
DOI:10.16157/j.issn.0258-7998.2016.12.016
中文引用格式:田广东,杨品章,王珊,等. 基于Kmeans聚类的CSI室内定位[J].电子技术应用,2016,42(12):62-64,68.
英文引用格式:Tian Guangdong,Yang Pinzhang,Wang Shan,et al. CSI indoor positioning based on Kmeans clustering[J].Application of Electronic Technique,2016,42(12):62-64,68.
0 引言
随着无线网络技术的发展,基于位置的服务得到了相应的发展。基于无线局域网(Wireless Local Area Network,WLAN)的室内定位技术受到了广泛关注,如今广泛使用的基于接收信号强度指示(Received Signal Strength Indicator,RSSI)的定位方法精度不理想。在IEEE802.11n标准[1]中,支持信道状态信息(Channel State Information,CSI)的反馈机制,通过修改无线网卡驱动[2],可以获取正交频分复用(Orthogonal Frequency Division Multiplexing,OFDM)子载波中30个子载波的CSI。CSI描述了信号从发端到收端的衰减因子,包括散射、反射、路径衰落等。通过对CSI的统计,其结果描述了空间相关性,可以作为基于指纹定位的指纹信息。
目前,基于CSI的室内定位研究已经取得了一定的成果[3],达到了米级甚至亚米级的定位精度。文献[4]利用CSI的频率差异性,建立了CSI衰落与距离的模型,使用三边测距定位,由于受带宽的限制,多径区分能力有限,测距精度不高,从而影响定位精度。文献[5]利用CSI的频率差异性,将30个信道CSI合成为5个子信道,并将多个天线的CSI求平均值处理,建立起一个基于概率模型的指纹定位模型。文献[6]利用CSI信道间的关系提取指纹,建立了一个基于欧式距离作为相似度比较的指纹模型。
以上基于指纹的研究在提取指纹时都是将多个数据包的CSI做均值处理作为指纹。由于室内多径效应,CSI存在成簇分布的状况,采用取平均值的方法不能很好地反映位置的多径传播,从而影响了定位精度。本文通过采用Kmeans聚类算法,提取多条CSI向量作为指纹来描述位置特性。实验证明,对比文献[6]的CSI-MIMO算法,定位精度得到提高。
1 指纹定位系统模型
基于指纹的定位模型分为离线训练阶段和在线定位阶段,模型如图1所示。
离线训练阶段的任务是建立一个位置指纹数据库。首先要选择参考点的位置,然后在每个参考点处测量来自信标的信号特征,最后处理信号特征保存在数据库中。这个数据库也被称为位置指纹地图。
在线定位阶段是指通过测量获得未知位置的信号特征并加以处理,通过相应的匹配算法,比较测量数据与离线训练建立的数据库中的数据,找出相似的数据,作为位置的估计值。
2 基于Kmeans的聚类的CSI室内定位算法
2.1 离线训练阶段
在室内定位区域选定L个参考点,参考点位置已知,采用二维坐标(x,y)表示。在每个参考点接收n个CSI数据包。每个数据包有一个p×q×30的复数矩阵HMIMO,其中p为发射天线数,q为接收天线数。m=p×q为天线对个数。
无线信号在室内环境中存在着多径传播的情况,CSI幅值也受此影响,存在着成簇分布的情况,如图2所示,簇内CSI幅值多径传播经相似。通过Kmeans算法处理相同天线对中n个数据包的CSI幅值。Kmeans算法能够使聚类域中的所有CSI幅值向量到聚类中心距离的平方和最小。其原理为:
输入:聚类个数k,包含n个数据对象的数据集。
输出:k个聚类。
(1)从n个数据对象中任意选取k个对象作为初始的聚类中心。
(2)分别计算每个对象到各个聚类中心的距离,再把对象分配到距离最近的聚类中。
(3)所有对象分配完成后,重新计算k个聚类的中心。
(4)与前一次得到的k个聚类中心比较,如果聚类中心未发生变化,进行下一步,否则转到步骤(2)。
(5)输出聚类结果。
通过此算法,从n个数据包的值中得到k个具有代表性的CSI幅值向量作为位置指纹fin:
根据已有文献的实验观测表明[7],超过80%的CSI幅值向量只存在4个以内的分簇,但是由于实际的测量过程中存在干扰,分簇数目增加,所以本算法中设置分簇个数k=10。
对于单个天线对得到fin,对于m个天线的每个天线对使用Kmeans算法,得到训练向量:
2.2 在线定位阶段
在线定位阶段采用与离线训练阶段相同的方法提取到m个天线对的指纹:
将提取到的指纹与训练阶段建立的数据库中的指纹作比较,即将获取到的第i个天线对的指纹矩阵与数据库中的第i个天线对的指纹矩阵,进行两个指纹矩阵中任意两个CSI幅值向量i与j欧式距离的比较:
由于欧式距离反映了两个向量之间的“不相关性”,即数值越大,相关性越低,数值越小,相关性越高。因此,关注这些距离中数值较小的作为测试点与训练点之间相似度比较的一个依据。所以不再考虑天线对,将m个天线对的所有欧式距离从小到大排列,共有10×m个距离:
在得到测试点与所有训练点之间的距离之后,使用K近邻算法,从中选出距离较小的K个位置坐标平均作为位置估计坐标,本文中K=3。
3 实验结果与分析
3.1 实验设置
为评估算法的定位精度,在家庭客厅及其走廊的环境下测试。共选有22个参考节点,相邻参考节点之间的距离为0.8 m,在参考节点之间有30个测试节点。实验中使用FAST无线AP作为发射端,使用装配有Intel WiFi Link 5300网卡的ThinkPad R400作为接收端。接收端使用CSITOOL软件接收CSI。训练阶段,在训练节点接收1 000个数据包的CSI。定位阶段,在测试节点接收数据包100个。如图3所示,测试环境建立的二维坐标系,其中“★”代表AP位置,“▲”代表参考点位置,“◆”代表测试点的位置。
将本算法与CSI-MIMO算法作比较,比较的性能由平均定位精度与累积误差分布函数(Cumulative Distribution Function,CDF)图来表示定位性能。
3.2 参数设置
采用不同的T值进行试验评估,T值的选择对于定位精度有一定的影响。试验分别从T值为10、20、30、40、50、60进行测试,结果如图4所示。当T值为10时,定位精度最高,平均定位精度为1.65 m。CSI-MIMO在同样的测试环境下平均定位精度为2.18 m,提高了24%。
在T为10的情况下,对比本算法与CSI-MIMO的CDF,如图5所示,50%的定位误差都在1.34 m以内,优于CSI-MIMO算法。
3.3 定位时间
定位时间分为数据包接收时间和程序处理时间。CSITOOl软件每秒大约能接收20个数据包,接收100个数据包需要5 s。执行定位程序的时间大约为0.5 s,所以完成一次定位的时间大约为5.5 s。
4 结论
本文提出了一种基于Kmeans聚类算法提取室内环境多径传播特征的指纹算法,利用CSI的频率特性与MIMO的空间特性,所获取的指纹较以往算法有更好的空间区分性。由于CSI的测量值存在误差,使用聚类算法生成的多个特征向量能够在一定程度上减小测量误差所带来的影响,从而提高了定位精度。下一步准备从匹配算法入手进行改进,进一步提高定位精度。
参考文献
[1] IEEE Std 802.11n-2009.IEEE standard for information technology—Local and metropolitan area networks—Specific requirements—Part 11:Wireless LAN medium access control(MAC) and physical layer(PHY) specifications amendment 5:Enhancements for higher throughput[S].
[2] HALPERIN D,HU W,SHETH A,et al.Tool release:gathering 802.11n traces with channel state information[J].ACM Sigcomm Computer Communication Review,2011,41(1):53-53.
[3] YANG Z,ZHOU Z,LIU Y.From RSSI to CSI: Indoor localization via channel response[J].ACM Computing Surveys,2013,46(2):25.
[4] WU K,XIAO J,YI Y,et al.FILA:fine-grained indoor localization[J].Proceedings IEEE INFOCOM,2012,131(5):2210-2218.
[5] XIAO J,WU K,YI Y,et al.FIFS:fine-grained indoor fingerprinting system[C].International Conference on Computer Communications and Networks,2012:1-7.
[6] CHAPRE Y,IGNJATOVIC A,SENEVIRATNE A,et al.CSI-MIMO:an efficient Wi-Fi fingerprinting using channel state information with MIMO[J].Pervasive & Mobile Computing,2015,23:89-103.
[7] SEN S,CHOUDHURY R R,RADUNOVIC B,et al.Precise indoor localization using PHY layer information[C].Proceedings of the 10th ACM Workshop on Hot Topics in Networks,ACM,2011:1-6.