• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      A-DDPG:多用戶邊緣計算系統(tǒng)的卸載研究

      2023-01-13 11:59:04曹紹華姜佳佳詹子俊張衛(wèi)山
      計算機工程與應用 2023年1期
      關鍵詞:移動用戶計算資源總成本

      曹紹華,姜佳佳,陳 舒,詹子俊,張衛(wèi)山

      中國石油大學(華東)計算機科學與技術學院,山東 青島 266580

      近年來,物聯(lián)網(wǎng)(IoT)得到了快速發(fā)展,移動設備的應用也日漸復雜,需要更強的計算能力來執(zhí)行任務,從而保證體驗質(zhì)量(QoE)和服務質(zhì)量(QoS)。但是,移動設備的計算能力和電池容量是有一定限度的,如何解決資源有限的問題成為了一個重要的挑戰(zhàn),而移動邊緣計算(mobile edge computing,MEC)為解決這個問題提供了有效途徑[1],它通過將計算任務卸載到邊緣服務器上執(zhí)行,從而降低移動設備的任務執(zhí)行時間和能耗的總成本。但由于硬件成本等約束導致MEC服務器計算資源有限的問題日益突出,因此如何設計比較合理的卸載策略是一項重要的挑戰(zhàn)。

      計算卸載的策略有很多種[2],然而,絕大多數(shù)計算卸載算法都認為用戶設備(UE)是靜止的[3]。但是,在實際應用場景中,UE通常處于移動狀態(tài),邊緣服務器和UE之間的距離隨著時間的變化而動態(tài)改變,這意味著UE需要動態(tài)決定是否進行卸載以及卸載到哪個邊緣服務器能夠在UE移動時最大化任務完成數(shù)量,同時最小化UE的總成本。

      目前大多數(shù)卸載算法都假設UE擁有相同的性能,而UE在實際應用場景中不完全相同[4]。當任務維度過高時,卸載決策的二元屬性導致直接枚舉所有的卸載決策方案在計算復雜度上是指數(shù)級的。由于強化學習(RL)主要用于解決決策問題,所以目前大多數(shù)文章在MEC網(wǎng)絡環(huán)境下針對離散動作空間[5]并且利用深度Q網(wǎng)絡(DQN)來解決計算卸載問題[6-7]。然而,DQN的表格搜索屬性不適合處理高維空間。因此,本文設計了一種基于DDPG的計算卸載算法,該算法可以有效地支持由于UE移動性而產(chǎn)生的計算卸載連續(xù)動作空間,以及任務遷移(由于MEC服務器的資源有限性)。

      1 相關工作

      近幾年來,國內(nèi)外學者對多用戶MEC系統(tǒng)中的計算卸載進行了深入研究。文獻[8]提出了一種基于博弈論的分布式任務卸載方案,在降低能耗的同時使用戶之間的博弈達到納什均衡狀態(tài)。文獻[9]分別通過動態(tài)改變電壓頻率縮放和數(shù)據(jù)傳輸速率來最小化單用戶MEC系統(tǒng)的能耗。文獻[3]提出了一種單用戶MEC系統(tǒng)的延遲優(yōu)化任務調(diào)度算法。文獻[5]提出了一種基于交替最小化的低復雜度次優(yōu)算法,借助流水車間調(diào)度理論,得到最優(yōu)的任務卸載調(diào)度(即確定卸載順序),以最小化延遲和能耗的加權和。

      但上述文獻都只考慮能耗或延遲一個指標,單用戶或單MEC服務器系統(tǒng),對此做出了一定改進,通過聯(lián)合優(yōu)化移動用戶的資源分配決策和CPU頻率,提出了一種多服務器多用戶MEC系統(tǒng)的分布式算法,將任務卸載和資源分配結合在一起,為延遲和能耗設置權重值,使移動用戶的總成本最小化。上述文獻中的算法采用的假設還存在一些局限性。由于小蜂窩網(wǎng)絡中的頻譜復用,小區(qū)間的干擾對服務質(zhì)量至關重要[10-11]。如果太多的移動用戶同時選擇相同的無線信道來卸載計算任務,可能會對彼此造成嚴重干擾,從而降低數(shù)據(jù)傳輸速率并增加能量消耗,而上述算法均忽略了小區(qū)間會產(chǎn)生干擾的情況。

      目前基于DRL的MEC任務卸載決策的研究有許多。例如,文獻[12]使用DRL解決MEC環(huán)境下車輛的任務卸載調(diào)度問題,以最小化長期卸載成本。文獻[13]提出了一種基于deep Q-learning(DQN)的算法來解決多用戶共享邊緣網(wǎng)絡計算資源的卸載決策問題。但是,這些基于價值的強化學習方法主要應用于離散動作。然而,簡單地將連續(xù)的動作空間離散化并使用基于值函數(shù)是不可行的,因為離散化會導致性能下降。為了克服上述挑戰(zhàn),本文采用DDPG算法,它可以同時解決離散和連續(xù)動作問題,每一步都會更新模型權重,模型可以適應動態(tài)環(huán)境,并且利用先前的研究經(jīng)驗可以更好地學習,另一方面,連續(xù)狀態(tài)下的算法以時間差異的方式采取措施來選擇具有學習價值的動作,從而提高卸載效率。在計算卸載模型中,同時考慮計算延遲、能耗和任務失敗率的工作很少,而本文提出的模型同時關注了這三個指標和用戶的移動性以及MEC服務器性能的不同,以更好地提高用戶的服務質(zhì)量。

      本文的主要貢獻可以概括如下:

      (1)更現(xiàn)實的優(yōu)化目標設定。在現(xiàn)實生活中,終端設備的類型并不相同,僅考慮一個方面無法保證用戶之間的公平性。因此,考慮了時延和能耗,并設置了權重值,制定的優(yōu)化目標是在不超過任務最大可容忍延遲要求的情況下最小化用戶的總成本。

      (2)MEC系統(tǒng)的任務卸載問題定義。定義了任務卸載問題。該問題考慮了多服務器、多用戶、用戶的移動性、任務的等待時間以及邊緣服務器性能的不同,旨在最小化用戶的預期成本(考慮到MEC服務器資源的有限性,任務可以遷移)。

      (3)基于DDPG的卸載算法實現(xiàn)。為了實現(xiàn)用戶的預期成本最小化,提出了一種基于DDPG的分布式卸載算法A-DDPG,使每個移動設備能夠進行動態(tài)卸載,并選擇合適的目標MEC服務器和任務卸載量。結合了LSTM、DDPG和Attention去優(yōu)化算法中成本估計。

      2 系統(tǒng)模型

      2.1 網(wǎng)絡模型

      移動邊緣計算系統(tǒng)模型如圖1所示??紤]多個基站覆蓋范圍內(nèi)的多服務器多用戶MEC系統(tǒng)模型,UE每隔一段時間?可以進行相應的移動。MEC系統(tǒng)中有n個用戶,表示為N={1,2,…,n},MEC服務器有m個,表示為M={1,2,…,m},一個基站服務、一個MEC服務器,這些移動用戶通過動態(tài)計算和每個MEC服務器的距離遠近來決定卸載目標。本文中,OFDMA(正交頻分多址)用于移動用戶任務卸載到MEC服務器的上行鏈路通信,每個移動用戶共享整個帶寬的通用頻率[14]。在OFDMA中,可用頻譜被劃分為K個子信道,這些子信道的索引是K={1,2,…,k}。

      圖1 移動邊緣計算系統(tǒng)模型Fig.1 Model of mobile edge computing system

      每個MEC服務器都有一個任務池JOB_POOL,用于存儲UE卸載到MEC服務器的任務,按照FIFO(先入先出)原則對卸載任務進行計算。然后,每個服務器處理任務的數(shù)量是有限的,因為當大量移動設備將任務卸載到同一服務器時,該服務器的負載會很高,這些卸載的任務會經(jīng)歷較大的處理延遲,而具有最大可容忍延遲的任務可能會在到期時被丟棄。同樣,每個用戶都有一個工作池LC_POOL和一個遷移池TRANS_POOL,LC_POOL用于存儲在本地執(zhí)行的任務,按照FIFO原則對任務進行本地計算,而TRANS_POOL用于存儲卸載到服務器的任務,按照FIFO原則對任務進行上傳。

      在MEC系統(tǒng)中,每個移動用戶有多個計算密集型任務(任務在執(zhí)行過程中,數(shù)據(jù)大小都保持不變),每個任務具有不可分割性和最大可容忍延遲,任務集合被表示為U={u1,u2,…,uq},而每個任務被定義為一個三元組ui=(ci,di,γmaxi),i∈q。其中,ci表示完成任務ui所需的計算資源量(CPU周期數(shù)),di表示任務ui的數(shù)據(jù)大小,γmaxi表示任務ui的最大允許延遲(意味著任務完成時間的閾值)。任務在t時刻的狀態(tài)分別有:(1)任務開始卸載(SO);(2)任務正在上傳(SU);(3)任務正在處理(SP);(4)任務完成返回給用戶(TB);(5)斷開連接(TD);(6)任務正在遷移(ST);(7)任務在本地執(zhí)行(TL)。移動用戶有兩種卸載模式[14]:分別是二進制卸載和部分卸載,本文考慮的是二進制卸載。每個任務對應一種卸載策略,表示移動用戶n將任務卸載到MEC服務器m上,則表示在本地進行計算,但是同一個移動用戶的任務只能卸載到同一個MEC服務器,如果MEC服務器的任務數(shù)量已經(jīng)達到閾值(任務池處于滿的狀態(tài)),則任務遷移(按照FIFO原則)。通過上述的討論,將包含所有任務卸載變量的卸載策略集合P定義為P={pinm|pinm=1,n∈N,m∈M,i∈q}。移動用戶n上的任務卸載數(shù)至多等于q:

      該系統(tǒng)具有三層架構:云層,通過云接受并處理用戶信息來判斷移動用戶是否進行卸載。邊緣層,由多個基站和多個MEC服務器組成。MEC服務器通過基站獲取計算和存儲資源,用戶通過將任務卸載到MEC服務器上處理來減少能耗和降低時延。用戶層,受自身計算能力和能源的限制,部分任務需要卸載到邊緣層處理,以提高服務質(zhì)量,例如手機、車輛和無人機。

      2.2 通信模型

      在OFDMA中[15],由于通信信道的正交性,同一區(qū)域內(nèi)的移動用戶不能相互影響,只有位于不同區(qū)域且使用相同子信道的移動用戶才能相互影響。這里假設每個移動用戶均處于不同區(qū)域,它們之間不會相互影響。每個移動用戶和BS之間都有一個上行通信鏈路,UEn和BSm之間上行鏈路的信道增益被定義為hnm,移動用戶的功率集合被定義為P={pn|0<pn<P,n∈N},P是功率的最大閾值。基于香農(nóng)定理[7],移動用戶n的傳輸速率可以計算為:

      其中,wk為無線信道帶寬,N0為高斯白噪聲的方差。

      2.3 計算模型

      2.3 .1本地計算模型

      將移動用戶n的計算能力(每秒可執(zhí)行的CPU周期數(shù))定義為flocaln,不同移動用戶的計算能力不同,如果移動用戶n的任務ui選擇在本地執(zhí)行,則將移動用戶n在本地執(zhí)行任務的時延定義為Tlocaln:

      其中,ci為任務ui需要的計算資源。

      其中,un為一個與移動用戶n的硬件架構相關的常數(shù)。

      根據(jù)延遲公式(3)和能量消耗公式(4),移動用戶n的本地計算總成本表示為:

      2.3 .2計算卸載模型

      每個BS處的MEC服務器可以同時向多個移動用戶提供計算服務,通過卸載算法判斷任務是否卸載,再通過移動用戶和MEC服務器之間的距離來確定目標服務器集合,然后移動用戶通過分配的通信信道k將任務數(shù)據(jù)上傳到MEC服務器,最后MEC服務器將計算結果返回給移動用戶。

      根據(jù)上述步驟可以得知上傳數(shù)據(jù)的過程中會產(chǎn)生時延,并且不可忽略。因此,將上傳數(shù)據(jù)時產(chǎn)生的時延定義為傳輸時延:

      其中,rnm表示網(wǎng)絡模型中移動用戶n和MEC服務器m之間無線信道的上傳速率。

      移動用戶n上傳任務的能量消耗定義為Eupn:

      每個MEC服務器具有更強大的計算能力F和更穩(wěn)定的能源供應,MEC服務器給移動用戶n分配的計算資源為(每秒可執(zhí)行的CPU周期數(shù))。移動用戶n在MEC服務器上的任務執(zhí)行時間定義為Tedgen:

      由于MEC服務器返回的結果數(shù)據(jù)量比較?。ê蜕蟼鞯臄?shù)據(jù)量相比),并且移動用戶的下載速率通常很高,因此,下載部分被忽略。移動用戶n卸載任務的總時延定義為Toffn:

      任務卸載時,移動用戶n消耗的能量僅與數(shù)據(jù)傳輸相關,所以移動用戶n卸載任務的總能耗定義為:

      結合延遲公式(9)和能量消耗公式(10),移動用戶n的計算卸載總成本表示為Coffn:

      3 問題定義

      對于MEC系統(tǒng)中的分布式卸載決策和資源分配方式,每個移動用戶根據(jù)本地信息做出卸載決策,然后MEC服務器根據(jù)移動用戶的信息以及卸載策略分配資源,以最小化用戶總成本。本文以移動用戶的傳輸功率、卸載決策和CPU能力為控制變量,構建了一個效用函數(shù),該效用函數(shù)為移動用戶的執(zhí)行時間和能量消耗之間的權衡。在滿足每個任務的最大可容忍延遲的要求下,問題S1的表述如下:

      約束1任務只能卸載或者本地執(zhí)行。

      約束2無論是本地計算還是卸載計算,任務的完成時間都不能超過任務的最大可容忍延遲。

      約束3移動用戶n的功率不能超過P。

      約束4在卸載計算期間分配給移動用戶n的計算資源不超過MEC服務器總的計算資源。

      約束5分配給移動用戶總的計算資源不能超過MEC服務器總的計算資源。

      約束6移動用戶的時延和能耗權重之和必須等于1,并且二者的取值必須在0~1。

      需要解決的主要問題是移動用戶如何以分散的方式選擇這些變量值,從而使移動用戶成本最小化。為了使移動用戶成本最小化,不同移動用戶之間的卸載決策和傳輸功率控制都屬于NP問題[9,16]。在本文中移動用戶的傳輸功率、卸載決策和CPU能力三個變量相互關聯(lián)、相互耦合,因此可以看出S1也是一個NP問題。并且,如果移動用戶數(shù)量持續(xù)增加,問題S1的求解集合規(guī)模會呈指數(shù)增長。本文的優(yōu)化目標是在所有可能的卸載策略中,最大化可獲得的計算資源數(shù)量,同時最小化移動用戶成本。ρ是MEC系統(tǒng)選擇的一個卸載策略,是所有可行的卸載策略集合。此外,優(yōu)化目標還需要滿足兩個資源約束:計算資源約束和通信資源約束,分別是MEC服務器分配的計算資源在任何時候都不能超過MEC服務器總的計算資源和在傳輸信道中分配的通信資源不得超過MEC系統(tǒng)提供的帶寬。本文提出一種基于單代理策略的計算卸載方法A-DDPG來解決資源分配問題,與基于值的RL方法不同,A-DDPG采用了雙actor-critic架構[17],可以有效地解決連續(xù)控制問題。接下來詳細地介紹提出的A-DDPG算法以及具體的結構組成。表1總結了本文中使用的一些重要符號。

      表1 符號說明Table 1 Symbol description

      4 A-DDPG算法

      DDPG算法[18]是一個隨機優(yōu)化框架,由三個基本元素組成:(1)狀態(tài);(2)動作;(3)獎勵。在t時刻,agent根據(jù)狀態(tài)S(t)做出相應動作A(t),然后動作A(t)再與環(huán)境進行交互返回下一個時刻狀態(tài)S(t+1)和獎勵R(t),通過返回的獎勵值大小判斷動作是否積極,從而選擇獎勵值最大的動作和系統(tǒng)進行交互。在本文的MEC系統(tǒng)中,三個元素定義如下所示。

      狀態(tài)在時隙t,用S(t)表示系統(tǒng)狀態(tài):

      其中,rm表示服務器m可獲得的資源量;Bnm表示用戶n和服務器m之間通信連接可獲得的帶寬;On表示用戶n任務集的卸載決策;LOn表示用戶n的位置坐標向量;JOB_POOL表示任務池的長度;TRANS_POOL表示遷移池的長度。

      動作在時隙t,用A(t)表示卸載過程的動作,包含了給用戶分配的資源fedgen和帶寬wk。

      獎勵獎勵值是對以前動作獲得利益的評估。本文的優(yōu)化目標是使用戶的總成本最小化,而深度學習的目標是獲得最大的獎勵回報,獎勵函數(shù)應與優(yōu)化目標的倒數(shù)成正相關,因此,將獎勵函數(shù)定義成與用戶總成本的倒數(shù)相關的線性函數(shù):

      在提出的算法中,MEC服務器幫助移動用戶訓練模型以減輕移動用戶的計算負載。每個時隙?t中,對狀態(tài)集中元素的關注度并不相同,比如:如果服務器的任務池長度已經(jīng)達到閾值,則沒有必要再關注服務器的可獲得計算資源和帶寬,以及為它們分配其他的存儲空間和進行訓練,而Attention機制對神經(jīng)網(wǎng)絡進行一定優(yōu)化處理以及增強元素之間的局部聯(lián)系,從而減少占用的存儲空間和提高模型的訓練速度和訓練效果。首先將狀態(tài)集合S(t)輸入到LSTM狀態(tài)編碼器,再通過Attention LSTM處理得到不同狀態(tài)的注意力權重值,然后輸出狀態(tài)的注意力權重向量,大小為[batch x n_hidden]。在A-DDPG算法中,分別有兩個actor網(wǎng)絡和critic網(wǎng)絡,因此,A-DDPG有來自四個網(wǎng)絡的梯度流,加上雙誤差反向傳播,使用LSTM能更快地訓練模型。

      5 算法設計

      本文的目標是設計一個卸載算法A-DDPG,通過在線算法獲得二進制卸載決策之后,使用A-DDPG算法獲取較優(yōu)的資源分配,從而最小化目標函數(shù)。卸載過程由兩個交替的階段組成:卸載動作生成和資源分配更新。卸載動作生成是在所有可能的卸載決策中隨機進行選擇,資源分配更新則是通過A-DDPG算法實現(xiàn),A-DDPG算法的結構如圖2所示。該算法的實現(xiàn)基于DDPG[19]。由于DDPG是一種無模型的方法,它可以解決復雜的系統(tǒng)和移動設備之間的交互,而不需要系統(tǒng)和移動用戶交互的先驗經(jīng)歷,同時,該算法可以處理系統(tǒng)潛在的大狀態(tài)空間。

      圖2 A-DDPG算法結構Fig.2 Structure of A-DDPG algorithm

      A-DDPG算法使用DDPG學習資源分配的策略,以及利用注意力機制的長短期記憶網(wǎng)絡對狀態(tài)向量進行編碼,然后輸出上層神經(jīng)元個數(shù)大小的注意力向量。在該算法中,神經(jīng)網(wǎng)絡模型的目標是學習移動設備和服務器進行交互后狀態(tài)-動作對到Q值的映射?;谟成?,選擇在目前狀態(tài)下產(chǎn)生最小Q值的動作,從而最小化用戶的總成本。

      神經(jīng)網(wǎng)絡的目標是找到從每個狀態(tài)到動作的一組Q值的映射。如圖3展示了神經(jīng)網(wǎng)絡的結構組成。具體地說,狀態(tài)信息通過輸入層傳遞給神經(jīng)網(wǎng)絡,然后根據(jù)MEC服務器的資源和帶寬通過LSTM層去估計每個任務的資源分配數(shù)量,Attention層再計算出狀態(tài)集合對應的key值,最后通過全連接(Dense)層去學習從所有狀態(tài)和任務資源和帶寬的預測分配量到Q值的映射,然后通過輸出層輸出。同時,Attention機制[20]通過保留LSTM編碼器對輸入序列的中間輸出結果,然后訓練一個模型對這些輸入進行選擇性的學習并且在模型輸出時將輸出序列與之進行關聯(lián)(換一個角度而言,輸出序列中的每一項生成概率取決于在輸入序列中選擇了哪些項),從而提高從狀態(tài)-動作對到Q值映射的學習效率。將θm定義為神經(jīng)網(wǎng)絡參數(shù)向量,包括從輸入層到R&B層的所有連接權重和偏差。每層的細節(jié)如下:

      圖3 神經(jīng)網(wǎng)絡組成結構Fig.3 Composition structure of neural network

      5.1 Input layer

      該層負責將狀態(tài)集作為輸入傳遞給下一層。在t時刻,移動用戶的狀態(tài)集被定義為St,其中包含每個MEC服務器可獲得的資源、每個通信連接可獲得的帶寬、用戶位置坐標等。這些信息被傳入LSTM層去預測任務的資源分配量。

      5.2 LSTM layer

      該層負責學習MEC服務器可獲得資源和帶寬的情況,并預測近期任務的分配量。LSTM網(wǎng)絡是一種被廣泛用于學習序列觀測的時間依賴性并預測時間序列的未來變化的方法。具體而言,LSTM網(wǎng)絡將狀態(tài)集St作為輸入,學習MEC服務器可獲得資源和帶寬的動態(tài)變化情況。LSTM網(wǎng)絡包含T?LSTM單元,每個單元包含一組隱藏的神經(jīng)元。S(t)輸入到每個LSTM單元,S(t)的第i行表示為{S(t)}i。這些LSTM單元按順序連接,以便跟蹤從{S(t)}1到{S(t)}T?序列的變化,這能夠揭示時隙之間的MEC服務器可獲得資源和帶寬的動態(tài)變化。最后一個LSTM單元中輸出未來可獲得資源和帶寬的信息,然后將輸出傳遞給下一層學習。

      5.3 Attention layer

      注意力機制是從序列中學習每個元素的重要程度,然后按重要程度對元素進行加權求和,本質(zhì)是一個查詢(query)到一系列鍵值對(key-value)的映射。首先是將query和每個key(狀態(tài)集中的不同元素)進行相似度計算得到狀態(tài)集中不同元素的權重,然后通過softmax函數(shù)對這些權重進行歸一化,最后將權重和對應的鍵值加權求和得到attention系數(shù)傳遞給下一層進行學習。

      5.4 Dense layer

      該層學習從狀態(tài)以及可獲得資源和帶寬到Q值的映射。每個Dense層包含一組具有整流線性單元(ReLU)的神經(jīng)元,它們與前一層和后一層的神經(jīng)元相連。

      5.5 R&B layer and output layer

      R&B層和輸出層實現(xiàn)DDPG算法,并確定每個狀態(tài)-動作對的Q值。R&B層首先學習任務可獲得的資源和每個連接可獲得的帶寬,然后輸出層通過R&B層的學習和狀態(tài)集來確定狀態(tài)-動作對的Q值,其中通過評估由狀態(tài)和動作產(chǎn)生的獎勵值來改進Q值的估計。輸出層包含critic網(wǎng)絡,而R&B層由網(wǎng)絡R和網(wǎng)絡B構成(見圖3)。網(wǎng)絡R和網(wǎng)絡B具有相似的網(wǎng)絡結構,都是由輸入層、LSTM層、Attention層和Dense層構成,不同的是網(wǎng)絡R用于學習任務的資源分配情況,而網(wǎng)絡B學習每個連接的帶寬分配情況,網(wǎng)絡R和B進行連接構建卸載網(wǎng)絡,學習任務的卸載情況,把網(wǎng)絡R和網(wǎng)絡B的s、a進行疊加,通過輸出層計算狀態(tài)-動作對的Q值。狀態(tài)-動作值函數(shù)的貝爾曼方程[21]如下(定義在狀態(tài)st下,采取動作at后,且如果持續(xù)執(zhí)行策略μ的情況下):

      為了使長期折現(xiàn)收益最大化,采用時序差分法(TD),在每個時間步t更新狀態(tài)動作函數(shù):

      α在0到1之間,表示學習率。

      R&B層作為參與者進行動作選擇,輸出層通過價值函數(shù)對采取策略進行評價,然后根據(jù)輸出層的結果更新價值網(wǎng)絡和策略網(wǎng)絡。在critic網(wǎng)絡中,利用時序差分法和最小化損失函數(shù)對參數(shù)θQ進行更新,它的損失函數(shù)[22]定義如下:

      其中,yt在狀態(tài)st中采取動作at后得到的最大化回報。

      R&B網(wǎng)絡最大化總體折扣獎勵的期望并且用價值函數(shù)去近似整體的折扣回報,然后該網(wǎng)絡用梯度上升法更策略以逼近最優(yōu)解。

      兩個目標網(wǎng)絡的參數(shù)更新均采用軟更新方式[16],其公式如下所示:

      其中,TAU是軟更新因子,本文將其設置為0.01。

      A-DDPG算法的偽代碼如下所示:

      步驟1初始化critic網(wǎng)絡θQ和R&B網(wǎng)絡θμ。

      步驟2初始化目標網(wǎng)絡θQ′←θQ,θμ′←θμ。

      步驟3初始化經(jīng)驗池D、探索方差r_var和b_var、學習率LR_A和LR_C、獎勵折扣因子GAMMA。

      步驟4對每個episode,循環(huán)執(zhí)行以下步驟:

      (1)獲取初始化狀態(tài)S0。

      (2)探索step小于最大限定步數(shù),則對它的每一步,循環(huán)執(zhí)行以下步驟:

      ①根據(jù)當前的策略和狀態(tài)st選擇動作:

      ②為了進行探索,對動作添加隨機噪聲:

      ③執(zhí)行動作at,得到獎勵rt和新狀態(tài)st+1。

      ④如果經(jīng)驗池D被占滿,則用新狀態(tài)集S(st,at,rt,st+1)進行替換,經(jīng)驗池沒被占滿,則直接S存入。

      ⑤從經(jīng)驗池中隨機采樣Z個樣本進行訓練。

      ⑥計算yt(動作的期望回報)。

      ⑦更新critic網(wǎng)絡參數(shù):

      ⑧每隔d步,通過確定性策略梯度更新actor網(wǎng)絡參數(shù)θμ。

      ⑨每隔replace_step步,更新目標網(wǎng)絡參數(shù):

      (3)結束探索循環(huán)。

      步驟5結束episode循環(huán)。

      6 實驗結果

      6.1 模擬設置

      在本節(jié)中,將在不同參數(shù)設置下對提出的A-DDPG算法進行性能評估,并與其他基線算法進行比較。本文采用了韓國首爾移動用戶的位置數(shù)據(jù)進行模擬(https://crawdad.org/yonsei/lifemap/20120103/index.html)。由于本文算法沒有實現(xiàn)真實的邊緣計算環(huán)境,所以使用Python3.7.5來構建移動邊緣計算網(wǎng)絡環(huán)境,并使用Tensorflow2.2.0來實現(xiàn)所提出的算法??紤]的是有多個移動設備和多個邊緣服務器的場景,實驗中的相關參數(shù)列于表2中[18]。

      表2 參數(shù)設置Table 2 Parameters setting

      神經(jīng)網(wǎng)絡的參數(shù)設置如下:batch大小通常被設置為2的冪次方,在合理范圍內(nèi),一般來說batch越大,其確定的下降方向越準,引起訓練震蕩越小,但是增大到一定程度,其確定的下降方向已經(jīng)基本不再變化,反而會導致模型收斂緩慢,泛化性差,陷入局部最優(yōu),在本文中,batch設為32時,模型性能較優(yōu);學習率的不同取值會影響模型的收斂速度,學習率取值較大會使actor網(wǎng)絡和critic網(wǎng)絡都采取較大的更新步長,學習率取值較低會導致DNN的更新率較慢,模型需要更多的迭代次數(shù)才能收斂,在本文中,當actor的學習率為0.001,critic的學習率為0.002時,模型的收斂性能比較好。

      當獎勵折扣系數(shù)設置為0.9時,經(jīng)過訓練的分配策略具有最佳性能,原因是不同時期的環(huán)境變化很大,所以整個時期的數(shù)據(jù)不能完全代表長期的行為。一個比較大的獎勵折扣因子意味著將整個時間段內(nèi)收集的數(shù)據(jù)視為長期數(shù)據(jù),導致不同時間段內(nèi)模型的泛化能力較差。因此,對獎勵折扣因子設置一個適當?shù)闹祵⑻岣哂柧毑呗缘淖罱K性能;隨機探索控制因子設置為1。同時,使用Adam算法進行優(yōu)化。在環(huán)境模擬中,考慮的是一個平穩(wěn)環(huán)境,即策略函數(shù)(在狀態(tài)中執(zhí)行的動作)和價值函數(shù)(從狀態(tài)-動作對到Q值的映射)不會隨時間變化。如果環(huán)境發(fā)生了變化,則該算法可以通過將隨機探索控制因子重置為1來重新適應環(huán)境,從而繼續(xù)進行隨機探索。將時間間隙Δ設置為0.1,每隔一個間隙移動用戶會發(fā)生一次移動。

      6.2 算法比較

      為了研究影響算法性能的因素,本實驗改變了三個參數(shù)設置。另外,在不同的參數(shù)設置中,還有其他四種卸載方法與所提算法進行了比較。下面對這幾種方法進行了描述:

      (1)在本地執(zhí)行所有任務(Local):移動用戶的所有計算任務都在本地執(zhí)行,而不請求計算卸載到MEC服務器。

      (2)基于DDPG的卸載算法(DDPG)[21]:DDPG是actor-critic算法,它在算法訓練的收斂性等方面具有獨特的優(yōu)勢。該算法最近在許多研究中被使用,這就是選擇該算法作為實驗比較算法的原因。

      (3)基于TD3的卸載算法(TD3):TD3算法對DDPG算法的一些不足之處進行了一定優(yōu)化,采用雙網(wǎng)絡結構解決過估計問題,在探索中增加隨機噪聲提高actor網(wǎng)絡的尋找速度,并且A-DDPG算法是在TD3的基礎上提出。

      (4)基于DDPG的卸載算法(Noisy-DDPG):在DDPG算法的基礎上添加了噪聲層的卸載算法,增加了網(wǎng)絡的隨機探索率。

      在實驗中,如果移動用戶數(shù)、MEC服務器數(shù)和權重不作為參數(shù)對照,則分別默認為10,10,αtn=0.8,αen=0.2

      在深度強化學習中,神經(jīng)網(wǎng)絡需要進行訓練得到合適的Q值,以更好地適應環(huán)境給出的獎勵和策略。A-DDPG算法分別有兩個神經(jīng)網(wǎng)絡來擬合策略和Q值。如圖4是神經(jīng)網(wǎng)絡的訓練過程??梢钥闯觯谟柧氶_始時,由于動作是隨機選擇的,再加上探索噪聲,因此主體正處于探索階段,獎勵值較低。隨著迭代次數(shù)的增加,主體從探索階段慢慢進入使用經(jīng)驗的學習階段,算法快速收斂,獎勵值逐漸趨于穩(wěn)定。從圖4中可以看出A-DDPG算法的收斂速度比較快,在episode=10時,A-DDPG算法已經(jīng)趨于穩(wěn)定,而且獎勵值遠遠高于其余幾個算法。

      圖4 總獎勵價值迭代訓練Fig.4 Iterative training of total reward value

      如圖5顯示了用戶總成本隨訓練次數(shù)增加的趨勢變化。總的來說,隨著訓練次數(shù)的不斷增加,四種方法的總成本逐漸下降。本文提出的A-DDPG算法取得了最好的結果,當算法均趨于穩(wěn)定時,A-DDPG算法的用戶總成本最小,比DDPG算法低27%左右。

      圖5 總成本迭代訓練Fig.5 Iterative training of total cost

      為了驗證所提算法的有效性,比較了不同用戶數(shù)和設備數(shù)下的用戶總成本。在圖6(a)中,可以看到,隨著UE數(shù)的增加,用戶的總成本呈現(xiàn)出整體上升的趨勢,但當用戶數(shù)越多時增長越快。這是因為當用戶數(shù)量變大時,MEC服務器的計算資源不足以提供給所有移動用戶。容量有限的MEC服務器不能服務太多用戶,所以在這種情況下選擇一個合適的卸載決策是非常重要的。在圖6(a)中,可以看出A-DDPG算法是優(yōu)于其他幾種算法的。當用戶數(shù)等于30時,A-DDPG算法的總成本和TD3算法的相差不大,但是A-DDPG算法在用戶數(shù)等于10和20的情況下,總成本都比較低??偟膩碚f,隨著移動用戶數(shù)增加,A-DDPG算法的性能高于其他幾種算法。

      圖6用戶數(shù)與MEC服務器數(shù)對比Fig.6 Comparision of user number and MEC server number

      圖6 (b)顯示了當MEC服務器數(shù)量持續(xù)增加時,Local算法、DDPG算法、Noisy-DDPG算法、TD3算法和A-DDPG算法的性能比較。當邊緣服務器數(shù)量從5臺增加到20臺時,只有Local算法的總成本沒有太大的波動,而其他幾種算法都是先增后減的趨勢??梢钥闯鲈黾臃掌鲾?shù)量并不會顯著提高效果,用戶的總成本主要是受到網(wǎng)絡帶寬和用戶自身CPU容量的限制,但是,可以看到A-DDPG算法的性能仍然是優(yōu)于其他幾種算法。

      在本文中,同時考慮了延遲和能耗,并且設置了不同的權重參數(shù)滿足各種類型應用的需求。從圖7可以看到,在不同的權重參數(shù)設置下,提出的方案仍然是有效的,可以實現(xiàn)更低的用戶總成本。

      圖7 權重占比Fig.7 Weight ratio

      在本文中,每個任務都具有最大可容忍延遲。任務完成時間超過自身的最大可容忍延遲,則認為任務失敗。通過比較訓練過程中任務平均失敗率來驗證A-DDPG算法的性能。在圖8中,MEC服務器數(shù)設置為5??梢钥闯鰩追N算法的任務平均失敗率都呈現(xiàn)下降趨勢,但是A-DDPG算法在episode=5時已經(jīng)收斂并且任務失敗率為0,而TD3算法在episode=10時才收斂,DDPG算法在episode=14時任務平均失敗率才為0,所以A-DDPG算法優(yōu)于TD3算 法、DDPG算法和Noisy-DDPG算法。

      圖8 任務平均失敗率Fig.8 Average failure rate of tasks

      7 結語

      在本文中,討論了多用戶多MEC服務器環(huán)境下移動設備的計算任務卸載策略以及用戶的移動性問題,還考慮了服務延遲、能耗和任務失敗率等衡量指標,并且針對不同的應用類型,對延遲和能耗設置了不同的權重值,解決因用戶類型不同帶來的不公平問題。為了最大限度地降低用戶的總成本,本文提出一種改進DDPG的計算卸載算法(A-DDPG),解決了DDPG算法和TD3算法處理計算卸載時的不穩(wěn)定性和收斂速度慢的問題,同時優(yōu)化了DDPG內(nèi)部網(wǎng)絡的權重參數(shù)更新過程。在現(xiàn)實場景中,MEC服務器資源是有限的,如何提高資源利用率是一個關鍵問題。此外,對于更大規(guī)模的邊緣計算系統(tǒng),提高服務器計算能力和網(wǎng)絡帶寬對于服務質(zhì)量的保證至關重要。提出了A-DDPG卸載算法解決上述提出的問題,并利用真實的移動數(shù)據(jù)集進行了多次實驗,實驗結果表明,在多用戶多MEC服務器系統(tǒng)中,本文算法優(yōu)于其他算法。不足之處在于,用戶的任務都具有不可分割性,以及任務的卸載決策是確定的,本文期望這種基于DDPG的卸載算法(A-DDPG)能進一步改進,以在未來的MEC網(wǎng)絡中實現(xiàn)任務的可分割以及卸載決策的實時性。

      猜你喜歡
      移動用戶計算資源總成本
      2020年中國棉花種植成本調(diào)查
      中國纖檢(2021年3期)2021-11-23 03:36:27
      基于模糊規(guī)劃理論的云計算資源調(diào)度研究
      改進快速稀疏算法的云計算資源負載均衡
      數(shù)據(jù)驅(qū)動下的庫存優(yōu)化模型研究
      基于Wi-Fi與Web的云計算資源調(diào)度算法研究
      耦合分布式系統(tǒng)多任務動態(tài)調(diào)度算法
      線性盈虧平衡分析在TBM隧洞工程中的應用
      關于煤化工生產(chǎn)企業(yè)成本管控的思考
      無線通信技術未來發(fā)展趨勢分析
      基于預測位置的移動用戶位置隱私保護研究
      青龙| 北海市| 花莲县| 英德市| 麻江县| 恩施市| 乐至县| 石屏县| 巫山县| 雅江县| 平果县| 洞口县| 萨嘎县| 揭阳市| 大悟县| 平顶山市| 张家港市| 锡林郭勒盟| 松原市| 广灵县| 高雄县| 镇安县| 梧州市| 河东区| 黔西| 桐梓县| 新干县| 辽阳县| 家居| 长沙县| 梨树县| 师宗县| 东丰县| 济南市| 钟祥市| 天祝| 大余县| 邛崃市| 沧州市| 芜湖县| 德庆县|