一種基於平方中位數的壓縮感知安全定位方法與流程
2023-06-08 15:14:58
本發明屬於通信定位技術領域,涉及無線通信技術、傳感器技術、定位導航技術,特別涉及一種基於平方中位數的壓縮感知安全定位方法。
背景技術:
近幾年來,人們對位置信息的需求與日俱增。在現實生活中,隨處可見利用手機,平板電腦,智能手環,智能手錶等行動裝置來獲取個人位置信息的現象,這使得基於位置信息的服務成為產業界關注的熱點。目前常見的定位算法主要分為三類:基於接收信號強度(receivedsignalstrength,rss)算法,基於到達時間(time-of-arrival,toa)/基於到達時間差(time-difference-of-arrival,tdoa)算法,以及基於到達角度(angle-of-arrival,aoa)算法,參見以下技術文獻:goldensa,batemanss.sensormeasurementsforwi-filocationwithemphasisontime--of-arrivalranging[j].ieeetransactionsonmobilecomputing,2007,6(10):1185--1198、sheny,winmz.ontheaccuracyoflocalizationsystemsusingwidebandantennaarrays[j].communicationsieeetransactionson,2010,58(1):270-280.以及wuz,lic,ngky,etal.locationestimationviasupportvectorregression[j].iee-etransactionsonmobilecomputing,2007,6(3):311-321。
其中toa/tdoa和aoa算法需要比較精確的工具來測量時間和角度,成本較高,很難運用於實際生活中。而基於rss的算法,實現簡單,不需要複雜的設備,低功率,應用成本低,目前廣泛應用於無線傳感器網絡的定位。基於rss的算法可以分為三類,分別是測距定位算法,指紋定位算法和壓縮感知定位算法,分別參見liuh,darabih,banerjeep,etal.surveyofwirelessindoorposition-ingtechniquesandsystems[j].sys-temsman&cyberneticspartcapplications&reviewsieeetransactionson,2007,37(6):1067-1080,kolodziejkw,hjelmj.lo-calpositioningsystems:lbsapplicationsandservices[j].crcpress,2006.和maog,fidanb,andersonbdo.wirelesssensornetworklocalizationtechniques[j].co-mputernetworks,2007,51(10):2529-2553。
目前,大部分算法都假設傳感器工作在良好的環境中,並且傳感器節點都是可靠的。當存在惡意攻擊或者環境十分惡劣以致於某些傳感器節點失效時,現有算法都無法完成定位。因此,研究惡意攻擊條件下的安全定位問題具有十分重要的應用價值和意義。安全定位技術的目的是在複雜環境甚至存在惡意攻擊的條件下,依舊能夠獲得準確的定位信息。根據各種攻擊算法攻擊策略的不同,安全定位算法可以分為兩大類:攻擊檢測類算法,通過剔除不可信節點來尋找最大可信節點集合,以實現安全定位;容忍攻擊類算法,能夠容忍攻擊節點的存在,同時將受攻擊節點帶來的負面影響降到最低。詳見m.jadliw-ala,s.zhong,s.upadhyaya,c.qiao,andj.p.hubaux,「securedistance-basedlocali-zationinthepresenceofcheatingbeaconnodes,」ieeetrans.mobilecomputing,vol.9,no.6,pp.810-823,2010。
技術實現要素:
本發明將壓縮感知定位技術和平方中位數思想相結合,提出惡意節點攻擊下的基於平方中位數的壓縮感知定位方法。
本發明包括如下步驟:
a.將所有待檢測的測量值樣本隨機分成若干個測量值子集;
b.利用壓縮感知重構技術估計每個測量值子集所對應的候選目標位置;
c.計算每個測量值子集各自的殘差向量及殘差平方,並找到各自的殘差中位數;
d.找到具有最小中位數的殘差向量,將該殘差向量定義初始的驗證參數;
e.修正驗證參數,發現受攻擊節點;
f.根據驗證的未受攻擊的測量值集合,運用壓縮感知重構算法估計目標的最終位置。
更進一步的,所述步驟b中壓縮感知技術和中位數思想相結合,採用基於發現-刪除方式的安全壓縮感知定位算法。
本發明有益效果:
本發明將壓縮感知技術和中位數思想相結合,提出了基於發現-刪除方式的安全的壓縮感知定位算法,與傳統壓縮感知定位方法相比,定位性能更好。
附圖說明
圖1是本發明詳細流程圖。
圖2是受攻擊的傳感器節點為4個,信噪比為35db,未知目標數量分別為3個和6個的情況下,算法定位誤差的cdf(cumulativedistributionfunction,累積分布函數)。
圖3是未知目標數量為3個,受攻擊測量值分別為4個和8個時的定位誤差的cdf。
圖4是信噪比為35db,受攻擊測量值為4個時,不同算法的rmse(root-mean-squareerror,均方根誤差)和目標數量之間存在的關係。
圖5是信噪比為35db,未知目標數量為3個,rmse和受攻擊的測量值數目之間的關係。
圖6是未知目標數量為3個,信噪比為35db,受攻擊測量值為4個時,目標位置隨機分布的定位誤差的cdf。
具體實施方式
現結合附圖對本發明的具體實施方式做進一步詳細的說明。
本發明首先將所有基於接收信號強度的測量值隨機分成若干個測量值子集;然後利用壓縮感知重構技術估計這些子集所對應的目標位置;每個子集計算各自的殘差中位數,找到具有最小中位數的殘差向量,並以該殘差向量定義驗證參數。為了彌補測量值樣本較少帶來的信息缺失,修正了初始驗證參數用於發現受攻擊的惡意節點。最後根據驗證的未收攻擊的測量值集合,利用壓縮感知重構技術得到最終目標位置估計。本發明的基於平方中位數的壓縮感知定位算法,如圖所示,包括如下步驟:
步驟1.將所有待檢測測量值樣本隨機分成若干個測量值子集。
步驟2.利用壓縮感知技術估計每個測量值子集所對應的候選目標位置。
步驟3.計算每個測量值子集各自的殘差向量及殘差平方,並找到各自的殘差中位數。
步驟4.找到具有最小中位數的殘差向量,以該殘差向量定義初始的驗證參數。
步驟5.修正驗證參數,發現受攻擊節點。
步驟6.根據驗證的未受攻擊的測量值集合,運用壓縮感知重構算法估計目標的最終位置。
以下對上述步驟涉及的方法進行詳述:
1、壓縮感知定位模型
給定區域均勻劃分為n個網格,布設m個傳感器,k個目標.假設任意時間在一個網格中只存在一個目標,並且將網格的中心作為目標的位置。網格數n,目標數目k和傳感器數目m都是已知的,並且n>>m,n>>k。
在每次採樣時間點,每個傳感器節點接收來自所有k個目標的rss測量值的和。每個傳感器將收到的rss測量值和傳給數據融合中心重構k個目標位置。在定位系統中,根據信號衰落模型,第m個傳感器節點接收到的來自第n個網格的rss測量值為:
pm,n=p0-10nplg(dm,n/d0)(1)
p0代表傳輸距離為d0時的rss測量值,np表示路徑衰落因子,範圍在2到4之間,dm,n是第m個傳感器節點到第n個網格中心的距離,
(xm,ym),(xn,yn)分別表示第m個傳感器節點和第n個網格中心的坐標。
第m個傳感器節點接收到的rss測量值之和可以表示為
如果第n個網格中存在目標那麼為1,否則為0.εm是測量值噪聲,因此(3)可以寫成如下向量表示
y'=pθ+ε(4)
θ是未知的0-1向量,其中k個值為1,n-k個值為0。因為n>>k,所以θ是k稀疏向量。因此,定位問題可以看成是k稀疏信號重構問題,並利用cs理論實現重構。值得注意的是這裡y'是未受到攻擊的測量值向量,p表示理論的測量矩陣。
2、算法描述
本發明所提出的算法主要分為三個階段:驗證參數估計、攻擊節點檢測以及最終位置估計。下面將詳細描述該算法。
i.驗證參數估計
假設受到攻擊後的測量值向量為從這m個測量值中隨機抽取ms個測量值組成一個測量值子集,這種隨機抽取的方式一共可以組成個這種集合,當m=64,ms=35時可以有個集合。但是只需要其中q個集合,並且q遠小於因此在這q個集合中,不可能出現兩個完全相同的子集。假設第i個子集為:
其中使用壓縮感知重構算法,比如正交匹配追蹤(omp)算法或者基追蹤(bp)算法能夠估計出在第i個子集下的重構向量即:
其中表示第i個測量值子集對應的理論測量矩陣,它是由測量矩陣p中相應的行向量組成的。是噪聲向量。
利用已經估計出來的重構向量可以得到第i個子集對應的殘差向量為:
因此殘差平方可以定義為:
然後選出這些殘差平方向量的中位數,從這q個殘差平方中位數中找到最小的平方中位數,並記錄其所屬的子集號:
因此第λ個子集具有最小殘差平方中位數,將該子集重構出的候選目標位置作為臨時目標位置估計。
驗證參數可以簡單定義為:
被選定的第λ子集對應的殘差向量rλ以及上述驗證參數將會在後續的攻擊節點檢測中使用。
ii.攻擊節點檢測
為了降低子集數目較小所產生的影響,修正了驗證參數如下:
κ是被估計變量的維度,對於二維或者三維位置估計來說κ的取值為2或者3.[rousseeuwpj,leroyam.robustregressionandoutlierdetection[m].wiley-interscience,1987.]
由於選中的第λ子集估計的候選目標位置的殘差中位數最小,因此可以認為第λ子集的位置估計是最好的。但是這個最好的目標位置是僅由第λ個子集中的測量值樣本重構得到,我們希望有更多的測量值樣本來獲得更好的定位性能。根據第λ個子集中的殘差向量rλ,計算權重向量w=[w1,w2,…,wm]:
其中γ是預先定義的閾值。根據計算的結果,
(1)如果wi=0,i=1,2,…,m,則可以認為該傳感器節點受到了攻擊,相應測量值將不會在後續定位中使用。
(2)如果wi=1,i=1,2,…,m,則可以認為該傳感器節點未受到攻擊,相應測量值將形成新的測量值集合yf,並用於最終位置估計。
iii.最終位置估計
將本申請的測量矩陣可以寫成列向量的形式:
p=[p1,p2,…,pm]t\*mergeformat(13)
其中pi=[pi,1,pi,2,…,pi,n]t(i=1,2,…,m)。利用方程(13)生成的權重向量和測量矩陣p的行向量形成一個新的測量矩陣,用pf表示。則現在的信號重構問題可以建模為:
和nf分別表示重構向量和測量噪聲向量。此時可以利用omp(orthogonalmatchingpursuit)或者bp(basispursuit)算法來獲得重構向量最後選取中前k個最大重構係數的索引對應的網格,並使用這些網格的中心坐標作為k個未知目標的位置。
3、仿真參數設置
圖2-圖6為對本發明的安全定位方法進行仿真的測試結果。假設給定的定位區域為50m×50m的正方形區域,並且被均勻分成n=14×14=196個網格,其中均勻分布m=64個傳感器節點,預定義檢測受攻擊節點的閾值γ=10,子集大小ms=30。定義受攻擊節點數量η=8。如果希望在所有的子集中至少有一個子集不包含任何受攻擊測量值,即pd接近1,則子集數量q必須不小於1000,在本發明中,用於中間位置估計的子集數量q=1500。另外信號衰落模型的參數設置如下:p0=-40db,d0=1,np=2。線性攻擊模型參數設置為:α=0,β=-17,該攻擊模型主要用於模擬信號傳播過程中被金屬物體阻礙所產生的信號衰減。
應當理解的是,上述針對本發明實施例的描述較為詳細,並不能因此而認為是對本發明專利保護範圍的限制,本發明的專利保護範圍應以所附權利要求書為準。