胡 銳,吳 飛,朱 海,鄢 松,韓學(xué)法,金 霄
(上海工程技術(shù)大學(xué) 電子電氣工程學(xué)院,上海 201620)
隨著無線局域網(wǎng)(wireless local area networks,WLAN)、智能終端的高速發(fā)展以及慣性傳感器的普及,人們對于位置信息的需求正在逐步增加。位置信息的需求推動了基于位置服務(wù)(location basedservices, LBS)的高速發(fā)展,其中定位技術(shù)是LBS的核心。在室外定位中,定位方法相對完善,主要采用全球衛(wèi)星導(dǎo)航系統(tǒng)(global navigation satellite system, GNSS)進行目標(biāo)的位置定位和授時,其中GNSS主要包括全球定位系統(tǒng)(global positioning system, GPS)和北斗衛(wèi)星導(dǎo)航系統(tǒng)(BeiDou navigation satellite system, BDS)。人們?nèi)粘;顒哟蟛糠衷谑覂?nèi),由于室內(nèi) GPS信號弱缺,導(dǎo)致GNSS進行室內(nèi)定位不現(xiàn)實,因此,人們提出了眾多室內(nèi)定位方法,主要有:基于無線保真信號(wireless fidelity, WiFi),低功耗藍牙(bluetooth low energy, BLE)、地磁、超寬帶(ultra wide band,UWB)等技術(shù)[1-3]。
由于WiFi進行室內(nèi)定位不需要部署設(shè)備,因此,近年來許多學(xué)者研究利用WiFi進行室內(nèi)定位,其中對于如何在現(xiàn)有的指紋匹配定位模型上改進,成為研究的熱點,考慮到在參考點接收接入點(access point, AP)的接收信號強度(received signal strength, RSS)存在波動和無規(guī)律,文獻[4]提出建立高斯模型,對RSS的統(tǒng)計特性進行分析,并利用卡爾曼濾波對 RSS信號進行濾波,濾波完成后,結(jié)合隱馬爾科夫模型對定位軌跡進行糾正,在定位精度上較傳統(tǒng)的指紋定位方法要高。文獻[5-6]認為,在參考點測量的RSS信號是由多個高斯分布混合而成的,所以提出利用高斯混合模型(Gauss mixture model, GMM)來對RSS進行建模,利用期望最大值(expectation maximization, EM)算法求解模型參數(shù),同時在同一個參考點接收到來自同一個AP的RSS,是由幾個高斯混合而成,即對于分模型如何選取,文中采用試錯法。文獻[7]中利用GMM對RSS信號進行純化,目的是為了抵消部分由于多徑效應(yīng)造成的 RSS信號的不斷衰落,但外部環(huán)境復(fù)雜多變,文中算法無法分清哪一部分是由于多徑效應(yīng)造成的。
在在線定位中,傳統(tǒng)定位算法諸如k近鄰算(knearest neighbor, KNN)法,支持向量機(support vector machine, SVM)法,樸素貝葉斯(Na?ve Bayes,NB)法[7-9],但這些方法的解算精度往往達不到要求,文獻[10-11]利用隨機森林(random forest, RF)算法,獲得的定位精度比文獻[7-9]中的定位算法精度要高。
本文提出利用貝葉斯信息準(zhǔn)則確立高斯混合模型中分模型的個數(shù),稱為增強高斯混合模型(enhanced gaussian mixture model, EGMM),并通過EM算法求解模型參數(shù),將模型參數(shù)融合進指紋數(shù)據(jù)庫中重構(gòu)指紋數(shù)據(jù)庫,在在線定位中,將KNN、SVM、NB模型集成在一起,構(gòu)成集成模型進行實時定位,以此增加定位準(zhǔn)確性。
本文采用WiFi位置指紋來進行室內(nèi)定位,主要可分為離線階段和在線階段。離線階段需要移動終端,獲取待定位區(qū)域的 RSS信號值,搜集到的RSS數(shù)據(jù)發(fā)送至后臺,形成初步的指紋數(shù)據(jù)庫,在后臺利用增強高斯混合模型對 RSS數(shù)據(jù)庫進行建模,通過EM算法求解模型參數(shù),分別代表分模型的均值、協(xié)方差以及分模型的權(quán)重,并將模型參數(shù)與初步指紋數(shù)據(jù)庫融合,形成重建數(shù)據(jù)庫,由于每個 RSS可以屬于多個分模型,但各自權(quán)重占比不同,因此在每個分模型下訓(xùn)練集成模型;在線定位階段,移動終端搜集到 RSS信息,先將得到的RSS數(shù)據(jù)清洗,然后將過濾后的信號經(jīng)EGMM模型,可以得到當(dāng)前 RSS所屬分模型,此時將數(shù)據(jù)送進分模型所訓(xùn)練的集成模型中,得出最終的位置,其中介質(zhì)訪問控制(media access control,MAC)為每個AP的唯一標(biāo)識。圖1為算法流程。
圖1 算法流程
考慮到室內(nèi)環(huán)境中參考點收到來自AP的信號強度的無規(guī)律性,因此須建立高斯混合模型。高斯混合模型可以看做由K個高斯模型按照不同權(quán)重組合而成,它的表達能力十分強,任何分布都可以用GMM來表示[12],高斯混合模型將每一參考點上信號強度分布看作多個高斯函數(shù)的加權(quán)和,即
式中:sij為第i個參考點第j次測量得到的RSS向量;θi為分模型參數(shù),即θi={μik,σik,wik},μik、σik、wik分別為均值、協(xié)方差矩陣和分模型權(quán)重;N(μik,σik) 為 分模 型中單 個高 斯分布 的概 率密度函數(shù)(probability density function,PDF),即
式中:H為RSS向量維度,也可以認為是AP的數(shù)量;k表示分模型的數(shù)量。
針對式(2),需要計算模型參數(shù),并確定分模型的數(shù)量。
對于單個參考點而言,采集到來自AP的RSS,利用最大似然估計(maximum likelihood estimation,MLE)估計其中參數(shù),即
式中:θ*為根據(jù)最大似然估計得到的最優(yōu)估計;θ= {θ1,θ2,…,θk}為 每 個 分 模 型 模 型 參 數(shù) 的集合;S= {S1,S2,…,SN}為在參考點上所測量的 RSS集合,其中Si表示在參考點上某一次所采集的RSS信號。
高斯混合模型求解模型參數(shù)的方法有很多,例如 EM[13]和加權(quán)最小二乘法。由于式(3)無法獲得閉式解,因此本文采用 EM 算法進行參數(shù)的估計。EM算法可分為第一步和第二步,在第一步中,首先需要根據(jù)給定觀測數(shù)據(jù)S,求于未知數(shù)據(jù)Y的數(shù)學(xué)期望,即
式中:θt為在給定當(dāng)前觀測數(shù)據(jù)下的參數(shù)估計;Y= {y1,y2,…,yn}為RSS未知數(shù)據(jù)集。
在第二步中,要根據(jù)第一步估計的參數(shù)θt迭代求出當(dāng)前觀測下的θt+1,即
重復(fù)第一步和第二步至收斂,則可以得到高斯混合模型的參數(shù)估計[13]結(jié)果θi={μik,σik,wik}。
在利用 EM算法求解出 GMM模型參數(shù)的過程中,對于分模型的數(shù)量K值的選取,本中采用試錯法,即先選定K值,當(dāng)在在線階段時,求取在該K值下的定位性能,如此反復(fù)確定定位性能最優(yōu)時的K值。本文利用貝葉斯信息準(zhǔn)則對GMM中的K值進行選取,僅依賴初步離線數(shù)據(jù)庫中 RSS數(shù)據(jù)即可,以數(shù)據(jù)為驅(qū)動確立K值,因此提出EGMM法。
貝葉斯信息準(zhǔn)則基于貝葉斯定理,在給定的RSS數(shù)據(jù)S= {S1,S2,…,SN}下,最大化模型的后驗概率為
式中:Mi為分模型;P(s1,…,sn|Mi) 為給定模型下的似然概率,在給定RSS數(shù)據(jù)時,P(s1,…,sn)是相同的,且P(Mi) 為定值,此時最大化后驗概率等價于最大化給定模型下的似然概率。
離線階段選擇K時,根據(jù)初步離線數(shù)據(jù)庫RSS信息,利用EM算法所解析出來的模型參數(shù),選擇在該模型參數(shù)下最大的似然概率。
初步指紋數(shù)據(jù)庫構(gòu)建過程為:離線階段在n個參考點,各參考點的坐標(biāo)為Li(i∈ { 1,2,…,n}),采樣的過程則是在第i個參考點采集來自H個AP的m組測量數(shù)據(jù)Sij= {s1ij,s2ij,…,sHij}(j∈ {1,2,…,m})。
由式(1)建立第i個參考點上 RSS的高斯混合模型,即
式中:fi(sij)為第i個參考點上的PDF,確定了PDF后,利用EM算法求解模型參數(shù),每一個參考點的位置Li與其所對應(yīng)的模型參數(shù)θi,構(gòu)成了新的指紋數(shù)據(jù)庫,記為F= {F1,F2,…,Fn},其中Fi={Li,θi},N為分模型的數(shù)量。
在離線階段重構(gòu)出指紋數(shù)據(jù)庫,根據(jù)所確定的K,訓(xùn)練K個集成模型,其中第i個集成模型訓(xùn)練數(shù)據(jù)為:根據(jù)重構(gòu)數(shù)據(jù)庫中的模型參數(shù)w,其中模型參數(shù)的維度均為K維,找到所有在第i維度權(quán)重不為0的樣本,根據(jù)樣本位置信息,再從初步指紋數(shù)據(jù)庫中找到對應(yīng)的 RSS信號作為訓(xùn)練數(shù)據(jù)。
在離線階段訓(xùn)練模型時,采用集成模型的方式,由于在在線定位過程中,本質(zhì)上是完成多分類的任務(wù),因此離線階段將KNN、NB、SVM集成在一起,在實時定位階段,用戶發(fā)來數(shù)據(jù)經(jīng)過 EGMM建模后,進入集成學(xué)習(xí)模型中,所有的基分類器產(chǎn)生預(yù)測結(jié)果,最終按照EGMM建模后得出的模型參數(shù)的權(quán)重加權(quán)得出結(jié)果,如圖2所示。
圖2 集成模型
集成學(xué)習(xí)模型流程為:
1)輸入數(shù)據(jù)。初步離線數(shù)據(jù)庫中的樣本和位置標(biāo)簽作為初始訓(xùn)練集,記為D;
2)開始訓(xùn)練。對初始訓(xùn)練集D,根據(jù)重構(gòu)的數(shù)據(jù)庫中模型參數(shù),選擇第i維度下所有權(quán)重不為0的樣本,即生成分類器的對應(yīng)的訓(xùn)練集Si;
3)使用KNN、NB、SVM訓(xùn)練數(shù)據(jù)Si;
4)當(dāng)分模型個數(shù)不等于K時,返回步驟2),否則進行步驟5);
5)在線階段,發(fā)送RSS經(jīng)EGMM模型求出模型參數(shù),根據(jù)模型參數(shù)中的權(quán)重,選擇離線階段中的集成模型進行預(yù)測,最終位置信息是每個分類器分類結(jié)果乘以模型參數(shù)中的權(quán)重參數(shù)而獲得的。
6)輸出。對于待測樣本xt,輸出最終移動終端的位置。
本文的實驗場地選在上海工程技術(shù)大學(xué)現(xiàn)代交通工程中心 4樓,本實驗實驗環(huán)境不會發(fā)生變化,測試環(huán)境周圍的AP不會隨意更改,其中測試區(qū)域結(jié)構(gòu)如圖3所示。
圖3 測試區(qū)域結(jié)構(gòu)
信號采集所用的裝置為華為手機P20,采用的AP是學(xué)校已有的 AP,通過自主開發(fā)的軟件采集RSS信息,其中每個網(wǎng)格點大小設(shè)置為1.2 m×1.2 m,并在每個網(wǎng)格點東、南、西、北四個方向共采集150組信號,采集的頻率為1 Hz,采集頻段為2.4 GHz和 5.0 GHz。
實驗中,采樣點共有 205個,為將定位結(jié)果量化,利用真實值與測量值之間的距離定義為誤差,即
式中:測試點的實際物理位置為(xi,yi);測試點的估算位置坐標(biāo)為。
在某參考點測量來自AP的RSS值,如圖4所示,可以發(fā)現(xiàn) RSS的概率分布不是一般的均勻分布和高斯分布,RSS的分布無法用單個高斯模型擬合,可以通過GMM來對RSS進行擬合。
圖4 RSS概率分布
從圖4中無法看出究竟是由多少個高斯進行混合而成的,因此提出利用貝葉斯信息準(zhǔn)則,基于貝葉斯定理和RSS數(shù)據(jù)為驅(qū)動選擇K值,為了可視化的方便,做式(9)變換
式中:K為模型的個數(shù);L是根據(jù) 2.3計算出來的似然函數(shù);samples為采樣的樣本數(shù);BIC僅僅是記號。圖5展示BIC與K之間的關(guān)系,從圖5中可以看出K值應(yīng)為16,即分模型的個數(shù)為 16。
圖5 分模型選取
本文提出利用EGMM模型確定模型參數(shù)和K值,并通過集成模型進行預(yù)測得出位置,將EGMM和本文集成模型、EGMM和隨機森林、未經(jīng)EGMM模型和本文集成模型相對比,來說明本文所提算法的有效性。實驗中選取AP數(shù)目為6個,采集頻段2.4 GHz和5.0 GHz,因此在固定參考點所采集的信號維度為AP數(shù)目的兩倍。
為直觀顯示算法的定位性能,采用累積定位誤差的方式顯示本文算法的有效性,如圖6所示。
圖6 各種算法的定位誤差累積概率分布
整體而言,EGMM 和本文集成學(xué)習(xí)模型優(yōu)于另外兩種算法。從圖6中可以看出:EGMM和本文集成模型,定位誤差不超過2 m的概率為92.34%;EGMM和隨機森林模型,定位誤差不超過2 m的概率為89.55%;未經(jīng)EGMM和本文模型,定位誤差不超過2 m的概率為88.63%,即EGMM和本文集成模型比EGMM與隨機森林模型高出2.79%,可以說明,在同等條件下,本文集成學(xué)習(xí)模型優(yōu)于隨機森林模型,同時EGMM與本文集成學(xué)習(xí)模型得到的結(jié)果與未經(jīng)增強高斯混合模型和本文集成模型處理得到的累積概率分布相比高出0.92%,進一步說明增強高斯混合模型的有效性。
表 1展示在在線階段采集的 512個測試樣本中,各算法的平均定位誤差、最大定位誤差、定位誤差小于1 m的概率和均方根誤差。
表1 512個測試點定位誤差統(tǒng)計結(jié)果
從表1中可以看出,EGMM和集成模型的平均定位誤差較另外兩種算法分別低了 9.4%和21.8%,為了進一步衡量定位性能,利用均方根誤差統(tǒng)計不同算法的定位誤差,EGMM 和集成模型的均方根誤差最小,表示數(shù)據(jù)偏離中心的程度最低,定位精度高,且EGMM和集成模型的均方根誤差較另外兩種算法分別低了14.2%和19.3%。
表2展示在在線階段采集的1 024個測試樣本中,各算法的平均定位誤差、最大定位誤差、定位誤差小于1 m的概率和均方根誤差。
表2 1 024個測試點定位誤差統(tǒng)計結(jié)果
從表2中可以看出,EGMM和集成模型的平均定位誤差較另外兩種算法分別低了 9.3%和21.2%,為了進一步衡量定位性能,利用均方根誤差統(tǒng)計不同算法的定位誤差,EGMM 和集成模型的均方根誤差最小,表示數(shù)據(jù)偏離中心的程度最低,定位精度高,且EGMM和集成模型的均方根誤差較另外兩種算法分別低了13.7%和31.6%。
在在線定位階段,分別采集512個測試樣本和1 024個測試樣本進行定位時間的測試,在這里定義定位時間為從接收到數(shù)據(jù)到解算出位置信息的時間,如圖7所示。
圖7 各模型的定位時間
從圖7(a)可以看出,本文集成模型定位時間最長,進行位置估計的定位時間在三者中是最長的,平均定位時間大約為160 ms,采用EGMM與集成模型的定位時間次之,平均定位時間大約為49 ms, 定位時間最短的是直接利用隨機森林模型進行位置預(yù)測,平均定位時間大約為35 ms,從表 1可知,雖然定位精度差異不大,但可以考慮在定位時間差距較小的情況下,盡可能提高定位精度,即在定位精度和定位時間上折中,EGMM和集成模型以14 ms的定位時間換取0.22 m的定位精度,但在平均定位時間差 14 ms的情況下,定位精度提高了0.22 m。
從圖7(b)可以看出,在1 024個參考點上,本文集成模型、EGMM和本文集成模型以及隨機森林模型的平均定位時間分別約為210、122 、104 ms。從表2可知,EGMM和本文集成模型在定位時間和定位精度上均比本文集成模型更好,EGMM 和本文集成模型在定位精度上比隨機森林模型的精度高,但定位時間上卻高出16 ms。雖然定位精度差異不大,可以考慮在定位時間差距較小的情況下提高定位精度,EGMM和集成模型以16 ms的定位時間換取0.21 m的定位精度,但在平均定位時間差16 ms的情況下,定位精度提高了0.21 m,是可以接受的。
本文提出了EGMM與集成學(xué)習(xí)模型進行室內(nèi)定位的算法。利用EM算法求解模型參數(shù),通過貝葉斯信息準(zhǔn)則確定分模型個數(shù),重構(gòu)數(shù)據(jù)庫,并在每個分模型中訓(xùn)練集成模型。在在線階段,經(jīng)EGMM對RSS建模確定模型參數(shù),通過離線階段的集成模型預(yù)測結(jié)果,根據(jù)模型參數(shù)中的權(quán)重,將多個預(yù)測結(jié)果按權(quán)重分配得出位置信息。實驗結(jié)果表明,本文提出的方法平均定位誤差為0.96 m,定位誤差小于1 m的概率為92.34%,與增強高斯混合模型與隨機森林和本文集成學(xué)習(xí)模型相比,定位精度提高2.79%和0.92%。