文獻(xiàn)標(biāo)識(shí)碼: 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.
0 引言
隨著無線傳感器網(wǎng)絡(luò)(WSN)技術(shù)的不斷發(fā)展,,基于位置感知的服務(wù)和計(jì)算在實(shí)際中得到廣泛使用,。目前,室內(nèi)定位技術(shù)主要有:超聲波[1],、紅外線,、RFID[2]、WiFi,、UWB[3]等技術(shù),。本文使用成本低、功耗低,、復(fù)雜度低的德州儀器公司CC2530芯片基于ZigBee協(xié)議進(jìn)行研究,,通過節(jié)點(diǎn)間的接收信號(hào)強(qiáng)度指示(Received Signal Strength Indication,,RSSI)值進(jìn)行室內(nèi)定位。依據(jù)定位算法過程中是否使用節(jié)點(diǎn)間距離,,定位方式分為基于測距和非測距方式兩種,,本文使用的指紋數(shù)據(jù)庫即為非測距方式。
指紋數(shù)據(jù)庫定位需經(jīng)歷兩個(gè)階段:離線建庫階段和在線定位階段[4-5],,其原理如圖1所示,。在離線建庫階段,通過采集預(yù)設(shè)定的接入點(diǎn)(Access Point,,AP)與各參考節(jié)點(diǎn)(Reference Point,,RP)之間的RSSI值來建立原始指紋庫[6-8]。文獻(xiàn)[9]通過使用K-Means聚類算法,,實(shí)現(xiàn)眾包指紋庫建模,。本文在采集原始數(shù)據(jù)的基礎(chǔ)上,通過離群點(diǎn)檢測發(fā)現(xiàn)其與大部分?jǐn)?shù)據(jù)存在顯著差別的數(shù)據(jù)對(duì)象,,將其視為噪聲而丟棄,,然后使用雙閾值濾波處理得到最終的高精度指紋數(shù)據(jù)庫。
在線定位階段,,通過將實(shí)時(shí)采集到的待測點(diǎn)RSSI值與指紋數(shù)據(jù)庫中的數(shù)據(jù)集進(jìn)行比對(duì),,計(jì)算得到待測節(jié)點(diǎn)的位置坐標(biāo)。廣泛使用的典型定位算法主要包括核函數(shù)法,、最近鄰法,、最大似然概率法以及樸素貝葉斯法。文獻(xiàn)[10]-[12]通過研究提出增強(qiáng)型的聚類策略,、權(quán)值算法以及優(yōu)化質(zhì)心等,,可顯著提升定位速度和精度。上述研究方法通常易受待測點(diǎn)RSSI值波動(dòng)的影響,,同時(shí)在計(jì)算速度和精度上難以滿足要求,。本文通過使用FCM算法將待測節(jié)點(diǎn)的RSSI值進(jìn)行聚類,從而剔除跳變點(diǎn),,然后使用基于頻率因子的加權(quán)K最鄰近算法(Weighting K-Nearest Neighbor,,WKNN),,計(jì)算得到待測點(diǎn)的位置,,并且給出“備用位置”。
1 理論與方法
1.1 離線建庫階段
高精度指紋數(shù)據(jù)庫的建立是提高定位準(zhǔn)確度的前提條件[13],。由于在AP點(diǎn)進(jìn)行信息采集時(shí),,其數(shù)據(jù)存在大量噪聲影響指紋庫的精度,因此本文使用下述方法提高建庫精度,。
假定定位區(qū)域網(wǎng)格化后有m個(gè)AP和n個(gè)RP,,其分別記為集合{AP1,,AP2,…,,APm},、{RP1,RP2,,…,,RPn},其中m值亦為每個(gè)AP點(diǎn)的標(biāo)簽,,且每個(gè)AP接收到s組數(shù)據(jù),,記為:
1.1.1 離群點(diǎn)檢測方法
本文首先使用基于聚類分析的離群點(diǎn)檢測算法將原始數(shù)據(jù)中噪聲去除,其步驟:
(1)選擇合適的聚類算法對(duì)RSSIn進(jìn)行聚類分析,,本文使用K-Means算法,。
(2)計(jì)算RSSIn中各點(diǎn)與最近質(zhì)心的歐式距離,公式為:
其中,,Z表示各類質(zhì)心的坐標(biāo),。
(3)與給定的閾值η1進(jìn)行比較,若Di>η1,,則該RSSIi視為離群點(diǎn),,并將該點(diǎn)從源數(shù)據(jù)中剔除。
1.1.2 雙閾值濾波方法
在進(jìn)行離群點(diǎn)檢測時(shí),,某些離群點(diǎn)可能形成小簇從而逃避檢測,,因此需要使用雙閾值濾波對(duì)其進(jìn)一步處理。首先對(duì)數(shù)據(jù)進(jìn)行數(shù)據(jù)頻率閾值濾波,,設(shè)頻率閾值為:
1.2 在線定位階段
為剔除待測節(jié)點(diǎn)RSSI值的噪聲,,同時(shí)為增大數(shù)據(jù)有效性,本文在在線定位階段使用基于FCM與WKNN相結(jié)合的方法對(duì)數(shù)據(jù)進(jìn)行處理,。
1.2.1 FCM算法論述
具體過程如下:首先用加權(quán)指數(shù)m和分類數(shù)c初始化隸屬度矩陣,,然后重復(fù)迭代使用式(7)、式(8)求解聚類中心和新的隸屬度矩陣并將結(jié)果待入式(6),,直到Jm(U,,V)小于給定的正數(shù)ε或者達(dá)到最大迭代步長,則聚類過程結(jié)束,,得到待測節(jié)點(diǎn)數(shù)據(jù)集X={x1,,x2,…,,xi},,其中i∈(1,l)表示聚類之后的數(shù)據(jù)量。
1.2.2 WKNN算法論述
最鄰近定位算法通過計(jì)算待測節(jié)點(diǎn)的RSSI實(shí)時(shí)測量值與指紋庫中各對(duì)應(yīng)指紋數(shù)據(jù)之間的歐式距離,,從中搜尋距離最小的指紋點(diǎn),,然后將各個(gè)指紋數(shù)據(jù)通過平均或加權(quán)平均作為待測目標(biāo)的位置。歐式距離計(jì)算公式如下:
其中,,Ij表示距離最近的前K個(gè)AP節(jié)點(diǎn)所分別對(duì)應(yīng)的標(biāo)簽值,。
為防止出現(xiàn)小概率性的錯(cuò)誤定位問題,本文同時(shí)給出待測節(jié)點(diǎn)的“備用位置”作為參考,。其原理為使用上述加權(quán)K最鄰近定位算法迭代計(jì)算出與待測節(jié)點(diǎn)相近的多個(gè)節(jié)點(diǎn)并進(jìn)行排序(其中Lc計(jì)算出的位置節(jié)點(diǎn)除外),,選擇前2~4位節(jié)點(diǎn)作為待測節(jié)點(diǎn)的方向估計(jì),第1位節(jié)點(diǎn)作為待測節(jié)點(diǎn)的“備用位置”估計(jì),。
2 實(shí)驗(yàn)結(jié)果及分析
本文選用信號(hào)干擾強(qiáng),、設(shè)備多、使用環(huán)境復(fù)雜的校園多媒體教室進(jìn)行實(shí)驗(yàn),,選定其中20 m×20 m的為本次實(shí)驗(yàn)區(qū)域,。
在本實(shí)驗(yàn)的離線建庫階段,共設(shè)置100個(gè)AP節(jié)點(diǎn),,每個(gè)AP節(jié)點(diǎn)連續(xù)采集120 s的信號(hào)強(qiáng)度值數(shù)據(jù),,然后對(duì)本段時(shí)間內(nèi)的數(shù)據(jù)進(jìn)行處理從而建立指紋庫。下面選取第4個(gè)AP節(jié)點(diǎn)數(shù)據(jù)進(jìn)行分析,,其原始數(shù)據(jù)如圖2所示,。
為清晰表達(dá)算法處理過程,后續(xù)處理時(shí)以本節(jié)點(diǎn)的REF1參考節(jié)點(diǎn)數(shù)據(jù)值為對(duì)象,,且RSSI值繪圖時(shí)使用其絕對(duì)值表示,。
2.1 指紋庫建立
首先對(duì)數(shù)據(jù)值進(jìn)行離群點(diǎn)檢測,其中設(shè)定離散點(diǎn)閾值為0.7,,最大迭代次數(shù)設(shè)置為500,,則處理結(jié)果如圖3所示。
從圖3可知,,距離誤差超過閾值的所有點(diǎn),,均視為離群點(diǎn),應(yīng)從數(shù)據(jù)集中剔除,,以免影響后續(xù)數(shù)據(jù)處理過程,。
離群點(diǎn)剔除后對(duì)數(shù)據(jù)集進(jìn)行雙閾值濾波處理,其結(jié)果如圖4所示,。
分析圖4可知,,數(shù)據(jù)經(jīng)過雙閾值濾波后,能夠進(jìn)一步抑制噪聲的干擾,,并且可降低后續(xù)指紋數(shù)據(jù)庫建立的復(fù)雜度,。
同理,,將此AP點(diǎn)接收的其他REF數(shù)據(jù)進(jìn)行上述處理,,從而得到最終的該AP點(diǎn)對(duì)應(yīng)于每個(gè)RP點(diǎn)的指紋數(shù)據(jù),,并建立數(shù)據(jù)庫。
2.2 定位結(jié)果
在實(shí)驗(yàn)區(qū)域內(nèi),,共設(shè)置10個(gè)待測節(jié)點(diǎn),,每個(gè)節(jié)點(diǎn)連續(xù)采集信號(hào)時(shí)間亦均為120 s,現(xiàn)選取任意待測點(diǎn)數(shù)據(jù)進(jìn)行分析,,其原始數(shù)據(jù)如圖5所示,。
在使用算法對(duì)待測節(jié)點(diǎn)數(shù)據(jù)進(jìn)行分析前,需將其每次接收到的不同RP點(diǎn)的RSSI值進(jìn)行統(tǒng)一化處理,,并將其作為待測節(jié)點(diǎn)數(shù)據(jù)集中的一個(gè)觀測值(行屬性),,其統(tǒng)計(jì)結(jié)果如圖6所示。
然后使用FCM算法對(duì)此數(shù)據(jù)集進(jìn)行處理,,其目標(biāo)函數(shù)中隸屬度冪指數(shù)為3,,最大迭代次數(shù)為200,目標(biāo)函數(shù)的終止容限位1×10-6,。經(jīng)反復(fù)試驗(yàn),,最終本文選用分類數(shù)為2,不同分類數(shù)結(jié)果如圖7所示,。
對(duì)圖7趨勢分析可知,,針對(duì)本次研究數(shù)據(jù),當(dāng)分類數(shù)為2時(shí),,處理效果優(yōu)于其他分類數(shù),。
最后使用基于頻率因子的WKNN算法對(duì)上述分類后的數(shù)據(jù)進(jìn)行計(jì)算,得到待測節(jié)點(diǎn)位置,,其定位誤差為1.85 m,,備用位置的定位誤差為2.13 m。同理,,可得其余待測節(jié)點(diǎn)的位置誤差,。通過對(duì)比本文研究方法與傳統(tǒng)原始定位方法(未濾波指紋數(shù)據(jù)庫定位和未優(yōu)化FCM+WKNN定位算法),可明顯看出其定位精度的提升,,結(jié)果如表1所示,。
3 結(jié)論
本文首先通過離群點(diǎn)檢測與雙閾值濾波結(jié)合的方式對(duì)不同AP點(diǎn)采集的原始RSSI值數(shù)據(jù)進(jìn)行處理,建立高精度指紋數(shù)據(jù)庫,,然后使用FCM算法對(duì)待測節(jié)點(diǎn)的RSSI值進(jìn)行分類,,最后使用WKNN算法計(jì)算出待測節(jié)點(diǎn)的位置信息。經(jīng)過實(shí)驗(yàn)證明,,本文的研究方法相比于未濾波數(shù)據(jù)庫和未優(yōu)化算法等方式,,在定位精度上有明顯提高,并能給出“備用位置”信息。
參考文獻(xiàn)
[1] 葉寶玉,,王欽若,,熊建斌,等.基于超聲波的模型船舶室內(nèi)定位系統(tǒng)研究[J].計(jì)算機(jī)工程,,2012,,38(19):258-260,265.
[2] 馬卜林,,楊帆.煤礦井下WiFi人員定位GIS系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].西安科技大學(xué)學(xué)報(bào),,2012,32(3):301-305.
[3] 肖竹,,王勇超,,田斌,等.超寬帶定位研究與應(yīng)用:回顧和展望[J].電子學(xué)報(bào),,2011,,39(1):133-141.
[4] 張翔,熊劍,,武和雷,,等.基于MNN改進(jìn)粒子濾波的指紋庫定位算法研究[J].計(jì)算機(jī)工程與設(shè)計(jì),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ì)算機(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ì)算機(jī)應(yīng)用研究,,2017,34(9):2786-2790.
[11] 戴國華,,易靈芝,,王根平.一種新的基于ZigBee技術(shù)定位算法[J].計(jì)算機(jī)測量與控制,,2012,,20(4):1105-1107.
[12] 趙山,彭力.基于ZigBee網(wǎng)絡(luò)的移動(dòng)節(jié)點(diǎn)定位技術(shù)研究[J].測控技術(shù),,2014,,33(10):51-55.
[13] 王頂,馬娟,,趙頤軒.基于RSS空時(shí)處理的指紋定位算法[J].計(jì)算機(jī)應(yīng)用研究,,2012,29(12):4726-4728.
作者信息:
王培良1,,2,,張 婷3,肖英杰1
(1.上海海事大學(xué) 商船學(xué)院,,航運(yùn)仿真技術(shù)教育部工程研究中心,,上海201306;
2.濰坊科技學(xué)院,,山東 濰坊262700,;3.山東交通職業(yè)學(xué)院,山東 濰坊261206)