摘要: 針對預(yù)測性維護(hù)(predictive maintenance,PdM)人工參與資源調(diào)配的問題,提出了一種基于改進(jìn)人工蜂群算法(artificial bee colony,ABC)的計算卸載和資源分配方案。該方法利用遺傳算法的進(jìn)化思想,改進(jìn)了偵察蜂的搜尋步驟,解決了傳統(tǒng)人工蜂群算法容易陷入局部最優(yōu)解、多樣性不足等缺點(diǎn),能夠根據(jù)設(shè)備故障率生成維護(hù)成本最低的資源分配方案。仿真實(shí)驗(yàn)結(jié)果表明,該算法較其他算法收斂速度更快、收斂質(zhì)量更高、減少維護(hù)成本更明顯,能夠有效解決PdM場景的計算卸載和資源分配問題。
關(guān)鍵詞: 移動邊緣計算(MEC); 預(yù)測性維護(hù)(PdM); 任務(wù)卸載; 資源分配
中圖分類號: TP311
文獻(xiàn)標(biāo)志碼: A
文章編號: 1671-6841(2024)06-0039-07
DOI: 10.13705/j.issn.1671-6841.2023016
Task Offloading and Resource Allocation Joint Optimization for
Predictive Maintenance
ZHANG Bo, WANG Chenghao, LI Junfeng
(School of Cyber Science and Engineering, Zhengzhou University, Zhengzhou 450002, China)
Abstract: To address the problem of manual involvement in resource allocation for predictive maintenance (PdM), a computational offloading and resource allocation scheme based on an improved artificial bee colony(ABC) algorithm was proposed. The method utilized the evolutionary idea of genetic algorithm to improve the searching step of scout bees. The shortcomings of traditional artificial bee colony algorithms such as easy to fall into local optimal solutions and insufficient diversity were solved. The ability to generate the lowest maintenance cost resource allocation plan based on equipment failure rates.The simulation experimental results showed that the algorithm had faster convergence speed, higher convergence quality and more obvious reduction of maintenance cost than other algorithms, and could effectively solve the computational offloading and resource allocation problems of PdM scenarios.
Key words: mobile edge computing(MEC); predictive maintenance(PdM); task offloading; resourse allocation
0 引言
設(shè)備維護(hù)是工業(yè)生產(chǎn)中的一項(xiàng)重要組成部分,對成本和設(shè)備可靠性有重大的影響,一定程度上影響公司的競爭力。PdM的基本概念是在傳感數(shù)據(jù)的幫助下監(jiān)測機(jī)器的健康狀況,以確定機(jī)器未來可能出現(xiàn)的退化或故障。PdM通過在必要時進(jìn)行維護(hù)活動,幫助公司優(yōu)化策略,而不是讓設(shè)備或組件出現(xiàn)故障后,或在其仍有使用壽命時進(jìn)行更換。使用PdM可以減少計劃內(nèi)和計劃外停機(jī)時間,降低維護(hù)成本,減少不必要的庫存和工作設(shè)備上不必要的維護(hù)活動[1]。例如,文獻(xiàn)[2]系統(tǒng)地概述了基于深度學(xué)習(xí)(deep learning,DL)的機(jī)器健康監(jiān)測系統(tǒng),包括四類DL架構(gòu):自動編碼器、深度信念網(wǎng)絡(luò)(DBN)、CNN和循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN),大部分工作針對故障識別和分類。文獻(xiàn)[3]提出了一個簡單的系統(tǒng)健康管理體系結(jié)構(gòu),并回顧了自動編碼器、CNN和RNN在系統(tǒng)健康管理中的應(yīng)用。以上大部分PdM的研究都針對提高PdM的準(zhǔn)確性以及完整的PdM方法,對于PdM任務(wù)的處理或分配的研究還很少。
由于PdM活動會產(chǎn)生大量數(shù)據(jù),且有實(shí)時性要求,故本地計算以及卸載到云端的辦法基本無法滿足PdM的需求。移動邊緣計算(mobile edge computing,MEC)可以提供強(qiáng)大的通信、存儲、網(wǎng)絡(luò)和通信能力[4-5]。邊緣計算是指允許在網(wǎng)絡(luò)邊緣、云服務(wù)的下游數(shù)據(jù)和物聯(lián)網(wǎng)服務(wù)的上游數(shù)據(jù)上執(zhí)行計算的使能技術(shù),廣泛應(yīng)用于工業(yè)物聯(lián)網(wǎng)、無人機(jī)和車聯(lián)網(wǎng)[6]。與本地計算相比,邊緣計算可以克服終端設(shè)備計算能力有限的限制。與將計算卸載到遠(yuǎn)程云相比,邊緣計算可以避免將某些任務(wù)卸載到遠(yuǎn)程云造成的高延遲。如文獻(xiàn)[7]考慮了移動設(shè)備和MEC服務(wù)器之間的帶寬限制,以及MEC服務(wù)器上的CPU資源有限的情況下,在相應(yīng)的時延、頻譜資源和計算資源的約束下,提出了吞吐量最大化問題。文獻(xiàn)[8-9]均設(shè)置最大延遲約束,限制時間開銷都不得超過最大可容忍延遲,考慮不限制最大可容忍延遲,而是根據(jù)延遲時間構(gòu)建成本函數(shù)。
本文目標(biāo)是在PdM場景下,給出時間軟約束,即不具體約束延遲時間的條件下,使維護(hù)成本為第一優(yōu)化目標(biāo)。采用多個MEC服務(wù)器協(xié)同計算,利用邊緣計算探索高效的資源分配和任務(wù)卸載方案,最大限度使得整個PdM的成本最小??紤]任務(wù)之間分配資源的數(shù)量,給出優(yōu)先級的定義,并尋找高效的任務(wù)卸載和資源分配方案。具體來說,將最終的維護(hù)成本作為最終的優(yōu)化目標(biāo),據(jù)此制定了一個任務(wù)卸載和資源分配問題,并且證明其是NP-hard的。為了解決該問題,本文提出了一種低復(fù)雜度的算法,一部分是受進(jìn)化策略啟發(fā)的任務(wù)卸載算法,結(jié)合了人工蜂群算法和遺傳算法。另一部分是故障優(yōu)先資源分配算法,能夠在全局搜索更優(yōu)的任務(wù)卸載方案,考慮任務(wù)卸載決策與計算資源分配之間的依賴性,使兩種算法之間相互作用。
1 系統(tǒng)模型與問題描述
1.1 邊緣計算延遲模型
本節(jié)詳細(xì)介紹卸載模型。有多個設(shè)備表示為N={N1,N2,…,Ni,…,Nn},設(shè)備在運(yùn)行過程中會產(chǎn)生PdM需求,產(chǎn)生PdM任務(wù)集合T={T1,T2,…,Ti,…,Tn},在設(shè)備的周圍部署用K表示的邊緣服務(wù)器K={K1,K2,…,Ki,…,Kn}。當(dāng)執(zhí)行PdM任務(wù)時,任務(wù)需要向邊緣基站卸載,當(dāng)設(shè)備Ni的全部任務(wù)Ti結(jié)束時,可認(rèn)為一個PdM的結(jié)束。一個邊緣服務(wù)器可以表示為K={R,F(xiàn)},其中:R為任務(wù)卸載方案;F為資源分配方案,記錄分配給邊緣服務(wù)器上的任務(wù)。
每個任務(wù)都可以卸載到附近的邊緣服務(wù)器上,但限制設(shè)備Ni一次只能提交一個任務(wù)Ki。任意任務(wù)Ti可以用5個項(xiàng)目來描述,T={D,c,λ,α,τ},其中:D是任務(wù)T的數(shù)據(jù)大小;c表示T的處理密度;λ為任務(wù)上傳時的設(shè)備故障率;α為卸載決策變量,即卸載的數(shù)據(jù)量占任務(wù)Ti總數(shù)據(jù)量的比例。α=0時,任務(wù)T局部處理,若α=1,任務(wù)T將被完全卸載。此外,大小為αD的數(shù)據(jù)將被卸載到邊緣服務(wù)器,(1-α)D的數(shù)據(jù)將被本地處理。τ為處理結(jié)果的數(shù)據(jù)大小與Ti的數(shù)據(jù)大小之比[10]。PdM的執(zhí)行延遲是指從初始子任務(wù)開始到最后一個子任務(wù)結(jié)束的時間。我們采用一種非搶占式的任務(wù)調(diào)度策略,即只要一個子任務(wù)沒有完成,它的執(zhí)行就不會被中斷。
本地計算的核心數(shù)為g1,β表示為可并行部分,分配給本地計算的每個核心的處理能力為fl。本地將計算(1-α)D比特數(shù)據(jù)的任務(wù),包括串行部分tls=c(1-β)(1-α)D/fl和可并行部分tlp=cβ(1-α)D/flg1,則本地計算時間可以表達(dá)為
tl=tls+tlp=c(1-α)Dfl(1-β+βg1)。(1)
通過以上分析,可以得到αD位數(shù)據(jù)到邊緣的傳輸延遲。將αD位的數(shù)據(jù)卸載后,由邊緣服務(wù)器處理數(shù)據(jù)。用g2表示分配給邊緣處理任務(wù)的核數(shù),設(shè)fe表示邊緣服務(wù)器每個核的處理能力(fefl),可串行部分表示為tes=c(1-β)αD/fe,可并行部分表示為tep=cβαD/feg2,邊緣計算時間可以表示為
te=tes+tep=cαDfe(1-β+βg2)。(2)
任務(wù)Ti的數(shù)據(jù)可以通過無線通信鏈路卸載到邊緣。對于數(shù)據(jù)傳輸速率,用r1表示。根據(jù)上述分析,αD位數(shù)據(jù)卸載到邊緣的傳輸延時表示為
tup=αDr1,(3)
則分配到邊緣計算的總耗時為
toff=te+tup。(4)
任務(wù)Ti處理完畢后,將結(jié)果返回給終端設(shè)備。取r2為返回結(jié)果過程中的數(shù)據(jù)傳輸速率,與卸載數(shù)據(jù)速率相似。根據(jù)上面的分析,τD結(jié)果返回的傳輸延遲可以表示為
tdown=τDr2。(5)
由以上分析可知,處理任務(wù)Ti的總延遲是本地計算時間、邊緣計算時間、卸載傳輸延遲和返回結(jié)果傳輸延遲的組合,且邊緣計算和本地計算同時進(jìn)行,則總延遲公式可表示為
td=m864ff261324bfcebe0ff2e478c50f1957b029037fa6d8b1048fbb7a40821ec6fax{tl,te}+tup+tdown。(6)
1.2 維護(hù)成本模型
1) 設(shè)備故障率模型 我們假設(shè)λ為任務(wù)在t時刻的故障率,ak為壽命降低因子,bk為故障率增加因子(0<ak<1,0<bk<1)。離散隨機(jī)變量tk表示從上次實(shí)現(xiàn)預(yù)測性維護(hù)到下一次實(shí)現(xiàn)的累計運(yùn)行時間,設(shè)備進(jìn)行第k次預(yù)測性維護(hù)后的故障率可表示為分段連續(xù)變量[11],
λk+1(t)=bkλk(t+aktk)。(7)
故障率在初始狀態(tài)λ1(t)的變化趨勢可以通過測試數(shù)據(jù)得到。故障率的變化隨著預(yù)測性維護(hù)的周期進(jìn)行,任務(wù)的卸載權(quán)重會發(fā)生變化,任務(wù)權(quán)重將會影響任務(wù)的卸載順序。
2) 維護(hù)成本 當(dāng)設(shè)備發(fā)生故障進(jìn)行維護(hù)活動時的成本表示為糾正性更換成本(Cc),我們假設(shè)在PdM中涉及的糾正性維修成本為C[1],
C=Cc(∑Mk=1∫tk0λkdt+∫ε0λM+1dt),(8)
其中:ε表示從上一次PdM活動到計劃生產(chǎn)周期P結(jié)束的剩余時間。一個預(yù)測性維護(hù)周期包括維護(hù)時間與延遲時間,M表示計劃生產(chǎn)周期P中PdM的循環(huán)次數(shù),M=P/(td+tp)。
1.3 問題描述
我們提出了延遲軟約束的任務(wù)計算資源分配問題。給定一組設(shè)備N及其產(chǎn)生的任務(wù)T,優(yōu)化問題定義為
min{∑NR,F(xiàn)C}, i∈N。(9)
上述優(yōu)化問題主要通過調(diào)整任務(wù)卸載方案R和資源分配方案F,使所有設(shè)備的維護(hù)成本最小化。公式(10)約束卸載的總計算時間必須小于任務(wù)全部在本地的計算時間,
ti(te,te+tl)≤tli,i∈N。(10)
公式(11)限制分配到Ti的計算資源之和不大于邊緣服務(wù)器的可用總計算能力,
∑ni=1fli≤F,Ti∈T,Ki∈K。(11)
公式(12)、(13)約束每次進(jìn)行計算的n個預(yù)測任務(wù)的數(shù)據(jù)大小不能超過邊緣服務(wù)器的總存儲空間,且邊緣服務(wù)器處理任務(wù)時應(yīng)緩存任務(wù)所需的資源,
∑ni=1(1-α)D≤Γ,Ti∈T,Ki∈K,(12)
∑ni=1(1-α)(1-β)D≤Γ,Ti∈T,Ki∈K。(13)
我們將通過類比多重背包問題(multiple knapsack problem,MKP)證明我們提出的計算卸載和資源調(diào)度問題是NP-hard。多重背包問題的一個實(shí)例是將一組表示為{x1,…,xn}的n個任務(wù)分配給一組表示為{y1,…,yn}的m個不同背包,其中每個任務(wù)xi的相關(guān)利潤vi>0,權(quán)重wi>0,背包yi的容量為Wj。MKP是在不超過每個背包容量的情況下,選擇m個不相交的物品子集,使所選物品的總利潤最大化。本文所提問題類似于多重背包問題,任務(wù)xi可以被切分成兩部分:卸載計算和本地計算,卸載比率為α。根據(jù)需求二次把本地計算的任務(wù)卸載到邊緣,以獲得更大的計算效率。類比于背包問題,可證明此問題是NP-hard。1) 任務(wù)T={T1,T2,…,Ti,…,Tn}可以對應(yīng)多重背包問題中的{x1,…,xn}。2) 權(quán)重wi>0可以對應(yīng)卸載任務(wù)中的故障因子λ。3) m個不同背包的{y1,…,yn}類似于邊緣可提供的計算資源量。背包容積Wj為計算資源上限。
2 延遲軟約束的G2ABC算法
啟發(fā)式算法在實(shí)踐中被廣泛應(yīng)用于解決NP-hard問題。文獻(xiàn)[12-13]改進(jìn)貪心思想結(jié)合啟發(fā)式算法來解決NP-hard問題。文獻(xiàn)[14]共同研究了邊緣服務(wù)器布置和應(yīng)用分配問題,提出了一種基于局部搜索的啟發(fā)式算法來有效解決該問題。由于容易陷入局部最優(yōu)解,并不適合解決PdM問題,因此我們用多種啟發(fā)式算法,利用遺傳算法(GA)和人工蜂群算法(ABC)的優(yōu)點(diǎn)從全局提出了一種基于GA-ABC算法的卸載和資源分配方法(G2ABC)。此算法包括兩部分:1) 算法將為每個任務(wù)選擇計算邊緣節(jié)點(diǎn);2) 算法將決定邊緣節(jié)點(diǎn)的多少資源分配給任務(wù)。提出的算法主要關(guān)注獲得更低的維護(hù)成本、更高的資源利用率。
2.1 任務(wù)卸載算法
ABC算法是一種能夠擺脫局部最小值的優(yōu)化技術(shù),可以有效地用于模擬蜜蜂覓食行為的多變量、多模態(tài)函數(shù) [15]。在ABC算法中,人工蜜蜂的蜂群包含三組蜜蜂:雇傭蜜蜂、旁觀蜂和偵察兵。在跳舞區(qū)等待決定選擇食物來源的蜜蜂被稱為旁觀蜂,而前往自己之前訪問過食物來源的蜜蜂被稱為雇傭蜜蜂,進(jìn)行隨機(jī)搜索的蜜蜂被稱為偵察蜂。ABC算法多用于調(diào)度問題,例如文獻(xiàn)[16]利用改進(jìn)的人工蜂群算法解決無人機(jī)航跡規(guī)劃問題,加快了求解航跡的收斂速度,提高了航跡規(guī)劃效率和穩(wěn)定性。
在ABC算法中,食物來源的位置代表了優(yōu)化問題的一個可能解,食物來源的花蜜量對應(yīng)于相關(guān)解的質(zhì)量(適應(yīng)度)。ABC生成隨機(jī)分布的初始種群P(G=0)的SN解(食物來源位置),其中SN表示種群大小。每個食物來源是一個E維向量,其中E為優(yōu)化參數(shù)個數(shù)。初始化后,位置(解)的填充被反復(fù)循環(huán),B=1,2,…,Bmax,表示雇傭蜜蜂、旁觀蜂和偵察蜂的搜索過程。雇傭蜂或旁觀蜂在尋找新的食物來源時,會對記憶中的位置進(jìn)行修正,并測試新來源的花蜜量(適合度值)[17]。
遺傳算法在由基因和適應(yīng)度函數(shù)組成的類染色體數(shù)據(jù)結(jié)構(gòu)上進(jìn)行遺傳表示,初始化一個解種群,然后依靠生物啟發(fā)的算子(如突變、交叉和選擇)對其進(jìn)行改進(jìn)。
利用上述算法優(yōu)點(diǎn),提出一個改進(jìn)ABC算法的任務(wù)卸載方案。借鑒遺傳算法的思想,對ABC算法中偵察蜂的搜索過程進(jìn)行改進(jìn),其中修改的部分如下。
1) 食物源 食物源表示為FS=<O,Z,C>,其中:O表示任務(wù)卸載方案;Z表示資源分配方案;C為PdM過程對應(yīng)任務(wù)卸載和資源分配方案下的總成本。我們將FS的總集合表示為FSA [18],目的是為任務(wù)T在邊緣服務(wù)器上找到一個合適的卸載與分配方案,使得C最小化。
2)雇傭蜂階段 雇傭蜂從周圍尋找食物并記錄。為了從舊的蜜源獲得一個新的蜜源,ABC算法表達(dá)為
vij=xij+ij(xij-xkj)。(14)
3) 圍觀蜂階段 旁觀蜂選擇食物源取決于與該食物源相關(guān)的概率值pi,計算為
pi=fiti∑SNn=1fitn,(15)
式中:fiti為溶液i被雇傭蜜蜂評價的適應(yīng)度值,該適應(yīng)度值與雇傭蜜蜂位置i處食物源的花蜜量成正比;SN為食物源數(shù)量,等于雇傭蜜蜂數(shù)量(BN)。通過這種方式,雇傭蜂與旁觀蜂交換信息。
4) 偵察蜂階段 在ABC中,當(dāng)原食物源在預(yù)定周期內(nèi)無法產(chǎn)生更優(yōu)解時,部分蜂群會轉(zhuǎn)變?yōu)閭刹旆淙ルS機(jī)尋找新的食物來源。為了避免過快收斂以及陷入局部最優(yōu)解,我們參考了遺傳算法的交叉變異運(yùn)算,并能在未知方向?qū)ふ腋玫慕?,利用遺傳算法的變異過程重新尋找蜂源,從而可以更好地搜索解空間。
根據(jù)上述描述,G2ABC算法具體步驟如下。
算法1 G2ABC
輸入: 食物源的數(shù)量SN,維護(hù)任務(wù)T,邊緣節(jié)點(diǎn)K。
輸出:任務(wù)卸載方案O,資源分配方案Z。
1) FSA=0,初始化輪數(shù)cycle
2) for i=1:SN
3) 為每一個任務(wù)隨機(jī)分配一個邊緣節(jié)點(diǎn)K,將卸載方案表示為O
4) 算法5得到初始資源分配方案Z
5) FS=<O,Z,C>
6) FSA=FS
7) end for
8) while j<cycle
9) 調(diào)用算法2
10) 調(diào)用算法3
11) 調(diào)用算法4
12) end while
13) FS=FSbest
算法1說明了G2ABC的細(xì)節(jié)。在第一行將種群設(shè)置為空完成初始化。首先將種群初始化,隨后對種群進(jìn)行初始化。根據(jù)算法5得到最初的分配方案。隨后進(jìn)行輪轉(zhuǎn)搜索。
算法2 雇傭蜂算法
輸入: 食物源FSA,維護(hù)任務(wù)T,邊緣節(jié)點(diǎn)K。
輸出: 更新的食物源FS。
1) for FSi∈FSA
2) 隨機(jī)選擇食物源j,F(xiàn)Sj∈FSA
3) FSj.O使用算法5更新新的食物源FSj
4) 根據(jù)公式(14)得到食物源FSm
5) FSm.O使用算法5更新新的食物源FSm
6) FS=FSm
7) end for
算法2是雇傭蜂詳細(xì)過程。對于種群中的每個食物源,根據(jù)公式(14)搜索,并生成新的食物源。
算法3 圍觀蜂算法
輸入: 食物源FSA,維護(hù)任務(wù)T,邊緣節(jié)點(diǎn)K。
輸出: 更新的食物源FS。
1) 根據(jù)式(15)概率選擇FSj,F(xiàn)Sj∈FSA
2) 根據(jù)公式(14)得到食物源 FSm
3) FSm.O使用算法4更新新的食物源FSm
4) 對比FSm、FSj更新最優(yōu)食物源FSbest
算法3介紹了圍觀蜂的過程。旁觀蜂和雇傭蜂的過程相似,根據(jù)輪盤對賭搜索出最佳食物源,然后更新最優(yōu)食物源。
算法4 偵察蜂算法
輸入: 食物源FSA,維護(hù)任務(wù)T,邊緣節(jié)點(diǎn)K。
輸出: 更新的食物源FS。
1) forFSi∈FSA
2) if有偵察蜂出現(xiàn)
3) FSi.O使用交叉變異生成新的FSj.O
4) FSm.O使用算法5更新新的食物源FSm
5) end if
6) 更新食物源 FSi=FSm
7) end for
算法4是基于GA優(yōu)化的偵察蜂算法。當(dāng)有偵察蜂出現(xiàn)的時候,步驟2)根據(jù)交叉變異形成新的食物源跳脫出原有解,防止陷入局部最優(yōu)。
2.2 資源分配算法
在PdM活動中,生產(chǎn)設(shè)備由于磨損而不斷退化,故障率不斷上升,合格率不斷下降。定義卸載返回后的故障率作為輔助變量集Λ,定義中間變量
yi=λi/fli(16)
為故障率和分配資源的比值,可以反映資源分配的質(zhì)量。算法需要優(yōu)先對故障率高的任務(wù)分配資源,通過調(diào)整資源分配方案,使每個任務(wù)的中間向量值趨于統(tǒng)一。
算法借鑒了二分搜索的思想,在公式(11)的約束內(nèi)找到一個資源分配方案,使得最終的設(shè)備維護(hù)成本最?。?2],具體算法流程如下。
算法5 故障優(yōu)先資源分配算法
輸入: 任務(wù)卸載方案O,邊緣節(jié)點(diǎn)K,維護(hù)任務(wù)T。
輸出: 資源分配方案Z。
1) for Ki∈K
2) 將Ki上的任務(wù)定義為Tres
3) for Ti∈Tres
4) 平均分配計算資源,根據(jù)式(16)得到集合Λ
5) ymin=min{Λi},ymax=max{Λi}
Y=(ymin+ymax)/2
6) while (y-ymin>0)
7) if 分配的計算資源大于總資源
8) ymax=y
9) else if 分配的計算資源小于總資源
10) ymin=y
11) end if
12) y=(ymin+ymax)/2
13) end while
14) 根據(jù)式(16)得到重新分配的計算資源
15) end for
16) end for
17) 將得出的資源分配方案賦值給F
18) return F
算法5根據(jù)式(16)對任務(wù)進(jìn)行初始資源分配,并且設(shè)定了上、下限。利用二分搜索,在設(shè)定計算資源范圍內(nèi)找到合適的值,并對任務(wù)重新分配資源。
3 仿真驗(yàn)證與分析
首先介紹實(shí)驗(yàn)中的設(shè)置和比較算法,然后討論評價結(jié)果。
根據(jù)文獻(xiàn)[19-20],將邊緣服務(wù)器的通信范圍設(shè)置為500m,邊緣服務(wù)器計算資源設(shè)置為1×109 CPU周期/s,本地計算資源設(shè)置為1×104 CPU周期/s。為了對比不同算法之間的性能,將任務(wù)數(shù)設(shè)置為20、40、60和80個,計算資源分別設(shè)置為1×109、2×109、3×109和4×109 CPU周期/s。
1) 收斂性能。選擇基于ABC的任務(wù)卸載算法和基于GA的任務(wù)卸載算法與G2ABC進(jìn)行比較。所有的算法都使用統(tǒng)一的資源分配算法。
從圖1中我們可以看出G2ABC算法和ABC算法在收斂速度上優(yōu)于GA算法,且G2ABC算法在進(jìn)化策略影響下,200次迭代后的維護(hù)成本顯著小于其他算法。這意味著G2ABC可以快速準(zhǔn)確找到任務(wù)卸載方案。
2) 所有任務(wù)的總維護(hù)成本。為了顯示G2ABC算法適用問題,與隨機(jī)分配算法和貪婪算法進(jìn)行比較。
圖2顯示了不同算法在任務(wù)數(shù)量不同時的維護(hù)成本趨勢,三種算法的結(jié)果都隨著任務(wù)數(shù)的增加而增加。隨機(jī)算法在任務(wù)數(shù)40之前的維護(hù)成本優(yōu)于貪婪算法,而隨著任務(wù)數(shù)增加,貪婪算法的維護(hù)成本逐漸優(yōu)于隨機(jī)算法。對比兩種算法,G2ABC可以保持較低的成本損耗,即G2ABC算法可以得到成本相對最小的資源分配方案。
3) 不同計算資源下的對比。為了對比不同算法在不同計算資源下的性能,將維護(hù)任務(wù)數(shù)設(shè)置為60。
圖3顯示了不同算法在邊緣服務(wù)器計算資源不同時的維護(hù)成本趨勢,三種算法的結(jié)果都隨著資源數(shù)的增加而減少。由于計算資源的增多,可供任務(wù)使用的計算資源增加,計算時間變少,從而維護(hù)成本變低。以資源數(shù)為3×109 CPU周期/s為例,貪婪算法和隨機(jī)算法的維護(hù)成本值分別為232萬元和236萬元,本文算法的維護(hù)成本為175萬元,這說明本文算法在此情況下可得到更少的維護(hù)成本。且在不同邊緣計算資源數(shù)下均有較好的維護(hù)成本。
4 結(jié)論
在本文中,我們對預(yù)測性維護(hù)的計算卸載和資源分配問題進(jìn)行全面的數(shù)學(xué)建模,并且證明此問題是NP-hard的。為了解決這一問題,本文提出了一種G2ABC算法,算法對延遲時間進(jìn)行軟約束,以減少設(shè)備的維護(hù)支出為目標(biāo),找到合適的任務(wù)卸載和資源分配方案。通過實(shí)驗(yàn)表明,對比其他算法,我們的方法可以給出一個合適的任務(wù)卸載和資源分配方案,減少了預(yù)測性維護(hù)成本。
參考文獻(xiàn):
[1] RAN Y Y, ZHOU X, LIN P F, et al. A survey of predictive maintenance: systems, purposes and approaches[EB/OL]. (2019-12-12)[2022-10-16]. https:∥arxiv.org/abs/1912.07383.
[2] ZHAO R, YAN R Q, CHEN Z H, et al. Deep learning and its applications to machine health monitoring[J]. Mechanical systems and signal processing, 2019, 115: 213-237.
[3] KHAN S, YAIRI T. A review on the application of deep learning in system health management[J]. Mechanical systems and signal processing, 2018, 107: 241-265.
[4] TRAN T X, HAJISAMI A, PANDEY P, et al. Collaborative mobile edge computing in 5G networks: new paradigms, scenarios, and challenges[J]. IEEE communications magazine, 2017, 55(4): 54-61.
[5] MACH P, BECVAR Z. Mobile edge computing: a survey on architecture and computation offloading[J]. IEEE communications surveys & tutorials, 2017, 19(3): 1628-1656.
[6] 田釗, 王超, 賈駿, 等. 基于局部自組網(wǎng)的路況信息可靠共享模型[J]. 鄭州大學(xué)學(xué)報(理學(xué)版), 2022, 54(6): 82-90.
TIAN Z, WANG C, JIA J, et al. A reliable traffic information sharing model based on local-VANET[J]. Journal of Zhengzhou university (natural science edition), 2022, 54(6): 82-90.
[7] DENG Y Q, CHEN Z G, CHEN X H. Resource allocation for multi-user mobile-edge computing systems with delay constraints[C]∥IEEE Global Communications Conference. Piscataway: IEEE Press, 2021: 1-6.
[8] AHMED I, YAN S, RAWAT D B, et al. Dynamic resource allocation for IRS assisted energy harvesting systems with statistical delay constraint[J]. IEEE transactions on vehicular technology, 2022, 71(2): 2158-2163.
[9] HORIMOTO S, HE F J, OKI E. Delay-aware backup resource allocation with probabilistic protection for network services[C]∥IEEE 22nd International Conference on High Performance Switching and Routing. Piscataway: IEEE Press, 2021: 1-6.
[10]KIANI A, ANSARI N, KHREISHAH A. Hierarchical capacity provisioning for fog computing[J]. IEEE/ACM transactions on networking, 2019, 27(3): 962-971.
[11]LI D F, HONG P L, XUE K P, et al. Virtual network function placement and resource optimization in NFV and edge computing enabled networks[J]. Computer networks, 2019, 152: 12-24.
[12]DINH T Q, TANG J H, LA Q D, et al. Offloading in mobile edge computing: task allocation and computational frequency scaling[J]. IEEE transactions on communications, 2017, 65(8): 3571-3584.
[13]LUO Q Y, HU S H, LI C L, et al. Resource scheduling in edge computing: a survey[J]. IEEE communications surveys & tutorials, 2021, 23(4): 2131-2165.
[14]HE Y H, HAN X, GU C C, et al. Cost-oriented predictive maintenance based on mission reliability state for cyber manufacturing systems[EB/OL]. (2018-01-12) [2022-12-16]. https:∥doi.org/10.1177/1687814017751467.
[15]劉倩雯. 人工蜂群算法及其在調(diào)度問題中的應(yīng)用研究[D]. 北京: 北京交通大學(xué).
LIU Q W. Artificial bee colony algorithm and its application in scheduling problem[D]. Beijing: Beijing Jiaotong University.
[16]劉琨, 封碩. 面向無人機(jī)航跡規(guī)劃的改進(jìn)人工蜂群算法[J]. 鄭州大學(xué)學(xué)報(理學(xué)版), 2021, 53(1): 74-79, 126.
LIU K, FENG S. Improved artificial bee colony algorithm for UAV path planning[J]. Journal of Zhengzhou university (natural science edition), 2021, 53(1): 74-79, 126.
[17]KARABOGA D, BASTURK B. A powerful and efficient algorithm for numerical function optimization: artificial bee colony (ABC) algorithm[J]. Journal of global optimization, 2007, 39(3): 459-471.
[18]ZHOU J Y, ZHANG X L. Fairness-aware task offloading and resource allocation in cooperative mobile-edge computing[J]. IEEE Internet of Things journal, 2022, 9(5): 3812-3824.
[19]HE Y H, REN J K, YU G D, et al. D2D communications meet mobile edge computing for enhanced computation capacity in cellular networks[J]. IEEE transactions on wireless communications, 2019, 18(3): 1750-1763.
[20]PARVEZ I, RAHMATI A, GUVENC I, et al. A survey on low latency towards 5G: ran, core network and caching solutions[J]. IEEE communications surveys & tutorials, 2018, 20(4): 3098-3130.