彭大芹,李 靖
(重慶郵電大學(xué) a.通信與信息工程學(xué)院; b.電子信息與網(wǎng)絡(luò)工程研究院,重慶 400065)
近年來,隨著物聯(lián)網(wǎng)和智慧城市相關(guān)技術(shù)的快速發(fā)展,“萬物互聯(lián)”的時(shí)代已經(jīng)到來[1],物聯(lián)網(wǎng)將與傳統(tǒng)行業(yè)緊密結(jié)合,并借助云計(jì)算、大數(shù)據(jù)等技術(shù)構(gòu)建萬物互聯(lián)的生態(tài)體系。據(jù)估計(jì),到2020年,LPWA(Low Power Wide Area)鏈接數(shù)量將達(dá)到20億,超過傳統(tǒng)蜂窩用戶的數(shù)量。窄帶物聯(lián)網(wǎng)(Narrow Band Internet of Things,NB-IoT)由于具有成本低、功耗小、連接量大、覆蓋范圍廣[2]等優(yōu)點(diǎn),將會(huì)廣泛應(yīng)用于工業(yè)與生活中。同時(shí),人們對(duì)于基于位置的服務(wù)(Location Based Service,LBS)需求越來越多,如何在傳統(tǒng)蜂窩網(wǎng)絡(luò)的基礎(chǔ)之上,結(jié)合NB-IoT的應(yīng)用場(chǎng)景和網(wǎng)絡(luò)特性使NB-IoT終端滿足日常定位需求,引起了相關(guān)學(xué)者的討論與研究。
NB-IoT通過窄帶、低頻、重傳機(jī)制可實(shí)現(xiàn)廣覆蓋,適用于包括LBS在內(nèi)的各種物聯(lián)網(wǎng)場(chǎng)景,如智能停車、物流跟蹤和智能家居等[3-4]。通過使用窄至180 kHz的帶寬,NB-IoT終端的復(fù)雜度可降為普通LTE-A終端的15%[5]。然而,超低復(fù)雜度的NB-IoT終端使得所測(cè)量的到達(dá)時(shí)間(Time of Arrival,TOA)估計(jì)具有較大誤差,而在穿透衰落更復(fù)雜的非視距(Non Line of Sight,NLOS)場(chǎng)景下,其定位精度更加無法滿足日常需求[6]。此外,在NB-IoT的使用場(chǎng)景下,大量終端處于靜止?fàn)顟B(tài)且具有先驗(yàn)位置信息。本文基于以上特性提出一種面向NB-IoT終端的指紋匹配定位改進(jìn)算法。通過充分利用設(shè)備先驗(yàn)位置信息和位置指紋得到K個(gè)近鄰點(diǎn),應(yīng)用極大似然算法估計(jì)設(shè)備的最終位置,以提高NB-IoT終端的定位精度。
當(dāng)前智能設(shè)備的定位方法從定位原理的角度進(jìn)行分類,大致可以分為基于三角關(guān)系與運(yùn)算的定位技術(shù)和基于場(chǎng)景分析的定位技術(shù)[7],前者是蜂窩網(wǎng)絡(luò)中最常用的定位方式,需要根據(jù)待定位物體與一個(gè)或多個(gè)已知位置的參考點(diǎn)的測(cè)量關(guān)系來定位,而后者又可以細(xì)分為基于距離測(cè)量的定位技術(shù)和基于角度測(cè)量的定位技術(shù)。3GPP Release14版本為NB-IoT增加了定位功能,其窄帶定位參考信號(hào)(Narrow-band Positioning Reference Signal,NPRS)支持E-CID算法和到達(dá)時(shí)間差(Time Difference of Arrival,TDOA)算法[8]。E-CID使用智能天線測(cè)量信號(hào)到達(dá)角,然后利用TOA或者功率損耗測(cè)量距離實(shí)現(xiàn)單基站定位,但是該算法易受到多徑效應(yīng)的影響[9]。由于TOA要求目標(biāo)節(jié)點(diǎn)和基站時(shí)鐘同步準(zhǔn)確,對(duì)移動(dòng)目標(biāo)節(jié)點(diǎn)的可接入性造成影響。TDOA使用時(shí)間差計(jì)算距離差,不需要目標(biāo)節(jié)點(diǎn)和基站時(shí)間同步準(zhǔn)確,可減小環(huán)境因素帶來的測(cè)距誤差,使目標(biāo)節(jié)點(diǎn)的可接入性增強(qiáng),被廣泛運(yùn)用于LTE定位系統(tǒng)中[10]。同時(shí),TDOA的雙曲線定位方式使定位精度有所提升?;趫?chǎng)景分析的定位技術(shù)通過對(duì)定位的特定環(huán)境進(jìn)行抽象和形式化,使用一些具體、量化的參數(shù)描述定位環(huán)境中的各個(gè)位置,在此基礎(chǔ)上,構(gòu)建數(shù)據(jù)庫對(duì)這些信息進(jìn)行集成。業(yè)界習(xí)慣上將上述形式化和量化后的位置特征信息形象地稱為信號(hào)指紋。觀察者根據(jù)待定位物體所在位置的指紋特征查詢數(shù)據(jù)庫,并根據(jù)相應(yīng)的匹配規(guī)則確定物體的位置[11]。由此可見,這種定位技術(shù)的核心是位置特征數(shù)據(jù)庫和匹配規(guī)則,其本質(zhì)上是一種模式識(shí)別方法[12]。文獻(xiàn)[13]利用信道狀態(tài)信息的相位差構(gòu)建高精度指紋庫,并利用BP神經(jīng)網(wǎng)絡(luò)進(jìn)行模型訓(xùn)練,其定位精度有所提高,但前期訓(xùn)練時(shí)間較長(zhǎng)。文獻(xiàn)[14]針對(duì)K近鄰(K-Nearest Neighbor,KNN)的計(jì)算量較大的問題,提出聚類算法與KNN相結(jié)合的算法,在定位精度幾乎無下降的情況下提升算法搜索效率,縮短搜索時(shí)間。文獻(xiàn)[15]針對(duì)運(yùn)動(dòng)軌跡跟蹤問題,提出基于核函數(shù)的隱馬爾科夫模型,根據(jù)定位節(jié)點(diǎn)之間的轉(zhuǎn)移概率進(jìn)行軌跡定位優(yōu)化,以提高定位準(zhǔn)確率。
目前在LBS中,除NB-IoT技術(shù)外,還有紅外線、藍(lán)牙和WiFi等短距離通信。然而,這些短距離通信技術(shù)在大連接和大覆蓋這兩個(gè)方面存在技術(shù)短板,不能滿足當(dāng)前物聯(lián)網(wǎng)的需求。例如,紅外線需要發(fā)射機(jī)和接收機(jī)對(duì)齊才能進(jìn)行數(shù)據(jù)傳輸,藍(lán)牙只適用于短距離傳輸且傳輸速率較慢?;赪LAN的定位適用于商場(chǎng)等小范圍場(chǎng)景,針對(duì)城市等大范圍的定位系統(tǒng),其數(shù)據(jù)打通和融合存在較大問題,并且只有在高設(shè)備成本下才能表現(xiàn)良好性能。此外,WLAN 2.4 GHz的干擾也是一個(gè)較大的技術(shù)壁壘。對(duì)于LoRa、Sigfox等非蜂窩網(wǎng)絡(luò)的廣域網(wǎng)傳輸技術(shù)[16],由于其工作在非授權(quán)頻段并且協(xié)議公開,極易受到網(wǎng)絡(luò)攻擊,其安全性不能滿足大規(guī)模商用的需求,Sigfox擁有最低成本的無線電模塊優(yōu)勢(shì),但是其下行能力受限,信號(hào)干擾存在較大問題。NB-IoT是一種廣域網(wǎng)傳輸技術(shù),具有大連接、廣覆蓋等特性,結(jié)合CSI、窄帶參考信號(hào)接收功率和先驗(yàn)位置信息構(gòu)建高精度指紋庫,能有效規(guī)避上述問題并提高定位精度。
信道狀態(tài)信息(Channel State Information,CSI)能以更細(xì)粒度表征信號(hào),通過分析不同子信道的信號(hào)傳輸情況可知,CSI可以盡可能詳細(xì)地描述多徑效應(yīng)與噪聲的影響,因此選擇其作為NB-IoT網(wǎng)絡(luò)的定位指紋。正交頻分復(fù)用技術(shù)(Orthogonal Frequency Division Multiplexing,OFDM)將數(shù)據(jù)流分成多個(gè)子流,并通過不同頻率的多個(gè)子信道并行傳輸,每個(gè)子信道使用獨(dú)立的子載波,且這些子載波彼此正交。在平滑衰落信道中,接收機(jī)的接收信號(hào)可表示為:
Y=HX+N
(1)
其中,Y和X分別表示NB-IoT終端與NB基站的信號(hào)向量,H表示信道狀態(tài)信息矩陣,N表示高斯白噪聲。
物理層信道狀態(tài)信息中包含了更細(xì)粒度的信號(hào)特征,例如信道中各個(gè)子載波的振幅和相位,其計(jì)算公式如下:
Hk=‖Hk‖ei∠Hk
(2)
其中,‖Hk‖為信號(hào)幅值信息,∠Hk為信號(hào)相位信息。
本文將振幅作為指紋特征,根據(jù)NB-IoT子載波個(gè)數(shù)構(gòu)建CSI指紋,如式(3)所示:
Hamp=[‖H1‖,‖H2‖,…,‖H30‖]>T
(3)
本文采用CSI與窄帶參考信號(hào)接收功率(Narrowband Reference Signal Received Power,NRSRP)融合的指紋特征,其中,NRSRP為智能終端接收到的信號(hào),假設(shè)共有m個(gè)NB-IoT終端參考點(diǎn),能檢測(cè)到n個(gè)NB-IoT基站,則NRSRP特征表示如式(4)所示:
(4)
其中,χi是終端i收到n個(gè)NB-IoT基站的指紋矢量,而χij為終端i收到第i個(gè)基站的窄帶參考信號(hào)接收功率。
根據(jù)靜態(tài)NB-IoT終端的先驗(yàn)知識(shí),已知位置信息如下:
L=[(Vlat1,Ulng1),(Vlat2,Ulng2),…,(Vlatm,Ulngm)]>T
(5)
其中,Vlati和Ulngi分別為第i個(gè)點(diǎn)的緯度和經(jīng)度。
經(jīng)過信息融合,NB-IoT終端指紋特征庫如式(6)所示。
FNB-IoT=[L,Hamp,χNRSRP]>
(6)
NB-IoT網(wǎng)絡(luò)的系統(tǒng)架構(gòu)如圖1所示。由圖1可知,NB-IoT終端收集基站的定位輔助數(shù)據(jù)并進(jìn)行測(cè)量,然后將相關(guān)的測(cè)量數(shù)據(jù)以報(bào)告的形式上報(bào),并在云端的服務(wù)移動(dòng)位置中心進(jìn)行定位計(jì)算,最終將定位結(jié)果下發(fā)。NB-IoT終端僅測(cè)量定位的相關(guān)參數(shù),不需要額外的硬件和存儲(chǔ)成本,能滿足終端的低復(fù)雜性要求。
圖1 NB-IoT網(wǎng)絡(luò)的系統(tǒng)架構(gòu)
基于指紋匹配的算法主要采用機(jī)器學(xué)習(xí)[17]進(jìn)行模式識(shí)別和判別分析,前期訓(xùn)練時(shí)間較長(zhǎng),模型自學(xué)習(xí)和自適應(yīng)的過程較為復(fù)雜,因此本文采用無需訓(xùn)練的KNN算法進(jìn)行指紋特征匹配。KNN算法的主要思想如下:在構(gòu)建的樣本空間內(nèi),如果一個(gè)待分類樣本的特征與樣本空間中某一類別樣本的相似性度量接近,那么待分類樣本也屬于該類別,其不僅有相似的特征,也有相似的屬性。
(7)
其中,p取值為[1,+∞),當(dāng)p=1時(shí),得到曼哈頓距離(Manhattan distance),其計(jì)算公式如式(8)所示:
(8)
當(dāng)p=2時(shí),得到歐氏距離(Euclidean distance),其計(jì)算公式如式(9)所示:
(9)
本文選取歐式距離作為指紋庫的相似性度量。在經(jīng)過相似性匹配計(jì)算后,相似性度量值越小,表明相似度越高。找出前K個(gè)最相近的點(diǎn),則所預(yù)測(cè)的設(shè)備最終定位位置如下:
(10)
基于KNN的指紋匹配定位算法能夠有效利用設(shè)備應(yīng)用場(chǎng)景信息進(jìn)行定位建模,并通過指紋信息匹配算法過濾掉傳播過程中大量的NLOS誤差。然而,當(dāng)找到K個(gè)最優(yōu)近鄰點(diǎn)后,僅取其均值作為定位位置會(huì)導(dǎo)致誤差較大[19]。基于距離的最優(yōu)加權(quán)K最近鄰(Weighted K-Nearest Neighbor,WKNN)算法在KNN的基礎(chǔ)上根據(jù)距離信息進(jìn)行加權(quán)位置估計(jì),其定位精度有所提升,但仍存在較大誤差[20]。
在找到K個(gè)最優(yōu)近鄰點(diǎn)后,這些點(diǎn)的質(zhì)心位置可能與NB-IoT終端的位置距離較遠(yuǎn),定位誤差較大,因此本文提出一種改進(jìn)算法,通過NRSRP信息和路徑損耗模型估計(jì)設(shè)備與K個(gè)近鄰點(diǎn)之間的距離。假設(shè)相近點(diǎn)的無線信號(hào)傳輸路徑相似,通過構(gòu)建窄帶參考信號(hào)接收功率差值可以抵消部分因路徑損耗而導(dǎo)致的測(cè)距誤差,最后基于最大似然估計(jì)理論進(jìn)行位置估計(jì)。改進(jìn)網(wǎng)絡(luò)的示意圖和完整的算法流程分別如圖2、圖3所示。
圖2 指紋匹配定位改進(jìn)網(wǎng)絡(luò)示意圖
Fig.2 Network improved by the localization algorithm using fingerprint matching
圖3 指紋匹配定位改進(jìn)算法流程
Fig.3 Procedure of the improved localization algorithm using fingerprint matching
通過NB-IoT待定位終端接收服務(wù)小區(qū)NRSRP,其與K近鄰點(diǎn)接收到的服務(wù)小區(qū)NRSRP構(gòu)成窄帶參考信號(hào)接收功率差值,計(jì)算公式如式(11)所示。
Di,k=Ni-Nk
(11)
其中,Ni表示第i個(gè)設(shè)備接收到的服務(wù)小區(qū)NRSRP信號(hào)值,Di,k表示第i個(gè)設(shè)備到第k個(gè)近鄰點(diǎn)的窄帶接收功率差。
自由空間傳播模型是無線電波的理想化傳播模型[21],具體公式如下:
(12)
L′=32.45+20lgd+20lgf
(13)
由此可以推導(dǎo)出距離公式,如式(14)所示:
(14)
其中,f是信號(hào)載波頻率,dk表示待定位終端到第k個(gè)近鄰點(diǎn)的距離。
MLE-KNN算法是利用KNN算法得到K個(gè)最近鄰點(diǎn),通過路損傳播模型得到UE與K個(gè)近鄰點(diǎn)的近似距離估計(jì)和距離差估計(jì)值,在此基礎(chǔ)上利用最大似然估計(jì)理論進(jìn)行設(shè)備最終位置估計(jì)。
構(gòu)造設(shè)備與K個(gè)近鄰點(diǎn)之間的距離公式,設(shè)定未知節(jié)點(diǎn)的位置為(x,y),將KNN算法推薦的K個(gè)點(diǎn)坐標(biāo)按照相似度值的大小順序進(jìn)行排列,依次為(x1,y1),(x2,y2),…,(xk,yk),其中(x1,y1)為最優(yōu)匹配點(diǎn),通過第2.2節(jié)構(gòu)造的距離公式可以得到定位終端與K近鄰節(jié)點(diǎn)之間的距離方程,如式(15)所示:
(15)
其中,dk由式(14)推導(dǎo)得到。設(shè)定距離差公式如下:
dk,1=dk-d1=
(16)
對(duì)式(16)的等號(hào)兩邊求平方,可得:
(17)
當(dāng)k=1時(shí),式(17)變?yōu)槿缦滦问?
(18)
將式(17)減去式(18),移項(xiàng)后進(jìn)行整理可得式(19):
AX=B
(19)
通過最小二乘理論即可求得上式的最小二乘解X=(ATA)-1ATB。
本文實(shí)驗(yàn)環(huán)境為實(shí)驗(yàn)室周圍的露天停車場(chǎng)區(qū)域,該區(qū)域面積約為60 m×100 m,如圖4所示。由于停車場(chǎng)周圍環(huán)繞著3棟大樓,并且在前期指紋數(shù)據(jù)測(cè)量以及測(cè)試數(shù)據(jù)采集過程中經(jīng)常有車輛、行人等信息干擾,因此可以認(rèn)為是NLOS環(huán)境。
圖4 實(shí)驗(yàn)場(chǎng)景示意圖
數(shù)據(jù)采集過程用到的實(shí)驗(yàn)設(shè)備為一臺(tái)電腦,設(shè)備型號(hào)為Intel Core i5-7300HQ,NB通信模塊采用表現(xiàn)較為優(yōu)異的8908A芯片,使用移動(dòng)運(yùn)營(yíng)商的NB SIM卡,網(wǎng)絡(luò)頻段工作在3 736號(hào)頻點(diǎn),中心頻點(diǎn)為953.6 MHz。在采集過程中,使用Coolwatcher軟件進(jìn)行設(shè)備數(shù)據(jù)跟蹤,并通過ArmTracer軟件實(shí)現(xiàn)數(shù)據(jù)獲取和查詢。根據(jù)NB-IoT終端的實(shí)際部署情況,在橫縱方向每隔10 m設(shè)定一個(gè)參考點(diǎn),每個(gè)點(diǎn)采集約100條指紋信息,以便在進(jìn)行Kalman濾波后形成NB指紋庫,最終將測(cè)量數(shù)據(jù)導(dǎo)出為csv文件,并利用Matlab進(jìn)行數(shù)據(jù)預(yù)處理和指紋建模。
衡量定位精度的指標(biāo)主要有定位誤差均值、誤差標(biāo)準(zhǔn)差、誤差累積分布函數(shù)(Cumulative Distribution Function,CDF)等。定位誤差距離公式如下:
(20)
其中,(x,y)為待測(cè)點(diǎn)坐標(biāo),(X,Y)為待測(cè)點(diǎn)實(shí)際坐標(biāo)。
定位誤差的CDF計(jì)算公式如下:
(21)
其中,z(m)表示精度小于m的測(cè)試點(diǎn)個(gè)數(shù),Z表示總的測(cè)試點(diǎn)個(gè)數(shù)。
k值指KNN算法中匹配的最優(yōu)近鄰點(diǎn)個(gè)數(shù),k值越大表示為當(dāng)前待定位點(diǎn)提供定位信息的近鄰點(diǎn)個(gè)數(shù)越多。本文基于控制變量法,結(jié)合Matlab進(jìn)行仿真,討論不同k值對(duì)置信概率和定位精度方面的影響。圖5給出不同k值對(duì)定位精度的影響。
圖5 不同k值對(duì)定位精度的影響Fig.5 Influences of different k values on localization precision
由圖5可以看出,與KNN算法相比,WKNN算法的定位精度略有降低,這是因?yàn)猷徑c(diǎn)的相似性度量值差異性較小,加權(quán)KNN算法的定位精度提升較小。MLE-KNN算法可充分利用NRSRP信息構(gòu)建距離差,比傳統(tǒng)KNN算法的定位效果好,且當(dāng)k=3和k=9時(shí)的定位精度提升較高??梢钥闯?匹配的鄰近點(diǎn)越多,其能提供的定位信息就越多,但是傳播環(huán)境中的噪聲也隨之增多,算法的耗時(shí)增加。綜合以上分析可知,本文k值設(shè)置為3,即KNN算法匹配3個(gè)最優(yōu)鄰近點(diǎn),表1給出k=3時(shí),4種不同指紋匹配算法的定位效果對(duì)比。
表1 4種算法的定位精度對(duì)比
Table 1 Comparison of localization precisions of fouralgorithms
算法平均誤差/m標(biāo)準(zhǔn)差/mCDF/%(誤差為20 m)運(yùn)行時(shí)間/sNN算法30.827 924.813 934.200.769KNN算法25.291 217.062 751.100.777WKNN算法25.234 517.155 550.800.786MLE-KNN算法19.746 114.155 555.900.928
由表1可以看出,當(dāng)k=3并且參考點(diǎn)采樣間隔為10 m時(shí),本文MLE-KNN算法的定位精度最優(yōu)可達(dá)19.746 m,較WKNN算法提升了5.48 m。同時(shí),MLE-KNN算法在誤差20 m以內(nèi)的累計(jì)分布概率為55.90%,較WKNN算法提高了5.0%。在運(yùn)行時(shí)間方面,MLE-KNN算法利用距離差和極大似然估計(jì)算法進(jìn)行最終定位,需要進(jìn)行矩陣求逆運(yùn)算,因此其耗時(shí)相比于其他算法略有增加。
通過仿真對(duì)多種傳統(tǒng)指紋定位算法進(jìn)行對(duì)比分析,選取誤差距離CDF曲線作為定位精度的最終評(píng)價(jià)指標(biāo),如圖6所示。
圖6 4種算法CDF對(duì)比
由圖6可知,傳統(tǒng)的指紋匹配算法在定位平均誤差和標(biāo)準(zhǔn)差方面表現(xiàn)較差,在20 m內(nèi)的定位精度在51.0%左右,而本文MLE-KNN算法在平均誤差和標(biāo)準(zhǔn)差上都有明顯提高,在20 m以內(nèi)的置信概率可達(dá)55.9%,定位效果有所改善。
本文提出一種面向NB-IoT終端的指紋匹配定位改進(jìn)算法。利用CSI多子載波的多徑衰落特征和NRSRP信息構(gòu)建高精度指紋庫,通過極大似然估計(jì)算法充分利用鄰近點(diǎn)NRSRP信息,以提高定位精度。實(shí)驗(yàn)結(jié)果表明,與傳統(tǒng)指紋匹配定位算法相比,該算法的最優(yōu)定位精度和20 m以內(nèi)的置信概率均有提升。在參考點(diǎn)不規(guī)則分布的情況下,對(duì)NB-IoT終端的指紋定位精度和匹配時(shí)長(zhǎng)進(jìn)行研究將是下一步的方向。