涂巖愷
(廈門雅迅網(wǎng)絡(luò)股份有限公司,福建 廈門 361008)
隨著智能汽車時(shí)代的到來(lái),汽車需要處理的數(shù)據(jù)量呈指數(shù)級(jí)增長(zhǎng),智能傳感器、高精度地圖、V2X協(xié)同、AR/VR等應(yīng)用使得汽車對(duì)ECU數(shù)量、運(yùn)算能力和帶寬的需求激增,從而使傳統(tǒng)汽車電氣電子(E/E)架構(gòu)不堪重負(fù),無(wú)法適應(yīng)現(xiàn)代智能汽車的需求。如果使用車-云[1]架構(gòu)處理計(jì)算任務(wù),將難以解決網(wǎng)絡(luò)帶寬消耗和計(jì)算實(shí)時(shí)性問(wèn)題。
邊緣計(jì)算具有靠近數(shù)據(jù)源、節(jié)省通信帶寬、實(shí)時(shí)性強(qiáng)的優(yōu)勢(shì),因此在實(shí)時(shí)性要求高的智能汽車領(lǐng)域,具有較大的應(yīng)用潛力與產(chǎn)業(yè)價(jià)值,在國(guó)際上已經(jīng)成立汽車邊緣計(jì)算聯(lián)盟(AECC),旨在利用邊緣計(jì)算技術(shù)驅(qū)動(dòng)智能汽車生態(tài)發(fā)展。Sun等人[2]基于移動(dòng)計(jì)算資源的不穩(wěn)定性、車輛計(jì)算能力的異構(gòu)性以及計(jì)算任務(wù)的相互依賴性,采用蝙蝠算法優(yōu)化汽車邊緣計(jì)算卸載的協(xié)同任務(wù)調(diào)度,最小化任務(wù)執(zhí)行延遲;李波[3]提出基于最小執(zhí)行時(shí)間算法的計(jì)算切換策略,采用Docker的容器遷移技術(shù)來(lái)降低任務(wù)卸載遷移時(shí)間;范艷芳等人[4]發(fā)明了基于深度強(qiáng)化學(xué)習(xí)的協(xié)同計(jì)算卸載方案,解決高速公路場(chǎng)景下車輛移動(dòng)性與邊緣服務(wù)器靜態(tài)部署的矛盾,降低計(jì)算卸載失敗率;Huang等人[5]提出了一種利用停泊車輛邊緣計(jì)算的方案,利用附件停車場(chǎng)停泊車輛的閑置計(jì)算資源與邊緣服務(wù)器協(xié)同執(zhí)行汽車計(jì)算任務(wù)的卸載。
當(dāng)前研究熱點(diǎn)主要是汽車與外部邊緣設(shè)備或其他車輛之間的任務(wù)卸載、任務(wù)緩存、調(diào)度與優(yōu)化,算法多基于車外網(wǎng)絡(luò)架構(gòu)與通信協(xié)議特點(diǎn)。實(shí)際上隨著車載高性能芯片技術(shù)的發(fā)展,已經(jīng)開始出現(xiàn)高性能的本地車載計(jì)算設(shè)備,并帶動(dòng)了新的汽車E/E架構(gòu)的演進(jìn)。在整車E/E架構(gòu)上,特斯拉大范圍合并車內(nèi)網(wǎng)絡(luò)域,將電子構(gòu)架升級(jí)為三大中央計(jì)算機(jī)為基礎(chǔ)的域控架構(gòu)[6],提升汽車自身計(jì)算能力的同時(shí)極大地縮減了ECU數(shù)量;在車內(nèi)網(wǎng)絡(luò)通信上,美國(guó)博通公司發(fā)明了100BASE-T1車載以太網(wǎng)[7]替代傳統(tǒng)的CAN總線網(wǎng)絡(luò),實(shí)現(xiàn)100 Mbps速率可靠傳輸,可為車內(nèi)大量數(shù)據(jù)的任務(wù)卸載提供高效實(shí)時(shí)的通信方式。因此在以中央計(jì)算機(jī)為核心,高速車載以太網(wǎng)為通信總線的新汽車E/E架構(gòu)下,車載中央計(jì)算機(jī)可以作為車內(nèi)邊緣計(jì)算服務(wù)器的角色,將計(jì)算任務(wù)通過(guò)車載以太網(wǎng)在中央計(jì)算機(jī)與普通控制器之間進(jìn)行卸載,相對(duì)于車外網(wǎng)絡(luò)的計(jì)算卸載能更獲得更高的實(shí)時(shí)性。
該文根據(jù)車載以太網(wǎng)通信協(xié)議的特點(diǎn),建立車內(nèi)網(wǎng)任務(wù)卸載延時(shí)方程,并采用改進(jìn)遺傳算法進(jìn)行調(diào)度方程延時(shí)最小的最優(yōu)化求解,在保持車輛總線任務(wù)優(yōu)先級(jí)和功耗約束條件的基礎(chǔ)上降低計(jì)算延時(shí)。
傳統(tǒng)的汽車E/E架構(gòu)為分布式架構(gòu),車輛各功能由單一的電子控制單元控制。隨著汽車智能化的發(fā)展使整車中ECU數(shù)量激增,分布式E/E架構(gòu)很難高效地分配和承載數(shù)據(jù)計(jì)算和過(guò)多的復(fù)雜功能,難以滿足智能汽車更高算力與更強(qiáng)通訊能力的需求。于是汽車E/E架構(gòu)開始向集中式演化,將各功能合并和劃分為新的功能域,對(duì)應(yīng)的ECU合并成一個(gè)域控制器進(jìn)行車輛控制,在車內(nèi)網(wǎng)絡(luò)設(shè)置一個(gè)中央計(jì)算機(jī)平臺(tái)執(zhí)行智能化程序,與域控制器采用以太網(wǎng)連接,域控制器受中央計(jì)算平臺(tái)統(tǒng)一管理。如圖1所示,實(shí)線框表示中央計(jì)算機(jī)及域控制器,虛線框表示在這些設(shè)備上執(zhí)行的功能或服務(wù)。
圖1 集中式汽車E/E架構(gòu)
域控制器采集和處理大量的傳感器數(shù)據(jù),對(duì)數(shù)據(jù)分析計(jì)算產(chǎn)生功能決策,在自身計(jì)算資源相對(duì)有限的情況下,需要通過(guò)高速車載以太網(wǎng),將計(jì)算數(shù)據(jù)和計(jì)算任務(wù)卸載到中央計(jì)算單元進(jìn)行計(jì)算。同時(shí)以太網(wǎng)總線還需要基于以太網(wǎng)音視頻橋接(AVB)[8]協(xié)議為影音娛樂(lè)域提供穩(wěn)定的帶寬。因此,需要在保證原有音視頻數(shù)據(jù)流任務(wù)優(yōu)先級(jí)的前提下,滿足車內(nèi)網(wǎng)計(jì)算任務(wù)卸載的優(yōu)化調(diào)度需求。
傳統(tǒng)以太網(wǎng)使用帶有沖突檢測(cè)的載波偵聽多路訪問(wèn)(CSMA/CD)技術(shù),所有數(shù)據(jù)流都是串行通訊,基于Best Effort盡力服務(wù)機(jī)制轉(zhuǎn)發(fā),這會(huì)導(dǎo)致不同節(jié)點(diǎn)的數(shù)據(jù)流發(fā)生帶寬重疊的沖突,如圖2所示,部分沖突的數(shù)據(jù)會(huì)被丟棄重傳,從而影響消息實(shí)時(shí)性,這在總線型網(wǎng)絡(luò)架構(gòu)中影響尤為明顯。
圖2 數(shù)據(jù)流重疊沖突影響通信實(shí)時(shí)性
為了避免帶寬重疊問(wèn)題,車載以太網(wǎng)采用流量整形算法[9]對(duì)不同等級(jí)的數(shù)據(jù)流進(jìn)行排序發(fā)送,以達(dá)到提高可靠實(shí)時(shí)傳輸?shù)哪康摹?/p>
圖3 流量整形算法
首先,將車載以太網(wǎng)網(wǎng)絡(luò)數(shù)據(jù)劃分成3個(gè)等級(jí),其中A等級(jí)為高優(yōu)先級(jí)對(duì)應(yīng)高實(shí)時(shí)數(shù)據(jù)流,一般是音視頻數(shù)據(jù)流、車輛控制信號(hào)幀等;B等級(jí)為次高優(yōu)先級(jí)對(duì)應(yīng)計(jì)算任務(wù)卸載類的數(shù)據(jù)流,A、B等級(jí)數(shù)據(jù)均要進(jìn)行整形,以保證實(shí)時(shí)性;BE等級(jí)傳輸其他數(shù)據(jù),其優(yōu)先級(jí)最低不參與整形,采用傳統(tǒng)以太網(wǎng)Best Effort機(jī)制發(fā)送,在整形數(shù)據(jù)中見縫插針式進(jìn)行傳輸。如圖3所示,整形算法建立在信用的累積和消耗上,在該類別信用值大于等于0時(shí)才可以傳輸,完成傳輸后信用值驟減為負(fù)值,之后按照該等級(jí)變化速率增加信用值。這樣對(duì)A、B等級(jí)高實(shí)時(shí)性要求的數(shù)據(jù)流在單獨(dú)時(shí)段占有帶寬,BE等級(jí)數(shù)據(jù)流用見縫插針式的方式進(jìn)行整形,從而提高帶寬的占用率,整體上提高總線數(shù)據(jù)傳輸實(shí)時(shí)性。流量整形效果如圖4所示。
圖4 流量整形效果
車載以太網(wǎng)延遲包含輸入等待時(shí)延、存儲(chǔ)和轉(zhuǎn)發(fā)時(shí)延、干擾時(shí)延、傳輸時(shí)延等幾個(gè)部分,其中,由流量沖突引起的干擾時(shí)延是主要時(shí)延[10]。干擾時(shí)延包括高優(yōu)先級(jí)流量阻塞時(shí)延tHPB、低優(yōu)先級(jí)流量阻塞時(shí)延tLPB、流量整形時(shí)延tTSB和數(shù)據(jù)幀傳輸時(shí)延ttrans。
對(duì)于A類數(shù)據(jù),沒(méi)有高優(yōu)先級(jí)阻塞時(shí)延。其流量整形時(shí)延即等待信用值恢復(fù)至0的時(shí)間:
(1)
其中,loCredit為信用值允許的最小值,Sidle為信用值的增加速率,一般等于數(shù)據(jù)發(fā)送方預(yù)留帶寬。在整形算法允許A類數(shù)據(jù)發(fā)送時(shí),低等級(jí)數(shù)據(jù)幀可能正在傳輸,則需要等待低等級(jí)數(shù)據(jù)包發(fā)送完成,時(shí)延計(jì)算如下:
(2)
其中,C為以太網(wǎng)帶寬,MB,BE為當(dāng)前低等級(jí)數(shù)據(jù)包剩余未發(fā)完數(shù)據(jù)長(zhǎng)度。A類數(shù)據(jù)自身傳輸延時(shí)為:
(3)
其中,MA為當(dāng)前發(fā)送的A類數(shù)據(jù)幀長(zhǎng)度。因此,A類數(shù)據(jù)時(shí)延為:
(4)
對(duì)于B等級(jí)的任務(wù)卸載數(shù)據(jù)幀來(lái)說(shuō),流量整形延時(shí)為:
(5)
低優(yōu)先級(jí)流量阻塞時(shí)延計(jì)算為:
(6)
其傳輸延時(shí)為:
(7)
在B類數(shù)據(jù)幀經(jīng)整形完畢可以發(fā)送時(shí),考慮A類數(shù)據(jù)幀可能存在還未傳輸部分的長(zhǎng)度,則產(chǎn)生高優(yōu)先級(jí)流量阻塞:
(8)
因此,計(jì)算任務(wù)卸載類數(shù)據(jù)幀的時(shí)延為:
(9)
設(shè)任務(wù)卸載率為0≤xi,j≤1,表示域控制器i的第j個(gè)任務(wù)卸載到中央計(jì)算器的比例,剩余的1-xi,j的計(jì)算任務(wù)留在域控制器本地進(jìn)行計(jì)算。則本地延時(shí)為:
(10)
其中,Di,j表示該任務(wù)需要計(jì)算的數(shù)據(jù)長(zhǎng)度,ck單位是cycles/bit,表示處理1 bit數(shù)據(jù)需要的指令周期,其由計(jì)算任務(wù)本身采用的算法決定;fi單位為cycles/second,表示域控制器i的計(jì)算能力。
本地計(jì)算的能耗Ei,j計(jì)算公式為:
(11)
其中,Zi單位為J/cycle,表示域控制器i單個(gè)CPU指令周期消耗的能量。
任務(wù)卸載的計(jì)算時(shí)延為:
(12)
(13)
其中,ε是計(jì)算結(jié)果與計(jì)算任務(wù)數(shù)據(jù)量的比例,由于計(jì)算結(jié)果的數(shù)據(jù)長(zhǎng)度一般遠(yuǎn)小于原始計(jì)算數(shù)據(jù)長(zhǎng)度,為易于分析驗(yàn)證,這里取任務(wù)的平均比例均值0.1。因此,任務(wù)卸載總延時(shí)為:
(14)
任務(wù)卸載計(jì)算的總能耗為:
(15)
其中,ZM單位為J/cycle,表示中央計(jì)算機(jī)單個(gè)CPU指令周期消耗的能量,Wi,j單位為J/bit,表示以太網(wǎng)收發(fā)1 bit數(shù)據(jù)需要消耗的能量。
(16)
這是一個(gè)涉及多變量的單目標(biāo)優(yōu)化問(wèn)題,梯度下降法[11]是解決該類問(wèn)題的傳統(tǒng)算法,但其在接近最優(yōu)解的區(qū)域收斂速度明顯變慢,且容易陷入局部最優(yōu)解。其他針對(duì)邊緣計(jì)算的最優(yōu)化算法包括深度確定性策略梯度算法[12]、基于增強(qiáng)學(xué)習(xí)的A3C算法[13]、內(nèi)點(diǎn)法[14]等??紤]到車內(nèi)計(jì)算卸載的應(yīng)用場(chǎng)景下中央計(jì)算機(jī)本身也是車載設(shè)備,存在功耗、帶寬等多個(gè)車載環(huán)境的復(fù)雜約束條件,而遺傳算法適于求解復(fù)雜系統(tǒng)問(wèn)題[15-16],對(duì)問(wèn)題的種類有較好魯棒性,這里采用遺傳算法進(jìn)行優(yōu)化求解。
(17)
計(jì)算種群個(gè)體適應(yīng)度值,用于衡量個(gè)體表征的解空間與最優(yōu)化目標(biāo)的接近程度,由于目標(biāo)函數(shù)是一個(gè)最小化函數(shù),因此適應(yīng)度計(jì)算方程如下式所示:
Fita=fmax-f(ya,b)
(18)
其中,fmax是本代種群目標(biāo)函數(shù)的最大值。種群的平均適應(yīng)度為fave,若fa>fave,則個(gè)體a予以保留,其余個(gè)體采用輪盤賭選擇法,計(jì)算種群個(gè)體在下一代進(jìn)化中被選入交配池的概率為:
(19)
計(jì)算出每個(gè)個(gè)體的累積概率:
(20)
在[0,1]區(qū)間產(chǎn)生一個(gè)隨機(jī)數(shù)r,若r Pc= (21) Pm= (22) 式中,Pc為交叉概率,Pm為變異概率,e為指數(shù)常數(shù),f為待變異的個(gè)體的適應(yīng)度值;Pc_min、Pc_max分別為交叉概率的最小值和最大值;Pm_min、Pm_max分別為變異概率的最小值和最大值。設(shè)第g代交配的3個(gè)種群個(gè)體為Yr1(g)、Yr2(g)、Yr3(g),則個(gè)體變異結(jié)果為: Va(g+1)=Yr1(g)+Pm(Yr2(g)-Yr3(g)) (23) 根據(jù)交叉生成下一代種群: (24) 當(dāng)最優(yōu)值已經(jīng)連續(xù)若干代沒(méi)有變化,或種群迭代數(shù)達(dá)到預(yù)設(shè)值時(shí),結(jié)束算法迭代,得到求解結(jié)果。 使用ANDi軟件結(jié)合100Base-T1的Ethernet HIL進(jìn)行仿真測(cè)試,進(jìn)行2個(gè)場(chǎng)景下的仿真實(shí)驗(yàn):(1)保持等級(jí)A的音視頻數(shù)據(jù)始終處于發(fā)送狀態(tài);(2)音視頻數(shù)據(jù)停止發(fā)送。根據(jù)提出的改進(jìn)遺傳算法,求得仿真域控制器在兩種情況下通過(guò)車載以太網(wǎng)卸載計(jì)算任務(wù)至中央計(jì)算機(jī)的任務(wù)執(zhí)行時(shí)間,與不進(jìn)行計(jì)算任務(wù)卸載的本地計(jì)算進(jìn)行對(duì)比。實(shí)驗(yàn)參數(shù)設(shè)置如表1所示。 表1 仿真參數(shù)設(shè)置 圖5給出了在兩組場(chǎng)景下改進(jìn)遺傳算法對(duì)時(shí)延最小化的目標(biāo)求解的結(jié)果,域控制器數(shù)量為10個(gè),其中MGA-1曲線對(duì)應(yīng)等級(jí)A的音視頻數(shù)據(jù)始終處于發(fā)送狀態(tài)情況,MGA-2曲線對(duì)音視頻信號(hào)停發(fā)情況,LC(Local Computing)為本地計(jì)算策略,指計(jì)算任務(wù)全部在域控制器本地進(jìn)行計(jì)算的延時(shí),為固定值0.22秒??梢钥闯?改進(jìn)遺傳算法能夠有效地求解該最小化問(wèn)題。通過(guò)對(duì)比可看出,在音視頻信號(hào)停發(fā)時(shí),由于以太網(wǎng)總線上沒(méi)有了高優(yōu)先級(jí)流量阻塞時(shí)延的干擾因素,因此整個(gè)求解空間復(fù)雜度相對(duì)小,遺傳算法在約40代時(shí)就趨近收斂,計(jì)算任務(wù)卸載后最小延時(shí)約0.15秒,相對(duì)于本地計(jì)算延時(shí)降低31.8%;在引入等級(jí)A的音視頻數(shù)據(jù)流量時(shí),由于高優(yōu)先級(jí)流量阻塞時(shí)延的影響,導(dǎo)致求解復(fù)雜度增大,遺傳算法的收斂曲線波動(dòng)變大且收斂速度變慢,到約50代時(shí)收斂,計(jì)算任務(wù)卸載后最小延時(shí)約0.18秒,相對(duì)于本地計(jì)算延時(shí)降低了18.2%。通過(guò)對(duì)比也可以看出在音視頻數(shù)據(jù)停發(fā)時(shí),由于有足夠帶寬卸載更多的計(jì)算任務(wù)到中央計(jì)算機(jī),延時(shí)相對(duì)于有音視頻數(shù)據(jù)時(shí)降低的更顯著。 圖5 不同場(chǎng)景下的卸載仿真結(jié)果對(duì)比 將提出的MGA方法與梯度下降法(GD)、內(nèi)點(diǎn)法(IP)和A3C算法進(jìn)行比較,在存在等級(jí)A數(shù)據(jù)發(fā)送的場(chǎng)景下多次實(shí)驗(yàn)的平均結(jié)果如圖6所示。 圖6 不同優(yōu)化算法對(duì)比 由于車載以太網(wǎng)通信涉及流量整形的非線性因素,是一個(gè)非凸優(yōu)化問(wèn)題,因此梯度下降和內(nèi)點(diǎn)法對(duì)卸載延時(shí)的優(yōu)化效果并不理想,容易陷入局部收斂,特別是當(dāng)車內(nèi)網(wǎng)絡(luò)的域控制器數(shù)量增加,系統(tǒng)非線性復(fù)雜度增大時(shí)其效果劣化程度越大,卸載時(shí)延呈現(xiàn)非線性增長(zhǎng)。相比之下改進(jìn)遺傳算法與A3C方法能夠保證該非線性優(yōu)化問(wèn)題的收斂,可看出延時(shí)增加基本與域控制器數(shù)量增加呈線性關(guān)系,總體來(lái)看MGA算法也要略優(yōu)于A3C算法,多次實(shí)驗(yàn)?zāi)苋〉酶偷男遁d計(jì)算延時(shí)。 基于現(xiàn)代汽車新E/E架構(gòu)的演化趨勢(shì),該文提出了車內(nèi)邊緣計(jì)算的方法,通過(guò)100BASE-T1高速車載以太網(wǎng)進(jìn)行車內(nèi)域控制器的計(jì)算任務(wù)卸載,充份發(fā)揮高性能車載中央計(jì)算機(jī)的計(jì)算性能。該方法通過(guò)對(duì)數(shù)據(jù)等級(jí)的分類和AVB協(xié)議延時(shí)特征的研究,能夠在現(xiàn)有以太網(wǎng)音視頻數(shù)據(jù)業(yè)務(wù)正常使用的基礎(chǔ)上,通過(guò)計(jì)算卸載方案顯著提高車內(nèi)計(jì)算任務(wù)的效率,降低計(jì)算延時(shí),同時(shí)保證計(jì)算能耗不超出設(shè)計(jì)范圍。改進(jìn)遺傳算法對(duì)于復(fù)雜問(wèn)題空間的非線性問(wèn)題求解的魯棒性保證了對(duì)車內(nèi)卸載任務(wù)調(diào)度問(wèn)題的最優(yōu)化求解,仿真結(jié)果證明了所提出的計(jì)算卸載策略的可行性和有效性,最優(yōu)化求解的收斂結(jié)果在AVB協(xié)議數(shù)據(jù)流空閑時(shí)可降低31.8%的計(jì)算延時(shí),在AVB協(xié)議數(shù)據(jù)流通信過(guò)程中也可降低18.2%的計(jì)算延時(shí)。在未來(lái)的工作中,將進(jìn)一步考慮將車輛內(nèi)外網(wǎng)絡(luò)一體化進(jìn)行計(jì)算任務(wù)集成協(xié)同的方法,實(shí)現(xiàn)更為有效的邊緣計(jì)算卸載方案。4 仿真實(shí)驗(yàn)分析
5 結(jié)束語(yǔ)