摘要:在交通路網(wǎng)的運行中紅綠燈起著至關(guān)重要的調(diào)度作用,隨著目前交通的飛速發(fā)展,道路越來越復(fù)雜、車輛越來越繁多,導(dǎo)致紅綠燈的調(diào)度壓力越來越大、調(diào)節(jié)能力卻越來越弱。為了解決這一問題,建立了CTS(congestion trace source)方案,將交通疏導(dǎo)的主體對象紅綠燈作為智能體進行強化學(xué)習(xí)以優(yōu)化其對交通的疏導(dǎo)控制能力,通過構(gòu)建擁堵鏈和擁堵環(huán)綜合分析路網(wǎng)擁堵情況,佐以紅綠燈相位及其配時數(shù)據(jù)以達到對紅綠燈智能體對象狀態(tài)的綜合判斷;CTS方案設(shè)計了紅綠燈排隊長度算法將擁堵情況數(shù)字化作為智能體獎勵對優(yōu)化效果進行評判。使用SUMO仿真環(huán)境進行實驗,設(shè)計交通優(yōu)化指標路口平均排隊長度并進行對比,最終該方案的路口平均排隊長度相較于原始數(shù)據(jù)提升了40%。
關(guān)鍵詞:多智能體;強化學(xué)習(xí);SUMO;紅綠燈;擁堵信息數(shù)字化
中圖分類號:TP391.9文獻標志碼:A文章編號:1001-3695(2023)01-029-0178-07
doi: 10.19734/j.issn.1001-3695.2022.06.0297
CTS: traffic lights multi-agent reinforcement learning organization scheme based on congestion trace source algorithm
Tian Chao,"" Zheng Jiaoling
(School of Software Engineering, Chengdu University of Information Technology," Chengdu" 610225, China)
Abstract:
Traffic lights play a vital role in the operation of the traffic network. However, with the rapid development of traffic, roads are becoming more and more complex, and vehicles are becoming more and more numerous, which leads to the increasing pressure of traffic lights scheduling, but the regulation ability is becoming weaker and weaker. In order to solve this problem, this paper established the convergence trace source(CTS) scheme. This scheme used the traffic light, the main object of traffic diversion, as an agent for reinforcement learning to optimize its ability to control traffic diversion." It comprehensively analyzed the congestion situation of the road network by constructing the congestion chain and congestion ring, and used the traffic light phase and its timing data to achieve the comprehensive judgment of the object state of the traffic light agent. This scheme designed the traffic light queue length algorithm, and used the digitization of congestion as an agent reward to evaluate the optimization effect. This paper used the SUMO simulation environment for experiments, designed and compared the average queue length at the intersection of the traffic optimization index. Finally, the average queue length at the intersection of this scheme is increased by 40% compared with the original data.
Key words:multi agent; reinforcement learning; SUMO; traffic lights; digitalization of congestion information
0引言
當前在汽車擁有量出現(xiàn)爆炸式增長的同時伴隨其發(fā)生的還有各種各樣的交通問題,例如道路擁堵、車禍頻發(fā)、交通調(diào)配方式不科學(xué)等。漸漸地,人工智能開始在交通調(diào)配管控中扮演著重要的角色,多智能體強化學(xué)習(xí)挑選適當交通對象通過自主學(xué)習(xí)、相互協(xié)調(diào)、統(tǒng)籌調(diào)配實現(xiàn)交通統(tǒng)一控制。每個智能體肩負各自的任務(wù),通過學(xué)習(xí)—改變的方式實現(xiàn)交通管控的統(tǒng)籌規(guī)劃,同時每個智能體的動作也影響著整個交通環(huán)境來實現(xiàn)各智能體之間的溝通。相比于單智能體而言,多智能體更加注重群體學(xué)習(xí),它的本質(zhì)是多個單智能體彼此協(xié)同實現(xiàn)目標效益最大化。多智能體的協(xié)同效果很大程度上也取決于智能體對象的選取,道路交叉口的交通調(diào)配不科學(xué)是導(dǎo)致?lián)矶碌淖钪饕颍杂行Ы鉀Q擁堵的方式就是將交叉口紅綠燈作為多智能體對象進行整體管控。
自英國學(xué)者Watkins[1]提出強化學(xué)習(xí)后,此類研究在人工智能領(lǐng)域開始慢慢占據(jù)重要位置。關(guān)于紅綠燈智能體的研究,通過不同方面展開,在立足于智能體相位控制及狀態(tài)研究方面,Wei等人[2]提出了一種深度加固交通燈代理,紅綠燈結(jié)合東南西北四個方向歸納相位綜合計算狀態(tài),利用道路排隊長度、等待時間計算獎勵綜合進行強化學(xué)習(xí)。吳昊晟等人[3]將強化學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)、多智能體和交通仿真模擬技術(shù)結(jié)合起來,提出了一種TR-Light模型來優(yōu)化多路口狀態(tài)下的交通狀態(tài)。Zheng等人[4]提出了基于交通信號相位競爭的直觀原理控制,通過相位競爭建模實現(xiàn)了不變性,適用于交通流中的翻轉(zhuǎn)和旋轉(zhuǎn)等對稱情況。但是僅僅通過智能體明面數(shù)據(jù)的研究可能無法挖掘出智能體深層次的信息,面對這一問題,出現(xiàn)了以重構(gòu)智能體為方向的相關(guān)研究,如Chen等人[5]提出了基于紅綠燈壓力測試概念設(shè)計分散RL模型并以參數(shù)共享形式調(diào)控分散的RL模型,以實現(xiàn)區(qū)域級別的信號協(xié)調(diào)。同時研究方向又將研究對象從智能體轉(zhuǎn)向了整個交通系統(tǒng),提出了一種面向?qū)崟r交通數(shù)據(jù)控制的研究模式,Zang等人[6]提出了一個基于價值的元強化學(xué)習(xí)工作流——基于梯度的元學(xué)習(xí)算法(MAML),包括周期性交替的個體水平自適應(yīng)和全球一級適應(yīng)的MetaLight算法。MetaLight改進了交通中最先進的強化學(xué)習(xí)模型FRAP,通過優(yōu)化其模型結(jié)構(gòu)和更新進行信號控制范式。劉成健等人[7]對交通數(shù)據(jù)進行模糊處理,將車道排隊長度和車道擁擠度建模后作為成本函數(shù)實現(xiàn)檢驗。黃子蓉[8]針對如何有效平衡個體局部利益與全局利益和如何有效利用歷史信息的目標提出基于深度強化學(xué)習(xí)的多智能體協(xié)調(diào)算法。Grandinetti等人[9]提出了一個基于小區(qū)傳輸模型的信號交通網(wǎng)絡(luò)模型,然后是一個基于平均理論的簡化模型,控制目標是改善交通、優(yōu)化交通指標,如總行程和密度平衡。
本文立足于多智能體強化學(xué)習(xí),提出路網(wǎng)擁堵算法構(gòu)建獨立的道路評判數(shù)據(jù)集,挖掘道路形成擁堵鏈和擁堵環(huán),并采用擁堵溯源算法以擁堵鏈環(huán)為載體對道路評判數(shù)據(jù)集作出更加精準的計算,結(jié)合紅綠燈相位的綠信占比和配時范圍實現(xiàn)對地圖狀態(tài)精確的判斷,將復(fù)雜交通網(wǎng)絡(luò)的擁堵情況以車道為單位輔以信號模糊影響因子綜合計算獎勵反饋智能體,并通過記錄實際反饋利用算法評判當前相位是否適用于當前交叉口擁堵情況,以保持相位和更改相位為智能體動作作用路網(wǎng)生成適合不同情況下的紅綠燈運行邏輯及其配時長度, 再利用多智能體分散訓(xùn)練集中反饋的特性來調(diào)控交通系統(tǒng),就可以使復(fù)雜的交通環(huán)境變得有跡可循。
隨著深度學(xué)習(xí)的發(fā)展,深度強化學(xué)習(xí)被用于解決多智能體系統(tǒng)的高維狀態(tài)和動作空間問題。通過紅綠燈多智能體彼此協(xié)調(diào)優(yōu)化對路網(wǎng)中起到的綜合作用大幅度降低交通擁堵發(fā)生的頻率和嚴重程度。目前關(guān)于該領(lǐng)域的實際應(yīng)用,有華為公司提出的一種名為TrafficGo的場景化方案,利用“華為交通智能路口+云平臺”的方式完成。TrafficGo優(yōu)化包括算法訓(xùn)練和推理兩個步驟,通過在路口建設(shè)交通智能體,收集交通態(tài)勢數(shù)據(jù),將交通態(tài)勢數(shù)據(jù)輸入到華為云平臺,借助其計算能力完成TrafficGo算法訓(xùn)練,并輸出TrafficGo模型;在實際運行中,將采集的交通態(tài)勢數(shù)據(jù)實時輸入到TrafficGo模型,推理出最佳信號配時方案,并實時在線下發(fā)到信號機完成信息優(yōu)化過程。華為采用了類似AlphaGo的強化學(xué)習(xí)AI算法方案,使得TrafficGo在訓(xùn)練和推理的過程中能夠不斷地自我學(xué)習(xí)和優(yōu)化。從2018年2月開始進行單路口測試,6月已完成了八個路口的全面測試,從原來2~4 h配時一次提升到15 min配時一次。據(jù)測算,優(yōu)化后主干道路平均路口等待時間降低了15%。
本文將重點放在了區(qū)域型地圖的多智能體紅綠燈協(xié)調(diào)優(yōu)化的細節(jié)中,與華為公司對于該方面的研究殊途同歸。如果輔助于相關(guān)的分布式平臺提高運算速度,對于今后的智能交通紅綠燈的管控優(yōu)化將會起到一定的推動作用。通過本文的紅綠燈優(yōu)化算法可以得到在不同的交通情況下應(yīng)該使用何種合適的相位進行疏導(dǎo)并控制其運行持續(xù)時間。但是在現(xiàn)實中紅綠燈的運行邏輯是提前定義好且不會更改的,所以基于該文的后續(xù)研究方向是設(shè)計一種算法綜合歸納不同路網(wǎng)下的不同紅綠燈運行情況,并根據(jù)本文算法提供的優(yōu)化方式總結(jié)歸納出在總體上適合該紅綠燈運行的一套相位運行邏輯。
1系統(tǒng)架構(gòu)
交通仿真是支撐交通系統(tǒng)狀態(tài)準確模擬與量化分析的重要手段,建模思路采用路阻函數(shù)分別構(gòu)建社會車輛、公交等的路段旅行時間(或車速)與路段流量(或密度)的關(guān)系函數(shù)。本文系統(tǒng)主要由地圖網(wǎng)絡(luò)構(gòu)建、智能體構(gòu)建和仿真環(huán)境模擬三個部分構(gòu)成。
a)地圖網(wǎng)絡(luò)構(gòu)建。地圖網(wǎng)絡(luò)信息主要內(nèi)容包括路段、交叉口和路段之間的連通信息三部分。其中路段信息可以細化到車道信息,包括其長度、寬度和轉(zhuǎn)向信息等;交叉口分為普通交叉口和紅綠燈交叉口,普通交叉口可以視為一個節(jié)點,而紅綠燈交叉口則是作為強化學(xué)習(xí)智能體目標對象,它包含相位及其配時等信息;路段連通信息主要記錄的是每一個車道的起始和終止點的具體交叉口,通過交叉口來實現(xiàn)路段之間的連通記錄。
b)智能體構(gòu)建。紅綠燈智能體構(gòu)建狀態(tài)判定的影響因素主要包括紅綠燈相位及其配時和車道占比因素兩個部分。動作設(shè)定針對的目標是相位,主要動作包括保持和更改,最終根據(jù)狀態(tài)和動作設(shè)計強化學(xué)習(xí)的Q表。智能體通過與仿真環(huán)境交互,不斷更新Q表實現(xiàn)優(yōu)化。
c)仿真環(huán)境模擬。使用SUMO交通仿真環(huán)境實時模擬交通系統(tǒng)的運行并收集相關(guān)數(shù)據(jù)用于強化學(xué)習(xí)并反饋智能體。系統(tǒng)架構(gòu)如圖1所示。
2智能體設(shè)計
2.1智能體狀態(tài)構(gòu)建
紅綠燈狀態(tài)是對當前紅綠燈擁堵情況的綜合評價并量化,其狀態(tài)的綜合評估體現(xiàn)在相位因素和車道占比因素兩部分。相位是紅綠燈影響交通運行的直接因素,它規(guī)定了紅綠燈的運行邏輯,相位因素表現(xiàn)為紅綠燈相位編號phase(t,i)和相位計時time(t,i)兩個方面;而車道占比因素opi是對道路擁堵情況的綜合量化數(shù)據(jù),state(t,i)是指在t時刻、紅綠燈i的狀態(tài)。最終智能體的狀態(tài)設(shè)定為
state(t,i)=(phase(t,i)+time(t,i))×∏niopi(1)
2.1.1相位因素
a)紅綠燈相位。在一個信號周期內(nèi)每個相位時段的一股或幾股車流,在同一個時間獲得完全相同的交通燈色指示,這個連續(xù)“綠—黃—紅”時間段稱做一個信號相位。在每一個信號相位,燈色顯示時序都是“綠—黃—紅”的循環(huán)。一個信號周期可以分別對不同方向交通流分配不同的相位,紅綠燈通過設(shè)定一系列相位組合并設(shè)定運行配時來控制紅綠燈運行邏輯。
b)紅綠燈相位配時。每個智能體中設(shè)有多個不同的相位用來定義紅綠燈運行邏輯,同時每個相位都有指定的配時用來控制當前相位在路口的持續(xù)時間。在智能體對紅綠燈進行訓(xùn)練之前通過對紅綠燈的相位配時進行重設(shè)定來擴大其配時范圍,使得智能體可調(diào)控范圍擴大,以此達到更好的訓(xùn)練效果。某紅綠燈的具體相位組合如表1所示。
表1中綠燈占比較高的相位,其配時占比也較高,這些相位也就成為每個智能體所優(yōu)化的具體目標,同時擴張這些相位的配時范圍,讓程序獲得一個彈性的配時區(qū)間。彈性配時是在原有配時的基礎(chǔ)上乘以2再加6。相位因素對狀態(tài)計算的影響也就體現(xiàn)在當前相位編號phase(t,i)和相位計時time(t,i)上。
2.1.2車道占比因素
車道占比因素以車道作為關(guān)注點,通過擁堵值算法得出原始擁堵值集合,原始擁堵值經(jīng)過擁堵鏈溯源流程和擁堵環(huán)溯源流程后得到的所有更新?lián)矶轮导献鳛檐嚨勒急纫蛩兀鐖D2所示。
定義1道路網(wǎng)絡(luò)net=(E,C),其中,原始路網(wǎng)中車道節(jié)點集合表示為
E={∑lanei|i=1,2,…,m}(2)
車道聯(lián)通信息表示為
C=con11…con1mconm1…conmm(3)
其中:conij=0表示lanei-lanej不連通,反之則連通。
1)擁堵判斷
車道容量是一個對車道容車性綜合判斷的數(shù)據(jù)。在之前路線網(wǎng)絡(luò)搭建中會獲取到所有車道長度的一個數(shù)據(jù)集,然后設(shè)定平均車輛長度為7.5,將數(shù)據(jù)集中每條車道長度都除以7.5便可獲取到車道容量數(shù)據(jù)集。停車值halt(t,l)為t時刻車道l上處于停滯狀態(tài)的車輛數(shù)與車道容量的比值。行駛值move(t,l)為t時刻車道l上處于行駛狀態(tài)的車輛數(shù)與車道容量的比值。
定義2原始擁堵值jam(t,l)為在t時刻l車道擁堵情況綜合判斷并進行量化的數(shù)據(jù),表示如下:
jam(t,l)=α×move(t,l)+β×halt(t,l)(4)
其中:引入行駛削弱因子α∈(0,1)用于削減行駛值對擁堵值的增強效果;停車增強因子β∈(1,3)用于增強停車值對擁堵值的增強效果。
例1如圖2(a)所示,L1車道容量為9,當前停車數(shù)為5,行車數(shù)為3,則L1車道停車值和行駛值分別為
halt(t,l)=5/9=0.55
move(t,l)=3/9=0.33
設(shè)當前行駛削弱因子α=0.5,停車增強因子β=2,最終計算出該車道的原始擁堵值為
jam(t,l)=0.55×2+0.33×0.5=1.265
擁堵判斷:一個車道是否擁堵取決于此刻車輛總數(shù)在車道容量上的占比和停滯車量數(shù)在車道容量上的占比。當車輛總數(shù)在車道容量的占比大于0.6且停滯車輛數(shù)在車道容量上的占比大于0.8,則認為該車道處于擁堵狀態(tài),否則為不擁堵,如圖2(a)所示。
2)擁堵鏈和擁堵環(huán)挖掘
定義3擁堵環(huán)集合circlest為t時刻給定路網(wǎng)連通信息和擁堵車道通過矩陣自乘形成的具有環(huán)擁堵關(guān)系的集合。設(shè)當前存在n條擁堵車道集合表示為
E′={∑lanei|i=1,2,…,n}(5)
根據(jù)該擁堵車道集合建立擁堵車道連通信息為
C′=con11…con1nconn1…connn(6)
通過矩陣自乘求得擁堵環(huán)為
circlet=∏n1C′(7)
自乘后的矩陣對角線連續(xù)為1的行或列即是構(gòu)成擁堵環(huán)的元素。
例2如圖2(a)(b)所示的地圖網(wǎng)絡(luò),其擁堵車道集合為E={∑lanei|i=1,2,3,4,5,6,7},擁堵車道連通信息為
C′=0100000001000000010001000000000001000000010000000
將該矩陣自乘7次,結(jié)果如下:
∏710100000001000000010001000000000001000000010000000=1000000010000000100000001000000000000000000000000
可獲得circlet={lane1,lane2,lane3},如圖2(d)所示。
定義4擁堵鏈集合chainst為t時刻具有鏈條擁堵關(guān)系的集合,為當前擁堵車道集合與擁堵環(huán)元素的補集,C′為車道連通信息,表示如下:
chainst=E′∩C′(8)
例3如圖2(e)所示,其擁堵車道集合與擁堵環(huán)元素補集E′={∑lanei|i=5,6,7},車道連通信息為
C′=010001000
可獲得擁堵鏈chain=〈lane5,lane6,lane7〉。
3)擁堵溯源算法
擁堵值溯源處理的本質(zhì)就是將車道的優(yōu)化權(quán)重進行一次科學(xué)的轉(zhuǎn)換,進而將問題發(fā)生的本質(zhì)集中在擁堵鏈尾節(jié)點或擁堵環(huán)中的各個節(jié)點,從而找出擁堵問題發(fā)生的根本。通過遺傳學(xué)思想在擁堵鏈中傳遞擁堵值來體現(xiàn)不同擁堵車道在所被管控的紅綠燈中的優(yōu)化權(quán)重。
定義5更新?lián)矶轮礿am′(t,l),遍歷當前擁堵鏈集合chainst或擁堵環(huán)集合circlest。具體擁堵鏈內(nèi)容為
chaint=〈lanei,…,lanen〉(9)
可以按照如下規(guī)則將其歸類:
type=1lanei2…3lanen(10)
type=1為鏈頭節(jié)點,type=2為中間節(jié)點,type=3為鏈尾節(jié)點。以原始擁堵值jam(t,l)為基礎(chǔ),引入傳遞擁堵值transfer(t,l-l+1)從鏈頭向鏈尾傳遞,以此計算更新?lián)矶轮礿am′(t,l)。設(shè)定傳遞系數(shù)α=0.6和保留系數(shù)β=0.4,擁堵溯源算法偽代碼如下:
算法1擁堵溯源算法
輸入:道路網(wǎng)絡(luò)參數(shù)網(wǎng)絡(luò)。
輸出:更新?lián)矶轮导稀?/p>
a)參數(shù)網(wǎng)絡(luò)采用擁堵值算法收集道路原始擁堵值集合jam。
b)獲取路網(wǎng)擁堵鏈集合chains和擁堵環(huán)集合circles。
c)執(zhí)行擁堵鏈溯源。
for 擁堵鏈節(jié)點lanei (ilt;=n) do
type ← 節(jié)點類型;
transfer ← 傳遞擁堵值;
if type==頭節(jié)點類型 do
Jam′[lanei]=Jam[lanei]×0.4;
transfer =Jam[lanei]×0.6;
else if type==中間節(jié)點類型 do
Jam′[lanei] =(Jam[lanei]+transfer)×0.4;
transfer=transfer +Jam[lanei]×0.6;
else do
Jam′[] =Jam[lanei]+ transfer;
end if
end for
d)執(zhí)行擁堵環(huán)溯源。
for 擁堵環(huán)節(jié)點lanei (ilt;=n) do
Jam′[lanei]= Jam[lanei]+Jam[lanei]×0.2
end for
e)更新?lián)矶轮颠M入?yún)?shù)網(wǎng)絡(luò)。
例4擁堵鏈溯源流程。獲取如圖2(e)所示的擁堵鏈chain=〈lane5,lane6,lane7〉,該擁堵鏈的每個車道節(jié)點原始擁堵值如圖2(c)所示。溯源處理如下:
a)計算擁堵鏈頭節(jié)點lane5更新?lián)矶轮导捌湎騦ane6傳遞的擁堵值。
jam′(t,lane5)=1.7×0.4=0.68
transfer(t,lane5-lane6)=1.7×0.6=1.02
b)計算擁堵鏈中間節(jié)點lane6更新?lián)矶轮导捌湎騦ane7傳遞的擁堵值。
jam′(t,lane6)=(1.7+1.02)×0.4=1.088
transfer(t,lane6-lane7)=1.02+1.7×0.6=2.04
c)計算擁堵鏈尾節(jié)點lane7更新?lián)矶轮怠?/p>
jam′(t,lane7)=1.49+2.04=3.53
例5擁堵環(huán)溯源流程。擁堵環(huán)中的每一個節(jié)點都可以看做是引發(fā)擁堵的根本原因,所以每個節(jié)點權(quán)重都顯得尤為重要,引入一個權(quán)重增加系數(shù)α(默認為0.2)。獲取圖2(d)的擁堵環(huán)circle={lane1,lane2,lane3,lane4},環(huán)中的四個車道擁堵值處理方式相同,如下所示:
jam′lane1=1.265+1.265×0.2=1.518
jam′lane2=1.15+1.15×0.2=1.38
jam′lane3=1.625+1.625×0.2=1.95
jam′lane4=1.325+1.325×0.2=1.59
定義6如圖2(f)所示,車道占比因素opi為其所管轄車道的更新?lián)矶轮礿am′(t,l)所組成的集合:
opi∈{jam′(t,l), jam′(t,l+1),…, jam′(t,n)}(11)
2.1.3相位時間與車道占比因素區(qū)間化
由于相位時間和車道占比因素的數(shù)據(jù)值變化范圍很大且不確定,用于狀態(tài)計算使得數(shù)值變化范圍過大不適于紅綠燈狀態(tài)的綜合判斷,需將其按照如表2所示進行區(qū)間化。
2.2紅綠燈動作設(shè)定
紅綠燈的相位設(shè)定是通過相位列表的配時循環(huán)選取的,那么動作的設(shè)定也會聚焦在相位上面,動作的設(shè)定包括keep和change兩種。
a)keep。保持當前相位不變直到下一次狀態(tài)的更新或者到達相位配時重設(shè)的彈性配時最大值。
b)change。將當前相位切換到下一個相位。
2.3紅綠燈獎勵設(shè)定和計算
獎勵的評判因素主要由擁堵情況和車道相位因子共同決定。
a)車道相位因子。相位對紅綠燈獎勵的影響由車道相位因子PIl決定,Pl為當前相位下車道l的相位信號(G綠燈,Y黃燈,R紅燈)。車道相位因子取值標準如下:
PIl=0.5Pl=G0.7Pl=Y1Pl=R (12)
b)擁堵情況。在一個紅綠燈下存在著多種車道連通的搭配,每條搭配中都存在著一個入口車道和一個出口車道,兩個車道都是擁堵值的直觀體現(xiàn)。由于獎勵是對紅綠燈信息的直接判斷,所以擁堵值會采用擁堵溯源算法前的道路擁堵值jam(t,l)。
最終結(jié)合車道相位因子和擁堵情況兩大因素便可以對紅綠燈獎勵reward(t,l)進行計算。設(shè){l,…,n}為某紅綠燈管轄下的車道搭配集合,Lf為車道L搭配的起始車道,Lt則為車道L搭配的結(jié)尾車道,多智能體獎勵計算如下:
reward(t,i)=-∑nl=1jam(t,Lf)+jam(t,Lt)×PIl(13)
這里計算出的獎勵取相反值是為了體現(xiàn)紅綠燈擁堵值與Q-learning中獎勵值的相反性(即紅綠燈越擁堵,那么它的優(yōu)化效果也就越差,所獲得的獎勵也就相應(yīng)地越少)。
3多智能體算法設(shè)計
將紅綠燈作為智能體執(zhí)行Q表學(xué)習(xí)包括狀態(tài)計算、動作選取和獎勵反饋三個流程,每一個紅綠燈智能體都會設(shè)置一個Q表,根據(jù)前文算法得出多智能體狀態(tài),從Q表中選取動作作用路網(wǎng)并收集獎勵反饋反作用于Q表。多智能體優(yōu)化流程如圖3所示。
動作選取過程中,為了避免紅綠燈在Q學(xué)習(xí)過程中因Q表過早收斂導(dǎo)致優(yōu)化效果不佳,需要加入一個延遲收斂因子delay=1,使得在紅綠燈早期訓(xùn)練過程中盡可能嘗試多種動作來反饋給環(huán)境,同時引入延遲收斂衰弱因子delay_weak=0.95,避免Q表收斂時間過長。在延遲收斂過程中,智能體會隨機選取動作反饋給環(huán)境,當延遲收斂衰弱到一定程度后便會使用最大值選取方式選取動作反饋環(huán)境。
當智能體優(yōu)化剛剛開始時,延遲收斂因子delay處于0.1~1,智能體處于延遲收斂狀態(tài),動作選取的方式為隨機選取。隨著智能體優(yōu)化不斷進行,延遲收斂因子也在不斷衰減,當其衰減到小于0.1時,智能體延遲收斂效果達到,開始精準收斂,動作選取方式為最大值選取。
獎勵反饋流程是定位狀態(tài)并選取動作反饋給路網(wǎng),一定時間后會計算出此次智能體行為的獎勵reward(t,l)。一個智能體在效果反饋前需要引入歷史效果最大值max QS(t-1,i)來綜合分析歷史最佳行為的效果并影響此次行為的效果獎勵,同時使用歷史效果因子β控制其影響程度。同樣,上一次行為效果和此次獎勵值也對此次行為效果起到一定作用,引入獎勵影響因子α來控制,最終獎勵反饋值計算如下:
QaS(t,i)=QaS(t-1,i)+α(reward(t,i)+β×max QS(t,i)-QaS(t-1,i))(14)
算法2多智能體優(yōu)化算法
輸入:紅綠燈智能體數(shù)據(jù)集。
輸出:紅綠燈智能體數(shù)據(jù)集。
a)加載地圖參數(shù)數(shù)據(jù)集及智能體初始化參數(shù)。
b)運行交通流程實時收集路網(wǎng)及智能體相關(guān)信息。
c)智能體學(xué)習(xí)。
for 智能體信息agenti(ilt;=n) do
delay ←延遲收斂因子;
delay_weak ←衰弱延遲收斂因子;
chains,circles ← 根據(jù)路網(wǎng)挖掘擁堵鏈及擁堵環(huán);
op ← 執(zhí)行擁堵溯源算法(chains,circles);
phase,time ← 智能體相位因素;
state ← 計算智能體狀態(tài)(phase,time,op);
actions ← 根據(jù)智能體狀態(tài)獲取的智能體可選動作;
delay ←delay×delay_weak;
if delaylt;=0.1 do
action=random(actions);
else do
action=max(actions);
end if
end for
d)選取動作作用于路網(wǎng)并收集獎勵。
e)獎勵反饋給智能體。
for 智能體信息agenti(ilt;=n) do
PL ← 車道相位因子;
jam ← 擁堵情況;
reward ← 智能體獎勵計算(PI, jam);
a ← 0.1;
b← 0.8;
state ← 智能體狀態(tài);
action ← 智能體動作;
l_reward ← 智能體上一次動作獎勵;
m_reward ← 歷史最大獎勵值;
q_table←智能體對應(yīng)Q表;
reward=l_reward+a×(reward+b×m_reward-l_reward);
q_table[state]=reward;
l_reward=reward;
end for
4對比實驗
本實驗采用SUMO作為交通仿真平臺實現(xiàn)交通模擬,SUMO是一個開源的交通模擬框架,可以提供模擬實驗中的路網(wǎng)建設(shè)、交通行為和所需要的相關(guān)數(shù)據(jù)的采集。使用PyChram作為IDE工具編寫Python代碼用于完成紅綠燈優(yōu)化及其相應(yīng)的數(shù)據(jù)采集,并使用Numpy和Matplotlib等相關(guān)數(shù)據(jù)操作庫來實現(xiàn)實驗數(shù)據(jù)的可視化。
4.1實驗數(shù)據(jù)構(gòu)建
為了體現(xiàn)實驗的真實性,對比實驗將采用實際收集到的綿陽園藝山區(qū)域的地圖和其某天內(nèi)1 h收集到的路網(wǎng)車輛運行軌跡在SUMO地圖進行模擬仿真。
a)地圖數(shù)據(jù)構(gòu)建。地圖數(shù)據(jù)主要包括車道數(shù)據(jù)、路口數(shù)據(jù)、紅綠燈數(shù)據(jù)、相位邏輯數(shù)據(jù)和車道關(guān)聯(lián)數(shù)據(jù)。在與綿陽交警合作的項目中,相關(guān)人員采集到綿陽園藝山地區(qū)的上述數(shù)據(jù)并通過SUMO軟件構(gòu)建了可視化的地圖數(shù)據(jù)供后續(xù)使用。
b)車流數(shù)據(jù)構(gòu)建。通過交警提供的園藝山區(qū)域1 h內(nèi)的各個路口的車流拍照數(shù)據(jù)獲取到了大約15 000條車流的大致走向,而后使用提供的數(shù)據(jù)按照園藝山地圖的路網(wǎng)連通信息將其缺失的部分補齊,形成適合在SUMO上進行模擬的車流數(shù)據(jù)。
4.2交通評價指標
在實際道路網(wǎng)絡(luò)中最直觀的交通干預(yù)效果體現(xiàn)在不同時刻各個路口及紅綠燈所管轄車道上的車量數(shù),進而將其引申為路口排隊長度。為了體現(xiàn)這一效果,需在道路模擬過程中不斷收集需優(yōu)化的每個紅綠燈在每個時刻的路口排隊長度并計算它們的平均值。路口排隊長度數(shù)據(jù)只能表現(xiàn)以路口為單位的優(yōu)化效果,并不能綜合體現(xiàn)整個路網(wǎng)的優(yōu)化效果,所以在每一時刻還需收集當前路網(wǎng)中的總車輛數(shù),以路口平均排隊長度與總車輛數(shù)比值作為指標用于評價紅綠燈對整個路網(wǎng)的綜合優(yōu)化效果。將路口排隊長度和擁堵總占燈比指標數(shù)據(jù)綜合作為交通評價指標。
在SUMO中構(gòu)建好地圖文件并按照綿陽園藝山實際紅綠燈數(shù)據(jù)構(gòu)建好各個紅綠燈相位運行邏輯,通過實際模擬找到該地圖的擁堵高發(fā)區(qū)并在該范圍選取高峰期排隊長度處于頂峰的關(guān)鍵節(jié)點作為紅綠燈優(yōu)化對象進行優(yōu)化,收集相關(guān)交通評價指標。
圖4為園藝山擁堵高發(fā)區(qū)某時刻在SUMO模擬中的效果示意圖,其中綠色節(jié)點的路口為該區(qū)域的紅綠燈分布,紅色節(jié)點為實際優(yōu)化對象。道路根據(jù)其顏色的深淺體現(xiàn)不同的擁堵程度。
在模擬過程中收集每個時刻的道路,路口紅綠燈的相關(guān)數(shù)據(jù)為后續(xù)的優(yōu)化評價提供實現(xiàn)數(shù)據(jù)。
4.2.1實驗指標1路口排隊長度
在該實驗中,將園藝山路網(wǎng)數(shù)據(jù)和其在某天內(nèi)1 h的車流數(shù)據(jù)導(dǎo)入SUMO構(gòu)建仿真區(qū)域并接入DNQ算法、傳統(tǒng)Q-learning算法、本文算法和原始無優(yōu)化方案進行模擬。在模擬過程保證收斂的情況下實時收集優(yōu)化對象的路口排隊長度作為評價指標,最終共獲得四組數(shù)據(jù)進行對比。將地圖中紅綠燈排隊長度平均值作為評價指標,迭代后的數(shù)據(jù)對比如圖5所示。
根據(jù)圖5所反映出的結(jié)果來看,在0~5 000時間段內(nèi)有大量的車輛涌入地圖,四個方法的紅綠燈平均排隊長度都以極高的增長速度不斷擴大,在5 000時刻到達了紅綠燈平均排隊長度的第一個頂峰,相較于不做算法優(yōu)化的原始數(shù)據(jù),其余三個算法的峰值都沒有達到100,而原始數(shù)據(jù)達到了100,所以總體來說三個算法對紅綠燈都有一定程度的優(yōu)化。其中,Q-learning和DQN算法在該時間段內(nèi)漲幅趨勢和排隊長度非常相似,本文算法與前兩個算法相比漲幅趨勢比較相同,但是將平均排隊長度的峰值控制在60,而前兩個算法均超過了60。所以在該時間段內(nèi)優(yōu)化效果為本文算法gt;DQN=Q-learning,說明本文算法中作為獎勵計算的擁堵值算法對道路擁堵情況的數(shù)據(jù)量化更加精確,進而使得紅綠燈智能體對象的優(yōu)化更具有針對性,優(yōu)化效果也就相應(yīng)地更好。
當時間段在5 000~15 000后,可以發(fā)現(xiàn)不再有大量的車輛涌入地圖,但是四個方法的平均排隊長度也開始持續(xù)保持高位。相較于原始數(shù)據(jù)而言,三個算法的平均排隊長度均未破百,Q-learning將平均排隊長度控制在40~80,其增長和下降幅度極不穩(wěn)定;DQN將平均排隊長度控制在40~70,其增長和下降幅度也不太穩(wěn)定,但是相較于Q-learning好了很多。本文算法在該時間段內(nèi)將平均排隊長度控制在30~60,而且其增長下降幅度極為穩(wěn)定。平均排隊長度中增長和下降斜率體現(xiàn)出算法對紅綠燈優(yōu)化效果是否穩(wěn)定,也側(cè)面反映出三個算法對復(fù)雜交通情況的協(xié)調(diào)能力。綜合來看,本文算法對路網(wǎng)的協(xié)調(diào)能力和綜合優(yōu)化效果是優(yōu)于Q-learning和DQN的,這是因為本文算法通過構(gòu)建擁堵鏈和擁堵環(huán)并使用擁堵溯源算法,能夠更加精準地找到擁堵發(fā)生的源頭并對其進行有針對性的優(yōu)化,所以在面對大量車輛涌入路網(wǎng)的情況時,本文算法始終能將優(yōu)化效果控制得很穩(wěn)定。
4.2.2實驗指標2路口排隊長度與總車輛數(shù)對比
上一節(jié)實驗中對路口車輛排隊長度在三個算法中的體現(xiàn)作出了分析,但僅是排隊長度對比,在相較于復(fù)雜的路網(wǎng)擁堵情況中顯得片面,所以在該實驗中引入新的評價指標——排隊長度與總車輛數(shù)的對比并使用箱線圖來綜合分析以體現(xiàn)優(yōu)化效果。在保持原有條件不變的情況下得出了數(shù)據(jù)相關(guān)散點圖,如圖6所示,并將其歸納為四分位圖,如圖7所示。
根據(jù)圖6、7可以發(fā)現(xiàn),當路網(wǎng)中總車輛數(shù)小于600時,三個算法的紅綠燈平均排隊長度都是遠低于原始數(shù)據(jù)的,進一步印證了三個算法對紅綠燈的優(yōu)化效果都是很不錯的,并且當路網(wǎng)總車量數(shù)不多時優(yōu)化效果非常明顯。在該車輛數(shù)條件下,本文優(yōu)化算法的平均排隊長度峰值也僅僅為30左右,并且在總車輛分布數(shù)為400~600時,它的中位線也是偏下方的,具體值為15左右;Q-learning頂峰值為55,中位線偏下具體為20左右;DQN為45,中位線數(shù)值為20左右。從中位線的分布情況來看,在總體平均排隊長度的分布方面,本文算法也是遠遠優(yōu)于另兩個算法的,并且本文算法在這段時期可以明顯看出它的最低值、四分之一線和中位線是處于一個間隔很小緊密連接的狀態(tài),表明在絕大多數(shù)時候本文算法的紅綠燈平均排隊長度處于該箱線圖的低位。
當路網(wǎng)中的車輛總數(shù)大于600后,三個算法的優(yōu)化效果相較于之前便沒有那么明顯了。但是相較于原始數(shù)據(jù),三個算法的路口平均排對長度均沒有破百,并且從路口平均排隊長度的分布來說,DQN優(yōu)于Q-learning算法,本文算法進一步優(yōu)于DQN算法。
縱觀四張圖標的橫坐標長度,原始數(shù)據(jù)在總車輛數(shù)分布超過1 000時沒有相關(guān)平均排隊長度數(shù)據(jù),而其余三個算法是存在這個數(shù)據(jù)的。這說明由于三個算法對紅綠燈的優(yōu)化使得在相同條件下,路網(wǎng)能夠容納下更多的車輛,提升了路網(wǎng)的容車性,使得路網(wǎng)可使用效率變得更高。
通過以上兩個實驗可以總結(jié)出如表3所示的實驗中三個算法對地圖的紅綠燈優(yōu)化效果、路網(wǎng)協(xié)調(diào)能力、路網(wǎng)容車性進行的綜合比較。
5結(jié)束語
在復(fù)雜的交通網(wǎng)絡(luò)中通過以紅綠燈作為多智能體進入交通網(wǎng)絡(luò),使用其分散訓(xùn)練、集中反饋的特性使得其對路網(wǎng)交通的綜合優(yōu)化能力得到了很大提高,同時將智能體狀態(tài)判定細節(jié)定位到紅綠燈相位及通過連環(huán)采集并使用擁堵溯源算法量化的紅綠燈管轄車道擁堵情況使得其對智能體的狀態(tài)判定更加全面,獎勵反饋更加精準。通過實驗數(shù)據(jù)對比,傳統(tǒng)的Q-learning算法在處理復(fù)雜的交通環(huán)境時,其對百變多樣的智能體狀態(tài)的判定不夠全面,導(dǎo)致其對于大規(guī)模路網(wǎng)環(huán)境的優(yōu)化效果不盡如人意;DQN算法雖然擁有神經(jīng)網(wǎng)絡(luò)對狀態(tài)的預(yù)測能力但卻不夠精確;本文算法總結(jié)以上不足,使得其在面對大規(guī)模路網(wǎng)的優(yōu)化效果時得到了明顯改善。
參考文獻:
[1]Watkins C J C H. Learning from delayed rewards [D]. Cambridge,UK: University of Cambridge,1989.
[2]Wei Hua,Yao Huaxiu,Zheng Guanjie,et al. IntelliLight: a reinforcement learning approach for intelligent traffic light control [C]// Proc of the 24th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York: ACM Press,2018: 2464-2473.
[3]吳昊晟,鄭皎凌,王茂帆. TR-light: 一種基于多信號燈強化學(xué)習(xí)的交通組織方案優(yōu)化算法[J]. 計算機應(yīng)用研究,2021,39(2): 504-509,514.(Wu Haosheng,Zheng Jiaoling,Wang Maofan. TR-light: a traffic organization plan optimization algorithm based on multiple traffic signal lights reinforcement learning[J]. Application Research of Computers,2021,39(2): 504-509,514.)
[4]Zheng Guanjie,Xiong Yuanhao,Zang Xinshi,et al. Learning phase competition for traffic signal control [C]// Proc of ACM Conference on Information and Knowledge Management. New York: ACM Press,2019: 1963-1972.
[5]Chen Chacha,Wei Hua,Xu Nan,et al. Toward a thousand lights: decentralized deep reinforcement learning for large-scale traffic signal control [C]// Proc of the 34th AAAI Conference on Artificial Intelligence. Pola Alto,CA: AAAI Press,2020: 3414-3421.
[6]Zang Xinshi,Yao Huaxiu,Zheng Guanjie,et al. MetaLight: value-based meta-reinforcement learning for traffic signal control [C]// Proc of the 34th AAAI Conference on Artificial Intelligence. Palo Alto,CA: AAAI Press,2020: 1153-1160.
[7]劉成健,羅杰. 基于參數(shù)融合的Q學(xué)習(xí)交通信號控制方法 [J]. 計算機技術(shù)與發(fā)展,2018,28(11): 48-51.(Liu Chengjian,Luo Jie. A control method of traffic signals based on parameter fusion of Q-learning [J]. Computer Technology and Development,2018,28(11): 48-51.)
[8]黃子蓉. 基于深度強化學(xué)習(xí)的多智能體協(xié)同研究[D]. 太原: 太原理工大學(xué),2021.(Huang Zirong. Research of multi-agent cooperation based on deep reinforcement learning[D]. Taiyuan: Taiyuan University of Technology,2021.)
[9]Grandinetti P,Canudas-de-Wit C,Carin F. Distributed optimal traffic light design for large-scale urban networks [J]. IEEE Trans on Control Systems Technology,2019,27(3): 950-963.
[10]朱依婷,閆云,何兆成. 公交與社會車輛混合的中觀交通建模與仿真[J]. 系統(tǒng)仿真學(xué)報,2022,34(9): 2019-2027.(Zhu Yiting,Yan Yun,He Zhaocheng. Mesoscopic modeling and simulation of mixed traffic flow of buses and vehicles [J]. Journal of System Simulation,2022,34(9): 2019-2027.)
[11]鄒長杰,鄭皎凌,張中雷. 基于GAED-MADDPG多智能體強化學(xué)習(xí)的協(xié)作策略研究 [J]. 計算機應(yīng)用研究,2020,37(12): 3656-3661.(Zou Changjie,Zheng Jiaoling,Zhang Zhonglei. Research on collaborative strategy based on GAED-MADDPG multi-agent reinforcement learning [J]. Application Research of Computers,2020,37(12): 3656-3661.)
[12]Merrouche F,Baha N. Depth camera based fall detection using human shape and movement [C]// Proc of IEEE International Conference on Signal and Image Processing. Piscataway,NJ: IEEE Press,2016: 586-590.
[13]Newman M E J,Girvan M. Finding and evaluating community structure in networks [J]. Physical Review E,2004,69(2): 026112.
[14]Newman M E J. Fast algorithm for detecting community structure in networks [J]. Physical Review E,2004,69(6):06613.
[15]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. New York: ACM Press,2019: 1913-1922.
[16]Urbanik T,Tanaka A,Lozner B.Signal timing manual[M].Washington DC: National Academies Press,2015.
[17]顧夫挺. 基于多傳感器的車輛檢測方法及其可靠性分析[D]. 杭州: 浙江工業(yè)大學(xué),2019.(Gu Futing. Vehicle detection method base on multi-sensors and its reliability [D]. Hangzhou: Zhejiang University of Technology,2019.
[18]Robertson D I. TRANSYT: a traffic network study tool [EB/OL].(1990-11). https://trid.trb.org/view/1199173.
[19]Mnih V,Badia A P,Mirza M. Asynchronous methods for deep reinforcement learning [EB/OL].(2016-06-16). https://arxiv.org/pdf/1602.01783.pdf.
[20]Lillicrap T P,Hunt J J,Pritzel A. Continuous control with deep reinforcement learning [EB/OL].(2019-07-05). https://arxiv.org/pdf/1509.02971v6.pdf.
[21]Littman M L. Markov games as framework for multi-agent reinforcement learning [C]// Proc of the 11th International Conference on Machine Learning.San Francisco,CA:Morgan Kaufmann Publishers,1994: 157-163.
[22]Leone A,Rescio G,Garoppo A. A wearable EMG-based system pre-fall detector [J]. Procedia Engineering,2015,120: 455-458.
[23]Gupta S,Hazra R,Dukkipati A. Networked multi-agent reinforcement learning with emergent communication [EB/OL].(2020-04-09). https://arxiv.org/pdf/2004.02780.pdf.
[24]Miller A J. Settings for fixed-cycle traffic signals [J]. Journal of the Operational Research Society,1963,14(4): 373-386.
[25]Arachi S,Khosravi A,Creighton D,et al. Optimal fuzzy traffic signal controller for an isolated intersection [C]// Proc of IEEE Internatio-nal Conference on Systems,Man,and Cybernetics. Piscataway,NJ: IEEE Press,2014: 435-440.
[26]朱明浩. 城市道路干線綠波協(xié)調(diào)控制研究及效果評價 [D]. 北京:北京工業(yè)大學(xué),2016.(Zhu Minghao. Research and effect evaluation on green wave coordinated control of urban trunk roads [D]. Beijing: Beijing University of Technology,2016.)
[27]Abdulhai B,Pringle R,Karakoulas G. Reinforcement learning for true adaptive traffic signal control [J]. Journal of Transportation Engineering,2016,129(3): 278-258.
[28]Zhang Kaiqing,Yang Zhuoran,Liu Han,et al. Fully decentralized multi-agent reinforcement learning with networked agents [C]// Proc of the 35th International Conference on Machine Learning. 2018: 5872-5881.
[29]Foerster J,F(xiàn)arquhar G,Afouras T. Counterfactual multi-agent policy gradients [C]// Proc of the 32nd AAAI Conference on Artificial Intelligence. Pola Alto,CA: AAAI Press,2018.
[30]曹潔,張玲. 自適應(yīng)遺傳算法的multi-agent交通信號優(yōu)化控制 [J]. 計算機工程與應(yīng)用,2016,52(13): 265-270.(Cao Jie,Zhang Ling. Multi-agent traffic signal control based on adaptive genetic algorithm [J]. Computer Engineering and Applications,2016,52(13): 265-270.)
收稿日期:2022-06-14;修回日期:2022-08-12基金項目:四川省科技計劃重點研發(fā)項目(2021YFQ0057)
作者簡介:田超(1997-),男,四川綿陽人,碩士研究生,主要研究方向為數(shù)據(jù)挖掘、機器學(xué)習(xí);鄭皎凌(1981-),女(通信作者),重慶人,副教授,碩導(dǎo),博士,主要研究方向為智能信息處理與知識工程、機器學(xué)習(xí)(zjl9191@163.com).