













摘" 要: 針對多無人機輔助海上物聯網搜救場景,為了使無人機能處理無人船卸載的更多計算任務,同時盡可能減少無人機的能量浪費,文中提出一種基于深度確定性策略梯度(DDPG)的任務感知聯合卸載和資源分配算法。首先,考慮無人機可自適應調整時隙內飛行時間以及無人船卸載任務在無人機排隊計算的實際情況,建立了通信模型、計算模型和能耗模型。其次,通過聯合考慮卸載決策、功率分配以及無人機飛行軌跡規劃和速度調整,構建最大化所有無人機平均收益的優化問題;然后將該問題轉化為馬爾科夫決策過程,確立了對應的狀態空間、動作空間和獎勵函數,并通過DDPG算法求解出最優策略。仿真結果表明,與其他基準算法相比,所提算法可以有效提高無人機的平均收益。
關鍵詞: 移動邊緣計算; 無人機; 深度強化學習; 計算卸載; 功率分配; 軌跡規劃
中圖分類號: TN929.5?34" " " " " " " " " " " 文獻標識碼: A" " " " " " " " " " " " " "文章編號: 1004?373X(2025)03?0141?08
Deep reinforcement learning based joint offloading and resource allocation
for UAV?assisted maritime Internet of Things
LI Yunuo, WEI Ze, HE Rongxi
(College of Information Science and Technology, Dalian Maritime University, Dalian 116026, China)
Abstract: In order to enable unmanned aerial vehicles (UAVs) to compute more tasks offloaded by multiple unmanned surface vessels (USVs) while reducing their energy waste as much as possible, a deep deterministic policy gradient (DDPG)?based task?aware joint offloading and resource allocation (DTJORA) algorithm is proposed for a search and rescue scenario based on multiple UAV?assisted maritime Internet of Things (MIoT). Firstly, a communication model, a computation model, and an energy consumption model are presented on the basis of considering the adaptive adjustment of UAVs′ flight time within each time slot and the UAVs′ actual queuing of offloaded tasks by USVs. Secondly, an optimization problem for maximizing the average revenue of all UAVs is formulated by jointly considering offloading decisions, power allocation, and UAV trajectory planning and speed adjustment. And then the problem is transformed into a Markov decision process, the corresponding state space, action space and reward function are presented, and the optimal strategy is achieved by the DDPG algorithm. Simulation results show that the proposed algorithm can improve the average revenue of UAVs effectively in comparison with the other benchmark algorithms.
Keywords: mobile edge computing; UAV; deep reinforcement learning; computation offloading; power allocation; trajectory planning
0" 引" 言
近年來,海上運輸、海上搜救、海洋環境監測等海上業務的持續繁榮,極大地推動了海上物聯網(Maritime Internet of Things, MIoT)的快速發展[1],同時也使MIoT中涌現出越來越多的計算密集型和延時敏感型應用,大大增加了海上終端設備的能耗和計算需求。然而一些海上終端設備(如智能航標、無人船等)的能量和計算資源有限,為此,可將移動邊緣計算(Mobile Edge Computing, MEC)引入MIoT中,以滿足這些資源受限的海上終端設備的計算和低延時需求[2]。配有MEC服務器的無人機(Unmanned Aerial Vehicle, UAV)憑借其靈活性、易部署、性價比高等優點,可以方便地動態部署在靠近終端用戶的位置,能滿足突發狀況下用戶的通信和計算需求,因此,在地面固定基站無法覆蓋的MIoT中具有極大的應用前景[1]。
計算卸載作為UAV輔助MEC中一個關鍵問題,近年來得到了廣泛研究。文獻[3]針對單無人機輔助MEC網絡,提出一種混合自然啟發優化算法聯合優化用戶卸載決策、無人機位置和計算資源的分配,以最小化系統能耗問題。文獻[4]針對單無人機輔助的多接入邊緣計算系統,考慮卸載決策和資源競爭的約束,用博弈計算卸載算法以最小化系統時間、延遲和能耗的加權成本。文獻[5]提出一種面向智能集裝箱的海上無人機輔助數據卸載算法,以降低智能容器在數據規模需求和可用能量約束下的平均卸載時延。文獻[6]針對單無人機輔助MEC網絡,聯合優化無人機軌跡和計算資源分配,用塊交替下降法以最小化無人機和用戶設備的加權和能耗。文獻[7]研究了單無人機輔助空地一體化的MEC系統,在能耗、延遲、計算和通信資源約束下,聯合優化深度神經網絡模型決策、計算和通信資源分配以及無人機軌跡控制,以最小化服務延遲。
由于單架UAV的處理能力和服務范圍都有限,無法執行大量復雜的任務。因此,不少文獻研究了多無人機輔助MEC網絡的計算卸載問題。文獻[8]研究了多無人機輔助的兩級MEC系統,考慮無人機資源有限和任務可容忍的延遲,以最小化移動終端和無人機的能耗為目標,用塊連續上界最小化方法聯合解決任務卸載、通信和計算資源分配問題。文獻[9]針對多無人機輔助MEC網絡,考慮多用戶計算卸載和邊緣服務器部署,用類似棋子的異步更新算法來解決最小化動態環境下的系統計算成本問題。文獻[10]針對多無人機輔助MEC網絡,考慮了MEC排隊時延,用最優傳輸理論和粒子群算法聯合優化用戶關聯和無人機部署,以最小化平均任務時延。文獻[11]研究了一種云服務器和無人機協作的多無人機輔助云無線充電系統,通過基于柯西變異的混沌自適應甲蟲群優化算法輔助的塊坐標下降算法聯合優化資源?軌跡,以提升系統的節能能力。文獻[12]針對多無人機輔助MEC網絡,提出一種任務卸載策略和基于最短距離算法的無人機在線調度算法,旨在盡可能滿足用戶需求前提下,最小化UAV的能耗,以實現更高的資源利用率。
由于在一些動態復雜的通信網絡中,其時變環境導致問題復雜度和規模增加,傳統算法很難快速有效解決,而深度強化學習(Deep Reinforcement Learning,DRL)可以很好地克服這些缺點,因此,不少文獻將DRL引入UAV輔助MEC來解決計算卸載問題。文獻[13]針對多無人機輔助MEC系統,提出基于差分進化的部署策略和DRL輔助的任務調度方案來實現負載均衡的任務卸載。文獻[14]研究了時變信道狀態下單無人機輔助MEC系統的計算卸載問題,聯合優化用戶調度、任務卸載比例、無人機飛行角度和速度,用基于深度確定性策略梯度(Deep Deterministic Policy Gradient, DDPG)的計算卸載算法最小化處理時延。文獻[15]針對單無人機輔助的MEC網絡,提出基于雙延遲DDPG無人機軌跡規劃和任務卸載算法,通過聯合優化無人機飛行規劃、有向無環圖任務委托和調度層級以減小系統延遲。文獻[16]研究了多無人機輔助MEC場景,提出一種基于DRL的動態延遲敏感協作框架,聯合優化無人機飛行軌跡、用戶的卸載決策,在考慮時延和能耗的同時最大化無人機的效用。文獻[17]研究了多無人機輔助MEC的能量調度問題,通過聯合優化無人機軌跡規劃、能量更新和應用部署,以最大化所有無人機的長期能效,并提出一種基于三重學習器的強化學習方法,以實現優化目標。
盡管文獻[14?17]研究了UAV輔助的MEC中聯合無人機軌跡規劃和卸載問題,但卻采用等時隙劃分下UAV先飛行一段固定時間再懸停接收和處理用戶的卸載任務,無法根據用戶終端產生任務量多少調整飛行時間和懸停時間,可能導致無人機不必要的能量浪費,或減小了無人機接收和處理的計算任務量。具體而言,當用戶終端產生任務量較小時,所需計算時間較短,此時無人機可以較小速度飛行較長時間,然后再懸停進行任務接收和處理,而上述固定飛行時間策略可能導致設置的飛行時間較短,無人機需以較大速度飛行,而懸停時間過長,遠大于無人機接收和處理卸載任務時間,導致不必要的能量消耗。相反,在用戶產生較大任務量時,所需懸停計算時間較大,而固定飛行時間策略可能導致無人機沒有足夠時間去接收和計算上傳的任務,使得計算任務量很小。以上兩種情況均會導致無人機收益降低。另外,文獻[14?16]未涉及優化無人機計算任務數,雖文獻[17]優化了無人機處理任務數,但其假設無人機從收到第一個上傳任務后就一直計算,未考慮某個用戶上傳完任務之前無人機可能已處理完隊列中所有任務而出現空閑的情況,其得出的無人機計算任務數可能會比實際多。為此本文針對多個UAV和多個無人船(Unmanned Surface Vehicle, USV)構成的海上MIoT搜救場景,考慮多個USV產生任務大小各異以及上傳任務在無人機排隊計算的實際情況,為了讓無人機能夠感知任務大小自適應調整飛行時間,使其能計算更多任務同時減少能量浪費,通過對卸載決策、功率分配以及無人機的軌跡規劃和飛行速度進行聯合優化,以最大化所有無人機的平均收益為目標建立了優化模型,并提出一種基于DDPG的任務感知聯合卸載和資源分配(DDPG?based Task?Aware Joint Offloading And Resource Allocation, DTJORA)算法求解最優策略。仿真結果表明,與3種基準算法相比,本文算法的無人機平均收益均能取得較好的性能。
1" 系統模型
1.1" 網絡模型
多無人機輔助的海上MEC網絡如圖1所示,包含[M]架無人機和[K]個無人船終端,每個無人機都配有邊緣計算服務器,能夠為無人船提供通信和計算服務。
將無人船和無人機集合分別記為[K={1,2,…,K}],[M={1,2,…,M}]。將整個時間[T]劃分成多個相同長度的時隙,表示為集合[T={1,2,…,T}],在任意時隙[t∈T]中無人船會隨機產生任務需要處理。將目標區域[Ω]等分為[Q]個邊長為[R]的正方形區域,任一小正方形區域用[G]表示,在任意時隙,每個小正方形區域內的無人船只能被一個無人機服務,以避免碰撞,無人機輔助通信時可以完全覆蓋整個小正方形區域。將無人機[m∈M]所服務區域包含的無人船記為[Gmlt;K],任意無人船[k∈Gm]可通過無線信道將任務部分或全部卸載到無人機[m]上進行處理,將在時隙[t]內無人機[m]處理任務集合記為[MN(t)={1,2,…,N}],[N≤Gm]。時隙[t]開始時無人機[m]決定其行進軌跡,它要么保持當前位置不變,要么以速度[vm(t)]移動到一個相鄰小正方形區域的中心;然后無人機[m]在時隙內懸停在該網格上,接收并計算來自無人船的任務,無人機[m]可移動的下一位置方向為[δm(t)],將所有無人機可移動的位置方向記為集合[D={0,1,2,3,4,5,6,7,8}]。其中,0表示在原地不動,1為向北移動,2為向東北移動,3為向東移動,4為向東南移動,5為向南移動,6為向西南移動,7為向西移動,8為向西北移動,顯然[δm∈D]。此外,考慮到任務計算結果的大小遠小于卸載任務的大小,可省略從無人機向無人船發送計算結果的延遲和能耗[17]。
1.2" 通信模型
在任意時隙[t],無人機飛到固定位置懸停并且與其覆蓋區域內的無人船采用正交頻分多址(Orthogonal Frequency Division Multiple Access, OFDMA)進行通信,每個無人船分配一個子信道,可忽略無人船之間的干擾[13]。假設所有無人機都在距離地面[H](單位為m)的固定高度飛行,在笛卡爾三維坐標系中,無人機[m]在區域中心懸停的水平坐標為[qm(t)=xm(t),ym(t),t∈T,m∈M]。在時隙[t]無人船[k]的位置為[pk(t)=xk(t),yk(t),t∈T,k∈K]。由于無人機高度較高,無人機與無人船之間的信道以視距信道為主[13]。因此,在時隙[t∈T],無人機[m]到無人船[k]的信道功率增益可以描述為自由空間路徑損耗模型,即:
[hm,k(t)=β H2+qm(t)-pk(t)2] (1)
式中[β]表示在參考距離[d0=1 m]時的信道增益。
因此,時隙[t]無人機[m]到無人船[k]的傳輸速率為:
[Rm,k(t)=Blog21+Ptrm,k(t)hm,k(t)σ2] (2)
式中:[B]為子信道帶寬;[Ptrm,k(t)]表示無人船[k]到無人機[m]的發射功率;[σ2]表示噪聲功率。
1.3" 計算模型
無人機[m]為無人船[k]([k∈Gm])提供服務時,每個時隙分為飛行時間[tflym(t)]和懸停時間[thoverm(t)],如圖2所示。
時隙開始時,無人機[m]先以速度[vm(t)]飛到所要服務的區域,然后在區域中心上空懸停,為該區域的無人船提供持續時間為[thoverm(t)]的通信和邊緣計算服務。假設無人船[k]在時隙[t]內產生的任務大小用[Dk(t)]表示,采用部分卸載的方式卸載到無人機進行處理,用[αk(t)]表示無人船[k]將任務卸載到UAV的任務數據的部分比例,[0≤αk(t)≤1]。因此,在時隙[t]無人船[k]上傳到無人機[m]的任務量為[αk(t)Dk(t)],則可求出無人機[m]在時隙[t]總的計算任務量為[Dm(t)=k∈Gmαk(t)Dk(t)]。在無人機[m]懸停時間[thoverm(t)]內,有卸載需求的無人船并行上傳數據到無人機[m],按先來后到在無人機[m]進行計算處理,無人機從第一個任務到達后開始計算處理,如圖3所示。
假設在時隙[t]無人船[k]上傳任務為第[n]([n∈MN(t)])個到達無人機[m]的任務,其數據量為[Dnk(t)=αk(t)Dk(t),k∈Gm,n∈MN(t)]。該任務的傳輸時延[ttrn(t)]和計算時延[tcompn(t)]可分別表示為:
[ttrn(t)=Dnk(t)Rm,k(t)] (3)
[tcompn(t)=Qm(ttrn)(t)fUAV] (4)
式中[Qm(ttrn)(t)]為第[n]個任務到來時無人機[m]中排隊等待處理的總任務量,可表示為:
[Qm(ttrn)(t)=Qm(ttrn-1)(t)-Fm(ttrn)(t)+Dnk(t)] (5)
它由第[n]個任務到來時的隊列長度和第[n]個到來任務的任務量組成。若在第[n]-1個和第[n]個任務到來之間隊列任務全部被處理完,則第[n]個任務到來時的隊列長度為0。否則,無人機將在兩個任務到來之間一直進行計算。此時,第[n]個任務到來時隊列長度則為第[n]-1個任務到來時的隊列長度減去無人機在兩個任務到達之間處理的任務量[Fm(ttrn)(t)],可以表示為:
[Fm(ttrn)(t)=minQm(ttrn-1)(t),ttrn(t)-ttrn-1(t)fUAV] (6)
式中:[fUAV]是無人機的計算能力;[Qm(ttrn-1)]表示第[n]-1個任務到來時無人機[m]中待計算任務隊列總任務量。
任務完成總時延由傳輸時延和計算時延組成,則完成到達無人機[m]的第[n]個任務所需總時延為:
[ttotaln(t)=ttompn(t)+ttrn(t)] (7)
按上述流程,無人機從初始位置選擇所服務的區域,在每個時隙內進行飛行?傳輸?計算的程序。考慮到無人機機載能量有限,如何讓無人機在處理更多任務的同時減少能量消耗至關重要。因此有必要聯合考慮卸載決策、功率分配、無人機飛行軌跡和飛行速度規劃以優化無人機收益。
1.4" 能耗模型
無人機能量消耗主要包括懸停、飛行和計算能耗。
1.4.1" 無人機飛行和懸停能耗
本文考慮了一種旋轉翼無人機推進功率模型[17]。對于旋翼無人機,無人機[m]在時隙[t]的推進功率為:
[Pm,provm(t)=12SfRsAρRsAv3m(t)+" "φe8ρRsAΩ3eR3e1+3v2m(t)Ω2eR2e+" "(1+kp)(gMUAV)322ρA1+v4m(t)4gMUAV2ρA2-v2m(t)2gMUAV2ρA] (8)
式中:[φe]為葉片阻力系數;[Ωe]為槳葉角速度;[R3e]為旋轉活塞半徑;[ρ]為空氣密度;[kp]為感應功率因數;[Rs]為風輪實度;[g]為重力加速度;[A]為槳盤面積;[MUAV]為無人機質量;[Sf]為機身等效平板面積;[vm(t)]表示無人機[m]在時隙[t]的飛行速度。需要注意的是,無人機在卸載階段進行數據傳輸和計算時需要在所服務區域的固定高度上懸停,以保證通信連接的穩定。那么,無人機[m]的推進能耗可以表示為:
[Eprom(t)=pmovmvm(t)qm(t+1)-qm(t)vm(t)+pmovm(0)τ-tfly(t)] (9)
式中,[τ]為時隙持續時間,這表明[Eprom(t)]包含每個時隙[t]無人機的飛行能量和懸停能量。
1.4.2" 無人機計算任務能耗
無人機接收無人船傳輸任務后,進行計算處理,計算能耗可以表示為:
[Ecompm,k(t)=Kmf2UAVDm(t)] (10)
式中[Km]是一個取決于芯片架構的非負系數。
無人機[m]在時隙[t]總能耗可以表示為:
[Em(t)=Eprom(t)+Ecompm,k(t)] (11)
每個時隙[t]無人機[m]剩余能耗可以表示為:
[em(t)=em(t-1)-Em(t)] (12)
無人船能量消耗主要包括傳輸和計算能耗。
1) 無人船傳輸任務能耗
無人船[k]將任務上傳到無人機時,所消耗的能耗為:
[Etrk(t)=ptrm,k(t)ttrn(t)] (13)
2) 無人船本地計算任務能耗
無人船[k]在本地進行任務計算時,所消耗的能量為:
[Ecompk(t)=Kuf2ue1-αk(t)Dk(t)] (14)
式中[Ku]是一個取決于芯片架構的非負系數。
時隙[t]無人船[k]剩余能耗可以表示為:
[ek(t)=ek(t-1)-Etrk(t)-Ecompk(t)] (15)
2" 問題建模
本文通過聯合優化卸載決策、功率分配、無人機軌跡規劃和飛行速度,以最大化所有無人機的平均收益。無人機平均收益定義為:
[U=1Tt=1T1Mm=1MλDm(t)-Em(t)] (16)
可以看出無人機接收和計算的任務量越多、能耗越少,則無人機收益越大。上述優化問題可以表示為:
[maxvm(t),ptrm,k(t),δm(t),αk(t)Us.t." " C1:0≤ptrm,k(t)≤pmaxm,k," " ?t,?m∈M,?k∈Gm" " " " "C2:vmin≤vm(t)≤vmax," " ?t,?m∈M" " " " "C3:0≤αk(t)≤1," " ?t,?k∈Gm" " " " "C4:δm(t)∈D," " ?t,?m∈M" " " " "C5:ttotaln(t)≤τ-tflym(t)," " ?t,?m∈M" " " " "C6:pm(t)-pm(t)2≥R2," " ?t,?m∈M,m∈M\{m}" " " " "C7:Em(t)≤em(t)," " ?t,?m∈M" " " " "C8:Etrk(t)+Ecompk(t)≤ek(t)," " ?t,?k∈Gm]
(17)
式中:[λ]為權重系數;[C1]表示無人船[k]的發射功率不得超過其最大功率;[C2]表示無人機[m]飛行速度要在規定的最小和最大飛行速度之間;[C3]為無人船[k]到無人機[m]的卸載率約束;[C4]表示無人機[m]可選擇的飛行軌跡的方向約束;[C5]表示無人船卸載到無人機[m]的任務都要能計算完;[C6]表明每個小正方形區域只能被一個無人機覆蓋,以避免潛在的碰撞;[C7]代表無人機在時隙[t]內的能耗不能超過它當前時隙的電池容量;[C8]表示無人船[k]在時隙[t]內的能耗不能超過它當前時隙的電池容量。
由于時變的復雜網絡和高維的動作空間增加了傳統方法直接求解優化問題的難度,因此,下一節引入DRL方法來尋找合適的調度策略。
3" 基于DDPG的計算卸載算法
3.1" DDPG算法
根據Actor?Critic結構,可以將DDPG算法分為四個部分:Actor當前網絡、Actor目標網絡、Critic當前網絡和Critic目標網絡[18]。分別用[θμ]和[θμ]表示Actor當前網絡和Actor目標網絡的參數,[θQ]和[θQ]分別表示Critic當前網絡和Critic目標網絡的參數。
DDPG算法的整個訓練過程為:開始時,智能體從環境中收集信息,形成狀態空間。在得到初始狀態[st]后,將當前狀態輸入到Actor網絡中,得到動作[at=μstθμ+Nt],其中[Nt]是隨機噪聲,使智能體能夠探索潛在的更好策略。執行選定的動作后可以得到下一個動作[st+1]和獎勵[rt],將元組[st,at,rt,st+1]存儲在回放緩沖區中。然后,從經驗回放記憶中隨機選取[N]個樣本數據[si,ai,ri,si+1]建立一個mini?batch,將已建立的mini?batch引入演員網絡和評論家網絡,計算critic目標網絡的[Q]值。
[yi=ri+γQsi+1, μsi+1θμθQ] (18)
然后,通過最小化損失函數更新critic當前網絡參數,損失函數可以表示為:
[L=1Niyi-Qsi,aiθQ2] (19)
Actor當前網絡根據[θQ]和樣本元組更新當前策略,通過梯度上升指導網絡參數向更高評價方向更新,可表示為:
[?θμμsi≈1Ni?aQs,aθQs=si,a=μ(si)?θμμsμsθμsi] (20)
與深度Q網絡(Deep Q Network, DQN)不同,DDPG利用軟更新來更新參數,以提高學習穩定性。因此,[θQ]和[θμ]的更新過程可以表示為:
[θQ←τθQ+(1-τ)θQ] (21)
[θμ←τθμ+(1-τ)θμ] (22)
3.2" DTJORA算法描述
1) 狀態空間
在時隙[t],系統狀態包含5個參數:任意無人機[m]和無人船[k]在當前時隙的剩余電量[em(t)]和[ek(t)]、任意無人船[k]所產生的任務大小[Dk(t)]、無人船和無人機在當前時隙的位置坐標[qm(t)]和[pk(t)]。可設定狀態空間為:
[st=em(t),ek(t),Dk(t),qm(t),pk(t)," ?m∈M,k∈K,t∈T] (23)
2) 動作空間
為了使無人機在收集到更多任務的同時節省能量,要合理進行卸載決策、功率分配、無人機飛行軌跡和飛行速度規劃。基于系統當前的狀態和觀察到的環境,在時隙[t]中動作空間可以定義為:
[at=vm(t),ptrm,k(t),δm(t),αk(t)," " ?m∈M,k∈K,t∈T]
(24)
智能體基于當前時刻的狀態與環境進行交互,決定動作執行,獲得立即獎勵。可設置獎勵函數為無人機計算任務數與無人機所消耗的能量相減,求其最大值。立即獎勵表示為:
[rt=1Mm=1MλDm(t)-Em(t)] (25)
式中,引入系數[λ]以確保[Dm(t)]與[Em(t)]在同一數量級上,這樣可以更好地優化兩個目標。
然后將其與前一狀態獎勵累加獲得長期獎勵,表示為:
[Rt=1Tt=1T1Mm=1MλDm(t)-Em(t)] (26)
DTJORA算法偽代碼如算法1所示。其中,步驟1~步驟3為初始化Actor和Critic當前網絡、目標網絡參數以及回放緩沖區的過程。步驟4~步驟9為智能體與環境交互過程,步驟10~步驟17為DDPG訓練的具體步驟。使用Adam優化器和軟更新分別在步驟18和步驟19中修改Actor和Critic網絡中當前和目標網絡的參數。待回合數完成時,訓練就停止。
算法1" DTJORA算法偽代碼
1" 隨機初始化Actor網絡[θμ]和Critic網絡[θQ]的參數;
2" 初始化目標網絡的參數[θμ←θμ]和[θQ←θQ];
3" 初始化回放緩沖區[Bm];
4" for episode=1 to [Emax] do
5" " " 重置MEC系統的仿真參數,得到初始觀測狀態[st];
6" " " 歸一化[st]為[st];
7" " " for [t]=1 to [T] do
8" " " " " 從Actor網絡[θμ]中獲得動作,并執行動作;
9" " " " " 獲得獎勵[rt]和下一個狀態[st+1];
10" " " " "if重放緩沖區不滿then
11" " " " "在回放緩沖區[Bm]中存儲[(st,at,rt,st+1)];
12" nbsp; " " "else
13" " " " "隨機替換回放緩沖區[Bm]中的元組[(si,ai,ri,si+1)];
14" " " " "從經驗重放記憶[M]中隨機抽取[N]個元組作為訓練Actor和Critic主網絡的小批量數據;
15" " " " "計算Critic主網絡的梯度[?θQL];
16" " " " 利用Adam優化器更新Critic主網絡參數[θQ];
17" " " " 計算Actor主網絡的策略梯度[?θμL];
18" " " " 使用Adam優化器更新Actor主網絡的參數[θμ];
19" " " " 更新Actor目標網絡和Critic目標網絡參數[θQ]和[θμ];
20" " " end if
21" " end for
22" end for
23" Return Actor網絡[μsθμ]
4" 仿真分析
本節使用Python 3.6對所提算法進行仿真分析,并與三個基準算法進行比較,包括固定飛行速度(Fixed Flight Speed, FFS)算法、固定飛行軌跡(Fixed Flight Trajectory, FFT)算法和隨機(Random)飛行算法。
1) 固定飛行速度:該算法基于DDPG算法對卸載決策、功率分配、無人機軌跡規劃進行聯合優化,但所有時隙內無人機采用固定的飛行速度。
2) 固定飛行軌跡:該算法基于DDPG算法對卸載決策、功率分配、無人機飛行速度進行聯合優化,但所有時隙內無人機飛行軌跡固定,依次按東?南?西?北固定方向飛行。
3) 隨機飛行:該算法基于DDPG算法對卸載決策、功率分配進行聯合優化,但在每個時隙[t]無人機隨機選擇飛行軌跡和飛行速度。
仿真中假設在200 m×200 m區域內存在4個無人機和48個無人船,無人機推進能量模擬參數依據文獻[19]設置,其他仿真參數依據文獻[14,17]等設置。主要仿真參數如表1所示。
首先將經驗池大小設為2 000,mini?batch大小設為64,折扣因子設為0.9,進行一系列實驗來確定算法使用的重要超參數的最優值。所提算法在不同學習率下的收斂性能如圖4所示。其中[LA]和[LC]分別為Actor網絡和Critic網絡學習參數。從圖中可以觀察到,[LA=0.08]且[LC=0.1],[LA=0.000 08]且[LC=0.000 1]時,震蕩較大難以收斂。而當[LA=0.008]且[LC=0.01]時本文方案不能找到最優策略。因此,在后續仿真中,將設置[LA=0.000 8]且[LC=0.001],使其在學習期間能獲得更好的獎勵。
圖5比較了本文算法和FFS算法設置不同速度在不同數量無人船情況下的所有無人機的平均收益。
FFS算法的無人機收益
可以觀察到,在兩種算法中,無人機的平均收益隨著無人船的數量增加而增加。這是因為隨著無人船數量的增長,無人船將產生更多的卸載請求,因而無人機能接收和計算更多任務。此外,在不同數量的無人船下,本文算法的無人機平均收益均優于采用不同速度的FFS算法。這是因為:無人船可能產生不同大小的卸載任務請求,FFS算法固定飛行速度,一方面可能造成飛行速度較小,飛行時間過長,從而懸停時間過短而無法收集處理更多任務;另一方面也可能導致飛行速度較大,飛行時間過短而懸停時間過長(超過無人機收集處理任務所需時間),造成無人機不必要能量消耗。顯然,以上兩種均會造成無人機收益降低。
圖6比較了不同數量的無人船情況下不同算法無人機收益值。
圖6中,FFS算法無人機速度設為30 m/s。后面仿真采用相同設置。從圖中可以看出,隨著無人船數量增加,所有算法的無人機收益也隨之增加。這是因為隨著無人船數量的增長,無人船會產生更多的卸載任務請求,因而會有更多任務被無人機接收和計算。另外,該圖還表明,本文算法優于其他對比算法,原因在于本文算法可根據無人船產生任務量大小自適應調整飛行時間,當任務量較大時,無人機會以較快速度飛行,使無人機有足夠的懸停時間收集處理更多任務。當任務量較小時,可減小飛行速度和不必要的懸停時間以避免能量浪費,因而本文算法可有效增加無人機收益;而FFT算法固定飛行軌跡,可能導致無人機并未飛到任務較多的無人船上空為其提供服務,從而導致無人機收益降低;FFS固定飛行速度可能導致無人機懸停時間過長或過短,均可能導致無人機收益下降。
圖7對比了不同無人機計算能力下不同算法的無人機收益。
可以觀察到,所有算法的無人機平均收益隨無人機計算能力增加先增加然后降低。這是因為隨著無人機計算能力的增長,無人機可以用更少的時間計算更多的任務,從而可以擁有更多飛行時間,因而能以更低速度飛到所服務區域,有利于減少能耗。然而,當無人機計算能力增加到一定程度后,會出現無人機即使以最低速度飛行,所有任務都被無人機處理完后,仍有懸停時間,這種情況下無人機收集和計算任務量以及推進能耗不再發生改變;但繼續增加無人機計算能力,計算產生的能耗隨之增加,因而會令無人機收益進一步降低。此外,可以看出,無論無人機計算能力如何變化,本文算法的無人機平均收益都高于對比算法。
不同算法的無人機收益
圖8對比了不同時隙長度下不同算法的無人機收益。
可以觀察到,在所有算法中,無人機的收益隨著時隙長度時間的增加先增加然后降低。這是因為隨著時隙長度增長,一方面無人機在執行任務過程中可以有更多懸停時間來接收和計算更多來自無人船的卸載任務,有利于增加無人機的收益;另一方面也使無人機有更多飛行時間,能以更低速度飛到所服務區域,可以減少能量消耗,也有利于增加無人機的收益。然而,當時隙長度增加到一定程度后,會出現無人機即使以最低速度飛行,當所有任務都被無人機處理完后,仍有懸停時間,這時無人機計算任務量和飛行能耗幾乎不再發生改變,而繼續增加時隙長度,會產生懸停能耗,因而會導致無人機收益降低。此外,從圖中還可以看出,所有情況下本文算法的無人機收益均優于對比算法。
5" 結" 語
本文研究了多無人機輔助MIoT的計算卸載問題。考慮無人機可感知無人船任務量大小自適應調整飛行時間,以及無人船卸載任務在無人機排隊計算的實際情況,以最大化所有無人機的平均收益為目標,建立了卸載決策、功率分配、無人機飛行軌跡和速度聯合優化問題,并提出DTJORA算法求解最優策略。最后,通過仿真證明本文算法能有效提高無人機收益。
參考文獻
[1] LI M Q, QIAN L P, DONG X Y, et al. Secure computation offloading for marine IoT: An energy?efficient design via cooperative jamming [J]. IEEE transactions on vehicular technology, 2023, 72(5): 6518?6531.
[2] DAI M H, HUANG N, WU Y, et al. Latency minimization oriented hybrid offshore and aerial?based multi?access computation offloading for marine communication networks [J]. IEEE transactions on communications, 2023, 71(11): 6482?6498.
[3] CHEN Y, PI D C, YANG S X, et al. HNIO: A hybrid nature?inspired optimization algorithm for energy minimization in UAV?assisted mobile edge computing [J]. IEEE transactions on network and service management, 2022, 19(3): 3264?3275.
[4] ZHANG K Y, GUI X L, REN D W, et al. Energy?latency tradeoff for computation offloading in UAV?assisted multiaccess edge computing system [J]. IEEE Internet of Things journal, 2021, 8(8): 6709?6719.
[5] DAI Y, LIN B, CHE Y, et al. UAV?assisted data offloading for smart container in offshore maritime communications [J]. China communications, 2022, 19(1): 153?165.
[6] JI J Q, ZHU K, YI C Y, et al. Energy consumption minimization in UAV?assisted mobile?edge computing systems: Joint resource allocation and trajectory design [J]. IEEE Internet of Things journal, 2021, 8(10): 8570?8584.
[7] DENG C L, FANG X M, WANG X B. UAV?enabled mobile?edge computing for AI applications: Joint model decision, resource allocation, and trajectory optimization [J]. IEEE Internet of Things journal, 2023, 10(7): 5662?5675.
[8] EI N N, ALSENWI M, TUN Y K, et al. Energy?efficient resource allocation in multi?UAV?assisted two?stage edge computing for beyond 5G networks [J]. IEEE transactions on intelligent transportation systems, 2022, 23(9): 16421?16432.
[9] NING Z, YANG Y, WANG X, et al. Dynamic computation offloading and server deployment for UAV?enabled multi?access edge computing [J]. IEEE transactions on mobile computing, 2023, 22(5): 2628?2644.
[10] HAN Z, ZHOU T, XU T, et al. Joint user association and deployment optimization for delay?minimized UAV?aided MEC networks [J]. IEEE wireless communications letters, 2023, 12(10): 1791?1795.
[11] PANG S, HE X, HSU C H, et al. Joint trajectory and energy consumption optimization based on UAV wireless charging in cloud computing system [J]. IEEE transactions on cloud computing, 2023, 11(4): 3426?3438.
[12] CHEN S B, SHI L, DING X, et al. Energy efficient resource allocation and trajectory optimization in UAV?assisted mobile edge computing system [C]// 2021 7th International Conference on Big Data Computing and Communications (BigCom). New York: IEEE, 2021: 7?13.
[13] YANG L, YAO H P, WANG J J, et al. Multi?UAV?enabled load?balance mobile?edge computing for IoT networks [J]. IEEE Internet of Things journal, 2020, 7(8): 6898?6908.
[14] WANG Y P, FANG W W, DING Y, et al. Computation offloading optimization for UAV?assisted mobile edge computing: A deep deterministic policy gradient approach [J]. Wireless networks, 2021, 27(4): 2991?3006.
[15] ZHENG C X, PAN K, DONG J D, et al. Multi?agent collaborative optimization of UAV trajectory and latency?aware DAG task offloading in UAV?assisted MEC [J]. IEEE access, 2024, 12: 42521?42534.
[16] DU R Z, CAO B W, GAO Y. Collaborative framework for UAVs?assisted mobile edge computing: A proximity policy optimization approach [J]. Journal of supercomputing, 2024, 80(8): 10485?10510.
[17] LI J L Y, YI C Y, CHEN J Y, et al. Joint trajectory planning, application placement, and energy renewal for UAV?assisted MEC: A triple?learner?based approach [J]. IEEE Internet of Things journal, 2023, 10(15): 13622?13636.
[18] CHEN L X, GONG G Q, JIANG K, et al. DDPG?based computation offloading and service caching in mobile edge computing [C]// IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS). New York: IEEE, 2022: 1?6.
[19] ZENG Y, XU J, ZHANG R. Energy minimization for wireless communication with rotary?wing UAV [J]. IEEE transactions on wireless communications, 2019, 18(4): 2329?2345.