榮國(guó)成,王昊,沙莎
(1.長(zhǎng)春理工大學(xué) 電子信息工程學(xué)院,長(zhǎng)春 130022;2.長(zhǎng)春電子科技學(xué)院 電子工程學(xué)院,長(zhǎng)春 130114)
在下一代無(wú)線接入網(wǎng)絡(luò)中,由于通信系統(tǒng)應(yīng)具備嚴(yán)謹(jǐn)?shù)挠脩魬?yīng)用和測(cè)試用例的需求,以及服務(wù)和功能的高度異構(gòu)性,因此服務(wù)質(zhì)量(QoS)供應(yīng)更具挑戰(zhàn)性[1]??紤]到信道條件的多樣性,在獲得最大系統(tǒng)傳輸速率的同時(shí)保證用戶間速率較好的公平性,如何有效地分配資源是一個(gè)需要解決的問(wèn)題[2-4]。
通常,現(xiàn)有的OFDMA資源分配算法需進(jìn)行大量運(yùn)算[5]。因此需要降低算法復(fù)雜度來(lái)尋找資源分配的解決問(wèn)題[6]。目前將資源分配問(wèn)題轉(zhuǎn)換成凸函數(shù),雖然對(duì)算法的復(fù)雜性降低,但對(duì)用戶比例公平性處理并不好[7]。使用貪婪算法對(duì)MIMO-OFDMA子載波功率分配,使網(wǎng)絡(luò)吞吐量達(dá)到最大化,但并未考慮用戶間公平性[8]。根據(jù)拉格朗日對(duì)偶法結(jié)合次梯度法對(duì)資源分配,在得出功率和子載波的最優(yōu)的同時(shí)也增加了系統(tǒng)的復(fù)雜性[9]。在使用遺傳算法進(jìn)行資源分配,在保證用戶比例公平性下使系統(tǒng)吞吐量有了很大改善[10-11]。本文在其基礎(chǔ)上使用兩種優(yōu)化技術(shù)公平的分配子載波和功率,采用具有公平性保護(hù)因子的子載波分配技術(shù)(FSF)以確保用戶之間的公平,使用混合優(yōu)化算法對(duì)功率進(jìn)行分配,確保吞吐量最大化,同時(shí)降低算法復(fù)雜度。
圖1顯示了下行OFDMA系統(tǒng)模型的框圖。在基站中,每對(duì)OFDMA發(fā)射與接收的所有信道狀態(tài)信息會(huì)通過(guò)反饋信道發(fā)送到子載波和功率算法部分。發(fā)射機(jī)將每個(gè)用戶數(shù)據(jù)加載到其分配的子載波上。采集到信息以后,便會(huì)將子載波與功率信息以單獨(dú)信道方式發(fā)送給每個(gè)用戶,并更新資源分配方案。
圖1 OFDMA系統(tǒng)模型
使用兩種優(yōu)化技術(shù)公平的分配子載波和功率,首先假定一個(gè)系統(tǒng)中具有K個(gè)用戶和N個(gè)子載波,具有總發(fā)射功率為Ptot。目的是優(yōu)化子載波和功率分配,在同時(shí)保證用戶比例公平的前提下滿足給定的Ptot和最小用戶速率需求Rk,min實(shí)現(xiàn)更高的整體系統(tǒng)吞吐量。
假設(shè)每個(gè)子載波被反饋給每個(gè)時(shí)隙中的至多一個(gè)用戶,以避免不同用戶之間的干擾。Pk,n表示在第k個(gè)用戶第n個(gè)子載波下的瞬時(shí)傳輸功率,則在第K個(gè)用戶第n個(gè)子載波下最大瞬時(shí)傳輸速率為:
其中,B為可用總帶寬;N0是功率譜密度;N0(B/N)表示每個(gè)子信道上的噪聲功率;hk,n表示子信道n中的對(duì)應(yīng)用戶k的信道增益;Γk是信噪比(SNR)的間隙常數(shù)。此時(shí)用戶K的吞吐量定義為
其中,ρk,n只能是 0 或者 1,表示子載波n是否分配給用戶k,本文基于無(wú)線資源管理(RRM)考慮最終優(yōu)化問(wèn)題如下:
將Ptotal分配給用戶K,以最大限度地提高系統(tǒng)的總吞吐量。為了通用性,在信噪比間隔Γ中加入指標(biāo)k,是為了考慮每個(gè)用戶不同誤碼率需求時(shí)情況,在實(shí)際信號(hào)星座中Γ與誤碼率有關(guān),使用未編碼的QAM調(diào)制時(shí):
假設(shè)所有子載波的功率分配相等,基于子載波分配的優(yōu)化是次優(yōu)的,且子載波分配與功率分配相互獨(dú)立。
Ck,n是分配的子載波,Ck,n=1 表示子載波“n”已分配給用戶“k”,Rtot是所有用戶的總數(shù)據(jù)率。
(1)確定分配每個(gè)用戶的子載波數(shù)并初始化變量。假設(shè)前提為分配給每個(gè)用戶的子載波比例近似,且數(shù)據(jù)速率完全相同。
(2)將子載波分配給上一步確定的每個(gè)用戶,將為使用的子載波分配給用戶以提高系統(tǒng)的總?cè)萘?。在此步驟中主要有三個(gè)部分構(gòu)成:
第一部分向每個(gè)用戶分配對(duì)該用戶具有最大增益的子載波數(shù)。第一子載波是根據(jù)調(diào)度原則分配的,即預(yù)分配較少的用戶具有更高的優(yōu)先級(jí)來(lái)選擇子載波。
第二部分子載波根據(jù)“瞬時(shí)傳輸速率最小的用戶以其所需的比例優(yōu)先選擇一個(gè)子載波”這一策略分配給用戶。由于重視比例率,用戶的需要由容量最小的用戶除以比例常數(shù)來(lái)確定,一旦用戶獲得子載波的分配,他將不會(huì)再分配到任何子載波。在此步驟中強(qiáng)調(diào)用戶之間的比例公平性。
第三部分將剩余的子載波被分配給最好的用戶,其中每個(gè)用戶最多可以得到一個(gè)未分配的子載波。
(3)以用戶最小容量以及比例公平原則對(duì)子載波進(jìn)行分配。為此,引入了一個(gè)稱為偏差指標(biāo)(DI)的因子。這個(gè)因子表示所有用戶與其期望的總體偏差比例,當(dāng)此值變小時(shí),比例公平將得到加強(qiáng)。DI=0時(shí)表示理想的公平性。DI由下式(5)計(jì)算:
公平保障因素(FSF)用于來(lái)控制子載波變化的數(shù)量。在每個(gè)循環(huán)中,兩個(gè)選定用戶之間的比例不公平子載波將會(huì)被改變。因此這是一個(gè)迭代改變的過(guò)程,以失去一定容量為代價(jià)來(lái)提高系統(tǒng)公平性。
在現(xiàn)有遺傳算法和粒子群算法的基礎(chǔ)上,描述了解決功率分配問(wèn)題的PSO-GA算法的設(shè)計(jì)與實(shí)現(xiàn)。設(shè)OFDMA系統(tǒng)有K個(gè)用戶和N個(gè)子載波。系統(tǒng)將N個(gè)子載波的子集分配給用戶,并確定下行鏈路傳輸上每個(gè)分配的子載波的比特/符號(hào)數(shù)。
(1)設(shè)置參數(shù):分別設(shè)置迭代次數(shù)U,粒子群粒子數(shù)M以及算法參數(shù)中的慣性權(quán)重W,學(xué)習(xí)因子、位置邊界值、突變速度等常量。
(2)種群初始化,用同一組隨機(jī)粒子解初始化粒子,計(jì)算每個(gè)粒子的適應(yīng)度值,設(shè)置每個(gè)粒子的Pb值,從中選出最好的為Gb。
(3)根據(jù)公式(6)更新每個(gè)粒子的速度與位置。
其中,Xm表示粒子m的位置信息;Vm表示第m個(gè)粒子的速度;Pm表示在迭代第u次時(shí)獲得的粒子最佳值,迭代后總?cè)韩@得的全局最優(yōu)值為Pg;r1和r2是兩個(gè)[0,1]范圍內(nèi)的均勻分布的隨機(jī)值;c1和c2是加速度系數(shù)。
(4)設(shè)定適合度函數(shù),計(jì)算每個(gè)粒子的適應(yīng)度值,量化所有解的最優(yōu)性,即所有的粒子在算法中,可對(duì)其進(jìn)行測(cè)量與分類,將公式(3)定義為適應(yīng)度函數(shù)。
(5)根據(jù)步驟(4)中所求的粒子適應(yīng)度值對(duì)粒子群中粒子進(jìn)行標(biāo)記,按順序均分為三個(gè)部分,將每一粒子二進(jìn)制編碼作為基因序列,首先復(fù)制第一部分粒子的基因序列直接進(jìn)入后代更新;然后使用交叉算子作用于原第一部分粒子與第二部分粒子,其子代結(jié)果替換為第二部分粒子;最后對(duì)第三部分的粒子進(jìn)行變異操作,設(shè)定第三部分中的粒子每一位基因都具有Pm的概率發(fā)生變異。引入遺傳算法中的交叉與變異操作,可有效地避免算法陷入局部最優(yōu)值。
(6)更新每個(gè)粒子的Pb和Gb。
(7)如果滿足終止條件,則繼續(xù)進(jìn)行下一步驟;否則,轉(zhuǎn)到步驟(3)。
(8)停止并把Gb作為最終的解決方案。
流程圖如圖2所示。
圖2 混合PSO-GA算法流程圖
在仿真中,采用了四種測(cè)試函數(shù)來(lái)評(píng)估PSO-GA算法的有效性,測(cè)試函數(shù)被認(rèn)為是評(píng)估算法性能的目標(biāo)函數(shù)。如表1所示。
表1 測(cè)試函數(shù)
圖3-圖6則分別對(duì)應(yīng)四種評(píng)估函數(shù)的曲線圖,顯示了模擬的GA、PSO、PSO-GA的四條適應(yīng)度曲線,從以上四個(gè)圖中可以總結(jié)出:三種函數(shù)均需數(shù)代的迭代才能達(dá)到最優(yōu)解;GA算法的收斂相對(duì)于其他函數(shù)更慢一些。在收斂精度方面,通過(guò)圖3可以發(fā)現(xiàn)PSO-GA算法最終可在20次迭代以后收斂到0。而PSO算法與GA算法均在40次迭代以后才逐漸達(dá)到平衡,收斂到極值,這表明PSO和GA已經(jīng)下降到局部最優(yōu),不再得到最優(yōu)解0。通過(guò)仿真看出,這三種算法中,在進(jìn)行局部搜索和全局搜索時(shí),PSO-GA算法可以獲得比PSO和GA更好的結(jié)果,同時(shí)在收斂速度還是精度方面更優(yōu)越。
圖3 Rosenbrock測(cè)試函數(shù)的各算法比較
圖4 Griewank測(cè)試函數(shù)的各算法比較
圖5 Step測(cè)試函數(shù)的各算法比較
圖6 Rastrigin測(cè)試函數(shù)的各算法比較
為了評(píng)估PSO-GA算法在系統(tǒng)吞吐量方面的性能,使用MATLAB在OFDMA系統(tǒng)中進(jìn)行模擬仿真,發(fā)射端授權(quán)20 MHz總帶寬,每個(gè)用戶接收器隨機(jī)分布在距離其發(fā)射器0.5 km的圓內(nèi),考慮路徑損耗為32.4+20 log(D)(D代表距離)。設(shè)置算法中的參數(shù):最大迭代次數(shù)為100,種群數(shù)為90,引用Clerc提出的標(biāo)準(zhǔn)C1=C2=1.496 1和慣性權(quán)重W=0.729 8[12],突變概率 Pm 為 0.05。表 2為部分參數(shù),在系統(tǒng)吞吐量測(cè)試中分別應(yīng)用PSO算法、GA算法以及PSO-GA算法求解適應(yīng)函數(shù)得到數(shù)值結(jié)果如圖7所示。
表2 參數(shù)設(shè)定
圖7 系統(tǒng)吞吐量與進(jìn)化次數(shù)關(guān)系圖
對(duì)于這三種算法,總和容量最初隨著迭代次數(shù)的增加而增加,然后逐漸飽和,獲得較高并且穩(wěn)定的值。這表明,最初粒子不斷地移動(dòng)到新的位置,尋找更高的適應(yīng)度函數(shù)值,然后慢慢地收斂到一個(gè)接近最優(yōu)的點(diǎn)。通過(guò)圖7可以看出PSO-GA的適應(yīng)度值相對(duì)較大,接近1.872,這意味著在此刻的系統(tǒng)吞吐量可以達(dá)到1.872 Mb/s,使用PSO-GA進(jìn)行OFDMA系統(tǒng)的資源分配,其總?cè)萘渴冀K高于PSO算法與GA算法。
資源分配模擬系統(tǒng)吞吐量與用戶數(shù)量關(guān)系如圖8所示。引入三個(gè)完善的經(jīng)典資源管理算法,其中包括輪詢調(diào)度(RR),最大載波干擾比(Max-C/I)和比例公平(PF)。將PSO-GA算法與這三種資源管理算法進(jìn)行仿真比較,其中Max-C/I調(diào)度選擇信道條件最佳的用戶,最大限度地提高整個(gè)系統(tǒng)的吞吐量,它獲得的吞吐量可以看作是所有調(diào)度算法的吞吐量上限。在RR調(diào)度中,每個(gè)用戶具有相同比例條件,不考慮用戶信道條件,因此在所有調(diào)度算法中,RR調(diào)度具有最好的公平性,但吞吐量最低。PF在系統(tǒng)吞吐量和公平性之間取得了平衡,因此其獲得的吞吐量介于最大C/I和RR之間。這里提出的PSOGA算法的吞吐量也同樣位于上界Max-C/I和下界RR之間。
圖8 系統(tǒng)吞吐量與用戶數(shù)量之間的關(guān)系
本文針對(duì)優(yōu)化無(wú)線OFDMA中資源分配問(wèn)題,將資源問(wèn)題轉(zhuǎn)化為函數(shù)優(yōu)化問(wèn)題,分別使用子載波分配算法以及PSO-GA混合算法這兩種優(yōu)化技術(shù)公平的分配子載波和功率,在保證用戶比例公平性原則與系統(tǒng)整體吞吐量最大化條件下,降低算法復(fù)雜度。仿真結(jié)果表明,在測(cè)試函數(shù)中混合算法相比于遺傳算法、粒子群算法具有更快的收斂速度,同時(shí)在系統(tǒng)資源分配方面的吞吐量性能明顯優(yōu)于另外兩種算法。