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