劉嘉鈺,郭鳳娟,李 江
(1 中國電子科技集團公司第二十研究所,西安 710068;2 陜西省組合與智能導(dǎo)航重點實驗室,西安 710068)
無線室內(nèi)定位技術(shù)是在室內(nèi)環(huán)境下使用WiFi[1-2]、藍牙[3-4]、超寬帶[5-6]、RFID[7-8]和ZigBee[9-10]等無線傳輸技術(shù)以及慣性導(dǎo)航等定位手段獲取目標(biāo)在室內(nèi)區(qū)域中的位置信息。傳統(tǒng)基于無線信號接收強度(Received Signal Strength Indication,RSSI)的室內(nèi)定位技術(shù)根據(jù)實現(xiàn)方式劃分為兩類,一類構(gòu)建無線信道模型完成定位,另一類通過建立搜索指紋庫完成定位。行人航位測算技術(shù)(Pedestrian Dead Reckoning,PDR)[11-12]借助可移動終端配置的地磁傳感器和加速度傳感器等,應(yīng)用航位測算(Dead Reckoning,DR)技術(shù)原理,對行人移動軌跡實現(xiàn)預(yù)測功能。
隨著人工智能技術(shù)的日益成熟,學(xué)術(shù)界逐漸開始將室內(nèi)定位技術(shù)與人工智能相結(jié)合,開發(fā)出各方面性能更佳的室內(nèi)導(dǎo)航定位策略。文獻[13]利用神經(jīng)網(wǎng)絡(luò)建立并更新RSSI 指紋庫,在定位階段使用該神經(jīng)網(wǎng)絡(luò)實現(xiàn)定位。文獻[14]利用深度神經(jīng)網(wǎng)絡(luò)對定位區(qū)域內(nèi)不同位置接收到多個信號塔發(fā)射信號間的非線性關(guān)系進行建模,在實現(xiàn)精確定位的同時節(jié)省超過93.45%的耗能。
與此同時,在以往室內(nèi)定位技術(shù)的研究開發(fā)中,通常默認定位區(qū)域的環(huán)境噪聲為高斯噪聲,但隨著人類社會的發(fā)展進步,室內(nèi)環(huán)境日益復(fù)雜多變,粒子濾波器[15-16]由于在非高斯噪聲環(huán)境和非線性系統(tǒng)下依然能良好地完成濾波功能,成為了實現(xiàn)室內(nèi)定位信息融合和改進傳統(tǒng)室內(nèi)定位算法的關(guān)鍵濾波器之一。
針對具有非高斯噪聲的室內(nèi)環(huán)境,本方法設(shè)計將使用深度置信網(wǎng)絡(luò)實現(xiàn)RSSI 指紋定位法和行人航位測算技術(shù)分別獲取粗略定位信息,然后使用粒子濾波器將兩項粗略定位結(jié)果進行融合濾波,獲得穩(wěn)定性更好、精確度更高的定位結(jié)果。本方法可分為訓(xùn)練階段和定位階段,具體實現(xiàn)原理如圖1所示。
圖1 多源融合室內(nèi)定位方法原理
由圖可知,第一階段即訓(xùn)練階段,在實際定位應(yīng)用前針對所處室內(nèi)環(huán)境進行信息樣本采集和網(wǎng)絡(luò)訓(xùn)練。該階段共完成兩項任務(wù):采集并構(gòu)建數(shù)據(jù)樣本集和使用采集到的數(shù)據(jù)樣本集完成深度置信網(wǎng)絡(luò)訓(xùn)練;第二階段即定位階段,共包含三項任務(wù):
(1)利用訓(xùn)練完成的深度置信網(wǎng)絡(luò)實現(xiàn)指紋定位;
(2)利用行人航位測算技術(shù)進行行人航位預(yù)測;
(3)應(yīng)用粒子濾波技術(shù)將以上兩項定位信息進行融合濾波。
深度置信網(wǎng)絡(luò)(Deep Belief Network,DBN)是一種深度學(xué)習(xí)模型,它是由多個受限玻爾茲曼機(Restricted Boltzmann Machine,RBM)之上疊加一層BP 神經(jīng)網(wǎng)絡(luò)(Back Propagation Neural Network,BPNN)組成,首先通過從下至上逐層訓(xùn)練賦予網(wǎng)絡(luò)較好的初始權(quán)值,再對網(wǎng)絡(luò)進行反向微調(diào)獲得最優(yōu)網(wǎng)絡(luò)權(quán)值參數(shù)。本文實現(xiàn)RSSI 指紋定位法的深度置信網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
圖2 實現(xiàn)RSSI 指紋定位法的深度置信網(wǎng)絡(luò)結(jié)構(gòu)
該深度置信網(wǎng)絡(luò)共包含一個可視層S、一個輸出層Q 和m個隱藏層h,每兩層構(gòu)成一個RBM 單元,因此共有m個RBM 單元??芍總€RBM 單元上層為RBM 隱藏層,下層為RBM 可見層。并且,每一個RBM 的隱藏層都作為相鄰上部的RBM單元的可見層,最頂部為一層BP 網(wǎng)絡(luò)作為輸出層。
深度置信網(wǎng)絡(luò)的離線訓(xùn)練階段可細分為兩個過程:正向訓(xùn)練和反向調(diào)優(yōu)。正向訓(xùn)練為無監(jiān)督訓(xùn)練過程,采用無監(jiān)督貪婪算法由低到高逐層訓(xùn)練,保證輸入RSSI 數(shù)據(jù)的特征向量映射到位置坐標(biāo)的特征空間時,盡量多地保留實際RSSI 向量的特征信息。反向有監(jiān)督調(diào)優(yōu)為頂層BP 網(wǎng)絡(luò)自頂向下的誤差反向傳播訓(xùn)練,實現(xiàn)全局網(wǎng)絡(luò)模型參數(shù)微調(diào)。
(1)正向無監(jiān)督訓(xùn)練
深度置信網(wǎng)絡(luò)的前向無監(jiān)督訓(xùn)練由RBM 的逐層訓(xùn)練完成,通過無監(jiān)督學(xué)習(xí)自動提取研究問題的最佳特征向量。其中每層RBM 單元的可見層接收輸入信息,可能是最底層輸入的待測目標(biāo)RSSI 數(shù)據(jù),或是前一層RBM 的輸出信息,每個RBM 隱藏層的作用是特征提取。
訓(xùn)練過程首先確定可見層向量S,可見層神經(jīng)元個數(shù)n;隱藏層向量表示為y,隱藏層神經(jīng)元個數(shù)g;學(xué)習(xí)效率表示為δ 并輸入訓(xùn)練樣本。利用對比散度算法CD-1 對一個RBM 進行訓(xùn)練的步驟如下:
(a)初始化連接權(quán)重矩陣 0W,可視層偏置向量 a0,隱藏層偏置向量 b0為隨機較小數(shù)值;
(b)執(zhí)行循環(huán):
(c)執(zhí)行循環(huán):
(d)執(zhí)行循環(huán):
(e)更新各參數(shù)值:
經(jīng)過以上步驟完成一個RBM 網(wǎng)絡(luò)的訓(xùn)練,可以獲得它的連接權(quán)重矩陣、可視層偏置向量以及隱藏層偏置向量,然后利用此方法對堆疊RBM網(wǎng)絡(luò)進行正向逐層訓(xùn)練。
(2)反向調(diào)優(yōu)訓(xùn)練
在完成正向無監(jiān)督訓(xùn)練后,堆疊RBM 提取出目標(biāo)的RSSI 特征向量及此時網(wǎng)絡(luò)參數(shù):連接權(quán)重矩陣W,可視層偏置向量a,隱藏層偏置向量b。為了更加準(zhǔn)確地構(gòu)建出RSSI 特征向量與實際位置坐標(biāo)的映射關(guān)系,在堆疊RBM 之上添加BP 網(wǎng)絡(luò)層,并使用反向傳播算法對整個深度置信網(wǎng)絡(luò)進行反向調(diào)優(yōu)。BP 反向傳播算法通常選擇均方差(Mean Square Error,MSE)作為損失函數(shù),可表示為:
式中,y′為理想輸出結(jié)果,通常為實際采集的樣本數(shù)據(jù),而y為實際網(wǎng)絡(luò)輸出值。訓(xùn)練過程首先輸入損失函數(shù)j,學(xué)習(xí)效率α,停止閾值ε以及訓(xùn)練樣本利用BP 網(wǎng)絡(luò)層進行反向調(diào)優(yōu)的步驟如下:
(b)將采集樣本中的 RSSI 數(shù)據(jù)集合RSS={RSS1,…,RSSm}依次輸入網(wǎng)絡(luò),利用初始權(quán)重矩陣和偏置向量獲得實際網(wǎng)絡(luò)輸出集合O;
(c)結(jié)合集合O與采集樣本中位置坐標(biāo)數(shù)據(jù)集合Loc={Loc1,...,Locm}得到損失函數(shù)為:
(e)重復(fù)步驟(a)~步驟(c),直到損失函數(shù)j≤停止閾值ε。
經(jīng)過以上步驟完成深度置信網(wǎng)絡(luò)的經(jīng)反向調(diào)優(yōu),獲得連接權(quán)重矩陣W 和偏置向量b 作為最終的網(wǎng)絡(luò)參數(shù)。
隨著人類社會的發(fā)展進步,室內(nèi)環(huán)境日益復(fù)雜多變,致使室內(nèi)定位的實際場景通常是非線性、非高斯系統(tǒng)且環(huán)境噪聲未知的。此時卡爾曼濾波和高斯濾波等慣用濾波技術(shù)將不再適用,而粒子濾波擺脫了對系統(tǒng)狀態(tài)空間模型以及噪聲類型的限制,成為了普適性最佳的濾波器之一。
假設(shè)定位區(qū)域內(nèi)任意目標(biāo)設(shè)備的運動模型為:
式中,k代表時刻,隨機變量Xk為目標(biāo)位置預(yù)測值,Yk為目標(biāo)位置觀測值,在本方法中Yk即為由深度置信網(wǎng)絡(luò)獲得的粗略定位結(jié)果,f k和hk為非線性函數(shù)。δk表示行人航位測算技術(shù)的系統(tǒng)噪聲,γ k表示環(huán)境噪聲,兩者相互獨立。
構(gòu)造包含N個粒子的集合,式中,表示第i個粒子在k時刻的狀態(tài),則表示該粒子此時的權(quán)值,且滿足。f(Xk)表示目標(biāo)k時刻的真實坐標(biāo),表示在此時Xk的后驗概率密度。那么最終獲得定位結(jié)果表示為:
實際應(yīng)用中,直接從后驗概率分布提取有效樣本十分困難,故引入重要性采樣方法提高采樣效率,對已知的重要性采樣密度進行樣本抽取,而避免直接從中抽取樣本。則式(8)可表示為:
將重要性密度函數(shù)分解如式(12)所示:
根據(jù)重要性采樣理論,選取合適的重要性采樣密度為:
則式(10)代表的粒子權(quán)重可表示為迭代形式:
表示為遞推形式為:
使用蒙特卡羅采樣法表示式(9)為:
式(17)中由于有:
故有:
式中,粒子權(quán)重Wk(i)為:
此時便面臨粒子濾波算法不可避免的粒子退化問題,隨著迭代次數(shù)增加,僅剩極少部分粒子接近真實樣本,同時絕大多數(shù)“無效”粒子的權(quán)值都極小,這便造成嚴(yán)重的計算資源浪費。因此,本方法按照粒子濾波理論加入重采樣手段,以減小粒子退化現(xiàn)象的不良后果。完整的基于粒子濾波的多源融合室內(nèi)定位方法執(zhí)行步驟如下:
(1)輸入目標(biāo)的初始位置,目標(biāo)移動的單位距離作為先驗信息;
(2)目標(biāo)初始位置使用接收到的RSSI 信息輸入深度置信網(wǎng)絡(luò)獲得。假設(shè)在初始坐標(biāo)附近按照設(shè)定分布隨機生成N個粒子;
(3)利用可移動終端測量的目標(biāo)運動信息構(gòu)建目標(biāo)運動方程,此時,粒子集合按照該運動方程預(yù)測新的位置;
(4)以深度置信網(wǎng)絡(luò)獲得的指紋定位結(jié)果作為觀測值,根據(jù)粒子集合與觀測值之間的距離計算各粒子對應(yīng)權(quán)值;
(5)對粒子集合進行加權(quán)求和獲得最終定位結(jié)果;
(6)依據(jù)重采樣原理對粒子篩選(粒子總數(shù)不變),經(jīng)重采樣后的粒子集合返回步驟(2)。
經(jīng)過以上步驟可獲得目標(biāo)在當(dāng)前時刻的定位目標(biāo)。
利用實驗室數(shù)字仿真平臺,對基于深度置信網(wǎng)絡(luò)的RSSI 指紋定位方法和傳統(tǒng)指紋定位算法分別進行仿真實驗,并分別繪制平均定位誤差的概率密度分布進行定位精確度分析,如圖3所示。
圖3 基于改進深度置信網(wǎng)絡(luò)的RSSI 指紋定位算法與傳統(tǒng)指紋定位方法定位性能對比
由圖3可知,傳統(tǒng)指紋定位法的平均定位誤差的數(shù)學(xué)期望約為1.7 m,而基于深度置信網(wǎng)絡(luò)的指紋定位法平均定位誤差的數(shù)學(xué)期望約為0.6 m,相比之下減少了約60%,且本方法平均定位誤差概率密度分布的方差更小。分析可知,本方法不僅在精確度有所提升,且穩(wěn)定性更高。
表1比較了基于粒子濾波的多源融合室內(nèi)定位方法與幾項傳統(tǒng)室內(nèi)定位方法的實際定位估測耗時情況??梢钥闯觯诹W訛V波的多源融合室內(nèi)定位方法的實際定位與傳統(tǒng)指紋定位方法相比,定位時長縮短了約四分之三,說明本方法計算復(fù)雜度更低,因此實時性更強。
表1 實際定位耗時比較
將本文所提定位方法和幾項傳統(tǒng)定位算法分別進行1000 次實驗仿真,在每個坐標(biāo)點各生成30個RSSI 樣本,將樣本均值作為該點最終的RSSI 數(shù)據(jù)。統(tǒng)計各算法的定位誤差并繪制平均定位誤差的CDF 曲線如圖4所示。由圖4可知,行人航位測算定位技術(shù)由于存在累積誤差導(dǎo)致性能較差;基于深度置信網(wǎng)絡(luò)的指紋定位法平均定位誤差小于0.5 m的概率約為60%,小于1 m 的概率約為90%;基于粒子濾波的多信息融合室內(nèi)定位方法的平均定位誤差有所提升,小于0.5 m 的概率提升至約76%,小于1 m 的概率提升至約95%,可滿足日常環(huán)境下的目標(biāo)定位功能。
圖4 本文所提定位算法和傳統(tǒng)定位算法平均定位誤差CDF 示意圖
針對目前對室內(nèi)環(huán)境下位置服務(wù)的迫切需求,現(xiàn)有室內(nèi)定位技術(shù)存在精確度不高和在線階段計算復(fù)雜度高的問題,本文將RSSI 指紋定位法與人工智能相結(jié)合,利用深度置信網(wǎng)絡(luò)實現(xiàn)了室內(nèi)RSSI指紋定位功能。該方法無需在系統(tǒng)內(nèi)存儲指紋庫,實際定位階段也省略了指紋庫搜索與匹配,在提高了定位精確度的同時降低了系統(tǒng)負載和在線階段計算復(fù)雜度。并且針對復(fù)雜室內(nèi)噪聲環(huán)境,本文運用粒子濾波器對基于深度置信網(wǎng)絡(luò)的RSSI 指紋定位信息和行人航位測算預(yù)測信息進行融合濾波,相較于傳統(tǒng)室內(nèi)定位方法,進一步提升了定位功能的精確度和實時性。