吳建嵐,劉全金,畢松姣,周岳鈺,嵇 文
(安慶師范大學(xué) 電子工程與智能制造學(xué)院,安徽 安慶 246133)
隨著科技的發(fā)展,各種移動通信設(shè)備層出不窮,無線蜂窩網(wǎng)絡(luò)的規(guī)模也越來越大,這導(dǎo)致了蜂窩網(wǎng)絡(luò)數(shù)據(jù)的傳輸面臨著很大挑戰(zhàn)。用戶密度增大意味著對網(wǎng)絡(luò)容量和頻譜效率有著更高的要求,小區(qū)內(nèi)和小區(qū)間的干擾也成為數(shù)據(jù)傳輸中需要考慮的重要問題。5G通信系統(tǒng)采用了具有更高系統(tǒng)吞吐量和更高頻譜效率的非正交多址(Non-orthogonal Multiple Access,NOMA)技術(shù)[1-2]。NOMA技術(shù)跟傳統(tǒng)正交多址接入(Orthogonal Multiple Access,OMA)技術(shù)不同,其引入了功率域,且基站根據(jù)用戶狀態(tài)分配功率,然后將發(fā)射信號疊加在時頻資源上發(fā)送,同時用戶端采用串行干擾消除技術(shù)來接受信號[3-5]。
本文研究的功率分配問題是非凸的,求解困難。之前,研究者已經(jīng)提出了多種基于模型驅(qū)動的算法來解決這一問題[6-9]。例如,文獻(xiàn)[6]提出了分?jǐn)?shù)階編程(Fractional Programming,FP)算法并應(yīng)用于通信系統(tǒng)的設(shè)計和優(yōu)化;文獻(xiàn)[7]的基于加權(quán)均方誤差(Weighted Minimum Mean Squared Error,WMMSE)算法是一種簡單的分布式線性收發(fā)器設(shè)計方法。這些算法高度依賴數(shù)學(xué)模型,在特定用戶分布、地理環(huán)境等實(shí)際應(yīng)用場景中并不完善,另外,都需要完整的信道狀態(tài)信息,對環(huán)境要求較高,應(yīng)用并不廣泛。近年來,基于機(jī)器學(xué)習(xí)的功率分配算法在無線通信中得到了迅速發(fā)展[10],這些算法通常是無模型的,能較好地解決實(shí)際通信場景中的非凸優(yōu)化問題。例如,文獻(xiàn)[11]針對用戶設(shè)備和蜂窩用戶設(shè)備共享無線資源的情況,提出了一種基于深度神經(jīng)網(wǎng)絡(luò)的發(fā)射功率控制策略;文獻(xiàn)[12]提出了一種基于深度強(qiáng)化學(xué)習(xí)的在線卸載框架,旨在通過優(yōu)化任務(wù)卸載決策和無線資源分配以適應(yīng)時變的無線信道條件;文獻(xiàn)[13]針對混合能源異構(gòu)網(wǎng)絡(luò)中用戶調(diào)度和資源分配的最優(yōu)策略問題,提出了一種基于策略梯度的演員評論家算法以最大化通信網(wǎng)絡(luò)能效。
鑒于蜂窩網(wǎng)絡(luò)環(huán)境具有連續(xù)性和隨機(jī)性的特點(diǎn),本文提出了基于深度強(qiáng)化學(xué)習(xí)的功率分配算法(PPA-DDPG),并將其用于多小區(qū)無線NOMA下行蜂窩網(wǎng)絡(luò),旨在優(yōu)化通信系統(tǒng)和速率。
本文以一個單輸入單輸出無線蜂窩網(wǎng)絡(luò)的NOMA系統(tǒng)下行鏈路為研究對象,該網(wǎng)絡(luò)由N個小區(qū)組成,每個小區(qū)中心位置都部署一個單發(fā)射天線的基站并使用共享頻譜,由中心基站同時為K個用戶服務(wù)。小區(qū)基站編號用n∈{1,2,…,N}表示,用戶編號用k∈{1,2,…,K}表示。該網(wǎng)絡(luò)中每個基站和小區(qū)用戶之間的信道增益gk,n可表示為
其中,hk,n是一個服從瑞利分布的復(fù)高斯隨機(jī)變量,由Jakes模型獲得;|·|為取模;βk,n是大尺度衰落分量[14]。
在NOMA下行鏈路中,信道條件較好的用戶將比較差的用戶分配到更少的功率。同時基站將多個用戶的信號進(jìn)行疊加處理并發(fā)送,其發(fā)送給K個用戶的信號表示為
其中,sk表示用戶k期望的接收信號;pk,n表示基站n向用戶k的發(fā)送功率。
接收端信號為
其中,cn表示加性高斯白噪聲,均值為0,方差為
網(wǎng)絡(luò)系統(tǒng)模型如圖1所示。每個小區(qū)有強(qiáng)用戶和弱用戶,其中強(qiáng)用戶表示信道條件比較好的用戶,而弱用戶則表示信道條件比較差的用戶。該模型考慮了強(qiáng)用戶無差錯解碼出弱用戶的信號。
圖1 NOMA系統(tǒng)模型
基于上述系統(tǒng)模型,小區(qū)n內(nèi)用戶k的和速率為
利用NOMA中串行干擾消除技術(shù),用戶1可以消除用戶2的干擾,故用戶1正確譯碼的信干擾比為
用戶2可直接解碼,其信干擾比為
其中,pn1表示小區(qū)n的基站向用戶1的發(fā)射功率,Pn2表示小區(qū)n的基站向用戶2的發(fā)射功率,且pn=pn1+pn2。
用戶1和用戶2的速率分別為
因此,一個小區(qū)系統(tǒng)的用戶速率為
本文在最大功率的約束下,以系統(tǒng)最大和速率為優(yōu)化目標(biāo)來實(shí)現(xiàn)最優(yōu)功率分配:
其中,Pmax表示最大發(fā)射功率。對于此類復(fù)雜的非凸問題,求解是非常困難的,本文提出了用PPA-DDPG算法來求解系統(tǒng)最大和速率。
強(qiáng)化學(xué)習(xí)有很強(qiáng)的環(huán)境交互能力,智能體與環(huán)境交互過程可用馬爾可夫決策過程(Markov Decision Processes,MDPs)表示。在交互過程中,智能體根據(jù)觀察到的狀態(tài)s,依據(jù)策略π來執(zhí)行動作a,然后從環(huán)境中得到反饋獎勵r并進(jìn)入新的狀態(tài)s'。重復(fù)上述循環(huán),將反饋獎勵r進(jìn)行累加,從而得到累積回報R。強(qiáng)化學(xué)習(xí)算法的目標(biāo)是智能體在與環(huán)境的交互中搜索能產(chǎn)生最大累積回報R的最優(yōu)策略。本文使用DDPG算法求解了多個小區(qū)NOMA下行鏈路的功率分配優(yōu)化問題。
強(qiáng)化學(xué)習(xí)基本模型由智能體和環(huán)境兩部分組成,包含狀態(tài)s、動作a和獎勵r三要素,基本模型如圖2 所示。MDPs 的策略只跟當(dāng)前的狀態(tài)有關(guān),可以用簡單的五元組表示:M={S,A,P,R,γ},其中,S={s1,s2,…,sn}表示一組有限狀態(tài)集,A={a1,a2,…,an}表示一組有限動作集表示當(dāng)前狀態(tài)s執(zhí)行動作a并轉(zhuǎn)移到下一狀態(tài)s'的概率,R(s,a)=E[Rt+1|s,a]表示智能體在當(dāng)前狀態(tài)s執(zhí)行動作a產(chǎn)生的即時獎勵,γ表示折扣因子并根據(jù)折扣因子對每個獎勵給予不同的權(quán)重。
圖2 強(qiáng)化學(xué)習(xí)基本模型
智能體的累積回報為
智能體的優(yōu)化目標(biāo)是找到一個策略π(a|s)以使累積回報G(s)最大化,其中π(a|s)=P(a|s)表示在狀態(tài)s下執(zhí)行動作a的概率。有如下狀態(tài)價值函數(shù)[15]:
該函數(shù)為基于t時刻狀態(tài)s能獲得回報的期望。在t時刻狀態(tài)s選擇動作a后獲得回報的期望稱動作價值函數(shù)[15],公式如
根據(jù)貝爾曼最優(yōu)準(zhǔn)則[15],求解得以上兩式的最優(yōu)方程為
其中V*(s)是在狀態(tài)s下考慮所有可能發(fā)生的動作中挑選最優(yōu)動作的價值;Q*(s,a)是在狀態(tài)s下執(zhí)行動作a后,考慮之后所有可能處于的狀態(tài)并在這些狀態(tài)下總是選取最優(yōu)動作來執(zhí)行所帶來的長期價值。
由于無線蜂窩網(wǎng)絡(luò)的各種參數(shù)是持續(xù)變化的,將其作為強(qiáng)化學(xué)習(xí)環(huán)境,則智能體的動作和狀態(tài)也是連續(xù)的,所以本文選擇DDPG算法來優(yōu)化多小區(qū)NOMA蜂窩網(wǎng)絡(luò)和速率。圖3是基于DDPG算法的多小區(qū)NOMA 下行鏈路的功率分配優(yōu)化模型框圖。DDPG 由actor 和critic 兩個部分構(gòu)成,前者包括actor網(wǎng)絡(luò)和actor目標(biāo)網(wǎng)絡(luò),后者包括critic網(wǎng)絡(luò)和critic目標(biāo)網(wǎng)絡(luò)。四個網(wǎng)絡(luò)都是深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Networks,DNN),均由輸入層、隱藏層和輸出層三個部分組成,其中隱藏層可以有多層神經(jīng)元,得到的結(jié)果具有泛化能力[15]。actor根據(jù)智能體所處狀態(tài)s輸出智能體動作a,而critic對actor輸出的動作做評價。同時critic根據(jù)輸入的狀態(tài)s和動作a預(yù)測Q值,是智能體在學(xué)習(xí)過程中的輔助網(wǎng)絡(luò),負(fù)責(zé)評估actor網(wǎng)絡(luò)性能,不參與動作的生成。
圖3 基于DDPG算法的多小區(qū)NOMA下行鏈路的功率分配優(yōu)化模型
DDPG算法可追求critic的評價值最大化,且盡可能對actor做出準(zhǔn)確評價,同時actor和critic兩部分協(xié)同工作??梢愿鶕?jù)下面公式來優(yōu)化兩個部分神經(jīng)網(wǎng)絡(luò)的參數(shù):
對目標(biāo)網(wǎng)絡(luò)參數(shù)采用軟更新,并設(shè)立更新系數(shù)τ,緩慢更新目標(biāo)網(wǎng)絡(luò)參數(shù),公式如
(3)獎勵r:為了提高智能體的和速率,并減輕其對相鄰鏈路的干擾,本文采用和速率(公式10)的平均值作為強(qiáng)化學(xué)習(xí)算法獎勵。
在最大功率的約束下,DDPG算法以系統(tǒng)最大和速率為優(yōu)化目標(biāo),以期實(shí)現(xiàn)系統(tǒng)的功率分配優(yōu)化,PPA-DDPG算法偽代碼如下。
建立一個多小區(qū)NOMA 蜂窩網(wǎng)絡(luò)系統(tǒng)模型,并仿真PPA-DDPG 算法優(yōu)化系統(tǒng)的功率分配,具體參數(shù)如表1所示。根據(jù)LTE標(biāo)準(zhǔn),將大尺度衰落建模為[16]
表1 多小區(qū)NOMA蜂窩網(wǎng)絡(luò)系統(tǒng)仿真參數(shù)
利用Tensorflow模塊庫編程來實(shí)現(xiàn)PPA-DDPG 算法,其中actor部分的DNN 由一個輸入層、兩個隱藏層和一個輸出層組成,隱藏層的神經(jīng)元個數(shù)分別為64 和128,激活函數(shù)是線性修正單元(ReLU):f(x)=max(0,x);critic部分DNN由一個輸入層、一個隱藏層和一個輸出層組成,隱藏層的神經(jīng)元個數(shù)為64,激活函數(shù)是ReLU ;采用Adam 算法[17]作為優(yōu)化器;actor 和critic 的學(xué)習(xí)率分別設(shè)置為ηa=1×10-4和ηc=1×10-3。在每個訓(xùn)練回合中,大尺度衰落不變,總的回合數(shù)Episode設(shè)置為10 000,每回合時刻T設(shè)置為10;根據(jù)多次實(shí)驗(yàn),一個大的Episode 和較小的T值可以降低數(shù)據(jù)隨時間的相關(guān)性,從而保證算法的收斂性。
依據(jù)多小區(qū)NOMA 蜂窩網(wǎng)絡(luò)模型來仿真驗(yàn)證PPA-DDPG 算法和基于DQN 功率分配算法[18](以下簡稱DQN)。本文將這兩種算法在多小區(qū)NOMA蜂窩網(wǎng)絡(luò)系統(tǒng)模型下訓(xùn)練,并進(jìn)行性能比較。
圖4為PPA-DDPG算法和DQN算法的Loss曲線,可以發(fā)現(xiàn)Loss值隨著訓(xùn)練回合數(shù)增加而減小,最終趨于穩(wěn)定。相對而言,PPA-DDPG算法的損失值更小,收斂效果更好。圖5是PPA-DDPG和DQN兩種算法的獎勵曲線,縱坐標(biāo)用平均和速率(Average sum-rate)表示,橫坐標(biāo)為訓(xùn)練回合數(shù)(Train episode)??梢钥闯觯瑑煞N算法的收斂速度都隨著訓(xùn)練回合數(shù)的增加而加快,PPA-DDPG算法在第1 000回合左右就能達(dá)到收斂,而DQN算法在接近10 000回合下才能收斂,說明PPA-DDPG算法的平均和速率增長相對于DQN算法更快一點(diǎn)。從圖4也可看出兩種算法的損失值都能很快達(dá)到收斂狀態(tài),相比較而言,PPADDPG算法的收斂速度更快,算法的穩(wěn)定性也相對較好。
圖4 PPA-DDPG算法和DQN算法的Loss曲線
本文分別在NOMA和OMA兩種系統(tǒng)下行鏈路(簡稱環(huán)境)中訓(xùn)練DDPG算法以優(yōu)化兩個系統(tǒng)的平均和速率,然后分別測試訓(xùn)練后的DDPG算法性能。結(jié)果如圖6所示,在8 000個測試回合的NOMA環(huán)境中,DDPG算法的平均和速率為4.67 bps,而OMA環(huán)境中的平均和速率為3.48 bps??梢钥闯?,DDPG算法在NOMA 環(huán)境中的功率分配性能比OMA 環(huán)境中更強(qiáng)。即同樣使用DDPG 算法,NOMA 技術(shù)比OMA技術(shù)能更好地提升系統(tǒng)性能。
圖6 NOMA和OMA環(huán)境中的DDPG算法平均和速率
為進(jìn)一步驗(yàn)證PPA-DDPG算法的功率分配性能,本文仿真了FP算法[6]、WMMSE算法[7]、隨機(jī)分配功率算法[8](Random power)和分配給用戶所需的最大功率算法[8](Maximal power)等其他4種基于模型驅(qū)動的算法在NOMA下行鏈路環(huán)境中的功率分配。統(tǒng)計了8 000回合下PPA-DDPG、DQN、FP、WMMSE、Random power和Maximal power 等6種算法的平均和速率,圖7為6種算法在NOMA下行鏈路環(huán)境中功率分配測試時的平均傳輸和速率曲線。DQN算法的平均和速率為4.36 bps,PPA-DDPG算法為4.67 bps,F(xiàn)P算法為4.07 bps,WMMSE算法為3.85 bps,Random power算法為2.32 bps,以及Maximal power算法為2.31 bps。與FP和WMMSE算法相比,PPA-DDPG算法在和速率上分別提高了14.7%和21.3%?;谏疃葟?qiáng)化學(xué)習(xí)的PPA-DDPG 和DQN 算法相比其他4種基于模型驅(qū)動的算法,可以獲得更高的平均和速率,意味著深度強(qiáng)化學(xué)習(xí)算法在解決功率分配這一問題上相較于模型驅(qū)動的算法有很大優(yōu)勢。
圖7 6種功率分配算法的平均和速率
本文討論了蜂窩網(wǎng)絡(luò)的功率分配問題,并提出將深度強(qiáng)化學(xué)習(xí)的DDPG算法用于NOMA下行鏈路的功率分配,從而使蜂窩網(wǎng)絡(luò)的和速率得到提高。仿真結(jié)果顯示,本文提出的PPA-DDPG算法較傳統(tǒng)算法能更好地提高系統(tǒng)和速率,同時算法的收斂速度和穩(wěn)定性也優(yōu)于其他算法。此外,PPA-DDPG算法可以應(yīng)用于具有離散或連續(xù)狀態(tài)/動作空間的一般任務(wù)和多變量聯(lián)合優(yōu)化問題。