趙庶源,佘鋒,李道勛,朱永東,馮遠靜
(1.之江實驗室,浙江 杭州 311121;2.吉利汽車研究院,浙江 寧波 315000;3.浙江工業(yè)大學,浙江 杭州 310000)
近年來,隨著無線通信技術的發(fā)展和智能網聯(lián)車輛的普及,面向智能交通服務的車聯(lián)網[1-3]已經引起了學術界和工業(yè)界的廣泛關注。從2021年至2026年,全球網聯(lián)汽車的市場規(guī)模預計將以19.0%的復合年均增長率增長,在2026年達到563億美元[4]。隨著自動駕駛技術的發(fā)展,基于智能網聯(lián)汽車的各類新興應用層出不窮,如超高清視頻、實時導航和交通安全服務等,一方面使車聯(lián)網的數(shù)據流量爆發(fā)式增長,帶來了極大的帶寬壓力,另一方面對車輛本身計算能力提出了極高的要求[5-7]。
為了解決車載終端處理能力差、任務時效需求高等問題,計算卸載技術被廣泛認為是提高車聯(lián)網服務性能的有效途徑[8]。與傳統(tǒng)的云計算相比,MEC(Mobile Edge Computing,移動邊緣計算)技術將計算服務器放置在靠近車輛的無線網絡邊緣位置,能夠極大地提升計算效率并降低能耗[9-11]。目前,國內外已有諸多學者針對車聯(lián)網中基于MEC的計算卸載技術進行了研究。文獻[12]針對單MEC場景,為了減少網絡中的總延遲并保證車輛通信的可靠性,提出了一種V2X鏈路聚類和MEC計算資源聯(lián)合分配算法。文獻[13]針對車輛高移動性導致的信道估計誤差,設計了基于聯(lián)合博弈的算法解決考慮不完全信道狀態(tài)信息的車輛網絡的計算卸載和功率分配問題。文獻[14]構建了一種車聯(lián)網中基于移動邊緣計算的 V2X 協(xié)同緩存和資源分配框架,合理分配計算、緩存和通信資源來降低服務時延。文獻[15]針對時延和能量損耗的均衡關系,該文提出一種基于移動邊緣計算的內容感知分類卸載算法。文獻[16]則針對多MEC合作場景,提出了一種基于熱感知的非合作博弈論方法,在保證用戶服務體驗的前提下提高了MEC的能量效率。
上述文獻大多采用了傳統(tǒng)優(yōu)化方法來求解計算卸載和資源聯(lián)合調度問題,而近年來,隨著人工智能技術的發(fā)展,深度強化學習方法也越來越多地被用來解決通信領域中的優(yōu)化問題。文獻[17]設計了一個考慮信道狀態(tài)和可用帶寬變化的單MEC車聯(lián)網系統(tǒng),提出了一種基于深度強化學習的自適應計算卸載方法。文獻[18]提出了一種基于DQN的任務調度和卸載方案,以在可靠的V2V通信條件下最小化總任務完成時間。文獻[19]在MEC服務器上設計了一種基于深度確定性策略梯度的實時自適應算法,用以分配任務卸載的計算資源和傳輸資源。文獻[20]基于SDN的可編程控制原理設計了一個集成框架,利用深度強化學習算法來實現(xiàn)網絡、緩存和計算資源的動態(tài)協(xié)調分配。
目前車聯(lián)網中的計算卸載和資源調度算法大多關注的是單MEC服務器覆蓋場景,而少量涉及多MEC服務器場景的論文,也大多采用了單智能體強化學習算法來求解資源分配的優(yōu)化問題,需要在每個資源分配時隙獲取全局的業(yè)務需求和網絡狀態(tài),在實際場景中很難實現(xiàn)。此外,傳統(tǒng)的計算卸載研究大多未考慮計算任務可切分的情況,并且忽略了計算任務執(zhí)行所需內存對卸載目的地的影響。因此,本文針對多MEC服務器覆蓋的車聯(lián)網計算任務卸載場景,在考慮本地和邊緣側服務器內存容量的基礎上,提出了一種基于多智能體深度強化學習的通信和計算資源聯(lián)合管理策略,通過設計各計算任務的切分比例并分配合理的通信和計算資源,在網絡全局任務執(zhí)行率盡可能高的條件下降低系統(tǒng)能耗。
本文考慮端邊協(xié)同的車聯(lián)網計算任務卸載場景,如圖1所示。假設M個RSU(Road Side Unit,路邊單元)均勻分布在某一區(qū)域內,每個路邊單元配置一臺內存為Cim(i=1,2…,M)的邊緣計算服務器,MEC服務器的計算資源以計算資源塊的形式表征,每臺服務器的計算資源上限為Fim個大小為f0的計算資源塊,MEC服務器之間通過光纖互聯(lián)(固定傳輸速率為R0)。每個RSU覆蓋范圍內的頻譜資源以頻譜資源塊的形式表征,共有Bi個大小為b0的頻譜資源塊。當車輛發(fā)起計算任務卸載請求時,如果當前接入的MEC服務器剩余資源不足,可卸載到鄰近的MEC服務器執(zhí)行任務。
圖1 端邊協(xié)同的車聯(lián)網計算任務卸載場景
車聯(lián)網中計算任務的來源主要是輔助駕駛或自動駕駛車輛上搭載的智能感知設備的視覺感知計算任務,根據視覺DNN(Deep Neural Networks,深度神經網絡)模型特點,可將計算任務進行切分,將切分點后部分的計算量密集部分傳輸?shù)竭吘墏?中心云進行計算,而將切分點前部分的計算量小的部分在終端設備本地進行計算,實現(xiàn)混合計算的低時延DNN推理,如圖2所示。假設網絡中共有N輛車,車輛j的本地計算資源上限為個資源塊,內存容量為。在任意時隙t,車輛j都有一定概率p產生新的計算任務,任務數(shù)據大小為,執(zhí)行所需內存大小為,所需計算量為(計算任務所需的CPU周期數(shù)),任務最低容忍時延。若任務以w的比例進行切分,為了分析簡便起見,本文假設數(shù)據大小、所需內存、所需計算量都按同比縮放,即大小的數(shù)據在本地處理,所需內存和計算量為大小的數(shù)據上傳到指定MEC服務器處理,所需內存和計算量為(1-ω)易知,w=1表示任務完全在本地計算,w=0表示任務完全卸載到MEC服務器處理。
圖2 視覺計算端邊混合協(xié)同推理模型框架
任意車輛可通過V2I(Vehicle-to-Infrastructure,車-基礎設施)鏈路將任務數(shù)據上傳到MEC服務器進行處理,假設車輛和MEC服務器之間的無線通信采用了正交頻分多址技術,干擾可以忽略不計。定義H(t)表!示車輛的接入矩陣:
其中限制性條件C1表示每個時隙在本地分配的計算資源不能超過剩余值,C2表示為卸載到MEC服務器i上的計算任務分配的算力之和不能超過剩余值,C3表示同一RSU內車輛的頻譜資源分配之和不能超過剩余帶寬,C4和C5分別表示在本地和MEC服務器上執(zhí)行的計算任務內存之和不能溢出。
上述長期優(yōu)化問題涉及連續(xù)相干時隙的順序決策,網絡環(huán)境和用戶請求時動態(tài)變化,傳統(tǒng)優(yōu)化方法難以求解。強化學習作為一種順序決策方法,可以通過在目標環(huán)境中不斷進行試錯學習,并根據反饋結果修改策略,使獎勵最大化,在解決這類問題上有特定的優(yōu)勢。因此,本文將基于MEC的動態(tài)任務分配和資源調度問題建模成馬爾可夫決策過程,利用深度強化學習算法進行求解。
公式(9)所描述的問題實際上是一個多用戶合作和競爭問題,傳統(tǒng)的單智能體強化學習算法的復雜度會隨著網絡中車輛和MEC服務器數(shù)量的增加而急劇提升,并且在實際決策過程中很難同時獲取所有車輛和MEC服務器的當前狀態(tài)信息,因此本文提出一種基于MADDPG(Multi-agent Deep Deterministic Policy Gradient,多智能體深度確定性策略梯度)的動態(tài)任務分配和資源調度算法[21],算法框架如圖3所示。該算法將每輛車看做一個智能體,每個智能體都有一個基于策略的Actor網絡和一個基于價值的Critic網絡,并引入深度神經網絡來擬合值函數(shù),解決狀態(tài)空間的維度災難問題。MADDPG算法的特點是集中式訓練、分布式執(zhí)行,即在訓練階段每個智能體都可獲得全局觀測信息并設計中心化的評價函數(shù)Critic,而Actor根據Critic給出的Q值進行更新;訓練完成之后各智能體可根據自己的觀測利用Actor網絡做出決策。首先,本文給出針對該優(yōu)化問題的馬爾科夫決策過程的各要素設計方案。
圖3 MADDPG算法框架
(1)狀態(tài)空間:將每個智能體在時隙t的狀態(tài)定義為當前車輛的任務請求信息、當前車輛的計算和內存資源剩余信息、所有MEC服務器的計算和內存資源剩余信息以及當前RSU的頻譜剩余信息,即:
(2)動作空間:在時隙t智能體j需完成的動作包括:判斷任務切分比例及卸載的MEC服務器編號、本地計算需求的算力資源、邊緣計算需求的算力資源、任務傳輸需求的頻譜資源,即:
(3)獎勵函數(shù):由于本文考慮的是網絡全局性能,且MADDPG算法中各智能體的Critic可使用所有智能體的觀察和策略信息,是一個中心化的評價函數(shù),因此類似于公式(9),將獎勵設置為當前時隙任務執(zhí)行率和系統(tǒng)能耗的加權和,即:
MADDPG算法融合了策略梯度和DQN算法的優(yōu)點,使用經驗回放和目標網絡模塊來提升性能。下面給出具體的算法描述:對于N個智能體的決策場景,用μ={μ1,…,μN}表示智能體采用的N個確定性策略,對應的參數(shù)用θ={θ1,…,θN}表示。類似于深度確定性策略梯度算法,第j個智能體的梯度可以寫為:
如表1所示,本文仿真環(huán)境設置為均勻分布的4個MEC服務器覆蓋的20輛車運行的長方形道路區(qū)域,RSU的覆蓋半徑設置為500 m。每個episode初始時刻車輛從隨機道路口生成,任意選擇一個方向按照60 km/h的速度勻速移動,當遇到路口時,車輛從排除來時方向以外的3個方向中隨機選擇一個方向繼續(xù)前行,每個時隙開始時會對車輛的位置按照上述規(guī)則更新,每個episode包含300個時隙。利用Python進行強化學習算法的仿真,每個智能體的網絡均由3個全連接的隱藏層組成,各層神經元分別為128、64、32個。網絡性能的計算取50個episode共15 000時隙獎勵函數(shù)的均值,參照公式(12)。本文中考慮2種基準算法:
表1 仿真參數(shù)設置
(1)貪婪法:每輛車在每個時隙產生新的計算任務時,首先考慮在本地消耗所有的計算資源來執(zhí)行,若本地資源無剩余則上傳到最近的MEC服務器執(zhí)行。當有多個用戶同時向同一MEC服務器請求計算資源時,頻譜和計算資源均分。
(2)均分法。每輛車將每個時隙產生的任務均分,一半在本地執(zhí)行,消耗所有資源,一半上傳到最近的MEC服務器執(zhí)行。同樣,當有多個用戶同時向同一MEC服務器請求計算資源時,頻譜和計算資源均分。
圖4為時隙間隔為200 ms時,MADDPG算法、貪婪法、均分法在任務產生概率下的網絡性能對比。從圖4中可以看出,本文所提的優(yōu)化算法能夠較好地提高網絡總體性能,并且在任務產生概率提升的情況下,本文算法的性能提升更加明顯。均分法的性能在一開始優(yōu)于貪婪法而后逐漸變差是因為在任務產生概率不高的情況下,在新任務到來之前可完成計算釋放出本地資源;而當任務產生越來越頻繁時,新生成的任務由于本地無計算資源可用導致執(zhí)行率下降,從而網絡整體性能下降。
圖4 新任務產生概率對網絡性能的影響
針對未來車聯(lián)網中的復雜計算卸載問題,本文提出了一種基于多智能體深度確定性策略梯度算法的資源調度策略,能夠有效地解決任務切分、卸載接入、頻譜分配和計算資源分配問題,在盡可能提高網絡中所有任務執(zhí)行率的情況下降低系統(tǒng)能耗,仿真結果證明了本文所提理論模型和算法是可靠的。下一步工作將繼續(xù)優(yōu)化問題求解算法,目前所用MADDPG算法仍存在復雜度過高、狀態(tài)和動作空間過大等問題,需優(yōu)化改進。
圖5將所有車輛的新任務的產生概率固定為0.5,對比了任務生成時隙間隔對不同算法性能的影響,結果表明本文所提優(yōu)化算法優(yōu)勢明顯。總體來看,如果任務生成間隔較長,在新任務到達之前資源可釋放出來,在時隙間隔不長時網絡性能可有效提升,但兩種基準算法在時隙間隔500 ms以上之后性能幾乎保持不變,原因是本地計算資源制約導致即使完全釋放也有可能不能有效完成任務,而本文所提優(yōu)化算法可以結合各服務器負載情況,將部分任務卸載到最適合的MEC服務器執(zhí)行,仍能小幅度提升性能。
圖5 新任務產生時隙間隔對網絡性能的影響
通過以上實驗分析可得,相較于基準算法,本文所提優(yōu)化算法由于在計算卸載時可以顧及網絡全局的剩余資源情況,并根據本地和MEC服務器的能力選擇合適的切分比例卸載計算任務,在不同網絡環(huán)境下都能選擇較優(yōu)的資源分配方式,提升網絡性能。