劉迪,韓太林,郎百和
(長春理工大學 電子信息工程學院,長春 130022)
第三代合作伙伴計劃3GPP將D2D通信技術引入新一代無線通信網絡,成為5G的關鍵技術之一[1],也是當前研究熱點。D2D通信是指兩個近距離的用戶可以在基站的控制下復用蜂窩用戶信道進行直接通信的技術[2]。將D2D通信技術引入蜂窩網絡,具有減少基站負載、提高頻譜利用率等優點,可以顯著提高系統的總容量。但是D2D通信技術也會帶來同頻干擾的缺點,從而降低系統的性能、影響用戶的通信質量。因此,為協調D2D用戶和蜂窩用戶之間的干擾,資源分配顯得尤為重要。
文獻[3]提出一種貪婪式資源調度算法,該算法是根據共享信道資源時所產生干擾程度來選擇所復用的信道,以蜂窩用戶的信噪比與D2D用戶的滿意程度作為約束條件,但是沒有考慮用戶發送功率,并且貪婪算法易陷入局部最優。文獻[4]中提出一種局部搜索的資源調度算法,該算法同時考慮了蜂窩用戶與D2D用戶的QoS,也獲得了較好的系統速率,但是該算法只能獲得局部最優解,具有局限性。文獻[5]采用博弈論的方法進行資源的調度,每條復用鏈路都以鏈路容量或者噪聲功率作為目標函數,該方法在一定程度上增大了系統的總容量,并抑制了干擾,但是這種競爭博弈有極大的不公平性。文獻[6]所提的資源調度算法,在確保蜂窩用戶與D2D用戶QoS的前提下進行功率控制,并且最大限度的提高系統的容量,但是只考慮了蜂窩用戶發射功率。文獻[7]中提出一種開環功率控制算法,該算法為D2D用戶設置了通信閾值,以確保用戶的通信質量,但是該算法中蜂窩用戶與D2D用戶發送端都以相同的功率發送信息,信道質量差的D2D將不能進行通信。
本文在模擬退火算法的基礎上提出一種以信道容量最大為目標的改進算法,以信噪比門限值與用戶最大發射功率為約束條件,建立了系統模型,采用改進的模擬退火算法尋求最優的可復用信道,同時為用戶分配最佳發射功率。
D2D通信場景如圖1所示。假定在半徑為R的單小區內,基站處于小區的中心。小區內存在M個蜂窩用戶,集合為C={Ci|i=1,2,…,M},N對D2D用戶,集合為D={Dj|j=1,2,…,N},同時蜂窩用戶數需要多于D2D用戶對數,即M>N。蜂窩用戶將共享上行鏈路信道資源用于D2D通信。為了保證基站受到的干擾較小,以基站為中心,r為半徑設定限制區域[8],即所有用戶不能在此區域內。

圖1 系統模型
假定每個蜂窩信道只能由一對D2D用戶復用,則在小區內至少存在一個最優解集S={Sβ|β=1,2,…,N}。設置Hi為蜂窩用戶的復用參數,Hi是二進制數,當Hi=1時表示D2D用戶通信時復用該蜂窩用戶的資源;當Hi=0時表示D2D通信時不復用該蜂窩用戶的資源。D2D用戶可以復用蜂窩用戶資源的必要條件為:

假設系統中D2D用戶對j復用蜂窩用戶i的信道資源,蜂窩用戶信噪比為:




被D2D用戶對復用的信道總容量Cd為:


用戶在小區內受到的同頻干擾IC、ID為:

式中,PLdt_b表示D2D發送端與基站之間的路徑損耗,PLc_dr表示蜂窩用戶到D2D接收端的路徑損耗。
本文以信道容量最大為目標,系統信道容量為:

式中,Cc表示未被D2D對復用的蜂窩信道容量,Cd表示D2D對復用的鏈路容量。
在小區中,沒有和D2D用戶共享信道資源的蜂窩用戶僅僅受到高斯噪聲的干擾,不會受到小區內的同頻干擾,所以要使系統的總容量最大,只需要考慮存在同頻干擾的信道容量。優化模型可描述為:

限制條件為:

其中,式(11)、式(12)為確保蜂窩用戶與D2D用戶通信質量,設置信噪比門限值;式(13)(14)規定了蜂窩用戶與D2D用戶發射功率不能大于最大發射功率。
模擬退火算法(SA)最初是由N.Metropolis等人提出隨機尋優方法。它是從某一初溫開始,隨著溫度持續降低,目標函數在解空間中以一定的概率隨機尋求最優解。
在傳統的算法中用戶以固定的功率發送信息,相比于傳統的SA算法,本文以鏈路的總容量為目標函數,動態調整用戶的發射功率;為避免丟失進行概率采樣時的最優解,在搜索過程中及時記住并更新當前的最優解;設計了一種新的溫度更新函數,使在更新過程中溫度具有自適應性;添加了補充搜索過程,即在退火過程完成后,將搜索到的最優解為初始狀態,然后再執行模擬退火過程。假設在同一調度周期內,用戶之間的CSI保持不變或變化不大,D2D用戶隨機的復用滿足其自身條件的蜂窩信道,并計算用戶信噪比與信道容量。如果通過本次調度所得信道容量有所增加,則以本次調度所獲得的信道資源替換為最優信道,否則,根據Metropolis準則進行抽樣,以一定的概率接受該信道為目標信道。當達到調度周期后,進行退火處理,標記在此次調度中不滿足復用條件的信道,縮小搜索范圍并重新匹配符合條件的信道,直到滿足最終結束條件并退出算法。
本文設計了一種新的溫度更新函數,使溫度在更新過程中具有自適應性,更新過程如下:

其中,Ti+1代表下一狀態用戶的發射功率,Ti代表當前狀態用戶的發射功率,a代表接受次數,N1代表循環次數。
以Metropolis準則進行抽樣的概率計算如下:

算法具體步驟如下:
(1)為每對D2D用戶初始化蜂窩信道β,并計算用戶信噪比和鏈路容量Cβ=。
(2)根據式(15)、(16)動態調整用戶發射功率。
(3)引入新的可復用信道λ,計算用戶信噪比以及鏈路容量,按照式(17)求概率p。
(4)判斷信噪比是否滿足門限值,如果滿足門限值,則進入步驟5,否則返回步驟2。
(5)判斷Cλ是否大于Cβ,如果Cλ>Cβ,則進入步驟6;否則以概率p接受該信道λ,并返回步驟2。
(6)更新目標信道β為λ。
(7)判斷是否達到結束條件,如果達到結束條件,則得到當前最優復用信道β,以當前的最優信道β為初始信道,返回步驟(1)再次執行算法;否則,進行退溫處理,縮短周期,同時標記步驟(3)中不滿足復用條件的蜂窩信道,縮小搜索范圍,返回步驟(2)。
(8)判斷是否達到迭代次數,如果達到迭代次數,則退出算法;否則返回步驟(1)。
(9)每對D2D根據上述步驟匹配最優目標信道,得到最優解集,并計算系統中總信道容量Csum。
流程圖如圖2所示。

圖2 算法流程
本文選擇LTE單小區作為仿真場景,使用MATLAB驗證算法的有效性,仿真參數設置如表1所示。

表1 仿真參數
小區中用戶分布如圖3所示。小區是以基站為中心,在基站周圍設置25m的限制區域確?;舅芨蓴_較小。在小區中,蜂窩用戶與D2D用戶隨機分布,并且D2D用戶的發送端與接收端的距離不能超過50m。

圖3 用戶分布圖
D2D用戶對數與系統容量之間的關系如圖4所示。從圖4中可以明顯看出,隨著D2D對數的增加,系統容量也隨之增加,本文提出的算法獲得的系統容量要優于其他兩種算法。本文算法中,盡可能使D2D對復用更多的蜂窩用戶信道資源,并限制了用戶的發射功率以減小干擾,進一步提高了蜂窩用戶信道資源的利用率。

圖4 系統總容量與D2D用戶對數關系
D2D用戶對的距離與系統容量之間的關系如圖5所示。從圖5可以看出,隨著D2D用戶發射端與接收端的距離逐漸增加,三種算法的系統容量均隨之減小。由于D2D用戶之間距離增大會使兩者之間的路徑損耗增加,從而導致了系統的總容量下降。本文算法根據用戶之間距離的增加動態調整用戶的發射功率,得到的系統總容量要優于其他兩種算法。

圖5 系統總容量與用戶之間距離的關系
為解決由D2D用戶復用蜂窩上行信道資源所帶來的干擾問題,本文在SA的基礎上提出一種以信道容量最大為目標的改進算法,在改進的算法中設計一個新的溫度更新函數,使溫度更新時具有自適應性;為了避免在搜索過程中丟失最優解,記住當前的最優解并及時更新;將當前最優解作為初始狀態添加補充搜索過程以避免算法陷入局部最優狀態。仿真結果表明,改進算法與傳統的SA算法相比,全局搜索能力有較大提高。本文算法所得到的系統總容量相比于傳統的SA算法提高了6.5%左右,相比于隨機選擇算法提高了12.3%左右。