










摘 要: "針對多變環境條件下的交通堵塞問題,將強化學習、神經網絡、多智能體和交通仿真技術結合起來,提出了用于優化多路口條件下交通狀況的trajectory reward light(TR-Light)模型。該方法具有幾個顯著特點:基于紅綠燈擬定交通組織方案;將多智能體強化學習用于紅綠燈控制;通過紅綠燈的協同達到區域級的交通組織優化;在智能體每次行為執行結束后實施軌跡重構,在OD對不改變的情況下改變車輛行駛路徑,根據方案和重構軌跡來計算智能體的最終回報。最后,通過SUMO進行交通仿真實驗和交通指標對比,驗證了該模型在多交叉口中提高了路網暢通率,改善了交通狀態。實驗表明該模型可行,可有效緩解交通擁堵。
關鍵詞: "多智能體; 強化學習; SUMO; 紅綠燈
中圖分類號: "TP399 """文獻標志碼: A
文章編號: "1001-3695(2022)02-027-0001-00
doi:10.19734/j.issn.1001-3695.2021.06.0283
Tr-light:traffic organization plan optimization algorithm based on
multiple traffic signal lights reinforcement learning
Wu Haosheng, Zheng Jiaoling, Wang Maofan
(Software College, Chengdu University of Information Technology, Chengdu 610225, China)
Abstract: "Focusing on the problem with traffic congestion under changing environmental conditions,the paper proposed a trajectory reward light(TR-Light) model by combining reinforcement learning,neural network,multi-agent and traffic simulation technology to optimize the traffic at multi-intersections.This method had considerable merits in the following aspects.The traffic organization plan was formulated based on traffic lights;Multi-agent reinforcement learning was used on traffic light control; Regional traffic organization was optimized through the coordination of traffic lights.The agent implemented trajectory reconstruction after the execution of each behavior so as to change the vehicle travel path without changing the OD pair,and to calculate the final reward of the agent according to the plan and reconstructed trajectory.Finally,it conducted a traffic simulation experiment through SUMO,and the comparison of traffic indicators verified that the proposed model improved the smoothness of the road network and the traffic state at the multi-intersections.Experiments show that the model is feasible and effectively mitigates the traffic congestion.
Key words: "multi-agent; reinforcement learning; SUMO; traffic lights
0 引言
在科技信息化的時代,人類的生活越來越豐富,現在大多數家庭都擁有私家車,這就出現了在城市里各種各樣的交通問題比如等待時間過長、車道占有率過高等。隨著人工智能的發展出現了許多交通智能化技術,開始有效地控制交通行為。多智能體強化學習是當下人工智能發展的技術之一。多智能體通過自主學習、分步協調和組織的能力,根據自身當前的狀態與其他智能體進行學習,在這一過程中有效地配合其他智能體完成自己的學習并改變自身的狀態完成最終自己高效的目標。相比較單智能體而言多智能體更加注重群體學習,多智能體的學習效率往往都是高于單智能體,能夠在短時間內有效地完成目標效益最大化。
在交通方面交叉路口的交通運動最關鍵的一種行為,大部分的城市擁堵現象都與交叉口相關,所以有效地控制交叉路口往往能夠提高路網的運行效率,在現在的技術中可以控制交通信號燈來協調交叉路口,也可以通過交通組織方案進行封路來優化路網的暢通率。最近,許多人嘗試著使用強化學習技術來優化交通狀況。通過多項研究表明,多智能體強化學習技術要遠遠優于其他傳統交通方式。最大優勢在于智能體能夠通過觀察當下自己的交通狀態根據當時環境的反饋來學習采取下一步的相關操作,強化學習顯著兩大特征就是試錯和延遲匯報。agent接受環境狀態,根據內部推理機制,agent選擇相應行為動作作用于環境,環境接受該動作后轉移到新的狀態,同時產生一個獎勵反饋給agent,agent再根據獎勵和當前環境狀態再選擇下一個動作,選擇原則是使受到正獎賞值的動作概率增大[1]。
本文通過強化學習的兩大要素獎勵和狀態以及多智能體之間的集中式學習分散式執行以及軌跡重構的思想提出trajectory reward light(TR-Light)的算法來提高路網的暢通率。
雖然在2013年就有人提出了關于多智能體之間行動的方式來改善交通狀況,但在交通的實際應用中卻發揮的不是很理想并且難以實施。本文算法就是在當下復雜動態的交通環境下能夠快速給出最好的交通方案來改善交通狀況,這是一項非常有意義并且極具挑戰性的課題研究,主要存在以下兩個難點:
如何讓智能體在交通環境中能夠高效地學習這一直是近幾年以來強化學習中的挑戰。在傳統的強化學習中訓練智能體的方法都是不斷地迭代策略進行重復訓練,但是如此長此以往的訓練只適用于單智能體上,對于多智能體來說并不合適[2]。
考慮到對城市中的交通進行智能管理的問題,當智能體開始因策略執行行為時,如何在眾多策略中選出一個優秀的策略并執行,成為近幾年來的一個難點。
為了能夠解決該上述的問題,本文提出TR-light網絡交通模型,將交通信號燈的控制作為動作的選擇,將路口中的車輛等待時間和車輛與道路的占有率作為環境的觀察值,通過集中式學習分布式執行的方法,將多路口的智能體進行訓練學習,有效提高了路網的暢通率,同時在進行管控后對行駛該路段的車輛進行軌跡重構,將重構后的軌跡與強化學習相結合達到最佳效果。
通過設置交通信號燈中的program來改變道路的狀態,實現某種意義上的短暫封路,來進行交通管控如圖1所示。
如圖1所示,對圖中的某一出車口進行行為設定,在交叉口道路中會針對所有道路的進車口進行這四種方案的交通管控。
1 相關工作
1.1 交通組織方案優化
交通組織方案參考以往的研究成果來看,與國外發達國家相比較,我國的交通行業發展相對而言比較晚,不管是在技術層面還是在管理層面有著一定的差距。相對于國外發達國家中交通組織系統中對于交通組織的管理和運行都有比較大的提高。同時近幾年隨著交通行業和計算機行業的發展,再加上國內外相關學者的研究,將計算機和交通相結合的技術發展,使得交通組織方案技術不斷地得到優化。我國現階段以及未來都將會長時間處于交通組織的研究領域。在我國實施的交通管控方案中,大部分都是依靠以往的經驗來進行決策,并沒有成為相對科學的管理體系,對于以后的發展是充滿著隱患的。為了能夠最大程度上保障道路的暢通,國內大量高校對交通組織方案進行研究和規劃,將多種人工智能技術和交通領域相互結合形成較為完善的體系,并隨著社會的發展狀況交通組織方案的優化也不斷進行著調整,要通過現有的技術來構造適合我國交通發展體系的研究。
1.2 單路口交通信號優化
自從2015年日期強化學習以來,Q-learning,Sarsa和TD lambda等算法成為強化學習的主流。與蒙特卡羅方法改變時間差分法TD會進行極大似然估計,從而估計的結果更符合未來數據的趨勢[3]。在交通領域中,諸多研究對單個路口使用交通信號燈控制進行了廣泛的研究,它們設定好了車輛以特定的方式到達目的地,研究大多數試圖從車輛的行駛時間和路口的排隊長度這兩個方面進行優化。近幾年來許多基于強化學習的方法試圖從數據中通過學習來解決這個問題,例如通過建立Q表使用Q-learning的早期實驗,但是Q學習的學習適合處理離散的狀態,并且使用Q學習部署到現在的交通環境中,面對單路口環境下,路口的情況有成千上萬種,Q表的容量有限的,無法統計數以萬計的狀態,并不適合交通環境。隨后深度強化學習技術得以推廣(deep reinforcement learning,DRL),該技術將具有感知的深度學習和具有決策的強化學習互相結合,解決了諸多問題[3]。DQN算法就是根據Q-learning算法進行改進出來的,該方法解決Q-learning“緯度災難”的問題[4]。Hasselt等人[5]在DQN的基礎上提出double DQN算法。2019年Hernandez等人[6]將LSTM和DQN相結合構造出來單路口環境下紅綠燈的優化,融入了神經網絡技術快速提高了實驗的收斂性。
1.3 基于多路口強化學習交通信號優化
在常規的多路口路網中,可以通過路口中的紅綠燈進行時間間隔的設置來實現協調,但實際上調節紅綠燈并不是一件容易的事情,紅綠燈之間的相位變換通常是復雜多變的,因為無法同時促進相反方向的交通。為了解決這個問題,開發了一些優化的方法,以最大程度地減少車輛行駛時間或多個交叉路口的站點數量例如文獻[7,8]。在常規的多路口環境中可以實現協調通過設置路網的所有交叉點之間的綠燈開始之間的時間間隔[9]。還有些優化的方法例如文獻[10,11]以最小化車輛的行駛時間和/或多個交叉路口的站點數量,代替優化偏移量或最大壓力;文獻[12]旨在最大化網絡的吞吐量,從而最小化行程時間。但是很多這樣的方法依舊是根據靜態環境或者假設來構建的簡化交通狀況,并不保證實際的運營會有所改善。
最早解決交通管理的問題是Miller等人[13]通過固定時間的控制,使用預定義的紅綠燈周期進行規劃。現有研究文獻[14~16]傾向于從相鄰的交叉路口選擇交通條件,并將其與目標交叉路口的交通條件直接連接起來,而忽略了交通在時間和空間上都在變化的事實。Zhang等人[17]在2018年使用了固定的通信協議進行智能體間的交互。文獻[18]使用了持續交流以及一些離散交互的方法使得智能體之間進行通信。在控制多個交叉路口的策略中,有一種方法是通過集中式訓練智能體的學習進行聯合建模并集體進行執行行為,但是這種方法有兩個相關的常見問題:a)隨著智能體數量的增長,集中式訓練的計算工作量太大;b)在測試期間,每個智能體都是獨立行動的,在動態的環境下智能體的變動需要結合周圍其他智能體進行上下協調。
所以上述的集中式訓練并不是最佳的選擇,另一種方法是使用分散式的強化學習智能體來控制多路口進行交互,該方法就是將每個智能體基于自身周圍相鄰路口的信息進行交互作出自己的決策。分散式的通信更加的實用,并不需要集中決策具有良好的伸縮性,但在模型的收斂和速度上往往是很不穩定的。Jang等人[19]在離散通信的基礎上加入了注意力機制來對傳入的通信信息進行優先級排序,在訓練過程中會有更好的質量梯度。
多智能體和深度強化學習的結合近期一直是熱門的研究方向,Mao等人[20]結合AC算法和 DL提出了ACCNET算法,通過多智能體之間的交互來提高環境的穩定性從而提高最后的結果精準度。Littman[21]提出了馬爾可夫決策過程作為MARL的環境框架,解決了大多數強化學習的問題提供了一種簡單明了的數學框架。Lowe等人[22]把強化學習中的DDPG算法和多智能體結合到一起,在不需要完整的環境模型下,能在即時獎勵和延遲獎勵之間作出選擇,每次做決策的時候,智能體會觀察當前狀態,選擇一個動作并轉移到下一個狀態。文獻[23]讓智能體在環境中學習通信協議,互相共享信息、交流信息來完成當前任務,提高共享效用。
2 算法框架
2.1 actor-critic算法概述
actor-critic網絡分為actor和critic網絡兩個部分。其中:actor網絡根據策略函數,負責完成動作并和周圍的環境完成交互;critic網絡使用了價值函數,負責評估actor進行動作完成后的表現,并且指導下一步行動的完成。actor網絡使用了策略函數,該函數的近似公式如下:
π θ(s,a)=P(a|s,θ)≈π(a|s) ""(1)
critic網絡使用的價值函數的近似,對于狀態價值和動作價值函數分別是
(s,w)≈v π(s) ""(2)
(s,a,w)≈q π(s,a) ""(3)
在critic網絡中還需要計算選出動作和后的TD-error值所用公式為
TD=r+Vπ(S′)-Vπ(S) ""(4)
對于AC算法中更新策略的參數使用的公式為
θ=θ+α ""θ log π θ(s,a)v ""(5)
2.2 交通評價指標
在使用該模型方法中,需要一定的交通指標來鑒定該模型是否能夠充分的得到有效提高,將使用以下指標來評定交通狀況。
1)路網暢通率
路網暢通率定義為路網在某一時間段 T 內,交通狀態較好的路段里程與路網中所有路段里程的比值,描述了路網總體暢通程度,是路網交通總體運行質量的一個度量,可以用于評價交通管理效果。
RNCR(t) = "∑ n i,j=1 k il ij ∑ n i,j=1 l ij """(6)
其中: RNCR(t)表示T時間段內的路網暢通率(T 可取5 min或者3 min); N 為路網中所包含路段數; l ij為第i條路段的長度;k i 為二值函數。當路段 i 的交通狀態等級屬于可接受交通狀態時, k i =1,否則 k i =0。路段平均速度 meanspeed ≥20 km/h時,為可接受交通狀態。 meanspeed <20 km/h時,為不可接受狀態。 RNCR(t) 的取值范圍為[0,1],值越大,表示路網狀態越好,反之,路網狀態越差。
2)出行時間指數
出行時間指數定義實際出行時間與期望出行時間的比值,使用 meanTimeLoss 表示,在一段時間內的平均時間損失。故出行時間指數可表示為
TTI= T T-meanTimeLoss """(7)
其中: TTI 表示出行時間指數,其值越大,交通狀態越差; T 表示所取時間間隔。
3 基于TR-light網絡的模型設定
3.1 紅綠燈智能體狀態設定
AC算法在交通中的實質運用就是先將狀態空間集與動作空間集設定好,同時在AC算法的過程中將多智能體進行集中式的交互學習,智能體將自己執行的行為方式同一回饋到一個critic網絡中,由同一個critic網絡進行對其他智能體中的actor網絡進行反向傳遞,這樣的學習方式使得智能體之間能夠更加穩定快速的收斂。
agent通過觀察路口的環境獲得實時交通狀態,將這些狀態傳遞給本文設定actor網絡進行后續的執行。當前道路的狀態將使用路口處的車輛等待時間和車道占有率進行表示,如圖2所示。
將道路的進口車道離散化為10段,道路離散化的目的是為了模型在訓練時更加容易,每一段都含有每個車的車道占有率,把每一段設成一個place,整條道路的狀態就是10個place組成的一個向量,每個place中會有相應的車輛含在各個路段中,將車輛和路段的比值作為車道占有率加入到觀察值中,不同路口有不同的車道數量,將道路離散化后,該狀態就含有11種信息作為輸入(包含1種路口車輛等待時間),同理在不同的路段中,每條路段含有的車道數量也不同,在傳入觀察狀態時需要將所有車道的每段車道占有率進行匯總傳人到狀態矩陣中。如圖3所示,對于車輛的出行道路中,在智能體的狀態中設定 S={s 1,s 2,……,s 10,s 11},其中s 1,……,s 11代表著車道占有率rate,s 11 代表著車輛排隊的總時間:
rate= VehLength i RoadLength "i ""(8)
分別取每段的路中的車輛長度和該段路段中的長度取值比對算出車道占有率,最后一位的觀察值為當前路段的所有車輛等待時間,圖4中該道路的傳入的觀察值 O (0.67,…,12 s),傳入觀察值中對于回合制更新將對觀察值傳入的車道占有率取均值作為傳入,上述 O 中傳入的車道占有率的觀察值均為該回合內傳入的均值。
3.2 紅綠燈智能體動作設定
控制路口最有效的方法就是使用紅綠燈來控制,通常情況下控制信號燈的方法有延長綠燈時長,減少綠燈時長,增加信號燈周期和減少信號燈周期等。本文從實際出發將動作設定為將左轉信號燈設置紅燈(禁左)、將右轉信號燈設置紅燈(禁右)、將直行信號燈設置紅燈(禁直)和禁止掉頭的四種方案。當車流量需要涌入另一個交通流量較大的路段時,可通過禁左、禁右、禁直和禁止掉頭進行調整。在動作設定中,先設置動作空間,將設定好的行為方案依次傳入動作空間中,因為動作的設定是通過信號燈來設計,如動作集 A={program 1,program 2,…,program n},其中n代表能進行選擇行為的總數,將圖1中的案例代入動作集當中,其中program 1就代表著禁止左轉的行為例A={禁左,禁右,禁直,禁掉頭,…,program n} ,圖一中因為一共有四條路可進行設定的program,所以共有4×4=16種可行行為方案進行設定。
3.3 基于軌跡重構的智能體獎勵設定(trajectory reward)
當紅綠燈進行行為的選擇后會對地圖上的某些道路進行封禁,就會導致地圖上某些車輛無法通過該路段形成車輛死鎖,這就需要對車輛進行軌跡重構,將封禁路段從車輛的軌跡中刪除進行重新的路徑規劃。
軌跡重構的構想在對道路實施封禁后,需要對車輛進行軌跡重構。其主要思想是將補全好的路徑文件按照起點,終點搭配起來的OD對進行歸類。并將存在封禁路段的路線剔除。然后將OD對設為Q表的state,該OD對的相關路線設為Q表的action來進行馬爾可夫決策訓練找到最好的路線搭配方式來運行同時也實現了路段封禁的效果,軌跡重構的設計思想不是本文智能體交互的重點,重構的目的僅僅只是將在不改變起點和終點的情況下,將封禁的路段改變路線,能夠使得車輛正常行駛,避免出現道路車輛死鎖現象。
根據上述來指定智能體所獲取的reward,針對每回合下對車輛重構軌跡來計算整個路網的車輛總等待時間。
reward=-(wt-selfwt) ""(9)
在模型中設定原環境下道路中車輛的總等待時間為 selfwt,通過強化學習每回合學習后車輛進行軌跡重構后的總等待時間為wt,在模型中wt 初始化為0,通過重構后軌跡行駛車輛的排隊時間與原有的排隊時間進行比對來做為該回合內的獎勵。
3.4 智能體協作
智能體通過采用集中培訓和分散執行的框架來實現目標,使用集中的critic網絡的優勢在于,在交通環境下多智能體之間需要通過相互配合達到路網暢通率最大,各個智能體是需要相互配合的,所有智能體都是要使得共同回報最大化,并且是critic網絡可以收集到環境中的全局結果,使得最后計算出的聯合行動的Q值更加準確,同時actor網絡只針對各自的Agent負責而不是全部或者多個智能體,這樣會使得智能體在學習過程中的行動延遲降低。因為智能體擁有相同的目標并且是同質的 ,所以為了加快訓練速度,通過參數共享的方式來加快訓練速度,智能體的actor網絡參數是相同的并不代表著這些智能體會采取相同的行為,每個智能體根據自身周圍觀察環境不同來采取不同的行為。并且,當策略在執行的過程中允許使用額外的信息來簡化訓練,在智能體協作的過程中,提出一個簡易的actor-critic算法,讓critic網絡在學習的過程中加入其他智能體的信息進行學習,所以根據參數共享的結果,可以每個智能體得到的TD遵循為
g= ""θπ log π(a i|o i)(r+Vπ(S t+1)-V(S t)) ""(10)
3.5 SubNet網絡構造
同時通信對于智能體之間的協作也是非常重要的,critic是匯集了整個環境中的所有信息,通常在多智能體的環境下會有大量高維度的信息匯總,所以可以在actor網絡在傳送到critic網絡之前加入一個SubNet網絡,該神經網絡獲取了智能體傳入的高緯度信息,經過該網絡處理后將每個高緯度信息壓縮成低緯度信息進行傳入到critic網絡。因為在所處的實驗環驗環境下,智能體是同質的所以該神經網絡也是和actor網絡一樣是共享參數的。由圖4所示,網絡輸入的是三個路口的狀態( I,I 1,I 2 ),可以看到圖中采用卷積網絡的第一層采用的是16個4×4的濾波器,步長為2,并且使用ReLU作為激活函數,第二層有32個2×2的濾波器,步長為1,繼續使用了ReLU作為激活函數。
3.6 基于TR-Light控制信號燈的模型設計
對于傳入SubNet的網絡中觀察值為一個矩陣,該矩陣中插入了之前規劃的狀態設定也就是之前將道路離散化后的車道占有率以及路口等待時間。因為將道路離散化后分為10段,將每段的數據以及兩端路中每段路的車輛等待時間傳入到SubNet當中,同時還傳入了其他智能體的相關信息,SubNet網絡由神經網絡構成,在傳入高維數據后通過神經網絡將這些數據進行壓縮降維產生出新的信息,通過SubNet網絡傳入到critic網絡中進行學習,能夠提升critic的學習效率TR-light模型是基于actor-critic基本算法框架,在多智能體環境下加入了CTDE的方法進行構建的。基于軌跡重構模型(trajectory)和信號燈program的控制交通組織方案優化算法TR-light,算法詳情如算法1所示。
算法1 TR-light:Trajectory Reward-Light
構造SubNet網絡
輸入: s 。
輸出: s 。
a) 傳入輸入觀察矩陣 o "i ,其中 o "i∈(o 1,…,o n),n為聯動智能體的個數(agent i(sepsiode t 1,…,sepsiode t 11),agent i+1(sepsiode t 1,…,sepsiode t 11 )根據聯動智能體來設定)。
b)神經網絡第一層,構造二維卷積定義維度空間并且定義卷積沿寬度和高度方向的步長。
c)定義激活函數ReLU。
d)神經網絡第二層,構造二維卷積定義維度空間并且定義卷積沿寬度和高度方向的步長。
e)定義激活函數 ReLU。
f)定義第三層全連接網絡。
g)輸出新構造的狀態一維數組。
在構造SubNet網絡中完成智能體之間的交互,首先步驟a)將目標智能體和交互智能體進行獲取,通過步驟b)~f)搭建起神經網絡,并將目標智能體獲取的觀察值以及跟目標智能體進行交互智能體的觀察值作為輸入,通過卷積進行特征提取,通過全連接層卷積輸出的特征轉換成一維的一個向量,該向量為目標智能體與鄰居智能體交互產生最終的觀察值結果。
構造actor網絡(對于多個agent需要構造多個actor網絡)
輸入: s(SubNet output),a,td_error 。
輸出: act_prob,train_op 。
a)構造狀態空間 N_S(N_S 的大小取決于鄰居路口的數量)和動作空間 N_A(N_A 的大小取決于智能體的行為,如圖5所示對應的狀態空間應為16)。
b)構造 s,a,td_error 變量。
c)建立actor網絡
d)輸出為 act_prob進行轉換log_prob=log(act_prob) 。
e) exp_v =reduce_mean( log_prob*td_error) 計算利益導向損失。
f)計算預計最大化價值 train_op使用minimize(-exp_v )。
g)agent進行learn的訓練(傳入 s,a,td_error) 。
h)執行choose_action(傳入 s),輸出為act_prob 。
構建actor網絡,構造出網絡中需要獲取的狀態空間和動作空間,計算每個行為后的偏轉概率。
構造critic網絡
輸入: s,a,s_ 。
輸出: td_error 。
a)構造 s,r,s_變量 。
b)構構造critic網絡。
c)critic進行學習inputs( s,r,s_)計算出當前價值v和下一個狀態的價值v_。
d)計算 td_error 的并進行反向傳遞修改。
構造critic網絡,構造上述所需變量,將變量進行傳遞計算出選取行為后的 td_error,計算完畢后將td_error 進行反向傳遞給actor網絡。
模型設計
輸入: s,a 。
輸出: :r,td_error 。
a)構建衰敗值GAMMA。
b)構造actor網絡。
c)構造critic網絡。
d)構造SubNet網絡。
e)構造狀態空間 N_S 。
f)構造動作空間 N_A 。
g)在動作空間中隨機選出一種行為。
h)forench "epsiode "in range(1000000):
i)初始化 s 為當前第一狀態,并得到該狀態的觀察值 o ,并構造出SubNet網絡,進行傳入得到新的觀察值。
j)在actor網絡中將觀察值作為輸入,輸出行為 a,基于該行為會得到新的狀態s_,反饋R 。
k)在critic網絡中輸入當前 s,s_,r,得到計算出當前價值Q和下一狀態價值Q_ 。
l)計算 td_error的誤差:td_error=r+GAMMA*v-v_
m)更新AC網絡中的網絡參數:
θ ""θ+α θQ(s,a) ""θ log π θ(a|s)
n)print(當前輸出策略 td,r) 。
o)對車輛進行軌跡重構。
p)end for
q)return最終輸出的策略, e,td
步驟a)~f)構造出所需要的變量,在模型開始運作時,首先隨機選取一組行為進行實驗,將目標智能體和交互智能體獲得的觀察值傳入到SubNet網絡中,生成出新的一維觀察值,將新的觀察值傳入到actor網絡獲取到該智能體的行為偏轉概率。如果在多智能體的環境下,需要建立起多個智能體的actor網絡,算出每個智能體的行為偏轉概率,將多個actor的計算結果傳入到集中式critic網絡,因為時集中式訓練分布式執行的思想,critic網絡會和其他actor網絡公用同一個參數進行反向傳遞。
4 實驗
本實驗分別針對單路口和多路口進行基于TR-light交通信號控制模型的實驗評估,本實驗采用的仿真平臺為SUMO,SUMO是一種開源的道路模擬器,可以滿足模擬實驗中所需要相關數據的收集還有交通行為的模擬以及需要的路網建設,關鍵的是還能收集到交通信號燈的配時數據。編寫代碼的開發IDE工具使用的是PyCharm,在完成相關的強化學習和神經網絡的構建使用的是TensorFlow-GUP-1.4.0版本和NumPY,需要完善上述擴展,其次最重要的是要實施SUMO Traci的交通控制接口,Traci可以幫助擴展在動態時控制交通信號燈,可以調用SUMO仿真工具、獲取單個的車輛信息以及獲取每條道路的詳細數據和實時路況。
為了實驗的真實性,本文所設置的實驗環境選取為四川省綿陽市內兩個交通高峰地區進行交通信號燈的方案實施。實驗(實驗1)環境為2020年9月份綿陽市科博會區域的道路管控,在該仿真系統中的數據選取為當日早上07:00~10:00時間內共有101 226輛汽車部署到該環境中,模式初始設置為67輛汽車,隨機種子參數設為4, 在該環境中車輛的OD對共有276種,在原始環境下在該區域內的車輛總等待時長493 161 s,同時在實驗開始之初, 將對實施管控的路口進行建立線圈處理,線圈是SUMO仿真系統種特有獲取道路實施狀態的方法,該實驗環境效果如圖5所示。
如圖6所示,該區域為科博會的重要路段,其中交叉口E與D為區域內的主要交叉口,通過SUMO中線圈功能每10 min獲取各個汽車信息得知,該路口的每小時通車量在該時間段內分別為845次和642次,將這兩個路口與其相鄰路口進行協調來達到該區域內的優化,在引入強化學習方法后對部分路口作出封禁措施如圖7所示。
因為D和E是該區內的主要交叉口,通過強化學習進行訓練,給出的優化方案方法中,最合理的結果如圖7所示,在C路口涌入D路口的直行路段實施道路封禁,同時對G路口涌入C路口的直行路段實施封禁,E路口向I路口禁止左轉,I路口向E路口禁止直行,圖7為宏觀展示,具體封禁方法如圖8微觀展示。
從微觀的角度可以更加詳細地看出每條道路實施的封禁,道路實施封禁后車輛無法從該路駛出需要對車輛進行軌跡重構,其中模型進行迭代訓練后分別與其他強化學習算法的實驗對比結果如圖9所示。
根據上述算法比對在上述環境中共有九個信號燈加入到算法其中,可以明顯的看出TR-Light的算法能夠比傳統的強化學習算法更加穩定快速的收斂,同時根據方案實施封禁后對車輛的軌跡進行重構后通過線圈獲得的實時數據E和D兩路口的每小時通車量為1 291次和967次,有效地減少了兩路口的通車量數量。
本文的第二個對比實驗(實驗2)將綿陽園藝山區域的地圖使用SUMO軟件進行仿真出來,如圖10~13所示。
在SUMO種構建好仿真區域,并將紅綠燈的原始配時時間設定好,在紅綠燈的設置中,選取了幾個交通流量比較大的路口,并設置好紅綠燈。針對該路網車輛總等待時間進行對比實驗,在此環境中加入了真實的車輛數據,在晚高峰17:00~19:00時間內,該區域一共有51 320輛汽車,同時該路網中車輛的OD共有137對,模型初始車輛46輛,將上述的重要路口進行線圈安裝,與實驗1相同每10 min獲取各個路段和路口的車輛信息,在歷史軌跡數據中晚高峰時間段,A、B兩個路口的車流量最大,由此A、B兩路口為該區域內的主要路口,該路口的每小時通車量在在該時間段內分別為467次和322次,該環境下共有7個紅綠燈加入到該模型的訓練中。在不使用任何強化學習方法的情況下,按交通信燈的原配時間內,該環境中的車輛總等待時長338 798 s,使用強化學習方法模型后迭代最終方案的結果如圖12~13所示,同時不同算法對該環境的總體優化結果如圖14所示。
根據圖14反映的結果來看在迭代的前50回合內DQN和TR-light算法的效果翻譯差別還不是特別的明顯,在迭代的次數變多后,TR-light模型中的critic網絡開始逐漸地發生作用TD-error開始自我學習更新,逐漸地往較好的行為模式去行動,開始更改自己的相應策略,來保持策略的最新模式,由于Q-learing的強化學習方法并不含有神經網絡,無法根據狀態進行預測,只是每次逐步地去選擇最優的方式,所以優化效果并不明顯,最后結果也無法得到收斂,TR-light模型的收斂速度隨著迭代的增加開始提速,是最優先達到收斂結果的。在迭代訓練結束后,通過線圈獲得A、B兩個路口的每小時通車量為711次和532次,有效地提高了路網的暢通率。
針對上述兩個實驗,分別將本文中制定的交通指標進行統計,針對最終結果方案數據的對比結果如圖15~18所示。
首先根據實驗一綿陽科博會展示各項數據對比如圖15~16所示。實驗2園藝山展示各項交通指標數據對比如圖17、18所示。
5 結束語
在多交叉口環境下,通過控制交通信號燈設計一種TR-light的模型,借助了actor-critic的算法框架,同時使用了智能體之間集中式學習分散式執行的方法,結合了集中式學習和分散式學習的優點,使得算法在收斂速度上得到了較大的提升。通過多路口實驗數據的比對,傳統算法上的Q-learning算法在處理交通環境種中由于智能體的狀態是百變多樣的,Q學習沒有神經網絡無法對狀態進行預測所以導致了該算法的難以得到收斂。對于DQN算法來講雖然有了神經網絡的輔助但在多智能體的交互方法上沒有得到實施,TR-light模型的設計使得交通狀態得到改善,為后期多智能體強化學習的交通信號控制的應用奠定了基礎。
參考文獻:
[1] "曹潔,張玲.自適應遺傳算法的multi-agent交通信號優化控制[J].計算機工程與應用,2016, 52 (13):265-270. (Cao Jie,Zhang Ling.Optimal control of multi-agent traffic signal based on adaptive genetic algorithm[J]. Computer Engineering and Applications ,2016, 52 (13):265-270.)
[2] Wei Hua,Chen Chacha,Zheng Guanjie, et al. "PressLight:learning max pressure control to coordinate traffic signals in arterial network[C]//Proc of the 25th ACM SIGKDD International Conference on Knowledge Discovery amp; Data Mining.New York:ACM Press,2019:1290-1298.
[3] 鄒長杰,鄭皎凌,張中雷.基于GAED-MADDPG多智能體強化學習的協作策略研究[J].計算機應用研究,2020, 37 (12):3656-3661. (Zou Changjie,Zheng Jiaoling,Zhang Zhonglei.Research on cooperative strategy based on GAED-MADDPG multi-agent reinforcement learning[J]. Application Research of Computers ,2020, 37 (12):3656-3661.)
[4] Mnih V,Kavukcuoglu K,Silver D,et al.Playing atari with deep reinforcement learning[EB/OL].(2013-12-19).https://arxiv.org/abs/ 1312.5602.
[5] Van Hasselt H,Guez A,Silver D.Deep reinforcement learning with double q-learning[EB/OL].(2015-12-08).https://arxiv.org/abs/ 1509.06461.
[6] Hernandez-Leal P,Kartal B,Taylor M E.A survey and critique of multiagent deep reinforcement learning[J]. Autonomous Agents and Multi-Agent Systems ,2019, 33 (6):750-797.
[7] Schulman J,Wolski F,Dhariwal P,et al.Proximal policy optimization algorithms[EB/OL].(2017-08-28).https://arxiv.org/abs/1707.06347.
[8] Wei Hua,Xu Nan,Zhang Huichu, et al. "CoLight:learning network-level cooperation for traffic signal control[C]//Proc of the 28th ACM International Conference on Information and Knowledge Management.2019:1913-1922.
[9] Urbanik T,Tanaka A,Lozner B, et al. "Signal timing manual[M].Washington,DC:Transportation Research Board,2015.
[10] Little John D C,Kelson Mark D,Gartner,Nathan H.MAXBAND :a versatile program for setting signals on arteries and triangular networks,1185-81[R].[S.l.]:Sloan School of Management,Massachusetts Institute of Technology,1981.
[11] Robertson D I.TRANSYT:a traffic network study tool[EB/OL].(1969).https://trid.trb.org/view/115048.
[12] Varaiya P.Max pressure control of a network of signalized intersections[J]. Transportation Research Part C:Emerging Technologies ,2013, 36 (11):177-195.
[13] Miller A J.Settings for fixed-cycle traffic signals[J]. Journal of the Operational Research Society ,1963, 14 (4):373-386.
[14] Arel I,Liu C,Urbanik T, et al. "Reinforcement learning-based multi-agent system for network traffic signal control[J]. IET Intelligent Transport Systems ,2010, 4 (2):128-135.
[15] Dresner K,Stone P.Multiagent traffic management:opportunities for multiagent learning[C]//Proc of International Workshop on Learning and Adaption in Multi-Agent Systems.Berlin,Heidelberg:Springer,2005:129-138.
[16] El-Tantawy S,Abdulhai B,Abdelgawad H.Multiagent reinforcement learning for integrated network of adaptive traffic signal controllers(MARLIN-ATSC):methodology and large-scale application on downtown Toronto[J]. IEEE Transactions on Intelligent Transportation Systems ,2013, 14 (3):1140-1150.
[17] Zhang Kaiqing,Yang Zhuoran,BaAr T.Decentralized multi-agent reinforcement learning with networked agents:recent advances[J]. Frontiers of Information Technology amp; Electronic Engineering ,2021, 22 (6):802-814.
[18] Sukhbaatar S,Szlam A,Fergus R.Learning multiagent communication with backpropagation[EB/OL].(2016-10-31).https://arxiv.org/abs/ 1605.07736.
[19] Jang E,Gu Shixiang,Poole B.Categorical reparameterization with gumbel-softmax[EB/OL].(2017-08-05).https://arxiv.org/abs/1611.01144.
[20] Mao Hangyu,Gong Zhibo,Ni Yan, et al. ACCNet:actor-coordinator-critic net for \"learning-to-communicate\" with deep multi-agent reinforcement learning[EB/OL].(2017-10-29).https://arxiv.org/abs/ 1706.03235.
[21] Littman M L.Markov games as a framework for multi-agent reinforcement learning[M]//Cohen W W,Hirsh H.Machine learning proceedings 1994.[S.l.]:Morgan Kaufmann,1994:157-163.
[22] Lowe R,Wu Yi Tamar A, et al. Multi-agent actor-critic for mixed cooperative-competitive environments[EB/OL].(2017-07-07).https://arxiv.org/abs/1706.02275.
[23] Gupta S,Hazra R,Dukkipati A.Networked multi-agent reinforcement learning with emergent communication[EB/OL].(2020-04-09).https://arxiv.org/abs/2004.02780.