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