張 東 劉 林
(91202部隊(duì) 葫蘆島 125004)
根據(jù)主要運(yùn)營商以及通信協(xié)會(huì)發(fā)布的報(bào)告,5G 將是未來移動(dòng)網(wǎng)絡(luò)的主要平臺(tái),其整合了通信和計(jì)算技術(shù),而移動(dòng)邊緣計(jì)算(MEC)作為5G 的主要核心技術(shù)之一,有效地解決了未來網(wǎng)絡(luò)中的網(wǎng)絡(luò)延遲、擁塞以及容錯(cuò)等問題。在MEC 的機(jī)制下,無線網(wǎng)絡(luò)側(cè)具有計(jì)算、存儲(chǔ)以及處理的能力,高效地整合了無線網(wǎng)絡(luò)和互聯(lián)網(wǎng)技術(shù)。其通過無線應(yīng)用編程接口打開無線網(wǎng)絡(luò)與服務(wù)服務(wù)器之間的信息交互,整合無線網(wǎng)絡(luò)與服務(wù),將傳統(tǒng)無線基站升級為智能基站。對于MEC 系統(tǒng),計(jì)算卸載過程中需要無線數(shù)據(jù)傳輸,因此計(jì)算卸載策略的設(shè)計(jì)應(yīng)考慮移動(dòng)設(shè)備時(shí)變信道質(zhì)量、任務(wù)到達(dá)和能量狀態(tài)等現(xiàn)有環(huán)境動(dòng)態(tài)。
近年來,人們對計(jì)算卸載策略的設(shè)計(jì)進(jìn)行了大量的研究。在文獻(xiàn)[1]中,Wang等開發(fā)了一種基于multipliers 算法的交替方向法,通過優(yōu)化計(jì)算卸載決策、資源分配和內(nèi)容緩存策略來解決收益最大化問題。在文獻(xiàn)[2]中,Hu等提出了一種考慮協(xié)同計(jì)算卸載的無線功率轉(zhuǎn)移輔助MEC 系統(tǒng)中聯(lián)合功率和時(shí)間分配的兩階段方法。這些工作中的策略主要是基于一次優(yōu)化,并沒有表現(xiàn)出長期的計(jì)算卸載性能。在文獻(xiàn)[3]中,Mao 等使用Lyapunov 優(yōu)化技術(shù)研究了一個(gè)支持無線能量采集的移動(dòng)設(shè)備MEC系統(tǒng)的動(dòng)態(tài)計(jì)算卸載策略。然而,Lyapunov優(yōu)化只能構(gòu)造一個(gè)近似最優(yōu)解??紤]到無線信道在時(shí)域內(nèi)的隨機(jī)變化,這些方法不適用于動(dòng)態(tài)系統(tǒng)。為了解決這一系列問題,本文首先提出基于Q-learning的方法,但是隨著用戶數(shù)量的增加,可能的動(dòng)作數(shù)量會(huì)迅速增加,那么動(dòng)作值Q的計(jì)算和存儲(chǔ)就會(huì)變得十分復(fù)雜。所以,本文最后采用了深度強(qiáng)化學(xué)習(xí)的方法,仿真結(jié)果表明,該方法可以使系統(tǒng)的延遲成本和能耗之和最小。
1)網(wǎng)絡(luò)模型
本文的網(wǎng)絡(luò)模型包括若干個(gè)基站以及若干終端UE、MEC 服務(wù)器被部署在基站上。假設(shè)每一個(gè)設(shè)備都將要完成一個(gè)計(jì)算任務(wù),并且每個(gè)UE 都可以在本地執(zhí)行任務(wù)或者將任務(wù)通過無線網(wǎng)絡(luò)卸載到MEC 服務(wù)器端,每個(gè)MEC 服務(wù)器的計(jì)算能力都是有限的,不能保證為所有的設(shè)備提交的計(jì)算任務(wù)進(jìn)行服務(wù)。
2)任務(wù)模型
假設(shè)每個(gè)任務(wù)的每個(gè)終端都有一個(gè)計(jì)算密集型任務(wù),該任務(wù)可以被定義為Rn?(Bn,Dn,τn);而且每個(gè)任務(wù)可以通過本地的CPU執(zhí)行處理,也可以通過計(jì)算卸載到基站的MEC 服務(wù)器上執(zhí)行,其中Bn代表計(jì)算任務(wù)所需要的輸入數(shù)據(jù)的大小,包括輸入的元素種類和數(shù)量。 Dn是指為了完成計(jì)算密集型任務(wù)Rn所需要的計(jì)算任務(wù)的個(gè)數(shù),反映了執(zhí)行該計(jì)算任務(wù)所需要的計(jì)算資源的數(shù)量。假設(shè)無論是通過本地CPU 或者是卸載任務(wù)到MEC 服務(wù)器,Dn的值都是一樣的。τn是指該計(jì)算任務(wù)可以容忍的最大的延時(shí),這也將是求解最優(yōu)化解時(shí)的一個(gè)重要的約束條件。所有的這些參數(shù)都是和任務(wù)類型有著緊密的聯(lián)系的,所以在不同種類的任務(wù)中其值可能是不一樣的,并且我們也可以根據(jù)任務(wù)的描述配置信息進(jìn)行估計(jì)這些參數(shù)的值。本文假設(shè)每個(gè)任務(wù)都可以被切割為n 個(gè)獨(dú)立的任務(wù),且每個(gè)任務(wù)都可以在本地執(zhí)行也可以卸載到MEC 服務(wù)器上執(zhí)行,本文定義an∈{ }0,1 作為每個(gè)任務(wù)的執(zhí)行位置,且最終的決策向量為A={a1,a2,…,an};其中,0代表在本地執(zhí)行任務(wù),1代表在MEC服務(wù)器執(zhí)行任務(wù)。
3)計(jì)算模型
(1)本地計(jì)算模型
其中zn是指每個(gè)CPU 執(zhí)行任務(wù)時(shí)的能源消化,一般將其設(shè)定為那么本地計(jì)算總得消耗就是:其中,代表任務(wù)的時(shí)延消耗權(quán)重和能量消耗權(quán)重,且滿足0為了簡便起見,本文假設(shè)在一次計(jì)算卸載過程中,權(quán)重值保持不變。
(2)卸載計(jì)算模型
如果UE 選擇通過卸載來執(zhí)行計(jì)算任務(wù),那么整個(gè)卸載過程可以分為以下三步。
首先,UE 需要無線接入網(wǎng)上傳足夠的數(shù)據(jù)到最近的基站,然后基站將數(shù)據(jù)傳送到MEC 服務(wù)器;MEC 指派部分計(jì)算資源去代替本地CPU 去執(zhí)行這些任務(wù);最后,MEC 服務(wù)器將計(jì)算結(jié)果反饋給UE。根據(jù)上面的步驟,我們分別計(jì)算時(shí)延和能源消耗。
第一步的時(shí)延就是傳輸時(shí)延:

其中,rn代表網(wǎng)絡(luò)信道中的上傳速率。
在本文中,我們將MEC 系統(tǒng)的卸載和資源分配作為一個(gè)優(yōu)化問題,本文的目標(biāo)是將MEC 系統(tǒng)中所有用戶的執(zhí)行延遲和能源消耗相結(jié)合的總成本最小化。在最大可容忍延遲和計(jì)算能力的約束下,問題的表達(dá)式為

上式中,A =[1,2…n]為卸載決策向量,f =[ f1,f2…fn]為計(jì)算資源分配。優(yōu)化問題的目標(biāo)是使整個(gè)系統(tǒng)的總成本最小化。C1 表示每個(gè)UE 選擇通過本地計(jì)算或卸載計(jì)算來執(zhí)行其計(jì)算任務(wù)。C2 表明,無論是通過本地計(jì)算執(zhí)行還是卸載計(jì)算,時(shí)間開銷都不應(yīng)超過最大可容忍延遲。C3 確保為UEn分配的計(jì)算資源不能超過MEC 服務(wù)器的F。C4 保證分配給卸載UEs 的計(jì)算資源總和不能超過MEC服務(wù)器的F。
該問題可以通過求解卸載決策向量A 和計(jì)算資源分配f的最優(yōu)值來求解。但由于該問題為二元變量,可行集和目標(biāo)函數(shù)不是凸的。此外,隨著用戶數(shù)量的增加,該問題的大小可能會(huì)迅速增大,因此該問題是NP 難度問題,本文提出了一種求解最優(yōu)A和f的強(qiáng)化學(xué)習(xí)方法。
在本節(jié)中,首先詳細(xì)定義了DRL 代理的具體狀態(tài)、行為和獎(jiǎng)勵(lì)。然后介紹了經(jīng)典的基于Q-learning 的方法。為了進(jìn)一步避免維數(shù)的限制,本文提出了一種利用DNN 估計(jì)Q-learning 動(dòng)作值函數(shù)的DQN方法。
1)強(qiáng)化學(xué)習(xí)的三個(gè)元素
強(qiáng)化學(xué)習(xí)方法中有三個(gè)關(guān)鍵要素,即狀態(tài)、動(dòng)作、獎(jiǎng)勵(lì),具體到本文的系統(tǒng)模型中。
狀態(tài):系統(tǒng)的狀態(tài)由兩部分組成:s=(tc,ac)。我們將tc 定義為整個(gè)系統(tǒng)的總成本,ac=Call;ac 是MEC 服務(wù)器的可用的計(jì)算能力,并可以計(jì)算為ac=
動(dòng)作:在我們的系統(tǒng)中,動(dòng)作集包含兩個(gè)部分。分別是n 個(gè)UE 的卸載決策,A={α1,…αn}和資源分配方案f={f1,… fn},所以動(dòng)作向量可以將二者組合為{α1,…αn,f1,… fn};
獎(jiǎng)賞:狀態(tài)s 每執(zhí)行一個(gè)可能的動(dòng)作都會(huì)進(jìn)入下一個(gè)狀態(tài),而每個(gè)動(dòng)作都會(huì)獲得一個(gè)獎(jiǎng)賞值R(s,a),一般來說,獎(jiǎng)勵(lì)函數(shù)應(yīng)該與目標(biāo)函數(shù)相關(guān)。因此,我們優(yōu)化問題的目標(biāo)是得到最小的花費(fèi)總和,而RL的目標(biāo)是得到最大的報(bào)酬,因此報(bào)酬的值應(yīng)該與代價(jià)和的大小負(fù)相關(guān),我們將即時(shí)報(bào)酬定義為標(biāo)準(zhǔn)化其中tctocal是所有任務(wù)通過本地計(jì)算的花費(fèi)總和,tc(s,a) 是當(dāng)前狀態(tài)的實(shí)際總成本。
2)Q-learning方法
Q 學(xué)習(xí)是一種記錄Q 值的經(jīng)典的RL 算法。每個(gè)狀態(tài)-動(dòng)作對都有一個(gè)值Q(s,a)。對于每一步,agent 計(jì)算并存儲(chǔ)Q(s,a)在Q 表中,該值可視為長期獎(jiǎng)勵(lì),則Q(s,a)可以表示為

其中s,a 是當(dāng)前的狀態(tài)和動(dòng)作,s',a'是下一個(gè)動(dòng)作和狀態(tài),并且我們定義γ 為加權(quán)因子,其取值為連續(xù)值且滿足0 ≤γ ≤1。值得注意的是,如果值趨于0,這意味著agent 主要考慮的是即時(shí)獎(jiǎng)勵(lì),如果趨于1,這意味著agent 也非常關(guān)注未來的獎(jiǎng)勵(lì)。對于每一步,Q(s,a)的值是迭代更新的。這樣,就可以得到最優(yōu)的A和f算法1,展示了Q 學(xué)習(xí)算法的過程。
算法1 Q-learning方法
初始化Q(s,a)
For 每個(gè)階段:
選擇一個(gè)隨機(jī)狀態(tài)s.
For 每一步do
在所有可能的動(dòng)作中選擇一個(gè)執(zhí)行動(dòng)作a
執(zhí)行選擇的動(dòng)作a,并且觀察獎(jiǎng)勵(lì)s’

使s s’
Until 到達(dá)期望的狀態(tài)sterminal
End for
3)DQN方法
雖然Q-learning 可以通過獲得最大的獎(jiǎng)勵(lì)來解決問題,但并不理想。如果我們使用Q-learning,這意味著對于每個(gè)狀態(tài)操作組,我們需要計(jì)算并將其對應(yīng)的Q值存儲(chǔ)在一個(gè)表中。但在實(shí)際問題中,可能的狀態(tài)可能超過一萬。如果我們把所有的Q值都存儲(chǔ)在Q表中,矩陣Q(s,a)非常大。然后很難得到足夠的樣本遍歷每個(gè)狀態(tài),這會(huì)導(dǎo)致算法失敗。因此,我們使用深度神經(jīng)網(wǎng)絡(luò)來估計(jì)Q(s,a),這是深度Q 網(wǎng)絡(luò)(DQN)的基本思想,而不是為每個(gè)狀態(tài)動(dòng)作對計(jì)算Q 值。算法2 詳細(xì)介紹了DQN 算法。
算法2 具有經(jīng)驗(yàn)延遲的DQL
初始化重放內(nèi)存D的容量N
用隨機(jī)權(quán)重初始化動(dòng)作值函數(shù)Q
初始化序列s1=x1 及預(yù)處理序列?1=?(s1)
For i=1,M do
根據(jù)ε選擇隨機(jī)動(dòng)作 at的概率選出at=maxaQ*(?(st),a;θ)
在模擬器中執(zhí)行動(dòng)作at并且觀察獎(jiǎng)賞值rt和下一狀態(tài)鏡像xt+1
設(shè)置st+1=st, at,xt+1和?1=?(s1)
在內(nèi)存中存儲(chǔ)轉(zhuǎn)換狀態(tài)(?t,at,rt,?t+1)
從D中隨機(jī)抽取少量轉(zhuǎn)換樣本(?j,aj,rj,?j+1)
關(guān) 于 網(wǎng) 絡(luò) 參 數(shù) θ 執(zhí) 行 梯 度 下 降 步 驟
End for
End for
在本節(jié)中,給出了仿真結(jié)果來估計(jì)所提算法的性能。在模擬中,本文假設(shè)一個(gè)場景如下:本文考慮使用帶寬W=10MHz 的單個(gè)小單元,并在中心位置部署一個(gè)帶有MEC服務(wù)器的eNB。UE隨機(jī)分布在距eNB 200m范圍內(nèi)。MEC服務(wù)器的計(jì)算能力為= 5GHz/s,每個(gè)UE 的CPU 頻率為= 1GHz/s。UE 的傳輸功率和空閑功率設(shè)置為Pn= 500mW,=100mW。本文假設(shè)Bn(以KB 為單位)的計(jì)算量的大小服從(300,500)之間的均勻分布,Dn(以M為單位)的CPU周期數(shù)服從(900,1100)之間的均勻分布。同樣為了簡單起見,每個(gè)UE 的決策權(quán)重設(shè)置為
我們將所提出的算法與其他兩種方法在某些參數(shù)上進(jìn)行了比較?!癋ULL local”表示所有UE都通過本地計(jì)算執(zhí)行它們的任務(wù)。“Full offloading”表示所有的UE 都將它們的任務(wù)卸載到MEC 服務(wù)器上,整個(gè)計(jì)算資源F平均分配給每個(gè)UE。
我們首先在圖1 中給出了MEC 系統(tǒng)的總開銷隨著UE 數(shù)量的變化,其中MEC 服務(wù)器的計(jì)算能力為F =5GHz/s,且UE 總數(shù)不斷增加。從整體上看,隨著UE 的不斷增加,四種方法的總成本自然增加。從圖1中可以看出,所提出的DQN方法可以達(dá)到最好的效果,然后Q-learning 也隨之變化,且誤差較小,兩種方法的性能相對穩(wěn)定。在3 個(gè)UE 點(diǎn)上,全卸載曲線略高于DQN 和Q-learning,但UE 越多,全卸載曲線增長得越快。這是因?yàn)楫?dāng)UE 的數(shù)量變多時(shí),MEC 服務(wù)器的容量不足以通過卸載計(jì)算來提供所有的UE。一個(gè)容量有限的MEC 服務(wù)器不應(yīng)該服務(wù)太多的用戶,因此在這種情況下,如何選擇卸載的用戶就顯得尤為重要。

圖1 隨著UE數(shù)量變化總消耗的變化

圖2 系統(tǒng)總耗能隨著MEC性能的變化
圖2 為MEC 系統(tǒng)總成本隨著MEC 服務(wù)器的計(jì)算能力不斷增加的變化情況,其中UEs 的數(shù)量為5。從圖2 中可以看出,所提出的DQN 方法可以達(dá)到最好的效果,Q-learning 與DQN 的差距較小。在圖2中,完全本地計(jì)算曲線并沒有隨著MEC服務(wù)器容量的增加而變化,這是因?yàn)楸镜赜?jì)算沒有使用MEC 服務(wù)器的計(jì)算資源。其他曲線隨著MEC 服務(wù)器計(jì)算能力的增加而減小,因?yàn)槿绻總€(gè)UE 分配更多的計(jì)算資源,執(zhí)行時(shí)間就會(huì)縮短。此外,當(dāng)F >8GHz/s時(shí),全卸載、Q-learning和DQN的總代價(jià)下降較慢,且這些卸載方法的性能基本相同。計(jì)算結(jié)果表明,當(dāng)MEC 服務(wù)器上的計(jì)算資源比本地計(jì)算資源多得多時(shí),MEC 系統(tǒng)的總成本主要受無線資源等因素的制約。
本文提出了一種基于深度強(qiáng)化學(xué)習(xí)的方法來完成移動(dòng)邊緣卸載,可以有效地完成UE 的中計(jì)算密集型任務(wù);MEC 機(jī)制的完善對于5G 網(wǎng)絡(luò)的構(gòu)建也是有很好的促進(jìn)作用。通過仿真實(shí)驗(yàn)結(jié)果表明,引入深度強(qiáng)化學(xué)習(xí)對于移動(dòng)邊緣卸載技術(shù)有很好的完善作用。