孫順遠,朱紅洲,秦寧寧,2
(1.江南大學(xué) 輕工過程先進控制教育部重點實驗室,江蘇 無錫 214122;2.南京航空航天大學(xué) 電磁頻譜空間認知動態(tài)系統(tǒng)工信部重點實驗室,江蘇 南京 211106)
目前,室內(nèi)定位技術(shù)大多基于WiFi[1]、藍牙[2]射頻識別等技術(shù),但無線信號由于多徑效應(yīng)、電磁干擾等原因易產(chǎn)生波動[3],且隨著定位區(qū)域的增大,計算復(fù)雜度也隨之增加。因此,如何降低信號波動,減小計算復(fù)雜度,提高定位精度,成為主要的研究方向。藍牙信標僅用于廣播信號強度,不能提供到達時間差[4]以及到達角度差[5]等信息,故選擇基于接收信號強度(RSS)的指紋匹配方法最為合適,建立參考點接收信號強度和坐標之間的匹配關(guān)系以實現(xiàn)室內(nèi)定位。
為減小信號接入點(Access Point,AP)的信號波動,采用數(shù)據(jù)濾波進行解決,增加參考點處接收信號強度的采集頻次,引入濾波器處理接收信號強度數(shù)據(jù)以減小定位誤差[6]。文獻[7]中對離線指紋數(shù)據(jù)分區(qū)建模,構(gòu)建多個子區(qū)域模型,有效地降低了計算復(fù)雜度。但基于接收信號強度信號的室內(nèi)定位易受到墻體干擾以及多徑效應(yīng)影響,導(dǎo)致不同參考點處的接收信號強度相同,造成分區(qū)的錯誤,故需結(jié)合區(qū)域物理坐標構(gòu)建分區(qū)模型。文獻[8]中提出建立數(shù)據(jù)校正的方法,通過高斯過程回歸(GPR)模型訓(xùn)練信號距離模型,設(shè)定閾值判斷是否需要校正,減小接入點信號波動的影響。文獻[9]中提出核函數(shù)強化學(xué)習(xí)的方法規(guī)避未知干擾源的干擾,可以用于有效的規(guī)避環(huán)境中的干擾因素,減小定位誤差。文獻[10]中討論了不同近鄰k值下的定位精度效果,隨著k值的增大,定位精度變高,到達某個值后,呈下降趨勢,但實際每次最優(yōu)k值不是固定的。針對這一問題改進,文獻[11]中提出動態(tài)加權(quán)近鄰算法,通過相似度的均值作為動態(tài)k值求取的閾值,以提升定位精度。文獻[12]中以區(qū)塊鏈的技術(shù)共享信號節(jié)點,有效地減小算法的計算復(fù)雜度。
在復(fù)雜的大型目標區(qū)域中,上述定位方法計算復(fù)雜度較高;隨著接入點信號波動引起接收信號強度數(shù)據(jù)異常點的增多,定位精度較差。針對這些問題,提出一種動態(tài)高斯校正的雙尺度近鄰定位方法(Two-Scale Nearest Neighbor positioning algorithm under Dynamically Gaussian Correction,DGC-TSNN),根據(jù)物理連通性劃分區(qū)域,采用一對多支持向量機(OVRSVM)訓(xùn)練分區(qū)模型,精確信號變化區(qū)域。以高斯過程回歸訓(xùn)練接入點信號距離模型預(yù)測分區(qū)路徑損耗特性,校正信號波動值;引入信號相似度和信號差異值,構(gòu)建信號雙尺度近鄰定位算法;引入環(huán)境參數(shù)進行動態(tài)獲取近鄰k值,減小算法定位誤差。在環(huán)形走廊和房間區(qū)域中布置藍牙信標,測試分析提出算法的定位性能。

隨著定位區(qū)域的不斷增大,算法的計算復(fù)雜度不斷增加,分區(qū)是減小計算復(fù)雜度行之有效的方法。HE等[13]對比在大型場景中不同分類方法的精度和效率,采用OVRSVM模型在辦公區(qū)域構(gòu)建分區(qū)的定位誤差較小。根據(jù)物理連通性將目標區(qū)域劃分為K個子區(qū)域,需要對數(shù)據(jù)S訓(xùn)練出K個支持向量機模型,第i個支持向量機模型轉(zhuǎn)化為求解如下最優(yōu)化問題:
(1)

φi(s)=(wi)Ts+bi,i=1,2,…,K。
(2)
在線階段將測試點輸入到K個決策函數(shù)中,根據(jù)k=arg max(φi(st)),i=1,2,…,K,得出測試點隸屬分區(qū)Ck。

f(l)~GP(m(l),k(l,l*)) ,
(3)
其中,m(l)=E(f(l)),為均值函數(shù);K(l,l*)=E[(f(l)-m(l))(f(l*)-m(l*))T],為協(xié)方差函數(shù),通常使用核函數(shù)作為協(xié)方差函數(shù)。設(shè)定訓(xùn)練集L對應(yīng)的輸出為f,測試集L*對應(yīng)的輸出為f*,建立多維高斯分布進行估計:
(4)
對上述式中f*求取邊緣概率得高斯分布的均值和方差,進而求得預(yù)測值:
f*∣L*,y,L~N(μ*,Σ*) ,
(5)
(6)
其中,
(7)
(8)
判斷RPi對于APj的接收信號強度數(shù)據(jù)是否需要校正:
(9)
其中,κ為預(yù)定義因子,rij表示st中對于APj的接收信號強度值。如果該式成立,則進行校正,該接收信號強度數(shù)據(jù)為
(10)
其中,λ為校正權(quán)重,以減小接入點信號波動的影響。


(11)

(12)

(13)

(14)

傳統(tǒng)方法是手動設(shè)定近鄰點數(shù)目c,但由實際分析可知,最優(yōu)c值并不是固定的,不同時間、場景中的最優(yōu)c值是變化的,因此需要設(shè)定動態(tài)c。筆者提出一種基于環(huán)境噪聲的動態(tài)k近鄰方法,定義環(huán)境參數(shù)為γ用于對近鄰程度的判斷:
(15)


(16)

Blending算法是一種模型融合算法,分為均勻融合和線性融合。該文采用線性加權(quán)融合方法,對不同的分類模型之間的差異設(shè)置不同的權(quán)重值,完成分類模型之間的互補,實現(xiàn)更好的分類效果。定義最小化誤差函數(shù)為
(17)


圖1 信號雙尺度算法框圖
從圖1可知,指紋數(shù)據(jù)分為訓(xùn)練集和測試集。訓(xùn)練集用于訓(xùn)練算法模型,測試集則用于算法性能測試。算法包含離線階段和在線階段。離線階段分為分區(qū)模型和GPR校正模型的訓(xùn)練,并依據(jù)驗證集得出最優(yōu)權(quán)重值。在線階段則依據(jù)離線階段訓(xùn)練得出的模型和最優(yōu)權(quán)值實現(xiàn)測試點的位置估計。
實驗場景為江南大學(xué)物聯(lián)網(wǎng)工程學(xué)院C區(qū)一樓環(huán)形走廊Ω1和C106房間Ω2,以區(qū)域相鄰邊作為x和y軸,以1 m×1 m為采集密度采集接收信號強度,每個參考點采集5次。根據(jù)采集的藍牙信標的信號衰減趨勢,在Ω1中每4 m處布置一個藍牙信標作為接入點。場景細節(jié)描述為:環(huán)形走廊Ω1=50 m×40 m,劃分為4個分區(qū),如圖2(a)所示,每個分區(qū)放置10個接入點,共獲得1 320組數(shù)據(jù),其中792組數(shù)據(jù)用于訓(xùn)練集,528組數(shù)據(jù)用于測試和驗證。房間場景Ω2=9 m×7 m,如圖2(b)所示,小區(qū)域劃分為4個區(qū)域,可以有效提高定位精度,房間內(nèi)放置10個接入點,共獲得400組數(shù)組,其中240組作為訓(xùn)練集,160組用于測試和驗證。

(a) 環(huán)形走廊信號分布
實驗數(shù)據(jù)采集是基于藍牙的指紋定位技術(shù),接入點采用的是基于NRF52832的低功耗藍牙信標,布置間距設(shè)置為4 m。離線采集階段使用Android端BluetoothGet軟件,在參考點采集數(shù)據(jù)時進行10次濾波,減小接收信號強度的波動。為提高指紋庫的有效性,選擇人員走動較少時采集接收信號強度數(shù)據(jù)。在線仿真階段采用Pycharm2019仿真軟件。對提出的DGC-TSNN,與WKNN方法、相關(guān)系數(shù)法(Correlation Coefficient Method,CCM)以及Bayesian方法進行性能對比。算法的參數(shù)設(shè)置:OVRSVM的懲罰系數(shù)C=3.6,GPR模型中預(yù)定義因子κ=2,更新權(quán)重λ=0.5,信號相似度中權(quán)重ω=0.3,α1和α2由最優(yōu)化問題求解得出。
在對走廊區(qū)域Ω1和房間區(qū)域Ω2定位時,采用分區(qū)的精細化定位方式,將走廊區(qū)域劃分為4個條形區(qū)域,房間內(nèi)部根據(jù)物理坐標劃分為4個區(qū)域,以O(shè)VRSVM構(gòu)建分區(qū)模型。基于分區(qū)模型對測試集分析,各分區(qū)的分區(qū)精度如表1所示,分區(qū)判別準確率達95%以上,能夠滿足一般精度需求。對提出的GPR校正模型測試分析,測試Ω1環(huán)形走廊區(qū)域的4個分區(qū),以每個分區(qū)的66組測試集進行分析,測試DGC-TSNN算法是否加入GPR校正的平均定位誤差,結(jié)果如表1所示。從表1中可知,DGC-TSNN算法在Ω1的4個分區(qū)內(nèi)加入GPR校正后的平均定位誤差為0.40 m左右,可知GPR校正可以有效地減小異常點引起的誤差。

表1 分類及校正分析
定位誤差分析中測試點定位誤差計算采用歐氏距離計算,即計算測試集估計坐標和真實坐標之間的歐氏距離。對4種方法定位誤差的均方根誤差、平均絕對誤差進行對比,計算公式為
(18)
(19)
其中,(xc,i,yc,i)為第i個測試點的估計坐標,(xt,i,yt,i)為第i個測試點的真實坐標。定位誤差對比如表2所示,DGC-TSNN算法在Ω1走廊和Ω2房間區(qū)域有著最低的均方根誤差和平均絕對誤差。在Ω1走廊中的均方根誤差和平均絕對誤差為0.45 m左右,在Ω2中的均方根誤差和平均絕對誤差也均為4種方法中的最低,均在1 m以內(nèi)。

表2 4種方法的誤差 m
采用WKNN、CCM、Bayesian和DGC-TSNN算法對比分析,以箱型圖顯示4種算法的定位誤差,如圖3所示。從圖3(a)中Ω1的誤差箱型圖可知,DGC-TSNN算法有著最低的誤差中位線,約為0.354 7 m,定位精度最高;Bayesian次之,但是Bayesian算法的離群點較多;WKNN和CCM算法的定位精度稍差。從圖3(b)中Ω2的誤差箱型圖可知,較于走廊區(qū)域4種方法定位精度有所降低,Ω2房間的最低誤差中位線為0.263 1 m左右。由于Ω2房間區(qū)域中有較多干擾設(shè)備,易引起信號波動。相較于其他算法,DGC-TSNN算法的定位誤差得到有效的降低。

(a) 環(huán)形走廊區(qū)域Ω 1
在環(huán)形走廊區(qū)域Ω1和房間區(qū)域Ω2中,就接入點數(shù)目對定位精度影響進行測試分析。針對接入點數(shù)目(N=4,5,6,7,8,9,10)對WKNN、CCM、Bayesian以及DGC-TSNN算法進行測試。采用環(huán)形走廊的264組測試數(shù)據(jù)和房間內(nèi)的80組測試數(shù)據(jù)進行測試分析,實驗結(jié)果如圖4(a)和圖4(b)所示。

(a) 環(huán)形走廊區(qū)域Ω 1
從實驗結(jié)果可以看出,Ω1環(huán)形走廊和Ω2房間區(qū)域的定位誤差隨著接入點數(shù)目N的增加而減小,且DGC-TSNN算法能夠保持較低的定位誤差。在Ω1中DGC-TSNN能夠一直保持著較低的定位誤差;在Ω2中,當N>6時,DGC-TSNN保持著最低的誤差。兩種區(qū)域最終N=10的平均定位誤差為0.40~0.50 m。
筆者提出一種動態(tài)校正的信號雙尺度近鄰定位算法。該算法根據(jù)目標區(qū)域的物理連通性構(gòu)建分區(qū)模型,以高斯過程回歸訓(xùn)練接入點信號距離模型,預(yù)測分區(qū)路徑損耗特性,校正信號波動值,引入信號相似度和信號差異值構(gòu)建信號雙尺度近鄰定位算法,設(shè)定環(huán)境參數(shù)動態(tài)獲取近鄰k值,減小環(huán)境噪聲。對測試結(jié)果分析可知,較于傳統(tǒng)算法,改進算法的定位誤差及計算復(fù)雜度均得到有效的降低。算法在實際應(yīng)用中需先對目標區(qū)域構(gòu)建離線指紋庫,訓(xùn)練分區(qū)模型和接入點信號距離模型,并將算法部署在服務(wù)器端,以提高定位效率。