朱 彬,楊 誠,劉 巖
中國地質(zhì)大學(北京)土地科學技術(shù)學院,北京 100089
全球?qū)Ш叫l(wèi)星系統(tǒng)(GNSS)的精確定位需要滿足接收機與衛(wèi)星之間的通視,即獲得視線信號(LOS)。在城市復雜環(huán)境下,由于高架路、天橋、樓房等建筑物對衛(wèi)星信號的遮擋,易形成多路徑效應,接收機經(jīng)常無法接收到視線信號,卻只能接收非視線信號(NLOS),嚴重影響GNSS的定位精度[1-2]。研究結(jié)果表明,多路徑信號誤差一般為幾米,而NLOS的誤差可達到數(shù)十米甚至上百米[3-5]。有學者將多路徑和NLOS信號統(tǒng)稱為多徑信號[6]。
削弱GNSS多徑誤差的影響可以從GNSS天線、接收機、數(shù)據(jù)后處理等多方面著手。在硬件方面,可以使用延遲鎖定環(huán)(DLL)技術(shù)抑制多路徑效應的影響[7]。文獻[8]基于GPS信號多徑模型的特點,利用信號分離法估計GPS信號的頻率和時間延遲。在仿真結(jié)果中,該方法能夠有效地抑制多徑信號。文獻[9]利用軟件接收機分離NLOS信號和LOS信號成分,可以提高定位精度。在天線方面,可以利用雙極化天線有效減弱多路徑和NLOS信號的影響[10]。但是天線設計成本昂貴,低成本接收機很難實現(xiàn)。
在數(shù)據(jù)后處理方面,通過對觀測信息的合理定權(quán),例如偽距觀測值、載波觀測值、多普勒頻移賦以不同的權(quán),或利用信噪比以及高度角等參數(shù)調(diào)整削弱多徑對定位結(jié)果的影響[11-13];然而,在城市復雜區(qū)域,這些方法改善定位精度的效果并不顯著[14]。文獻[3,15—16]通過跳變馬爾可夫系統(tǒng)對偽距誤差建模,并利用一致性檢驗等方法減弱多徑誤差對偽距定位的影響。
利用慣性傳感器輔助GNSS進行組合定位也可以降低多徑誤差的影響。組合系統(tǒng)利用慣性傳感器不受環(huán)境影響的優(yōu)勢,可以提高組合系統(tǒng)定位精度[17-19]。然而,慣性導航系統(tǒng)的精度與成本成正比,限制了組合系統(tǒng)的廣泛使用。
近年來,智能學習在GNSS多徑誤差識別方面得到廣泛關(guān)注,主要方法為監(jiān)督學習和非監(jiān)督學習。監(jiān)督學習通過訓練標記的樣本得到一個最優(yōu)模型,從而進行分類。例如支持向量機(SVM)、k-最近鄰算法(KNN)、隨機森林(RF)、決策樹(DT)等。SVM是按監(jiān)督學習方式對數(shù)據(jù)進行二元分類的廣義線性分類器。利用SVM算法對GNSS接收的原始觀測值進行分類,可將LOS與NLOS信號相區(qū)分[20]。KNN算法通過識別樣本臨近的k個最近樣本的類別,從而判斷該樣本的從屬類別。監(jiān)督學習在城市三維模型的陰影匹配方面應用效果較好[16,21-23]。但是,該算法在提高城市峽谷中的定位精度的同時,也增加了計算的復雜性和計算負荷。
與監(jiān)督學習相反,非監(jiān)督學習不需要對樣本進行標記,通過對數(shù)據(jù)進行挖掘,檢測數(shù)據(jù)中的異常值。目前非監(jiān)督學習已經(jīng)廣泛應用于數(shù)據(jù)挖掘、模式識別、圖像分析以及計算機視覺等領(lǐng)域。在GNSS數(shù)據(jù)處理方面,非監(jiān)督學習法也顯示出更靈活和更智能的優(yōu)點。利用非監(jiān)督學習法可以把GNSS信號的誤差進行聚類,進而控制其影響。如果非監(jiān)督學習法能合理將GNSS多路徑信號和NLOS信號與LOS信號進行聚類,則很容易隔離其影響,提高復雜環(huán)境下GNSS定位精度。在非監(jiān)督學習中,k均值聚類算法(k-means)是常用聚類分析算法,該算法的核心是要求同一類樣本與聚類中心的歐氏距離的平方和最小。顯然,該聚類法的初始聚類中心十分重要,如果初始聚類中心選擇精確,則k-means聚類效果就會很好。通常初始聚類中心隨機選取,受異常點的影響較大,因此有學者提出改進的k-means++方法[24]。采用k-means++聚類法,可有效分離LOS與多徑信號[25]。也有學者采用高斯混合聚類(GMM)判斷單個樣本在不同分類中的概率,進而實現(xiàn)樣本的分類[26-27]。該方法也可以用于雙頻模糊度估計,減少多徑誤差影響[28]。此外,模糊c-均值聚類(FCM)法也是一種常用的方法,該方法基于對目標函數(shù)優(yōu)化進行聚類,已經(jīng)被應用于慣性系統(tǒng)載體運動階段的聚類[29]。
綜上所述,隨著機器學習的應用,傳統(tǒng)的GNSS多路徑和NLOS信號的處理模式逐漸向著機器智能處理方向發(fā)展,呈現(xiàn)出了較高時效性和智能化水平[30-31]。非監(jiān)督學習避免煩瑣的GNSS數(shù)據(jù)預處理,又可以提高定位精度。筆者使用3種非監(jiān)督學習算法對GNSS信號進行智能化聚類,旨在提高低成本接收機在復雜環(huán)境下的定位精度。
GNSS的原始觀測值包括偽距、載波相位和多普勒頻移等,這些原始觀測參數(shù)可以作為機器學習的特征值。GNSS的偽距觀測殘差和偽距率一致性也是有效的特征值。
為了提高多徑誤差的分類精度和效率,常采用不同的特征值組合[1]。本文使用4個主要特征。
(1) 信噪比(SNR):信噪比是判別LOS和NLOS的常用變量。在大多數(shù)情況下,多徑信號的反射和折射會降低信號強度。信噪比可以從GNSS觀測文件中獲得。
(2) 偽距殘差:偽距觀測殘差反映了觀測值的精確度,所以偽距殘差也可作為分離LOS和NLOS的特征變量。
(3) 高度角:在城市環(huán)境中,具有較高仰角的衛(wèi)星信號一般不易被周圍建筑物遮擋,但是容易出現(xiàn)NLOS誤差影響;較低仰角的衛(wèi)星信號容易被建筑物遮擋,出現(xiàn)LOS受阻的情況。因此可以采用高度角作為檢測NLOS的特征值。如上所述,單獨依賴衛(wèi)星高度角很難有效地識別NLOS,一般需要組合其他特征值進行綜合檢測[32]。
(4) 偽距率一致性:偽距率是兩個歷元之間接收機對同一顆衛(wèi)星觀測的偽距測量的變化率,表示為
(1)
(2)
(3)
式中,Ω為偽距率的差值,需要注意的是,偽距率一致性是以偽距變化率為參考,因為偽距變化率受多徑影響相對較小。
由于4個特征值對于多路徑和NLOS都具有不確定性,并且相互之間有聯(lián)系,因此可以采用4個特征值的組合識別多徑誤差。為了消除不同量綱對聚類結(jié)果的影響,需要進行數(shù)據(jù)標準化處理,使得各指標處于同一數(shù)量級,便于分析。本文使用歸一化對數(shù)據(jù)進行處理
(4)
式中,Z*為樣本數(shù)據(jù)歸一化后的值;Z為樣本數(shù)據(jù);Zmax為樣本數(shù)據(jù)的最大值;Zmin為樣本數(shù)據(jù)的最小值。
復雜環(huán)境下,為了確保信號分類數(shù)量k的最優(yōu)性,可以使用Calinski-Harabasz(CH)指標檢驗最優(yōu)的k值[33]
(5)
式中,CH(k)為CH指數(shù);Bk為集群之間的協(xié)方差;tr(·)為矩陣的跡;n為樣本總數(shù);k為聚類中心個數(shù);Wk為集群內(nèi)部數(shù)據(jù)的協(xié)方差。當樣本總數(shù)和聚類中心個數(shù)一定時,類自身越緊密,聚類效果越好。在樣本充足的情況下,只要合理選擇GNSS數(shù)據(jù)中的特征向量,CH指標的判斷將會很精確。
訓練集中的每個樣本表示為X={x1,x2,…,xi},i=1,2,…,n,其中參數(shù)xi={ci,ρi,eli,Ωi}為標準化載噪比ci,偽距殘差ρi,衛(wèi)星高度角eli以及偽距率一致性Ωi所組成的特征樣本,n為整個觀測期間的樣本總數(shù)。假設存在m個聚類中心,聚類中心特征樣本為N1、N2…Nm(即質(zhì)心),k-means++依據(jù)輪盤法使初始聚類中心之間的相互距離盡可能遠,再將每個樣本點劃分到距離質(zhì)心最近的簇中,通過歐氏距離進行計算,即[34]
(6)
由于質(zhì)心參數(shù)可能存在較大的誤差,導致聚類結(jié)果較差,需要進行迭代重新計算質(zhì)心,即
(7)
當每個簇內(nèi)的樣本與質(zhì)心的誤差平方和變化微小,迭代即可停止,誤差平方和可以表示為
(8)
基于k-means++的GNSS信號分類算法流程如圖1所示。
圖1 k-means++流程Fig.1 k-means++ flow chart
高斯混合聚類也是通過樣本的訓練對目標進行分類。本文中,該算法采用與k-means++相同樣本,X={x1,x2,…xi}。GMM由m個高斯概率密度疊加,表達式為[35]
(9)
式中,N(x|μk,Σk)是第k個分類模型的高斯分布;μk為每個類的均值;Σk為協(xié)方差矩陣;πk為混合系數(shù),即每個高斯分布對樣本的影響因子,其和為1。對于每一個樣本數(shù)據(jù)x,高斯分布的概率密度函數(shù)表達式為
(10)
式中,D是樣本的維度。要獲得一組混合系數(shù)πk、均值μk和協(xié)方差Σk的值,可以通過似然函數(shù)進行求解。
多個獨立事件的邊緣概率相乘可得到聯(lián)合概率。因為每一個樣本x獨立且符合高斯分布,因此高斯混合模型似然函數(shù)表達式為
(11)
式中,N為高斯模型個數(shù)。
求解最大似然函數(shù)一般采用最大期望(EM)算法。EM算法是一種從不完全數(shù)據(jù)或有數(shù)據(jù)丟失的數(shù)據(jù)集中,求解概率模型參數(shù)的最大似然估計方法。該算法首先利用隱含變量的現(xiàn)有估計值,計算其最大似然估計值;然后用求得的最大似然值計算參數(shù)估值;最后進行迭代直到收斂。主要過程如下[26]:
(1) 對于每個樣本xi,它由第k個高斯模型生成的概率為
(12)
(2) 參數(shù)估值μk、Σk和πk的求解結(jié)果為
(13)
(14)
(15)
(3) 重復迭代步驟(1)和步驟(2),每次迭代會得到新的μ,Σ和πk,求最優(yōu)參數(shù)即是聚類的過程,直到各估值收斂。
基于GMM的GNSS信號分類算法流程如圖2所示。
圖2 高斯混合聚類流程Fig.2 GMM flow chart
已知特征數(shù)據(jù)集X={x1,x2,…,xi},i=1,2,…,n;第i個聚類中心的特征值為vi。FCM的目標函數(shù)定義為[36]
(16)
式中,uij∈[0,1],表示第j個樣本相對于第i個類的隸屬度,每個樣本與類的隸屬度構(gòu)成了隸屬度矩陣U;m是聚類數(shù)目;a是一個加權(quán)指數(shù)。
隸屬度須滿足約束條件
(17)
即一個樣本屬于所有類的隸屬度之和要為1。因此,構(gòu)建目標函數(shù)為
(18)
求極值后得到
(19)
令dij=(xj-vi)2,再利用式(19)對隸屬度函數(shù)uij求導,解得
(20)
FCM思路是通過不斷更新隸屬度矩陣與聚類中心,并且每次迭代計算相應的目標函數(shù)JFCM,使其達到最小值。具體步驟如圖3所示。
圖3 模糊c-均值聚類流程Fig.3 Fuzzy c-means clustering
當真實標記結(jié)果未知時,可以選擇輪廓系數(shù)作為聚類性能的評估指標。輪廓系數(shù)取值范圍為[-1,1],取值越接近1,聚類性能越好。接近0的值表示重疊的群集。負值通常表示樣本錯誤的聚類。每個樣本的輪廓系數(shù)S為[37]
(21)
式中,a(i)為某個樣本與其所在簇內(nèi)其他樣本的平均距離,體現(xiàn)凝聚度;b(i)為某個樣本與其他簇樣本的平均距離,體現(xiàn)分離度;聚類總的輪廓系數(shù)SC為
(22)
試驗地點為中國地質(zhì)大學(北京)教一樓小花園,如圖4(a)所示。本次試驗采用UbloxF9p板卡的接收機采集GPS與BDS的觀測數(shù)據(jù)。天線的真實坐標已知。觀測時間為2020年11月15日14:00—17:00,時長為3 h,采樣頻率為1 Hz。周圍有高樓和樹木遮擋,因此天線除了接收到LOS信號外,還接收到NLOS和多路徑信號,天空圖如圖4(b)所示。
圖4 試驗場地與NLOS天空圖Fig.4 Experimental site and NLOS skyplot
通過觀測衛(wèi)星數(shù)和DOP值對觀測數(shù)據(jù)質(zhì)量進行分析,衛(wèi)星數(shù)和PDOP如圖5所示。
圖5中橫坐標為觀測歷元,縱坐標為衛(wèi)星數(shù)和PDOP,觀測衛(wèi)星數(shù)不穩(wěn)定,衛(wèi)星數(shù)集中在14—15顆之間,PDOP大部分在1.6~2之間。
圖5 衛(wèi)星數(shù)和PDOPFig.5 satellites number and PDOP
偽距多路徑誤差的計算依賴于雙頻觀測值,對偽距觀測方程和載波相位觀測方程進行組合,使用Saastamoinen模型和Klobuchar模型分別消除對流層延遲和電離層延遲消除對流層延遲和電離層延遲[38-39],忽略載波相位多路徑誤差,從而計算獲得偽距多路徑信息,計算公式為
(23)
式中,fi、fj分別為i和j頻點對應的頻率值;MPi、MPj為i和j頻點對應的偽距多路徑誤差;Pi、Pj為相應偽距觀測值;Φi、Φj分別為i、j頻點載波相位觀測值。
通過高度角和信噪比對多路徑誤差進行分析,偽距多路徑誤差如圖6所示。
圖6 偽距多路徑誤差與信噪比和高度角的關(guān)系Fig.6 Relationship among pseudorange multipath error, SNR and elevation angle
橫坐標為高度角和信號的信噪比,右側(cè)顏色卡為偽距多路徑誤差,不同顏色代表不同偽距多路徑大小,顏色越紅,代表偽距多路徑誤差越大。圖6中低高度角和低信噪比區(qū)域偽距多路徑大部分大于1 m,右后方高高度角和高信噪比區(qū)域偽距多路徑大部分小于0.5 m。
將獲取的特征值高度角、載噪比、偽距殘差和偽距率一致性作為樣本學習的特征向量,總樣本(每個歷元的可見衛(wèi)星數(shù)×總歷元)為157 700。4個特征值中每一個特征對判斷NLOS和多路徑都具有不確定性,因此采用不同特征值的組合來識別NLOS和多路徑信號。為了消除不同量綱對聚類結(jié)果的影響,對數(shù)據(jù)進行標準化。使用CH指標來判斷分類K值,CH指標如圖7所示。
圖7 不同聚類數(shù)的CH指標Fig.7 CH indexes of different cluster numbers
圖7中橫坐標為聚類簇數(shù),縱坐標為CH值。當k=3時,CH的值最大,表明觀測樣本的聚類數(shù)為3時最佳,對應接收機接收到的3種不同衛(wèi)星信號,LOS、多路徑和NLOS信號與實際情況相符。
利用k-means++、GMM和FCM 3種方法進行聚類,各種信號的占比見表1。
表1 3種方法聚類結(jié)果
由表1可知,3種方法中k-means++和FCM聚類結(jié)果比較一致,而GMM聚類結(jié)果中NLOS的占比遠小于其他兩種方法,可能存在誤聚類。利用3種方法的聚類結(jié)果,計算輪廓系數(shù),前80 000個樣本的輪廓系數(shù)如圖8所示,總的輪廓系數(shù)值見表2。
圖8 樣本輪廓系數(shù)Fig.8 Contour coefficient of samples
表2 3種方法總輪廓系數(shù)
由圖8可知,k-means++和FCM的輪廓系數(shù)大部分為正值,而GMM的輪廓系數(shù)大部分為負值并且波動比較大,說明GMM聚類結(jié)果較差。由表2可知,3種聚類方法中FCM的總輪廓系數(shù)最高,聚類性能優(yōu)于其他兩種方法。k-means++和FCM兩者總輪廓系數(shù)比較接近,接近于1,而GMM總輪廓系數(shù)為負值,聚類性能低于其他兩種方法。
衛(wèi)星定位精度與觀測量的質(zhì)量及衛(wèi)星幾何分布有著密切的關(guān)系,剔除NLOS數(shù)據(jù)后,參與解算的可見衛(wèi)星數(shù)會減少,位置精度衰減因子(PDOP)會相應增大。但是使用GPS/BDS進行定位,通常有足夠的可用衛(wèi)星數(shù),可以剔除較差的觀測數(shù)據(jù)來提高定位精度。3種方法剔除NLOS衛(wèi)星前后如圖9所示。
由圖9可以得到3種方法剔除NLOS衛(wèi)星后,大部分歷元都能有5顆以上衛(wèi)星,能進行有效定位。由表2可知FCM方法對NLOS聚類精度最高,所以大部分歷元都剔除了NLOS衛(wèi)星。為了驗證3種聚類方法的有效性,剔除NLOS信號后,重新進行GPS/BDS偽距單點定位,前6000歷元的定位誤差如圖10—圖12所示。
圖9 3種方法剔除NLOS前后衛(wèi)星數(shù)量Fig.9 Satellites number before and after the three cluster methods applied
由圖10—圖12可以看出,剔除NLOS信號后,東、北、天3個方向的定位精度都得到了明顯的改善,只有個別歷元的定位精度有所下降,可能與剔除NLOS后衛(wèi)星幾何分布變差有關(guān),也可能與NLOS聚類錯誤有關(guān)。定位試驗的均方根誤差見表3。
圖10 東向剔除前后誤差Fig.10 Error before and after elimination in East component
圖11 北向剔除前后誤差Fig.11 Error before and after elimination in North component
圖12 天向剔除前后誤差Fig.12 Error before and after elimination in Up component
由表3可以看出,3種方法的東北天3個方向的精度都有較顯著提高,東向精度提升最高為53.9%,最低為43.5%;北向精度提升最高為51.0%,最低為40.2%;天向精度提升最高為53.1%,最低為37.9%。
表3 剔除NLOS信號前后的偽距定位的RMSE
本文采用3種非監(jiān)督學習法智能化控制GNSS多徑誤差對定位精度的影響,并通過使用信噪比、高度角、偽距殘差和偽距率一致性特征值對測站的觀測數(shù)據(jù)進行聚類,均取得較好的抑制多徑誤差影響的效果。主要結(jié)論如下:
(1) 利用建筑物邊界數(shù)據(jù)得到了NLOS的天空圖,發(fā)現(xiàn)測站周圍建筑物遮擋比較嚴重。相比于監(jiān)督學習,非監(jiān)督學習法無須利用三維模型對GNSS信號進行真實標記,無須其他先驗約束,顯著降低了運算負荷。
(2) 3種非監(jiān)督智能學習方法(k-means++、GMM和FCM)分別利用歐氏距離,概率分布和隸屬程度對GNSS信號進行有效聚類。通過輪廓系數(shù)分析,k-means++和FCM兩者聚類性能接近,而GMM聚類性能相對較差。
(3) 3種方法剔除NLOS信號后,東北天3個方向的精度提升約為40%~50%,其中FCM方法中的東向定位精度提高最顯著,GMM方法中的天向精度提高程度不如其他分量。
本文探討智能學習在GNSS多徑信號識別與影響控制方面的應用,3種智能學習法均可用于復雜環(huán)境下GNSS實時導航定位,可有效控制多徑誤差對導航定位精度的影響。未來還應將三維建筑模型和射線追蹤相結(jié)合,實現(xiàn)對GNSS信號的合理標記,并進一步分析非監(jiān)督學習法對多徑信號聚類效果;此外,需要繼續(xù)研究不同動態(tài)環(huán)境對聚類性能的影響,研究利用非監(jiān)督學習對動態(tài)特征值進行訓練,以便能進一步提升多徑信號識別效果。