劉 錚,馮永新,錢 博
(沈陽理工大學(xué)信息科學(xué)與工程學(xué)院,沈陽 110159)
跳頻技術(shù)擁有良好的通信性能及較強(qiáng)的抗干擾能力。 在微電子和數(shù)字信號處理技術(shù)高速發(fā)展的今天,跳頻通信技術(shù)不僅在戰(zhàn)術(shù)電臺等軍事領(lǐng)域中大顯身手[1-2],同樣廣泛應(yīng)用于全球移動通信、雷達(dá)、微波、無線局域網(wǎng)、室內(nèi)無線通信、衛(wèi)星通信、水下通信等多個領(lǐng)域[3-4]。 通信對抗是作戰(zhàn)雙方圍繞電磁頻譜掌控權(quán),利用電子設(shè)備所展開的斗爭。 現(xiàn)代化作戰(zhàn)中,掌握信息權(quán)尤為重要。因此,針對跳頻通信開展的通信對抗技術(shù)的研究具有重要的實用價值[5-7]。
隨著人工智能的普及,基于強(qiáng)化學(xué)習(xí)的通信對抗研究取得較大突破[8-10],文獻(xiàn)[11]針對認(rèn)知通信對抗提出一種面向不同場景的策略并將K 搖臂賭博機(jī)等三種強(qiáng)化學(xué)習(xí)方法進(jìn)行比對,證明智能方法的可行性。 文獻(xiàn)[12]基于Q 學(xué)習(xí)研究了一種無線信號干擾方法,該方法通過決策出最佳干擾功率和信道達(dá)到干擾的目的。 文獻(xiàn)[13]針對抗干擾技術(shù),提出0 -1bit 量化狀態(tài)表征,利用Q學(xué)習(xí)算法實現(xiàn)干擾規(guī)避。 文獻(xiàn)[14]提出一種自舉專家軌跡分層強(qiáng)化學(xué)習(xí)的方法對干擾資源的分配進(jìn)行決策,按照檢測出來的跳頻點劃分各子頻段,再對干擾的帶寬和頻段進(jìn)行分層決策,使其可以在有限干擾資源下,通過更小的干擾帶寬實現(xiàn)最佳干擾效果。 以上文獻(xiàn)的信號干擾技術(shù)研究大部分是基于調(diào)制樣式、信道和功率,或只針對諸如帶寬等單一數(shù)據(jù)進(jìn)行決策,缺乏將強(qiáng)化學(xué)習(xí)與跳頻干擾結(jié)合的案例。
本文圍繞決策空間和優(yōu)化配置干擾機(jī)資源的綜合考量,針對跳頻信號高效抗干擾的特性,結(jié)合深度強(qiáng)化學(xué)習(xí)理論,提出基于DQN 的跳頻信號干擾決策方法,以干擾功率、駐留時間、跳頻頻率集作為決策因子進(jìn)行最優(yōu)干擾動作的決策,以達(dá)到優(yōu)化配置干擾機(jī)資源的目的。
跳頻通信利用二進(jìn)制偽隨機(jī)碼序列對載波振蕩器的輸出頻率進(jìn)行離散控制,使發(fā)射信號的頻率隨著偽隨機(jī)碼的變化進(jìn)行跳變[15]。 跳頻通信系統(tǒng)示意圖如圖1 所示。
圖1 跳頻通信系統(tǒng)示意圖
由偽碼發(fā)生器、指令譯碼器和頻率合成器組成跳頻通信中的載波發(fā)生器和本地振蕩器,二者的頻率在常規(guī)通信系統(tǒng)中是相同的,在跳頻通信系統(tǒng)中是隨時間不斷跳變的。 發(fā)射機(jī)的發(fā)射頻率由偽碼發(fā)生器控制在一個收發(fā)雙方約定好的頻率集內(nèi)進(jìn)行跳變,接收機(jī)的頻率合成器依照同樣的順序跳變。 信號在接收機(jī)經(jīng)過混頻后得到一個頻率不變的中頻信號,經(jīng)中頻濾波器再送入解調(diào)器進(jìn)行解調(diào),恢復(fù)原始數(shù)據(jù)。
因為跳頻通信的頻率會隨時間不斷跳變且由偽隨機(jī)碼序列決定跳變順序,提高了干擾跳頻信號的難度。
跳頻通信是無線通信的一種,而無線通信開放的信號傳輸特性能夠讓干擾方通過阻塞物理層無線信道的方法對目標(biāo)信號產(chǎn)生干擾,特別是在對通信方的先驗知識了解不充足的情況下,僅對信號功率、傳輸時間、通信頻率等參數(shù)信息通過頻譜覆蓋的方式即可實現(xiàn)對通信過程的有效干擾[16]。 針對不同的通信體制可以采取不同的干擾方式,目前常用的干擾方式有噪聲干擾、音調(diào)干擾、掃頻干擾、脈沖干擾、跟蹤干擾以及靈巧干擾。針對跳頻信號,應(yīng)用最為廣泛的干擾方式為跟蹤干擾,跟蹤干擾通常會將頻率定位到跳頻發(fā)射機(jī)的工作頻率上并識別目標(biāo)信號,實施干擾。 因跳頻信號的傳播時間和處理時間較快,為滿足對跟蹤時間的要求,干擾機(jī)需要安裝在如圖2 所示的橢圓上或橢圓內(nèi)的任意方位,發(fā)射機(jī)和接收機(jī)在橢圓的兩個焦點位置。
圖2 干擾場景
該橢圓滿足公式(1)所示條件。
式中:DTJ是干擾機(jī)到發(fā)射機(jī)的距離;DJR是干擾機(jī)到接收機(jī)的距離;DTR是發(fā)射機(jī)到接收機(jī)的通信距離;TJ是干擾機(jī)的處理時間;Td是通信信號的駐留時間;c是電波傳播的速度;γ是必須受到有效干擾的駐留時間占比。
為使跟蹤干擾有效,γ取決于發(fā)射機(jī)到接收機(jī)的距離與發(fā)射機(jī)到干擾機(jī)再到接收機(jī)的總距離之差,并會受到干擾機(jī)做出干擾策略的處理時間的影響。 實踐證明,當(dāng)信號傳輸被干擾30%以上,就會大大降低信息的理解度[17],可阻止信息的有效傳輸。 因此,30%可以作為影響通信正常傳輸?shù)拈T限指標(biāo)。
跳頻信號干擾整體結(jié)構(gòu)框圖如圖3 所示。
圖3 跳頻信號干擾整體結(jié)構(gòu)框圖
圖3 中左半部分為跳頻通信過程,主要包含跳頻通信系統(tǒng)中的發(fā)射機(jī)、信道和接收機(jī)三部分,用于驗證干擾決策效果,同時為基于DQN 的干擾決策網(wǎng)絡(luò)提供反饋參數(shù)。
圖3 中右半部分為干擾決策過程,主要包含時頻分析、數(shù)據(jù)預(yù)處理、基于DQN 的干擾決策網(wǎng)絡(luò)和干擾信號四個部分。 通過對信道中的跳頻信號進(jìn)行時頻分析、數(shù)據(jù)預(yù)處理,提取電磁頻譜特征參數(shù)輸入到基于DQN 的干擾決策網(wǎng)絡(luò)中,進(jìn)行干擾參數(shù)決策,并產(chǎn)生干擾信號對接收機(jī)實施干擾。根據(jù)反饋參數(shù)迭代調(diào)整決策網(wǎng)絡(luò)中的參數(shù),優(yōu)化決策動作。
本文算法采用短時傅里葉變換的方式進(jìn)行時頻分析,利用窗函數(shù)h(t)處理跳頻信號。 將跳頻信號在時間上劃分為若干段,每一小段按平穩(wěn)信號進(jìn)行傅里葉變換,以估計出每一個時間窗內(nèi)信號的頻率,從而得到不同時間上信號的頻譜。 對于信號s(t),其短時傅里葉變換的定義為
式中:STFTs(t,f)可以看作是信號s(t)在給定t時刻的頻譜;h(τ-t)為窗函數(shù),常用的窗函數(shù)有海寧窗、海明窗等。 由于短時傅里葉變換需要對時域信號進(jìn)行加窗處理,窗函數(shù)的大小影響時頻分辨率,重新選擇窗函數(shù)可以改變分辨率。 跳頻信號的時頻分析結(jié)果如圖4(a)所示,圖4(b)為時頻分析結(jié)果三維圖像。
圖4 跳頻信號時頻分析結(jié)果
為降低時頻分析結(jié)果中噪聲成分的影響,將時頻變換后的圖像進(jìn)行二值化處理,以便于識別信號峰值。 將二值化后的矩陣進(jìn)行降維處理,提取信號頻率信息。 圖5 為將時頻分析結(jié)果進(jìn)行二值化處理和降維后結(jié)果。
圖5 數(shù)據(jù)預(yù)處理結(jié)果
接收信號經(jīng)時頻分析和數(shù)據(jù)預(yù)處理后,將降維后結(jié)果作為干擾決策網(wǎng)絡(luò)的跳頻信號特征參數(shù)加入到?jīng)Q策網(wǎng)絡(luò)中進(jìn)行訓(xùn)練。
2.3.1 決策參數(shù)
假設(shè)干擾機(jī)可以在信道中接收到該通信系統(tǒng)的跳頻信號,若產(chǎn)生能夠覆蓋住該信號的干擾信號,即可以影響到該跳頻通信系統(tǒng)的誤碼率。
本文中設(shè)定的干擾決策空間的決策參數(shù)有:P、T和F。P為干擾功率,即干擾信號的功率大?。籘為駐留時間,表示每一段干擾信號的跳頻駐留時間占通信方跳頻駐留時間的多少;F為頻率集,由通信系統(tǒng)輸入的跳頻信號進(jìn)行短時傅里葉變換得到。
將以上決策參數(shù)進(jìn)行組合,構(gòu)成基于DQN 的干擾決策網(wǎng)絡(luò)的干擾動作。 基于DQN 的干擾決策網(wǎng)絡(luò)對環(huán)境中的干擾行為進(jìn)行學(xué)習(xí),并由此預(yù)測最佳動作。
2.3.2 反饋參數(shù)
強(qiáng)化學(xué)習(xí)一般會將決策的評估效果作為反饋參數(shù)以獎勵的形式反饋給訓(xùn)練模型,如何評估干擾信號的干擾效果是干擾決策網(wǎng)絡(luò)設(shè)計的考量,文獻(xiàn)[18]論證了以誤碼率作為評估效果的方法,本文為了評估算法的決策效果,照此采用誤碼率作為通信過程向決策網(wǎng)絡(luò)的反饋參數(shù)。 當(dāng)無法獲得誤碼率時,可以將吞吐量、功率值作為反饋參數(shù)。 在跳頻信號干擾決策的應(yīng)用中,為提升決策的有效性與適用性,需要匯總通信環(huán)境中更多的潛在信息。
假設(shè)當(dāng)誤碼率大于閾值時認(rèn)為干擾機(jī)正在進(jìn)行有效干擾,否則干擾機(jī)的干擾無效。 本文設(shè)該閾值為0.03,誤碼率小于該閾值時獎勵為零,當(dāng)誤碼率大于0.03 時獎勵r的計算方法為
式中:α為獎勵調(diào)節(jié)系數(shù),調(diào)節(jié)累計獎勵不會過大或過??;s0為干擾機(jī)輸出功率;BER為誤碼率。 由公式(3)可知,決策占用的干擾資源越少且達(dá)到的誤碼率越大,獎勵值越大,即干擾資源消耗的多少會以獎勵的形式反饋到?jīng)Q策網(wǎng)絡(luò)中。 同時,通過調(diào)節(jié)公式(3)中獎勵調(diào)節(jié)系數(shù)α,可以使誤碼率與功率在函數(shù)中達(dá)到所需配比。
2.3.3 干擾決策網(wǎng)絡(luò)
在干擾決策過程中,干擾決策網(wǎng)絡(luò)獲取跳頻信號時頻分析和預(yù)處理后的特征參數(shù),通過干擾動作影響跳頻通信過程。 當(dāng)執(zhí)行一個干擾動作時,通信環(huán)境就會發(fā)生變化,干擾決策網(wǎng)絡(luò)會根據(jù)設(shè)定的獎勵計算方法計算出一個獎勵值。 各時刻獎勵按一定折扣率的積累值,稱為折扣回報,計算式為
式中:Gt為折扣回報;γ為折扣率;Rt為t時刻獲得的獎勵,式(4)可以理解為t時刻及之后一段時間內(nèi)的累計獎勵,而干擾決策網(wǎng)絡(luò)的目標(biāo)是得到能使折扣回報最大的干擾動作。 本文采用的DQN 算法[10]綜合了神經(jīng)網(wǎng)絡(luò)擅長提取特征和強(qiáng)化學(xué)習(xí)善于進(jìn)行決策的特性。 由于干擾決策網(wǎng)絡(luò)中的狀態(tài)空間和干擾動作的參數(shù)維度少,本文選擇BP 神經(jīng)網(wǎng)絡(luò)。 基于DQN 的干擾決策網(wǎng)絡(luò)結(jié)構(gòu)如圖6 所示。
圖6 基于DQN 的干擾決策網(wǎng)絡(luò)結(jié)構(gòu)圖
圖6 中的通信環(huán)境為包含跳頻通信過程的交互環(huán)境并默認(rèn)信號已通過時頻分析與預(yù)處理環(huán)節(jié)。 干擾決策網(wǎng)絡(luò)引入了回放記憶庫功能,在每次行動后獲取的經(jīng)驗存儲到回放記憶庫中,每條經(jīng)驗由(s,a,r,s′)組成的觀察空間表示,其中s為當(dāng)前通信環(huán)境狀態(tài),由跳頻信號特征參數(shù)和干擾信號的決策參數(shù)組成;a為干擾動作;r為獎勵,取值與反饋參數(shù)有關(guān);s′為受動作影響后的下一環(huán)境狀態(tài)。 在干擾決策網(wǎng)絡(luò)運行過程中,會隨機(jī)從記憶庫中間隔抽取一條經(jīng)驗作為預(yù)測網(wǎng)絡(luò)的輸入,以打亂輸入內(nèi)容的相關(guān)性,有利于決策網(wǎng)絡(luò)的快速穩(wěn)定更新。
為提升干擾決策網(wǎng)絡(luò)的性能,設(shè)置兩個結(jié)構(gòu)完全一致但神經(jīng)網(wǎng)絡(luò)參數(shù)不同的網(wǎng)絡(luò),分別稱為預(yù)測網(wǎng)絡(luò)和目標(biāo)網(wǎng)絡(luò)。 預(yù)測網(wǎng)絡(luò)用于估計預(yù)測Q函數(shù)pedictQ,目標(biāo)網(wǎng)絡(luò)用于估計目標(biāo)Q 函數(shù)targetQ。pedictQ表示為Q(s,a;θ),θ為神經(jīng)網(wǎng)絡(luò)參數(shù)。targetQ值的大小代表了干擾動作的好壞程度,是對行動過程的記錄,計算方法為
式中 maxQ(s′,a′,θ)表示下一狀態(tài)s′和動作a′的最大值函數(shù)。
預(yù)測網(wǎng)絡(luò)中的參數(shù)θ通過梯度計算引導(dǎo)更新,計算方法為
式中η為學(xué)習(xí)率。 干擾決策網(wǎng)絡(luò)每隔一定迭代次數(shù)將預(yù)測網(wǎng)絡(luò)中的神經(jīng)網(wǎng)絡(luò)參數(shù)全部復(fù)制給目標(biāo)網(wǎng)絡(luò)。 由于周期內(nèi)目標(biāo)網(wǎng)絡(luò)中的神經(jīng)網(wǎng)絡(luò)參數(shù)相對固定,因此在降低算法訓(xùn)練難度的同時也提升了穩(wěn)定性。 通過預(yù)測Q 函數(shù)和目標(biāo)Q 函數(shù)計算均方誤差損失函數(shù)LOSS(θ),得
損失函數(shù)可以判斷預(yù)測Q 函數(shù)向目標(biāo)Q 函數(shù)收斂情況。
綜合時頻分析和數(shù)據(jù)預(yù)處理的內(nèi)容,總結(jié)基于DQN 的跳頻干擾決策算法步驟如下。
步驟1初始化訓(xùn)練參數(shù),初始化記憶庫D,設(shè)置記憶容納數(shù)據(jù)條數(shù)N。
步驟2輸入跳頻信號,通過短時傅里葉變換生成時頻矩陣c。
步驟3將時頻矩陣c二值化并映射為二維數(shù)組c′,提取跳頻駐留時間ti和跳頻頻點{fi}。
步驟4用隨機(jī)參數(shù)θ初始化預(yù)測網(wǎng)絡(luò)與目標(biāo)網(wǎng)絡(luò)。
步驟5將跳頻駐留時間ti、跳頻頻點{fi}、干擾功率Pi、干擾駐留時間Ti、干擾頻率集{Fi}、組成狀態(tài)st輸入到神經(jīng)網(wǎng)絡(luò)。
步驟6第一次運行時隨機(jī)選擇干擾動作at,之后的運行以探索率ε隨機(jī)選擇干擾動作at,或以 1 -ε的概率按at= argmaxaQ(st,a;θ) 選擇動作。
步驟7觀察獎勵rt和新狀態(tài)st+1,并與動作at和狀態(tài)st一同存入記憶庫D中。
步驟8從記憶庫D中隨機(jī)間隔抽取樣本送入網(wǎng)絡(luò)。
步驟9循環(huán)過程中執(zhí)行梯度算法,更新決策網(wǎng)絡(luò)中的神經(jīng)網(wǎng)絡(luò)參數(shù)θ。
步驟10當(dāng)損失函數(shù)小于閾值時輸出干擾動作。
為驗證提出方法的可行性,在Python 軟件環(huán)境下進(jìn)行仿真驗證。 算法仿真參數(shù)為:干擾功率參數(shù)P包含0.5 W、2 W、8 W 和32 W 四種選擇;駐留時間參數(shù)T包含占比50%、75%和100%三種選擇;折扣率γ為 0.9;學(xué)習(xí)率η為 0.001;探索率ε為 0.1;迭代次數(shù)為 1 000 次;每間隔 200 次進(jìn)行一次回放;每間隔200 次進(jìn)行一次目標(biāo)網(wǎng)絡(luò)與預(yù)測網(wǎng)絡(luò)的同步。 回放記憶庫中回放容量的大小會導(dǎo)致預(yù)測Q 函數(shù)和損失函數(shù)的變化,最終影響到?jīng)Q策結(jié)果的穩(wěn)定性和準(zhǔn)確度,實驗觀察不同大小的回放容量對預(yù)測Q 函數(shù)以及損失函數(shù)的影響,結(jié)果如圖7、圖8 所示。
圖7 預(yù)測Q 函數(shù)分析
圖8 損失函數(shù)分析
由圖7 可見,隨著測試次數(shù)的增加,預(yù)測Q 函數(shù)逐漸增大,說明網(wǎng)絡(luò)選取了最優(yōu)策略;損失函數(shù)逐漸減小表明預(yù)測網(wǎng)絡(luò)正向目標(biāo)網(wǎng)絡(luò)收斂,說明決策網(wǎng)絡(luò)預(yù)測值接近真值。 同時可見回放容量越小,預(yù)測Q 函數(shù)雖然能夠較快得到最優(yōu)解但最優(yōu)解之間波動較大,不夠穩(wěn)定,這可能引起高估問題。 由圖8 可見,隨著回放容量越大,損失函數(shù)的收斂速度越慢但收斂效果越好。 說明回放容量大小影響訓(xùn)練速度和訓(xùn)練效果,因此在訓(xùn)練時需要適當(dāng)選擇回放記憶庫的回放容量。
獎勵值大小反映了干擾動作的好壞程度,圖9 給出了實驗過程中一次訓(xùn)練中迭代次數(shù)與獎勵值的關(guān)系。 由圖9 可見,隨著迭代次數(shù)的增加,獎勵值大多數(shù)集中在2 000 附近,說明決策趨于穩(wěn)定。
圖9 獎勵值分析
實驗驗證本文獎勵函數(shù)與常規(guī)獎勵函數(shù)對通信過程的誤碼率影響,如圖10 所示。
圖10 誤碼率分析
由圖10 可見,未采用本文獎勵函數(shù)時,誤碼率維持在0.45 左右,誤碼率較高,也表明了干擾機(jī)功耗更高。 采用本文的方法使誤碼率維持在0.13 左右,說明干擾決策選擇了以少量消耗達(dá)到有效干擾的干擾動作,而不僅僅以高誤碼率為動作的選擇依據(jù)。
在通信對抗的背景下,結(jié)合強(qiáng)化學(xué)習(xí)理論提出了基于DQN 的跳頻干擾決策方法,通過對干擾功率、駐留時間和頻率集參數(shù)進(jìn)行決策,并設(shè)計一種獎勵函數(shù),使干擾機(jī)功耗與誤碼率之間互相約束,減少了干擾機(jī)資源的浪費。
通過建立跳頻通信過程仿真環(huán)境,以仿真環(huán)境中誤碼率作為評價干擾效果的指標(biāo),經(jīng)過仿真驗證,算法中的預(yù)測Q 函數(shù)逐漸收斂到最佳,損失函數(shù)收斂于目標(biāo)網(wǎng)絡(luò),獎勵值趨于穩(wěn)定;在有效干擾的前提下,決策會選擇誤碼率與干擾機(jī)輸出功率維持平衡的干擾動作,以實現(xiàn)跳頻信號特征參數(shù)的有效檢測,對目標(biāo)信號實施干擾的研究目的,并可達(dá)到合理消耗干擾機(jī)資源的效果。