謝經(jīng)緯,許藝瀚,花 敏
(南京林業(yè)大學(xué) 信息科學(xué)技術(shù)學(xué)院,南京 210037)
設(shè)備到設(shè)備(device-to-device,D2D)技術(shù)是指通信網(wǎng)絡(luò)中近鄰設(shè)備之間直接交換信息的技術(shù)[1].D2D的優(yōu)勢在于能夠?qū)崿F(xiàn)數(shù)據(jù)的直連傳輸,無需依賴基站或中繼設(shè)備的參與,從而降低通信網(wǎng)絡(luò)的數(shù)據(jù)傳輸壓力,提高頻譜利用率和吞吐量,使通信系統(tǒng)更加靈活、智能和高效地運行,給爆炸式增長的智能設(shè)備和日趨緊張的頻譜資源之間的矛盾提供了新的解決辦法[2].
目前,標(biāo)準(zhǔn)化組織3GPP已將D2D技術(shù)列為新一代移動通信系統(tǒng)的發(fā)展移動通信系統(tǒng)的發(fā)展框架中,并成為第五代移動通信(5 Generation,5G)的關(guān)鍵技術(shù)之一.在LTE蜂窩網(wǎng)絡(luò)中,由于D2D通信的引入,系統(tǒng)的資源分配方式將發(fā)生變化.為了避免D2D通信與傳統(tǒng)蜂窩網(wǎng)絡(luò)之間的干擾所造成的用戶服務(wù)質(zhì)量(quality of servic,QoS)的降低,利用功率控制和信道分配來降低干擾極具研究價值[3].當(dāng)一個信道被多個用戶復(fù)用時,由于鏈路之間的相互干擾,通過功率控制的方法來最大化通信速率可被轉(zhuǎn)化為一個非凸問題.強化學(xué)習(xí)是探索與反饋相結(jié)合的算法,在利用強化學(xué)習(xí)之前往往需要將問題轉(zhuǎn)化為馬爾可夫決策過程(Markov decision process,MDP),再利用動態(tài)規(guī)劃算法求解[4].文獻(xiàn)[5-6]中均采用機(jī)器學(xué)習(xí)的方法解決模型求解問題,并提出了基于博弈論的方法求解D2D接入傳統(tǒng)蜂窩網(wǎng)絡(luò)的方案.文獻(xiàn)[7]在保證蜂窩用戶的QoS的情況下,通過資源分配可以提高系統(tǒng)的吞吐量,文獻(xiàn)[8]提出一種優(yōu)化Q-強化學(xué)習(xí)的自適應(yīng)談判算法,提高主體的學(xué)習(xí)能力,考慮對手的行為,提高智能化程度.文獻(xiàn)[9]采用增強學(xué)習(xí)算法的擴(kuò)展版本來控制直連通信用戶設(shè)備傳輸功率,以減少由資源共享引起的干擾.文獻(xiàn)[10]利用匹配理論為D2D集群分配通道,并采用順序凸規(guī)劃將優(yōu)化目標(biāo)轉(zhuǎn)化為凸問題,然后再通過遺傳算法對其進(jìn)行求解.文獻(xiàn)[11]提出了一種基于D2D通信模式選擇的資源分配算法,提高5G了網(wǎng)絡(luò)中移動終端分布密集的場景下資源的有效分配.文獻(xiàn)[12]提出一種基于預(yù)定信噪比(signal interference plus noise ratio,SINR)閾值的模式選擇方法,通過限制底層D2D用戶所產(chǎn)生的干擾,得出滿足預(yù)定要求的最小和最大功率.文獻(xiàn)[13] 提出了一種新穎的帶有小區(qū)劃分的強化學(xué)習(xí)(reinforcement learning,RL)方法,以解決基站未知的先驗流量信息時啟用了D2D的蜂窩網(wǎng)絡(luò)的信道和功率分配問題.文獻(xiàn)[14] 提出了在室內(nèi)D2D通信網(wǎng)絡(luò)中基于增強學(xué)習(xí)的延遲控制D2D連接(RL-LCDC)算法及其Q學(xué)習(xí)方法,以最小的延遲實現(xiàn)強大的5G連接.文獻(xiàn)[15] 提出了一種基于長期演進(jìn)高級(LTE-A)網(wǎng)絡(luò)D2D通信的動態(tài)資源分配算法,其中強化學(xué)習(xí)用于信道分配.文獻(xiàn)[16]基于圖著色理論在D2D用戶之間創(chuàng)建干擾圖,并在保證蜂窩用戶需求的同時構(gòu)造D2D用戶的色表有效提高用戶公平性和滿意度的新方案.
為了保證用戶的QoS,文中以SINR為門限值判斷D2D用戶是否接入蜂窩系統(tǒng),結(jié)合馬爾可夫決策進(jìn)行頻譜資源的分配.假設(shè)D2D通信復(fù)用蜂窩網(wǎng)絡(luò)的上行鏈路,并據(jù)此推導(dǎo)出系統(tǒng)吞吐量目標(biāo)函數(shù)作為衡量標(biāo)準(zhǔn),并進(jìn)行仿真驗證.
文中研究場景是在單個傳統(tǒng)蜂窩小區(qū)中加入D2D通信模式,從而達(dá)到增強系統(tǒng)吞吐量和提高頻譜利用率的功能.在復(fù)用網(wǎng)絡(luò)頻譜資源的選擇上,選擇復(fù)用利用率較低的上行鏈路,并利用基站具有較強的抗干擾能力.假設(shè)D2D用戶對不互相交換信息與協(xié)作,并且預(yù)先沒有無線信道的相關(guān)信息.
假設(shè)在單個小區(qū)中,可利用的頻譜是有限的且被分成K等分,可表示為:RB={rb1,rb2,rb3,…,rbk}.每個蜂窩用戶只能占用至多一個資源塊,頻譜資源相互正交,蜂窩用戶之間沒有干擾.在網(wǎng)絡(luò)拓?fù)渲?,基站位于小區(qū)的中心,N個蜂窩用戶和M對D2D對用戶均勻分布在小區(qū)內(nèi).為了保證蜂窩用戶的QoS,文中假設(shè)系統(tǒng)的資源塊數(shù)量和蜂窩用戶的數(shù)量相等,即N=K.為了可以高效地利用頻譜資源,假設(shè)一個頻譜資源塊能夠同時被多個D2D對復(fù)用.對于第?m∈M個D2D對,構(gòu)建一個在時刻t的二進(jìn)制K維向量βm(t)表示復(fù)用選擇結(jié)果,βm(t)={β1(t),β2(t),β3(t),…,βk(t)}.因此,對由于單個D2D對有且僅能復(fù)用一個頻譜資源塊,可得:
(1)
?m,j∈M,?k∈K
類似地,可以得到在時刻t時復(fù)用頻譜資源塊k的第n個蜂窩用戶的信噪比為:
(2)
?m∈M,?n∈N,?k∈K
場景模型如圖1.
圖1 系統(tǒng)模型Fig.1 System model
當(dāng)D2D用戶對復(fù)用蜂窩用戶的頻譜資源時,蜂窩用戶和D2D用戶間會產(chǎn)生相互的干擾,從而大大影響小區(qū)內(nèi)移動用戶的通信質(zhì)量.所以在小區(qū)內(nèi)引入D2D通信時,首先要確保蜂窩用戶和D2D對用戶的通信質(zhì)量,在此前提下研究如何提高系統(tǒng)的性能.文中以小區(qū)內(nèi)用戶的QoS為約束條件,以最大化系統(tǒng)吞吐量為目標(biāo).結(jié)合香農(nóng)定理,給出目標(biāo)函數(shù)為:
(3)
式中:B為小區(qū)內(nèi)可分配的帶寬;τC,τD分別為蜂窩用戶和D2D用戶的最小信噪比;T為系統(tǒng)的吞吐量.
文中的D2D用戶與蜂窩用戶所共享的頻譜資源為非正交頻譜資源,因此將系統(tǒng)建模為馬爾可夫決策過程,算法使用強化學(xué)習(xí)中的Q-Learning算法,將目標(biāo)函數(shù)T作為代價函數(shù),并結(jié)合博弈論的方法,求解該最優(yōu)化問題.
通常來說,一個典型的馬爾可夫決策過程可以由一個四元組構(gòu)成:<狀態(tài)(State),動作(Action),轉(zhuǎn)移概率(Transition Probability),即時獎勵(Immediate Reward)>[7].智能體Agent從環(huán)境中獲得周邊需要用到的狀態(tài)si,隨時根據(jù)周邊環(huán)境對狀態(tài)si進(jìn)行更迭,并根據(jù)得到的狀態(tài)si制定當(dāng)前的學(xué)習(xí)策略,根據(jù)策略選擇最優(yōu)的動作ai執(zhí)行,此后,Agent的狀態(tài)從si轉(zhuǎn)變?yōu)閟i+1,同時返回即時獎勵ri.以此類推,不斷在學(xué)習(xí)過程中獲得最優(yōu)的動作,從而得到獎勵函數(shù)的最優(yōu)化.圖2 為馬爾可夫決策過程.
圖2 馬爾可夫決策過程Fig.2 Markov decision process
采用Q-Learning算法不斷優(yōu)化學(xué)習(xí)過程中的行為序列優(yōu)化馬爾可夫環(huán)境下的動作.Q-Learning中的Q值,定義為狀態(tài)動作函數(shù)Q=(s,a),表示對獎勵的預(yù)測和估計.因此,在Q-Learning中的最優(yōu)策略為針對當(dāng)前狀態(tài)si時,選擇動作ai使得Q值最大.
將每個D2D對定義為一個智能體.動作、狀態(tài)、獎勵函數(shù)以及策略對應(yīng)如下:
(1)動作(Action)
智能體所執(zhí)行的動作為選擇進(jìn)行復(fù)用的頻譜資源,在同一時刻一個智能體至多只能復(fù)用一個資源塊進(jìn)行復(fù)用,由二進(jìn)制的K維向量βm(t)構(gòu)成,因此在時刻t智能體m的動作可以表示為:
am(t)={βm(t)∈{0,1},∑βm(t)≤1}
(4)
系統(tǒng)中除智能體m外的所有其他動作所構(gòu)成的動作集合為A-m.
(2)狀態(tài)(State)
智能體可觀測到的狀態(tài)信息為某時刻系統(tǒng)中蜂窩用戶與D2D用戶是否達(dá)到通信標(biāo)準(zhǔn),在時刻t智能體的狀態(tài)sm(t)為:
sm(t)={d1,k(t),d2,k(t),…,dm,k(t)}
(5)
?m∈M,?k∈K
式中:dm,k(t)為在時刻t智能體觀察到的占用頻譜資源塊k的D2D的信道信息,如式(6):
(6)
(3)即時獎勵(Reward)
學(xué)習(xí)的結(jié)果由獎勵來體現(xiàn),在文本中,學(xué)習(xí)的結(jié)果是為了最大化系統(tǒng)的吞吐量,所以智能體的獎勵信號為系統(tǒng)的總吞吐量rm(t)為:
rm(t)=T=
?n∈N,?m∈M,?k∈K
(7)
(4)策略(Policy)
策略是智能體根據(jù)當(dāng)前狀態(tài)確定下一個動作的策略,使用Bellman方程作為策略方程:
v(s)=E[rt+γv(St+1|St=s)]
(8)
式中:E為期望,γ為折扣因子,St為t時刻的狀態(tài).系統(tǒng)模型中,結(jié)合Q值進(jìn)行重寫方程,得到:
Qπ(s,a)=E[rt+γQπ(st+1,at+1|st,at)]
(9)
其中最優(yōu)的Q可用Q*表示為:
Q*(s,a)=E[rt+γmaxat+1Qπ(st+1,at+1|st,at)]
(10)
因此,提出基于Q-Learning的資源分配算法.
算法1.基于Q-Learning的資源分配算法初始化 對于任意s∈S,a∈A(s)動作狀態(tài)值q(s,a)←任意值初始化 學(xué)習(xí)率α和折扣因子γforepisode=1toMdo初始化 網(wǎng)絡(luò)場景和初始化狀態(tài)s1(系統(tǒng)中蜂窩用戶與D2D用戶是否達(dá)到通信標(biāo)準(zhǔn))根據(jù)動作狀態(tài)值q(s,a),在狀態(tài)s1下選擇動作a(復(fù)用向量βm(t))執(zhí)行動作a,獲得即時獎勵r和下一時間的狀態(tài)s′根據(jù)狀態(tài)s′選擇動作a′qk+1(sk,ak)←qk(sk,ak)+αrk(sk,ak)+γmaxqk(sk,ak+1)-qk(sk,ak)[],更新動作狀態(tài)值s←s′,記錄狀態(tài)endfor輸出動作狀態(tài)值q(s,a)
仿真環(huán)境設(shè)置為一個半徑為500 m的圓形區(qū)域.每個D2D對之間的距離為30 m.在基站的覆蓋范圍內(nèi)均勻分布著10個D2D對和20個蜂窩用戶.為了保證用戶的QoS,蜂窩用戶的SINR下限值設(shè)為0.5dB,D2D用戶的SINR下限值設(shè)為3dB,初始學(xué)習(xí)率為0.4,折扣因子為0.8其他參數(shù)如表1.
表1 仿真參數(shù)設(shè)置Table 1 Simulation parameters setting
從多個維度進(jìn)行分析,將所提出的算法與隨機(jī)算法和遺傳算法(genetic algorithm,GA)進(jìn)行對比.首先,研究算法中關(guān)鍵參數(shù)學(xué)習(xí)率對小區(qū)吞吐量的影響,從圖3中可以看出,當(dāng)設(shè)置學(xué)習(xí)率α分別為0.4和0.7時,吞吐量的收斂速度不同,但最終都收斂于相同的吞吐量.這是因為在強化學(xué)習(xí)中學(xué)習(xí)率越高,收斂速度也越快,迭代次數(shù)也會相對較少;學(xué)習(xí)率降低,收斂速度也會降低,迭代次數(shù)則會增多.收斂于同一個Q值,是因為仿真設(shè)置中,資源的數(shù)量只有20個頻譜資源包,在所有的D2D資源全部接入到小區(qū)網(wǎng)絡(luò)后,系統(tǒng)的吞吐量達(dá)到峰值,即得到最優(yōu)的Q值表,頻譜的利用率達(dá)到最大化.
圖3 不同學(xué)習(xí)率對小區(qū)吞吐量的影響Fig.3 Influence on throughput under different learning rate
圖4給出了小區(qū)接入D2D數(shù)量與小區(qū)吞吐量的關(guān)系,并將不同的分配算法進(jìn)行了對比.從圖4中可以明顯地發(fā)現(xiàn):采用隨機(jī)接入算法時,D2D對的數(shù)量對于提升系統(tǒng)吞吐量的影響很小,原因在于在此算法中,基站隨機(jī)選擇是否允許D2D對接入,SINR作為判斷D2D對用戶是否復(fù)頻譜資源用的影響很?。欢鳧2D對以文中所提出的算法和GA算法接入蜂窩小區(qū).GA算法中交叉概率為0.8,突變概率為0.1;隨機(jī)算法采用正太分布的概率接入,滿足SINR則保留,不滿足則繼續(xù)尋優(yōu).則算法則依靠SINR門限值來篩選D2D對是否復(fù)用小區(qū)頻譜資源,對小區(qū)吞吐量有顯著地提高.
圖4 D2D對接入數(shù)量與小區(qū)吞吐量的關(guān)系Fig.4 Relationship between the number of D2D pairs and system throughpu
針對單一小區(qū)通信場景模型中引入D2D通信模式是否能夠提高系統(tǒng)吞吐量進(jìn)行了研究.得出以下結(jié)論:
(1)與GA算法和隨機(jī)算法對比情況下,文中提出的基于Q_Learing算法有更大的吞吐量.
(2)在α=0.7時,吞吐量的收斂速度加快,更快的收斂到最大吞吐量處.