喻鵬 ,張俊也,李文璟,周凡欽,豐雷,付澍,邱雪松
(1.北京郵電大學網絡與交換技術國家重點實驗室,北京 100876;2.重慶大學微電子與通信工程學院,重慶 400044)
隨著移動通信網絡的不斷演進,超五代(B5G,beyond the 5th generation)、第六代(6G,the 6th generation)網絡將帶來新型業務場景,如自動駕駛、工業控制、增強/虛擬現實等,這些場景對帶寬、時延、功耗、可靠性等指標提出了更高的要求[1]。對應的海量無線接入設備所需的高效快速的資源調度,也將給網絡帶來巨大挑戰。
為了解決上述問題,移動邊緣計算(MEC,mobile edge computing)被提出。通過邊緣計算,終端設備可以卸載部分或全部計算任務到基站等網絡邊緣節點,拓展了終端設備計算能力。相對于集中到云端的計算方法,MEC 能夠有效地降低任務處理時延,減輕核心網的流量壓力,保障數據私密性與安全性[2]。
未來無線網絡的深度將顯著拓展,從單一的信息傳輸到傳輸、存儲和處理的多維同步,需要通信、計算和存儲資源以及相關控制的無縫融合[3]。而基于MEC 的移動邊緣網絡(MEN,mobile edge network)的核心思想也正是將網絡的資源、內容和功能遷移到網絡邊緣,從而提升網絡整體的資源調度效率,MEC 被認為是B5G/6G 網絡的重要組成部分[1],其資源分配方法對系統的性能有著重要影響。
5G 性能相比4G 有了大幅度提升,但是基站部署密度也進一步提升,導致5G 網絡的基站功耗為4G 基站的3~4 倍[4]。而未來6G 網絡將擁有超高吞吐量、超大帶寬,網絡節點的部署將更加密集,規模更加龐大,將會面臨更大的能耗壓力。對應地,綠色節能是未來網絡發展的一大需求[5]。由于基站能耗約占通信能耗的60%~80%[6],而邊緣網絡作為基站的主要部署位置,將會成為通信網絡能耗產生的重要組成部分。因此,MEN 中高能效的資源分配方法具有重要的研究意義與價值。
近年來,MEC 得到了廣泛關注,MEN 資源分配問題也得到了大量的研究,而多維資源聯合優化是其中的研究熱點。文獻[7]指出基于霧計算的通信與計算融合可以有效地提升系統的性能,并概述了基于霧計算的移動通信網絡的網絡架構、系統容量和資源管理。文獻[8]將緩存資源引入用于多媒體內容交付的移動基站中,考慮緩存與前傳成本,從經濟角度進行優化。文獻[9]研究了服務緩存放置、計算卸載決策和系統資源分配的聯合優化。這些為邊緣網絡的融合資源分配方法提供了參考依據。
文獻[10]針對有多個能量采集設備的MEC 系統,將最小化長期平均執行成本的聯合計算卸載和動態資源分配問題描述為一個隨機優化問題,提出了一種基于李雅普諾夫優化的在線算法,將原問題轉化為時隙確定性問題。文獻[11]針對協同多點傳輸設計了一種聯合負載感知聚類和基于圖著色的小區間資源調度的資源分配方法。為了實現泛在邊緣計算,需要實現多邊緣服務器的協同處理。進一步地,文獻[12]提出了一種限制邊緣服務器超載概率的MEC 系統資源配置的優化方法,通過樣本平均近似方法將機會約束隨機規劃問題轉化為混合整數規劃問題進行求解,實現了總通信代價最小的目標。文獻[13]通過用綜合成本模型描述各種靜態和動態性能指標,建立了混合非線性優化的在線邊緣網絡資源分配模型,利用正則化技術將非凸優化問題轉化為凸優化問題,模型的性能較貪心算法有大幅度提高。文獻[14]研究了多信道無線干擾情況下的多用戶計算卸載與資源分配策略,可以通過博弈論方法分布式地高效求解,并證明了所設計的算法可以達到納什均衡。上述研究以數學優化方法為主,對優化問題的數學形式具有較高的要求,需要針對具體問題對模型和約束進行精心設計或者進行轉化,例如求解對象維度單一、模型要求無約束或者少量線性約束、可用經典算法進行求解等,且多采用離線方式,主要適用于少量網絡節點的局部網絡場景,難以適用于求解變量維度和約束較為復雜的場景。
針對上述不足,面對未來網絡密集化、復雜化的發展趨勢,強化學習(RL,reinforcement learning)作為一種免模型的方法,可以自動通過試錯進行學習,具有很強的靈活性[15],是一種有前景的解決方案[16],RL 方法可適用于復雜動態的MEC 系統。文獻[17]將具有間歇性和不可預測性的可再生能源作為MEC 系統的能源,提出一種有效的基于RL 的資源管理算法,該算法分解為離線值迭代和在線強化學習,動態地學習負載卸載和邊緣服務器配置的最優策略,使系統長期成本最小化。近年來,以深度Q 學習(DQL,deep Q-learning)為代表的深度強化學習(DRL,deep reinforcement learning)算法興起。DRL 在高維離散或者連續空間中具有很強的決策能力,克服了RL 方法只適用于具有低維狀態和動作空間問題的不足。并且,基于圖形處理單元的并行計算進一步提升了DRL 的運行速度,使網絡管理具有及時性,克服了元啟發式算法、凸優化算法等傳統方法的運行時間限制[18-19]。
一些研究將DRL 算法用于解決MEN 資源分配任務。文獻[20-21]提出基于DQL 的方案,來聯合優化計算資源與網絡資源。文獻[22]在計算卸載與資源分配問題中,將幾種DRL 算法,包括DQL、深度確定性策略梯度(DDPG,deep deterministic policy gradient)和異步優勢 actor-critic(A3C,asynchronous advantage actor-critic)算法,進行了對比。為了解決DQL 存在的Q 值過估計問題,雙深度Q 學習(DDQL,double deep Q-learning)算法被提出[23]。文獻[24]提出了基于DDQL 的算法,在不了解網絡狀態的情況下學習最優計算卸載策略。
然而,上述研究大多關注的是上行流量為主的應用場景,較少分析下行流量為主的應用場景。并且,很多研究只考慮了單一資源的分配問題,部分研究對通信和計算資源進行了聯合優化,或者關注緩存相關策略和資源分配策略的聯合優化,但是對通信、計算、存儲3 種資源進行綜合考慮的研究不足。此外,高能效的資源分配機制研究主要關注了終端設備能耗,而對系統的總能耗關注不夠。
針對目前研究存在的問題,本文重點關注如復雜視頻處理、高清視頻請求等具有大量下行數據的業務,在多任務、多終端設備、多邊緣網關、多邊緣服務器的MEN 場景下,以任務平均能耗最小化為優化目標,針對每個任務選擇的邊緣網關,考慮邊緣網關最大發射功率、邊緣服務器最大計算能力和最大存儲空間等資源約束,以及任務時延限制等約束,構建對邊緣網關發射功率和邊緣服務器計算能力和存儲空間進行分配決策的優化模型。該問題是一個NP-hard 的優化問題。
本文將構建的數學模型進行簡化,提出了基于DDQL 的求解方法,并通過實驗仿真將其與基于隨機算法(RA,random algorithm)、貪心算法(GA,greedy algorithm)、粒子群優化(PSO,particle swarm optimization)算法、DQL 算法的求解方法進行了對比,證明本文方法降低了至少5%的任務平均能耗。DDQL 算法具有良好的收斂性和較低的時間復雜度,可以很好地完成MEN 高能效資源分配任務。
面向未來B5G/6G 網絡特征,網絡系統架構可分為四層,自底向上分別為終端設備(ED,end device)、邊緣網關(EG,edge gateway)、邊緣服務器(ES,edge server)和云中心(CC,cloud center),如圖1 所示。其中,任務由終端設備發起,邊緣網關主要負責網絡協議轉化與數據轉發,邊緣服務器主要負責提供計算與存儲功能,云中心在遠端具有更豐富的資源。云中心是系統架構的必要組成部分,但在本文模型中,假設邊緣服務器可以滿足任務需求,不需要在云中心進行任務處理。
圖1 系統架構
考慮實際網絡系統,邊緣網關是現場級邊緣計算的典型設備形態,可部署在基站側;邊緣服務器是以通用硬件為虛擬化資源的移動邊緣應用平臺,可部署在基帶處理單元池等運營商機房中。邊緣網關與邊緣服務器多在網絡規劃時設計了其隸屬關系,如多對一的關系,在網絡建設時通過光纖等有線鏈路連接,因此可將邊緣服務器與邊緣網關設定為固定連接。邊緣網關與終端設備通過無線信道通信,其連接關系需要在滿足覆蓋關系的條件下與資源分配進行聯合決策。
設終端設備的集合D={1,2,…,D},d∈D 表示一個終端設備,終端設備數為D。邊緣網關的集合為G={1,2,…,G},g∈G 表示一個邊緣網關,邊緣網關數為G。邊緣服務器的集合為S={1,2,…,S},s∈S 表示一個邊緣服務器,邊緣服務器數為S。
任務的集合表示為K={1,2,…,K},k∈K 表示一個任務,任務數為K。任務k用五元組(d k,l k,bk,ck,Tk)表征,其中dk為發起任務k的終端設備,dk∈D,假設一個終端設備一次最多發起一個任務,lk為任務k返回終端設備的數據比特數,bk為任務k所需存儲空間大小,ck為完成任務k所需中央處理器(CPU,central processing unit)時鐘周期數,T k為完成任務k的時延限制。假設以上K個任務均為同一個時間片內發起的任務。
邊緣服務器的選擇與能耗模型構建如下。
設xk,s表示任務k選擇ESs的情況,為
一個任務只能且必須選擇一個ES,如式(2)所示。
針對存儲資源,設Bs表示ESs的最大存儲空間。每個ES 中任務所占用的存儲空間之和不能超過該ES 最大存儲空間,即
針對計算資源,考慮CPU 是執行計算任務的核心設備,其性能與時鐘頻率有關,可采用動態電壓頻率調整(DVFS,dynamic voltage and frequency scaling)技術對頻率進行調節,以滿足任務的時延、能耗要求[25]。同一個ES上的不同任務可同時執行,分別獲得不同的CPU 時鐘頻率。F s表示ESs所能提供的最大CPU 時鐘頻率。fk表示任務k所獲時鐘頻率。每個ES 中任務所獲CPU 時鐘頻率之和不能超過該ES 能提供的最大CPU 時鐘頻率,即
對每一個任務來說,其獲得的CPU 時鐘頻率范圍有一定的限制,Fmin為一個任務可獲得的CPU時鐘頻率的最小值,Fmax為一個任務可獲得的CPU時鐘頻率的最大值,則有
任務k的計算時延為
根據電路理論,動態能耗是CPU 能耗最主要的組成部分。在本文模型中,ES 的能耗只考慮因計算產生的動態能耗,而忽略其他能耗。ES 執行任務k的能耗為,其中,κ為與硬件有關的常量[25]。所有ES 執行任務的總能耗為
邊緣網關的選擇與能耗模型如下。
yk,g表示任務k選擇EGg的情況,如式(8)所示。
一個任務只能且必須選擇一個EG,如式(9)所示。
ES 與EG 通過有線鏈路通信,zs,g表示ESs和EGg的連接關系,即
EG 與ED 通過無線鏈路通信,wg,d表示EGg與EDd的覆蓋關系,如式(11)所示。
任務k選擇的ESs和EGg必須可通信,且只能選擇一條路徑,表示為
任務k選擇的EGg必須能與接收任務的EDdk通信,且只能選擇一條路徑,表示為
EGg到EDd信道的帶寬為Bg,d。根據香農公式,從EGg到EDd的傳輸速率為
其中,δg,d為從EGg到EDd傳輸的信噪比(SNR,signal noise ratio)。δg,d的表達式為
其中,pg,d為EGg到EDd發射功率,hg,d為從EGg到EDd的路徑損耗,N0為加性高斯白噪聲譜密度。hg,d的大小與EGg到EDd之間的距離Dg,d有關,距離越遠,路徑損耗越大。
任務k獲得的EG 發射功率表示為,其范圍有一定的限制,Pmin為最小值,Pmax為最大值,如式(16)所示。
其中,Pg表示EGg所能提供的最大發射功率。一個EG 中所有任務獲得的發射功率之和不能超過該EG 所能提供的最大發射功率,即
若任務k是從EGg傳輸到EDdk,則其傳輸時延為
考慮任務實際的EG 選擇情況,任務k從EG到ED 的傳輸時延為
任務k的總時延為ES 計算時延與從EG 到ED傳輸時延之和,ES 與EG 之間通過有線鏈路連接,傳輸速度很快,傳輸時延忽略不計,則有
EGg的能耗
所有EG 的總能耗為
在上述系統架構模型、任務模型、邊緣服務器和邊緣網關選擇與能耗模型的基礎上,考慮網絡的整體能耗特征,最終的MEN 資源分配的優化模型如式(23)所示。
優化目標為最小化任務平均能耗,能耗為邊緣服務器計算能耗與邊緣網關傳輸能耗之和。約束條件C1 要求每個任務在規定時延內完成,保障用戶的服務質量(QoS,quality of service)。約束條件C2和C3 要求每個任務只能且必須選擇一個邊緣服務器和一個邊緣網關。約束條件C4 和C5 要求每個任務選擇唯一且可通信的路徑。約束條件C6~C8 分別要求滿足邊緣服務器的最大存儲空間限制、邊緣服務器的最大時鐘頻率限制和邊緣網關的最大發射功率限制。約束條件C9 和C10 分別對一個任務可獲得的邊緣服務器時鐘頻率、邊緣網關發射功率大小進行限制。
在該優化問題中,有六類決策變量,分別為xk,s、yk,g、zs,g、wg,d、和fk。其中,xk,s、yk,g、zs,g和wg,d是離散的0-1 整數變量,和fk是連續變量。
由于部分決策變量是離散變量,該優化問題的可行解集不是凸集,不是一個凸優化問題,無法利用凸優化問題優良的全局最優解性質,可以分析得到該問題是一個混合整數規劃問題。考慮到實際工程實踐的可行性,需要重點關注的不是如何精確求解最優解,而是如何高效快速地獲得一個較好的可行解,結合相關工作分析,本文利用基于DDQL 的模型來完成上述能耗優化模型的求解。
考慮到實際網絡的有線部分連接關系相對固定,因此,在任務選擇ES 與EG 時,將ES 與EG的連接關系zs,g和EG 與ED 的覆蓋關系wg,d作為已知條件。假設每個EG 只與一個ES 連接,因此確定了要選擇的EG 后,只有唯一的ES 滿足EG 與ES 可通信的約束條件,因此,可以將xk,s、yk,g兩類決策變量合并為一類決策變量uk,表示任務k選擇的EG,選擇的ES 即為該EG 連接的ES。發起任務k的設備為EDdk,這個是進行資源分配前的已知條件,且每個任務只能選擇一個EG,因此任務k獲得EG 的發射功率也可表示為pk。
經過簡化后,關于任務k的決策變量有3 個,分別為選擇的EG 的編號uk、任務獲得EG 發射功率pk、任務獲得ES 時鐘頻率fk。結合優化模型中給出的優化目標,MEN 高能效資源分配問題就是要對每個任務的EG 連接關系、獲得EG 發射功率、獲得ES 時鐘頻率進行決策,在滿足時延限制、資源限制等約束條件的情況下,最小化任務平均能耗。
假設任務k可選擇的EG 的個數為,將連續變量pk、fk的可能取值離散化,假設任務k獲得EG 發射功率可能數值的個數為獲得ES 時鐘頻率可能數值的個數為。若使用暴力搜索算法來遍歷求解具有K個任務資源分配,其時間復雜度為具有指數級的時間復雜度,這是一個NP-hard 的復雜決策優化問題,不適合大規模場景,因此需要使用智能算法在合理的時間內求次優解。
DRL 算法將深度學習(DL,deep learning)的強表征能力與RL 的強決策能力相結合,并且適用于具有動態性的環境。Q 學習(Q-learning)算法是一種經典的RL 算法,DQL 算法將DL 方法引入Q-learning 中,突破了Q-learning 算法不適用于高維決策任務的局限性。DQL 算法狀態空間相對容易構造,動作和獎勵與網絡優化的過程和目標有天然的契合度,是一種可用于網絡資源分配的有效方法。但DQL 算法中被高估的Q值影響了算法的性能,DDQL 算法通過分解動作選擇和策略評估來克服此問題[23]。本文提出基于DDQL 的移動邊緣網絡高能效資源分配方法。
RL 是智能體通過與環境交互,觀察做出動作后得到的獎勵,通過改變自己的行為來學習得到更多獎勵的策略。RL 重要基礎之一是試錯的學習方式,其流程為在時刻t,智能體從環境中觀察到狀態st,利用策略π選擇動作at。一旦該動作被執行,環境轉變到下一個狀態st+1,向智能體提供獎勵rt作為反饋。智能體的目標是學習一個可以最大化期望累積獎勵的策略[25]。
在一個回合(Episode)中,從時刻t起,考慮無限長的時間,智能體獲得的累積獎勵定義為
其中,γ∈[0,1]為折扣因子,用來削減未來獎勵對現在的影響,越遠的獎勵作用越小。
結合本文的優化模型,對RL 的三要素,即狀態、動作和獎勵進行定義。
狀態:狀態即為所有決策變量的組合。每個任務選擇的EG 表示為向量u=[u1,u2,…,uK],每個任務獲得的 EG 發射功率表示為向量p=[p1,p2,…,pK],每個任務獲得的ES 時鐘頻率表示為向量f=[f1,f2,…,fK]。狀態定義為s=[u p f],是一個3K維的向量。
獎勵:與式(23)模型的優化目標相對應。由于DRL 算法要最大化累積獎勵,而模型的優化目標要最小化任務平均能耗,所以將立即獎勵設為優化目標的相反數,為了使獎勵為正,再加上一個適當大的正數Emax,Emax表示任務最大能耗。在狀態不滿足式(23)約束條件時,獎勵為0。獎勵定義為
Q值,即狀態?動作值函數,表示在狀態s選擇動作a,按照策略π執行,獲得的期望累積回報,定義為
Q-learning算法需要將每個狀態–動作對的Q值以表格形式存儲,當狀態或動作空間過大時,便無法存儲。
DQL 算法通過深度神經網絡(DNN,deep neural network)來逼近最優策略對應Q值,表示為Q?(s,a)[26],如式(27)所示。
其中,參數θ代表神經網絡的權重,在迭代中通過調整參數θ來訓練神經網絡。將用來估計值函數的神經網絡稱為Q 網絡(Q-network)。
本文使用的DNN 為多層前饋神經網絡(FNN,feedforward neural network),神經元分層排列,相鄰兩層的神經元之間全連接,通過反向傳播來調整參數。DNN 以狀態為輸入,輸出所有可能的動作對應的Q值。DNN 使用ReLU 函數作為激活函數,ReLU 函數定義為
DQL 算法中,使用2 個結構相同的DNN。其中,當前Q 網絡為φ,參數為θ,用于評估當前狀態動作對的Q值;目標Q 網絡為,參數為θ?,用于產生目標Q值。
誤差函數為均方誤差形式,定義[27]為
其中,s′為在狀態s執行動作a后的下一個狀態,a′為狀態s′下可選擇的動作。
DQL 算法引入固定Q 目標機制,使用2 個DNN的原因是,如果使用同一個DNN 計算誤差并更新參數,根據不斷變化的Q值更新網絡,容易導致訓練過程不穩定。因此,使用2 個結構相同的DNN,當前Q 網絡每步都通過隨機梯度下降的方法進行更新,降低誤差;目標Q 網絡每隔一定的步數更新一次,賦值為和當前Q 網絡相同的參數。
DQL 算法中還使用了經驗回放機制。將在每個時刻t下,智能體獲得的經驗et=(st,at,rt,st+1)存入回放記憶單元中。回放記憶單元的容量有一定的限制,存滿后,存入新的經驗時會隨機替換掉舊的經驗。訓練時,每次從回放記憶單元中隨機采樣,用小批量的樣本對網絡進行訓練,更新網絡參數。
但DQL 根據式(30)計算目標Q值時,每次都選擇下一個狀態中最大的Q值,且選擇和評價動作都基于目標Q 網絡的參數θ?,這會使Q值被高估。
DDQL 算法針對上述問題進行改進。在DDQL 算法中,Q 網絡φ中的參數θ用來選擇Q值最大的動作,目標Q 網絡的參數為θ?用來評估最優動作的Q值,將動作選擇和策略評估分開。目標Q值[23]為
誤差函數定義為
DDQL 算法的其他方面與DQL 一致,其算法框架如圖2 所示。
DDQL 算法分為離線訓練和在線運行2 個階段。其中,離線訓練階段需要進行許多回合,對Q網絡進行訓練,在選擇動作的時候使用的是ε-貪心策略,如算法1 所示。ε-貪心策略是指,對于探索利用率ε∈[0,1],以ε的概率隨機選擇動作,以(1 ?ε)的概率選擇Q值最大的動作。在在線運行階段,為了減少運行時間,提升收斂速度,不對Q 網絡參數進行更新,采用貪心策略選擇Q值最大的動作[21],如算法2 所示。
算法1DDQL 訓練階段流程
輸入系統環境參數、任務參數和DDQL 算法參數
輸出當前Q 網絡參數θ
圖2 DDQL 算法框架
算法2DDQL 在線運行階段流程
輸入系統環境參數、任務參數、DDQL 算法參數和當前Q 網絡參數θ、當前狀態s1
輸出最終狀態sMaxStep+1
為驗證本文提出的基于DDQL 的求解方法的效果,將RA、GA、PSO 算法、DQL 算法作為對比算法。以下對幾種對比算法進行簡要介紹。
1) RA:隨機選擇EG 與資源進行分配,直到滿足約束條件為止。
2) GA:貪心策略是給每個任務分配盡量小的EG 發射功率和ES 時鐘頻率。首先給每個任務分配Pmin的EG 發射功率和Fmin的ES 時鐘頻率,若無法滿足約束條件,再依次給每個任務按照與DDQL 算法相同的步長增加分配的資源,直到滿足約束條件為止。
3) PSO 算法:PSO 算法是一種模擬鳥類行為的群體智能優化算法。首先初始化一群例子,粒子具有位置、速度和適應度特征,每個粒子的位置代表一個可能的解。在每次迭代中,粒子通過個體極值Pbest 和群體極值Gbest 更新自身速度,通過速度改變位置,重新計算適應度,并更新Pbest 和Gbest。
每個粒子的位置即為DDQL 算法中定義的狀態s,共N維,N=3K。因此,對粒子的位置、速度等進行如下定義。
其中,n∈[1,N]代表維度編號;ω為慣性因子,其取值范圍為非負;c1,c2為加速常數,前者為每個粒子的個體學習因子,后者為社會學習因子,取值范圍均為非負;r1,r2為2 個[0,1]內的隨機數。
之后,檢查每個粒子每一維度的速度,若超出[vmin,vmax]的范圍,則對速度進行修正。位置更新式為
適應度函數是評價粒子位置的指標,最優位置是適應度最大的位置。適應度的定義與DDQL 算法中的獎勵相同,即式(25)。
4) DQL 算法:已在3.3 節中進行介紹,在此不再贅述。
針對本文方法和對比算法的時間復雜度分析如下。
RA。設找到可行解需要的迭代步數為TRA,則RA 的時間復雜度為O(TRAK)。由于RA 是隨機進行資源分配,TRA的隨機性也較大。
GA。設找到可行解需要的迭代步數為TGA,則GA 的時間復雜度為O(TGAK)。在任務數較小、資源不緊缺的情況下,TGA一般也較小,隨著任務數的增多,需要更多的迭代次數以找到滿足約束的可行解。
PSO 算法。設迭代總步數為TPSO,則PSO 算法的時間復雜度為O(TPSOMK)。
DDQL 算法。訓練階段的時間復雜度需要考慮訓練Q 網絡的時間復雜度和訓練Q 網絡的次數兩部分。在訓練Q 網絡的過程中,需要對每相鄰兩層神經元之間的連接權重進行更新,設Q 網絡的層數為nl,第i層中神經元的個數為ni,每次訓練中的迭代次數為Tudp,則訓練一次Q 網絡的時間復雜度為記回合數為TEpi,每回合中步數為TStep,則訓練Q 網絡的次數為TEpiTStep,因此,DDQL 訓練階段的時間復雜度使用早停、隨機失活等技巧來優化神經網絡訓練,會對時間復雜度產生一定影響,因此以上結果為近似結果。DDQL 算法運行階段的時間復雜度為O(TStepK)。DDQL 算法在線訓練階段的時間復雜度較高,但將Q 網絡訓練好后,運行階段不需要更新Q 網絡且只需進行一個回合,時間復雜度低,運行時間短,可以滿足實時網絡條件下對在線決策時間的要求。因此,本文在對比不同算法的時間復雜度時,使用運行階段的時間復雜度。
DQL 算法。算法的時間復雜度與DDQL 算法相同。
綜上所述,各算法的時間復雜度如表1 所示。
表1 算法時間復雜度
在忽略任務數對迭代步數影響的情況下,RA、GA、PSO、DDQL、DQL 等算法的時間復雜度和任務數K成線性關系,相比于具有指數級時間復雜度的暴力搜索算法,時間復雜度顯著下降。
本章對提出的基于DDQL 的資源分配方法進行仿真實驗。首先,對仿真場景和仿真參數進行說明;然后,展示仿真結果,并對其進行分析。
在仿真實驗中,考慮多邊緣服務器、多邊緣網關、多終端設備的仿真場景,如圖3 所示。考慮900 m×900 m 的網絡覆蓋范圍,其中包含4 個邊緣服務器,11 個邊緣網關,以及若干終端設備,其數量可設定,位置隨機。邊緣網關部署在基站側,每個基站的覆蓋范圍的半徑為200 m,圖3 中以維諾圖的形式表示基站的覆蓋范圍。邊緣服務器與邊緣網關連接關系固定,邊緣網關與終端設備的連接關系需要后續通過算法進行決策。
圖3 仿真場景
根據文獻[28-31]設置默認情況下的系統參數,如表2 所示。假設每個ED 發起一個任務,其余的任務相關的參數隨機生成,在所給范圍內均勻分布。
表2 系統參數設置
根據文獻[32]設置DDQL 和DQL 算法參數,如表3 所示。表4 為PSO 算法參數設置。
表3 DDQL 和DQL 算法參數設置
表4 PSO 算法參數設置
本文通過MATLAB 建立數值仿真環境評估所提算法的性能。
DDQL 和DQL 算法需要在實際運行前進行Q網絡的訓練。圖4 為2 種算法在訓練過程中的Q值變化情況。Q值起初都在0 附近,隨著回合數增加,Q值先逐漸增加,而后趨于穩定。DDQL 算法的Q值在100 回合左右收斂,DQL 算法的Q值在300回合左右收斂。相比于DQL 算法,DDQL 算法在訓練階段具有更快的收斂速度。并且,DQL 算法的Q值明顯大于DDQL 算法的Q值,反映出DQL 算法存在Q值過估計的問題。
圖4 DDQL 算法和DQL 算法訓練階段Q 值變化情況
接下來對算法在在線運行階段的性能進行評估與分析。
圖5 為不同算法在不同任務數下的收斂步數對比。其中,GA 的收斂步數是指在找到可行解之前的迭代次數,找到可行解后算法停止。PSO 算法、DQL 算法、DDQL 算法的收斂步數是指結果趨于穩定前經過的迭代次數。GA、PSO 算法在任務數為10 時,收斂步數很少,但隨著任務數增加,GA 的收斂步數迅速增加,而PSO 的收斂步數也在任務數大于60 之后明顯增加。這是因為隨著任務數增加,資源逐漸緊張,需要更多的步數來搜索可行解并優化至收斂。相比之下,在任務數少時,DDQL 算法和DQL 算法的收斂步數略多于GA 與PSO,但隨著任務數增加,DDQL 算法和DQL 算法的收斂步數也基本穩定,在狀態與動作維度較高的情況下也顯示出了良好的收斂性。并且,DDQL 算法的收斂步數總體上少于DQL 算法。
圖5 不同算法收斂步數對比
圖6~圖8 是任務數為50 時,PSO、DQL 和DDQL算法運行階段的變化情況。圖6 為任務平均能耗變化情況。PSO 雖然收斂速度快,在10 步就收斂,但是過早地陷入了局部最優解,最終任務平均能耗為0.356 J。由于PSO 算法會維護歷史群體最優值,所以迭代過程中,任務平均能耗只會單調減少,不會出現起伏波動。DQL 算法的收斂步數略多,在38 步收斂,最終任務平均能耗為0.321 J。DDQL 算法的收斂步數在PSO 算法和DQL 算法之間,DDQL 算法在第21 步收斂,最終任務平均能耗為0.291 J,比PSO 算法少18.3%,比DQL 算法少9.4%。
圖7 為任務平均獲得的EG 發射功率與ES 時鐘頻率變化情況,其收斂情況與圖6 相吻合。最終,在PSO、DQL 和DDQL 算法下,任務平均獲得的EG發射功率分別為0.52 W、0.64 W 和0.59 W,ES 時鐘頻率分別為1.15 GHz、1.20 GHz 和1.09 GHz。
圖6 任務平均能耗變化情況
圖7 資源分配變化情況
圖8 為任務平均時延與傳輸速率變化情況。3 種算法經過迭代優化,在任務平均能耗減小的同時,任務平均時延減少,任務平均傳輸速率增加,提升了用戶QoS,系統獲得了更好的性能。但DQL 用多于DDQL 算法的任務平均能耗,獲得了更低的任務平均時延和更高的傳輸速率,反映了能耗與性能存在一定的折中關系。
圖8 任務平均時延與傳輸速率變化情況
圖9 為任務數為50 時,任務平均能耗與任務需要的CPU 時鐘周期數和任務傳輸數據量的關系圖。每個算法在每個測試任務數據量下進行100 組實驗,對結果取平均值。基于DDQL 的算法比基于RA、GA、PSO 和DQL 的算法分別降低了46.0%、10.2%、18.6%和5.4%的任務平均能耗。基于DDQL的資源分配方法能有效降低任務平均能耗。
圖9 任務平均能耗與任務數據量關系
圖10 為任務平均能耗隨任務數變化情況。由圖9 可以看出,任務需要的CPU 時鐘周期數和任務傳輸數據量對任務平均能耗影響較大,因此,在進行任務平均能耗與任務數關系的仿真實驗時,將任務需要的CPU 時鐘周期數均設為300 Mcycle,任務傳輸數據量均設為6 MB。在每個測試任務數下,進行100 組實驗,對結果取平均值。由圖10可以看出,隨著任務數增加,任務平均能耗也增加,但增長幅度較小。不同的算法對最終的任務平均能耗影響較大。基于DDQL 的算法比基于RA、GA、PSO 和DQL 的算法分別降低了65.0%、21.5%、37.4%和5.0%的任務平均能耗。
圖10 任務平均能耗與任務數關系
綜上,本文通過仿真實驗,驗證了提出的基于DDQL 的求解方法對解決多任務資源分配問題的有效性。訓練過程與運行結果能夠收斂,在訓練階段具有比DQL 算法更快的收斂速度;在運行階段,當任務數較多時,相比于GA、PSO 算法,DDQL算法收斂步數優勢明顯。運行中,DDQL 算法在降低任務平均能耗的同時,也能對任務平均時延與傳輸速率進行一定程度的優化。相比基于RA、GA、PSO 算法、DQL 算法的方法,基于DDQL 算法的邊緣網絡資源分配方法能有效降低任務平均能耗。
本文對移動邊緣網絡資源分配方法進行研究。考慮任務完成時延限制和通信、計算、存儲資源限制等約束條件,建立任務平均能耗最小化的資源分配模型,并提出基于DDQL 的求解方法,相比基于RA、GA、PSO、DQL 的多種求解方法,降低了至少5%的任務平均能耗。本文提出的算法為移動邊緣網絡中低能耗資源分配方法提供了一種有借鑒意義的參考。
本文還存在一些不足之處,需進一步改進與優化。例如,在優化模型上,需要考慮在云中心、邊緣節點、終端設備協同配合的場景下,對計算卸載位置、各類資源分配等進行聯合決策與優化;同時考慮上下行流量的傳輸過程,建立更通用的模型。在算法優化上,可考慮使用能直接對連續動作空間進行優化的方法,來避免動作步長對結果產生的影響。例如,目前獎勵設置采用的是約束判別方法,后續需要考慮更為高級的處理方法,如將約束疊加至目標中。此外,目前DDQL 算法的超參數靠人工設定,后續需要研究算法的加速機制和參數自適應設置方式,并探討將算法用于實際系統中的可行性。