劉 駿,王永華,王 磊,尹澤中
(廣東工業(yè)大學 自動化學院,廣州 510006)
伴隨著無線通信技術(shù)的迅猛發(fā)展,5G技術(shù)也迎來了更加廣泛的應(yīng)用,不同的終端和設(shè)備可以通過無線技術(shù)接入到互聯(lián)網(wǎng),基于5G技術(shù)的萬物互聯(lián)也變成了可能[1]。無線通信業(yè)務(wù)快速增長的同時也導致對頻譜需求的急劇增加,當前部分比較傳統(tǒng)且固定的靜態(tài)分配方法已無法滿足頻譜資源共享的需求[2]。認知無線電的目標是為了實現(xiàn)頻譜資源的高效利用,而功率控制技術(shù)作為一項重要的認知無線電技術(shù),自然也是頻譜共享領(lǐng)域的重要研究方向[3-4]。
發(fā)射功率是一種重要的無線通信資源,對于認知無線網(wǎng)絡(luò)(Cognitive Radio Network,CRN)的功率控制問題,目前已有很多相關(guān)的研究。文獻[5]研究了由一個基站和多個用戶組成的簡單物聯(lián)網(wǎng)系統(tǒng),使用深度Q網(wǎng)絡(luò)(Deep Q Network,DQN)解決了該場景下的訪問控制和連續(xù)控制問題,使得對于功率的發(fā)射控制更加靈活,但沒有考慮發(fā)射功率的損耗問題,并且算法的復雜度也比較高。文獻[6]提出了一種動態(tài)多目標方法用于認知無線電中的功率和頻譜分配,該方法的算法復雜度不是很高,并且有利于釋放認知無線電的潛能,但該方法沒有考慮頻譜分配的成功率以及發(fā)射功率的損耗問題。文獻[7]設(shè)計了一種分布式深度強化學習的功率控制方案,在該方案中CRN采用分層DQN來實現(xiàn)動態(tài)頻譜分配,算法復雜度較低,收斂速度較快,但卻沒有考慮到要最大化吞吐量上限和降低功率損耗等問題。文獻[8]提出將用戶社會關(guān)系考慮到頻譜的功率控制中并驗證了該方法的可行性,創(chuàng)新性地提供了一個新的應(yīng)用場景,但該方法的算法復雜度比較高,并且也沒有考慮到發(fā)射功率的損耗問題。
總的來說,目前的功率控制方法往往沒有很好地平衡次用戶(Second User,SU)的功率損耗和次用戶通信服務(wù)質(zhì)量(Quality of Service,QoS)之間的性能關(guān)系。本文為了解決認知無線網(wǎng)絡(luò)中多個用戶的動態(tài)功率控制問題,既保證SU本身的QoS,同時還要降低SU因發(fā)射功率不合理而造成的功率損耗,提出了一種基于SumTree采樣結(jié)合Double DQN的非合作式多用戶動態(tài)功率控制方法,可以解耦目標Q值動作的選擇和目標Q值的計算,能夠有效減少過度估計和算法的損失。在抽取經(jīng)驗樣本時采用結(jié)合優(yōu)先級和隨機抽樣的SumTree采樣方法,既能保證優(yōu)先級轉(zhuǎn)移也能保證最低優(yōu)先級的非零概率采樣。同時,建立了SU重疊式接入到主用戶(Primary User,PU)信道的動態(tài)頻譜資源分配模型,主次用戶為非合作式關(guān)系,SU可以不斷與輔助基站進行交互,在動態(tài)變化的環(huán)境下經(jīng)過不斷的學習,選擇以較低的發(fā)射功率完成功率控制任務(wù),達到減少能耗的目的。仿真結(jié)果表明,本文方法的算法損失函數(shù)更小,算法收斂速度更快,還能有效提高次用戶功率控制的成功率和次用戶總的吞吐量上限。
如圖1所示,本模型中有1個主基站(Primary Base Station,PBS),位于本模型靠近中心的位置,它能夠保障PU的正常通信。多個輔助基站(Auxiliary Base Station,ABS)隨機散布于模型中的各個區(qū)域,采集主次用戶接收信號強度信息(Received Signal Strength Information,RSSI)[9],同時還能夠與SU進行交互和通信,并把采集到的PU及SU的RSSI信息再傳送給SU。M個PU和N個SU(N>M)隨機散布于各個區(qū)域。采用自由路徑損耗的信道模型,主次用戶基于同一個信道進行通信,并且主次用戶為非合作式的關(guān)系,SU采用重疊式接入PU信道。
圖1 系統(tǒng)模型
在本模型中,SU采用重疊式接入PU信道,SU接入到PU的頻段是會對PU的通信造成一定干擾的,并且這個干擾會隨著SU數(shù)量的增多而增大。而PU和SU進行頻譜共享的一個重要要求是SU不能對PU的正常通信造成干擾,因此在進行功率控制時需要將SU的發(fā)射功率控制在一定的閾值之內(nèi)。但是,SU的發(fā)射功率過低會導致其無法滿足自身的QoS要求,甚至可能會導致SU的通信發(fā)生中斷。所以,對于功率控制技術(shù)而言,就是要處理好SU對PU的通信干擾問題,同時也要盡可能保證SU自身的QoS。這就需要SU在進行功率控制時尋找到發(fā)射功率的平衡點,通過學習主次用戶的RSSI信息自適應(yīng)地調(diào)整發(fā)射功率來完成通信任務(wù)。
信干噪比(Signal-to-Interference plus Noise Ratio,SINR)是衡量鏈路質(zhì)量的重要指標。定義第i個PU的信噪比為[10]
(1)
同理,定義第j個SU的信噪比為
j=1,2,…,N。
(2)
本模型的認知無線網(wǎng)絡(luò)環(huán)境是動態(tài)變化的,PU和SU都是通過信噪比來判斷自身的QoS。對于PU而言,設(shè)定任意主用戶i正常工作的要求為
γi≥μi。
(3)
為了滿足QoS,PU應(yīng)根據(jù)自身需要智能調(diào)整發(fā)射功率。而一種高效的PU功率控制策略能夠有效減少因頻繁切換帶來的能量損耗,從而可以在一定程度上節(jié)約能源。因此,本文引入一種較為高效且智能的PU功率控制策略[11]。
首先設(shè)置PU功率值集合為
Pi(t){P1,P2,…,Pl}。
(4)
定義PU的功率控制策略如下:
(5)
式中:
(6)
當前時刻對下一時刻的PU信噪比預測值為
(7)
式中:l為PU動作空間的長度。
該本策略通過判斷當前時刻PU信噪比是否達到閾值要求,并預測下一時刻是否能夠滿足要求,只通過一次切換即可完成功率發(fā)射。具體地,若t時刻PU信噪比低于要求閾值,但預測到下一時刻提高自身發(fā)射功率就能夠滿足要求,此時PU會增加發(fā)射功率;若t時刻PU已滿足閾值要求,且預測下一時刻下調(diào)功率仍然滿足要求,此時PU會減小發(fā)射功率以降低能耗。其余情況維持當前功率不變。
在實際情況中,SU接入到PU的頻段是會對PU的通信造成一定干擾的,而PU和SU進行頻譜共享的一個重要前提是SU不能對PU的正常通信造成干擾。所以對于SU的功率控制策略,本文將采用深度強化學習的方法,使SU通過不斷的學習,能夠智能選擇和更新自身的發(fā)射功率,達到提高頻譜資源利用率的目的。
為了模擬更加復雜的動態(tài)環(huán)境,本模型中的信道增益每隔一段時間會更新一次。根據(jù)香農(nóng)定理,第j個SU的吞吐量上限與信噪比間的函數(shù)可表示為[12]
Tj(t)=Wlb(1+ργj(t))。
(8)
在該動態(tài)變化的系統(tǒng)中,要保證系統(tǒng)的功率分配效果最佳,就是既要滿足PU的信噪比高于預設(shè)閾值,還要保證SU能夠通過不斷學習來調(diào)整自身發(fā)射功率,從而讓整個系統(tǒng)中SU總的吞吐量上限最大化。本節(jié)涉及到的系統(tǒng)參數(shù)如表1所示。
表1 系統(tǒng)參數(shù)
如圖2所示,為了解決認知無線網(wǎng)絡(luò)中多個用戶的動態(tài)功率控制問題,既保證SU本身的QoS,同時還要降低SU因發(fā)射功率不合理而造成的功率損耗,本文采用一種基于SumTree采樣結(jié)合Double DQN的非合作式多用戶動態(tài)功率控制方法(簡稱ST_double DQN方法)來進行求解。使用Double DQN算法來解耦目標Q值動作的選擇和目標Q值的計算,這樣可以有效減少過度估計。而普通的深度強化學習使用等概率隨機采樣進行經(jīng)驗回放,這樣會存在重要經(jīng)驗利用率不足和收斂速度較慢等問題。本文的SumTree采樣方法能夠?qū)?jīng)驗樣本賦予不同優(yōu)先級并在采樣時還加入隨機性,可以防止系統(tǒng)的過擬合,提高認知無線網(wǎng)絡(luò)的性能。本方法能夠在動態(tài)變化的環(huán)境下使SU經(jīng)過不斷的學習,選擇以較低的發(fā)射功率完成功率控制任務(wù),達到減少能耗的目的。
圖2 基于SumTree采樣結(jié)合Double DQN的非合作式多用戶動態(tài)功率控制方法框圖
如圖3所示,本文使用一種二叉樹結(jié)構(gòu)的存儲單元作為記憶庫的存儲結(jié)構(gòu)。SumTree存儲示意圖中從上往下一共有四層節(jié)點結(jié)構(gòu),最頂部的那個節(jié)點稱之為根節(jié)點,最底層一行稱之為葉子節(jié)點,中間兩行稱之為內(nèi)部節(jié)點。所有經(jīng)驗樣本的數(shù)據(jù)都是儲存在葉子節(jié)點,不僅如此,葉子節(jié)點還會存儲樣本的優(yōu)先級。除葉子節(jié)點外的所有節(jié)點都是不存儲數(shù)據(jù)的,但是會保存下級的左右子節(jié)點優(yōu)先級之和,并且把子節(jié)點優(yōu)先級之和用數(shù)字顯示出來。
圖3 SumTree存儲單元結(jié)構(gòu)示意
SumTree采樣主要是根據(jù)優(yōu)先級來對樣本進行訓練,優(yōu)先級取決于時序差分(Temporal-Difference Learning,TD)誤差的大小,TD誤差的值越大說明神經(jīng)網(wǎng)絡(luò)的反向傳播作用越強,樣本被學習的重要性就越高,相應(yīng)的優(yōu)先級也越高,這些樣本就會優(yōu)先被訓練[13]。
為了保證采樣能夠按照優(yōu)先級進行,并且所有樣本都有被抽到的可能,本文采用這種結(jié)合優(yōu)先級和隨機抽樣的方法,既能保證優(yōu)先級轉(zhuǎn)移也能保證最低優(yōu)先級的非零概率采樣。采樣轉(zhuǎn)移概率為
(9)
式中:pj和pk分別表示樣本j和任意樣本k的優(yōu)先級,k代表采樣的批量數(shù);α為優(yōu)先級指數(shù),α=0時為隨機均勻采樣。對于pk有
pj=|TDerror(j)|+。
(10)
(11)
式(11)中:ωj表示權(quán)重系數(shù);N代表經(jīng)驗池大小;β表示非均勻概率補償系數(shù),當β=1時就完全補償了p(j)。
強化學習屬于機器學習的一個大的分支,它是多個學科交叉的領(lǐng)域。強化學習的數(shù)據(jù)和環(huán)境是動態(tài)的,它通過不斷與環(huán)境進行交互,在試錯的過程中找到有效的策略,所以它主要用來解決智能決策問題。
圖4為強化學習的學習過程,該過程是伴隨著智能體(Agent)和環(huán)境(Environment)的交互而產(chǎn)生[14]。其中,在t時刻的Agent能夠感知Environment所處的狀態(tài)s(t),并且Agent可以選擇一個動作a(t)作用于Environment,Environment在受到動作的作用后對Agent產(chǎn)生一個獎勵r(t),此時Environment轉(zhuǎn)移進入到下一個狀態(tài)s(t+1)。
圖4 強化學習過程
本文研究的動態(tài)功率控制問題,本質(zhì)上是一個馬爾科夫決策過程[15]。設(shè)置一個四元組結(jié)構(gòu),其中S表示環(huán)境的狀態(tài)值集合,A表示Agent動作值集合,R表示在狀態(tài)下采用動作所得到的獎勵值,π為策略函數(shù)。Agent在狀態(tài)下選擇動作獲得的獎勵期望回報為
(12)
式中:折扣因子γ∈[0,1];Rt+1為t時間步所獲環(huán)境獎勵值。在狀態(tài)st下采取策略π的狀態(tài)價值函數(shù)為
Vπ(s)=Eπ[Gt|st=s]。
(13)
基于策略π,采用動作at,則st狀態(tài)下的動作價值函數(shù)為
Qπ(s,a)=Eπ[Gt|st=s,at=a]。
(14)
最優(yōu)策略和最優(yōu)價值函數(shù)可表示為
(15)
用Bellman最優(yōu)方程求解最優(yōu)價值函數(shù)可得
(16)
式中:p表示狀態(tài)轉(zhuǎn)移概率;s′表示在s下一時刻的狀態(tài)。
Q-learning和上述馬爾科夫決策過程一樣,也是通過迭代更新值函數(shù),其更新公式為
(17)
對于要解決的動態(tài)功率控制問題,SU的任務(wù)就是通過不斷的學習得到最優(yōu)的功率控制策略π*(s)。SU的發(fā)射功率是不斷變化的,傳統(tǒng)的強化學習方法很難對其進行求解,而DQN就能很好解決這一問題。DQN既有深度學習強大的感知能力,又具備強化學習的決策能力,還能夠克服傳統(tǒng)強化學習不能處理高維連續(xù)狀態(tài)和動作空間的問題。
DQN采用的是兩個結(jié)構(gòu)完全相同但是參數(shù)不同的神經(jīng)網(wǎng)絡(luò),其中一個是作為實時更新參數(shù)的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),另一個是用于更新目標Q值的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。目標Q值的更新公式為
(18)
將目標Q值Qtarget和當前網(wǎng)絡(luò)Q值之間的均方差稱之為損失函數(shù),則損失函數(shù)可表示為
L(θ)=E[(Qtarget-Q(s,a;θ))2]。
(19)
然而,普通的DQN算法是從目標Q網(wǎng)絡(luò)中尋找各個動作最大的Q值,這樣會大概率選擇過估計的value,進而導致value的過樂觀估計。
為了解決這個問題,本文采用Double DQN算法來進行動態(tài)功率控制。如圖5所示,Double DQN算法具有與普通DQN相同的網(wǎng)絡(luò)結(jié)構(gòu),即Double DQN也有一個環(huán)境、兩個結(jié)構(gòu)相同但參數(shù)不同的神經(jīng)網(wǎng)絡(luò)、一個回放記憶單元以及誤差函數(shù),但Double DQN在從目標Q網(wǎng)絡(luò)中尋找最大的Q值時能夠解耦合:
圖5 Double DQN結(jié)構(gòu)
(20)
采用Double DQN的動態(tài)功率控制方法,ABS可將采集到的主次用戶RSSI信息傳送給SU,SU根據(jù)這些信息進行學習,并智能選擇和更新自身的發(fā)射功率,使得在滿足PU正常通信不受影響的情況下還能以一定的發(fā)射功率進行通信,從而實現(xiàn)頻譜資源的動態(tài)共享。
1)狀態(tài)
本模型下的主次用戶基于同一個信道進行通信,且主次用戶為非合作式的關(guān)系,SU采用重疊式通信。因為主次用戶不能直接感知對方的功率發(fā)射方法,所以需要通過ABS來進行狀態(tài)感知,ABS可不間斷采集主次用戶的RSSI信息并再傳送給SU。若系統(tǒng)中有x個ABS,那么狀態(tài)值可表示為
S(t)=[s1(t),s2(t),…,sk(t),…,sx(t)]。
(21)
定義第k個ABS采集到的RSSI信息為
(22)
式中:在t時刻,PU與ABS的距離用lik(t)表示;SU與ABS的距離用ljk(t)表示;基準距離用l0(t)表示;τ表示路徑損耗指數(shù);該環(huán)境下的平均噪聲功率用σ(t)表示。
2)動作
SU通過不斷接收ABS的RSSI信息,能夠根據(jù)獲得的狀態(tài)值選擇到一個動作進行輸出,輸出的動作為發(fā)射功率。若每個SU有H種發(fā)射功率值,那么對于有N個SU的系統(tǒng),動作空間的大小為Hn。定義動作空間為
A(t)=[P1(t),P2(t),…,Pn(t)]。
(23)
3)獎勵
SU想要通過不斷的學習,完成動態(tài)功率控制,那么一個重要的環(huán)節(jié)就是獎勵函數(shù)的設(shè)計。本文依據(jù)SU從ABS處接收觀測到的不同頻譜接入情況,首先設(shè)置從S1~S4的四種不同頻譜接入條件:
(24)
滿足任意PU信噪比都大于等于PU預設(shè)閾值記為S1,滿足任意PU發(fā)射功率都大于等于所有SU發(fā)射功率的和記為S2,若存在SU信噪比大于等于SU預設(shè)閾值則記為S3,若無PU信噪比高于預設(shè)閾值則記為S4。
根據(jù)以上接入情況,定義獎勵函數(shù)為
(25)
式中:a1,a2,a3為三個不同常系數(shù)。當同時滿足條件S1,S2,S3時,表明SU觀測到所有PU正常工作,SU順利進行功率控制且達到了頻譜資源共享的目的,此時把所有主次用戶的信噪比求和并將一個正的系數(shù)a2與之相乘作為獎勵值。當滿足條件S4時,所有PU信噪比均低于閾值,若觸發(fā)此條件,表明SU觀測到所有PU的通信都受到了影響,此時將所有主次用戶的信噪比求和并將一個負的a1系數(shù)與之相乘作為獎勵值,這個獎勵值實際上是一個懲罰,說明選擇到的該動作是錯誤的。其余所有情況,把PU信噪比求和并乘以一個負的a3系數(shù)作為獎勵值。
本文采用基于SumTree采樣結(jié)合Double DQN的非合作式多用戶動態(tài)功率控制方法進行求解。
固定經(jīng)驗池D的容量為O,確定主次用戶發(fā)射功率分別為Pi(t)和Pj(t),初始化兩個神經(jīng)網(wǎng)絡(luò)的參數(shù),初始化優(yōu)先級指數(shù)α和β,權(quán)重差值Δ=0,該算法的偽代碼如下:
1 對于每個回合Form=1 toMdo
2 根據(jù)初始狀態(tài)S0(t),選擇出動作A0(t),到達下一個狀態(tài)
3 對于回合中的每一步Fort=1 toTdo
4 PU自適應(yīng)控制自身發(fā)射功率
5 SU基于貪婪算法選擇動作,以ε概率隨機選擇動作At,或者以1-ε概率選擇動作At=maxaQ(st,a;θ,α,β);
6 通過選擇動作At,得到獎勵Rt,到達下一個狀態(tài)St+1
7 將樣本數(shù)據(jù)(St,At,Rt,rt+1,St+1)存儲到經(jīng)驗池中的葉子節(jié)點中,并根據(jù)各樣本的時序差分誤差確定優(yōu)先級
8 Ift>O/2 then
10 計算采樣重要性權(quán)重ωj
12 更新樣本的優(yōu)先級
13 基于梯度下降法更新梯度
14 更新深度雙Q網(wǎng)絡(luò)的兩個神經(jīng)網(wǎng)絡(luò)的權(quán)重參數(shù)θ=θ+η·Δ,重置Δ=0
15 更新目標Q網(wǎng)絡(luò)的權(quán)重參數(shù)θ′
16 End If
17 End For
18 每隔一定步數(shù)隨機更新環(huán)境的參數(shù)
19 End For
本節(jié)通過Python平臺進行仿真實驗,在相同環(huán)境中,比較不同深度強化學習算法下各項指標性能的差異。本實驗的場景為半徑200 m范圍的圓形區(qū)域,以PBS為正中心,1個PU、2個SU和10個ABS隨機分布在區(qū)域內(nèi),PBS負責PU的正常通信,ABS可收集主次用戶通信信息并把收集到的數(shù)據(jù)通過專用信道再發(fā)送給SU。設(shè)置PU發(fā)射功率Pi(t)為0~30 mW范圍內(nèi)以5 mW為間隔的7個離散值,SU發(fā)射功率Pj(t)為0~4.5 mW范圍內(nèi)以0.5 mW為間隔的10個離散值。參照現(xiàn)有文獻以及梯度進行仿真實驗的結(jié)果,本實驗規(guī)定PU的預設(shè)信噪比閾值不低于1.0 dB,SU預設(shè)信噪比閾值不低于0.5 dB,環(huán)境噪聲均為0.1 mW。
本實驗的當前Q網(wǎng)絡(luò)和目標Q網(wǎng)絡(luò)均使用含4個隱含層的全連接層,其中前三層隱含層神經(jīng)元個數(shù)分別為256,128和256,輸出層神經(jīng)元個數(shù)為動作空間的大小。前兩層使用ReLUs函數(shù)作為激活函數(shù),第三層使用tanh函數(shù)作為激活函數(shù),神經(jīng)網(wǎng)絡(luò)權(quán)重的更新方法為Adam算法。經(jīng)驗池的容量為1 000,當經(jīng)驗池容量超過500時才開始訓練。批量采樣數(shù)目為128,目標Q網(wǎng)絡(luò)的更新頻率為250。在動作的選擇上采用貪婪算法(ε-greedy)的初始值為0.8,ε隨著訓練次數(shù)線性迭代至0。
本文提出的基于SumTree采樣結(jié)合Double DQN的非合作式多用戶動態(tài)功率控制方法,因核心算法為SumTree采樣結(jié)合Double DQN,故后文及仿真實驗中將該算法簡稱為ST_double DQN。將相同仿真環(huán)境和獎勵函數(shù)下的natural DQN算法、Double DQN算法、dueling DQN算法按照其算法名稱直接命名并進行實驗對比和分析。同時將文獻[8]中的算法(簡稱SAA_dueling DQN算法)也進行仿真實驗與分析。
圖6給出了相同環(huán)境下5種算法的損失函數(shù)對比,可以看到5種深度強化學習算法在經(jīng)過一定回合的學習之后均能夠達到收斂。natural DQN算法、Double DQN算法和SAA_dueling DQN算法的收斂速度都比較慢,都是直到第30回合左右才逐漸趨于穩(wěn)定,并且這三種算法在收斂之前的波動也比較大。dueling DQN算法較之上述三種算法在收斂速度上稍好一些,但還是存在較大波動。而本文提出的ST_double DQN算法能夠在5個回合的訓練內(nèi)將損失值迅速降至0.1以內(nèi),在第15回合左右即可達到收斂,并且收斂的平均損失值在0.04以內(nèi),說明本方法具有更好的適應(yīng)性和學習能力。
圖6 損失函數(shù)
圖7為5不同算法累計獎勵對比曲線。從圖中可以看出,natural DQN算法、Double DQN算法和dueling DQN算法的累計獎勵一直在振蕩,說明這三種算法在探索過程中,一直在接入成功的動作和接入不成功的動作之間切換,最終都沒有確定合適的接入動作。SAA_dueling DQN算法和ST_double DQN算法在前面4個回合都沒有采取正確的動作,從第5回合開始就能探索出SU接入成功的動作,開始獲得正獎勵,累計獎勵也持續(xù)保持上升,表明這兩種算法都能夠快速探索出SU接入成功的動作,找到合適的功率控制策略。
圖7 累計獎勵
圖8為SU總的吞吐量上限圖像。本模型下的動態(tài)功率控制問題,就是在滿足PU通信質(zhì)量的前提下,SU自適應(yīng)調(diào)整自身發(fā)射功率,達到最大化SU總吞吐量的目的。初始階段,5種算法的吞吐量上限都幾乎沒有變化,隨著不斷學習和交互,從第5回合開始,natural DQN算法、Double DQN算法和dueling DQN算法的總吞吐量上限開始持續(xù)增加,但這三種算法都在第35回合左右總吞吐量上限開始幾乎保持不再增加。而SAA_dueling DQN算法和ST_double DQN算法在訓練4回合后,SU的總吞吐量上限一直保持持續(xù)上升,沒有出現(xiàn)再次下降或者不變的情況,表明這兩種算法都可以使 SU總的吞吐量上限持續(xù)提高,但ST_double DQN算法的上限值略高于SAA_dueling DQN算法。
圖8 次用戶總的吞吐量上限
本實驗訓練的總次數(shù)為40 000次,每1 000次定義為圖像所顯示的一個回合,在每個回合內(nèi)選取50次訓練進行測試,若測試中SU能夠選擇成功的接入動作則視為成功完成傳輸任務(wù),成功的次數(shù)與測試總次數(shù)的比值定義為功率控制的成功率。如圖9所示,natural DQN算法、double DQN算法和Dueling DQN算法的成功率波動幅度很大,并且始終沒有收斂,很不穩(wěn)定。而SAA_dueling DQN算法和ST_double DQN算法雖然初始階段波動也比較大,但這兩種算法分別能夠在第16回合和第15回合后就收斂并達到100%的測試成功率。
圖9 功率控制成功率
圖10顯示的是5種算法SU的平均發(fā)射功率??偟膩砜?natural DQN算法的平均發(fā)射功率是最高的,Double DQN算法、dueling DQN算法和SAA_dueling DQN算法的平均發(fā)射功率大部分在2.5 mW以上。而ST_double DQN算法的平均發(fā)射功率是最低的,絕大部分處于2.0 mW和2.5 mW之間,只有極少數(shù)在區(qū)間范圍之外,表明該算法能夠有效降低能耗,這也是本方法的一個優(yōu)勢。
圖10 次用戶平均功率
為了解決認知無線網(wǎng)絡(luò)中多個用戶的動態(tài)功率控制問題,既保證次用戶本身的通信服務(wù)質(zhì)量QoS,同時還要降低次用戶因發(fā)射功率不合理而造成的功率損耗,本文提出了一種基于SumTree采樣結(jié)合Double DQN的非合作式多用戶動態(tài)功率控制方法。仿真結(jié)果也表明本方法可以保證次用戶的QoS,并且有效降低次用戶的功率損耗,達到了節(jié)約能耗的目的。然而,本文使用的是離散化的功率空間,未來可在研究中使用連續(xù)化的功率空間,這樣可使得對于功率的發(fā)射控制更加靈活。同時,在后續(xù)研究中也可以基于更加復雜化的場景來進行建模,例如基于車聯(lián)網(wǎng)、工業(yè)物聯(lián)網(wǎng)等場景來進行建模;可采用不同信道模型來研究其對算法性能的影響。