張 軍,雍 凱,吳 怡
(1.南京郵電大學(xué) 通信與信息工程學(xué)院,南京 210003;2.福建師范大學(xué) 光電與信息工程學(xué)院,福州 350117)
與傳統(tǒng)的地面通信基礎(chǔ)設(shè)施相比,使用無人機輔助近海通信具有很大的優(yōu)勢,被認為是未來無線網(wǎng)絡(luò)中不可缺少的組成部分,也是無線通信領(lǐng)域一項很有開發(fā)潛力的技術(shù)[1-4]。
無人機輔助無線通信網(wǎng)絡(luò)的研究還處于起步階段。文獻[5]中提出了三種場景,即無人機空中基站、無人機空中中繼和無人機空中數(shù)據(jù)采集?,F(xiàn)有的研究大多集中在無人機作為移動基站或者移動中繼的有效部署上[6-10],這些研究都表明了使用無人機輔助無線通信與傳統(tǒng)基礎(chǔ)通信設(shè)施相比會帶來額外增益。然而上述研究都是建立在用戶位置固定的場景下,由于地面用戶移動位置不可預(yù)測,上述方案都存在局限性。
對于多無人機輔助通信,文獻[10]研究了多天線地面站與無人機群之間的多輸入多輸出(Multiple-Input Multiple-Output,MIMO)上行傳輸問題,通過調(diào)整多無人機的三維部署來最大限度地提高信道容量,提出了一種分散學(xué)習(xí)算法實現(xiàn)MIMO系統(tǒng)的最佳納什均衡;文獻[11]研究了多無人機輔助蜂窩網(wǎng)絡(luò)中的地面用戶通信速率問題,通過確定無人機的數(shù)量和用戶通信調(diào)度并優(yōu)化各無人機的位置,最大化最小地面用戶的速率,確保所有用戶通信服務(wù)的公平性;文獻[12]提出了使用多無人機來輔助卸載蜂窩熱點上過載的數(shù)據(jù)流量,通過聯(lián)合優(yōu)化頻譜分配、無人機覆蓋半徑和無人機數(shù)量來最大化最小用戶數(shù)據(jù)吞吐量;文獻[13]研究了多無人機輔助通信在滿足用戶速率要求的前提下,以最小化多無人機的總功率為目標(biāo),推導(dǎo)出最優(yōu)的無人機數(shù)量和無人機飛行高度的閉式解,并揭示了無人機的最優(yōu)飛行高度和各項參數(shù)之間的關(guān)系。綜上所述,現(xiàn)有的文獻表明無人機輔助通信技術(shù)是未來無線通信網(wǎng)絡(luò)中不可或缺的一部分,然而,目前無人機輔助通信的研究大都是建立在用戶位置固定的場景。當(dāng)位置固定的用戶變?yōu)橐苿佑脩魰r,可以利用移動用戶在不同時刻的位置信息獲得用戶的瞬時信道狀態(tài)信息,從而優(yōu)化通信網(wǎng)絡(luò)中無人機在不同時刻的資源分配。此外,當(dāng)使用多無人機輔助通信時,各無人機服務(wù)的用戶數(shù)量、各無人機的航跡規(guī)劃以及各無人機與用戶之間通信公平性等問題尚未被研究。
與現(xiàn)有文獻不同,本文針對多無人機輔助移動用戶通信的下行無線傳輸系統(tǒng),提出了一種用戶吞吐量最大化的多無人機發(fā)送功率和飛行航跡分簇優(yōu)化方法,并通過仿真驗證了所提方法的有效性。
如圖1所示,考慮一個多無人機輔助多個近海移動用戶的下行無線通信系統(tǒng),該系統(tǒng)中包括K架作為移動基站的無人機和M個近海移動用戶,由無人機為用戶提供移動通信服務(wù)。在同一時刻內(nèi),每個用戶可以選擇任意一架無人機為其提供通信服務(wù),但是只能同時與一架無人機進行通信。每架無人機可以同時服務(wù)多個近海用戶,為了便于區(qū)分不同無人機服務(wù)的用戶群體,將由同一架無人機服務(wù)的用戶集群劃分到同一個簇中。無人機與用戶之間采用頻分多址(Frequency Division Multiple Access,FDMA)技術(shù)進行數(shù)據(jù)傳輸,并且為每架無人機分配不同頻率的頻段,避免各個用戶簇之間以及簇內(nèi)用戶之間的互相干擾。
圖1 系統(tǒng)模型圖
假設(shè)總服務(wù)時間為T個時隙,且每個時隙的長度為單位時間,每個時刻對應(yīng)的用戶位置用Qn,t=(Ux[n,t],Uy[n,t])來表示,無人機的飛行高度固定為H,最大飛行速度為V,位置用qk,t=(x[k,t],y[k,t])來表示。因此無人機在飛行過程中的位置約束可以表示為
‖qk,t-qk,t-1‖2≤V2,t∈[1,T],
(1)
即無人機在一個時隙內(nèi)的飛行距離受限于飛行速度。由于在空中飛行的無人機與近海用戶通信時基本上沒有障礙物阻擋信號的傳播,以視距(Line-of-Sight,LoS)鏈路為主,所以采用自由空間路徑損耗模型,第k架無人機與第n個用戶在第t個時隙的大尺度衰落系數(shù)βk,n,t可以表示為[9]
(2)
式中:β0是在參考距離d=1 m時的路徑損耗。由于無人機與近海用戶之間主要以LoS鏈路為主,為了簡化系統(tǒng)模型方便迭代計算,本文只考慮了大尺度衰落,在后續(xù)的研究中將在信道模型中考慮非LoS鏈路以及小尺度衰落。
(3)
(4a)
s.t. C1:pk,n,t≥0;
(4b)
(4c)
C3:‖qk,t-qk,t-1‖2≤V2,t∈[1,T];
(4d)
(4e)
式(4)是一個非凸優(yōu)化問題,無人機的發(fā)送功率pk,n,t和飛行航跡qk,t之間存在非線性耦合,約束條件C4也使得該問題成為一個混合整數(shù)規(guī)劃問題,很難得到該問題的最優(yōu)解,只能通過一些非凸問題的優(yōu)化方法尋找該問題的近似次優(yōu)解。
式(4)中的約束條件C1和C2限制每架無人機的發(fā)送功率分配,約束條件C3限制每架無人機的最大飛行速度,約束條件C4是為了保證每個時隙內(nèi)所有用戶都能被無人機服務(wù)到,并且每架無人機服務(wù)的用戶數(shù)量|Nk,t|被限制為整數(shù),這一約束使得原問題是一個非線性混合整數(shù)規(guī)劃問題,標(biāo)準(zhǔn)凸優(yōu)化方法很難求解。
為了能夠求解該混合整數(shù)規(guī)劃問題,首先,在每個時隙內(nèi)使用K-means聚類方法。根據(jù)用戶的位置對用戶進行分簇,距離較為靠近的用戶劃分到同一個簇中。將分簇的結(jié)果作為每架無人機在每個時隙內(nèi)需要服務(wù)的用戶簇,這樣,原優(yōu)化問題的約束條件C4以及要優(yōu)化的變量Nk,t就不再需要考慮了。其次,式(4)的目標(biāo)函數(shù)Rsum是總服務(wù)時間內(nèi)所有無人機的數(shù)據(jù)吞吐量之和,然而無人機的發(fā)送功率和飛行航跡之間存在非線性耦合,很難求解該目標(biāo)函數(shù)的全局最優(yōu)解。由于在每個時隙內(nèi)先對用戶進行了分簇,基于貪婪算法的思想,在求解問題時,總是做出在當(dāng)前狀態(tài)下的最好選擇,不從全局最優(yōu)上加以考慮,優(yōu)化問題的目標(biāo)函數(shù)可以松弛為最大化每個時隙內(nèi)各無人機的數(shù)據(jù)吞吐量之和,先求出每個時隙內(nèi)各無人機的最大數(shù)據(jù)吞吐量,再對其求和得到總服務(wù)時間內(nèi)所有無人機的最大數(shù)據(jù)吞吐量。由于局部最優(yōu)并不能保證全局最優(yōu),每個時隙內(nèi)無人機最大數(shù)據(jù)吞吐量的最優(yōu)解不是原問題要求的總服務(wù)時間內(nèi)的全局最優(yōu)解,所以本文中提出的優(yōu)化方法求出的是原問題的一個近似次優(yōu)解。
在每一個時隙內(nèi),劃分到同一個用戶簇中的所有用戶由同一架無人機提供服務(wù),根據(jù)簇內(nèi)用戶的數(shù)量和位置,分別優(yōu)化每個用戶簇對應(yīng)的無人機的發(fā)送功率和最優(yōu)通信位置,原問題的目標(biāo)函數(shù)可以轉(zhuǎn)換為最大化每個時隙內(nèi)無人機的數(shù)據(jù)吞吐量,即最大化Rn,優(yōu)化問題可以表述為
(5a)
s.t. C1:pn≥0;
(5b)
(5c)
式(5)是一個聯(lián)合優(yōu)化發(fā)送功率和無人機位置的非凸優(yōu)化問題,其目標(biāo)函數(shù)是最大化該用戶簇內(nèi)所有用戶的數(shù)據(jù)吞吐量之和。為了便于分析求解,引入輔助變量η來表示目標(biāo)函數(shù)中用戶總吞吐量,并加入新的約束保證所有用戶的吞吐量之和都不小于η。式(5)可以重寫為
(6a)
(6d)
式(6)的約束條件C1中,第n用戶的瞬時速率Rn表達式里要優(yōu)化的無人機最優(yōu)通信位置q和發(fā)送功率pn之間存在非線性耦合,所以式(6)仍然是一個非凸優(yōu)化問題。通過分析發(fā)現(xiàn),當(dāng)給定發(fā)送功率pn時,可以求解優(yōu)化問題并得到目標(biāo)函數(shù)η的一個下界。由此,可以考慮將兩個耦合的變量先分離后再單獨優(yōu)化。具體的做法是,先給定發(fā)送功率pn,優(yōu)化無人機航跡,得到在該發(fā)送功率下的最優(yōu)無人機位置q;然后再根據(jù)上一步得到的最優(yōu)無人機位置q優(yōu)化發(fā)送功率pn,之后交替迭代優(yōu)化直至目標(biāo)函數(shù)收斂,得到這兩個變量的最優(yōu)解。
(7a)
(7b)
式(7)仍然是一個非凸優(yōu)化問題,由于優(yōu)化變量q在對數(shù)函數(shù)中多項式的分母上,并且在二范數(shù)中很難求解,需要對式(7)中的約束C1進行松弛以滿足凸優(yōu)化的條件。由于引入的輔助變量η是目標(biāo)函數(shù)的一個下界,因此可以將用戶瞬時速率的表達式Rn進行泰勒展開,尋找一個滿足凸約束條件的近似下界作為松弛后的新約束條件。用戶瞬時速率Rn的具體變換過程如下:
首先,令A(yù)=pnβ0/Bσ2,x=‖q-Qn‖2,得到新的Rn表達式:
(8)
(9)
使用該下界作為優(yōu)化式(7)中的新約束條件,將原優(yōu)化問題重寫為
(10a)
(10b)
然后,將式(10)得到的最優(yōu)無人機通信位置qopt代入式(6)中來優(yōu)化發(fā)送功率分配,優(yōu)化問題可以表述為
(11a)
(11b)
C2:pn≥0;
(11c)
(11d)
此外,還要考慮到無人機最大飛行速度的限制,上述求得的各無人機最優(yōu)飛行航跡必須同時滿足約束條件:‖qk,t-qk,t-1‖2≤V2,t∈[1,T]。如果所求得的無人機最優(yōu)飛行航跡中有不滿足無人機最大飛行速度約束的,則對該時隙內(nèi)的用戶重新分簇、計算最優(yōu)無人機位置以及發(fā)送功率并進行匹配,直至滿足約束條件,得到各無人機最優(yōu)飛行航跡和發(fā)送功率分配。
多無人機輔助近海移動用戶通信的功率分配和航跡優(yōu)化算法步驟:首先,對第t個時隙內(nèi)的用戶進行分簇,將N個用戶分成K個用戶簇;然后,根據(jù)分簇的結(jié)果,初始化無人機的發(fā)送功率分配,并更新每架無人機到簇內(nèi)每個用戶的大尺度衰落系數(shù)βk,n,t;接下來,交替求解優(yōu)化式(10)和式(11),不斷迭代更新各無人機的發(fā)送功率pk,n,t和最優(yōu)通信位置qk,t,直到目標(biāo)函數(shù)η收斂時,結(jié)束交替優(yōu)化;最后,對相鄰兩個時隙無人機的最優(yōu)位置進行匹配,直到所有無人機的飛行距離都滿足無人機最大飛行速度的約束時,完成該時隙的優(yōu)化,繼續(xù)優(yōu)化下一個時隙。最終,得到無人機在總服務(wù)時間T內(nèi)的發(fā)送功率分配和飛行航跡。
算法偽代碼如下:
1 Fort=1:Tdo
2 Repeat:
3 將N個用戶分為K個簇;
4 Fork=1:Kdo
6 Repeat:
7 更新βk,n,t;
8 求解式(10)更新無人機最優(yōu)位置qk,t;
9求解式(11)更新發(fā)送功率pk,n,t和η;
10 Until:η收斂;
11 End for
12 對相鄰時隙無人機的最優(yōu)位置進行匹配;
13 Until:‖qk,t-qk,t-1‖2≤V2,k∈[1,K];
14 End for
15 Return:qk,t和pk,n,t。
為了驗證本文算法的有效性,本節(jié)通過仿真來分析和評估所提出的優(yōu)化方法。假設(shè)有一片半徑為800 m的圓形區(qū)域,在圓形區(qū)域的邊界上等間距分布著8個點,每兩個點之間有一條路線。在仿真中,設(shè)置每條路線上有一個用戶從航線上的隨機位置出發(fā),以不大于20 m/s的速度沿著路線行駛,到達端頭后調(diào)頭繼續(xù)行駛。在總服務(wù)時間T=50 s內(nèi),仿真模擬的28個移動用戶的航線如圖2所示。
圖2 模擬用戶航線圖
圖3和圖4分別展示了3架無人機和4架無人機同時提供服務(wù)時每架無人機航跡優(yōu)化的結(jié)果。圖3為3架無人機提供服務(wù)時的航跡,為了給區(qū)域內(nèi)所有用戶的提供通信,保證所有用戶的通信質(zhì)量,3架無人機分工明確,不同無人機的航跡之間沒有重疊的情況,區(qū)分度很明顯。結(jié)合用戶航線圖可以看出,每架無人機飛行的區(qū)域都是各用戶簇用戶較為集中的地方,并且相比于一架無人機服務(wù)時的情況,由于多無人機飛行時航跡覆蓋的范圍更大,與各用戶之間的距離也更加接近,降低了路徑損耗,使得偏遠位置用戶的通信質(zhì)量有了較好的改善。如圖4所示,當(dāng)無人機數(shù)量設(shè)置為4架時航跡出現(xiàn)了重疊的情況,區(qū)分度不如前兩種明顯,這表明當(dāng)用戶數(shù)量一定時無人機數(shù)量并不是越多越好。
圖3 3架無人機服務(wù)時的航跡
圖4 4架無人機服務(wù)時的航跡
圖5比較了三種不同方案下無人機輔助用戶通信的總速率隨著無人機數(shù)量增加的情況。第一種方案為不對用戶分簇,將圓形區(qū)域等面積劃分為與無人機數(shù)量相同的小區(qū)域,各無人機服務(wù)不同區(qū)域內(nèi)的用戶,優(yōu)化每個區(qū)域?qū)?yīng)無人機的功率分配和飛行航跡;第二種方案為不對無人機發(fā)送功率分配進行優(yōu)化的情況;第三種為本文提出的多無人機輔助多用戶通信的用戶分簇、發(fā)送功率和飛行航跡優(yōu)化方法。
圖5 不同方案下總速率隨無人機數(shù)量變化情況
從圖5中可以看出,本文提出的方法同時采用了用戶分簇和無人機發(fā)送功率分配優(yōu)化,優(yōu)化效果要優(yōu)于其他兩種方案。隨著無人機數(shù)量的增加,無人機與所有用戶通信的總速率也隨之增加,使用多無人機輔助通信的效果與使用單無人機相比有顯著提升。在多無人機通信時,為了體現(xiàn)出每架無人機通信的效率,圖中展示了每架無人機的平均速率隨著無人機數(shù)量變化的情況,可以看出不同方案下無人機通信的總速率沒有與無人機數(shù)量呈線性增長,各無人機的平均速率不是一直增加或者保持不變的。當(dāng)無人機數(shù)量大于2架時,每架無人機的平均速率呈降低的趨勢,這表明使用多無人機輔助通信時并不是無人機的數(shù)量越多越好,如果考慮到每架無人機輔助通信時的效率,無人機數(shù)量也是一個需要優(yōu)化的問題。
圖6比較了不同無人機數(shù)量的情況下不同迭代次數(shù)對應(yīng)的速率性能。當(dāng)?shù)螖?shù)增加時性能不發(fā)生變化,即認為算法收斂。從圖6中可以看出,1架無人機服務(wù)時,在第5次迭代達到收斂;2架無人機時,迭代6次達到收斂;3架無人機時,需要迭代9次。隨著無人機數(shù)量的增加,計算的復(fù)雜度會有所提升,算法的迭代次數(shù)也隨之增加,但最終都會在有限次的迭代后達到收斂條件,說明了所提算法的有效性。
圖6 第50個時隙無人機平均速率隨迭代次數(shù)變化情況
本文考慮每架無人機服務(wù)的用戶集群、發(fā)送功率分配和飛行航跡規(guī)劃,提出了一個多無人機輔助多用戶通信的用戶分簇、發(fā)送功率和飛行航跡優(yōu)化問題。通過引入輔助變量和分離耦合變量的方法,將非凸問題分解為兩個近似凸優(yōu)化問題,再基于貪婪算法的思想,并利用連續(xù)凸逼近方法,對兩個近似凸優(yōu)化問題進行迭代交替優(yōu)化,得到原非凸問題一個近似次優(yōu)解。仿真結(jié)果表明,所提出的多無人機發(fā)送功率和飛行航跡分簇優(yōu)化方法能夠有效提高用戶數(shù)據(jù)吞吐量。