鮑家旺,丘航丁,徐浩東,馬 馳
(福州大學 電氣工程與自動化學院,福建 福州 350108)
快速發(fā)展的物聯(lián)網(wǎng)會產(chǎn)生巨量的數(shù)據(jù),這增加了對頻譜資源的需求,導致頻譜資源稀缺的問題[1]。認知無線電(Cognitive Radio,CR)是解決這一問題的有效工具。電視的空白頻段是第一個被考慮的頻譜共享案例。大多數(shù)物聯(lián)網(wǎng)設備通過無線通信技術進行互聯(lián),由電池供電。電池容量限制所造成的能量問題是制約物聯(lián)網(wǎng)發(fā)展的另一問題。能量采集(Energy Harvesting,EH)技術可以從各種綠色能源(如光、熱、風和射頻源)中獲取能量,延長了能量限制網(wǎng)絡的使用壽命[2]。許多研究考慮將EH和CR技術與物聯(lián)網(wǎng)結合起來,提出了能量采集認知物聯(lián)網(wǎng)(EH-CIoT)。
CR網(wǎng)絡由于其開放的特點,比其他無線電網(wǎng)絡更容易受到安全威脅,受到的攻擊包括主用戶仿真攻擊、學習攻擊、竊聽和干擾等。其中,干擾攻擊被認為是最具有威脅性的攻擊,它會導致系統(tǒng)吞吐量下降、網(wǎng)絡癱瘓等。文獻[3]提出了一種基于批處理的安全感知協(xié)議。最近,深度強化學習(Deep Reinforcement Learning,DRL)技術被認為可以幫助物聯(lián)網(wǎng)在環(huán)境和干擾源之間存在連續(xù)交互的情況下實現(xiàn)最優(yōu)的傳輸策略。文獻[4]將雙DQN(Deep Q-Network)算法和跳頻策略應用于多用戶環(huán)境下的干擾攻擊。然而,上述現(xiàn)有的工作以及對抗干擾策略的研究都只考慮了短視或離線模型。短視的政策只考慮即時獎勵,而忽略了長期回報,這不是連續(xù)CIoT系統(tǒng)的最優(yōu)策略。離線策略假設環(huán)境動態(tài)是已知的,但在發(fā)射機或控制器上是非因果關系的。在上述文獻的基礎上,本文將研究在干擾攻擊下基于DRL的EH-CIoT傳輸算法,以最大限度地提高系統(tǒng)的長期吞吐量。
本文考慮了CR的交織模式,即一種保護性的頻譜共享方案。EH-CIoT系統(tǒng)模型如圖1所示,主要由三部分組成:主用戶網(wǎng)絡(Primary User Network,PUN),由M個主用戶(Primary Users,PUs)和1個基站(Base Station,BS)組成;認知物聯(lián)網(wǎng)絡(CIoTN)由1個 代 理 基 站(Agent Base Station,ABS)和N個EH-C節(jié)點組成;1個惡意攻擊節(jié)點(Malicious Attack Node,MAN)。PUN覆蓋了K個正交電視頻譜信道,CIoTN位于PUN的覆蓋區(qū)域內,所有設備在同步的時隙模式下工作。假設ABS能獲得完美的頻譜感知,Ik(t)={0(busy),1(idle)}表示ABS在t時隙感知到的第k個信道的狀態(tài),空閑通道數(shù)量為
圖1 EH-CIoT系統(tǒng)模型
在CIoTN中,每個EH-C節(jié)點都有相同的配置,節(jié)點不能同時執(zhí)行射頻能量采集和信道接入。EH-C節(jié)點在每個時隙t的開始將自身的電池水平狀態(tài)集通過專用的控制信道發(fā)送到ABS。ABS在當前時隙t根據(jù)感知到的信息來確定所有EH-C節(jié)點的工作模式(采集模式或傳輸模式),分配所有EH-C節(jié)點的傳輸功率并廣播決策。表示第i個EH-C節(jié)點在第t個時隙的發(fā)射功率,設EH-C節(jié)點最大發(fā)射功率為即因此,在第t個時隙,所有EH-C節(jié)點的功率分配策略集合表示為第i個EH-C節(jié)點在第t個時隙的工作模式Mi(t)可以描述為
圖2 EH-C節(jié)點時隙
上述系統(tǒng)均有功率約束。主基站(Primary Base Station,PBS),MAN和ABS由電網(wǎng)供電,EH-C節(jié)點由可充電電池供電。
1.2.1 能量采集
第i個EH-C節(jié)點在第t個時隙采集的能量Ei(t)為
式中:η表示能量轉換率,表示與i不同的第s個EH-C節(jié)點的發(fā)射功率,為干擾功率。第t個時間隙內所有EH-C節(jié)點總的采集能量集合記為
1.2.2 電池更新
第t個時隙中所有EH-C節(jié)點的電池狀態(tài)集為電池容量標記為Bmax。第i個EH-C節(jié)點的電池狀態(tài)從第t個時隙到第t+1個時隙的演變可以表示為
本文考慮一種廣泛使用的主動干擾攻擊,它不知道設備的任何活動,只根據(jù)預定義的策略發(fā)射干擾脈沖,用策略表示,其中Ik(t),分別為在時隙t與信道k的干擾間隔、干擾概率和干擾功率。本文考慮兩種攻擊方法:
(1)隨機干擾器,在每個時隙t以功率Pk J(t)隨機選擇干擾一個信道;
(2)掃描干擾器,在一個時隙t內以概率Pk J(t)從K個信道中順序干擾KN個信道。
干擾器的最大發(fā)射功率為PJmax,ABS接收到的第i個EH-C節(jié)點的信噪比(Signal to Interference plus Noise Ratio,SINR)可用以下公式計算:
本文的主要目的是在惡意攻擊的環(huán)境下最大化長期信道吞吐量。CIoTN的瞬時和吞吐量為
式中:0<γ<1表示折扣函數(shù)。利用干擾模型,將累積吞吐量最大化問題表述如下:
式中:E[·]表示期望的給定值。式(11)所列的條件保證EH-C節(jié)點用于傳輸?shù)哪芰坎怀^可用的剩余能量,保證接收的信噪比不小于接收閾值SINRthreshold,保證接入信道數(shù)不大于可用信道數(shù)。
本文構建一個環(huán)境模型,用一個MDP來描述要解決的問題[5],即MDP=(S,A,Psa,R,γ),其中S表示狀態(tài)空間,A表示動作空間,Psa為狀態(tài)轉移概率,R為即時獎勵,γ是折扣因子。Agent是系統(tǒng)模型中的ABS。
狀態(tài)空間S:第t個時隙的狀態(tài)空間定義為
式中:I(t)={I1(t),…,IK(t)}表示信道狀態(tài)集。
動作空間A:第t個時間段的動作向量定義為:At=P(t)。ABS以連續(xù)功率分配作為動作值。
即時獎勵R:在采取行動后,ABS將獲得即時獎勵:
深度確定性策略梯度(DDPG)算法由策略網(wǎng)絡、價值網(wǎng)絡和經(jīng)驗回放池三部分組成。網(wǎng)絡由4個深度神經(jīng)網(wǎng)絡組成,即在線批評網(wǎng)絡θQ,在線策略網(wǎng)絡θ μ,目標批評網(wǎng)絡θQ′和目標策略網(wǎng)絡θ μ′。更新網(wǎng)絡參數(shù)時,從容量為C的經(jīng)驗回放池D中抽取NB份數(shù)據(jù),第i份表示為(sx,ax,rx,sx+1)。讓它們通過梯度上升/下降算法來訓練網(wǎng)絡參數(shù)。
在線批評網(wǎng)絡的損失函數(shù)為差值的均方誤差:
目標值yx的計算方法如下:
在線策略網(wǎng)絡的損失函數(shù)為:
對于兩個目標網(wǎng)絡的更新,采用軟更新方法:
式中:ξ∈(0,1]表示更新速率,具體步驟如算法1所示。每一步動作都從期望為μ(St|θ μ)方差εσ2的隨機過程中選擇,即At~N(μ(St|θ μ),εσ2),其中ε是一個參數(shù),用于減弱訓練中動作的隨機性。
算法1干擾攻擊下基于DDPG的資源分配算法
初始化:初始化參數(shù)θQ和θ μ;清空D;動作隨機參數(shù)ε;EH-C節(jié)點的電池水平。
輸入:CIoT網(wǎng)絡仿真參數(shù),惡意攻擊節(jié)點參數(shù)。
步驟1 for 迭代次數(shù)episode=1,2,...,F(xiàn) do
步驟2 初始化環(huán)境狀態(tài)s0
步驟3 for 訓練步數(shù)t=1,2,...,G do
步驟4 選擇動作At~N(μ(St|θ μ),εσ2)
步驟5 獲得R(St,At)和下一個狀態(tài)St+1。
步驟6 將數(shù)據(jù)(St,At,Rt,St+1)保存至D
步驟7 ifD已滿,do
步驟8 采樣NB個數(shù)據(jù)(sx,ax,rx,sx+1)
步驟9 最小化L(θQ)更新在線批評網(wǎng)絡
步驟10 最大化L(θ μ)更新在線策略網(wǎng)絡
步驟11 按式(17)軟更新目標網(wǎng)絡
步驟12 衰減動作的隨機性:σ2←εσ2
步驟13 end for
步驟14 end for
輸出:每個時隙的最佳動作At。
本文模擬了惡意攻擊的多用戶認知物聯(lián)網(wǎng)模型。在1 km×1 km區(qū)域內,PBS位于[500,500],ABS位于[250,250]。N=10,K=10,M=3,T=1 s,交換所消耗的能量ef=0.01 J,最大干擾功率,能量轉換率η=0.8。每個結果都在Pytorch 1.7.1工具上實現(xiàn)。本文與以下算法進行了比較:
(1)隨機算法,隨機選擇傳輸信道,并隨機分配節(jié)點的功率;
(2)貪婪算法,感知空閑信道,以允許的最大功率傳輸數(shù)據(jù);
(3)SAC算法,連續(xù)控制的非策略DRL算法。
DDPG和SAC算法的在線和目標網(wǎng)絡分別包含L1=256和L2=256。激活函數(shù)設置為ReLU,并將優(yōu)化器都設置為Adam,學習率為0.004和0.002。軟更新速率ξ為0.005。迭代次數(shù)為300,每次迭代的步數(shù)為10~100。
首先比較了無干擾下的算法性能,結果如圖3(a)所示。DDPG算法在150次迭代后趨于收斂。SAC算法的收斂速度優(yōu)于DDPG算法。當?shù)鷶?shù)為80時,它趨于收斂。但DDPG比SAC獲得了更高的平均吞吐量(>30%)。這表明,與基于SAC的算法相比,DDPG算法更適合在CIoT環(huán)境中使用。圖3(b)和圖3(c)比較了四種算法在隨機和掃描干擾兩種主動干擾策略下的性能。與無干擾的情況相比,DDPG算法在隨機干擾和掃描干擾下的性能僅降低了約5%,而收斂后的SAC的性能降低了約15%。這兩種RL算法都明顯優(yōu)于傳統(tǒng)的隨機算法和貪婪算法。DDPG算法的性能是隨機算法的2.5倍,是貪婪算法的2倍。這表明,該算法能夠有效地學習主動干擾的固定策略,預測干擾,合理分配功率,從而減少干擾,提高吞吐量。
圖3 三種攻擊下的平均吞吐量
圖4顯示了這些算法在三種干擾情況下的能量效率。每焦耳能量可以通過系統(tǒng)發(fā)送的比特量稱為能量效率(b·J-1)。顯然,在三種干擾條件下,DDPG算法的能量效率最高,保證在6 b·J-1左右。SAC在干擾條件下的性能與隨機算法相當,均在3 b·J-1左右。貪心算法的性能最差,保持在1 b·J-1。這說明了該DDPG算法對每個EH-C節(jié)點的功率分配的合理性。
圖4 三種攻擊下的能量效率
本文研究了惡意攻擊環(huán)境下CIoTN的資源分配問題,目標是在抗干擾的同時使EH-CIoTN的長期吞吐量最大化。本文提出了一種基于DDPG的DRL算法,它的目標是在與動態(tài)環(huán)境交互、不斷學習攻擊策略、智能調整傳輸策略的過程中獲得最大的獎勵。仿真結果表明,無論是隨機干擾還是掃描干擾,DDPG算法都能更好地學習惡意節(jié)點的策略,系統(tǒng)性能明顯優(yōu)于其他算法。