詹 御,張郭健,彭麟杰,文 軍
(電子科技大學(xué) 信息與軟件工程學(xué)院,四川 成都 610054)
智能手機、平板電腦、可穿戴設(shè)備等個人智能設(shè)備和物聯(lián)網(wǎng)設(shè)備的日新月異正在推動新服務(wù)、應(yīng)用的出現(xiàn),如虛擬現(xiàn)實(virtual reality,VR)、增強現(xiàn)實(augmented reality,AR)、人臉識別和移動醫(yī)療等,這些服務(wù)和應(yīng)用都具有較高的計算要求。盡管現(xiàn)今的智能設(shè)備擁有更多的計算能力,但它們?nèi)匀粺o法有效地運行計算密集型的應(yīng)用程序或提供穩(wěn)定有效的服務(wù)。為了應(yīng)對這一挑戰(zhàn),多接入邊緣計算(multi-access edge computing,MEC)[1]被提出來,它將計算和存儲資源從遠(yuǎn)程云中分出,部署在更靠近設(shè)備的一端。因此,設(shè)備的計算密集型應(yīng)用任務(wù)可以被卸載到臨近的MEC服務(wù)節(jié)點上,以實現(xiàn)高質(zhì)量的服務(wù)(quality-of-service,QoS)。物聯(lián)網(wǎng)設(shè)備主要通過接入點(access point,AP。例如Wi-Fi連接)請求MEC服務(wù),如圖1所示。AP關(guān)聯(lián)到一個或多個MEC服務(wù)器,多個用戶設(shè)備(user m)接入并請求MEC服務(wù)。在物聯(lián)網(wǎng)中,智能設(shè)備主要用于數(shù)據(jù)采集和提供簡單的服務(wù),其計算資源有限,需要MEC提供算力支持以達(dá)到較好的QoS。但大量的設(shè)備接入會導(dǎo)致接入點的競爭沖突,尤其是在公共場所、人群聚集和大量部署物聯(lián)網(wǎng)設(shè)備的地方,智能設(shè)備在請求MEC服務(wù)時必須要和該AP連接的其他設(shè)備競爭連接服務(wù)[2],即競爭網(wǎng)絡(luò)資源把任務(wù)卸載到MEC服務(wù)器獲取計算服務(wù)。
圖1 MEC卸載網(wǎng)絡(luò)
MEC網(wǎng)絡(luò)的接入主要是無線網(wǎng)絡(luò)的方式,例如Wi-Fi。針對Wi-Fi的無線訪問接入?yún)f(xié)議,IEEE在2020年發(fā)布的802.11ax協(xié)議相比于之前的802.11協(xié)議較好地提高了Wi-Fi網(wǎng)絡(luò)效率[3]。然而,802.11ax為了確保向后兼容,基本的網(wǎng)絡(luò)接入傳輸數(shù)據(jù)方法保持不變[4]。這種無線網(wǎng)絡(luò)接入方法被稱為載波感應(yīng)多路接入與避免碰撞(CSMA/CA)算法:每個待接入設(shè)備隨機“退后(backs-off)”,即在接入網(wǎng)絡(luò)前等待一定數(shù)量的時隙(back-off slots)。這個時隙被稱為競爭窗口(contention window,CW)。為了減少多個設(shè)備相同的隨機退避的概率,IEEE 802.11退避算法規(guī)定每次傳輸超時(碰撞)后CW會翻倍,并定義了CW的最小值和最大值。盡管這種默認(rèn)的方法需要很少的計算,但是會導(dǎo)致低效的網(wǎng)絡(luò)接入,特別是在有密集接入設(shè)備的MEC網(wǎng)絡(luò)中,無法高效、穩(wěn)健地應(yīng)對網(wǎng)絡(luò)的快速變化[5]。
CW的選取大小對網(wǎng)絡(luò)性能有直接的影響,因此CW優(yōu)化一直是網(wǎng)絡(luò)優(yōu)化研究分析的主題。常規(guī)的優(yōu)化方法包括使用控制理論[6]和監(jiān)測活躍用戶的數(shù)量[7]。隨著具有高計算能力的網(wǎng)絡(luò)設(shè)備的普及,現(xiàn)在可以使用機器學(xué)習(xí)(machine learning,ML)方法來分析優(yōu)化CW[8-10]。但ML方法的選擇受到網(wǎng)絡(luò)優(yōu)化問題本身性質(zhì)的很大限制。如分析模型[11],可以提供最佳的CW值,但只在某些假設(shè)和準(zhǔn)靜態(tài)設(shè)置下,所以無法依賴它們來訓(xùn)練模型。無導(dǎo)數(shù)優(yōu)化算法是較合適的選擇,強化學(xué)習(xí)(reinforcement learning,RL)就是無倒數(shù)優(yōu)化算法,是較為適合用來改善無線網(wǎng)絡(luò)性能的ML方法[12]。因為RL涉及到智能軟件代理(網(wǎng)絡(luò)節(jié)點,AP)在環(huán)境(MEC卸載網(wǎng)絡(luò))中采取行動(設(shè)置CW值),以最大化獎勵(網(wǎng)絡(luò)吞吐量)。RL的無導(dǎo)數(shù)、無模型的特性,比傳統(tǒng)的、基于模型的優(yōu)化方法有更好的泛化能力。近年來,已經(jīng)有在計算機無線網(wǎng)絡(luò)中使用強化學(xué)習(xí)的研究:文獻(xiàn)[8,13]將RL應(yīng)用于無線局域網(wǎng)的干擾對策;文獻(xiàn)[14]提出基于RL的通用適應(yīng)性介質(zhì)訪問控制(MAC)算法;用于水聲傳感器網(wǎng)絡(luò)的MAC方法[15]、無線網(wǎng)絡(luò)資源調(diào)度算法[16]以及用于調(diào)整可重新配置無線天線的方法[17]都使用了強化學(xué)習(xí)。文獻(xiàn)[18]也使用了RL用于網(wǎng)絡(luò)傳輸優(yōu)化。但他們大部分使用的是Q-learning,是表格型的RL求解方法,這不適合應(yīng)用在具有密集連接、網(wǎng)絡(luò)拓?fù)鋭討B(tài)變化的MEC卸載網(wǎng)絡(luò)環(huán)境中。因為Q-learning存在維數(shù)災(zāi)難——查找和存儲都需要消耗大量的時間和空間。文獻(xiàn)[19]指出,通過使用深度人工神經(jīng)網(wǎng)絡(luò)(deep neural networks,DNN)構(gòu)建深度強化學(xué)習(xí)(DRL),可以進(jìn)一步提高RL的性能,使其具有更優(yōu)越的可擴展性。
因此,該文提出將DRL改進(jìn)并應(yīng)用于優(yōu)化物聯(lián)網(wǎng)的MEC卸載網(wǎng)絡(luò)中,通過合理預(yù)測、設(shè)置CW值來優(yōu)化提高M(jìn)EC卸載網(wǎng)絡(luò)的吞吐量。改進(jìn)兩種DRL方法,深度Q網(wǎng)絡(luò)(deep q-network,DQN)[19]和深度確定性策略梯度[20](deep deterministic policy gradient,DDPG),使其應(yīng)用在Wi-Fi作為MEC的AP的環(huán)境中。仿真實驗表明這兩種方法都提升了MEC卸載網(wǎng)絡(luò)的性能,特別是在密集設(shè)備接入的動態(tài)場景中,且沒有破壞網(wǎng)絡(luò)的公平性。
本節(jié)研究了強化學(xué)習(xí)、深度強化學(xué)習(xí)理論方法;然后基于WiFi物聯(lián)網(wǎng)的MEC卸載網(wǎng)絡(luò)模型,建立出深度強化學(xué)習(xí)優(yōu)化CW算法。
RL源自于馬爾可夫決策過程(Markov decision process,MDP),RL的基本理論是:使用一個可以自我學(xué)習(xí)的代理agent來替代模型分析的方式去尋找最優(yōu)解。agent能夠通過相應(yīng)的行動action與環(huán)境environment互動(采樣state,如圖2),每一步行動都會使agent更接近(或更遠(yuǎn)離)其目標(biāo)(獎勵,reward)。通過訓(xùn)練,代理增強了其決策策略(執(zhí)行什么action),直到代理學(xué)會(獲得獎勵)了在環(huán)境的每個狀態(tài)下的最佳決策(動作順序)。在DRL中,代理的決策是由一個DNN訓(xùn)練得到的。該文考慮了兩種不同行動空間的DRL方法:DQN的離散動作策略和DDPG的連續(xù)動作策略。DQN試圖預(yù)測每個動作的預(yù)期獎勵,即是基于價值(獎勵,reward)的方法。與基本的RL相比,DQN附加了深度神經(jīng)網(wǎng)絡(luò),可以更有效地推斷出尚未觀察到的狀態(tài)的獎勵。與DQN不同,DDPG是基于策略(動作,action)的方法,它試圖直接學(xué)習(xí)最優(yōu)策略,可以產(chǎn)生連續(xù)的動作輸出。DDPG包括兩個神經(jīng)網(wǎng)絡(luò):一個行動者(actor)網(wǎng)絡(luò)和一個評判者(critic)網(wǎng)絡(luò)。行動者根據(jù)環(huán)境狀態(tài)做出決定動作,而評判者是一個類似DQN的神經(jīng)網(wǎng)絡(luò),試圖學(xué)習(xí)行動者行動的預(yù)期獎勵收益。
圖2 強化學(xué)習(xí)模型
為了將DRL應(yīng)用于MEC計算卸載網(wǎng)絡(luò),該文做了一個映射,一個代理(部署在AP上)、環(huán)境狀態(tài)(網(wǎng)絡(luò)環(huán)境)、可用的行動(設(shè)置相應(yīng)的CW值)和收到的獎勵(網(wǎng)絡(luò)吞吐量)。AP上的代理是觀察網(wǎng)絡(luò)的狀態(tài),設(shè)置CW值(動作),以使網(wǎng)絡(luò)性能(獎勵)最大化。
作為MDP的改進(jìn)版,RL是在不知道可觀察到的狀態(tài)以及不知道每個狀態(tài)的轉(zhuǎn)移概率時解決MDP問題的方法。實際上,RL是一個部分可觀察的馬爾可夫決策過程(partially observable Markov decision process,POMDP),它假定不可以完全觀察到環(huán)境的所有狀態(tài),從部分狀態(tài)和歷史經(jīng)驗中推測新狀態(tài)和預(yù)期的獎勵。POMDP表示為(S,A,T,R,Ω,O,λ):
S:狀態(tài)(state)集合;
A:動作(action)集合;
T:狀態(tài)之間轉(zhuǎn)換的概率集合;
R:獎勵函數(shù),R=f(S,A);
Ω:觀測結(jié)果集合;
O:觀測概率集合;
λ:折扣系數(shù)。
因為AP能觀察到網(wǎng)絡(luò)的全部接入,并可以通過信標(biāo)數(shù)據(jù)幀(beacon frames)以集中的方式控制接入的設(shè)備,還具有處理DRL優(yōu)化的計算要求,所以把代理agent部署在接入點AP上。此外,AP能夠與其他AP交換信息,可以成為基于軟件定義網(wǎng)絡(luò)(SDN)的多代理MEC架構(gòu)的一部分[5]。
環(huán)境狀態(tài)s∈S是當(dāng)前連接到網(wǎng)絡(luò)的所有設(shè)備的確切狀態(tài)。由于網(wǎng)絡(luò)的接入設(shè)備是動態(tài)變化的,不可能收集到確切的信息。因此,該問題被表述為POMDP而不是MDP。
代理的行動a∈A直接對應(yīng)于設(shè)置新的CW值。在基于Wi-Fi AP的MEC中,CW有默認(rèn)的最大值和最小值(CWmin=25-1=31,CWmax=210-1=1 023)[21],在最大值和最小值的區(qū)間,如果設(shè)置一個較小的CW值,當(dāng)許多設(shè)備試圖在同一時間傳輸數(shù)據(jù),很有可能其中一些設(shè)備有相同的退避間隔。這意味著將不斷出現(xiàn)碰撞,對網(wǎng)絡(luò)性能產(chǎn)生嚴(yán)重影響。另一方面,如果設(shè)置較大的CW,當(dāng)很少有設(shè)備傳輸數(shù)據(jù)時,它們可能會有很長的退避延遲,導(dǎo)致網(wǎng)絡(luò)性能下降。該文提出的兩方法的動作策略分別為離散的和連續(xù)的。離散的動作會輸出正整數(shù)a∈{0,1,2,3,4,5},即agent根據(jù)環(huán)境狀態(tài)在0到5取一個整數(shù);連續(xù)的動作會輸出一個0到5之間的實數(shù)a∈[0,5]。動作的輸出a值將被用來更新網(wǎng)絡(luò)的CW值,根據(jù)以下公式:
CW=?25+a」-1
(1)
即可能的動作集合A=[0,5],每個動作執(zhí)行后會更新網(wǎng)絡(luò)的CW值,并伴隨著網(wǎng)絡(luò)環(huán)境狀態(tài)s∈S的改變,產(chǎn)生新的環(huán)境s'∈S,環(huán)境s→s'會有一個概率轉(zhuǎn)移T(s'|s,a)。
該文對于獎勵r∈R,設(shè)置為與網(wǎng)絡(luò)性能——網(wǎng)絡(luò)吞吐量(network throughput,NT,每秒成功傳輸?shù)谋忍財?shù)bits/s),相關(guān)的變量。因為在部署了agent的AP上,可以較為容易、及時地獲取到當(dāng)前時間的網(wǎng)絡(luò)吞吐量。其次,對于標(biāo)準(zhǔn)的DRL的獎勵是在0到1之間的一個實數(shù),因此對獎勵r做歸一化處理,用觀察到的每秒比特數(shù)除以預(yù)期的最大吞吐量:
(2)
每次觀察環(huán)境狀態(tài)為ω∈Ω,它表示為agent根據(jù)觀察信息所得的網(wǎng)絡(luò)當(dāng)前最大可能的狀態(tài)。對每個觀察到的環(huán)境有一個觀測概率o∈O,表示在網(wǎng)絡(luò)中觀察到的當(dāng)前碰撞概率pcollision(傳輸失效概率),該概率根據(jù)傳輸?shù)臄?shù)據(jù)幀的數(shù)量Nt和正確接收的數(shù)據(jù)幀的數(shù)量Nr來計算:
(3)
pcollision的值直接反映了動作action選取的CW值的優(yōu)劣性。一般的,AP上的agent不能直接獲取,但是AP作為總的接入點,作為發(fā)送方或接收方參與了所有數(shù)據(jù)幀的傳輸,通過數(shù)據(jù)幀的數(shù)據(jù)位綁定Nt,AP能夠獲取到設(shè)備的Nt,對于Nr可以直接在AP端統(tǒng)計得到。
對于該文的兩種DRL(DQN和DDPG)的理論推導(dǎo)和性質(zhì),就不做展開,讀者可以參考文獻(xiàn)[20-21]來輔助理解兩種DRL的性質(zhì)和異同。使用Wi-Fi作為AP,默認(rèn)的CW設(shè)置按照標(biāo)準(zhǔn)的802.11協(xié)議規(guī)則,即指數(shù)退避算法(exponential back-off algorithm,EBA)[21],在[0-CW]中選擇隨機退避時隙,當(dāng)沖突發(fā)生時,CW在限制大小內(nèi)以2的指數(shù)遞增(CW∈[CWmin,CWmax]) 。參考標(biāo)準(zhǔn)EBA,該文改進(jìn)兩個DRL方法——DQN和DDPG,用于優(yōu)化MEC計算卸載網(wǎng)絡(luò)。通過DRL優(yōu)化網(wǎng)絡(luò)的CW值,最大化全局網(wǎng)絡(luò)吞吐量為獎勵——優(yōu)化目標(biāo),以提升網(wǎng)絡(luò)的效率。如圖3所示,agent部署在AP上,獲取網(wǎng)絡(luò)環(huán)境狀態(tài),設(shè)置相應(yīng)的CW值來獲取最大化全局網(wǎng)絡(luò)吞吐量。
圖3 DRL優(yōu)化MEC卸載網(wǎng)絡(luò)模型。
agent分別基于DQN和DDPG,它們的區(qū)別在于:DDPG實質(zhì)上是DQN的一種在連續(xù)動作上的擴展算法,DDPG在DQN的基礎(chǔ)上多了一些決策(policy)系列的操作。因此對于DQN和DDPG,該文設(shè)計了同樣的CW優(yōu)化算法:
DRL-CW優(yōu)化算法:
1.初始化觀測Bobs,長度為h
2.獲取agent的動作函數(shù)參數(shù)θ
3.獲取agent的動作函數(shù)Aθ
4.定義變量收、發(fā)幀數(shù)Nr,Nt
5.設(shè)置交互時間周期Δt
6.獲取訓(xùn)練標(biāo)志位isTrain
7.設(shè)置重放緩存B
8.最新更新時間設(shè)置為當(dāng)前時間:
lastupdate←currenttime
9.初始化CW←31
10.初始化狀態(tài)向量s
11.fort=1,2,…,∞ do:
12.獲取Nt,Nr
13.把Nt,Nr放入Bobs中
14.if (lastupdate+Δt)≤currenttime:
15.obs←getObs(Bobs)#生成觀察值
16.a←Aθ(obs)#生成執(zhí)行動作值
17.CW←(?25+a」-1)#更新CW
18.if isTrain :
19.NT←(Nr/Δt)#計算有效網(wǎng)絡(luò)吞吐量
20.r←normailization(NT)#獎勵
21.把(obs,a,r,s)放入B中
22.s←obs
23.b←從B中小批量取樣
24.用b訓(xùn)練優(yōu)化Aθ的參數(shù)θ
getObs()根據(jù)當(dāng)前網(wǎng)絡(luò)的收發(fā)狀態(tài)生成相應(yīng)的狀態(tài)值。
normailization()的功能是歸一化獎勵值,參考公式(2)。
模塊getObs()用于計算最近觀察到的碰撞概率H(pcollision)歷史的平均值和標(biāo)準(zhǔn)偏差,由一個固定大小(h/2)和步長(h/4)滑動窗口決定?;瑒哟翱诘牟蓸訉obs數(shù)據(jù)從一維變?yōu)槎S(滑動窗口的每一步產(chǎn)生兩個數(shù)據(jù)點)。這樣產(chǎn)生的數(shù)據(jù)可以被看作是一個時間序列(窗口的每一步對應(yīng)一組數(shù)據(jù),每組數(shù)據(jù)具有前后的時間順序,且狀態(tài)的觀測值也在不斷更新),意味著可以用循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)分析它。因為,與使用全連接神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練分析優(yōu)化相比,RNN的設(shè)計[22]可以更深入地學(xué)習(xí)到agent的行為與網(wǎng)絡(luò)性能之間的直接和間接關(guān)系。
實驗是基于ns3-gym[23]網(wǎng)絡(luò)仿真平臺實現(xiàn)的,ns3-gym融合了強化學(xué)習(xí)RL的開發(fā)分析工具OpenAI Gym。另外,基于ns3-gym,使用Python開發(fā)實現(xiàn)了DQN和DDPG的神經(jīng)網(wǎng)絡(luò)。實驗在Ubuntu 18.04.5 LTS下進(jìn)行,軟件版本:Python (3.6.5);TensorFlow (1.14.0);Torch (0.4.1)。
在ns3-gym網(wǎng)絡(luò)仿真平臺,搭建如圖3所示的MEC計算卸載網(wǎng)絡(luò)模型,其相關(guān)參數(shù)如下:Radio Channels:error-free, 20 MHz;Protocol:IEEE 802.11ax;Modulation:1024-QAM;Coding Rate:5/6;Transmissions:single-user;Frame-Aggregation:Disabled;Transport Layer:UDP, 1500 byte packets。
為了方便DRL的訓(xùn)練和應(yīng)用,做了如下的實驗條件假設(shè):(1)連接到AP的設(shè)備能完整、快速地把自身網(wǎng)絡(luò)狀態(tài)信息傳遞給AP,即AP可以立即得到Nt,Nr;(2)agent可以立即更新設(shè)置各個連接設(shè)備的CW值。這樣的假設(shè)是合理的,因為基于Wi-Fi作為AP的MEC計算卸載網(wǎng)絡(luò)類似小范圍的局域網(wǎng),傳輸延遲可以忽略不計。如果考慮了傳輸延遲,會導(dǎo)致DRL的學(xué)習(xí)周期較長,收斂較慢。因此,在該實驗中,不考慮延遲的因素,但這不影響實際的應(yīng)用??偟膩碚f就是忽略延遲影響,但這樣的假設(shè)不會導(dǎo)致在實際的網(wǎng)絡(luò)中的應(yīng)用與實驗偏差較大。
該文優(yōu)化應(yīng)用DQN和DDPG與MEC計算卸載網(wǎng)絡(luò)主要分為三個階段:(1)預(yù)訓(xùn)練學(xué)習(xí);(2)訓(xùn)練學(xué)習(xí);(3)應(yīng)用階段。預(yù)學(xué)習(xí)階段先使用標(biāo)準(zhǔn)的EBA,讓整個MEC網(wǎng)絡(luò)環(huán)境運行起來,作為DRL訓(xùn)練前的熱身階段;訓(xùn)練學(xué)習(xí)階段,DQN和DDPG分別利用提出的CW優(yōu)化算法來優(yōu)化CW的設(shè)置;在訓(xùn)練完成后是應(yīng)用階段,即將訓(xùn)練好的agent部署到MEC網(wǎng)絡(luò)中替代標(biāo)準(zhǔn)的EBA算法。
為了讓DQN和DDPG訓(xùn)練穩(wěn)定,學(xué)習(xí)到有效的參數(shù),該文對這兩種方法的參數(shù)更新均采用局部(local)和目標(biāo)(target)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練學(xué)習(xí)方法。action的參數(shù)學(xué)習(xí)用兩個神經(jīng)網(wǎng)絡(luò)同時學(xué)習(xí)的辦法,但CW優(yōu)化算法使用在目標(biāo)神經(jīng)網(wǎng)絡(luò)的結(jié)果,目標(biāo)神經(jīng)網(wǎng)絡(luò)定期獲取局部神經(jīng)網(wǎng)絡(luò)的參數(shù)wlocal來更新自己的網(wǎng)絡(luò)參數(shù)wtarget:
wtarget=τ×wlocal+(1-τ)×wtarget
(4)
通過這樣的訓(xùn)練方式,在一個時間段內(nèi)固定目標(biāo)網(wǎng)絡(luò)中的參數(shù),定期按公式(4)來更新參數(shù),達(dá)到穩(wěn)定學(xué)習(xí)目標(biāo)的效果,τ是軟更新系數(shù),確保目標(biāo)網(wǎng)絡(luò)參數(shù)的穩(wěn)定更新。
對于DQN和DDPG方法的訓(xùn)練參數(shù),設(shè)置的參數(shù)如表1所示。
這些超參數(shù)設(shè)定是根據(jù)多次實驗,采用隨機網(wǎng)格搜索和貝葉斯優(yōu)化得出的訓(xùn)練、測試效果較好的參數(shù),具備一定的參考價值。兩種算法的神經(jīng)網(wǎng)絡(luò)使用相同的結(jié)構(gòu):一個循環(huán)的長短期記憶層(long short-term memory,LSTM),然后是兩個密集層,形成8×128×64的網(wǎng)絡(luò)結(jié)構(gòu)用于action的生成,即a=Aθ(st|θμ),在t時刻狀態(tài)st決定了action的值a;μ是上述的網(wǎng)絡(luò)(確定性策略網(wǎng)絡(luò)),θμ是它的參數(shù),用于生成在st下的action。
表1 DRL訓(xùn)練參數(shù)設(shè)置
使用LTM這類RNN可以讓agent把之前的觀察訓(xùn)練經(jīng)驗考慮進(jìn)去。在agent的動作和網(wǎng)絡(luò)仿真中都加入了隨機性。每個實驗進(jìn)行15輪(epoch),前14輪為訓(xùn)練學(xué)習(xí)階段,最后一輪為應(yīng)用測試階段,每輪60秒(60/0.01=6 000個episodes)。每個agent與環(huán)境交互周期為0.01 s(即10 ms),在交互周期之間執(zhí)行CW優(yōu)化算法。
為了讓agent盡可能的探索(exploration),在執(zhí)行每個action前都會加入一個噪聲因子(noise factor),該噪聲因子在學(xué)習(xí)階段中逐漸衰減。對于DQN,噪聲是指用隨機的action替代agent行為的概率。對于DDPG,噪聲從高斯分布采樣并加入到代理的決策中。這樣做的目的是為了緩解DRL的本身的exploration-exploitation的問題——尋找新經(jīng)驗(exploration)和通過已知策略獲得最大化獎勵(exploitation)是矛盾的,不能兼得。具體實現(xiàn)如下:
噪聲幫助DRL進(jìn)行explorationDQN:A'θ(st)=random(Aθ(st|θμ),random(A))DDPG:A'θ(st)=Aθ(st|θμ)+noise#A'θ(st)是由確定性策略(DPG)加噪音得到的
在DQN執(zhí)行動作a之前,加入一個隨機噪音,即有較小的概率選擇從動作庫A中隨機選擇一個動作來執(zhí)行,保證了算法的exploration。在DDPG中也是類似的,不過因為DDPG是連續(xù)動作,不適合隨機選取,就在其后加上一個較小的noise來實現(xiàn)。同樣保證了agent的exploration性,以適應(yīng)新的環(huán)境狀態(tài)。
該文使用802.11默認(rèn)的退避算法作為實驗基線對照:標(biāo)準(zhǔn)的EBA。實驗的MEC卸載網(wǎng)絡(luò)拓?fù)洵h(huán)境分兩種,固定設(shè)備數(shù)量的(靜態(tài)網(wǎng)絡(luò)拓?fù)?和設(shè)備數(shù)量動態(tài)變化的(動態(tài)網(wǎng)絡(luò)拓?fù)?。接入設(shè)備數(shù)量為5到50個。上一節(jié)中,之所以設(shè)置15個epoch的訓(xùn)練周期是實驗分析得到的,參考圖4:
圖4 DRL訓(xùn)練獎勵變化
圖4中CR為cumulative-reward(最大化累積獎勵),PER為per-episode-reward(是每個episode中的步進(jìn)獎勵)。NX的意思是多少個設(shè)備(N15即15個設(shè)備接入)。圖中展示了DQN和DDPG在15、30個設(shè)備接入的靜態(tài)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)下,經(jīng)過12個epoch左右的訓(xùn)練便可獲得基本趨于穩(wěn)定的獎勵,即在12個epoch的訓(xùn)練學(xué)習(xí)后可以使模型收斂。后續(xù)實驗統(tǒng)一使用15個epoch的實驗周期,即保障在12個以上使模型收斂,且無需更多的epoch。
在靜態(tài)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中,整個實驗過程中都有固定數(shù)量的站點連接到AP。從理論上講,恒定的某個CW值是可以達(dá)到最佳的網(wǎng)絡(luò)性能[5]。靜態(tài)場景的實驗是為了測試DRL算法經(jīng)過訓(xùn)練學(xué)習(xí)是否能夠?qū)崿F(xiàn)最佳的CW設(shè)定,以及與標(biāo)準(zhǔn)802.11的EBA基線相比有什么差異。圖5(a)是在不同數(shù)量{5,15,30,50}連接設(shè)備下多次實驗的統(tǒng)計平均結(jié)果,置信區(qū)間為95%。
圖5 靜態(tài)(a)和動態(tài)(b)網(wǎng)絡(luò)拓?fù)渲懈?方法網(wǎng)絡(luò)性能的對比
從圖中的結(jié)果可見,標(biāo)準(zhǔn)的EBA的性能在較多的設(shè)備接入MEC計算卸載網(wǎng)絡(luò)時,網(wǎng)絡(luò)的整體性能有明顯的下降,但DDPG和DQN可以在靜態(tài)網(wǎng)絡(luò)條件下優(yōu)化CW值以應(yīng)對網(wǎng)絡(luò)拓?fù)涞淖兓Ec標(biāo)準(zhǔn)的EBA相比,在較少的設(shè)備連接時(5個),DRL能提升約6%的性能;在較多設(shè)備連接時(50個),約有46%的提升。
在動態(tài)網(wǎng)絡(luò)拓?fù)涞沫h(huán)境下,每次實驗過程中,接入設(shè)備的數(shù)量從5個以每次5個的速度遞增,這樣做的目的是為了增加MEC計算卸載網(wǎng)絡(luò)中的碰撞率,測試算法是否能夠?qū)W(wǎng)絡(luò)變化,做出合適的反應(yīng)來穩(wěn)定網(wǎng)絡(luò)性能。
在圖6(a)中,左邊的縱坐標(biāo)展示的是網(wǎng)絡(luò)性能,右邊的縱坐標(biāo)展示的是接入設(shè)備的數(shù)量,橫坐標(biāo)是實驗時間。接入設(shè)備數(shù)量從5增加到50,各個方法的性能變化如圖中各線所示,各方法對CW的設(shè)定效果反映在網(wǎng)絡(luò)的瞬時吞吐量上;兩種DRL方法與EBA對比可見,有較好的穩(wěn)定性,在設(shè)備數(shù)量增加到50時,DQN和DDPG都可以保持網(wǎng)絡(luò)性能的穩(wěn)定,網(wǎng)絡(luò)吞吐量沒有明顯的下降。再參考動態(tài)網(wǎng)絡(luò)拓?fù)涞亩啻螌嶒灳到Y(jié)果圖5(b)(類似于圖5(a)),可見DRL優(yōu)化CW值的方法可以較好地優(yōu)化MEC卸載網(wǎng)絡(luò)多接入情景下的網(wǎng)絡(luò)性能,且具有優(yōu)于標(biāo)準(zhǔn)EBA方法的效果(50個接入設(shè)備時DRL約有36%的相對提升)。
圖6 動態(tài)網(wǎng)絡(luò)拓?fù)渲懈鞣椒ǖ乃矔r 性能對比(a)與CW設(shè)置(b)
對于DRL如何設(shè)置相應(yīng)的CW,該文給出動態(tài)網(wǎng)絡(luò)拓?fù)渲幸粋€接入設(shè)備的CW值變化情況,如圖6(b)所示。不同的DRL方法所展現(xiàn)的CW不一樣,因為DQN是離散動作類型的RL方法,而DDPG是連續(xù)動作型的,其本質(zhì)原理可參考公式(1)及其說明。DDPG的連續(xù)動作機制可以比DQN優(yōu)化的CW值更快速變化,可以更好地適應(yīng)網(wǎng)絡(luò)的動態(tài)變化;標(biāo)準(zhǔn)的指數(shù)退避EBA作為參考,但其被DQN的畫線所覆蓋。
因為設(shè)備都是相互競爭地接入AP請求MEC計算卸載服務(wù),針對CW值的優(yōu)化算法是否會導(dǎo)致接入設(shè)備的不公平競爭也是需要考慮的問題。該文使用Jain’s fairness index[24]來評價網(wǎng)絡(luò)的公平性,計算公式如下(0 (5) 其中,Ti為第i個設(shè)備的平均網(wǎng)絡(luò)吞吐量,n為設(shè)備的總個數(shù)。 實驗計算結(jié)果如圖7所示。 從圖7的實驗結(jié)果來看,DRL方法并沒有讓網(wǎng)絡(luò)失去公平性,幾乎與標(biāo)準(zhǔn)的BEA保持一致。 圖7 動態(tài)網(wǎng)絡(luò)拓?fù)湎赂鞣椒ǖ墓叫?/p> 該文提出兩種DRL:DQN和DDPG方法,用于解決IoT的MEC卸載網(wǎng)絡(luò)場景下面對大量接入設(shè)備時使用標(biāo)準(zhǔn)EBA導(dǎo)致網(wǎng)絡(luò)性能下降的問題。提出針對Wi-Fi作為MEC卸載網(wǎng)絡(luò)AP的CW值優(yōu)化算法,應(yīng)用DRL方法訓(xùn)練CW優(yōu)化算法后在不同網(wǎng)絡(luò)拓?fù)湎驴梢杂行У卦O(shè)置合理的CW值以穩(wěn)定網(wǎng)絡(luò)的吞吐量。實驗結(jié)果表明,DRL可以解決CW優(yōu)化問題:即使在快速變化的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)下,兩種算法都具有穩(wěn)定網(wǎng)絡(luò)性能的能力,DDPG連續(xù)動作的方法略優(yōu)于離散動作的DQN。最后,實驗在靜態(tài)和動態(tài)網(wǎng)絡(luò)拓?fù)洵h(huán)境下的結(jié)果都表明了DRL方法優(yōu)于默認(rèn)的退避算法,且沒有破壞網(wǎng)絡(luò)的公平性。4 結(jié)束語