文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2016.12.016
中文引用格式: 田廣東,楊品章,,王珊,,等. 基于Kmeans聚類的CSI室內(nèi)定位[J].電子技術(shù)應(yīng)用,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 引言
隨著無線網(wǎng)絡(luò)技術(shù)的發(fā)展,,基于位置的服務(wù)得到了相應(yīng)的發(fā)展,。基于無線局域網(wǎng)(Wireless Local Area Network,,WLAN)的室內(nèi)定位技術(shù)受到了廣泛關(guān)注,,如今廣泛使用的基于接收信號強(qiáng)度指示(Received Signal Strength Indicator,RSSI)的定位方法精度不理想,。在IEEE802.11n標(biāo)準(zhǔn)[1]中,,支持信道狀態(tài)信息(Channel State Information,CSI)的反饋機(jī)制,,通過修改無線網(wǎng)卡驅(qū)動[2],,可以獲取正交頻分復(fù)用(Orthogonal Frequency Division Multiplexing,OFDM)子載波中30個(gè)子載波的CSI,。CSI描述了信號從發(fā)端到收端的衰減因子,,包括散射,、反射、路徑衰落等,。通過對CSI的統(tǒng)計(jì),,其結(jié)果描述了空間相關(guān)性,可以作為基于指紋定位的指紋信息,。
目前,,基于CSI的室內(nèi)定位研究已經(jīng)取得了一定的成果[3],達(dá)到了米級甚至亞米級的定位精度,。文獻(xiàn)[4]利用CSI的頻率差異性,,建立了CSI衰落與距離的模型,使用三邊測距定位,,由于受帶寬的限制,,多徑區(qū)分能力有限,測距精度不高,,從而影響定位精度,。文獻(xiàn)[5]利用CSI的頻率差異性,將30個(gè)信道CSI合成為5個(gè)子信道,,并將多個(gè)天線的CSI求平均值處理,,建立起一個(gè)基于概率模型的指紋定位模型。文獻(xiàn)[6]利用CSI信道間的關(guān)系提取指紋,,建立了一個(gè)基于歐式距離作為相似度比較的指紋模型,。
以上基于指紋的研究在提取指紋時(shí)都是將多個(gè)數(shù)據(jù)包的CSI做均值處理作為指紋。由于室內(nèi)多徑效應(yīng),,CSI存在成簇分布的狀況,,采用取平均值的方法不能很好地反映位置的多徑傳播,從而影響了定位精度,。本文通過采用Kmeans聚類算法,,提取多條CSI向量作為指紋來描述位置特性,。實(shí)驗(yàn)證明,,對比文獻(xiàn)[6]的CSI-MIMO算法,定位精度得到提高,。
1 指紋定位系統(tǒng)模型
基于指紋的定位模型分為離線訓(xùn)練階段和在線定位階段,,模型如圖1所示。
離線訓(xùn)練階段的任務(wù)是建立一個(gè)位置指紋數(shù)據(jù)庫,。首先要選擇參考點(diǎn)的位置,,然后在每個(gè)參考點(diǎn)處測量來自信標(biāo)的信號特征,最后處理信號特征保存在數(shù)據(jù)庫中,。這個(gè)數(shù)據(jù)庫也被稱為位置指紋地圖,。
在線定位階段是指通過測量獲得未知位置的信號特征并加以處理,,通過相應(yīng)的匹配算法,比較測量數(shù)據(jù)與離線訓(xùn)練建立的數(shù)據(jù)庫中的數(shù)據(jù),,找出相似的數(shù)據(jù),,作為位置的估計(jì)值。
2 基于Kmeans的聚類的CSI室內(nèi)定位算法
2.1 離線訓(xùn)練階段
在室內(nèi)定位區(qū)域選定L個(gè)參考點(diǎn),,參考點(diǎn)位置已知,,采用二維坐標(biāo)(x,y)表示,。在每個(gè)參考點(diǎn)接收n個(gè)CSI數(shù)據(jù)包,。每個(gè)數(shù)據(jù)包有一個(gè)p×q×30的復(fù)數(shù)矩陣HMIMO,其中p為發(fā)射天線數(shù),,q為接收天線數(shù),。m=p×q為天線對個(gè)數(shù)。
無線信號在室內(nèi)環(huán)境中存在著多徑傳播的情況,,CSI幅值也受此影響,,存在著成簇分布的情況,如圖2所示,,簇內(nèi)CSI幅值多徑傳播經(jīng)相似,。通過Kmeans算法處理相同天線對中n個(gè)數(shù)據(jù)包的CSI幅值。Kmeans算法能夠使聚類域中的所有CSI幅值向量到聚類中心距離的平方和最小,。其原理為:
輸入:聚類個(gè)數(shù)k,,包含n個(gè)數(shù)據(jù)對象的數(shù)據(jù)集。
輸出:k個(gè)聚類,。
(1)從n個(gè)數(shù)據(jù)對象中任意選取k個(gè)對象作為初始的聚類中心,。
(2)分別計(jì)算每個(gè)對象到各個(gè)聚類中心的距離,再把對象分配到距離最近的聚類中,。
(3)所有對象分配完成后,,重新計(jì)算k個(gè)聚類的中心。
(4)與前一次得到的k個(gè)聚類中心比較,,如果聚類中心未發(fā)生變化,,進(jìn)行下一步,否則轉(zhuǎn)到步驟(2),。
(5)輸出聚類結(jié)果,。
通過此算法,從n個(gè)數(shù)據(jù)包的值中得到k個(gè)具有代表性的CSI幅值向量作為位置指紋fin:
根據(jù)已有文獻(xiàn)的實(shí)驗(yàn)觀測表明[7],,超過80%的CSI幅值向量只存在4個(gè)以內(nèi)的分簇,,但是由于實(shí)際的測量過程中存在干擾,分簇?cái)?shù)目增加,所以本算法中設(shè)置分簇個(gè)數(shù)k=10,。
對于單個(gè)天線對得到fin,,對于m個(gè)天線的每個(gè)天線對使用Kmeans算法,得到訓(xùn)練向量:
2.2 在線定位階段
在線定位階段采用與離線訓(xùn)練階段相同的方法提取到m個(gè)天線對的指紋:
將提取到的指紋與訓(xùn)練階段建立的數(shù)據(jù)庫中的指紋作比較,,即將獲取到的第i個(gè)天線對的指紋矩陣與數(shù)據(jù)庫中的第i個(gè)天線對的指紋矩陣,,進(jìn)行兩個(gè)指紋矩陣中任意兩個(gè)CSI幅值向量i與j歐式距離的比較:
由于歐式距離反映了兩個(gè)向量之間的“不相關(guān)性”,即數(shù)值越大,,相關(guān)性越低,,數(shù)值越小,相關(guān)性越高,。因此,,關(guān)注這些距離中數(shù)值較小的作為測試點(diǎn)與訓(xùn)練點(diǎn)之間相似度比較的一個(gè)依據(jù)。所以不再考慮天線對,,將m個(gè)天線對的所有歐式距離從小到大排列,,共有10×m個(gè)距離:
在得到測試點(diǎn)與所有訓(xùn)練點(diǎn)之間的距離之后,使用K近鄰算法,,從中選出距離較小的K個(gè)位置坐標(biāo)平均作為位置估計(jì)坐標(biāo),,本文中K=3。
3 實(shí)驗(yàn)結(jié)果與分析
3.1 實(shí)驗(yàn)設(shè)置
為評估算法的定位精度,,在家庭客廳及其走廊的環(huán)境下測試,。共選有22個(gè)參考節(jié)點(diǎn),相鄰參考節(jié)點(diǎn)之間的距離為0.8 m,,在參考節(jié)點(diǎn)之間有30個(gè)測試節(jié)點(diǎn),。實(shí)驗(yàn)中使用FAST無線AP作為發(fā)射端,使用裝配有Intel WiFi Link 5300網(wǎng)卡的ThinkPad R400作為接收端,。接收端使用CSITOOL軟件接收CSI,。訓(xùn)練階段,在訓(xùn)練節(jié)點(diǎn)接收1 000個(gè)數(shù)據(jù)包的CSI,。定位階段,,在測試節(jié)點(diǎn)接收數(shù)據(jù)包100個(gè)。如圖3所示,,測試環(huán)境建立的二維坐標(biāo)系,,其中“★”代表AP位置,“▲”代表參考點(diǎn)位置,,“◆”代表測試點(diǎn)的位置,。
將本算法與CSI-MIMO算法作比較,,比較的性能由平均定位精度與累積誤差分布函數(shù)(Cumulative Distribution Function,,CDF)圖來表示定位性能。
3.2 參數(shù)設(shè)置
采用不同的T值進(jìn)行試驗(yàn)評估,T值的選擇對于定位精度有一定的影響,。試驗(yàn)分別從T值為10,、20、30,、40,、50、60進(jìn)行測試,,結(jié)果如圖4所示,。當(dāng)T值為10時(shí),定位精度最高,,平均定位精度為1.65 m,。CSI-MIMO在同樣的測試環(huán)境下平均定位精度為2.18 m,提高了24%,。
在T為10的情況下,,對比本算法與CSI-MIMO的CDF,如圖5所示,,50%的定位誤差都在1.34 m以內(nèi),,優(yōu)于CSI-MIMO算法。
3.3 定位時(shí)間
定位時(shí)間分為數(shù)據(jù)包接收時(shí)間和程序處理時(shí)間,。CSITOOl軟件每秒大約能接收20個(gè)數(shù)據(jù)包,,接收100個(gè)數(shù)據(jù)包需要5 s。執(zhí)行定位程序的時(shí)間大約為0.5 s,,所以完成一次定位的時(shí)間大約為5.5 s,。
4 結(jié)論
本文提出了一種基于Kmeans聚類算法提取室內(nèi)環(huán)境多徑傳播特征的指紋算法,利用CSI的頻率特性與MIMO的空間特性,,所獲取的指紋較以往算法有更好的空間區(qū)分性,。由于CSI的測量值存在誤差,使用聚類算法生成的多個(gè)特征向量能夠在一定程度上減小測量誤差所帶來的影響,,從而提高了定位精度,。下一步準(zhǔn)備從匹配算法入手進(jìn)行改進(jìn),進(jìn)一步提高定位精度,。
參考文獻(xiàn)
[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.