陳晗頔 趙婷婷
(天津科技大學人工智能學院 天津 300457)
信息化技術的迅速發(fā)展及先進的通信技術為車輛服務帶來了空前的發(fā)展機遇,智能終端上的各種應用在車聯(lián)網環(huán)境中產生了大量的待處理數(shù)據(jù),給車聯(lián)網的娛樂服務、智能導航、交通預測、自動駕駛等領域帶來了新的發(fā)展。在此情況下,僅僅依賴本地車輛進行處理顯然會帶來大量的計算和存儲負擔[1]。提升硬件設備、擴充本地存儲資源固然可解決上述問題,但高昂的設備費用阻礙了其在實際生活中的應用。針對這一問題,集中式云服務應運而生[2],將計算任務和存儲任務依賴蜂窩網絡卸載到云端無疑是利用虛擬技術進行資源擴充的高效方法,但頻繁連接到云平臺進行上傳下載,將會帶來大量的延遲,影響用戶的使用效果。
邊緣計算技術作為一種新興技術,為集中式云計算所產生的大量延遲提供了解決思路。將邊緣計算與傳統(tǒng)車載網絡相結合,增強了車輛提供服務的能力。車聯(lián)網環(huán)境中的計算節(jié)點的選取通常選擇配有移動邊緣計算(Mobile Edge Computing,MEC)服務器的道路側單元(Roadside Unit,RSU)。隨著車聯(lián)網環(huán)境的不斷成熟和發(fā)展,除了道路邊這些固定的邊緣計算設備外,還可以將車聯(lián)網環(huán)境中行駛的車輛作為邊緣計算節(jié)點進行處理[3-4]。
計算卸載是邊緣計算面向用戶最常見的應用,通過將計算量較大要求較高的任務卸載到邊緣節(jié)點上,將計算資源和存儲資源根據(jù)子任務的需求進行合理分配,使邊緣設備資源能夠得到充分利用。當設備進行計算卸載時,合理利用邊緣設備資源能夠極大提高任務的處理效率。
近年來,深度學習的發(fā)展如火如荼,其仿生物大腦神經網絡的結構模擬出深層結構。人類的大腦可以首先學習簡單的概念,然后結合起來抽象出更高的概念,基于對此優(yōu)勢的探究,很多深度學習研究者投入精力去研究多個抽象和處理級別的方法來解決其他領域的問題,在車聯(lián)網中常應用于自動駕駛、新能源汽車、車載應用等[5]。邊緣計算作為正在發(fā)展的新興技術,與深度學習的結合將帶來更好更快的發(fā)展和更多的應用模式。因此,如何結合深度學習利用邊緣計算卸載合理地進行任務和計算的處理,將是本文探索的核心內容。本文通過判定當前環(huán)境和特征數(shù)據(jù),決定是否進行計算任務卸載,即決策結果為卸載執(zhí)行或本地執(zhí)行?;谶@樣的問題模型,本文將卸載決策設計為一個二分類問題。支持向量機算法普遍被用于分類問題,邏輯回歸算法利用Sigmoid函數(shù)在二分類問題上也有著很好的表現(xiàn)。深度神經網絡通過對特征的復雜交叉處理,在分類問題中逐漸表現(xiàn)出優(yōu)于傳統(tǒng)方法的效果。但神經網絡過于復雜的訓練和特征處理在實際應用的車聯(lián)網環(huán)境中意味著更高的計算壓力。同時,面對動態(tài)的車輛環(huán)境在現(xiàn)有的卸載決策中常用馬爾可夫決策進行模型設計[6-7]。然而,現(xiàn)實中數(shù)據(jù)會出現(xiàn)長期依賴的情況,當實際發(fā)展隨著時間產生較大的變化時,過時的數(shù)據(jù)會影響設備做出準確判斷。
為了解決上述問題,使車輛能夠在一個路側單元內完成計算任務,本文提出基于長短期記憶神經網絡的卸載決策。
隨著云計算的研究熱潮逐漸平緩下來,邊緣計算將通信技術帶入了一個全新的時期,我國邊緣計算的發(fā)展始于2016年,隨后逐漸進入人們的視野。自2019年邊緣計算成為研究熱點,得到了研究者們的廣泛關注。在國外,以思科為代表的部分網絡公司正在集中精力主導OpenFog開放霧聯(lián)盟,其發(fā)展以霧計算為主。
擔任邊緣節(jié)點的設備中,計算資源和計算能力十分有限,邊緣計算并不能替代云計算,但可以更好地協(xié)助云計算。Ning等[8]使用了傳統(tǒng)的迭代啟發(fā)式算法分配資源使邊緣計算輔助云計算執(zhí)行任務。通過輸入初始值,可以進行計算,并通過調整決策矩陣得出最小執(zhí)行延遲,直到不存在MEC資源沖突時輸出最終的卸載決策。考慮到多用戶環(huán)境,對于用戶干擾和資源沖突的情況,通過迭代的方式調整決策矩陣得出最小執(zhí)行延遲,直到不存在MEC資源沖突時輸出最終的卸載決策。傳統(tǒng)的啟發(fā)式算法是分配資源的常用算法,在情況不是很復雜任務量不大的情況下適用,但并不適用于大型的動態(tài)分配問題[8]。該方法在理論上證明了云計算和邊緣計算合理地進行分配,二者協(xié)同工作能夠得到更好的效果。
邊緣計算卸載的宗旨在于提供更好的服務質量,在面向用戶的層面更多的還是提供合理的資源和更低的延遲。除了直接進行合理的計算卸載,充分利用緩存技術也是協(xié)助移動邊緣計算的發(fā)展方向之一。鄧志龍等[9]提出了一種通過深度強化學習(Deep Reinforcement Learning,DRL)解決緩存決策權衡問題,并建立上下文感知的智能緩存技術。為了讓邊緣節(jié)點能夠通過分析采集的數(shù)據(jù)學習策略,進行前瞻性預測,優(yōu)化長期緩存性能。應用DRL進入移動邊緣緩存實現(xiàn)緩存能夠滿足復雜和動態(tài)的代理,通過原始的觀察來學習環(huán)境信號。建立智能策略,讓節(jié)點學習新狀態(tài)新動作并能夠匹配下一步操作。通過使用自動編碼器,來將高維的觀測數(shù)據(jù)嵌入到低維空間中,以此建立深度動態(tài)模型,基于深度神經網絡的過濾模型能夠處理由于使用不完善而引起的問題,其優(yōu)勢體現(xiàn)在構建更高效的緩存策略上。
在邊緣卸載決策中,目前的研究主要關注如何制定合理的卸載決策,減輕本地的負擔。在有限的計算資源和信道資源中,如何協(xié)調設備之間的資源競爭,合理且高效地利用邊緣設備也是亟待解決的問題[10]??紤]到車聯(lián)網的高度動態(tài)環(huán)境,線下資源的充分利用可以減輕線上的負擔,Wei等[11]在其研究中使用了線上與線下結合的方式進行線下訓練模型,可以節(jié)省大量的線上時間,但其帶來的問題則是不能很好地匹配動態(tài)環(huán)境。由于邊緣設備的計算資源非常有限,其卸載策略往往設計為分布式。Li等[12]基于遺傳算法、蟻群算法和模擬退火算法開發(fā)了分布式的卸載策略,能夠很好地適應函數(shù)進行目標優(yōu)化,且能夠很好地契合卸載場景。契合卸載場景在于高速動態(tài)變化的場景中意義尤其重要,在車聯(lián)網的邊緣計算中,更加需要策略能夠適應動態(tài)環(huán)境,保證用戶在移動過程中獲得服務的連續(xù)性。提升服務的連續(xù)性由以下常見的三種選擇:1) 通過增加基站的傳輸功率來提高用戶的服務質量,這種方法受限于僅適用在用戶的移動速度較慢,并且移動距離較近時;2) 原MEC服務器通過回程鏈路與移動設備進行通信,但服務器與本地設備距離不可過遠,以免用戶獲得服務的延遲過高;3) 將關注點放在虛擬機遷移技術上[13]。除此之外亦有其他方法來保證服務的連續(xù)性,這也是進行車聯(lián)網環(huán)境的卸載決策設計中的重要考慮方向。
隨著5G通信技術的發(fā)展,流量的指數(shù)級增長為計算帶來了更加沉重的負擔。王秋寧等[14]在研究中詳細介紹了MEC和MEFC可以有效緩解指數(shù)級數(shù)據(jù)流量帶來的壓力,為未來5G環(huán)境提出了構想。Singh等[15]提出了合理利用“端-邊-云”協(xié)作與“邊-云”協(xié)作的思路進行邊緣設備的可用資源分配。高效調度可以很大程度上減輕大量的流量數(shù)據(jù)帶來的計算與資源負擔。預計5G環(huán)境下各個領域計算卸載的研究,將得到較高的重視成為研究重點方向。
卸載決策的選擇與設計要依賴于對應用情境的判斷。通過現(xiàn)有研究仿真測評性能發(fā)現(xiàn),通過將計算量卸給MEC,可以節(jié)省高達90%的能源,甚至可以減少高達98%的執(zhí)行延遲[16]。而如何對能耗和執(zhí)行延遲進行選擇和權衡,則需要在具體的應用場景中分析?,F(xiàn)有的研究集中在將任務進行分割并部分卸載而非全部卸載,更多的決策算法的目標是在滿足執(zhí)行延遲的前提下使能量最小化。在應用場景中設計決策應分析以上兩個指標之間的平衡[17]。
邊緣計算卸載決策是基于車聯(lián)網環(huán)境建立的,其在車輛網絡中的卸載場景設置如圖1所示。
圖1 車聯(lián)網卸載場景示意圖
在圖1中,假設道路是筆直的,道路兩旁認為等距分布著路側單元,并且認為每一個RSU都配置了一個MEC服務器,使路側單元可以提供存儲和計算的能力。在場景中,RSU間距為L,MEC服務器的覆蓋范圍也為L,即認為當車輛進入場景中,可以無縫切換連接到每一個MEC服務器。而車輛為了保持任務的連續(xù)性,在行駛過程中切分任務上傳到范圍內的RSU上執(zhí)行,要求在離開該MEC服務器覆蓋范圍前,接收該MEC服務器的返回值。在此,將MEC服務器的集合M表示為M={m1,m2,…,mn},MEC服務器mi的接入覆蓋直徑為L。
在圖1的場景中,假設有k輛車,車的集合可表示為V={v1,v2,…,vk}。利用香農公式,可以得到車輛vi(vi∈V)的傳輸速率為:
(1)
式中:p為傳輸功率;g為通道增益;N為高斯白噪聲的單邊功率譜密度;B為信道帶寬?;谑?1),數(shù)據(jù)的上傳延遲和下載延遲的計算公式表示為:
(2)
(3)
假設任務是否能夠順利到達的概率遵循泊松分布,且在一個區(qū)域內,MEC的服務可以認為是一個M/M/1隊列,設MEC服務器mi上,任務的平均到達率為αi,平均服務率為ζi,服務強度ρi可以設定為αi/ζi,根據(jù)排隊論計算平均等待時間,即:
(4)
將計算任務卸載到MEC服務器上的所有延遲累積起來,就可以得到MEC服務器mi的平均執(zhí)行延遲為:
(5)
在MEC服務器mi覆蓋的區(qū)域內,任務可以選擇的是卸載或在本地執(zhí)行,則平均響應延遲可以計算為:
(6)
本文將最小化降低執(zhí)行任務過程中產生的總響應延遲作為目標函數(shù),即:
(7)
通過對其延遲的計算,可以對是否進行卸載做出初步判斷[18]。為了降低線上的執(zhí)行延遲和計算壓力,本文采用線上線下結合的方式進行卸載決策的生成,通過線下進行神經網絡的訓練,線上利用線下訓練好的神經網絡進行決策。
通過對實際應用場景的分析可知,場景中的狀態(tài)數(shù)據(jù)變化會隨著時間改變,因而可以將其視為時間序列。根據(jù)這一特點,本文引入了長短期記憶(Long Short Term Memory,LSTM)神經網絡進行卸載決策的設計。
LSTM神經網絡的設計基于循環(huán)神經網絡的重復的鏈式形式。在標準的LSTM中神經元之間以一個特殊的形式進行著交互,這樣的每一個單元看作一個block,其每個block都具有輸入門、遺忘門、cell門、輸出門和最終輸出。通過這些門限的設定,對信息的保留與舍棄進行適當?shù)南拗疲筁STM神經網絡能夠對聯(lián)系緊密的時間序列有著更好的表現(xiàn)。接下來將對這些門限依次進行分析。
(8)
(9)
(10)
(11)
(12)
(13)
式中:g表示cell輸入的激活函數(shù)。
(14)
(15)
綜合以上計算,最終的cellc的輸出為輸出門與cell做乘積,為:
(16)
式中:h表示輸出的激活函數(shù)。
在本文的分類問題中,利用Softmax來輸出為某一類的概率,將決策問題設計成為分類問題,且其概率和為1。
(17)
(18)
式中:zk為真實值。將損失函數(shù)的計算值進行反向傳播,各單元的權重依次通過梯度下降法尋找參數(shù)的全局最優(yōu)解來更新每一個權重ω。
(19)
通過如上的在各個時刻和各個block中的處理,以及cell對信息的判斷,其各個權重不斷進行更新,如圖2所示,最終借助Softmax輸出屬于的兩種類別中概率最大的位置,得到其輸入數(shù)據(jù)分類,即MEC卸載(對應類別為1),本地執(zhí)行(對應類別為0)。
圖2 LSTM中一個block的權重示意圖
在仿真實驗中,輸入為任務向量X,X中包括任務數(shù)據(jù)量、任務計算所需資源、車速、本地數(shù)據(jù)處理速率、MEC服務器數(shù)據(jù)處理速率和當前服務器的剩余資源量。輸出設置為二分類問題,即若輸出為0,則在本地執(zhí)行;若輸出為1,則進行卸載操作。
在實驗中,為了使實驗結果更具有普遍性、一般性,我們基于時間戳生成隨機數(shù)據(jù),進行仿真實驗來對比不同算法的性能。實驗中,隨機產生K個任務,將每一個任務向量設定7個特征,每個任務向量可以表示為X=(xsize,srequire,v,rv,rt,rmec,sremain), 其中:xsize為任務數(shù)據(jù)量;用來衡量任務的大??;srequire為任務所需資源量;v代表當前任務所屬車輛的車速;rv為本地車輛數(shù)據(jù)處理速率;rt代表任務數(shù)據(jù)傳輸速率;rmec為RSU配置的MEC服務器的數(shù)據(jù)處理速率;sremain為MEC剩余資源量。對于生成的K個訓練數(shù)據(jù),其7個特征X作為輸入,根據(jù)式(5)和式(6)計算平均響應延遲及總響應延遲,最終輸出卸載決策,即MEC卸載(值為1)或本地執(zhí)行(值為0)。在訓練網絡時,將生成數(shù)據(jù)集的70%作為訓練集,剩余30%作為測試集。在獲取決策函數(shù)或決策神經網絡過程中所需要的具體參數(shù)如表1所示[19]。在神經網絡中,神經元之間的權重調整體現(xiàn)在其學習率上[20],ANN和LSTM兩種神經網絡算法的學習率均設為0.02,實驗過程中將每2條輸入的任務向量為神經網絡的一組輸入數(shù)據(jù),使輸入數(shù)據(jù)具有時序聯(lián)系。
表1 參數(shù)設置表[19]
為了驗證本文算法的高效性,對比實驗選擇了常用的二分類算法:支持向量機(Support Vector Machine,SVM)[19]與邏輯回歸(Logistic Regression,LR),并與人工神經網絡(Artificial Netural Networks,ANN)進行對比。
在使用支持向量機算法進行決策之前,首先對支持向量機的不同核函數(shù)進行了測試,如圖3(a)所示,使用了高斯核函數(shù)(RBF)、線性核函數(shù)(Linear)和Sigmoid核函數(shù)三種核函數(shù)在不同數(shù)據(jù)個數(shù)下進行訓練的準確率測試,但從圖3(a)中可以看出RBF核函數(shù)的分類結果和Sigmoid核函數(shù)的分類結果高度重合,于是本文將0.83到0.89的圖像放大,如圖3(b)所示。
(a) 核函數(shù)準確率對比圖
(b) 高斯核函數(shù)和Sigmoid核函數(shù)準確率局部放大圖圖3 三種核函數(shù)準確率對比
使用線性核函數(shù)得到的決策函數(shù)在不同的訓練數(shù)據(jù)量下準確率都高于其他兩種核函數(shù),其平均準確率高達96.90%?;诖藴y試數(shù)據(jù),在接下來的測試實驗中,我們選用線性核函數(shù)作為支持向量機算法的核函數(shù)。
圖4對訓練數(shù)據(jù)的執(zhí)行延遲進行了比較,為100次實驗的執(zhí)行結果對比,圖中的虛線對應的縱坐標為50 ms,表示延遲敏感應用對延遲的容忍限制,從圖中可以得到,在MEC資源滿足車載任務需求資源的情況下,將任務卸載到MEC服務器中,可以滿足84%的對延遲要求較高的延遲敏感應用程序,且在95%的情況下延遲低于本地執(zhí)行。圖5為兩種神經網絡進行卸載決策所需要的響應時間,可以看出即便訓練數(shù)據(jù)量不同,LSTM訓練的神經網絡進行卸載決策所需要的響應時間更少,更適用于車聯(lián)網環(huán)境中。
圖4 在本地和計算卸載的延遲時間
圖5 使用兩種神經網絡的響應時間對比
圖6為使用不同的算法進行卸載決策時訓練數(shù)據(jù)的數(shù)量和準確率的關系,可以看到邏輯回歸和人工神經網絡有著遠優(yōu)于支持向量機的準確率,而人工神經網絡的準確率則需要訓練數(shù)據(jù)量的支撐。
圖6 四種算法的卸載決策準確率
圖7為四種算法對收斂時間影響的比較,收斂時延反映了設備做出決策所需時間??梢钥闯?,ANN算法的收斂時間最長,在車聯(lián)網的高速環(huán)境中不如其他算法的收斂時間短,其中邏輯回歸算法和LSTM算法的收斂時間明顯短于其他算法,能夠縮短決策時間更快進行決策。
圖7 不同算法的收斂時間和需要卸載的任務量
本文從當下的邊緣計算發(fā)展現(xiàn)狀和已有的卸載決策進行了研究和分析,研究在車聯(lián)網環(huán)境中邊緣計算卸載決策。具體地,本文將卸載決策設計成分類問題,通過設計不同的類別對應不同的決策分析任務向量所屬類別,設計卸載的模擬算法,并提出基于LSTM的卸載決策。通過與已有方法的對比實驗,驗證了所提方法的有效性。
在未來的研究中,車聯(lián)網邊緣計算具有以下幾個重要發(fā)展方向:1) 5G環(huán)境下的車聯(lián)網邊緣計算方向,5G時代的來臨,意味著流量和信息的爆炸式增長[21],這將給車聯(lián)網的環(huán)境下的信息處理尤其是邊緣計算帶來更高的要求;2) 在高速動態(tài)環(huán)境中如何進行自適應[22],在車聯(lián)網的環(huán)境中如何去應對突變的情況和隨時間快速變化的環(huán)境是提高服務質量和信息處理質量的要求;3) 信譽管理與安全問題,在車聯(lián)網的環(huán)境中,安全不僅意味著信息安全,更意味著在交通環(huán)境中的安全,如果不能對信息進行有效的識別和及時的判斷,所帶來的負面影響可能會引發(fā)嚴重的交通事故[23];4) 深度學習的優(yōu)化問題,如何去優(yōu)化深度學習帶來更好的算法效果不僅僅是對于車聯(lián)網,更是對于各個領域的要求[24-25];5) 云計算、邊緣計算和本地計算的協(xié)同資源分配方式,邊緣計算的資源較為有限,當可用邊緣資源不足以提供服務時[25],如何分配云計算和邊緣計算的資源以達到更好的服務質量,使本地-邊緣-云協(xié)同計算,是下一個待解決的問題[26]。