劉婷,羅喜良
(1 上??萍即髮W(xué) 信息科學(xué)與技術(shù)學(xué)院,上海 201210;2 中國科學(xué)院上海微系統(tǒng)與信息技術(shù)研究所,上海 200050;3 中國科學(xué)院大學(xué),北京 100049)(2020年1月15日收稿;2020年5月5日收修改稿)
隨著物聯(lián)網(wǎng)時(shí)代信息的快速增長,用戶對(duì)數(shù)據(jù)處理速率、服務(wù)質(zhì)量(quality of service, QoS)與體驗(yàn)質(zhì)量(quality of experience, QoE)的要求在不斷提高。然而大批提升用戶體驗(yàn)的智能應(yīng)用服務(wù),如增強(qiáng)現(xiàn)實(shí)(augmented reality, AR)、虛擬現(xiàn)實(shí)(virtual reality, VR)、交互游戲等往往伴隨著高計(jì)算復(fù)雜度和低時(shí)延的要求。因此即使移動(dòng)設(shè)備的處理能力在不斷提高,但智能手機(jī)作為便攜性設(shè)備,由于其固有的缺點(diǎn),如有限的計(jì)算資源、存儲(chǔ)資源,仍然無法滿足此類任務(wù)的要求。移動(dòng)邊緣計(jì)算能夠有效平衡設(shè)備能力和用戶體驗(yàn)的困境,同時(shí),移動(dòng)邊緣計(jì)算的安全性能夠得到保障,如文獻(xiàn)[1]中作者從服務(wù)器安全、用戶隱私等多方面來保證系統(tǒng)的穩(wěn)定。因此移動(dòng)邊緣計(jì)算技術(shù)被廣泛研究。在移動(dòng)邊緣計(jì)算(mobile edge computing,MEC)網(wǎng)絡(luò)中[2-4],將高計(jì)算復(fù)雜度的任務(wù)卸載至網(wǎng)絡(luò)邊緣端,利用分布式的計(jì)算資源和存儲(chǔ)資源,能夠有效減少任務(wù)的處理時(shí)延。因此,如何實(shí)現(xiàn)更高效的任務(wù)卸載吸引了大量學(xué)者的關(guān)注。
在許多文獻(xiàn)中,任務(wù)卸載被建模為確定性優(yōu)化問題。You等[5]在任務(wù)計(jì)算時(shí)延的約束下,通過任務(wù)卸載實(shí)現(xiàn)最小化能量消耗,并將該任務(wù)卸載問題定義為確定性優(yōu)化問題。然而一個(gè)實(shí)用的任務(wù)卸載策略應(yīng)該能夠根據(jù)系統(tǒng)的實(shí)時(shí)狀態(tài)進(jìn)行自主調(diào)整,例如用戶設(shè)備的隊(duì)列信息、幫助節(jié)點(diǎn)的計(jì)算能力等?;谠摽紤],Mao等[6]將任務(wù)卸載建模為隨機(jī)規(guī)劃問題,利用李雅普諾夫優(yōu)化方法,將復(fù)雜的隨機(jī)規(guī)劃問題轉(zhuǎn)換為一系列簡單的順序決策問題。上述文獻(xiàn)提出的任務(wù)卸載策略都是基于系統(tǒng)參數(shù)信息已知的假設(shè),但在實(shí)際場景中用戶難以獲得系統(tǒng)信息,或者需要大量開銷來獲取信息,因此需要一個(gè)能夠自主在線學(xué)習(xí)的策略實(shí)現(xiàn)任務(wù)卸載。此外,在文獻(xiàn)[5-6]中,作者只根據(jù)系統(tǒng)的短期利益更新任務(wù)卸載策略,而忽略了系統(tǒng)的長遠(yuǎn)利益。本文將針對(duì)這2個(gè)因素來建立任務(wù)卸載模型。
強(qiáng)化學(xué)習(xí)作為一種在線學(xué)習(xí)方法,能夠從系統(tǒng)歷史反饋中學(xué)習(xí)系統(tǒng)信息,從而處理系統(tǒng)的未知性。近期許多文獻(xiàn)利用強(qiáng)化學(xué)習(xí)技術(shù)在任務(wù)卸載方面取得進(jìn)展。Chen等[7]利用強(qiáng)化學(xué)習(xí)得到更優(yōu)的任務(wù)卸載策略,從而實(shí)現(xiàn)系統(tǒng)長期效用的最大化。Min等[8]將能量收集技術(shù)應(yīng)用到MEC網(wǎng)絡(luò),通過強(qiáng)化學(xué)習(xí)來選擇卸載節(jié)點(diǎn)和速率以提高用戶體驗(yàn)。Huang等[9]將無線供電MEC網(wǎng)絡(luò)的任務(wù)卸載建模為組合優(yōu)化問題,利用強(qiáng)化學(xué)習(xí)得到近似最優(yōu)解。然而,上述文獻(xiàn)都是基于靜止的用戶設(shè)備,忽視了移動(dòng)用戶的需求,無法應(yīng)用于移動(dòng)場景,如現(xiàn)在的車聯(lián)網(wǎng)(vehicle-to-everything, V2X)應(yīng)用、AR的場景導(dǎo)覽、移動(dòng)機(jī)器人[10]等,因此針對(duì)于移動(dòng)用戶的任務(wù)卸載的研究具有重要意義。
相較于移動(dòng)的用戶,靜止用戶所處的MEC網(wǎng)絡(luò)環(huán)境中的信道環(huán)境、周圍節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu)等比較穩(wěn)定,這也是之前大部分研究任務(wù)卸載的文獻(xiàn)中考慮的場景[4-8]。而相比于傳統(tǒng)有線網(wǎng)絡(luò),如今很多使用無線網(wǎng)絡(luò)、蜂窩網(wǎng)絡(luò)的用戶通常處于移動(dòng)狀態(tài),因此不僅用戶周圍的幫助節(jié)點(diǎn)會(huì)隨著變化,信道狀態(tài)也會(huì)發(fā)生改變。基于此考慮,本文參照文獻(xiàn)[11]中MEC網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)和用戶移動(dòng)模式,假設(shè)用戶按照馬爾科夫性質(zhì)在網(wǎng)絡(luò)中移動(dòng),利用強(qiáng)化學(xué)習(xí)技術(shù)對(duì)任務(wù)卸載進(jìn)行研究。文獻(xiàn)[11]中,在一個(gè)蜂窩網(wǎng)絡(luò)完全覆蓋、Wi-Fi局部覆蓋的場景中,作者探究在昂貴的蜂窩網(wǎng)絡(luò)和便宜的Wi-Fi下,移動(dòng)用戶通過Wi-Fi卸載來減少開銷從而完成長時(shí)間的文件傳輸。他們將卸載模型定義為馬爾科夫決策過程(Markov decision process, MDP),并在用戶移動(dòng)模式已知時(shí)提供系統(tǒng)最優(yōu)解。MDP被廣泛應(yīng)用于隨機(jī)規(guī)劃問題中,它能夠有效地刻畫系統(tǒng)的動(dòng)態(tài)變化,并將系統(tǒng)的長期表現(xiàn)作為目標(biāo)。
本文將移動(dòng)用戶的任務(wù)卸載問題建模為MDP,并在系統(tǒng)信息為先驗(yàn)知識(shí)時(shí),提供系統(tǒng)的最優(yōu)解。同時(shí),在系統(tǒng)信息未知,即用戶移動(dòng)模式未知時(shí),通過基于Q-learning和DQN的在線學(xué)習(xí)方法,得到收斂速度快,且效果逼近最優(yōu)解的算法。
符號(hào)說明:指示函數(shù)1{A}表示事件A發(fā)生(不發(fā)生)時(shí)取值為1(0)。[·]為期望。[x]+=max{0,x}。{0}代表集合中除{0}以外的所有元素的集合。
在移動(dòng)邊緣計(jì)算網(wǎng)絡(luò)中(參見圖1),存在移動(dòng)用戶(本地節(jié)點(diǎn))和一些固定節(jié)點(diǎn)。固定節(jié)點(diǎn)可以是宏基站、微基站和家庭基站等,它們能夠?yàn)橛脩粼O(shè)備提供計(jì)算資源和存儲(chǔ)資源等,后文將其稱為幫助節(jié)點(diǎn)。
圖1 移動(dòng)邊緣計(jì)算的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖
圖2 任務(wù)卸載模型時(shí)間線
本文的目標(biāo)是最小化移動(dòng)用戶的長期任務(wù)時(shí)延。為刻畫用戶移動(dòng)性帶來的系統(tǒng)隨機(jī)性,將問題定義為一個(gè)馬爾科夫決策過程,利用系統(tǒng)轉(zhuǎn)移概率來刻畫用戶的移動(dòng)模式。該問題可以由4個(gè)元素完全表征,下面將分別介紹。
其中:m,n為正整數(shù),f0為本地節(jié)點(diǎn)計(jì)算能力,即每時(shí)隙處理的任務(wù)大小。當(dāng)任務(wù)在本地計(jì)算時(shí),隊(duì)列會(huì)增加大小為μ的任務(wù),同時(shí)本地節(jié)點(diǎn)以f0的速度處理任務(wù)。當(dāng)任務(wù)卸載到其他幫助節(jié)點(diǎn)時(shí),本地節(jié)點(diǎn)不增加任務(wù),同時(shí)以f0的速度處理任務(wù)。
(1)
其中bt+1的轉(zhuǎn)移概率服從
(2)
4)開銷c(s,a):系統(tǒng)的開銷定義為完成任務(wù)需要的時(shí)延,c(st,at)為完成任務(wù)t所需要的時(shí)延
(3)
為最小化移動(dòng)用戶的長期任務(wù)的時(shí)延,將問題定義為
(4)
Vπ(s)=,
(5)
其中:si代表初始狀態(tài),[·]為對(duì)策略π和轉(zhuǎn)移概率(s′|s,a)的期望。
最優(yōu)策略π*的狀態(tài)值函數(shù)Vπ*(s)稱為最優(yōu)狀態(tài)值函數(shù),下文簡寫為V*(s)。最優(yōu)狀態(tài)值函數(shù)滿足貝爾曼最優(yōu)性條件[14],以系統(tǒng)狀態(tài)st為例:
(6)
其中Q*(st,a)為狀態(tài)-動(dòng)作對(duì)(st,a)的動(dòng)作值函數(shù),滿足
Q*(st,a)=[c(st,a)+γV*(s′)|st,a]
(7)
其中s′為系統(tǒng)在狀態(tài)st執(zhí)行動(dòng)作a后,系統(tǒng)可能轉(zhuǎn)移的下一狀態(tài)。式(7)中第2個(gè)等式的第1項(xiàng)為任務(wù)t的即時(shí)開銷c(st,a),第2項(xiàng)為對(duì)未來所有任務(wù)的折扣開銷的期望的估計(jì),γ是1.2節(jié)中的折扣因子,滿足γ<1。在貝爾曼最優(yōu)性方程中,即時(shí)開銷的比重為1,高于對(duì)未來開銷的估計(jì)的比重γ。
動(dòng)作值函數(shù)Q*(s,a)的定義與狀態(tài)值函數(shù)V*(s)相似,為系統(tǒng)在狀態(tài)s執(zhí)行動(dòng)作a后,按照策略π*實(shí)現(xiàn)的長期折扣開銷的期望。從式(6)可以看出,若已知最優(yōu)動(dòng)作值函數(shù)Q*(s,a),采用貪婪算法執(zhí)行任務(wù)卸載,即最低動(dòng)作值函數(shù)對(duì)應(yīng)的動(dòng)作為最優(yōu)卸載決策
(8)
基于以上研究,當(dāng)系統(tǒng)信息已知時(shí),通過數(shù)值迭代能夠求解所有狀態(tài)-動(dòng)作對(duì)的最優(yōu)動(dòng)作值函數(shù),再基于貪婪算法獲得最優(yōu)策略。具體流程見算法1。
算法1最優(yōu)任務(wù)卸載算法
步驟5)根據(jù)式(7)更新Q*(s,a),根據(jù)式(8)更新π*(s),按照式(6)設(shè)置V*(s)。
步驟6)若V*(s)收斂,算法結(jié)束;否則跳轉(zhuǎn)至步驟2。
算法1通過離線地對(duì)貝爾曼最優(yōu)性條件,式(6)和式(7),進(jìn)行數(shù)值迭代,從而得到最優(yōu)卸載策略π*。當(dāng)系統(tǒng)需要進(jìn)行在線任務(wù)卸載時(shí),觀測到狀態(tài)s后,可以直接通過π*(s)獲得最優(yōu)卸載決策。
然而系統(tǒng)信息一般難以獲得,雖然能夠根據(jù)用戶的歷史移動(dòng)軌跡,對(duì)用戶移動(dòng)模式進(jìn)行預(yù)測[12-13],但會(huì)引入大量額外開銷。為解決用戶移動(dòng)性帶來的系統(tǒng)未知性,基于在線學(xué)習(xí),提出能夠應(yīng)對(duì)用戶移動(dòng)性的任務(wù)卸載算法。
2.2.1 基于Q-learning的任務(wù)卸載
由于用戶移動(dòng)模式為后驗(yàn)知識(shí),無法通過2.1節(jié)中的算法得到最優(yōu)任務(wù)卸載策略,因此需要在線學(xué)習(xí)的算法來處理未知信息。Q-learning作為一種無模型方法,可以根據(jù)系統(tǒng)的歷史反饋,對(duì)動(dòng)作值函數(shù)Q(s,a)進(jìn)行預(yù)測。
在系統(tǒng)狀態(tài)st時(shí)執(zhí)行動(dòng)作at后,觀測系統(tǒng)開銷c(st,at),同時(shí)系統(tǒng)轉(zhuǎn)移到下一狀態(tài)st+1,可以將這些信息稱為一組經(jīng)驗(yàn)值et=(st,at,c(st,at),st+1)。之后動(dòng)作值函數(shù)Q(st,at)利用這一組經(jīng)驗(yàn)值,按照下式更新:
Qt(st,at)=(1-αt)Qt-1(st,at)+
(9)
式中:Qt為動(dòng)作值函數(shù)的第t次迭代,αt為第t次迭代的學(xué)習(xí)率,也代表此次經(jīng)驗(yàn)值et的重要性。在每個(gè)時(shí)隙,系統(tǒng)利用經(jīng)驗(yàn)值更新動(dòng)作值函數(shù),獲得新的動(dòng)作值函數(shù)后,在下一時(shí)隙根據(jù)新的動(dòng)作值函數(shù)按照式(8)執(zhí)行卸載決策。
1)即時(shí)開銷有界,|c(s,a)|≤C;
2)學(xué)習(xí)率αt滿足隨機(jī)逼近條件
(10)
我們的任務(wù)卸載模型符合條件1)。同時(shí)通過對(duì)學(xué)習(xí)率的設(shè)定,如設(shè)置αt=1/t,條件2)也可以得到滿足。因此本文的任務(wù)卸載模型能夠通過Q-learning方法收斂到最優(yōu)解?;赒-learning的在線任務(wù)卸載策略的流程見算法2。
算法2基于Q-learning的任務(wù)卸載
步驟3)觀測系統(tǒng)開銷c(st,at)以及新狀態(tài)st+1;
步驟4)存儲(chǔ)經(jīng)驗(yàn)值et=(st,at,c(st,at),st+1);
步驟5)按照式(9)更新Qt(st,at);
步驟6)設(shè)置t=t+1;
步驟7)若t>T,算法結(jié)束;否則跳轉(zhuǎn)步驟2)。
Q-learning是一個(gè)基于表格的策略,表格橫軸為狀態(tài)空間,縱軸為動(dòng)作空間,表格內(nèi)為所有狀態(tài)-動(dòng)作對(duì)的Q值。為達(dá)到收斂,表格中每一個(gè)數(shù)據(jù)都需要得到多次更新。但在算法2中,每個(gè)時(shí)隙只能更新表格中的一個(gè)數(shù)據(jù),如果狀態(tài)空間和動(dòng)作空間非常大,將面臨維度災(zāi)難并難以收斂。為應(yīng)對(duì)這種情況,加快收斂速度,將采用基于擬合的方式,實(shí)現(xiàn)在單個(gè)時(shí)隙中批量更新Q值。
2.2.2 基于DQN的任務(wù)卸載
(11)
其中:Q(s,a;θ)為深度神經(jīng)網(wǎng)絡(luò)的輸出,θ為神經(jīng)網(wǎng)絡(luò)的參數(shù),將深度神經(jīng)網(wǎng)絡(luò)與Q-learning的結(jié)合稱為DQN[16]。
(12)
(13)
算法3基于DQN的任務(wù)卸載
步驟1)初始化神經(jīng)網(wǎng)絡(luò)參數(shù)θ0,設(shè)置t=1;
步驟5)按照式(13)更新yt,在θ方向?qū)p失函數(shù)執(zhí)行梯度下降,更新θt;
步驟6)設(shè)置t=t+1;
步驟7)若t>T,算法結(jié)束;否則跳轉(zhuǎn)步驟2)。
移動(dòng)邊緣計(jì)算網(wǎng)絡(luò)的參數(shù)設(shè)定主要參照文獻(xiàn)[17]。除位于場景中心的宏基站外,網(wǎng)絡(luò)中還有N=20個(gè)幫助節(jié)點(diǎn)。本地節(jié)點(diǎn)的傳輸功率為20 dBm,到宏基站和其他幫助節(jié)點(diǎn)的路徑損耗分別為(35.7+lgd+33.4)dB和(35.7+lgd+18.4)dB,d為本地節(jié)點(diǎn)到幫助節(jié)點(diǎn)的距離,單位為m。系統(tǒng)帶寬為20 MHz,功率頻譜密度為-174 dBm/Hz。本地節(jié)點(diǎn)和宏基站的處理速度分別為10和35 Mbps,其他幫助節(jié)點(diǎn)的處理速度均勻分布于(10,40)Mbps。
在對(duì)DQN任務(wù)卸載策略進(jìn)行仿真時(shí),采用TensorFlow框架來搭建深度神經(jīng)網(wǎng)絡(luò)[18]。在神經(jīng)網(wǎng)絡(luò)中包含2層隱藏層,分別含有128和64個(gè)神經(jīng)元,采用ReLU作為激活函數(shù)[19]。其他參數(shù)列在表1中。
表1 DQN參數(shù)設(shè)置
這一節(jié)驗(yàn)證基于Q-learning和DQN的任務(wù)卸載策略的表現(xiàn),并與最優(yōu)卸載方案進(jìn)行比較。由于在實(shí)際中系統(tǒng)信息難以獲得,最優(yōu)卸載方案無法應(yīng)用,因此本文將最優(yōu)任務(wù)卸載算法作為基準(zhǔn)來驗(yàn)證其他2個(gè)算法的效果。
1)收斂性:圖3通過展示動(dòng)作值函數(shù)的累計(jì)平均值來驗(yàn)證基于Q-learning和DQN的任務(wù)卸載策略的收斂性。不失一般性地,選擇系統(tǒng)狀態(tài)s=(7, 30)和動(dòng)作a=1的動(dòng)作值函數(shù)作為示例,即Q((7, 30), 1)。
圖3 算法收斂性比較
2)近優(yōu)性:在2.2.1節(jié)中提到,本文中的任務(wù)卸載模型采用的Q-learning算法能夠以概率1收斂到最優(yōu)解。為驗(yàn)證該結(jié)論,將通過長期任務(wù)的時(shí)延來驗(yàn)證算法的近優(yōu)性。圖4和圖5的縱坐標(biāo)為系統(tǒng)回報(bào)Rt,定義為Rt=C-c(st,at),C為開銷的上界。
圖4 算法性能比較
圖5 預(yù)訓(xùn)練后算法性能比較
同樣的,圖中的最優(yōu)解是基于系統(tǒng)信息已知的假設(shè),因此只作為其他算法的表現(xiàn)基準(zhǔn),而基于Q-learning和DQN的任務(wù)卸載策略中,系統(tǒng)信息為后驗(yàn)知識(shí),系統(tǒng)利用歷史反饋以實(shí)現(xiàn)自主在線學(xué)習(xí)。同時(shí),我們還將算法同“不卸載”進(jìn)行比較,它忽略了用戶的移動(dòng)性,對(duì)所有任務(wù)都不執(zhí)行任務(wù)卸載,只在本地節(jié)點(diǎn)進(jìn)行處理。我們將觀察不考慮用戶移動(dòng)性時(shí)的系統(tǒng)表現(xiàn)。
在圖4中,基于Q-learning和DQN的算法對(duì)系統(tǒng)信息沒有先驗(yàn)知識(shí),從時(shí)隙t=0開始在線學(xué)習(xí)。因此在仿真的前期時(shí)隙中,Q-learning由于學(xué)習(xí)數(shù)據(jù)的不足,導(dǎo)致算法對(duì)系統(tǒng)信息掌握較少,表現(xiàn)較差。此時(shí)基于Q-learning的任務(wù)卸載策略實(shí)現(xiàn)的系統(tǒng)回報(bào),甚至低于不執(zhí)行任務(wù)卸載的策略。但值得注意的是,基于Q-learning策略的回報(bào)始終保持著上升的趨勢,并且從第800個(gè)時(shí)隙開始,表現(xiàn)超過不執(zhí)行任務(wù)卸載的策略,且一直維持著上升的趨勢。而基于DQN的任務(wù)卸載有著明顯的優(yōu)勢,不論是仿真前期還是后期,獲得的利益始終高于Q-learning和不執(zhí)行卸載的策略,同時(shí)也維持著最為明顯的系統(tǒng)回報(bào)上升的趨勢。在短時(shí)間內(nèi),不考慮用戶移動(dòng)性的策略表現(xiàn)似乎與提出的算法相差不多,但從長時(shí)間尺度來看,考慮移動(dòng)性的任務(wù)卸載策略,在后期表現(xiàn)更為優(yōu)異。下面將進(jìn)一步展示算法對(duì)長期任務(wù)的表現(xiàn)。
圖5將經(jīng)過預(yù)訓(xùn)練的Q-learning和DQN的算法與最優(yōu)解進(jìn)行比較,從而驗(yàn)證2個(gè)算法的近優(yōu)性。其中基于Q-learning和DQN的任務(wù)卸載分別經(jīng)過200 000和2 000個(gè)時(shí)隙的預(yù)訓(xùn)練,已經(jīng)接近收斂。從時(shí)隙t=0開始進(jìn)行在線的任務(wù)卸載??梢钥闯?,與圖4的未經(jīng)預(yù)訓(xùn)練相比,2個(gè)算法經(jīng)過預(yù)先學(xué)習(xí)后已經(jīng)對(duì)系統(tǒng)掌握大量信息,Q-learning的表現(xiàn)已經(jīng)非常接近最優(yōu)解,證明它的確能夠在系統(tǒng)信息未知的情況下,通過在線學(xué)習(xí)達(dá)到接近最優(yōu)解,并高效地完成任務(wù)卸載。而DQN的表現(xiàn)雖然略遜于Q-learning,但相差不大。然而值得注意的是,相比于Q-learning,基于DQN的任務(wù)卸載只需要1%的預(yù)訓(xùn)練時(shí)間就能夠達(dá)到接近Q-learning的效果,這也再一次驗(yàn)證了基于DQN的任務(wù)卸載策略快速的收斂速度??梢钥闯觯陂L期任務(wù)中,提出的算法在表現(xiàn)上一直明顯優(yōu)于不考慮用戶移動(dòng)性的不卸載策略,這也驗(yàn)證了上一段的討論,考慮用戶的移動(dòng)性在長時(shí)間尺度上可以實(shí)現(xiàn)更高的系統(tǒng)利益。
本文研究MEC網(wǎng)絡(luò)中高效的在線任務(wù)卸載策略。為最小化移動(dòng)用戶在系統(tǒng)中的長期任務(wù)時(shí)延,利用馬爾科夫決策過程建立任務(wù)卸載模型。在假設(shè)系統(tǒng)信息已知的前提下,提供了系統(tǒng)的最優(yōu)解。在系統(tǒng)信息未知時(shí),提出2個(gè)在線學(xué)習(xí)的算法,基于Q-learning和DQN的任務(wù)卸載。其中基于Q-learning的任務(wù)卸載在本文的模型中能夠收斂到最優(yōu)解,而基于DQN的算法能夠快速收斂,并且達(dá)到接近最優(yōu)解的表現(xiàn)。