武 濤,王冠凌,代廣珍,周先存
(1.安徽工程大學(xué)安徽省電氣傳動與控制重點實驗室,安徽 蕪湖 241000;2.皖西學(xué)院網(wǎng)絡(luò)中心,安徽 六安 237012)
人們80%以上的時間都是待在室內(nèi),如購物、地鐵站、大型機場、大型廠房里的保安巡視等都是在室內(nèi)的[1],導(dǎo)致位置服務(wù)需求的日益增長,而全球定位系統(tǒng)(Global Position System,GPS) 在室內(nèi)環(huán)境中信號微弱,無法滿足室內(nèi)定位需求。近年來隨著位置信息服務(wù)越來越受到重視,利用室內(nèi)原有的WiFi 接入點,基于接收信號強度(Received Signal Strength Indicator,RSSI) 的WiFi 室內(nèi)定位技術(shù)因具有成本低、精度較高等特點,深受歡迎[2-3]。另外,藍牙技術(shù)發(fā)展也十分迅速,理想環(huán)境下iBeacon 技術(shù)可以達到1 m 以內(nèi)的定位精度,并且藍牙信號節(jié)點價格低廉、易于部署,可以很好地彌補室內(nèi)WiFi 信號盲點。結(jié)合這兩種定位方法,利用多傳感器的融合,從而可以獲得更高的定位精度[4-5]。
基于WiFi 信號指紋方法的RADAR 系統(tǒng)[6-7]利用k近鄰算法進行位置估算,但其受到多徑和環(huán)境的影響較大,會出現(xiàn)較大的估算誤差。Horus 系統(tǒng)[8]采用數(shù)學(xué)概率統(tǒng)計方法,在無線信號空間引入概率模型,利用最大似然數(shù)進行位置估算,在多徑影響較小的地方,定位精度表現(xiàn)得較好,而在環(huán)境復(fù)雜的地方,精度明顯下降,且穩(wěn)定性差。文獻[9]提出了低功耗藍牙手機終端室內(nèi)定位方法,在離線階段設(shè)置室內(nèi)位置坐標(biāo)并獲取藍牙錨點的信號強度,建立藍牙信號指紋庫,通過在線階段獲取附近的實時藍牙信號強度,并與指紋庫進行匹配獲得最終的位置信息,定位精度高,但是需要定期的人工維護,即對指紋數(shù)據(jù)庫進行更新,人工成本較高。文獻[10]進一步優(yōu)化了藍牙定位,提出了一種藍牙RSSI 的貝葉斯區(qū)域判別定位算法,構(gòu)建了不同區(qū)域RSSI 值向量組,通過貝葉斯估計判別接受信號強度的精確區(qū)域,并對此區(qū)域的RSSI 向量組進行多點質(zhì)心定位。相較于文獻[9],文獻[10]提出的優(yōu)化算法提高了定位精度、降低了定位誤差,但是忽略了指紋變量對定位結(jié)果的影響,也忽略了定位點接受信號的多徑效應(yīng)。文獻[11]基于藍牙RSSI 提出了一種高效節(jié)能的室內(nèi)定位算法,利用用戶動作迭代縮小搜索空間以定位目標(biāo)設(shè)備,并在幾個實際場景中進行了評估,在定位精度、搜索時間和能量消耗等方面都取得了良好的效果。但是過分依賴于室內(nèi)環(huán)境和用戶動作,定位穩(wěn)定性欠佳。文獻[12]提出了優(yōu)化貝葉斯的室內(nèi)WiFi 與藍牙融合定位算法,并引入競擇假設(shè)建立了融合定位誤差模型,通過獲取全局定位誤差的無偏估計,得到最終的位置信息,但是忽視了室內(nèi)多徑效應(yīng)產(chǎn)生的誤差區(qū)域化。
由于信號在傳播過程中受環(huán)境影響而造成的多徑、衰減等干擾使得RSS 信號具有時變性,基于RSSI 的室內(nèi)定位算法隨定位時間的延長精度越來越低[13-14]。這將需要定期維護數(shù)據(jù)指紋庫,從而提高了人工成本,給工作人員帶來了極大的不便。本文提出了一種基于WiFi 和藍牙融合的誤差區(qū)域加權(quán)定位算法(ERWLA) :(1) 離線階段,利用WiFi 和藍牙的信號強度,采用多邊定位得到各模型的定位區(qū)域,再利用區(qū)域面積的自適應(yīng)加權(quán)算法得到WiFi 和藍牙融合的位置信息,以降低定位誤差,并建立融合誤差模型,進行誤差分析。利用移動最小二乘插值法(MLSI) 對誤差進行曲面擬合,以獲得誤差回歸函數(shù)[15-18]。(2) 在線階段,算法獲取輸入融合位置信息,輸出加權(quán)擬合誤差,獲得最終的位置估計。本文算法考慮到室內(nèi)的誤差區(qū)域化,通過運用權(quán)函數(shù)對局部誤差加權(quán),以達到最優(yōu)的位置估算,實現(xiàn)高精度的定位服務(wù)。實驗結(jié)果表明基于WiFi 和藍牙融合的誤差區(qū)域加權(quán)定位算法具有良好的定位性能,且相較與對比算法,在相同的環(huán)境下具有更好的定位精度和穩(wěn)定性。因此,在復(fù)雜的室內(nèi)環(huán)境中也能達到很好的定位效果。
基于信號強度的測距模型[5,12],其核心思想在于:信號在傳播過程中,接受的信號強度會隨距離的增加而衰減。因此,信號在傳播過程中的衰減特性暗含著距離信息。
在真實環(huán)境中,信號的反射、散射或者遮蔽的現(xiàn)象對信號的采集產(chǎn)生很大的干擾。這些影響通常與環(huán)境相關(guān),且難以用精確的數(shù)學(xué)模型來刻畫。由于信號傳播的不確定性,研究者通常假設(shè)接收信號強度滿足對數(shù)正態(tài)分布。在該假設(shè)條件下,信號強度隨距離變化的模型可以被進一步描述為對數(shù)正態(tài)陰影模型:
其中,P0(d0) 和Pr(d) 分別表示接收在距離信號源為d0和d 處的信號強度; η 表示路徑損耗參數(shù); Xσ是服從正態(tài)分布的隨機變量,表示信號的反射現(xiàn)象對所接收信號造成的影響。本文在室內(nèi)設(shè)置場景進行實驗時將η 值選取為2.0,對Xσ經(jīng)過多次測量后修正為2.6。在路徑損耗參數(shù)已知時,接收者可以通過接收到的RSSI值來估計與AP 之間的距離。
本文分別建立了WiFi 和藍牙多邊定位模型,并獲得WiFi 和藍牙當(dāng)前位置接收到的信號強度(RSSI1,RSSI2,RSSI3,…,RSSIn) ,運用公式(1) 計算得到各個接入點AP 到當(dāng)前位置的距離(d1,d2,d3,…,dn) ,并選取其中的4 個最短距離進行多邊測量。然后分別以這4個AP 接入點分別作為球心、相應(yīng)距離d 為半徑,建立數(shù)學(xué)模型,如圖1 所示。
令上面選取的4 個WiFi 和藍牙的AP 接入點坐標(biāo)分別為: (xw1,yw1,zw1) 、(xw2,yw2,zw2) 、(xw3,yw3,zw3) 、(xw4,yw4,zw4) 和(xb1,yb1,zb1) 、(xb2,yb2,zb2) 、(xb3,yb3,zb3) 、(xb4,yb4,zb4) 為了形式的簡潔,將以上坐標(biāo)統(tǒng)一記為: (x1,y1,z1) ︿(x4,y4,z4) ,于是得到多邊測量的模型的方程組如下:
圖1 數(shù)學(xué)模型
利用式(2) ,可以得到四個球體的公共體積。令定位目標(biāo)的手持移動設(shè)備高度為h,并使用(0,0,h) 平面來對公共部分進行切割得到式(3) ,切割面如圖2 所示。簡化模型得到定位可取區(qū)域,如圖3 陰影部分所示。
圖2 模型切割面
根據(jù)手持移動設(shè)備的高度平面截取AP 接入點為球心的三維空間模型,得到二維定位可取區(qū)域,減小了定位范圍,降低了二維空間帶來的誤差,且提高了定位精度。
圖3 定位可取區(qū)域
圖3中陰影部分表示的是WiFi 和藍牙定位可取區(qū)域Aw和Ab,其面積記作ΔSw和ΔSb。由于定位精度和ΔS是成反比,即ΔS 越大,定位精度越低。因此,通過給定位可取區(qū)域面積ΔS 設(shè)立置信度限定可取區(qū)域,并對WiFi 和藍牙定位結(jié)果進行加權(quán)融合,可以有效提升定位精度。WiFi 和藍牙定位的置信度分別定義為:
將式(4) 中的WiFi 和藍牙定位置信度融合,并進行權(quán)值歸一化得到式(5) :
實驗場景布置過程中設(shè)定的兩個先驗信息源分別為:WiFi 定位坐標(biāo)(xw1,yw1) ,(xw2,yw2) ,…,(xwi,ywi) 和藍牙定位坐標(biāo)(xb1,yb1) ,(xb2,yb2) ,…,(xbi,ybi) ,分別記作(x,y)w和(x,y)b。與信息坐標(biāo)對應(yīng)的i 個參考點坐標(biāo)為(x1,y1) ,(x2,y2) ,…,(xi,yi) 。根據(jù)公式(5) ,分別對WiFi 和藍牙位置坐標(biāo)進行加權(quán)處理,得到的融合定位坐標(biāo)為:
1.3.1 融合定位誤差
融合定位誤差定義為現(xiàn)場定位坐標(biāo)(x,y) 與WiFi和藍牙融合定位坐標(biāo)(x',y') 之差,表示為(σx,σy) ,其中:
將WiFi 和藍牙融合坐標(biāo)與融合定位誤差組合,得到三維空間坐標(biāo)(x',y',σx) 和(x',y',σy) ,并采用移動最小二乘插值法進行擬合。
1.3.2 移動最小二乘法
在三維區(qū)域內(nèi)的一個局部子域上誤差函數(shù)表示為σ(x) ,其中x = [x,y]T。逼近擬合函數(shù)定義為:
其中,a(x) = [a1(x) ,a2(x) ,…,an(x) ]T為相應(yīng)的待定系數(shù)向量,ai(x) (i = 1,2,…,m) 是關(guān)于x 點坐標(biāo)的函數(shù); p(x) = [p1(x) ,p2(x) ,…,pn(x) ]T為m 維基函數(shù)向量,pi(x) (i = 1,2,…,m) 是一個二階多項式,m是基函數(shù)向量的項數(shù)。對于三維空間,基函數(shù)向量的項數(shù)為6,p(x) 表示如下:
引入緊支集限定點(x,y) 處的誤差值σ 只受到附近子域節(jié)點的影響,其子域稱作點(x,y) 的影響區(qū)域,子域外的節(jié)點對其沒有影響,即設(shè)置定位置信度。定義逼近函數(shù)與誤差函數(shù)之差的平方加權(quán)為目標(biāo)函數(shù):
式中,w(x - xi) 是節(jié)點xi的權(quán)函數(shù),n 為緊支區(qū)域內(nèi)的節(jié)點個數(shù),u(x) 是逼近擬合函數(shù),而σ(xi) 是定義域上的誤差函數(shù)。為了獲得相應(yīng)的系數(shù)a(x) ,將目標(biāo)函數(shù)對a(x) 進行求導(dǎo)數(shù),并求極值點a(x) :
其中,
把公式(12) 代入到式(8) 中,得到MLS 逼近擬合函數(shù):
目標(biāo)函數(shù)中的加權(quán)函數(shù)要求具有緊支性、非負性、連續(xù)性且具有高階導(dǎo)數(shù),以保證系數(shù)的唯一性。由于高斯加權(quán)服從正態(tài)分布,對于較小的定位誤差權(quán)重較大,當(dāng)定位誤差越來越大時,權(quán)重越來越小,因此能夠很好地平滑擬合曲面。定義高斯加權(quán)函數(shù)為:
算法擬合曲面步驟如下:
Step1:實現(xiàn)采集的參考點和眾包定位準(zhǔn)確點的位置信息為(xi,yi,σi) ,選擇基函數(shù)p(x) 。
Step2:遍歷每個未知點,形成形狀函數(shù)。
(a) 建立加權(quán)函數(shù)w(x) ,n 個節(jié)點坐標(biāo)的加權(quán)函數(shù)并形成矩陣w。
(b) 通過公式(13) 計算出A(x) 和B(x) 的值。并用SVD 方法得出A-1(x) 。
Step3:結(jié)束未知點循環(huán)。
Step4:得到逼近擬合函數(shù)u(x) 。
1.3.3 移動最小二乘插值法
移動最小二乘法擬合的誤差函數(shù)與實際誤差之間存在偏差。若要減少擬合偏差,采用插值擬合就必須使得權(quán)函數(shù)w(x - xi) 在xi點處是奇異的,但這會使系數(shù)矩陣A(x) = pTw(x) p 在x →xi時趨向于無窮大。為此,采用對基函數(shù)正交處理。將基函數(shù)p1(x) 在x 點處單位化為:
再將p2,p3,...,pm與在x 點處正交化:
其中,v(x - xi) 為權(quán)函數(shù)的歸一化,即
運用MATLAB 編程實現(xiàn)MLS 插值擬合法對融合定位誤差模型數(shù)據(jù)的仿真,得到如圖4 和圖5 所示的誤差擬合。
由于室內(nèi)RSSI 值受多徑效應(yīng)的影響,且環(huán)境隨著時間而改變。因此,采集的RSSI 值顯示為動態(tài)性。當(dāng)前的參考點很少且都是靜態(tài)的,結(jié)合用戶反饋的定位效果好的眾包節(jié)點,動態(tài)更新MLSI 算法需要擬合的已知節(jié)點。輸入當(dāng)前位置的融合信息(x,y) ,利用MLSI 算法的回歸函數(shù),得到融合定位誤差σx和σy。當(dāng)前位置融合定位的最終估計值為:
其中,x' 和y' 分別是當(dāng)前位置融合定位的橫坐標(biāo)和縱坐標(biāo),而σx和σy是通過影響區(qū)域加權(quán)回歸得到的融合定位坐標(biāo)誤差。
WiFi 和藍牙融合定位試驗環(huán)境為7 m×7 m 的實驗室,如圖6 所示。實驗中設(shè)置了4 個WiFi AP 信號節(jié)點,使用的是普通型號路由器TengDa-AC6,節(jié)點坐標(biāo)分別為(0,0,4) 、(6.6,0,4) 、(0,6.6,4) 、(6.6,6.6,4) ,單位為m。同時設(shè)置了4 個藍牙節(jié)點和64 個均勻分布的參考節(jié)點。
圖4 X 誤差擬合圖
圖5 Y 誤差擬合圖
采集設(shè)備為HuaWei Mate9,利用WiFi 魔盒APP 采集WiFi 信號的RSSI 值,利用BLE Debugger 采集藍牙信標(biāo)信息。
圖6 場景節(jié)點圖
運用MATLAB(2016) 軟件編程對本文提出的WiFi 與藍牙融合定位算法進行實現(xiàn),并與WiFi 定位和藍牙定位進行比較。實驗結(jié)果得到的誤差累積分布如圖7所示,其中,橫坐標(biāo)為誤差值,縱坐標(biāo)為對應(yīng)的誤差概率。
圖7 定位結(jié)果累積誤差分布圖
由圖7(a) 可知: (1) 單獨的WiFi 定位平均誤差為2.440 m,在誤差為2.4 m 時,定位精度能夠達到80%;(2) 單獨的藍牙定位平均誤差為0.894 m,在誤差為0.99 m 時,定位精度達到80%;(3) 本文提出的WiFi 和藍牙融合定位平均誤差為0.689 m,在誤差為0.89 m時,定位精度就已經(jīng)達到了80%,實驗結(jié)果充分表明融合定位極大地提高了定位精度。WiFi 和藍牙融合定位相較于單獨的WiFi 定位和單獨的藍牙定位,精度分別提升了71.8%、22.9%。
由于室內(nèi)定位存在多徑效應(yīng),無法完全消除,只能通過算法減少其影響。圖7(b) 顯示了分別采用WiFi 多邊測量質(zhì)心法、近鄰(NN) 算法、K-近鄰(KNN) 算法、加權(quán)K-近鄰(WKNN) 算法和ERWLA,在減少室內(nèi)定位的多徑效應(yīng)影響時,得到的誤差累積分布對比。這些算法分別在誤差為3.1 m、2.8 m、2.4 m、1.35 m、0.8 m 時,定位精度達到80%。在誤差為5 m 時,幾種定位算法的概率基本都到達了1。多邊質(zhì)心算法把當(dāng)前接受到的四個RSSI 值等同看待,忽略了室內(nèi)的多徑效應(yīng)產(chǎn)生的誤差,因此定位精度較低; 近鄰(NN) 算法是采用RSSI 指紋法,相對于多邊測量,精度稍有提高;K-近鄰(KNN) 算法選擇K 個臨近節(jié)點,相比NN 算法,定位精度顯著提高;而加權(quán)K-近鄰(WKNN) 算法先進行粗定位,給K 個臨近參考點設(shè)置權(quán)重,與KNN 比較,精度和穩(wěn)定性都得到了較大的提升。由圖7(b) 可知,本文提出的算法ERWLA 在1 m 時,定位精度達即可達到95%,與其他算法相比較,ERWLA 定位精度優(yōu)勢明顯。
本文是基于WiFi 和藍牙融合的室內(nèi)定位算法,無論是算法融合還是MLS 插值擬合都是自適應(yīng)的。由蒙特卡羅實驗建立的融合定位誤差模型如圖8 所示,清晰地顯示出本文的ERWLA 算法具有明顯的優(yōu)越性。由圖8 可知,多邊質(zhì)心算法把當(dāng)前點接受到的四個RSSI 值等同看待,忽略了室內(nèi)的多徑效應(yīng)。近鄰(NN) 算法,每個參考點一個指紋信息,但是同一點的RSSI 值是多變的,在多徑效應(yīng)下,室內(nèi)環(huán)境對定位誤差影響很大。K-近鄰(KNN) 算法,在線指紋庫匹配K 個最相近的參考節(jié)點,求其中心位置作為定位結(jié)果,其忽略了指紋變量對定位結(jié)果的影響,也忽略了定位點四個接受信號的多徑效應(yīng)。加權(quán)K-近鄰(WKNN) 算法通過自適應(yīng)調(diào)整權(quán)值來進行加權(quán)定位,但定位精度過分依賴于加權(quán)函數(shù)和指紋庫匹配的參考點。本文的算法采取自適應(yīng)的融合方法,可以通過自適應(yīng)調(diào)整權(quán)值來進行加權(quán)融合。再采用區(qū)域加權(quán)的MLSI 算法擬合參考點誤差,考慮了室內(nèi)多徑效應(yīng)產(chǎn)生的誤差區(qū)域化,具有更高的定位精度和穩(wěn)定性。
圖8 不同算法的定位結(jié)果
采用三維坐標(biāo)進行多邊測量,獲得模型定位的可取二維區(qū)域,相比于二維坐標(biāo),能夠減少空間距離帶來的誤差。對WiFi 和藍牙定位進行可取區(qū)域加權(quán)融合,相比單獨定位算法,不僅提高了定位精度,而且通過建立定位誤差模型明顯減小了噪聲的影響,抗干擾性增強。利用MLSI 算法對定位誤差進行擬合,并通過設(shè)置置信區(qū)域?qū)φ`差函數(shù)進行加權(quán),相比于誤差無偏估計更加適應(yīng)復(fù)雜的室內(nèi)環(huán)境。此外,將客戶反映較好的眾包節(jié)點用來定時更新誤差擬合的參考節(jié)點,大大地減少了后期勘測維護的成本。