劉可欣,陳桂芬,張文萍
(長春理工大學 電子信息工程學院,長春 130022)
車聯網作為汽車行業的焦點,已被列為“中國制造2025”不可或缺的一部分[1],是5G的主要應用場景之一。其涉及大量的數據采集、處理和決策,需要大量的計算和存儲資源,且對時延極為敏感。雖然傳統云計算可以彌補車載設備計算資源的不足[2],然而由于傳輸的數據量巨大,從車載設備到云會產生較大的傳輸時延,這樣就無法滿足車載服務對時延的要求。因此,移動邊緣計算(Mobile Edge Computing,MEC)被引入到車聯網中是大勢所趨。通過在路側單元等位置部署MEC設備既可以有效地解決車輛計算資源不足的問題,又可以實現對車聯網業務的實時處理。
作為MEC關鍵技術之一的計算卸載,能有效支撐低時延高可靠任務,為此大量學者對其開展了研究。文獻[3]提出了一種以云服務器為基礎的MEC卸載架構,且在該架構中不允許MEC服務器自發地進行計算任務分配。文獻[4]提出了一種在多小區MEC網絡中進行聯合任務卸載和資源分配的整體策略,并提出了一種新的啟發式算法,顯著提高了平均系統卸載效用。文獻[5]提出了一種分層式MEC卸載框架,并針對多用戶卸載問題,采取了基于Stackel?berg博弈論的解決方案。文獻[6]針對MEC服務器計算資源有限和小區間干擾限制卸載的問題,提出了一種自適應順序卸載方法,可避免由計算資源導致的意外排隊延遲。
綜上,雖然研究人員已對MEC的計算卸載進行了大量研究,但大多是假設在固定網絡結構的前提下,沒有考慮移動性會對卸載過程造成的影響,同時也沒有充分調動移動終端、MEC及云的計算資源。因此,本文在車聯網的背景下,構建了基于5G的“車-邊-云”協同的網絡架構,并提出了一種基于時延的改進煙花算法(Im?proved Fireworks Algorithm,IMFWA)任務卸載策略,仿真結果表明,在車-邊-云協同架構下,基于IMFWA的計算卸載策略可有效降低任務卸載時延。
在車聯網中,通過構建基于5G的“車-邊-云”協同網絡架構,可以動態地為車輛、MEC、云分配計算資源,同時實現對異構設備的管理,基本架構圖如圖1所示。

圖1 基于5G的“車-邊-云”協同網絡架構
在該架構中,融入了多種新興技術,相比于其他架構而言,有如下優勢:
軟件定義網絡(Software Defined Network,SDN)及網絡功能虛擬化(Network Functions Virtualiza?tion,NFV)技術的應用[7]使 5G 網絡架構實現了全面云化,可更好地滿足車聯網用戶對各種業務的需求。
MEC可以使第三方應用及業務部署在網絡邊緣,并且將其與車、云協同可減少數據傳輸時延。
5G接入網是多層的異構式網絡,能保障車輛在不同的終端間通信,并為終端用戶提供最廣的覆蓋范圍和最快的網絡速率。
針對多種業務需求,網絡切片可以實現車聯網業務的功能定制,并保證運行的獨立性。
在“車-邊-云”協同架構下,假設車輛之間共享通信資源。通過將任務劃分成多個子任務并放在不同位置進行卸載,可實現時延的最小化,因此,本文提出了基于時延的IMFWA任務卸載策略。
當新的請求到來時,任務首先被劃分為k個子任務,組成k維向量TA=(Tk1,Tk2,…,Tkk)T,其中Tki=δi·Tk,Tk表示總任務數據量大小,單位是比特,δi表示子任務在總任務中所占的比例。根據文獻[8]和文獻[9],可得計算Tki所需的CPU周期數為Ci=ρ·Tki,其中ρ是計算任務的復雜度,CPU周期數的單位是cycles。
基于此方案,卸載任務的總時延主要包括在車、MEC、云上處理數據的時延及數據上傳過程中的傳輸排隊時延等,由于處理后的數據傳回車輛時延較小,故在此忽略不計。
(1)車輛卸載時延
車輛卸載時延主要包括在源車上及在V2V車輛上的卸載時延。設定車與車在獨立同分布信道中采用DSRC通信方式中的IEEE802.11p協議[10]進行通信,路徑損耗[11]可以定義為:

其中,di,uj表示車輛ui與車輛uj之間的通信距離,當i=j時,表示在源車卸載,此時無路徑損耗。將式(1)轉化為數值形式為:
因此,兩車之間傳輸數據的速率為:

其中,BV2V表示分配給V2V車輛的信道帶寬;pi是車載設備的發射功率;N0表示高斯白噪聲功率;h表示上傳鏈路的信道衰落因子。
則任務i選擇在車輛上卸載的時延可表示為:

其中,CiCi,uj表示在V2V車上的處理時延,μ表示上傳鏈路的傳輸開銷因子,ΔT表示排隊等待時延。
(2)MEC卸載時延
車輛通過LTE-Advanced直連的鏈路與MEC設備通信[12],設定車輛到 MEC(RSU)的上傳鏈路為平坦型快衰落的瑞利信道,則上傳鏈路的數據傳輸速率為:

其中,BV2M表示分配給MEC的信道帶寬;di,ej是車ui與MEC設備ej之間的距離;h表示上傳鏈路的信道衰落因子;ε是路徑損耗因子;N0表示高斯白噪聲功率。
則在MEC上的卸載時延Ti,ej可以表示為:

(3)云卸載時延
上傳鏈路仍設定為頻率平坦型快衰落的瑞利信道,則上傳鏈路的數據傳輸速率為:

其中,BV2C表示分配給云的信道帶寬;di,0是車ui與遠端云之間的距離。
則在遠端云上的卸載時延Ti,0為:


其中,αi決定是否將任務卸載至車輛;λi決定是在MEC卸載還是在云卸載。而總任務響應時延等于子任務卸載時延中的最大值,即:

為了使響應時延盡可能小,式(10)被建模為如下優化問題:

其中,I為可行解的搜索范圍。
2.2.1 基本煙花算法
煙花算法(Fireworks Algorithm,FWA),是一種可在全局范圍內搜索最優解的智能算法,在求解復雜優化問題時有著明顯優勢。其基本步驟如下:
(1)隨機初始化N個煙花位置,即TAi=(Tk1(i),Tk2(i),...,Tkk(i))T。
(2)依據優化目標函數計算每個煙花的爆炸火花數目及爆炸幅度(半徑)。
在FWA中,第i個煙花產生的火花個數Si為:

其中,t(TAi)為個體的適應度值;tmax是當前種群中最差的適應度值;m用來限制產生的火花總數;ε用來避免分母為零。
產生火花數量的限制公式為:

其中,Si'為第i個煙花最后生成的火花數;a、b為常數。
在FWA中,第i個煙花的爆炸幅度Ai為:

其中,A用來控制爆炸的最大幅度;tmin為當前最好的適應度值;t(TAi)和ε意義與式(12)相同;evalsmax為最大評估次數;n為當前評估次數;Ainit和Afinal分別為爆炸半徑的初始值和終值。
(3)通過執行一系列的爆炸、變異(高斯變異)操作,產生新的爆炸火花。在第k個維度時產生的爆炸火花表示如下:

其中,Δxk表示煙花位置偏移量。
(4)把不在可行解空間范圍的新火花根據一定的映射規則映射到可行域內,并按照式(18)更新該維度值。

其中,TAUB,k、TALB,k分別表示該優化問題的上、下邊界。
(5)采用基于歐式距離的輪盤賭選擇策略,對余下的N-1個個體進行選擇,組成新一代煙花種群。
(6)對步驟(2)-步驟(5)重復執行,直到滿足迭代條件。
2.2.2 煙花算法的改進
針對FWA算法中爆炸火花的產生和煙花候選的選擇問題,提出了IMFWA算法,相比于FWA,具體改進如下:
(1)爆炸火花產生方式的改進
在原有的FWA算法中,僅考慮了每個煙花爆炸的正方形鄰域,并且對觸發的位移僅計算了一次,為了更好地在不同維度和不同方向都進行有效搜索,提出了一種產生爆炸火花的新方式,具體基于以下公式實現:

(2)選擇策略的改進
在原有的FWA算法中,對于煙花的選擇采用了基于歐氏距離的輪盤賭方式,這種選擇方式雖然在一定程度上促進了種群多樣性的增加,但當維數增加時會產生較大的時間開銷,因此在這里使用基于適應度值的錦標賽選擇策略。這種選擇策略不僅能以一定的概率跳出局部最優,使種群的多樣性增加,而且當維數增加時可減少時間開銷,此時每個個體被選擇的概率按照式(21)計算:

其中,K為根據r的一定百分比選擇的新一代煙花候選。
2.2.3 IMFWA求解步驟
在求解上述卸載優化問題時,應用IMFWA的主要步驟如下:
(1)隨機初始化解空間中的N個位置,其中N代表煙花的數量,每個煙花的位置可表示為TAi=(Tk1(i),Tk2(i),...,Tkk(i))T。
(2)依據式(10)中的優化目標函數t(TA)計算爆炸幅度(半徑)及爆炸火花數目。
(3)依據步驟(2)得到的爆炸火花數目及爆炸半徑,基于公式(19)和公式(20),產生新的爆炸火花。
(4)當爆炸火花的第k個維度超出可行解空間的范圍時,按照式(18)更新維度值。
(5)為下一代種群挑選N個煙花(從當前代爆炸煙花、火花中選擇),若煙花個體的適應度值最小,則以1的概率保留在下一代,否則根據基于適應度值的錦標賽策略進行選擇。
(6)對步驟(2)-步驟(5)重復執行,直到滿足迭代條件。
為了證明本文所提的“車-邊-云”協同架構和基于IMFWA算法的卸載策略在降低時延方面的優越性,本文仿真對比了該架構與云、“邊-云”協同架構的時延性能,并將IMFWA算法與FWA、部分卸載算法(Conventional Partial Offload?ing,CPO)及聯合卸載算法進行了對比。
在真實的車聯網環境中,各個設備間的距離及傳輸鏈路帶寬都是時變的,各個MEC設備和車輛的計算能力也不盡相同。最終的仿真結果是根據多次實驗得到的平均值。具體的仿真參數[2]如表1所示。

表1 仿真參數
圖2、圖3分別仿真對比了在不同任務量及不同鏈路帶寬影響下基于IMFWA算法的“車-邊-云”協同、“邊-云”協同與云單獨工作的網絡架構的時延性能。

圖2 任務量對網絡架構的性能影響

圖3 帶寬對網絡架構的性能影響
從圖2可以看出,本文所提的“車-邊-云”協同、“邊-云”協同與云單獨工作的任務響應時延都隨著任務數據量的增加而增加。其中,“車-邊-云”協同相比“邊-云”協同、云單獨做工時延更低。這是由于“車-邊-云”協同綜合考慮了車輛、MEC、云三方面的計算能力,實現了對各部分資源的有效調控。當任務數據量為5 Mb時,“車-邊-云”協同架構相比于“邊-云”協同、云單獨做工時延性能分別提升了13.6%,28.7%。因此采用“車-邊-云”協同架構可有效降低時延。
圖3是在假設分配給車、MEC、云帶寬相同,任務量為1 Mb時仿真出來的,從中可以看出在帶寬不斷增加的情況下,各個架構的響應時延均呈下降趨勢,其中云架構的時延下降最為明顯。這是因為在云架構中,所有數據都需要上傳到云端進行處理,上傳過程的傳輸時延將隨著帶寬的增加而顯著下降。但在其它兩種架構中,由于車、MEC設備靠近數據源,只有少量的數據傳輸至云并不會導致大幅度的時延下降。并且,相比于“邊-云”協同,本文所提架構將車、MEC、云的計算能力都考慮在內,時延更低。綜上,當鏈路帶寬受限時,“車-邊-云”協同網絡架構在降低時延上優勢明顯。
設置任務數據量為2 Mb,煙花總數為100,最大爆炸火花數為80,最大爆炸半徑為300,常數a=0.8,b=0.04,迭代次數為500。圖4給出了IMFWA與FWA在迭代次數影響下的平均性能曲線。
從圖4可以看出,隨著迭代次數的增加,FWA和IMFWA任務完成時延均呈下降趨勢。相比于FWA,IMFWA的迭代次數更少,收斂速度更快。并且當迭代次數累加到一定程度時,IMFWA、FWA的最終任務完成時間是趨于一致的。可以看出,IMFWA優于FWA。
為了驗證在“車-邊-云”協同架構中IMFWA算法能有效地降低響應時延,將其與FWA、CPO及聯合卸載算法的時延性能進行了仿真對比,仿真結果如圖5所示。從圖5可以看出,隨著任務數據量的增加,相比于其他三種算法,IMFWA算法的時延性能最為優越。這是因為相比于FWA算法,IMFWA有著更快的收斂速度。而相比于CPO及聯合卸載策略,基于IMFWA算法的卸載策略不僅考慮了V2V的卸載方式,而且還調度了車、MEC、云三方面的計算資源。當任務數據量為5 Mb時,IMFWA算法相比于FWA,CPO及聯合卸載算法的時延性能分別提升了10.9%,39.4%,44.1%。因此在“車-邊-云”協同架構中應用IMFWA算法可有效地降低車聯網業務的響應時延。

圖5 多種卸載優化算法的時延性能比較
在車聯網中,針對云服務器部署較遠而導致響應時延高的問題,本文提出了一種基于5G的“車-邊-云”協同網絡架構。同時在該網絡架構中,建立了基于時延的卸載模型,并提出了一種基于IMFWA的任務卸載策略。仿真結果證明,本文所提的網絡架構和卸載策略能有效提高任務的執行速度,降低時延。但由于本文僅假設了車輛間共享資源的情況,未考慮車的自利性,因此下一步的工作是設計相應的獎勵機制,應用卸載策略實現相關參與者的利益最大化。