摘 要:邊緣計算允許物聯(lián)網(wǎng)設(shè)備卸載任務(wù)到邊云環(huán)境中執(zhí)行,以滿足任務(wù)對資源的需求。由于邊云環(huán)境的高度隨機性和動態(tài)性,啟發(fā)式算法和基于Q表格的強化學(xué)習(xí)算法難以實現(xiàn)異構(gòu)任務(wù)的高效卸載決策,所以提出了一個新穎的競爭和雙深度Q網(wǎng)絡(luò)(novel dueling and double deep Q network,ND3QN)的深度強化學(xué)習(xí)算法,用于任務(wù)高效卸載和資源分配。ND3QN聯(lián)合優(yōu)化任務(wù)完成時間和費用,并創(chuàng)新地構(gòu)建了包含環(huán)境動態(tài)信息的狀態(tài);設(shè)計了能有效指導(dǎo)算法訓(xùn)練的獎勵函數(shù);實現(xiàn)了細粒度卸載,即任務(wù)卸載到服務(wù)器的虛擬機。實驗結(jié)果表明,ND3QN在不同探索率和學(xué)習(xí)率下的收斂速度和收斂值存在明顯差異,且在任務(wù)丟棄率、完成時間和費用等方面優(yōu)于基線算法;消融實驗證明了狀態(tài)和獎勵函數(shù)改進的有效性。因此,ND3QN可有效提升邊云環(huán)境中的任務(wù)卸載和資源分配效率。
關(guān)鍵詞: 深度強化學(xué)習(xí); 邊緣計算; 任務(wù)卸載; 資源分配; 深度Q網(wǎng)絡(luò)
中圖分類號: TP393 文獻標志碼: A 文章編號: 1001-3695(2025)02-022-0486-08
doi: 10.19734/j.issn.1001-3695.2024.07.0228
Deep reinforcement learning based task offloading decision and resource
allocation method in edge and cloud environments
He Dahanga, Wang Yub, Zuo Liyuna’
(a.College of Computer, b.Network amp; Education Information Technology Center, Guangdong University of Petrochemical Technology, Maoming Guangdong 525000, China)
Abstract:Edge computing allows Internet of Things devices to offload tasks to the edge and cloud environments for execution to meet the task’s demand for resources. Due to the highly stochastic and dynamic nature of edge and cloud environments, heuristic algorithms and Q-table based reinforcement learning algorithms struggle to achieve efficient offloading decisions for heterogeneous tasks. Therefore, this paper proposed a novel deep reinforcement learning algorithm called novel dueling and double deep Q network (ND3QN) for efficient offloading of tasks and resource allocation in edge and cloud environments. ND3QN jointly optimized the completion time and cost, and innovatively constructed state containing dynamic information about the environments. It designed reward functions guiding the training of the algorithm efficiently and realized fine-grained offloading, i.e., the offloading of tasks to the servers’ virtual machines. The experimental results show that ND3QN has significant differences in convergence speed and convergence values under different exploration rates and learning rates, and outperforms the baseline algorithms in terms of task discard rate, completion time and cost. The ablation experiments prove the effectiveness of the state and reward function improvements. Therefore, ND3QN can effectively improve the efficiency of task offloading and resource allocation in edge and cloud environments.
Key words:deep reinforcement learning(DRL); edge computing; task offloading; resource allocation; deep Q network
0 引言
隨著物聯(lián)網(wǎng)(IoT)的快速發(fā)展,IoT使用的嵌入式設(shè)備數(shù)量激增[1],預(yù)計到2030年將有近5 000億臺設(shè)備,而這些設(shè)備的電量、通信、計算和存儲能力有限,不足以滿足IoT設(shè)備產(chǎn)生的、計算密集型或存儲密集型任務(wù)對資源的需求[2, 3]。因此,傳統(tǒng)的云計算通過將任務(wù)卸載到云數(shù)據(jù)中心執(zhí)行,能夠解決任務(wù)對資源的需求[4]。但云數(shù)據(jù)中心與IoT設(shè)備之間的距離一般很遠,使用廣域網(wǎng)連接[5, 6]且?guī)捯话爿^小,導(dǎo)致了兩者之間存在大的傳播延遲[7, 8],甚至網(wǎng)絡(luò)阻塞的情況,可能無法滿足一些延遲敏感的任務(wù),如遠程醫(yī)療、交通監(jiān)控[9]。而邊緣計算可以為IoT設(shè)備產(chǎn)生的任務(wù)提供低延遲、高帶寬的計算環(huán)境[10],彌補了云計算的不足[11]。邊緣計算的服務(wù)器(edge servers, ES)與云計算的服務(wù)器(cloud servers, CS)相比,ES是異構(gòu)的,并且距離IoT設(shè)備的物理距離更近,在地理上分散部署[12],但資源更為有限,可能無法處理IoT設(shè)備卸載的所有任務(wù)[8]。ES的資源一般比IoT設(shè)備更充沛,比CS更匱乏[13]。
在邊云環(huán)境中,為滿足IoT任務(wù)的時延和費用等約束條件,可以將任務(wù)保留在本地執(zhí)行,或是卸載到ES或CS執(zhí)行[12, 14, 15]。然而,IoT設(shè)備和ES通常是異構(gòu)的,任務(wù)的長度、截止時間和對資源的需求等均帶有異構(gòu)性[15, 16]。因此,對于充滿隨機性和動態(tài)性的邊云環(huán)境,做出一個最優(yōu)的卸載決策是NP-難問題[17]。此外,任務(wù)通常被建模為有向無環(huán)圖(directed acyclic graph, DAG),DAG包含了若干個相互之間存在依賴關(guān)系的子任務(wù),子任務(wù)建模為節(jié)點,子任務(wù)之間的依賴關(guān)系建模為邊,即邊的出發(fā)節(jié)點必須完成后,邊的到達節(jié)點才能開始執(zhí)行[6, 8],各節(jié)點可相互獨立地卸載,但必須滿足依賴關(guān)系。這進一步加劇了任務(wù)卸載的復(fù)雜度。
Goudarzi等人[6]為最大化DAG子任務(wù)并行執(zhí)行的數(shù)量,設(shè)計了一種預(yù)調(diào)度技術(shù),并提出了基于Memetic算法(結(jié)合了基于進化的算法和局部搜索策略)的批量任務(wù)卸載技術(shù),以最小化任務(wù)執(zhí)行時間和IoT設(shè)備的能耗。Zhang等人[18]基于服務(wù)器負載均衡等5個優(yōu)化目標,提出了一種基于動態(tài)概率選擇的多目標進化算法。該算法通過動態(tài)調(diào)整多種進化策略的使用概率,克服了單一策略的局限性。Laboni等人[19]提出了AWSH超啟發(fā)式算法,算法結(jié)合了多種啟發(fā)式策略,為任務(wù)卸載提供了一種魯棒的解決方案。Natesha等人[20]開發(fā)了基于元啟發(fā)式的混合卸載算法,優(yōu)化服務(wù)成本及質(zhì)量。文獻[6, 18~20]旨在結(jié)合多種策略以提高算法性能,但可能會增加計算復(fù)雜度。Yakubu等人[21]將任務(wù)按優(yōu)先級均勻分配到邊緣層和云層,在層內(nèi)使用基于MHHO的元啟發(fā)式算法分配任務(wù)到具體的服務(wù)器上,降低任務(wù)完成時間、執(zhí)行成本和能耗。
然而,由于邊云環(huán)境的高度隨機性和動態(tài)性,上述的啟發(fā)式算法不能有效解決邊云環(huán)境中的異構(gòu)任務(wù)卸載決策問題[8, 17]。此外,文獻[22]提出了基于Q表格的強化學(xué)習(xí)(reinforcement learning, RL)算法,優(yōu)化負載、任務(wù)響應(yīng)時間和能耗。但Q表格存儲著狀態(tài)-動作對的動作價值,而邊云環(huán)境的狀態(tài)空間維度極高,容易造成Q表格爆炸,卸載策略學(xué)習(xí)低效。
針對此種情況,基于深度強化學(xué)習(xí)(deep reinforcement learning, DRL)的算法結(jié)合了深度學(xué)習(xí)和強化學(xué)習(xí),利用深度神經(jīng)網(wǎng)絡(luò)擬合,替代了Q表格,使得DRL的智能體(agent)能夠在邊云環(huán)境中更高效地學(xué)習(xí)最優(yōu)的卸載策略[23]。
文獻[8]提出了基于異步近端策略優(yōu)化(APPO)的DRL算法,僅考慮最小化任務(wù)的執(zhí)行時間。文獻[13]為了優(yōu)化加權(quán)成本,提出了基于actor-critic的DRL算法,算法使用循環(huán)層捕捉環(huán)境狀態(tài)的時序關(guān)系,但可能增加訓(xùn)練的計算復(fù)雜度。Chen等人[23]提出基于DQN的DODQ算法,優(yōu)化應(yīng)用響應(yīng)時間和決策速度。Tang 等人[24]提出了一個基于DQN的任務(wù)卸載算法,以最小化長期成本,但算法含有LSTM層,可能增大資源依賴性。Lu等人[25]提出了一個基于A2C的卸載算法,并引入負載均衡因子來評估算法的負載均衡能力。文獻[26]提出了DDTO的DRL算法,并優(yōu)化服務(wù)延遲和設(shè)備能耗。此外,這些文獻均是卸載任務(wù)至服務(wù)器,而不是服務(wù)器上的虛擬機(virtual machine, VM)或容器。這雖然能大幅降低狀態(tài)空間的維度,但是分配到同一服務(wù)器的任務(wù)可能相互影響,不利于支持邊云環(huán)境的多租戶特性。
在邊云環(huán)境中,任務(wù)卸載和資源分配面臨著環(huán)境高度隨機和動態(tài)變化等問題,而傳統(tǒng)基于DRL的算法在處理這些問題時常常存在狀態(tài)表示不充分以至于需要復(fù)雜的神經(jīng)網(wǎng)絡(luò)、獎勵函數(shù)無法充分指導(dǎo)算法訓(xùn)練等局限性。因此,本文提出了一個新穎的競爭和雙深度Q網(wǎng)絡(luò)(novel dueling and double deep Q network,ND3QN)的DRL算法,用以實現(xiàn)任務(wù)卸載和資源分配。相比于其他DRL算法,ND3QN是基于Dueling DQN[27]和Double DQN[28]的算法,能有效地、相互獨立地學(xué)習(xí)狀態(tài)-動作對的價值(即Q值),解決Q值過度估計的問題,提高策略的準確性;采用了經(jīng)驗回放和目標網(wǎng)絡(luò),提高了策略學(xué)習(xí)的穩(wěn)定性。此外,ND3QN構(gòu)建了包含環(huán)境動態(tài)信息的狀態(tài)和有效指導(dǎo)訓(xùn)練的獎勵函數(shù),加快算法的訓(xùn)練速度并降低算法對計算資源依賴。本文的主要工作和貢獻如下:
a)提出了一個由完成時間和費用組成的加權(quán)成本模型。該模型可根據(jù)用戶需求,賦予完成時間和費用合適的權(quán)重,進而在任務(wù)卸載和資源分配過程中最小化加權(quán)成本。
b)提出了ND3QN算法。ND3QN構(gòu)建了包含環(huán)境動態(tài)信息的狀態(tài),由此可用簡單的神經(jīng)網(wǎng)絡(luò)捕捉環(huán)境的動態(tài)信息;設(shè)計了能有效指導(dǎo)算法訓(xùn)練的獎勵函數(shù),提高算法學(xué)習(xí)效果;實現(xiàn)了細粒度卸載,即任務(wù)卸載到服務(wù)器的VM,從而更好地滿足任務(wù)對資源的需求,提高資源利用率。
c)進行了仿真實驗,實驗結(jié)果表明,在不同探索率和學(xué)習(xí)率下,ND3QN的訓(xùn)練收斂速度和收斂值存在明顯的差異;與三個基線算法相比,ND3QN在任務(wù)丟棄率、完成時間和費用等方面具有更好的表現(xiàn);消融實驗證明了狀態(tài)和獎勵函數(shù)改進的有效性。
1 系統(tǒng)模型與問題表述
本文設(shè)定了一個現(xiàn)實的卸載場景,即以任務(wù)為最小的獨立卸載調(diào)度單元,并卸載任務(wù)至ES或CS中的VM上執(zhí)行。這種場景的合理性體現(xiàn)在:若任務(wù)中的子任務(wù)卸載到不同的VM,則a)為滿足依賴關(guān)系,必須將出發(fā)節(jié)點的輸出傳輸至到達節(jié)點,增加了通信開銷;b)雖可使子任務(wù)并行執(zhí)行,減少任務(wù)完成時間,但增加了子任務(wù)同步執(zhí)行、保證一致性的時空開銷,提高了卸載模型的復(fù)雜度。因此以任務(wù)為最小的獨立卸載調(diào)度單元,可降低卸載調(diào)度算法的時空復(fù)雜度和調(diào)度開銷,并提高其性能,這可能對延遲敏感的任務(wù)至關(guān)重要。
1.1 系統(tǒng)模型
系統(tǒng)由IoT設(shè)備、ES和CS組成,如圖1所示。分布式放置的IoT設(shè)備通過局域網(wǎng)連接距其物理位置最近的一臺ES。ES亦是分布式放置的,且相互之間通過高速光纖連接,因此忽略任務(wù)在ES之間的傳輸時間。此外,CS與每臺ES通過廣域網(wǎng)連接。在CS與ES中,含有若干臺異構(gòu)的VM。位于ES中的調(diào)度器負責(zé)接收IoT設(shè)備的任務(wù)請求,收集所有VM的資源信息,并將任務(wù)通過ND3QN卸載至VM中執(zhí)行。VM分配任務(wù)所需的資源以供任務(wù)執(zhí)行。
1.2 問題表述
1.2.1 任務(wù)模型
定義vi為IoT設(shè)備在時間步i生成的任務(wù),且使用五元組(vLengthi,vFileSizei,vDeadlinei,vRAMi,vCPUi)來描述vi。其中,vLengthi表示任務(wù)需運行的指令數(shù);vFileSizei表示任務(wù)的數(shù)據(jù)文件大小,代表著任務(wù)對存儲和網(wǎng)絡(luò)傳輸?shù)男枨?;vDeadlinei表示任務(wù)的截止時間,任務(wù)必須在截止時間內(nèi)完成;vRAMi表示任務(wù)執(zhí)行過程中所需的內(nèi)存大?。籿CPUi表示任務(wù)所需的CPU數(shù)量。
1.2.2 資源模型
1.2.3 完成時間模型
定義ψvi為vi的完成時間,表示預(yù)計從IoT設(shè)備生成vi、vi執(zhí)行完畢并返回計算結(jié)果到IoT設(shè)備所耗費的時間:
ψvi=ψvi,trans+ψvi,queue+ψvi,exec(6)
其中:ψvi,trans表示將vi卸載至esm或csn,并且返回計算結(jié)果到IoT設(shè)備上所耗費的網(wǎng)絡(luò)傳輸時間,即
ψvi,trans=vFileSizeibwvi,esm+espropagationm×2+[vFileSizeibwesm,csn+cspropagationn×2]×
isCloud(Dvi)(7)
其中:vFileSizei/bwvi,esm與vFileSizei/bwesm,csn均表示vi的傳輸延遲;bwvi,esm表示生成vi的IoT設(shè)備與其直接相連的esm之間的網(wǎng)絡(luò)帶寬;espropagationm則表示其傳播延遲;bwesm,csn表示esm與csn之間的網(wǎng)絡(luò)帶寬;cspropagationm則表示其傳播延遲。當Dvi=vmz0,k,則isCloud(Dvi)=0;當Dvi=vmz1,k,則isCloud(Dvi)=1。由于計算結(jié)果通常較小,所以忽略了計算結(jié)果的傳輸延遲,但不忽略其傳播延遲。
ψvi,queue表示:當vi卸載至vmzj,k時,vmzj,k中的任務(wù)等待隊列(waiting queue)WQzj,k和執(zhí)行隊列(execution queue)EQzj,k可能不全為空,vi需要排隊等待的時間。設(shè)定每個VM的EQ在任意時刻至多只有一個任務(wù),EQ中的任務(wù)執(zhí)行完畢后,從WQ中按FCFS取一任務(wù)送至EQ。
ψvi,queue=∑vl∈WQzj,kvLengthl+∑vl∈EQzj,kvLengthlDMIPSvi(8)
其中:DMIPSvi表示vi卸載到的VM的計算能力,即每秒百萬條指令(million instructions per seconds, MIPS)[15]。ψvi,exec表示vi的執(zhí)行時間,即
ψvi,exec=vLengthiDMIPSvi(9)
1.2.4 費用模型
定義ζvi為vi在卸載和計算結(jié)果返回過程中所花費的費用:
ζvi=ψvi×Dcostvi(10)
其中:Dcostvi代表vi卸載到的VM的使用成本。
1.2.5 加權(quán)成本模型
從用戶的角度出發(fā),除了關(guān)心任務(wù)是否能按時完成外,用戶可能還關(guān)注所花費的費用。因此,在綜合考慮任務(wù)的完成時間和費用的基礎(chǔ)上,建立一個加權(quán)成本模型Θvi:
Θvi=ω1×ψvi+ω2×ζvi(11)
其中:ω1和ω2為可調(diào)權(quán)重,均為自然數(shù),分別代表ψvi和ζvi在成本中的相對重要性。Θvi可根據(jù)用戶需求,賦予完成時間和費用合適的權(quán)重,在最小化加權(quán)成本時,達到不同的優(yōu)化效果,例如令ω1為1,ω2為0,即表示卸載過程僅優(yōu)化完成時間,而不必考慮費用。
因此,本文的任務(wù)卸載優(yōu)化問題可定義為
min∑+∞i=0Θvi=min∑+∞i=0(ω1×ψvi+ω2×ζvi)(12)
s.t. C1:ψvi≤vDeadlinei(13)
C2:vRAMi≤DRAMvi(14)
C3:vCPUi≤DCPUvi(15)
C4:∑vl∈WQzj,kvFileSizel+∑vl∈EQzj,kvFileSizel+vFileSizei≤DFileSizevi(16)
其中:ψvi和ζvi分別由式(6)和(10)計算而得。此外,C1表示vi的完成時間必須不大于其截止時間;C2表明vi所需的內(nèi)存不能大于對應(yīng)VM的內(nèi)存(即DRAMvi);C3表示vi所需的CPU數(shù)量應(yīng)當不超過所配置VM的CPU數(shù)量(即DCPUvi);C4要求vi所在的VM存儲資源(即DFileSizevi)應(yīng)足夠大,以便容納其所承載任務(wù)的存儲空間總和;C5表明ω1和ω2均為自然數(shù),通過控制其取值,達到不同的優(yōu)化效果。C1~C4均是資源約束條件,以確保資源分配的可行性。因此,當不滿足資源約束條件時,validate(Dvi)=0,vi將被丟棄;否則validate(Dvi)=1。
2 基于邊云環(huán)境的DRL模型
DRL模型是基于深度學(xué)習(xí)的強化學(xué)習(xí)框架,能有效處理高維的、包含環(huán)境信息的狀態(tài)。DRL的agent在時間步i使用深度神經(jīng)網(wǎng)絡(luò)提取狀態(tài)si的特征,并根據(jù)si做出卸載決策(即動作ai),ai作用于環(huán)境(即任務(wù)和邊云環(huán)境中的全體VM)并影響環(huán)境的狀態(tài),環(huán)境則返回ai的獎勵ri。agent的目標則是通過選擇動作來最大化其獲得的累積獎勵∑i∈Euclid Math TwoNApri。因此,必須定義邊云環(huán)境下卸載決策問題的狀態(tài)空間、動作空間和獎勵函數(shù)。
2.1 狀態(tài)空間
其中: fvmi表示在時間步i時的一臺VM的特征,例如MIPS、CPU數(shù)量、內(nèi)存、外存、帶寬、傳播延遲、每秒費用、WQ和EQ中的任務(wù)數(shù)量; fvii表示vi的特征,例如五元組(vLengthi,vFileSizei,vDeadlinei,vRAMi,vCPUi)和時間步i對應(yīng)的時間戳。
顯然,si不僅考慮時間步i時的特征,也要考慮時間步i-1時的特征。特殊地,當i=0時,則不考慮時間步i-1時的特征。因此si包含了環(huán)境的動態(tài)信息,所以可用簡單的神經(jīng)網(wǎng)絡(luò)捕捉環(huán)境的復(fù)雜動態(tài)信息,降低了DRL模型對計算資源的依賴性,提高了模型的計算效率和泛化能力。
2.2 動作空間
因此,在時間步i時采取的動作ai可定義為
ai=Dvi=vmzj,k(22)
這實現(xiàn)了細粒度卸載,即卸載任務(wù)到服務(wù)器的VM上執(zhí)行,從而更好地滿足任務(wù)對資源的需求,并提高了資源利用率。
2.3 獎勵函數(shù)
獎勵函數(shù)ri在agent訓(xùn)練過程中起到重要作用,其定義如式(23)所示。ri是ai的即時評價,用于幫助agent在學(xué)習(xí)過程中調(diào)整學(xué)習(xí)方向,加速學(xué)習(xí)和收斂速度,以獲得最大化累積獎勵的最優(yōu)卸載策略。
ri=-Θvi+bias1 validate(Dvi)=1
-penalty×count+bias2validate(Dvi)=0(23)
其中:bias1和bias2均為非負常數(shù)偏置項,是基準獎勵,其作用是避免不帶偏置項的獎勵值均為負值而影響agent訓(xùn)練情況的發(fā)生。當滿足資源約束條件時,即validate(Dvi)=1,ri為負的加權(quán)成本值(由式(11)可知)加上偏置項,這意味著agent在最大化獎勵的同時,最小化加權(quán)成本;當validate(Dvi)=0時,ri為線性懲罰函數(shù),懲罰力度隨著不滿足約束條件的數(shù)量(即count)線性增加,每個不滿足約束條件的懲罰值(即penalty)相同。若懲罰力度越大,則說明ai違反的資源約束條件越多,從而避免agent再次做出這種動作。因此,ri能更有效指導(dǎo)算法訓(xùn)練,提高算法學(xué)習(xí)效果。
3 基于DRL的任務(wù)卸載和資源分配算法ND3QN
ND3QN擁有兩個結(jié)構(gòu)完全相同的神經(jīng)網(wǎng)絡(luò)(即當前網(wǎng)絡(luò)Netcurrentθ和目標網(wǎng)絡(luò)Nettargetθt),用于任務(wù)卸載和資源分配。其中,θ和θt分別是對應(yīng)網(wǎng)絡(luò)的參數(shù),且每當當前網(wǎng)絡(luò)訓(xùn)練并更新參數(shù)若干次后,就把參數(shù)復(fù)制到目標網(wǎng)絡(luò)中。
3.1 ND3QN運行原理
其中:rand是一個在[0,1]均勻分布的隨機變量;探索率ε表示agent對環(huán)境的探索程度,ε越大,agent對環(huán)境的探索越充分,但模型收斂速度可能降低。而在模型部署階段中,模型已訓(xùn)練完畢,agent將使用貪心策略選擇具有最大Q值的動作:
ai=arg maxaQθ(si,a)(27)
卸載決策ai將vi卸載至對應(yīng)的VM,VM返回ri并分配vi所需的資源以供vi執(zhí)行。
agent從經(jīng)驗緩沖區(qū)(experience replay buffer, ERB)中隨機取樣批量的經(jīng)驗以進行訓(xùn)練。其中,經(jīng)驗由四元組(si,ai,ri,si+1)組成。因此,在訓(xùn)練階段中,必須存儲經(jīng)驗至ERB中,以供模型訓(xùn)練使用。
3.2 ND3QN網(wǎng)絡(luò)結(jié)構(gòu)
顯然,θ由θ1和θ2構(gòu)成,即θ=(θ1,θ2)。
A(si,a;θ1)描述了在si下的某個動作相對于其他動作的優(yōu)勢,V(si;θ2)則描述了si的狀態(tài)價值。之所以使用優(yōu)勢塊和價值塊分別學(xué)習(xí)A(si,a;θ1)和V(si;θ2),是因為相比于直接學(xué)習(xí)Qθ(si,a),它能實現(xiàn)更小粒度的學(xué)習(xí),使模型能更有效地捕捉到不同狀態(tài)與動作之間的關(guān)系。因此,這降低了學(xué)習(xí)的不穩(wěn)定性,并提高了網(wǎng)絡(luò)的訓(xùn)練效率。Nettargetθt的輸入到輸出的過程同Netcurrentθ。
3.3 算法訓(xùn)練框架
ND3QN在ES上進行訓(xùn)練和部署,具有降低卸載決策延遲和減少帶寬需求等優(yōu)點。圖3展示了模型的訓(xùn)練框架,在每個ES中均部署了調(diào)度器(內(nèi)含Netcurrentθ),但學(xué)習(xí)器(內(nèi)含訓(xùn)練器和ERB)僅部署在用于訓(xùn)練的ES(即訓(xùn)練節(jié)點)中。
在訓(xùn)練節(jié)點中,調(diào)度器負責(zé)接收任務(wù)請求,收集所有VM的資源信息,并將任務(wù)卸載至VM中執(zhí)行,即從環(huán)境中接收狀態(tài)si,由式(24)從Netcurrentθ得到Qθ(si,a),然后根據(jù)式(26)返回動作ai,并接收獎勵ri。與此同時,調(diào)度器將經(jīng)驗發(fā)送至ERB中。當ERB中的經(jīng)驗足夠多時,訓(xùn)練器從ERB中隨機抽樣一批量經(jīng)驗,并在訓(xùn)練過程中將經(jīng)驗中的狀態(tài)傳輸?shù)絅etcurrentθ,并接收對應(yīng)的Q值用于訓(xùn)練模型和更新參數(shù)。訓(xùn)練器將更新后的參數(shù)傳輸至Netcurrentθ中,以供調(diào)度器在下一時間步中使用。此外,每當Netcurrentθ更新參數(shù)若干次后,就把參數(shù)復(fù)制到Nettargetθt中。這一過程如算法1所示。
特別地,在算法1中,為了方便評估模型的訓(xùn)練效果,將訓(xùn)練過程劃分為episodes個回合,其中每回合包含one_episode個時間步[24]。在3、4行中,調(diào)度器獲取當前時間步的狀態(tài),并對狀態(tài)進行標準化處理,有助于提高神經(jīng)網(wǎng)絡(luò)的訓(xùn)練速度和穩(wěn)定性。7行進行了任務(wù)卸載和資源分配。在模型訓(xùn)練過程(即13~19行)中,當ERB中的經(jīng)驗數(shù)量不小于其容量的一半時,開始訓(xùn)練模型并更新參數(shù)。從ERB中隨機取樣batch,對其中的每條經(jīng)驗計算當前Q值Qθ(si,ai)和目標Q值Qtargetθt(si,ai)(16行):
Qθ(si,ai)=Netcurrentθ(si,ai)(29)
式(29)表示在Netcurrentθ(si)中,a=ai時的Q值[28]。
Qtargetθt(si,ai)=ri+γ[Nettargetθt(si+1,ai+1)](30)
ai+1由式(27)計算可得,可解決Qtargetθt(si,ai)過度估計的問題;Nettargetθt(si,ai)的定義同式(29)?;诖?,可構(gòu)建損失函數(shù)L(θ),以更新Netcurrentθ的參數(shù)(17、18行):
L(θ)=1batch_size(Qθ-Qtargetθt)2(31)
其中:Qθ和Qtargetθt是分別由batch中每條經(jīng)驗的Qθ(si,ai)和Qtargetθt(si,ai)組成的向量。
每訓(xùn)練update_frequency次后,更新Nettargetθt的參數(shù)(20、21行)。在每個回合末,記錄該回合得到的累積獎勵episode_reward,即回合中獲取的獎勵之和(22行):
episode_reward=∑i∈one_episoderi(32)
然后衰減探索率ε,但衰減到一定程度后會保持一個最小的探索率,即ε_min(23行)。
算法1 任務(wù)卸載和資源分配算法ND3QN
輸入:時間步i時的si。
輸出:ai,Netcurrentθ。
/* episodes:訓(xùn)練的總回合數(shù);one_episode:每回合的時間步數(shù)量;
ε:探索率;ε_min:最小探索率;ε_decay:探索衰減率;
buffer_size:ERB的容量;batch_size:批量大小 */
1 初始化ERB和Netcurrentθ,i=0,count=0; // count為計數(shù)器
2 令θt=θ,并初始化Nettargetθt;
3 si=getState (); // 獲取si
4 si=preprocess(si); // 對si進行標準化處理
5 for episode in range(episodes):
6 for _ in range(one_episode):
7
輸入si,輸出ai; // 式(26),卸載決策與資源分配
8
獲取ri;
9
si+1=getState ();
10
si+1=preprocess(si+1);
11
ERB.push(si,ai,ri,si+1); // 存儲經(jīng)驗到ERB中
12
si=si+1;
13
if ERB.getlength ()≥0.5×buffer_size:
14 從ERB中隨機取樣batch_size的經(jīng)驗,記為batch;
15 for each 經(jīng)驗 in batch:
16 計算Qθ(si,ai)和Qtargetθt(si,ai);
17 將batch中所有的Qθ(si,ai)和Qtargetθt(si,ai)分別組成Qθ和Qtargetθt;
18 最小化L(θ),并更新Netcurrentθ的參數(shù)θ; // 式(31)
19 count=count+1;
20
if count % update_frequency==0:
21 θt=θ; // 更新Nettargetθt參數(shù)
22 記錄episode_reward;
23 ε=max(ε_min,ε×ε_decay); // 衰減ε
3.4 復(fù)雜度分析
由3.2節(jié)內(nèi)容可知,輸入層和輸出層的節(jié)點數(shù)分別為|si|和|Euclid Math TwoAAp|。為不失一般性,設(shè)定隱藏層中的優(yōu)勢塊和價值塊獨立擁有L層神經(jīng)元,優(yōu)勢塊的每層神經(jīng)元數(shù)量為hA1,hA2,…,hAL,價值塊的每層神經(jīng)元數(shù)量為hV1,hV2,…,hVL,其中,hAL=|Euclid Math TwoAAp|,hVL=1。
因此,在神經(jīng)網(wǎng)絡(luò)的前向傳播中,優(yōu)勢塊的時間復(fù)雜度為O(|si|×hA1+∑L-1i=1hAi×hAi+1),價值塊的時間復(fù)雜度為O(|si|×hV1+∑L-1i=1hVi×hVi+1),而在輸出層中,由式(28)可知其時間復(fù)雜度為O(|Euclid Math TwoAAp|)。為便于表述,記T=|si|×hA1+∑L-1i=1hAi×hAi+1+|si|×hV1+∑L-1i=1hVi×hVi+1+|Euclid Math TwoAAp|,所以前向傳播的時間復(fù)雜度即為O(T)。
由于參數(shù)的空間復(fù)雜度主要由權(quán)重矩陣決定,即可知其空間復(fù)雜度為O(T)。ERB的空間復(fù)雜度為O(buffer_size)。因此,在訓(xùn)練過程中,ND3QN的空間復(fù)雜度為O(T+buffer_size);在測試過程中,其空間復(fù)雜度為O(T)。
所以當邊云環(huán)境中的VM數(shù)量以及神經(jīng)網(wǎng)絡(luò)的復(fù)雜程度增加時,算法的時空復(fù)雜度會隨之增大。
4 實驗與結(jié)果分析
實驗采用基于Java的CloudSim[29]仿真工具以模擬邊云環(huán)境和任務(wù)的生成,使用Python 3.10實現(xiàn)ND3QN算法,并且使用仿真任務(wù)數(shù)據(jù)集進行訓(xùn)練和測試。
4.1 實驗設(shè)置
在邊云環(huán)境中,設(shè)定ES的數(shù)量e為4,每臺ES擁有5臺異構(gòu)且資源受限的VM;CS的數(shù)量c為1,每臺CS擁有3臺異構(gòu)且資源豐富的VM。VM的配置參考阿里云云服務(wù)器ECS(https://www.aliyun.com/price/product?spm=5176.8789780.J_4267641240.6.6f8539fbvqxYOw#/commodity/vm),類似于文獻[15],如表1所示,其中MIPS由對應(yīng)VM的配置而設(shè)定。espropagationm和cspropagationm分別設(shè)定為1 ms和10 ms[13, 15]。
在任務(wù)數(shù)據(jù)集的生成過程中,采用了任務(wù)到達率和五元組(vLengthi,vFileSizei,vDeadlinei,vRAMi,vCPUi)來控制任務(wù)的生成。任務(wù)到達率是任務(wù)數(shù)據(jù)集的大小與時間周期(單位為小時)的比值,表示在每小時內(nèi)生成的任務(wù)數(shù)量。為便于描述,下文不顯式給出任務(wù)到達率,而是給出任務(wù)數(shù)據(jù)集大小和時間周期。vLengthi的取值為[100,550]且步長為50,單位是百萬條指令(million instructions, MI)[15];vFileSizei的取值為[5,50]且步長為10,單位為KB;vDeadlinei的取值為[0.5,0.59],單位為s;vRAMi的取值為[25,100]且步長為8,單位為MB;vCPUi從{1,2,3,4}中隨機取樣,取樣概率對應(yīng)為{0.55,0.4,0.025,0.05}。
通過控制任務(wù)到達率和五元組內(nèi)的變量取值,可以隨機生成大量的異構(gòu)任務(wù),以充分模擬IoT設(shè)備在現(xiàn)實環(huán)境中的任務(wù)生成特性。算法的重要參數(shù)如表2所示。
4.2 評價指標
評價指標分別是累積獎勵、任務(wù)丟棄率和加權(quán)成本,以衡量算法在任務(wù)卸載和資源分配中的性能表現(xiàn)。其中,累積獎勵由式(32)可得;任務(wù)丟棄率表示任務(wù)被丟棄的數(shù)量比例;加權(quán)成本由式(11)可得。顯然,累積獎勵越大,任務(wù)丟棄率和加權(quán)成本越小,則表明算法性能更優(yōu)越。
4.3 超參數(shù)和收斂性
為了驗證DRL算法的收斂性,并研究超參數(shù)對算法的累積獎勵和任務(wù)丟棄率的收斂值和收斂速度的影響,實驗采用了時間周期為8 h的、共500個回合的任務(wù)數(shù)據(jù)集,探討在訓(xùn)練過程中不同的探索率ε和學(xué)習(xí)率lr對ND3QN的性能影響,如圖4、5所示。
ε表示agent對環(huán)境的探索程度。在圖4(a)(b)中,當εlt;0.2時,算法的收斂值分別是最小的和最大的;當ε≥0.2時,算法收斂值幾乎相等且達到最優(yōu),但隨著ε的增大,收斂速度卻都不斷降低。因此當ε=0.2時,算法的收斂速度最快,收斂值最優(yōu),所以后續(xù)實驗均采用ε=0.2,以獲得最優(yōu)性能。
lr決定了算法在最小化L(θ)時的速度。在圖5(a)(b)中,當lr=0.1和lr=0.01時,算法振蕩,無法收斂,但后者累積獎勵的均值明顯大于前者,后者任務(wù)丟棄率的均值顯然小于前者;當lr≤0.001時,算法收斂值幾乎相等且達到最優(yōu),但lr=0.000 1時的收斂速度更快。這表明過大的lr可能導(dǎo)致收斂不穩(wěn)定,過小的lr則會使收斂速度降低,為了使算法能夠平穩(wěn)快速地收斂,后續(xù)實驗均采用lr=0.000 1。
4.4 基線算法對比結(jié)果
將ND3QN與以下三種基線算法進行對比:
a)隨機策略(Random)[24, 30]。對于一個任務(wù),隨機做出一個卸載決策。
b)僅邊緣執(zhí)行(only edge, OE)[6]。所有的任務(wù)均卸載至ES,不卸載至CS。
c)Double DQN(DDQN)[8, 13]。這是一個常用的DRL算法,經(jīng)過改造,從而適應(yīng)本文的邊云環(huán)境。
4.4.1 訓(xùn)練情況對比
實驗采用了時間周期為8 h的、共500個回合的任務(wù)數(shù)據(jù)集,研究在訓(xùn)練過程中,ND3QN與基線算法的累積獎勵和任務(wù)丟棄率的變化情況,如圖6所示。在圖6(a)(b)中,隨著訓(xùn)練的進行,ND3QN和DDQN的累積獎勵和任務(wù)丟棄率在前25回合分別急劇上升和急劇下降,在后期則都緩慢收斂,但ND3QN的累積獎勵更多,任務(wù)丟棄率更低且更快地收斂。Random和OE的累積獎勵和任務(wù)丟棄率均在一定范圍內(nèi)相對平穩(wěn)地波動,但均比其他兩種算法更差,這表明這兩種算法無法適應(yīng)高度隨機與動態(tài)的邊緣環(huán)境和異構(gòu)任務(wù)。因此,ND3QN在訓(xùn)練過程中的收斂速度、累積獎勵和任務(wù)丟棄率都比基線算法更優(yōu)。同時,ND3QN在實際部署中亦能更快地完成訓(xùn)練。
4.4.2 算法測試性能對比
圖7展示了在時間周期為8 h、共計300個回合的任務(wù)數(shù)據(jù)集中,探討在測試過程中,ND3QN和基線算法的累積獎勵和任務(wù)丟棄率的變化情況。在圖7(a)中,random和OE的累積獎勵遠小于ND3QN和DDQN的累積獎勵,DDQN在前240個回合的累積獎勵呈緩慢上升的趨勢,在后60個回合的累積獎勵才趨于穩(wěn)定,而ND3QN的累積獎勵則始終穩(wěn)定且大于DDQN的累積獎勵。在圖7(b)中,random和OE的任務(wù)丟棄率遠大于ND3QN和DDQN的任務(wù)丟棄率,DDQN的任務(wù)丟棄率則是呈現(xiàn)不斷下降、直至收斂的趨勢,但ND3QN 的任務(wù)丟棄率始終保持最低的水平。
因此,在測試過程中,ND3QN累積獎勵和任務(wù)丟棄率都優(yōu)于基線算法,這表明ND3QN在邊云環(huán)境中部署時,可實現(xiàn)高效的任務(wù)卸載決策和資源分配。
任務(wù)卸載算法需要適用于不同的任務(wù)生成率,以確保算法在不同的任務(wù)負載情況下都可以做出最優(yōu)的任務(wù)卸載決策。如圖8所示,實驗探討了在任務(wù)回合數(shù)為200時,算法在不同時間周期下的性能表現(xiàn)(縱坐標為平均每回合的累積獎勵、任務(wù)丟棄率和加權(quán)成本),即研究不同任務(wù)生成率對算法性能的影響。在圖8(a)中,ND3QN的累積獎勵均比random和OE的累積獎勵大,而且在時間周期不斷增大的情況下,ND3QN和DDQN的累積獎勵快速增大,但ND3QN的增大速度更快。當時間周期等于2 h,ND3QN的累積獎勵開始大于DDQN的累積獎勵。在圖8(b)中,ND3QN 和 DDQN 的任務(wù)丟棄率隨著時間周期的增大而逐漸下降、收斂,但ND3QN 的任務(wù)丟棄率下降速度更快,并在后期保持在最低水平。random和OE的任務(wù)丟棄率明顯大于ND3QN 和 DDQN 的任務(wù)丟棄率。在圖8(c)中,ND3QN 和 DDQN 的加權(quán)成本隨著時間周期的增加而逐步降低,但ND3QN 的下降速度更快。此外,ND3QN的加權(quán)成本比基線算法的加權(quán)成本更低。
因此,在不同的時間周期(即任務(wù)生成率)下,綜合考慮累積獎勵、任務(wù)丟棄率和加權(quán)成本,ND3QN的性能優(yōu)于基線算法。這表明ND3QN在實際部署時,能很好地適應(yīng)不同任務(wù)負載情況下的任務(wù)卸載決策和資源分配。
4.5 消融實驗
ND3QN對算法的狀態(tài)和獎勵函數(shù)做出了改進,為驗證改進點的有效性,設(shè)計了以下消融實驗:
a)baseline algorithm(BA)。該算法在訓(xùn)練和測試的過程中,不考慮上一時間步的狀態(tài)和本文設(shè)計的獎勵函數(shù)。
b)BA+reward improvement(RI)。在BA的基礎(chǔ)上,添加了式(23)的獎勵函數(shù),旨在評估獎勵函數(shù)對算法性能的影響。
c)BA+state improvement(SI)。在BA的基礎(chǔ)上,添加了式(18)的狀態(tài),以分析狀態(tài)對算法性能的貢獻。
d)BA+RI+SI(即ND3QN)。同時使用了式(23)的獎勵函數(shù)和式(18)的狀態(tài),綜合考察改進點對算法的影響。
實驗分為訓(xùn)練和測試兩個過程,分別采用時間周期為8 h、共500個回合的訓(xùn)練數(shù)據(jù)集和時間周期為8 h、共300個回合的測試數(shù)據(jù)集。實驗結(jié)果(如表3所示)表明,在訓(xùn)練過程中,BA+SI 的任務(wù)丟棄率低于BA,而BA+RI的任務(wù)丟棄率高于BA,但BA+RI+SI的任務(wù)丟棄率低于其余三者。此外,在訓(xùn)練過程中出現(xiàn)了BA+RI的任務(wù)丟棄率高于BA的情況,反映了算法的改進不總是存在累加效應(yīng)。某一個改進帶來了性能下降,但與其他改進點結(jié)合時,可能獲得整體性能的提升。
在測試過程中,BA的任務(wù)丟棄率是全局最高的,而BA+RI+SI擁有最低的任務(wù)丟棄率。這說明了SI可為卸載決策提供更多上下文,RI能夠更好地引導(dǎo)學(xué)習(xí)過程,進而提高算法決策質(zhì)量和資源分配能力,SI和RI兩者結(jié)合使用時效果最佳。因此,消融實驗的結(jié)果體現(xiàn)了改進點的有效性。
5 結(jié)束語
邊云環(huán)境因其高度隨機性和動態(tài)性的特點,面臨著異構(gòu)任務(wù)高效卸載的巨大挑戰(zhàn)。因此,本文提出了一個基于DRL的ND3QN算法,用于邊云環(huán)境中的任務(wù)高效卸載和資源分配。ND3QN聯(lián)合最小化任務(wù)完成時間和費用,并創(chuàng)新地構(gòu)建了包含環(huán)境動態(tài)信息的狀態(tài),由此可用簡單的神經(jīng)網(wǎng)絡(luò)捕捉環(huán)境的復(fù)雜動態(tài)信息;設(shè)計了能有效指導(dǎo)算法訓(xùn)練的獎勵函數(shù),增強算法學(xué)習(xí)效果;實現(xiàn)了細粒度卸載,從而滿足任務(wù)對資源的需求,提高資源利用率。實驗結(jié)果表明,在不同探索率和學(xué)習(xí)率下,ND3QN的訓(xùn)練收斂速度和收斂值存在明顯差異;與基線算法相比,ND3QN在任務(wù)丟棄率、完成時間和費用等方面具有更好的表現(xiàn);消融實驗證明了狀態(tài)和獎勵函數(shù)改進的有效性。這表明ND3QN具有強大的泛化能力,能很好地適應(yīng)高度隨機和動態(tài)的邊云環(huán)境。未來將擴展加權(quán)成本模型以考慮更多影響卸載決策的因素,如能耗;允許任務(wù)本地處理。此外,設(shè)定約束條件的優(yōu)先級,懲罰函數(shù)根據(jù)優(yōu)先級獲得不同的懲罰值。
參考文獻:
[1]Hu Pengfei, Dhelim S, Ning Huansheng, et al. Survey on fog computing: architecture, key technologies, applications and open issues[J]. Journal of Network and Computer Applications, 2017, 98: 27-42.
[2]Goudarzi M, Palaniswami M, Buyya R. Scheduling IoT applications in edge and fog computing environments: a taxonomy and future directions[J]. ACM Computing Surveys, 2022. 55(7): 1-41.
[3]Walia G K, Kumar M, Gill S S. AI-empowered fog/edge resource management for IoT applications: a comprehensive review, research challenges, and future perspectives[J]. IEEE Communications Surveys amp; Tutorials, 2024, 26(1): 619-669.
[4]Hsieh L T, Liu Hang, Guo Yang, et al. Deep reinforcement learning-based task assignment for cooperative mobile edge computing[J]. IEEE Trans on Mobile Computing, 2024, 23(4): 3156-3171.
[5]張帆, 王亞剛, 劉子杰. 基于延遲敏感應(yīng)用的邊云協(xié)同方案[J]. 計算機應(yīng)用研究, 2022, 39(2): 543-547. (Zhang Fan, Wang Yagang, Liu Zijie. Edge cloud collaboration scheme based on delay sensitive application[J]. Application Research of Computers, 2022, 39(2): 543-547.)
[6]Goudarzi M, Wu Huaming, Palaniswami M, et al. An application placement technique for concurrent IoT applications in edge and fog computing environments[J]. IEEE Trans on Mobile Computing, 2021, 20(4): 1298-1311.
[7]Shang Xiaojun, Huang Yaodong, Liu Zhenhua, et al. Reducing the service function chain backup cost over the edge and cloud by a self-adapting scheme[C]// Proc of IEEE Conference on Computer Communications. Piscataway, NJ: IEEE Press, 2020: 2096-2105.
[8]Goudarzi M, Rodriguez M A, Sarvi M, et al. μ-DDRL: a QoS-aware distributed deep reinforcement learning technique for service offloa-ding in fog computing environments[J]. IEEE Trans on Services Computing, 2024, 17(1): 47-59.
[9]Gubbi J, Buyya R, Marusic S, et al. Internet of Things (IoT): a vision, architectural elements, and future directions[J]. Future Ge-neration Computer Systems, 2013, 29(7): 1645-1660.
[10]Goudarzi M, Palaniswami M, Buyya R. A fog-driven dynamic resource allocation technique in ultra dense femtocell networks[J]. Journal of Network and Computer Applications, 2019, 145: 102407.
[11]Al-Fuqaha A, Guizani M, Mohammadi M, et al. Internet of Things: a survey on enabling technologies, protocols, and applications[J]. IEEE Communications Surveys amp; Tutorials, 2015, 17(4): 2347-2376.
[12]Srichandan S K, Majhi S K, Jena S, et al. A secure and distributed placement for quality of service-aware IoT requests in fog-cloud of things: a novel joint algorithmic approach[J]. IEEE Access, 2024, 12: 56730-56748.
[13]Goudarzi M, Palaniswami M, Buyya R. A distributed deep reinforcement learning technique for application placement in edge and fog computing environments[J]. IEEE Trans on Mobile Computing, 2023, 22(5): 2491-2505.
[14]Liu Yiming, Yu F R, Li Xi, et al. Distributed resource allocation and computation offloading in fog and cloud networks with non-orthogonal multiple access[J]. IEEE Trans on Vehicular Techno-logy, 2018, 67(12): 12137-12151.
[15]Tuli S, Ilager S, Ramamohanarao K, et al. Dynamic scheduling for stochastic edge-cloud computing environments using A3C learning and residual recurrent neural networks[J]. IEEE Trans on Mobile Computing, 2022, 21(3): 940-954.
[16]Zhou Guangyao, Wen Ruiming, Tian Wenhong, et al. Deep reinforcement learning-based algorithms selectors for the resource scheduling in hierarchical cloud computing[J]. Journal of Network and Computer Applications, 2022, 208: 103520.
[17]Wang Zhiyu, Goudarzi M, Gong Mingming, et al. Deep reinforcement learning-based scheduling for optimizing system load and response time in edge and fog computing environments[J]. Future Generation Computer Systems, 2024, 152: 55-69.
[18]Zhang Jiangjiang, Ning Zhenhu, Ali R H, et al. A many-objective ensemble optimization algorithm for the edge cloud resource scheduling problem[J]. IEEE Trans on Mobile Computing, 2024, 23(2): 1330-1346.
[19]Laboni N M, Safa S J, Sharmin S, et al. A hyper heuristic algorithm for efficient resource allocation in 5G mobile edge clouds[J]. IEEE Trans on Mobile Computing, 2024, 23(1): 29-41.
[20]Natesha B V, Guddeti R M R. Meta-heuristic based hybrid service placement strategies for two-level fog computing architecture[J]. Journal of Network and Systems Management, 2022, 30(3): 47.
[21]Yakubu I Z, Murali M. An efficient meta-heuristic resource allocation with load balancing in IoT-fog-cloud computing environment[J]. Journal of Ambient Intelligence and Humanized Computing, 2023, 14(3): 2981-2992.
[22]Ramezani S F, Ghasemi A, Toroghi H A, et al. Task scheduling in edge-fog-cloud architecture: a multi-objective load balancing approach using reinforcement learning algorithm[J]. Computing, 2023, 105(6): 1337-1359.
[23]Chen Xing, Hu Shengxi, Yu Chujia, et al. Real-time offloading for dependent and parallel tasks in cloud-edge environments using deep reinforcement learning[J]. IEEE Trans on Parallel and Distributed Systems, 2024, 35(3): 391-404.
[24]Tang Ming, Wong V W S. Deep reinforcement learning for task offloading in mobile edge computing systems[J]. IEEE Trans on Mobile Computing, 2022, 21(6): 1985-1997.
[25]Lu Jialin, Yang Jing, Li Shaobo, et al. A2C-DRL: dynamic scheduling for stochastic edge-cloud environments using A2C and deep reinforcement learning[J]. IEEE Internet of Things Journal, 2024, 11(9): 16915-16927.
[26]Tripathy S S, Bebortta S, Haque M I U, et al. Toward multi-modal deep learning-assisted task offloading for consumer electronic devices over an IoT-fog architecture[J]. IEEE Trans on Consumer Electronics, 2024, 70(1): 1656-1663.
[27]Wang Ziyu, Schaul T, Hessel M, et al. Dueling network architectures for deep reinforcement learning[C]// Proc of the 33rd International Conference on International Conference on Machine Learning. New York: JMLR.org, 2016: 1995-2003.
[28]Hasselt H V, Guez A, Silver D. Deep reinforcement learning with double Q-learning[C]// Proc of the 30th AAAI Conference on Artificial Intelligence. Palo Alto, CA: AAAI Press, 2016: 2094-2100.
[29]Calheiros R N, Ranjan R, Beloglazov A, et al. CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms[J]. Software: Practice and Experience, 2011, 41(1): 23-50.
[30]Lou Jiong, Tang Zhiqing, Zhang Songli, et al. Cost-effective scheduling for dependent tasks with tight deadline constraints in mobile edge computing[J]. IEEE Trans on Mobile Computing, 2023, 22(10): 5829-5845.