李中捷,謝東朋
(智能無線通信湖北省重點實驗室(中南民族大學),武漢 430074)
隨著通信技術的發展、物聯網及多媒體等應用的廣泛使用,移動通信網絡的數據流量獲得爆炸性的增長。終端直通(Device-to-Device, D2D)通信具有較高的無線傳輸速率和較低的時延,有著廣闊的應用前景[1-3]。因此,未來的5G網絡將是由宏蜂窩用戶(Cellular User, CU)、小蜂窩用戶、D2D用戶(D2D User, DU)共存的混合通信網絡。因為D2D用戶、小蜂窩用戶和宏蜂窩用戶共享信道資源時會產生嚴重的同頻干擾,所以如何有效地進行干擾管理、提高頻譜資源利用率是當前研究的熱點。
目前,學術界對蜂窩網絡中D2D通信的干擾管理問題進行了大量研究。文獻[4]提出一種貪婪式啟發式算法,D2D用戶通過復用蜂窩用戶信道資源造成的干擾程度的大小選擇資源塊,但是沒有對用戶發射功率進行控制。文獻[5]采用減輕D2D通信對整個系統的權重影響來降低其產生的干擾,但此方法付出的代價是降低D2D用戶的吞吐量。文獻[6]提出一種只考慮個體干擾的資源分配方案,并設計一種迭代算法解決D2D用戶和蜂窩用戶之間的干擾,雖然該方案保護了蜂窩用戶的服務質量,但并沒有考慮D2D用戶的服務質量。文獻[7]提出一種異構網絡中基于網絡輔助設備控制的D2D智能資源管理方案,能夠有效提升系統的性能。文獻[8]提出一種基于背包理論的干擾感知資源分配算法,雖然這個方案的目的是為了最小化系統干擾的同時保持系統總速率,但很多情況下不能提供一個可行的分配方案。文獻[9]提出一種基于博弈理論的聯合集群策略和功率控制方案來最小化傳輸時間,但并沒有對信道資源進行分配。文獻[10]提出了一種基于估價理論的資源分配算法,盡管該算法在一定程度上提升了系統容量,但在系統環境較差的情況下,性能達不到理想的效果。文獻[11]和文獻[12]提出一種基于非合作博弈論的功率控制與資源分配方案,在該方案中蜂窩用戶和D2D用戶各自獨立決定自己的功率以使得各自的能量效率最大。文獻[13]首先通過限制D2D用戶的發射功率來保證蜂窩用戶的服務質量,然后在求出D2D用戶的發射功率后運用Relax-based算法解決D2D用戶的資源分配問題。文獻[14]提出基于Gale-Shapley算法的資源分配算法,該方案有以下不足:1)只考慮了由宏蜂窩用戶和D2D用戶組成的系統環境,并沒有考慮到小蜂窩用戶對系統的干擾;2)該方案只是獲得了一個穩定匹配,并沒有最大化系統容量;3)系統中用戶的發射功率固定,并不能最大限度提升系統性能。
針對文獻[14]中所提出方案的不足,本文在異構蜂窩網絡環境下,提出了一種聯合功率控制的資源分配方案。該方案首先根據系統干擾模型和約束條件推導出每個D2D用戶和小蜂窩用戶復用宏蜂窩用戶信道資源時的最優發射功率;其次采用Gale-Shapley算法得到一個穩定的匹配解;最后通過交換搜索算法進一步優化分配方案。仿真結果表明該方案在有效保證用戶通信服務質量的前提下,系統總容量逼近最優解。
由宏基站和多個小蜂窩基站構成的異構蜂窩網絡模型如圖1所示,宏基站位于中心,小蜂窩基站服從密度為λs的齊次泊松點過程,系統中隨機分布三種用戶,集合H={1,2,…,D},M={1,2,…,C},W={1,2,…,J}分別表示D2D用戶集合,宏蜂窩用戶集合,小蜂窩用戶集合。

圖1 異構蜂窩網絡

D2D用戶d復用信道n時的信號干擾噪聲比(Signal to Interference and Noise Ratio, SINR)為:
(1)
其中:Pd是D2D用戶d的發射功率,Pc為宏蜂窩用戶c的發射功率。Gdt,dr是D2D用戶d的發射方dt和接收方dr之間的信道增益,Gc,dr是宏蜂窩用戶c到D2D接收方dr的信道增益,N0是噪聲功率。
小蜂窩用戶j復用信道n時的SINR為:
(2)
其中:bj為小蜂窩用戶j接入的小蜂窩基站,Pj是小蜂窩用戶j的發射功率,Gj,bj是小蜂窩用戶j和小蜂窩基站bj之間的信道增益,Gc,bj是宏蜂窩用戶c和小蜂窩基站bj之間的信道增益。
宏蜂窩用戶c在信道n的SINR為:
(3)

假設N個信道資源已被宏蜂窩用戶全部占用,且宏蜂窩用戶以最大的發射功率PM發射,即Pc=PM,在保證用戶通信質量前提下,以最大化系統總容量為準則,為D2D用戶和小蜂窩用戶選擇最佳發射功率并分配信道資源。由香農公式得到優化問題的目標函數及約束條件如式(4)~(11)所示:

(4)

(5)

(6)

(7)

(8)

(9)
(10)
0≤Pd≤PM,0≤Pj≤PM
(11)
式(5)、(6)、(7)保證了宏蜂窩用戶、小蜂窩用戶和D2D用戶的SINR大于閾值;式(8)、(9)確保每個小蜂窩用戶或者D2D用戶只能復用一個宏蜂窩用戶的信道資源,且每個信道資源只能被一個D2D用戶或者小蜂窩用戶復用;式(10)確保小蜂窩用戶和D2D用戶不能同時復用一個宏蜂窩用戶的信道資源;式(11)表示小蜂窩和D2D用戶的發射功率不能大于最大發射功率。
式(4)~(11)定義的資源分配問題是混合整數非線性規劃問題,可由遍歷法得到最優解,但該方法復雜度太高,因此需采用復雜度較低、逼近最優解的次優算法。式(4)定義最大化系統總容量的目標函數,式(5)~(11)定義的約束條件能保證當小蜂窩用戶和D2D用戶對宏蜂窩用戶造成過多的干擾時,不復用該信道資源,有效地保證了用戶的通信服務質量和系統的穩定性。
由1.2節式(1)、(3)、(7)、(11)可以得到D2D用戶d復用信道n時的發射功率變化區間為:
(12)
其中:
(13)
(14)
信道n的容量為:

(15)

(16)
由C1n(Pd)對Pd求導后等于0可得到關于Pd的一元二次方程。求得該方程的根式判別式為:
Δ=4Gdt,drGd,BGB,cPM(GB,cN0+PMGB,cGc,dr-Gdt,drN0)
(17)


(18)

(19)
根據2.1節獲得的每個D2D用戶和小蜂窩用戶在各信道上的最優發射功率,通過香農公式求得各個用戶在不同信道上發射獲得的信道容量。將D2D用戶和小蜂窩用戶看作甲方,信道看作乙方,則甲乙雙方的匹配問題可以通過Gale-Shapley算法來進行信道資源的優化分配。
每個D2D用戶和小蜂窩用戶根據在信道上獲得的容量建立用戶偏好列表Ue_list,如果當前有m個D2D用戶和n個小蜂窩用戶接入,則用編號1~m表示D2D用戶,編號m+1到m+n代表小蜂窩用戶。信道根據讓不同的用戶通信獲得信道總容量大小建立偏好列表Channel_list。表1表示由2個D2D用戶和3個小蜂窩用戶復用6個信道資源的用戶偏好列表,偏好列表每行的第一個元素具有最高的優先級,有些用戶在某些優先級上的元素為空,說明在這些信道上找不到合適的發射功率,例如偏好列表中的D2D用戶1只能在信道5,3,4,1,6上通信。

表1 D2D用戶和小蜂窩用戶的偏好列表
算法還需要定義以下參數:
1)信道與D2D對和小蜂窩用戶之間聯系的集合(Association),集合Association(k)表示信道k包含已經匹配的D2D或小蜂窩用戶;
2)定義當前D對D2D和K個小蜂窩用戶最想復用的信道列表Pre=[δ1,δ2,…,δD,δD+1,…,δD+K],由信道偏好列表知δk是Ue_list(k)列表的第一個元素;
3)沒有匹配的D2D對和小蜂窩用戶集合表示為UNMATCH,信道總數為Channel_num。
具體算法的偽碼如算法1所示。
算法1 基于Gale-Shapley的資源分配算法。
1)
初始化用戶數目,信道總數,發射功率,路徑損耗,集合Association,UNMATCH
2)
建立用戶和信道的偏好列表
3)
根據式(18)(19)求出用戶在不同信道上的最優發射功率,并求得吞吐量
4)
fori∈W∪Hdo
5)
Association[i]=?
6)
end
7)
whileUNMATCH=? do
8)
for ?k∈UNMATCHdo
9)
temp=δk
10)
ifAssociation[temp]=? and 滿足式(5)~(8)
11)
Association[temp]=k
12)
UNMATCH=UNMATCH-{k}
13)
else
14)
P1=用戶k在Channel_list的偏好值
15)
P2=用戶Association[temp]在Channel_list的偏好值
16)
ifP1 17) Mid_ue=Association[temp] 18) Association[temp]=k 19) UNMATCH=UNMATCH-{k} 20) UNMATCH=UNMATCH+{Mid_ue} 21) Ue_list(Mid_ue)=Ue_list(Mid_ue)-δMid_ue,更新Pre 22) else 23) Ue_list(k)=Ue_list(k)-δk,更新Pre 24) end 25) end 26) ifUe_list(w)=?(w∈H) 27) UNMATCH=UNMATCH-{w} 28) end 29) end 30) end 算法1的詳細步驟如下: 1)首先初始化用戶數目、信道數目、發射功率、路徑損耗等系統參數,建立D2D用戶和信道的偏好列表,集合Association,未被匹配的D2D對集合UNMATCH,發射功率等參數; 2)第4)~6)行初始化D2D用戶和小蜂窩用戶匹配的信道為空; 3)第7)~25)行是算法1的核心部分,只有所有接入的D2D用戶和小蜂窩用戶找到合適的信道,while循環才會中止。對于每個接入的D2D用戶或者小蜂窩用戶,根據偏好列表找到最想復用的信道資源,如果這個信道資源已經被其他用戶復用,則信道根據偏好列表從當前兩個用戶中找到更合適的用戶進行匹配,拒絕另一個用戶,被拒絕的接入用戶更新偏好列表,下一次循環將從未被拒絕的信道中找到優先級最高的信道發出通信請求。 4)算法第26)~28)表示在算法的最后階段,某些D2D用戶和小蜂窩用戶因為SINR閾值的限制無法找到合適的信道資源,也假設這種用戶已找到合適的資源,從集合UNMATCH中移除這些用戶。 通過2.2 節的Gale-Shapley資源分配算法,可以從集合Association中可以獲得用戶和信道的一個穩定匹配,該匹配并不能從最大限度上提升系統總容量,因此在該匹配結果的基礎上通過交換搜索算法來進一步提高系統總容量。假設2.2節經過算法1的匹配獲得的系統容量為R,對于兩個不同的接入用戶,交換各自匹配的信道,如果交換信道后的系統容量R1大于當前的系統容量,則更新集合Association,否則保持原來的匹配。具體的偽碼如算法2所示。 算法2 交換搜索算法。 1) for ?i,j∈H∪Wandi≠j 2) Current_match=Association 3) FRONT=Association(i) 4) Association(i)=Association(j) 5) Association(j)=FRONT 6) 一組用戶交換匹配信道后的系統容量為R1 7) ifR1 8) Association=Current_match 9) end 10) end 為了驗證本文所提方案的有效性,考慮在長期演進-頻分雙工(Long Term Evolution-Frequency Division Duplex, LTE-FDD)異構蜂窩系統下,通過Matlab軟件進行系統級仿真,對比表2中5種方案的系統性能,驗證了不同情形下系統的總系統容量、系統能量效率以及D2D用戶和小蜂窩用戶的SINR和發射功率分布情況。系統仿真采用第三代合作伙伴計劃-長期演進(3rd Generation Partnership Project-Long Term Evolution, 3GPP-LTE)所規定的正交頻分多址接入(Orthogonal Frequency Division Multiple Access, OFDMA)系統參數,具體參數設置如表3所示。 表2 5種資源分配方案 表3 仿真參數 圖2表示當宏蜂窩用戶一定的情況下,系統總容量隨接入用戶數的變化情況。從圖2中可以看出,隨著可接入用戶數目的增加,系統的總容量不斷增加。其中:方案4是本文所提方案,因為該方案聯合功率控制,并且結合算法1和算法2,所以獲得的系統總容量近似達到方案5最優窮搜索算法的系統容量;最優窮舉搜索算法需要遍歷所有的分配情況,計算量太高;隨機資源分配算法因為沒有優化目標函數,計算復雜度最低,但是性能最差。 圖2 資源分配方案的系統總容量對比 圖3表示系統總容量和宏蜂窩用戶SINR門限的關系, 從圖中可以看出,隨著宏蜂窩用戶SINR門限的提高,系統總容量不斷降低,因為SINR門限的提高會導致某些宏蜂窩用戶不能正常通信。而且,從式(1)、(2)、(3)可以看出,SINR門限提高會導致一些D2D用戶和小蜂窩用戶因避免對宏蜂窩用戶造成過多干擾而無法正常通信,所以系統總容量不斷降低。 圖3 宏蜂窩用戶SINR門限對系統總容量的影響 圖4表示接入用戶SINR的累積分布函數(Cumulative Distribution Function, CDF)。從圖中可以看出,通信用戶的SINR都大于閾值,因此用戶的通信服務質量得到有效的保障。進行功率控制優化的D2D用戶和小蜂窩用戶的SINR低于固定功率時的SINR,宏蜂窩用戶的SINR則優于未進行功率控制時的SINR,因為在功率優化控制的情況下,D2D用戶和小蜂窩用戶的發射功率并不是最大的發射功率,所以減少了對宏基站的干擾。 圖4 接入用戶的SINR累計分布函數 圖5表示當宏蜂窩用戶一定時,系統能量效率和接入用戶數的關系。從圖中可以看出,隨著接入用戶的增加,盡管資源復用方案可以提高系統吞吐量,但是用戶消耗的總功率也增加,因此采用固定發射功率的方案1和方案2會出現能量效率降低的情況。由于方案3、方案4和方案5對接入用戶的發射功率進行了優化,能量效率得到提升。方案5雖然可以達到最優的系統能量效率,但需要遍歷所有的情況,計算量太大。 圖5 資源分配方案的系統能量效率對比 圖6表示SINR門限值分別取-10 dB、-5 dB和0 dB時,接入用戶的功率分布。從圖中可以看出,各用戶發射功率分布在區間[0,200] mW中,其中區間[0,40] mW和[160,200] mW的用戶數目最多。[160,200] mW區間的用戶數目隨SINR門限的增加不斷減少,因為SINR門限的提高會導致宏蜂窩用戶能接受的最大干擾變小,所以在功率較高區間的用戶數目會減少。 圖6 接入用戶的發射功率分布 本文提出一種在異構網絡中D2D用戶和小蜂窩用戶復用宏蜂窩用戶上行信道資源的聯合功率控制資源分配方案。該方案首先根據系統干擾模型及約束條件動態調整D2D用戶和小蜂窩用戶的發射功率,然后采用Gale-Shapley算法和交換搜索算法得到信道分配的優化方案。仿真結果表明,該方案能夠達到近似最優的系統總容量,有效提高頻率利用率和系統能量效率。下一步的工作是構建功率控制和系統容量的聯合目標函數,研究對該目標函數的優化求解問題,進一步提高頻率利用率。2.3 交換搜索算法
3 仿真實驗







4 結語