《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 測試測量 > 設(shè)計應(yīng)用 > 改進(jìn)指紋庫精度下的室內(nèi)定位算法研究
改進(jìn)指紋庫精度下的室內(nèi)定位算法研究
2018年電子技術(shù)應(yīng)用第10期
王培良1,2,張 婷3,肖英杰1
1.上海海事大學(xué) 商船學(xué)院,航運仿真技術(shù)教育部工程研究中心,上海201306; 2.濰坊科技學(xué)院,山東 濰坊262700;3.山東交通職業(yè)學(xué)院,山東 濰坊261206
摘要: 隨著傳感器網(wǎng)絡(luò)的不斷發(fā)展,基于位置服務(wù)逐步成為研究熱點,其中的室內(nèi)定位技術(shù)發(fā)展更為迅猛。為準(zhǔn)確而快速地確定室內(nèi)待測節(jié)點位置,通過對ZigBee無線網(wǎng)絡(luò)的研究,提出在離線建庫階段使用基于離群點檢測與雙閾值濾波算法(頻率閾值和均值閾值)處理采集到的不同接入點(Access Point, AP)的信號強(qiáng)度指示(Received Signal Strength Indication, RSSI),建立高精度指紋數(shù)據(jù)庫,然后在線定位階段,結(jié)合使用模糊C均值聚類(Fuzzy C-Means, FCM)和基于頻率因子的加權(quán)K最鄰近算法(Weighting K-Nearest Neighbor, WKNN)計算出待測節(jié)點的最終位置,并給出“備用位置”。結(jié)果表明,采用該研究方法建立的指紋庫在精度上有較大提升,同時定位精度也顯著提高。
中圖分類號: TN914
文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.180768
中文引用格式: 王培良,張婷,肖英杰. 改進(jìn)指紋庫精度下的室內(nèi)定位算法研究[J].電子技術(shù)應(yīng)用,2018,44(10):97-101,105.
英文引用格式: Wang Peiliang,Zhang Ting,Xiao Yingjie. Research on indoor positioning algorithm based on improved fingerprint library accuracy[J]. Application of Electronic Technique,2018,44(10):97-101,105.
Research on indoor positioning algorithm based on improved fingerprint library accuracy
Wang Peiliang1,2,Zhang Ting3,Xiao Yingjie1
1.Engineering Research Center of Simulation Technology of the Ministry of Education, Merchant Marine College,Shanghai Maritime University,Shanghai 201306,China; 2.Weifang University of Science and Technology,Weifang 262700,China; 3.Shandong Transport Vocational College,Weifang 261206,China
Abstract: With the continuous development of sensor networks, location-based services have gradually become the research hotspots, and indoor positioning technology is one of the most which are the fastest developing technology. In order to accurately and quickly position the location of indoor nodes to be measured, this research based on ZigBee wireless network proposes to use the algorithm based on outlier detection and double threshold filtering (frequency threshold and mean threshold) to process the RSSI data ,which are from different access points(APs), to establishes a high-precision fingerprint database. Then the final position of the node to be measured is calculated by using fuzzy C-Means(FCM) and the weighted K-nearest neighbor(WKNN) algorithm based on the frequency factor, and the“spare location” is also obtained. The result shows that the fingerprint database established by this research method has a great improvement in accuracy and the positioning accuracy has also been significantly improved.
Key words : indoor positioning;ZigBee wireless network;fuzzy c-means;weighted k-nearest neighbor

0 引言

    隨著無線傳感器網(wǎng)絡(luò)(WSN)技術(shù)的不斷發(fā)展,基于位置感知的服務(wù)和計算在實際中得到廣泛使用。目前,室內(nèi)定位技術(shù)主要有:超聲波[1]、紅外線、RFID[2]、WiFi、UWB[3]等技術(shù)。本文使用成本低、功耗低、復(fù)雜度低的德州儀器公司CC2530芯片基于ZigBee協(xié)議進(jìn)行研究,通過節(jié)點間的接收信號強(qiáng)度指示(Received Signal Strength Indication,RSSI)值進(jìn)行室內(nèi)定位。依據(jù)定位算法過程中是否使用節(jié)點間距離,定位方式分為基于測距和非測距方式兩種,本文使用的指紋數(shù)據(jù)庫即為非測距方式。

    指紋數(shù)據(jù)庫定位需經(jīng)歷兩個階段:離線建庫階段和在線定位階段[4-5],其原理如圖1所示。在離線建庫階段,通過采集預(yù)設(shè)定的接入點(Access Point,AP)與各參考節(jié)點(Reference Point,RP)之間的RSSI值來建立原始指紋庫[6-8]。文獻(xiàn)[9]通過使用K-Means聚類算法,實現(xiàn)眾包指紋庫建模。本文在采集原始數(shù)據(jù)的基礎(chǔ)上,通過離群點檢測發(fā)現(xiàn)其與大部分?jǐn)?shù)據(jù)存在顯著差別的數(shù)據(jù)對象,將其視為噪聲而丟棄,然后使用雙閾值濾波處理得到最終的高精度指紋數(shù)據(jù)庫。

ck5-t1.gif

    在線定位階段,通過將實時采集到的待測點RSSI值與指紋數(shù)據(jù)庫中的數(shù)據(jù)集進(jìn)行比對,計算得到待測節(jié)點的位置坐標(biāo)。廣泛使用的典型定位算法主要包括核函數(shù)法、最近鄰法、最大似然概率法以及樸素貝葉斯法。文獻(xiàn)[10]-[12]通過研究提出增強(qiáng)型的聚類策略、權(quán)值算法以及優(yōu)化質(zhì)心等,可顯著提升定位速度和精度。上述研究方法通常易受待測點RSSI值波動的影響,同時在計算速度和精度上難以滿足要求。本文通過使用FCM算法將待測節(jié)點的RSSI值進(jìn)行聚類,從而剔除跳變點,然后使用基于頻率因子的加權(quán)K最鄰近算法(Weighting K-Nearest Neighbor,WKNN),計算得到待測點的位置,并且給出“備用位置”。

1 理論與方法

1.1 離線建庫階段

    高精度指紋數(shù)據(jù)庫的建立是提高定位準(zhǔn)確度的前提條件[13]。由于在AP點進(jìn)行信息采集時,其數(shù)據(jù)存在大量噪聲影響指紋庫的精度,因此本文使用下述方法提高建庫精度。

    假定定位區(qū)域網(wǎng)格化后有m個AP和n個RP,其分別記為集合{AP1,AP2,…,APm}、{RP1,RP2,…,RPn},其中m值亦為每個AP點的標(biāo)簽,且每個AP接收到s組數(shù)據(jù),記為:

ck5-gs1.gif

1.1.1 離群點檢測方法

    本文首先使用基于聚類分析的離群點檢測算法將原始數(shù)據(jù)中噪聲去除,其步驟:

    (1)選擇合適的聚類算法對RSSIn進(jìn)行聚類分析,本文使用K-Means算法。

    (2)計算RSSIn中各點與最近質(zhì)心的歐式距離,公式為:

ck5-gs2.gif

其中,Z表示各類質(zhì)心的坐標(biāo)。

    (3)與給定的閾值η1進(jìn)行比較,若Di1,則該RSSIi視為離群點,并將該點從源數(shù)據(jù)中剔除。

1.1.2 雙閾值濾波方法

    在進(jìn)行離群點檢測時,某些離群點可能形成小簇從而逃避檢測,因此需要使用雙閾值濾波對其進(jìn)一步處理。首先對數(shù)據(jù)進(jìn)行數(shù)據(jù)頻率閾值濾波,設(shè)頻率閾值為:

ck5-gs3-5.gif

1.2 在線定位階段

    為剔除待測節(jié)點RSSI值的噪聲,同時為增大數(shù)據(jù)有效性,本文在在線定位階段使用基于FCM與WKNN相結(jié)合的方法對數(shù)據(jù)進(jìn)行處理。

1.2.1 FCM算法論述

ck5-gs6-8.gif

    具體過程如下:首先用加權(quán)指數(shù)m和分類數(shù)c初始化隸屬度矩陣,然后重復(fù)迭代使用式(7)、式(8)求解聚類中心和新的隸屬度矩陣并將結(jié)果待入式(6),直到Jm(U,V)小于給定的正數(shù)ε或者達(dá)到最大迭代步長,則聚類過程結(jié)束,得到待測節(jié)點數(shù)據(jù)集X={x1,x2,…,xi},其中i∈(1,l)表示聚類之后的數(shù)據(jù)量。

1.2.2 WKNN算法論述

    最鄰近定位算法通過計算待測節(jié)點的RSSI實時測量值與指紋庫中各對應(yīng)指紋數(shù)據(jù)之間的歐式距離,從中搜尋距離最小的指紋點,然后將各個指紋數(shù)據(jù)通過平均或加權(quán)平均作為待測目標(biāo)的位置。歐式距離計算公式如下:

ck5-gs9-10.gif

ck5-gs11-12.gif

其中,Ij表示距離最近的前K個AP節(jié)點所分別對應(yīng)的標(biāo)簽值。

    為防止出現(xiàn)小概率性的錯誤定位問題,本文同時給出待測節(jié)點的“備用位置”作為參考。其原理為使用上述加權(quán)K最鄰近定位算法迭代計算出與待測節(jié)點相近的多個節(jié)點并進(jìn)行排序(其中Lc計算出的位置節(jié)點除外),選擇前2~4位節(jié)點作為待測節(jié)點的方向估計,第1位節(jié)點作為待測節(jié)點的“備用位置”估計。

2 實驗結(jié)果及分析

    本文選用信號干擾強(qiáng)、設(shè)備多、使用環(huán)境復(fù)雜的校園多媒體教室進(jìn)行實驗,選定其中20 m×20 m的為本次實驗區(qū)域。

    在本實驗的離線建庫階段,共設(shè)置100個AP節(jié)點,每個AP節(jié)點連續(xù)采集120 s的信號強(qiáng)度值數(shù)據(jù),然后對本段時間內(nèi)的數(shù)據(jù)進(jìn)行處理從而建立指紋庫。下面選取第4個AP節(jié)點數(shù)據(jù)進(jìn)行分析,其原始數(shù)據(jù)如圖2所示。

ck5-t2.gif

    為清晰表達(dá)算法處理過程,后續(xù)處理時以本節(jié)點的REF1參考節(jié)點數(shù)據(jù)值為對象,且RSSI值繪圖時使用其絕對值表示。

2.1 指紋庫建立

    首先對數(shù)據(jù)值進(jìn)行離群點檢測,其中設(shè)定離散點閾值為0.7,最大迭代次數(shù)設(shè)置為500,則處理結(jié)果如圖3所示。

ck5-t3.gif

    從圖3可知,距離誤差超過閾值的所有點,均視為離群點,應(yīng)從數(shù)據(jù)集中剔除,以免影響后續(xù)數(shù)據(jù)處理過程。

    離群點剔除后對數(shù)據(jù)集進(jìn)行雙閾值濾波處理,其結(jié)果如圖4所示。

ck5-t4.gif

    分析圖4可知,數(shù)據(jù)經(jīng)過雙閾值濾波后,能夠進(jìn)一步抑制噪聲的干擾,并且可降低后續(xù)指紋數(shù)據(jù)庫建立的復(fù)雜度。

    同理,將此AP點接收的其他REF數(shù)據(jù)進(jìn)行上述處理,從而得到最終的該AP點對應(yīng)于每個RP點的指紋數(shù)據(jù),并建立數(shù)據(jù)庫。

2.2 定位結(jié)果

    在實驗區(qū)域內(nèi),共設(shè)置10個待測節(jié)點,每個節(jié)點連續(xù)采集信號時間亦均為120 s,現(xiàn)選取任意待測點數(shù)據(jù)進(jìn)行分析,其原始數(shù)據(jù)如圖5所示。

ck5-t5.gif

    在使用算法對待測節(jié)點數(shù)據(jù)進(jìn)行分析前,需將其每次接收到的不同RP點的RSSI值進(jìn)行統(tǒng)一化處理,并將其作為待測節(jié)點數(shù)據(jù)集中的一個觀測值(行屬性),其統(tǒng)計結(jié)果如圖6所示。

ck5-t6.gif

    然后使用FCM算法對此數(shù)據(jù)集進(jìn)行處理,其目標(biāo)函數(shù)中隸屬度冪指數(shù)為3,最大迭代次數(shù)為200,目標(biāo)函數(shù)的終止容限位1×10-6。經(jīng)反復(fù)試驗,最終本文選用分類數(shù)為2,不同分類數(shù)結(jié)果如圖7所示。

ck5-t7.gif

    對圖7趨勢分析可知,針對本次研究數(shù)據(jù),當(dāng)分類數(shù)為2時,處理效果優(yōu)于其他分類數(shù)。

最后使用基于頻率因子的WKNN算法對上述分類后的數(shù)據(jù)進(jìn)行計算,得到待測節(jié)點位置,其定位誤差為1.85 m,備用位置的定位誤差為2.13 m。同理,可得其余待測節(jié)點的位置誤差。通過對比本文研究方法與傳統(tǒng)原始定位方法(未濾波指紋數(shù)據(jù)庫定位和未優(yōu)化FCM+WKNN定位算法),可明顯看出其定位精度的提升,結(jié)果如表1所示。

ck5-b1.gif

3 結(jié)論

    本文首先通過離群點檢測與雙閾值濾波結(jié)合的方式對不同AP點采集的原始RSSI值數(shù)據(jù)進(jìn)行處理,建立高精度指紋數(shù)據(jù)庫,然后使用FCM算法對待測節(jié)點的RSSI值進(jìn)行分類,最后使用WKNN算法計算出待測節(jié)點的位置信息。經(jīng)過實驗證明,本文的研究方法相比于未濾波數(shù)據(jù)庫和未優(yōu)化算法等方式,在定位精度上有明顯提高,并能給出“備用位置”信息。

參考文獻(xiàn)

[1] 葉寶玉,王欽若,熊建斌,等.基于超聲波的模型船舶室內(nèi)定位系統(tǒng)研究[J].計算機(jī)工程,2012,38(19):258-260,265.

[2] 馬卜林,楊帆.煤礦井下WiFi人員定位GIS系統(tǒng)設(shè)計與實現(xiàn)[J].西安科技大學(xué)學(xué)報,2012,32(3):301-305.

[3] 肖竹,王勇超,田斌,等.超寬帶定位研究與應(yīng)用:回顧和展望[J].電子學(xué)報,2011,39(1):133-141.

[4] 張翔,熊劍,武和雷,等.基于MNN改進(jìn)粒子濾波的指紋庫定位算法研究[J].計算機(jī)工程與設(shè)計,2014,35(7):2283-2288.

[5] 方爽,郭杭,洪海斌,等.一種虛擬空間劃分的室內(nèi)指紋庫定位方法[J].測繪科學(xué),2015,40(1):93-97.

[6] 劉小康,郭杭.基于Zigbee室內(nèi)定位系統(tǒng)的指紋庫優(yōu)化算法[J].計算機(jī)工程,2014,40(2):193-198.

[7] HOU Y,SUM G,F(xiàn)AN B.The indoor wireless location technology research based on WiFi[C].International Conference on Natural Computation.IEEE,2014:1044-1049.

[8] GUO S,ZHONG Z,HE T.FIND:faulty node detection for wireless sensor networks[C].ACM Conference on Embedded Networked Sensor Systems.ACM,2009:253-266.

[9] ZHOU M,TIAN Z,XU K,et al.SCaNME: Location tracking system in large-scale campus Wi-Fi environment using unlabeled mobility map[J].Expert Systems with Applications,2014,41(7):3429-3443.

[10] 霍歡,楊滬滬,鄭德原,等.一種改進(jìn)的RSSI指紋庫定位算法[J].計算機(jī)應(yīng)用研究,2017,34(9):2786-2790.

[11] 戴國華,易靈芝,王根平.一種新的基于ZigBee技術(shù)定位算法[J].計算機(jī)測量與控制,2012,20(4):1105-1107.

[12] 趙山,彭力.基于ZigBee網(wǎng)絡(luò)的移動節(jié)點定位技術(shù)研究[J].測控技術(shù),2014,33(10):51-55.

[13] 王頂,馬娟,趙頤軒.基于RSS空時處理的指紋定位算法[J].計算機(jī)應(yīng)用研究,2012,29(12):4726-4728.



作者信息:

王培良1,2,張  婷3,肖英杰1

(1.上海海事大學(xué) 商船學(xué)院,航運仿真技術(shù)教育部工程研究中心,上海201306;

2.濰坊科技學(xué)院,山東 濰坊262700;3.山東交通職業(yè)學(xué)院,山東 濰坊261206)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。