張功權(quán),常方蓉,金杰靈,黃合來
(1.中南大學(xué) 交通運輸工程學(xué)院,湖南 長沙 410075;2.哈佛大學(xué) 哈佛醫(yī)學(xué)院,馬薩諸塞州 波士頓 02115;3.中南大學(xué) 資源與安全工程學(xué)院,湖南 長沙 410012)
城市汽車保有量的增加造成嚴重的交通事故、擁堵和環(huán)境污染等問題,這類問題在城市交叉口區(qū)域尤為明顯。為提高道路通行效率,scats和scoot等自適應(yīng)交通信號控制(adaptive traffic signal control,ATSC)系統(tǒng)已被廣泛應(yīng)用于城市交叉口交通組織管理[1]。ATSC系統(tǒng)能夠根據(jù)檢測器獲取的交通流信息動態(tài)地調(diào)整信號相位或時長。然而,該系統(tǒng)依賴于系統(tǒng)中人工預(yù)設(shè)的信號方案或簡化的交通模型,在面對時空維度復(fù)雜多變的城市交通流時,其控制效果欠佳[2]。此外,ATSC系統(tǒng)對交叉口的安全影響并未得到統(tǒng)一驗證。研究表明:ATSC系統(tǒng)的應(yīng)用減少了交通事故次數(shù)[3-4],而有些研究發(fā)現(xiàn)ATSC系統(tǒng)的應(yīng)用未改變交通事故的發(fā)生頻率,卻增加了交通沖突的頻率和嚴重程度[5-6]。為提升ATSC系統(tǒng)的控制效果,強化學(xué)習(xí)(reinforcement learning,RL)在交通信號控制應(yīng)用中取得顯著進展[7]。
基于RL的交通信號控制系統(tǒng)在控制效果上優(yōu)于傳統(tǒng)的交通信號控制方法,其優(yōu)點在于可以定義1個或多個智能體,通過與交通環(huán)境的實時交互反饋,學(xué)習(xí)和調(diào)整控制策略,對交通信號進行長期的自適應(yīng)控制。然而,現(xiàn)實世界中交通流具有動態(tài)性和高維性,RL無法運用表格形式存儲所有的交通狀態(tài)。因此,深度強化學(xué)習(xí)(deep reinforcement learning,DRL)被用以簡化和概括交通流特征,使智能體能夠發(fā)現(xiàn)新交通狀態(tài)與已有交通狀態(tài)的相似性,從而減少計算維度和存儲空間。基于DRL的交通信號控制系統(tǒng)在動態(tài)交通流和交叉口信號控制應(yīng)用中具有優(yōu)越的性能[8-9],其優(yōu)勢在于能夠讓智能體通過與復(fù)雜交互環(huán)境的實時交互學(xué)習(xí)最優(yōu)策略,無需精確標簽數(shù)據(jù),更好地適應(yīng)復(fù)雜性、缺乏標簽數(shù)據(jù)、多目標優(yōu)化和實時決策的信號控制問題。
DRL是深度學(xué)習(xí)(deep learning,DL)和RL的結(jié)合體,它使用DL將狀態(tài)泛化至多維空間,通過神經(jīng)網(wǎng)絡(luò)將狀態(tài)映射至動作值(action-value)?;谥岛突诓呗苑椒ㄊ荄RL的2個主要類別。經(jīng)典基于值的DRL使用深度Q網(wǎng)絡(luò)(deep Q network,DQN)作為動作價值函數(shù)的逼近器,將交通狀態(tài)映射到動作Q值。Hua等[10]提出1種相位門控模型,采用DQN學(xué)習(xí)不同交通信號相位的Q值。Nishi等[11]提出決斗DQN來提高智能體的學(xué)習(xí)效率和穩(wěn)定性。在此基礎(chǔ)上,Liang等[12]利用雙重決斗D3QN(dueling double deep Q network,D3QN)學(xué)習(xí)動作價值函數(shù),解決深度Q網(wǎng)絡(luò)的高估問題。行動者-批判者(actor-critic,AC)算法是經(jīng)典基于策略的DRL,通過批判者給行動者當前動作打分的方式,更新動作選取的概率。Chu等[8]采用優(yōu)勢AC算法,將“批判者”價值函數(shù)分為狀態(tài)值和動作優(yōu)勢,提高智能體對最優(yōu)交通信號控制策略的學(xué)習(xí)速率。Pang等[13]使用深度確定性策略梯度算法改變綠燈相位的持續(xù)時長?;谥档腄RL適用于離散控制問題求解。在交通信號控制應(yīng)用中優(yōu)于基于策略的DRL。然而,大部分基于DRL的交通信號控制研究聚焦于如何提高算法的學(xué)習(xí)速率和穩(wěn)定性,并且優(yōu)化目標專注于考慮通行效率,對交通安全的影響缺乏評估。
鑒于此,本文提出1種安全驅(qū)動的自適應(yīng)交通信號控制算法?;诙嗄繕藦娀瘜W(xué)習(xí),構(gòu)建信號控制算法框架和D3QN模型,更適用于交通信號控制問題求解;使用離散交通狀態(tài)編碼定義智能體獲取的交通狀態(tài)信息,將信號相位設(shè)計為動作集,并分別選取交通安全、通行效率和尾氣排放的表征指標,構(gòu)建綜合獎勵函數(shù),主動提升城市交叉口的安全性。在長沙市某交叉口的真實流量和模擬流量條件下,與現(xiàn)有交通信號控制方法相比,驗證所提方法的有效性和可行性。
RL是1種面向目標的機器學(xué)習(xí)算法,通過與環(huán)境在離散的時間間隔內(nèi)持續(xù)交互,學(xué)習(xí)實現(xiàn)目標的最佳策略。在每個時間間隔,智能體觀察環(huán)境的狀態(tài)s,根據(jù)當前知識策略π選擇動作a,進而接收反饋獎勵r,并以一定概率pa轉(zhuǎn)移至下一狀態(tài)。在交互學(xué)習(xí)過程中,智能體通過最大化長期獎勵的數(shù)學(xué)期望不斷更新知識策略,直至收斂為最優(yōu)策略。Q值或動作值是指基于當前狀態(tài)和策略,選擇動作獲取的期望回報,如式(1)所示:
Qπ(s,a)?Eπ[Gt|st=s,at=a]
(1)
式中:Eπ為在策略π下采取動作的期望值;Gt為累積的未來獎勵;st,at為在時間步t的交通狀態(tài)和動作選取。
將式(1)分解為Bellman方程,如式(2)所示:
(2)
式中:s′,a′分別為在時間步t+1的交通狀態(tài)和動作選取;r為在狀態(tài)s選取動作a得到的獎勵;p為狀態(tài)轉(zhuǎn)移概率;γ為折現(xiàn)因子,表示未來獎勵的重要性。γ越高,意味著未來的獎勵更重要。
最優(yōu)Q值函數(shù)定義如式(3)所示:
(3)
最優(yōu)策略求解如式(4)所示:
(4)
式中:A為智能體動作的合集。
不同于RL使用表格的方式存儲所有樣本,DRL使用經(jīng)驗回放來更新計算Q值的神經(jīng)網(wǎng)絡(luò),將來自交互的樣本(s,a,r,s′)存儲在經(jīng)驗記憶中。從記憶池中隨機地抽取小批量樣本,通過隨機梯度下降法訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)以逼近Q值。隨機抽樣的方式可以中斷記憶池中樣本的強相關(guān)性,從而穩(wěn)定收斂。
DRL的最優(yōu)策略如式(5)所示:
(5)
式中:wθ為神經(jīng)網(wǎng)絡(luò)權(quán)重;θ為神經(jīng)網(wǎng)絡(luò)參數(shù)。
RL的優(yōu)化目標通常都是單一的。對于多目標優(yōu)化問題,RL需要表示和計算目標之間的關(guān)系,也需要權(quán)衡和協(xié)調(diào)目標收益的差別,這使問題變得復(fù)雜。在一些基于RL的ATSC系統(tǒng)的研究中,提出多目標優(yōu)化問題的求解方法,主要分為3類:1)動態(tài)切換優(yōu)化目標,Houli等[14]開發(fā)3種不同優(yōu)化目標的RL算法,并植入ATSC系統(tǒng),但根據(jù)交通狀況,只能有1種算法被激活,無法實現(xiàn)全局最優(yōu);2)為每個優(yōu)化目標分別設(shè)置動作價值函數(shù),取權(quán)重求和[15]。當優(yōu)化目標不相關(guān)時,此方法有利于算法收斂,但會加大計算維度和成本;3)將每個優(yōu)化目標的獎勵函數(shù)求和或加權(quán)平均,創(chuàng)建綜合獎勵函數(shù),Khamis等[16]提出1種具有7個優(yōu)化目標的ATSC系統(tǒng),但優(yōu)化目標皆與效率有關(guān)。此方法通過RL獎勵函數(shù)機制融合多個優(yōu)化目標,有助于問題求解,但各個優(yōu)化目標的獎勵函數(shù)處理方式有所欠缺,特別是當優(yōu)化目標的關(guān)系和量綱無法統(tǒng)一時,求和或加權(quán)平均的方式無法構(gòu)建有效的獎勵函數(shù)。
因此,本文采用第3類方法求解城市交叉口安全、效率、環(huán)保三目標優(yōu)化問題,針對優(yōu)化目標量綱無法統(tǒng)一的問題,使用歸一化模型和熵權(quán)法構(gòu)建綜合獎勵函數(shù),穩(wěn)定算法收斂過程。
安全驅(qū)動的自適應(yīng)信號控制算法(D3QN_SD)框架由城市交叉口環(huán)境、智能體和信控單元組成,如圖1所示。智能體在觀察當前交通狀態(tài)后,應(yīng)用D3QN模型計算Q值并選擇動作,以期獲取與優(yōu)化目標相關(guān)的最大獎勵。信控單元執(zhí)行智能體選擇的動作,調(diào)整交通信號相位,改變交通狀態(tài)。
圖1 算法框架Fig.1 Algorithm framework
具體而言,在時刻t,收集交叉口的交通信息,定義其為狀態(tài)st,并輸入至智能體。遵循貪婪策略,智能體選擇1個動作at。根據(jù)動作信息,信控單元保持當前交通信號相位或切換至另一個交通信號相位。在采取動作at之后,交叉口的交通狀態(tài)在下一時刻t+1變?yōu)閟t+1?;诮煌顟B(tài)變化和獎勵函數(shù)定義,計算狀態(tài)-動作(st,at)的獎勵值rt,并將(st,at,rt,st+1)作為經(jīng)驗存儲于記憶池中。最后,智能體通過經(jīng)驗回放方法從記憶池中抽取樣本,更新D3QN模型,并學(xué)習(xí)最佳控制策略。
在交通狀態(tài)的傳統(tǒng)定義中,通常選擇車輛隊列長度或進道口交通流信息。然而,車輛隊列長度無法區(qū)分移動車輛的信息和靜止車輛的位置信息,交通流信息只描述了過去一段時間內(nèi)車輛的交通信息,而忽略了當前車輛的信息。為解決這些局限性,一些研究提出了通過實時圖像、均勻車道劃分和離散交通狀態(tài)編碼(discrete traffic state encoding,DTSE)來表示交通狀態(tài)的方法[17]。因此,本文使用非均勻量化和DTSE方法設(shè)計交通狀態(tài),將交叉口的實時交通狀態(tài)轉(zhuǎn)換為元胞,以矩陣的形式輸入至智能體。
以雙向6車道的交叉口為例,進道口長500 m。沿著車輛的行駛方向,最左側(cè)、中間和最右側(cè)車道分別用于車輛左轉(zhuǎn)、直行、右轉(zhuǎn)或直行。圖2顯示了交叉口西進道口的狀態(tài)設(shè)計圖。最左邊的車道被劃分為1行元胞,最中間和最右邊的車道被分割為1行元胞。在每一行元胞中,從交叉口附近以7 m為增量劃分10列元胞。交叉口附近的每個元胞只能容納1輛車,可以準確反映車輛的位置和運動信息。距離交叉口最遠的單元格長度為180 m。因此,交通狀態(tài)設(shè)計為8行10列的元胞狀態(tài)矩陣。如果元胞內(nèi)有車輛,則其值為1,否則為0。
圖2 交通狀態(tài)設(shè)計Fig.2 Schematic diagram of traffic state design
智能體通過動作選擇決定延長當前信號相位或切換至另一相位。動作集定義為A={EWG,EWLG,SNG,SNLG},分別代表東西直行或右轉(zhuǎn)綠燈,東西左轉(zhuǎn)綠燈,南北直行或右轉(zhuǎn)綠燈,南北左轉(zhuǎn)綠燈。4個綠燈信號相位持續(xù)時間為10 s,如圖3所示。相位不切換時,延長當前信號相位10 s;相位切換時,系統(tǒng)將執(zhí)行4 s的黃燈。
圖3 綠燈信號相位Fig.3 Green light signal phase
獎勵作為DRL技術(shù)的關(guān)鍵部分,是優(yōu)化目標的直觀體現(xiàn),用于衡量執(zhí)行動作的質(zhì)量。本文分別設(shè)計3個獎勵函數(shù)模型對應(yīng)安全、效率、環(huán)保3個優(yōu)化目標,并基于歸一化模型和熵權(quán)法,構(gòu)建綜合獎勵函數(shù)。
交通沖突是道路交通安全的主要評價指標,本文以TTC(time-to-collision)小于3作為交通沖突是否發(fā)生的判斷標準[18-19],以相鄰時間步交通沖突次數(shù)的差值作為表征安全的獎勵,如式(6)所示:
(6)
式中:CTC(t+1),CTC(t)分別表示在時間步t+1和t的累積交通沖突次數(shù)。
在交叉口場景,交通延誤主要來源于車輛等待紅燈所損失的時間,故以相鄰時間步車輛等待時間的差值作為表征效率的獎勵,如式(7)所示:
(7)
式中:CWT(t+1),CWT(t)分別表示在時間步t+1和t的累積車輛等待時間。
車輛尾氣排放的主要成分是CO2,根據(jù)SUMO的污染排放模型(PE)獲取CO2排放量,以相鄰時間步車輛CO2排放量的差值作為表征環(huán)保的獎勵,如式(8)所示:
(8)
式中:PE(t+1),PE(t)分別表示在時間步t+1和t的累積車輛CO2排放量。
鑒于3個獎勵函數(shù)模型的量綱不同,構(gòu)建歸一化模型如式(9)~(10)所示:
(9)
式(9)中:x為獎勵函數(shù)計算值;xmax,xmin分別表示大于0的數(shù)中最大和最小值。
(10)
根據(jù)歸一化模型,綜合獎勵模型如式(11)所示:
(11)
式中:wTS,wTE,wCE分別表示安全、效率、環(huán)保3個獎勵函數(shù)模型的權(quán)重值。權(quán)重值的大小說明優(yōu)化目標的重要程度,本文以安全作為主要優(yōu)化目標,效率和環(huán)保作為次要優(yōu)化目標,故wTS,wTE,wCE初始取值0.5,0.25,0.25。
為保證模型穩(wěn)定收斂,獲取最優(yōu)控制策略,基于每次動作獲取的獎勵值,使用熵權(quán)法實時調(diào)整獎勵函數(shù)模型的權(quán)重值,min-max標準化函數(shù),將3個獎勵函數(shù)的量綱統(tǒng)一,標準化后取值位于[0,1]之間,如式(12)所示:
(12)
式中:min {xi},max {xi}表示i項獎勵值的最小和最大值。
計算各個獎勵函數(shù)的歸一化值如式(13)所示:
(13)
式中:xij表示第j項獎勵函數(shù)在第i次動作時計算的獎勵值。
各個獎勵函數(shù)在每次動作時計算的獎勵值所組成的標準化矩陣如式(14)所示:
Y={Pij}m×n
(14)
式中:m為累計動作次數(shù);n為獎勵函數(shù)數(shù)量。
計算第j項獎勵函數(shù)的熵值如式(15)所示:
(15)
計算第j項獎勵函數(shù)的差異系數(shù)如式(16)所示:
gj=1-Hj
(16)
計算第j項獎勵函數(shù)的權(quán)重值,即wTS,wTE,wCE的取值,如式(17)所示:
(17)
每次智能體決策時,即更換或延長信號相位時,每項獎勵函數(shù)的權(quán)重值都會重新計算,以尋求全局最優(yōu)解。
圖4所示的是D3QN模型結(jié)構(gòu),由卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)和全連接神經(jīng)網(wǎng)絡(luò)(fully connected network,DNN)組成。元胞狀態(tài)矩陣通過卷積層和全連接層映射到動作的Q值。由于矩陣的每一行表示車道的交通流信息,卷積層的濾波器大小設(shè)為1×3,步長為2,用于提取每個車道的特征。卷積層的輸出經(jīng)過池化層抽象為1個狀態(tài)向量,并輸入至全連接層。Q值量化了智能體在未來能獲得的獎勵,所以最優(yōu)動作選擇具有最高的Q值。
圖4 雙重決斗Q網(wǎng)絡(luò)模型Fig.4 Double dueling deep Q network model
算法偽代碼如表1所示。
表1 算法偽代碼及流程Table 1 Algorithm pseudo code and flow
本文基于湖南省長沙市時中路和涼塘路交叉口的真實場景,在微觀交通仿真軟件SUMO中搭建實驗環(huán)境,如圖5所示。交叉口道路為雙向6車道,道路長度約500 m,寬度約20 m。沿車輛行駛方向,最左側(cè)車道允許左轉(zhuǎn),中間車道允許直行,最右側(cè)車道允許直行和右轉(zhuǎn)。在未發(fā)生交通沖突的情況下,位于最右側(cè)車道的車輛在紅燈時允許右轉(zhuǎn)。算法模型通過使用Python編程語言和深度學(xué)習(xí)框架TensorFlow(Keras)實現(xiàn),以Nvidia GeForce RTX 3060Ti作為硬件環(huán)境。
圖5 實驗場景Fig.5 Experimental scene
考慮城市交通流的隨機多樣性,為全面訓(xùn)練D3QN_SD模型,采用WeiBull分布模擬城市現(xiàn)實高峰和低峰的交通流特征,其概率密度函數(shù)如式(18)所示:
(18)
式中:λ是尺度參數(shù)、a是形狀參數(shù),設(shè)為1,2。車輛從任意方向進入交叉口,左轉(zhuǎn)、直行、右轉(zhuǎn)的比例為1∶6∶1。
算法使用CNN和DNN計算Q值。CNN共3層,內(nèi)核尺寸3×3;DNN共5層,寬度為400。模型采用Adam優(yōu)化器,均方誤差作為損失函數(shù)。仿真和算法參數(shù)具體設(shè)置如表2所示。
表2 仿真和算法參數(shù)設(shè)置Table 2 Setting of simulation and algorithm parameters
為驗證算法的優(yōu)化效果和魯棒性,實驗分為2部分:1)模擬車流場景下控制效果對比,采用隨機種子seed分別生成500,1 500車輛,模擬低流量和高流量場景進行測試;2)真實車流場景下控制效果對比,采用時中路和涼塘路交叉口早高峰車流數(shù)據(jù)進行測試,共991輛車。
對于所有測試場景,選取平均交通沖突次數(shù)、平均行車延誤、平均CO2排放作為算法性能的評價指標。鑒于DRL無需數(shù)據(jù)標簽,在信號控制問題上優(yōu)于有監(jiān)督學(xué)習(xí)方法,為驗證所提方法的實用性和創(chuàng)新性,將本文提出的D3QN_SD算法與現(xiàn)有交通信號控制方式和其他DRL模型進行比較:1)定時信號控制(fixed-time signal control,FTSC),根據(jù)Webster法計算各個綠燈相位的時長,采用實驗交叉口的實際紅綠燈時長;2)感應(yīng)信號控制(actuated signal control,ASC),根據(jù)感應(yīng)線圈獲取的車流量數(shù)據(jù)自動調(diào)整綠燈時長,實驗設(shè)置綠燈最小時長為15 s,最大時長為60 s;3)強化學(xué)習(xí)信號控制(D3QN),使用與D3QN_SD一樣的算法框架和神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),區(qū)別在于優(yōu)化目標僅考慮通行效率,即獎勵函數(shù)模型使用車輛等待時間。
圖6是在隨機交通流條件下算法訓(xùn)練過程的累積獎勵值對比,D3QN_SD比D3QN的收斂速率更快,表明提獎勵函數(shù)模型歸一化的方式統(tǒng)一優(yōu)化目標的量綱,使強化學(xué)習(xí)智能體的策略學(xué)習(xí)方向更加明確,加快了學(xué)習(xí)速度,減少計算成本。圖7~8表示在采用WeiBull分布模擬500,1 500車輛的城市高峰期場景下,各個信控方法在實時交通沖突上的控制效果??梢?在D3QN_SD的控制下,交通沖突數(shù)量始終低于另外3種方法,特別是在流量峰值(第6時間步)和高流量場景,說明D3QN_SD能有效減少交通沖突次數(shù),提升道路安全水平。根據(jù)表3,在低流量和高流量場景下,相比于D3QN,D3QN_SD平均沖突次數(shù)減少20.13個百分點和28.45個百分點。此外,在效率和環(huán)保的評估上,D3QN_SD的平均行車延誤減少7.18個百分點和8.96個百分點,CO2排放量減少3.66個百分點和3.51個百分點,表明D3QN_SD的控制效果均優(yōu)于D3QN。
表3 交叉口不同流量條件下算法的性能Table 3 Performance of algorithm under different traffic flow conditions at intersection
圖6 收斂速率Fig.6 Convergence rate
圖7 低流量場景下實時交通沖突Fig.7 Real-time traffic conflict in low traffic flow scene
圖8 高流量場景下實時交通沖突Fig.8 Real-time traffic conflict in high traffic flow scene
圖9 真實流量場景下實時交通沖突Fig.9 Real-time traffic conflict in real traffic flow scene
本文還在真實車流場景下進行實驗,車流數(shù)據(jù)如圖5(a)所示,D3QN和D3QN_SD提前在模擬車流中訓(xùn)練200回合。由表3可知,基于DRL的信控方法在平均沖突次數(shù)、行車延誤、CO2排放上效果顯著,均優(yōu)于FTSC和ASC方法,因為當交通流量增加時,交通流分布具有高度隨機性,傳統(tǒng)的控制方法難以見效。在真實車流場景下,相較于D3QN,D3QN_SD的平均沖突次數(shù)減少11.17個百分點,CO2排放減少4.13個百分點,但行車延誤增加了2.99個百分點。由于真實早高峰交通流特征和模擬交通流之間存在差別,D3QN_SD在提升效率上無法始終優(yōu)于D3QN,但能穩(wěn)定改善交通狀況,減少交通沖突次數(shù)。
綜上所述,相較于FTSC、ASC、D3QN算法,D3QN_SD在單交叉口場景下能夠更快的學(xué)習(xí)最優(yōu)信號控制策略,有效減少交通沖突、行車延誤和CO2排放,提升交叉口交通安全、通行效率與環(huán)境保護。隨著車流量的增多,D3QN_SD算法的控制效果越好,特別是在高流量條件下。
1)基于多目標強化學(xué)習(xí)框架,設(shè)計以安全為主導(dǎo)的綜合獎勵函數(shù),構(gòu)建自適應(yīng)交通信號控制方法(D3QN_SD);D3QN_SD可基于實時交通狀態(tài),選擇最佳交通信號控制策略,從而減少交通沖突。
2)應(yīng)用定時信號控制、感應(yīng)信號控制、強化學(xué)習(xí)信號控制方法,與D3QN_SD進行比較,結(jié)果顯示D3QN_SD在減少交通沖突、交通擁堵與尾氣排放方面均表現(xiàn)較優(yōu)。
3)D3QN_SD在不同流量場景下可穩(wěn)定學(xué)習(xí)最優(yōu)信號控制策略,交通沖突的優(yōu)化效果隨著交通流量的增加而提升,適用于城市關(guān)鍵交叉口節(jié)點,有助于改善道路安全。
中國安全生產(chǎn)科學(xué)技術(shù)2023年10期