李中捷,謝東朋
(智能無線通信湖北省重點(diǎn)實(shí)驗(yàn)室(中南民族大學(xué)),武漢 430074)
隨著通信技術(shù)的發(fā)展、物聯(lián)網(wǎng)及多媒體等應(yīng)用的廣泛使用,移動(dòng)通信網(wǎng)絡(luò)的數(shù)據(jù)流量獲得爆炸性的增長。終端直通(Device-to-Device, D2D)通信具有較高的無線傳輸速率和較低的時(shí)延,有著廣闊的應(yīng)用前景[1-3]。因此,未來的5G網(wǎng)絡(luò)將是由宏蜂窩用戶(Cellular User, CU)、小蜂窩用戶、D2D用戶(D2D User, DU)共存的混合通信網(wǎng)絡(luò)。因?yàn)镈2D用戶、小蜂窩用戶和宏蜂窩用戶共享信道資源時(shí)會(huì)產(chǎn)生嚴(yán)重的同頻干擾,所以如何有效地進(jìn)行干擾管理、提高頻譜資源利用率是當(dāng)前研究的熱點(diǎn)。
目前,學(xué)術(shù)界對蜂窩網(wǎng)絡(luò)中D2D通信的干擾管理問題進(jìn)行了大量研究。文獻(xiàn)[4]提出一種貪婪式啟發(fā)式算法,D2D用戶通過復(fù)用蜂窩用戶信道資源造成的干擾程度的大小選擇資源塊,但是沒有對用戶發(fā)射功率進(jìn)行控制。文獻(xiàn)[5]采用減輕D2D通信對整個(gè)系統(tǒng)的權(quán)重影響來降低其產(chǎn)生的干擾,但此方法付出的代價(jià)是降低D2D用戶的吞吐量。文獻(xiàn)[6]提出一種只考慮個(gè)體干擾的資源分配方案,并設(shè)計(jì)一種迭代算法解決D2D用戶和蜂窩用戶之間的干擾,雖然該方案保護(hù)了蜂窩用戶的服務(wù)質(zhì)量,但并沒有考慮D2D用戶的服務(wù)質(zhì)量。文獻(xiàn)[7]提出一種異構(gòu)網(wǎng)絡(luò)中基于網(wǎng)絡(luò)輔助設(shè)備控制的D2D智能資源管理方案,能夠有效提升系統(tǒng)的性能。文獻(xiàn)[8]提出一種基于背包理論的干擾感知資源分配算法,雖然這個(gè)方案的目的是為了最小化系統(tǒng)干擾的同時(shí)保持系統(tǒng)總速率,但很多情況下不能提供一個(gè)可行的分配方案。文獻(xiàn)[9]提出一種基于博弈理論的聯(lián)合集群策略和功率控制方案來最小化傳輸時(shí)間,但并沒有對信道資源進(jìn)行分配。文獻(xiàn)[10]提出了一種基于估價(jià)理論的資源分配算法,盡管該算法在一定程度上提升了系統(tǒng)容量,但在系統(tǒng)環(huán)境較差的情況下,性能達(dá)不到理想的效果。文獻(xiàn)[11]和文獻(xiàn)[12]提出一種基于非合作博弈論的功率控制與資源分配方案,在該方案中蜂窩用戶和D2D用戶各自獨(dú)立決定自己的功率以使得各自的能量效率最大。文獻(xiàn)[13]首先通過限制D2D用戶的發(fā)射功率來保證蜂窩用戶的服務(wù)質(zhì)量,然后在求出D2D用戶的發(fā)射功率后運(yùn)用Relax-based算法解決D2D用戶的資源分配問題。文獻(xiàn)[14]提出基于Gale-Shapley算法的資源分配算法,該方案有以下不足:1)只考慮了由宏蜂窩用戶和D2D用戶組成的系統(tǒng)環(huán)境,并沒有考慮到小蜂窩用戶對系統(tǒng)的干擾;2)該方案只是獲得了一個(gè)穩(wěn)定匹配,并沒有最大化系統(tǒng)容量;3)系統(tǒng)中用戶的發(fā)射功率固定,并不能最大限度提升系統(tǒng)性能。
針對文獻(xiàn)[14]中所提出方案的不足,本文在異構(gòu)蜂窩網(wǎng)絡(luò)環(huán)境下,提出了一種聯(lián)合功率控制的資源分配方案。該方案首先根據(jù)系統(tǒng)干擾模型和約束條件推導(dǎo)出每個(gè)D2D用戶和小蜂窩用戶復(fù)用宏蜂窩用戶信道資源時(shí)的最優(yōu)發(fā)射功率;其次采用Gale-Shapley算法得到一個(gè)穩(wěn)定的匹配解;最后通過交換搜索算法進(jìn)一步優(yōu)化分配方案。仿真結(jié)果表明該方案在有效保證用戶通信服務(wù)質(zhì)量的前提下,系統(tǒng)總?cè)萘勘平顑?yōu)解。
由宏基站和多個(gè)小蜂窩基站構(gòu)成的異構(gòu)蜂窩網(wǎng)絡(luò)模型如圖1所示,宏基站位于中心,小蜂窩基站服從密度為λs的齊次泊松點(diǎn)過程,系統(tǒng)中隨機(jī)分布三種用戶,集合H={1,2,…,D},M={1,2,…,C},W={1,2,…,J}分別表示D2D用戶集合,宏蜂窩用戶集合,小蜂窩用戶集合。
圖1 異構(gòu)蜂窩網(wǎng)絡(luò)
D2D用戶d復(fù)用信道n時(shí)的信號干擾噪聲比(Signal to Interference and Noise Ratio, SINR)為:
(1)
其中:Pd是D2D用戶d的發(fā)射功率,Pc為宏蜂窩用戶c的發(fā)射功率。Gdt,dr是D2D用戶d的發(fā)射方dt和接收方dr之間的信道增益,Gc,dr是宏蜂窩用戶c到D2D接收方dr的信道增益,N0是噪聲功率。
小蜂窩用戶j復(fù)用信道n時(shí)的SINR為:
(2)
其中:bj為小蜂窩用戶j接入的小蜂窩基站,Pj是小蜂窩用戶j的發(fā)射功率,Gj,bj是小蜂窩用戶j和小蜂窩基站bj之間的信道增益,Gc,bj是宏蜂窩用戶c和小蜂窩基站bj之間的信道增益。
宏蜂窩用戶c在信道n的SINR為:
(3)
假設(shè)N個(gè)信道資源已被宏蜂窩用戶全部占用,且宏蜂窩用戶以最大的發(fā)射功率PM發(fā)射,即Pc=PM,在保證用戶通信質(zhì)量前提下,以最大化系統(tǒng)總?cè)萘繛闇?zhǔn)則,為D2D用戶和小蜂窩用戶選擇最佳發(fā)射功率并分配信道資源。由香農(nóng)公式得到優(yōu)化問題的目標(biāo)函數(shù)及約束條件如式(4)~(11)所示:
(4)
(5)
(6)
(7)
(8)
(9)
(10)
0≤Pd≤PM,0≤Pj≤PM
(11)
式(5)、(6)、(7)保證了宏蜂窩用戶、小蜂窩用戶和D2D用戶的SINR大于閾值;式(8)、(9)確保每個(gè)小蜂窩用戶或者D2D用戶只能復(fù)用一個(gè)宏蜂窩用戶的信道資源,且每個(gè)信道資源只能被一個(gè)D2D用戶或者小蜂窩用戶復(fù)用;式(10)確保小蜂窩用戶和D2D用戶不能同時(shí)復(fù)用一個(gè)宏蜂窩用戶的信道資源;式(11)表示小蜂窩和D2D用戶的發(fā)射功率不能大于最大發(fā)射功率。
式(4)~(11)定義的資源分配問題是混合整數(shù)非線性規(guī)劃問題,可由遍歷法得到最優(yōu)解,但該方法復(fù)雜度太高,因此需采用復(fù)雜度較低、逼近最優(yōu)解的次優(yōu)算法。式(4)定義最大化系統(tǒng)總?cè)萘康哪繕?biāo)函數(shù),式(5)~(11)定義的約束條件能保證當(dāng)小蜂窩用戶和D2D用戶對宏蜂窩用戶造成過多的干擾時(shí),不復(fù)用該信道資源,有效地保證了用戶的通信服務(wù)質(zhì)量和系統(tǒng)的穩(wěn)定性。
由1.2節(jié)式(1)、(3)、(7)、(11)可以得到D2D用戶d復(fù)用信道n時(shí)的發(fā)射功率變化區(qū)間為:
(12)
其中:
(13)
(14)
信道n的容量為:
(15)
(16)
由C1n(Pd)對Pd求導(dǎo)后等于0可得到關(guān)于Pd的一元二次方程。求得該方程的根式判別式為:
Δ=4Gdt,drGd,BGB,cPM(GB,cN0+PMGB,cGc,dr-Gdt,drN0)
(17)
(18)
(19)
根據(jù)2.1節(jié)獲得的每個(gè)D2D用戶和小蜂窩用戶在各信道上的最優(yōu)發(fā)射功率,通過香農(nóng)公式求得各個(gè)用戶在不同信道上發(fā)射獲得的信道容量。將D2D用戶和小蜂窩用戶看作甲方,信道看作乙方,則甲乙雙方的匹配問題可以通過Gale-Shapley算法來進(jìn)行信道資源的優(yōu)化分配。
每個(gè)D2D用戶和小蜂窩用戶根據(jù)在信道上獲得的容量建立用戶偏好列表Ue_list,如果當(dāng)前有m個(gè)D2D用戶和n個(gè)小蜂窩用戶接入,則用編號1~m表示D2D用戶,編號m+1到m+n代表小蜂窩用戶。信道根據(jù)讓不同的用戶通信獲得信道總?cè)萘看笮〗⑵昧斜鞢hannel_list。表1表示由2個(gè)D2D用戶和3個(gè)小蜂窩用戶復(fù)用6個(gè)信道資源的用戶偏好列表,偏好列表每行的第一個(gè)元素具有最高的優(yōu)先級,有些用戶在某些優(yōu)先級上的元素為空,說明在這些信道上找不到合適的發(fā)射功率,例如偏好列表中的D2D用戶1只能在信道5,3,4,1,6上通信。
表1 D2D用戶和小蜂窩用戶的偏好列表
算法還需要定義以下參數(shù):
1)信道與D2D對和小蜂窩用戶之間聯(lián)系的集合(Association),集合Association(k)表示信道k包含已經(jīng)匹配的D2D或小蜂窩用戶;
2)定義當(dāng)前D對D2D和K個(gè)小蜂窩用戶最想復(fù)用的信道列表Pre=[δ1,δ2,…,δD,δD+1,…,δD+K],由信道偏好列表知δk是Ue_list(k)列表的第一個(gè)元素;
3)沒有匹配的D2D對和小蜂窩用戶集合表示為UNMATCH,信道總數(shù)為Channel_num。
具體算法的偽碼如算法1所示。
算法1 基于Gale-Shapley的資源分配算法。
1)
初始化用戶數(shù)目,信道總數(shù),發(fā)射功率,路徑損耗,集合Association,UNMATCH
2)
建立用戶和信道的偏好列表
3)
根據(jù)式(18)(19)求出用戶在不同信道上的最優(yōu)發(fā)射功率,并求得吞吐量
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的詳細(xì)步驟如下: 1)首先初始化用戶數(shù)目、信道數(shù)目、發(fā)射功率、路徑損耗等系統(tǒng)參數(shù),建立D2D用戶和信道的偏好列表,集合Association,未被匹配的D2D對集合UNMATCH,發(fā)射功率等參數(shù); 2)第4)~6)行初始化D2D用戶和小蜂窩用戶匹配的信道為空; 3)第7)~25)行是算法1的核心部分,只有所有接入的D2D用戶和小蜂窩用戶找到合適的信道,while循環(huán)才會(huì)中止。對于每個(gè)接入的D2D用戶或者小蜂窩用戶,根據(jù)偏好列表找到最想復(fù)用的信道資源,如果這個(gè)信道資源已經(jīng)被其他用戶復(fù)用,則信道根據(jù)偏好列表從當(dāng)前兩個(gè)用戶中找到更合適的用戶進(jìn)行匹配,拒絕另一個(gè)用戶,被拒絕的接入用戶更新偏好列表,下一次循環(huán)將從未被拒絕的信道中找到優(yōu)先級最高的信道發(fā)出通信請求。 4)算法第26)~28)表示在算法的最后階段,某些D2D用戶和小蜂窩用戶因?yàn)镾INR閾值的限制無法找到合適的信道資源,也假設(shè)這種用戶已找到合適的資源,從集合UNMATCH中移除這些用戶。 通過2.2 節(jié)的Gale-Shapley資源分配算法,可以從集合Association中可以獲得用戶和信道的一個(gè)穩(wěn)定匹配,該匹配并不能從最大限度上提升系統(tǒng)總?cè)萘浚虼嗽谠撈ヅ浣Y(jié)果的基礎(chǔ)上通過交換搜索算法來進(jìn)一步提高系統(tǒng)總?cè)萘?。假設(shè)2.2節(jié)經(jīng)過算法1的匹配獲得的系統(tǒng)容量為R,對于兩個(gè)不同的接入用戶,交換各自匹配的信道,如果交換信道后的系統(tǒng)容量R1大于當(dāng)前的系統(tǒng)容量,則更新集合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) 一組用戶交換匹配信道后的系統(tǒng)容量為R1 7) ifR1 8) Association=Current_match 9) end 10) end 為了驗(yàn)證本文所提方案的有效性,考慮在長期演進(jìn)-頻分雙工(Long Term Evolution-Frequency Division Duplex, LTE-FDD)異構(gòu)蜂窩系統(tǒng)下,通過Matlab軟件進(jìn)行系統(tǒng)級仿真,對比表2中5種方案的系統(tǒng)性能,驗(yàn)證了不同情形下系統(tǒng)的總系統(tǒng)容量、系統(tǒng)能量效率以及D2D用戶和小蜂窩用戶的SINR和發(fā)射功率分布情況。系統(tǒng)仿真采用第三代合作伙伴計(jì)劃-長期演進(jìn)(3rd Generation Partnership Project-Long Term Evolution, 3GPP-LTE)所規(guī)定的正交頻分多址接入(Orthogonal Frequency Division Multiple Access, OFDMA)系統(tǒng)參數(shù),具體參數(shù)設(shè)置如表3所示。 表2 5種資源分配方案 表3 仿真參數(shù) 圖2表示當(dāng)宏蜂窩用戶一定的情況下,系統(tǒng)總?cè)萘侩S接入用戶數(shù)的變化情況。從圖2中可以看出,隨著可接入用戶數(shù)目的增加,系統(tǒng)的總?cè)萘坎粩嘣黾印F渲校悍桨?是本文所提方案,因?yàn)樵摲桨嘎?lián)合功率控制,并且結(jié)合算法1和算法2,所以獲得的系統(tǒng)總?cè)萘拷七_(dá)到方案5最優(yōu)窮搜索算法的系統(tǒng)容量;最優(yōu)窮舉搜索算法需要遍歷所有的分配情況,計(jì)算量太高;隨機(jī)資源分配算法因?yàn)闆]有優(yōu)化目標(biāo)函數(shù),計(jì)算復(fù)雜度最低,但是性能最差。 圖2 資源分配方案的系統(tǒng)總?cè)萘繉Ρ?/p> 圖3表示系統(tǒng)總?cè)萘亢秃攴涓C用戶SINR門限的關(guān)系, 從圖中可以看出,隨著宏蜂窩用戶SINR門限的提高,系統(tǒng)總?cè)萘坎粩嘟档?,因?yàn)镾INR門限的提高會(huì)導(dǎo)致某些宏蜂窩用戶不能正常通信。而且,從式(1)、(2)、(3)可以看出,SINR門限提高會(huì)導(dǎo)致一些D2D用戶和小蜂窩用戶因避免對宏蜂窩用戶造成過多干擾而無法正常通信,所以系統(tǒng)總?cè)萘坎粩嘟档汀?/p> 圖3 宏蜂窩用戶SINR門限對系統(tǒng)總?cè)萘康挠绊?/p> 圖4表示接入用戶SINR的累積分布函數(shù)(Cumulative Distribution Function, CDF)。從圖中可以看出,通信用戶的SINR都大于閾值,因此用戶的通信服務(wù)質(zhì)量得到有效的保障。進(jìn)行功率控制優(yōu)化的D2D用戶和小蜂窩用戶的SINR低于固定功率時(shí)的SINR,宏蜂窩用戶的SINR則優(yōu)于未進(jìn)行功率控制時(shí)的SINR,因?yàn)樵诠β蕛?yōu)化控制的情況下,D2D用戶和小蜂窩用戶的發(fā)射功率并不是最大的發(fā)射功率,所以減少了對宏基站的干擾。 圖4 接入用戶的SINR累計(jì)分布函數(shù) 圖5表示當(dāng)宏蜂窩用戶一定時(shí),系統(tǒng)能量效率和接入用戶數(shù)的關(guān)系。從圖中可以看出,隨著接入用戶的增加,盡管資源復(fù)用方案可以提高系統(tǒng)吞吐量,但是用戶消耗的總功率也增加,因此采用固定發(fā)射功率的方案1和方案2會(huì)出現(xiàn)能量效率降低的情況。由于方案3、方案4和方案5對接入用戶的發(fā)射功率進(jìn)行了優(yōu)化,能量效率得到提升。方案5雖然可以達(dá)到最優(yōu)的系統(tǒng)能量效率,但需要遍歷所有的情況,計(jì)算量太大。 圖5 資源分配方案的系統(tǒng)能量效率對比 圖6表示SINR門限值分別取-10 dB、-5 dB和0 dB時(shí),接入用戶的功率分布。從圖中可以看出,各用戶發(fā)射功率分布在區(qū)間[0,200] mW中,其中區(qū)間[0,40] mW和[160,200] mW的用戶數(shù)目最多。[160,200] mW區(qū)間的用戶數(shù)目隨SINR門限的增加不斷減少,因?yàn)镾INR門限的提高會(huì)導(dǎo)致宏蜂窩用戶能接受的最大干擾變小,所以在功率較高區(qū)間的用戶數(shù)目會(huì)減少。 圖6 接入用戶的發(fā)射功率分布 本文提出一種在異構(gòu)網(wǎng)絡(luò)中D2D用戶和小蜂窩用戶復(fù)用宏蜂窩用戶上行信道資源的聯(lián)合功率控制資源分配方案。該方案首先根據(jù)系統(tǒng)干擾模型及約束條件動(dòng)態(tài)調(diào)整D2D用戶和小蜂窩用戶的發(fā)射功率,然后采用Gale-Shapley算法和交換搜索算法得到信道分配的優(yōu)化方案。仿真結(jié)果表明,該方案能夠達(dá)到近似最優(yōu)的系統(tǒng)總?cè)萘?,有效提高頻率利用率和系統(tǒng)能量效率。下一步的工作是構(gòu)建功率控制和系統(tǒng)容量的聯(lián)合目標(biāo)函數(shù),研究對該目標(biāo)函數(shù)的優(yōu)化求解問題,進(jìn)一步提高頻率利用率。2.3 交換搜索算法
3 仿真實(shí)驗(yàn)
4 結(jié)語