任瑾璇,麻淑婉,王永華,萬 頻
(廣東工業大學 自動化學院,廣州 510006)
隨著5G技術的普及和物聯網技術的興起,無線通信業務呈指數級增長,導致可用的頻譜資源越來越少。針對授權的頻段未得到充分的利用和抵御惡意用戶(Malicious User,MU)的攻擊等問題,認知無線電(Cognitive Radio,CR)技術被提出。頻譜感知是CR中十分重要的環節,可檢測主用戶(Primary User,PU)是否處于空閑狀態,空閑時則允許感知用戶(Cognitive User,CU)獲得許可的頻段[1-3],有效提高頻譜利用率,緩解頻譜短缺。
現階段的頻譜感知技術面臨著嚴重的安全問題,MU會通過發送錯誤的信息對檢測用戶發動攻擊來影響感知結果?,F有的對抗MU的頻譜感知研究有一定的局限性:文獻[4-8]限制了攻擊方式,只考慮了頻譜感知數據篡改(Spectrum Sensing Data Falsification,SSDF)的攻擊方式,所用算法不具有普遍性;文獻[9]采用了直接軟融合或者直接硬融合方法,這可能會導致感知矩陣的特征提取不充分,使協同頻譜感知系統(Cooperative Spectrum Sensing,CSS)的性能無法提高,無法有效排除MU的干擾。
為了抵御MU的攻擊,本文通過數據軟融合機制和模糊處理機制對感知數據進行有效分離和特征提取,將處理后的感知數據發送給數據融合中心(Fusion Center,FC),FC通過制定高效的數據融合方案做出全局決策,輸出整個系統的檢測結果。相對之前所提出的研究方案,本文的研究方案沒有限制攻擊方式,且無需關于MU和CU的任何先驗知識,以及信號和噪聲的分布。
為了提高感知網絡的服務質量和信息傳輸的速率,本文采用的多天線輸入輸出系統并行融合模型如圖1所示。
圖1 多天線輸入輸出系統
在此方案中,并行融合模型主要包括三個步驟,分別是本地檢測、數據匯聚和數據融合。第一步本地檢測是FC選擇一個需要檢測并且已經授權的頻段后,對每個誠實用戶(Honest User,HU)進行控制使其執行數據感知操作。第二步是數據匯聚,即CU把收集的每根天線檢測的感知數據通過信道傳送給FC。第三步是數據融合,通過一系列數學方法和機器學習的算法對感知數據進行處理,判決出PU是否存在。
認知無線電的頻譜檢測是二元假設問題[10],信道可分為空閑狀態和被占用狀態。 假設第i個CU的第j條天線采樣所得到的信號表示為
(1)
第i個感知用戶所檢測到的感知數據記為
(2)
在頻譜感知中,主要由虛警概率和檢測概率兩個指標來衡量感知的性能。
虛警概率Pf指當PU未占用信道時被檢測為PU已占用信道,此錯誤的檢測結果會導致CU不能接入信道,表示為
Pf=Prob{H1|H0} 。
(3)
檢測概率Pd指正確判斷該信道是否被占用,表示為
Pd=Prob{H1|H1} 。
(4)
在頻譜感知中,感知過程和信息交互過程中可能存在的惡意數據,會導致整個系統的感知能力下降,因此需識別出潛在的MU并排除MU對整個系統的攻擊,避免系統產生錯誤的感知判決結果。MU攻擊方法主要包括三類:第一類是MU通過模擬PU的信號進行攻擊,使HU的信號偏離PU的信號,最終將HU被隔離在主系統的頻譜之外;第二類是干擾HU的報告信道,通過阻斷、修改、重置等方式來干擾HU和FC的數據輸入通道,從而讓HU的本地決策結果無法發送或者無法準確的傳送給FC;第三類是攻擊HU,使HU發生故障,不斷發出錯誤的本地檢測結果和報告信息,這種攻擊方法將會導致檢測概率極大地降低,甚至會導致整個全局系統的崩潰。
在CSS中,MU的存在會嚴重降低檢測效率,影響CSS的系統性能[11]。利用合適的方法對用戶進行選擇可以排除MU對無線電網絡的攻擊,確保CU和PU的感知數據的可靠性?;诖吮疚牟捎眉惺竭x擇模型,該模型主要是利用FC對所有可用的感知數據進行收集,當數據收集完畢后,對數據進行進一步提取、剔除、融合等一系列操作,確保了網絡的安全性和可靠性。
基于聚類算法的頻譜感知的主要流程有四個階段:數據收集和提取、模糊處理、剔除惡意點和感知數據的分類。在數據的收集和提取階段,對每個CU收集的矩陣數據進行特征提??;在感知數據的模糊處理階段,采用隸屬度函數對前一步所提取的特征數據進行模糊處理,把頻譜感知的二分類問題轉變成一個模糊邊界的二分類問題,對處于模糊邊界內的數據添加不同的隸屬度的值,使分類器在低信噪比的惡劣情況下,仍然具有較好的性能和效率;第三階段進行惡意點的剔除,該階段對數據的離群點進行了挖掘剔除和融合,使算法的魯棒性更好,降低MU對整個無線電系統的干擾和影響;最后采用K-means++進行聚類。
圖2 算法總流程圖
頻譜感知分類是一個二分類問題:
(5)
當環境的信噪比(Signal-to-Noise Ratio,SNR)值比較高且信號檢測條件較好時,FC接收到的PU在信道上的信號強度和PU不在信道上的信號強度之差較大,有利于感知系統判斷PU的狀態;在SNR較低的情況下,FC進行本地檢測的結果準確性不高;隨著SNR值的下降,檢測結果的準確性越低?,F有的頻譜感知不能解決SNR不理想、分類邊界模糊的問題,不能表達PU可能或不可能存在這一類可能性問題,使得檢測的準確性降低。
在進行模糊處理前,先對信號樣本X進行特征提取,令x={x1,x2,…,xn}表示最大特征值與最小特征值之比的特征值。
本文采用隸屬度函數對模糊邊界進行分類,當隸屬度為1時,代表PU絕對存在;當隸屬度為0時,代表PU絕對不存在;當隸屬度越接近1時,代表PU存在的可能性越大;越接近0,則代表PU不存在的可能性越大。此方法可以對樣本點進行進一步的特征處理,提高樣本點的分類準確度,使系統在SNR較低、距離較遠等惡劣環境下也有較好的數據感知性能。
隸屬度函數如下式所示:
(6)
uA(x)為x對模糊集合A的隸屬度。uA(x)越接近于0,表示x屬于集合A的程度越??;否則表示x屬于集合A的程度越大。uA(x)用札德(Zadeh)記號法可表示為
(7)
從圖3可以看出,該函數式單調遞增并連續,且存在兩個邊界值λ1和λ2,區間(0,λ1)所表示的是絕對的噪聲信號區域,區間(λ2,∞)所表示的是絕對的信號區域,區間(λ1,λ2)所代表的區域是“可能”區域,有一定的概率屬于噪聲信號,也有一定的概率屬于PU信號。
本文中的離群點指MU為了干擾整個感知系統產生的偏離正常感知數據的數據對象,它與正常的感知數據有著顯著的不同。離群點挖掘就是找出行為異常并且不同于其他感知數據的數據對象,并將其排除在感知數據集之外。
離群點的主要包括三種類型:第一種是全局離群點,是指離群點明顯偏離集中的數據集;第二種是情景離群點,是指在某些情景中,離群點與所給定的集中數據有顯著差異;第三種是集體離群點,是指多個離群點作為整體偏離所給定的數據集。本文主要采用的是基于距離數值檢測的循環嵌套檢測方法對每個用戶(包括MU)頻譜進行檢測,將所檢測到的數據對象進行特征值的模糊處理,將所處理的數據遞交給FC,FC會對MU產生的離群點進行挖掘排除及融合。算法步驟如下:
Step1 輸入循環次數n、樣本特征值x、當前迭代次數t、最大迭代次數maxite、系數μ。
Step2 初始化數據均值mean、方差std。
Step3 判斷(x-mean)<μ×std是否滿足。
Step4 若Step 3不成立,則把該數據點x剔除。
Step5 保留使Step 3成立的數據點,更新mean、std、t=t+1。
Step6 判斷mean是否收斂,或者是否迭代到最大次數maxite。
Step7 若Step 6成立則輸出保留下來的x,否則返回Step 3,直至Step 6成立。
Step8 對保留下來的x進行數據融合,循環n次,直至輸出樣本數據集W={c1,c2,c3,…,cH}。
在頻譜感知中,數據樣本需要聚類成兩個類[12-13]。由于K-means聚類算法可伸縮性強,運行速度快,經常被應用于頻譜感知技術中[12,14]。但K-means在算法初始階段時需要選擇初始的聚類中心,如果選擇不當,會導致產生無效的聚類結果。該算法很大程度上受到初始聚類中心的影響,本文采用K-means++算法解決了此問題。
K-means++ 算法:按照聚類中心是互相離得越遠越好的原則進行選取,在選取第一個聚類中心時同樣采用隨機的方法。
Step1 輸入數據集W={c1,c2,c3,…,cH}。
Step2 從數據集中隨機選取一個點作為初始化的聚類中心,如ψ1=c1。
Step4 重復Step 3直到選出K個聚類中心。
Step5 計算數據集中每個樣本ci與K個聚類中心的距離,并將其分到距離最小的聚類中心對應的類中。
Step7 重復Step 5~6,直至ψk不變化,輸出ψk。
把數據集分為訓練集И和測試集Й,訓練集И送入K-means++算法得到聚類中心ψk,利用公式(8)對測試集Й進行分類操作:
(8)
式中:ξ是一個度量參數,且ξ>0。如果上式成立,則可判定為信道可用,否則判定信道不可用。
本文的PU信號選擇AM信號,設CU的個數為100,其中HU為85,MU為15,FU所接收到的數據對象R=100。圖4和圖5分別給出了模糊處理前后的聚類圖,圖中紅色的“*”代表PU處于活躍的狀態,藍色的“×”代表PU處于空閑狀態。通過對比觀察圖4和圖5樣本點坐標和聚類中心的坐標可以看出,未進行模糊處理的PU活躍和PU空閑的聚類中心分別是(1.139,1.141)和(1.146,1.144),聚類中心的歐氏距離很近。在進行模糊處理之后,PU活躍和空閑的聚類中心變為(-1.195,-1.294)和(0.806 7,0.771 4),兩個簇的聚類中心較遠。經過模糊處理后,各個樣本點之間的歐氏距離都成倍數增加,顯著提升了算法的性能和分類的準確率。
圖4 模糊處理前聚類圖
如圖6所示,黑色的曲線代表未進行數據的模糊處理的ROC(Receiver Operating Characteristic)曲線,紅色的曲線代表進行了模糊處理后的ROC曲線,可以看出當SNR為-17 dB時,信號噪聲的環境較好,經過模糊處理后的數據展示了良好的收斂速度和準確率;同時在SNR為-19 dB時,經過模糊處理后的數據比未經過模糊處理的數據性能更好。
圖6 模糊處理前后ROC圖
圖7展示了聚類算法在不同的MU和HU配比下的ROC曲線,圖中紅色的線代表K-means++算法的分類性能,黑色的線代表K-means的分類性能。對比曲線可以看出,無論是哪一種MU和HU配比,采用K-means++聚類算法相比較于K-means聚類算法,曲線的收斂速度和算法性都有顯著提升。
從圖7也可以看出不同MU與HU配比對算法性能的影響:當HU為85 dB、80 dB時,MU對應為15 dB、20 dB,對比曲線可以看出,無論是哪一種配比,數據的模糊處理機制都能顯著提升整個CSS系統的性能。
圖7 不同的MU和HU配比下的ROC圖
圖8對比了多組在不同SNR情況下采用K-means++的聚類算法和采用K-means聚類算法的ROC曲線圖,從圖中可以看出,無論SNR為多少,K-means++的性能效果都比K-means要穩健,對MU攻擊的抵御更加有效。
圖8 K-means++與K-means ROC對比
本文提出了對感知數據進行模糊處理的機制、基于離群點挖掘排除MU攻擊算法和K-means++的聚類算法。模糊處理機制可以有效增加不同簇數據對象的歐氏距離,有利于對數據進行分類處理,提高了認知無線電網絡系統的穩定性,使得系統在低信噪比的惡劣情況下也能保持良好的性能;采用基于離群點挖掘排除MU攻擊,有效抵御了任何攻擊方式,不限制于某一固定攻擊方式;在分類階段,采用K-means++算法對數據進行分類,既避免了繁雜的門限推導,還改進了采用K-means的不足,在其基礎上提高了CSS系統的性能。
接下來的工作將研究在低信噪比情況下能感知多個主用戶信號的算法,優化感知算法的復雜度,以使在大范圍惡意用戶攻擊的情況下算法仍能保持良好的感知性能。