章航嘉,謝志軍
(寧波大學信息科學與工程學院,浙江 寧波 315211)
物聯(lián)網(wǎng)(internet of things,IoT)和無線通信技術(shù)的飛速發(fā)展不斷推動傳統(tǒng)車載自組網(wǎng)向車聯(lián)網(wǎng)(Internet of Vehicles,IoV)轉(zhuǎn)變[1]。 在IoV 中,智能汽車(Intelligent Vehicle,IV)使用各類傳感器、攝像頭和導航系統(tǒng)等車載設備從周圍環(huán)境收集信息并與服務器或附近車輛共享,提高交通效率,降低事故發(fā)生率[2]。 與此同時,IoV 的快速發(fā)展加速了智能交通系統(tǒng)(Intelligent Transportation Systems,ITS)的建設和實際應用[3]。 ITS 通過路邊單元(Road Side Unit,RSU)收集IVs 的各類傳感信息,利用無線通信技術(shù)上傳到服務器并對數(shù)據(jù)進行分析,做出有利IVs 的決策,以減少交通擁堵,降低車輛油耗和事故發(fā)生率,提高電動汽車能源利用率和電網(wǎng)能源有效使用率[4-6]。 雖然ITS 利用共享數(shù)據(jù)訓練全局模型實現(xiàn)了對IoV 更全面、更廣泛和更智能的實時、準確管理,但是IVs 和ITS 的信息交互存在嚴重的通信開銷和數(shù)據(jù)隱私問題,這嚴重阻礙了ITS 的未來發(fā)展。 傳統(tǒng)的ITS 系統(tǒng)交互信息是車載設備收集到的原始數(shù)據(jù)。 在無線通信模式中,惡意用戶有可能攔截無線通信信號以竊聽,刪除,編輯和重播消息[7]。因此,傳統(tǒng)交互方式對原始數(shù)據(jù)不加密的傳輸方式在數(shù)據(jù)安全性和隱私性方面存在嚴重隱患,極大降低了駕駛員加入ITS 共享信息的意愿。 同時,隨著數(shù)據(jù)隱私問題逐漸列入司法保護范疇,隱私保護技術(shù)的研發(fā)和應用刻不容緩。
聯(lián)邦學習(Federated Learning,F(xiàn)L)作為一種新興機器學習領(lǐng)域的數(shù)據(jù)隱私保護訓練范式,有效地解決了傳統(tǒng)ITS 通過收集IVs 原始數(shù)據(jù)訓練一個高精度共享模型的問題,進而降低數(shù)據(jù)泄露引發(fā)的危害,同時減輕原始數(shù)據(jù)傳輸造成的骨干網(wǎng)絡擁堵壓力[8-9]。 文獻[10]首次提出將FL 應用到電動汽車充電器的電網(wǎng)能源預分配策略,通過訓練全局模型降低電網(wǎng)能源的轉(zhuǎn)移成本和提供實時穩(wěn)定的能源供給。 文獻[11]提出了一個基于FL 和區(qū)塊鏈的IoV數(shù)據(jù)隱私保護框架,通過異步聚合方式得到全局模型。 文獻[12]建立了基于區(qū)塊鏈和FL 的數(shù)據(jù)加密全局模型訓練框架。 但是,這些研究并沒有考慮IVs 本地資源的有限性。
傳統(tǒng)的全局模型要求所有IVs 參與全局模型更新。 由于IVs 本地資源的異構(gòu)性,不加規(guī)劃地選擇IVs 會導致全局模型訓練時延和系統(tǒng)能量過度損耗,同時存在數(shù)據(jù)隱私泄露問題。 為了降低骨干網(wǎng)傳輸壓力和保護數(shù)據(jù)隱私,提出了基于強化學習的客戶選擇策略,在無需任何先驗知識下,采取具有最長遠效益的策略以優(yōu)化系統(tǒng)資源[13-15]。 為了解決多IVs 參與全局模型更新帶來的維度災難問題,提出基于評分機制降低客戶選擇維度,并最后通過仿真對提出的算法進行性能評估和分析。
本文系統(tǒng)框架分為由IVs 構(gòu)成的環(huán)境層,RSU構(gòu)成的隱私保護模塊以及服務器端的資源優(yōu)化模塊,如圖1 所示。 ITS 與m個RSU 通過無線通信技術(shù)建立連接。 第i個RSU 與無線通信范圍內(nèi)的ni輛IVs 建立聯(lián)系,其中i∈M={1,…,m},ni∈N={n1,…,nm}。 在環(huán)境層中,IVs 通過傳感器等車載設備收集附近的道路信息和視頻信息,然后根據(jù)ITS 發(fā)布的訓練任務,選擇合適的數(shù)據(jù)和程序參與本次模型更新,最后將更新后的本地模型和下一任務可用資源狀態(tài)上傳。 隱私保護模塊由RSU 集合構(gòu)成,每個RSU 接收無線通信范圍內(nèi)IVs 上傳的本地模型并進行中間聚合。 資源優(yōu)化模塊分為全局模型聚合和雙層深度Q 網(wǎng)絡(Double Deep Q Network,DDQN)決策兩部分[16]。 全局模型聚合將RSU 上傳的中間模型進行聚合,得到新的全局模型,作為下一通信回合的初始模型。 DDQN 決策部分通過收集IVs 的資源狀態(tài)并計算獎勵,通過Q 網(wǎng)絡和目標Q網(wǎng)絡計算損失函數(shù),更新決策模型,同時選擇具有最長遠效益的IVs 參與下次ITS 任務。
圖1 系統(tǒng)框架
本文采用FL 范式作為數(shù)據(jù)隱私保護策略。 傳統(tǒng)深度學習模型訓練范式,通常采用集中式云計算,需要將IVs 上的所有數(shù)據(jù)經(jīng)過骨干網(wǎng)絡上傳到數(shù)據(jù)中心,再由云計算中心對數(shù)據(jù)進行處理。 IVs 私有數(shù)據(jù)脫離本地設備,會增大數(shù)據(jù)泄露的風險。 為解決IVs 隱私保護問題,F(xiàn)L 訓練范式保留IVs 數(shù)據(jù)在本地,通過多客戶協(xié)作式訓練下發(fā)的全局模型,間接利用客戶豐富的數(shù)據(jù)資源,來達到全局模型訓練的目的。
在FL 訓練范式中,每次ITS 發(fā)布全局任務,第i個RSU 將與ni個IVs 建立通信聯(lián)系。 FL 范式通過ITS 下發(fā)全局模型wrG到所有IVs,其中r表示當前通信回合。 第k個IV 利用本地資源,包括電量ek、CPU 周期頻率fk和私有數(shù)據(jù)資源,通過隨機梯度下降算法更新全局模型,得到新一輪的本地模型wkL[17]。 同時,由于IVs 行駛路況、行駛路線和地理位置等的差異,IVs 本地存儲的數(shù)據(jù)具有極強的異構(gòu)性σ,也就是非獨立同分布屬性,其中σ表示IVs本地數(shù)據(jù)的異構(gòu)程度。 也就是說,當σ=0.5 時,表示IV 本地數(shù)據(jù)中有50%數(shù)據(jù)具有同一標簽,其余50%數(shù)據(jù)具有其他標簽。 IVs 對全局模型更新結(jié)束后,將本地模型通過無線網(wǎng)絡上傳到建立通信連接的RSU,RSU 接收IVs 上傳的本地模型wkL,進行中間聚合
RSU 得到中間模型后,上傳到ITS。 ITS 接收到所有中間模型后,進行全局模型聚合
上述過程不斷重復,直到全局模型達到目標精度Ω或者預定通信回合數(shù)。
該部分首先建立系統(tǒng)模型,進而針對傳統(tǒng)深度學習訓練范式在資源優(yōu)化方面的不足提出了基于DDQN 的IVs 選擇算法。
FL 訓練范式中,ITS 選擇符合任務要求的所有IVs 參與全局模型的更新。 IVs 擁有獨立存儲能力和計算能力,并能夠獨立提供完成ITS 發(fā)布任務的能源。 在IVs 本地計算過程中,第k輛IV 完成ITS任務需要的CPU 總周期為:
式中:N為IVs 計算1 bit 數(shù)據(jù)需要的CPU 周期。
第k輛IV 完成ITS 下發(fā)的任務,即本地模型更新,時延為:
第k輛IV 完成本地模型更新任務后,通過無線通信技術(shù)上傳到已建立通信關(guān)系的RSU,傳輸時延為:
RSU 得到IVs 的本地模型后,需要中間聚合和模型傳輸兩個步驟。 模型聚合消耗的時間和能量相對總時間可忽略不計。 因此,RSU 傳輸時間為:
式中:rRSU-i為第i個RSU 與ITS 間的無線通信可用帶寬。
本文假設模型下發(fā)過程沒有丟失且同時到達IVs,所以忽略模型下發(fā)需要的耗時。 同時,所有IVs通過同步更新算法完成任務,總時延即為最大時延。因此,系統(tǒng)完成一個任務周期需要的總時延為:
第k輛IV 通過本地資源更新全局模型,需要消耗的電量為:
式中:δ為IVs 芯片架構(gòu)的有效開關(guān)電容[18]。
第i個RSU 無線通信范圍內(nèi)的IVs 需要消耗的電量為:
由于傳輸需要消耗的電量相對計算耗能可忽略不計。 FL 交互算法選擇所有符合要求的IVs 參與。因此,系統(tǒng)完成一個任務周期總耗能為:
傳統(tǒng)的云計算深度學習訓練范式選擇RSU 無線通信范圍內(nèi)的所有IVs 參與任務,不但導致系統(tǒng)能源的過度消耗,而且不能加速全局模型的收斂,造成了系統(tǒng)資源的嚴重浪費。 為了降低算法的波動,同時對資源更好利用,本文提出了由經(jīng)驗驅(qū)動的智能化IVs 選擇算法DDQN,并針對性地提出評分機制解決動作空間的維度災難問題。
3.2.1 狀態(tài)空間
假設對IVs 的選擇策略滿足馬爾可夫性,將其構(gòu)造為無模型馬爾可夫決策過程(Markov Decision Processes,MDP),即MDP(S,A,P,R)。 若同時將所有參與的IVs 狀態(tài)信息作為輸入,并同時輸出所有IVs 的選擇策略,將導致狀態(tài)空間和動作空間的維度災難。 這不僅難以訓練智能體,更會導致無法達到生成最優(yōu)決策以優(yōu)化ITS 系統(tǒng)資源的目的。 為了解決隨著IVs 數(shù)量增長造成的狀態(tài)空間S和動作空間A的維度災難問題,本文重新定義了狀態(tài)空間和動作空間。 在每個RSU 通信范圍內(nèi),狀態(tài)空間S定義為:
式中:
式中:E為最大電量狀態(tài);F為最大CPU 頻率周期;R為最大無線通信帶寬。
3.2.2 基于評分的動作空間
式中:
對IVs 的初步動作進行全局分析,選擇得分最高的K輛IVs。 最后IVs 動作定義為:
式中:ak=1 表示該IV 參與任務;ak=0 表示不參與任務。
3.2.3 轉(zhuǎn)移概率
IVs 的資源狀態(tài)和RSU 所處環(huán)境的無線通信信道狀態(tài)都處于實時變化中。 同時,智能體只對上傳的IVs 資源狀態(tài)進行分析。 因此,IVs 不斷行駛造成的地理位置移動并不會影響智能體的決策。 所以,僅需定義資源狀態(tài),IVs 資源狀態(tài)轉(zhuǎn)移概率定義為fk~U(0,F(xiàn)),rk~U(0,R),rRSU~U(0,R)。
3.2.4 獎勵函數(shù)
獎勵函數(shù)對于優(yōu)化智能體的策略探索至關(guān)重要。 本文主要使用基于DDQN 的算法對系統(tǒng)的資源進行優(yōu)化,宏觀層面體現(xiàn)在降低達到目標精度Ω需要的總時延和系統(tǒng)總能耗,即與總時延和系統(tǒng)總能耗成反比。 因此,獎勵函數(shù)定義為:
式中:αT為時延的比例因子;αE為電量的比例因子。
3.2.5 基于DDQN 的IVs 選擇算法
ITS 根據(jù)IVs 的當前狀態(tài)s∈S,計算得到a∈A,然后根據(jù)RSU 范圍內(nèi)的IVs 動作空間,得到最后的IVs 狀態(tài),以最大化整個系統(tǒng)的長期累積獎勵π*:S→A。 傳統(tǒng)的Q 學習(Q-Learning,QL)算法經(jīng)常被用來尋找最優(yōu)決策[19]。 QL 算法通過構(gòu)造稱為Q-Table 的Q(s,a),記錄狀態(tài)、動作和相應的獎勵并不斷更新,通過對經(jīng)驗的回顧找到最優(yōu)策略。 ITS通過經(jīng)驗回放更新Q(s,a):
式中:Q′(s,a)為更新后的Q-Table;R(s,a)為當前狀態(tài)和動作下的獎勵;s′為下一狀態(tài);a′為下一動作;β為學習率;γ為折扣因子。
但是,QL 構(gòu)造的Q-Table 隨著狀態(tài)空間和動作空間的維度升高需要極大的存儲空間,同時決策需要更長的查表時延。 深度Q 網(wǎng)絡(Deep Q Network,DQN)通過將Q-Table 映射為一個神經(jīng)網(wǎng)絡(Neural Network,NN),解決了存儲空間和查找時延問題[20]。但是,DQN 采用單NN 進行策略選擇和評估會造成Q-value 的過估計。 因此,本文提出使用帶有Q 網(wǎng)絡和目標Q 網(wǎng)絡的DDQN 對策略進行選擇和評估,避免對Q-value 過估計。 DDQN 更新時損失函數(shù)為
式中:L( )為損失函數(shù);E[ ]為數(shù)學期望;θ為Q 網(wǎng)絡的模型參數(shù);y為目標Q 網(wǎng)絡根據(jù)Q 網(wǎng)絡具有最大獎勵值的動作評估值。
y定義為:
算法流程如圖2 所示。 首先,初始化經(jīng)驗回放、學習率β、折扣因子γ和Q 網(wǎng)絡參數(shù)θ,并使目標Q網(wǎng)絡參數(shù)θ′=θ。 每次全局模型更新,ITS 通過IVs上一狀態(tài)s、選擇的動作a以及現(xiàn)今狀態(tài)s′,通過獎勵函數(shù)得到獎勵R,并將(s,a,R,s′)存入經(jīng)驗回放區(qū)。 每次訓練Q 網(wǎng)絡時,從經(jīng)驗回放中選擇最小批更新。 隨后通過概率(ε×η)選擇最大得分,或者按概率(1-ε×η)隨機選擇得分,其中ε為策略概率,η為概率衰減因子。 然后,根據(jù)RSU 范圍內(nèi)的總體得分,選擇具有最高得分的K輛IVs 參與該通信回合并通過RSU 發(fā)放最新全局模型。
圖2 基于DDQN 的IVs 選擇算法流程
本文采用Ubuntu 18.04 操作系統(tǒng),keras2.2.4 開發(fā)環(huán)境,Intel E5 系列8 核處理器,16G 內(nèi)存,RTX 2080Ti 圖形處理器。 采用MNIST 作為數(shù)據(jù)集,設置數(shù)據(jù)異構(gòu)屬性σ=0.7,即每輛IV 擁有600 張圖片參與每次本地模型更新,其中主要類占比為70%。 Q 網(wǎng)絡隱含層為256×256。 本文的基線算法為傳統(tǒng)交互算法、FL 交互算法、隨機選擇算法和K-中心選擇算法。 傳統(tǒng)交互算法僅傳輸數(shù)據(jù),F(xiàn)L 交互算法選擇所有IVs 參與,隨機選擇算法隨機選擇K輛IVs 參與,K-中心選擇算法根據(jù)IVs 資源狀況聚類后再在每個類中選擇一輛IV 參與。 其余仿真參數(shù)設置見表1。
表1 參數(shù)設定
ITS 消耗的能源主要由處于終端的IVs 消耗。由于IVs 不斷地從其他客戶端或者服務器接受任務,任務隊列一直處于活動狀態(tài),有效地對任務進行安排能夠提高能源利用率,避免額外消耗。
傳統(tǒng)交互算法將本地數(shù)據(jù)上傳,并不消耗本地計算資源,本文忽略數(shù)據(jù)傳輸?shù)哪芎摹?如圖3 和表2 所示,隨機選擇算法、K-中心選擇算法和基于DDQN 選擇算法需要的能源都少于FL 交互算法。 而且隨機選擇算法、K-中心選擇算法和基于DDQN 選擇算法相較于FL 交互算法,系統(tǒng)總能源消耗降低了77%以上,最優(yōu)的基于DDQN 的選擇算法系統(tǒng)總能源消耗降低了82.02%。 原因在于,F(xiàn)L 交互算法需要所有IVs 參與每次迭代,造成了本地資源的浪費。 同時,本地模型的目的是最小化本地數(shù)據(jù)的損失,而ITS 需要最小化全局的損失。 由于全局模型需要對所有本地模型進行聚合,本地模型權(quán)重之間的差異將被累積。 因此,選擇所有IVs 參與并沒有大幅度降低需要的通信回合,進而節(jié)約系統(tǒng)能源。
圖3 ITS 總能源消耗
系統(tǒng)總消耗能源體現(xiàn)了系統(tǒng)完成ITS 任務需要的總能源,每通信回合消耗能源表現(xiàn)了每次交互需要的能源。 每通信回合需要的能源越少,IVs 需要付出的資源越少,從而增強ITS 的系統(tǒng)伸縮性和持續(xù)性。 如圖4 和表2 所示,本文算法每通信回合消耗能源相較于FL 交互算法,減少了90.56%。
表2 系統(tǒng)能源消耗
圖4 ITS 每通信回合能源消耗
由于FL 交互算法每個通信回合需要所有IVs參與,所以需要消耗大量的本地計算資源。 隨機選擇算法、K-中心選擇算法和基于DDQN 選擇算法每次選擇10 輛IVs 參與,有效降低了每個通信回合的能源損耗,同時并沒有大幅度降低模型收斂速度,也有利于IVs 處理其他任務。
時延決定了ITS 全局模型的迭代速度和收斂速度。 系統(tǒng)時延表示每次全局模型達到目標精度需要的時間,每通信回合時延表示每次全局模型更新需要的時延。
如圖5 和表3 所示,傳統(tǒng)交互算法和FL 交互算法總時延相對較小。 原因在于,每個通信回合IVs模型更新和上傳是同步進行的,只計算當前回合最大傳輸時延。 而每個通信回合要求所有IVs 參與模型更新有助于全局模型收斂,相應地降低了總時延。另外,基于DDQN 選擇算法的總時延明顯優(yōu)于隨機選擇算法和K-中心選擇算法。
圖5 ITS 總時延
表3 系統(tǒng)時延
如圖6 和表3 所示,基于DDQN 選擇算法每個通信回合的時延相較于傳統(tǒng)交互算法降低了10.00%。原因在于,基于DDQN 選擇算法能夠選擇模型更新及傳輸時延較小的IVs 參與,降低了時延上限。
圖6 ITS 每通信回合時延
大量數(shù)據(jù)的傳輸會導致骨干網(wǎng)絡的堵塞。 降低數(shù)據(jù)交互量可以有效地緩解骨干網(wǎng)的壓力,同時減少IVs 的傳輸能耗。
如圖7 所示,F(xiàn)L 交互算法將原始數(shù)據(jù)傳輸轉(zhuǎn)換為本地模型傳輸,傳輸數(shù)據(jù)量減少了92.06%。 本文算法不但有效地保護了數(shù)據(jù)隱私,同時極大降低傳輸數(shù)據(jù)量,緩解骨干網(wǎng)壓力。 本文算法相較于FL 交互算法傳輸數(shù)據(jù)量減少了80.95%,相較于傳統(tǒng)交互算法減少了98.49%。 原因在于,基于DDQN 選擇算法可以均衡能源消耗和傳輸時延,選擇具有長遠效益的IVs 參與全局模型更新,從整體上降低傳輸數(shù)據(jù)量。
圖7 ITS 總傳輸數(shù)據(jù)
現(xiàn)有研究大多忽視車聯(lián)網(wǎng)隱私保護的情況,同時車聯(lián)網(wǎng)應用的開發(fā)受限于有限的無線通信資源和計算資源。 在此前提下,本文提出了K-中心選擇算法和基于DDQN 選擇算法。 K-中心選擇算法針對傳統(tǒng)算法無法對隱私進行保護和無法對資源進行有效優(yōu)化的問題,通過聚類有效地優(yōu)化了系統(tǒng)資源,同時有效降低了算法的時間復雜度。 基于DDQN 選擇算法通過深度強化學習進行決策,進一步提高了系統(tǒng)資源利用率。 仿真結(jié)果表明,基于DDQN 選擇算法相比傳統(tǒng)方法,每個通信回合時延降低了10.00%,傳輸數(shù)據(jù)量降低了98.49%。
本文研究中,基于DDQN 選擇算法根據(jù)系統(tǒng)資源狀況進行決策,無法準確地判斷IVs 本地數(shù)據(jù)對全局模型的影響,造成部分通信回合全局模型沒有提升,以致資源浪費。 后續(xù)研究將考慮如何根據(jù)本地數(shù)據(jù)加速全局模型收斂,進一步優(yōu)化系統(tǒng)資源。 另外,如何在IVs 真實應用上利用本文設計的隱私保護和資源優(yōu)化策略也將是后續(xù)研究的重點內(nèi)容。