袁學松
(安徽機電職業技術學院互聯網與通信學院,安徽 蕪湖 241001)
定位技術已被廣泛應用于各種場景,如地圖服務、外賣服務等。其定位主要依賴于全球導航衛星(Global Navigation Satellite System,GNSS)[1],如GPS、北斗等。在室內環境中,由于GNSS信號不能很好地穿越建筑物,無法實現在室內對移動設備的精確定位。室內環境復雜,存在很多電磁干擾,可能產生多徑效應,導致定位不準確。如何找到一種低成本且可靠的室內定位技術、室內外定位融合技術逐漸成為近年來的研究熱點。
目前室內定位技術有很多種,比較傳統的是WIFI指紋定位技術,該技術由于無需建設基礎設施,成本小,被應用在很多場景中。該技術首先收集WIFI指紋庫,根據定位點的RSS與WIFI指紋庫進行比對和定位[2]。由于多徑效應等不良因素影響,雖不少學者對其進行了濾波等處理,但WIFI指紋定位的精度和可靠度仍不盡如人意。RFID技術由于價格低廉且有著不錯的定位精度,被廣泛使用,但在某些場景容易造成隱私泄露,需要復雜的設備支持,不適合進行大規模定位部署。超聲波定位技術由于建設成本高昂,不易大規模在室內場景使用。其他的定位技術還有超寬帶定位技術(Ultra Wide Band,UWB)慣性導航定位、藍牙信標定位、機器視覺定位等。UWB定位技術以功率低、抗多徑效應能力強、穿透力強等特點被廣泛應用于各種場景的室內定位[3]。它的測距方式有三種:(1)根據信號飛行時間的相關參數定位標簽位置,常見的方法有TOF、TOA、TDOA;(2)根據定位標簽信號與基站的接收角度來定位,常見的方法有AOA;(3)基站根據標簽信號的強度(RSSI)來定位。
在完成對標簽定位后,在某些場景下需要把相關位置等信息傳送給服務器,由服務器進行計算并提供基于位置的服務(Location-Based Services,LBSs)[4]。在室內環境下如何對UWB標簽定位數據進行隱私保護也是研究熱點。一直以來,人們使用K-匿名(K-anonymity)將用戶信息進行模糊處理后進行傳輸[5]。隨著大數據與分布式計算的發展,許多學者將分布式的理念引入隱私保護,使用分布式技術解決了大量訪問對第三方匿名服務器造成的影響[5-6]。TIAN等[7]對定位后的用戶移動行為進行分析,使用移動馬爾科夫鏈(MMC)提出基于物云系統的用戶位置等隱私預保護方法。這些技術和方案可應用于很多室內場景。本文將討論在大型智能醫療系統中,對重點病患、重點醫廢裝置進行定位和實時數據收集的同時對病患位置等敏感信息進行隱私保護的相關方案。UWB具有抗多徑干擾能力且穿透力強,非常適用于在大量標簽聚集的環境。
在智能醫療環境中,對于醫院的患者和需定位的相關醫廢車等,需采用UWB的雙邊雙向測距的方式(Double-Sided Two-Way Ranging,DS-TWR)[8]進行測距和計算,從而獲得定位信息。該方案利用信號飛行時間來計算標簽與設備之間的距離,非常適合在二維場景中測距。由于智能醫療場景是多層的,各病患可能在不同樓層,我們在改良的三邊定位算法中為每個基站標注樓層,用于輔助樓層定位。同時將定位標簽嵌入氣壓計傳感器用來輔助判斷樓層信息。
傳統的三邊定位方案是根據圖1中三個基站(BS1、BS2、BS3)的二維坐標系(X,Y),測量出目標T到三個基站的直線距離。通過列相關方程式來解算出目標T的具體位置[9]。由于真實場景環境復雜,標簽眾多,肯定會產生很多非視距誤差(Not Line of Sight,NLOS),而且由于目標節點運動狀態復雜等原因,這種非視距誤差是沒有規律的。使用傳統的去噪算法改進測量精度的有粒子濾波算法[10]、卡爾曼濾波算法(Kalman Filter,KF)[11]等。這種濾波算法對有規律的噪聲干擾有很好的效果,但在標簽眾多的環境中,整體計算量較大且定位的實時性較差。本文針對具有隱私保護的室內定位使用改進的卡爾曼濾波算法。傳統算法主要根據前一時刻的運動狀態估計當前時刻的運動狀態,并且系統在更新階段時,系統使用當前測量值來校驗預測值,從而獲得準確的結果。KF算法在默認情況下認為標簽都在運動,在實際醫院的室內環境中,很多標簽長時間處于靜止狀態,如果用傳統算法會浪費大量的算力進行預測和修正相關數值,因此本算法主要增加了判斷標簽是否移動的模塊。

圖1 三邊定位原理圖
根據改進的算法,把標簽進行分類,分為移動和靜止。在對移動標簽進行測距時,假設t時刻的標簽位置為(xt,yt),基站坐標為(xi,yi),通過傳統測距方案可以計算出標簽到各基站的距離為di。在t時刻使用KF算法對其進行狀態估計,則預測方程為
Xt=AXt-1+ωt-1,
其中,Xt為t時刻的標簽狀態向量;Xt-1為上一時刻的狀態向量;A為狀態轉移變換矩陣;ωt-1為相關高斯白噪聲。



算法1 基于KF改進的UWB三邊定位算法(單標簽)
輸入:在t時刻標簽節點X與各定位基站的距離Di,i=1,2,…默認情況下i∈(1,2,3,4)。
輸出:標簽節點X在t時刻的位置信息(Xt,Yt)。(該位置為解算坐標)
Step1 每個定位基站在一個周期T內對標簽使用DS-TWR計算基站與標簽的位置距離Di,i=1,2,…;

Step3 判斷標簽處于靜止或者微運動狀態,將相關參數帶入KF算法計算出最優測距值,再對所有測距值使用三邊定位算法進行解算,得到標簽位置信息(Xt,Yt),并調整基站測距周期為10T;

經過改良的三邊定位算法,增加了靜止標簽判定方法,大大減少了系統對標簽位置計算的復雜度。這就為在特定場景中給標簽做隱私保護提供了必要的算力資源。在本節中,我們將使用基于位置服務(LBSs)的PANO(privacy protection algorithm based on node offset)算法,對計算出來的節點位置進行位置隱私保護。
基于位置的服務(LBSs)近年來得到廣泛應用,在室外定位方面相關隱私保護技術比較成熟。而在室內使用UWB等融合技術進行定位后,如何對標簽的位置信息進行隱私保護一直是研究熱點。一些學者使用K-匿名技術把用戶的敏感數據和位置信息進行泛化和模糊化處理[12]。隨著大數據分布式計算的發展,一些學者引入分布式系統,減輕大量隱私保護類訪問對第三方匿名服務器的壓力。TIAN[7]使用移動馬爾科夫鏈(MMC)對用戶移動行為進行分析,提出基于物云系統的位置隱私保護。本節主要探討移動標簽室內定位后相關位置信息的隱私保護問題。這些技術可應用于目前的很多場景,如對醫院醫生、特殊病患相關位置等隱私信息的保護。圖2展示了室內混合式隱私保護體系框架。

圖2 室內混合式隱私保護體系框架
當系統根據改進的UWB定位算法測定標簽的坐標后,將真實的位置等信息存放到LBSs服務器中。當移動設備要查詢標簽的位置信息時,系統只支持把請求發送給分布式的可信的第三方匿名服務器,該匿名服務器的主要功能就是對請求進行泛化處理。接著將處理后的請求發送給LBSs服務器進行位置信息查詢,最后將候選結果集傳送給客戶端。現在成熟的位置保護技術有基于扭曲方法的位置信息保護技術、基于政策的位置信息保護技術和基于加密方法的位置信息保護技術。
針對智能醫療系統,UWB標簽和相關的傳感器通過智能穿戴設備連接到醫護人員身體上。傳感器負責采集患者相關身體狀況信息,這些信息會發送到主處理單元MPU進行存儲并周期性地向數據庫服務器和LBSs服務器進行信息傳輸。當病患發送緊急情況時,該系統最重要的功能是通過定位系統獲取準確的位置信息。為了解決保護患者敏感位置等信息的問題,本節提出一種主要針對強攻擊者的隱私保護方案PANO。
弱攻擊者只能通過信道獲取少量的敏感位置信息,由于這類攻擊者無法進入相關數據庫獲取信息,這樣完全可以通過對患者信息假名化或對信道進行加密的方法來解決。但如果強攻擊者能夠進入LBSs服務器,甚至能進入相關數據庫服務器,信道加密基本沒有任何作用。我們只能采用敏感信息位置干擾技術來最大程度地減少位置信息的泄露。

(1)

圖3 節點位置偏移狀態圖
為了確保ri在一個合適的范圍,即不超過擾動失真范圍導致攻擊者識別,同時也與真實位置信息有一定距離。算法將ri規定在一個范圍內。
rimin (2) 其中,rimin=ri×δ,rimax=ri×2,0<δ<1,δ在0至1中取隨機值。 為了讓隨機敏感位置更符合實際情況,引入高斯函數公式: (3) 其中,ε1,ε2>0,di,j的中心為(xi,yi),根據函數計算出偽節點的位置(xj,yj)。且0≤di,j≤1。 ri=rimin+min{di,1,di,2,…,di,m}×(rimax-rimin). (4) 由式(4)可知,當di,j=0時偽節點與敏感節點的距離為rimin;當di,j=1時,該距離為rimax,偽節點就在半徑為ri的圓環中產生。 圖4 偽節點運動狀態圖 圖5 PANO算法偽節點生成方案圖 運用定位算法計算出真實位置后,生成擾動節點的步驟(圖6): 圖6 PANO算法流程圖 step1 判斷標簽節點是否處于靜止和微運動狀態,若是,則執行step2~step4并結束;若不是,則執行step5; step2 在節點真實位置的周圍產生m個敏感位置,φ{S1,…,Sm}; step3 使用公式(3)得到{di,1,di,2,…,di,m},并使用公式(4)計算出干擾節點可能處于的干擾半徑ri; 對本文提出的UWB室內定位算法進行仿真實驗,具體的實驗場景選擇長200 m、寬50 m的二維平面環境。在該平面內有部分障礙物,用來模擬醫院大樓某層的真實情況,如圖7所示。該場景的左上角、左下角、右下角分別放置3個測距基站。實驗使用NS-3[13]進行離散仿真,為了真實模擬醫患行走的狀態,進行3次實驗求結果的平均值,第一次實驗節點從起點起勻速運動(0.5 m/s)沿著事先規劃好的軌跡運動到達終點;第二次實驗在第一次實驗的基礎上增加周期性停頓,也就是節點每走完10 s停頓10 s,完成整個路線;第三次實驗節點變速地完成整個路線的行走,變速區間在0.3 ~0.8 m/s。設置UWB符合IEEE 802.15.4標椎,發射功率在60 dBm/Hz左右,測距設置可達300 m,信道中設置理想狀態下高斯噪聲分布,設計高斯噪聲分布的標準差為0.3 m,系統采樣周期為100 ms。使用傳統的UWB三邊定位算法、改進的TDOA經典定位Fang算法[14]和本文的改進UWB算法對該場景下節點運動軌跡進行定位測量,比較其軌跡與真實軌跡的誤差。 圖7 NS-2模擬場景中節點運動軌跡 圖8展示的是各種算法與真實路徑軌跡的誤差曲線,圖9展示的是節點定位時延曲線。從圖8和圖9可以看出,與真實軌跡相比,傳統的三邊定位算法(圖8、圖9中菱形節點表示),由于高斯噪聲、非視距離等因素的干擾,同時沒有進行濾波處理,導致誤差較大,定位非常不穩定。但是由于計算簡單,所以定位的實時性較好。圖中三角節點線條表示的是采用經典Fang算法進行定位的軌跡圖,該算法基于TDOA技術建立雙曲線方程來求解得到待測標簽位置坐標,算法簡單,實時性較高,位置求解更為精確,穩定性也較傳統三邊定位算法更強,同時解算的復雜度較低,具有很好的實時性。圓形節點線條表示的是改進的三邊定位算法,由于使用了卡爾曼濾波算法,對定位數據進行濾波修正,計算的軌跡精度明顯高于前兩種算法。改進的三邊定位算法解算復雜度略高于Fang算法和傳統三邊定位,同時采用了判斷靜止和運動的方法,減少計算量,大大降低了系統的定位時延。由圖9可以看出,改進的三邊定位算法的平均實時性好于Fang算法。虛線展示的是經過隱私保護(PANO)的改進UWB定位算法,該算法在KF改進算法的基礎上增加了隱私保護能力,可以看到圖8的虛線定位軌跡幾乎與圓形節點線條重合。同時在時延方面,由于PANO算法產生偽節點的解算并不增加時間復雜度(只考慮定位節點的真實位置解算,不考慮偽節點的解算),在定位效率上也優于傳統算法,算法的整體表現良好。 圖8 各算法測距值平均誤差對比 圖9 各算法定位平均時延 本文PANO算法設計了偽節點的擾動算法,該擾動算法能夠合理地產生偽節點的位置,使攻擊者不會產生懷疑。針對PANO算法進行了相關獨立實驗,將PT算法[15]和ADBM算法[16]在圖7所示環境下產生的擾動軌跡進行分析,比較產生的偽節點與敏感位置的距離。從圖10可以看出,PANO算法始終與敏感位置保持一定距離,而其他算法節點的軌跡均與敏感位置有一定的交集,這證明了生成擾動位置的有效性,能夠有效保護患者的敏感位置。 圖10 敏感節點與偽節點的距離 UWB技術在室內定位有很廣泛的應用。本文在三邊定位的基礎上增加狀態常量來判斷節點的運動狀態,對于運動的標簽增加卡爾曼濾波來預測和修正位置,通過實驗對比可知,傳統算法和最常用的改進算法有著更好的定位精確性和魯棒性。我們把這種技術應用在醫院場景中,因為醫院場景有保護用戶位置隱私的需求。本文引入了PANO算法,通過設置敏感節點的夾角來異步生成偽節點。實驗證明,偽節點和敏感節點之間保持著很好的安全距離。但是,由于本文實驗只在普通高斯噪聲的基礎上,同時也只判定了節點在二維平面的位置,在不同樓層的位置擬使用氣壓計來判定。故未來工作可以三維重建場景,在不借助氣壓計的前提下更精確測量出節點三維位置的同時,保持節點的隱私性。






3 場景仿真實驗分析




4 結語