胡 宇,劉美玲,周子昂,張 敏
(東北林業(yè)大學(xué)信息與計(jì)算機(jī)工程學(xué)院,黑龍江 哈爾濱 150040)
近年來,隨著城市化趨勢(shì)日益明顯,城市化所帶來的問題也漸漸地顯露出來。交通堵塞便是這些問題中的一個(gè)。而交通的擁堵對(duì)于城市的發(fā)展有著巨大的影響[1]。如何解決交通擁堵成為各大城市急于解決的問題之一。
平面交叉口通行能力不足是造成交通擁堵的主要原因,由于單路口作為城市交通體系中的基本節(jié)點(diǎn),因此對(duì)于單路口交通信號(hào)控制優(yōu)化可以更加有效地緩解城市局部交通擁堵。城市中單路口的車流量為動(dòng)態(tài)數(shù)值,而國內(nèi)對(duì)于交通信號(hào)的控制多采用固定時(shí)間控制法,因此任何預(yù)定義的交通信號(hào)都不能很好地適應(yīng)實(shí)際情況從而不能使單路口的交通性能達(dá)到最優(yōu),嚴(yán)重的則會(huì)造成交通擁堵。
由于定時(shí)信號(hào)控制不能很好地適應(yīng)當(dāng)前交通量而導(dǎo)致?lián)p失部分資源,同時(shí)隨著計(jì)算機(jī)及其硬件的飛速發(fā)展從而對(duì)于道路數(shù)據(jù)的測(cè)量變得越來越容易[2-3],因此科研人員提出了利用機(jī)器學(xué)習(xí)對(duì)交通信號(hào)進(jìn)行自適應(yīng)控制[4-6]。
許多科研工作者針對(duì)此問題展開了多方面的研究。英國學(xué)者Watkins[7]提出了強(qiáng)化學(xué)習(xí)后,美國學(xué)者Thorpe[8]率先將強(qiáng)化學(xué)習(xí)與交通信號(hào)控制相結(jié)合,通過神經(jīng)網(wǎng)絡(luò)來控制優(yōu)化信號(hào)燈時(shí)長(zhǎng)。加拿大學(xué)者Abdulhai等人[9]以車輛排隊(duì)長(zhǎng)度作為成本函數(shù),應(yīng)用Q學(xué)習(xí)對(duì)單路口信號(hào)燈時(shí)長(zhǎng)進(jìn)行優(yōu)化。同時(shí)國內(nèi)的學(xué)者劉成健等人[10]對(duì)當(dāng)前交通參數(shù)模糊化處理,將排隊(duì)長(zhǎng)度以及車道繁忙度建模后作為成本函數(shù)并實(shí)現(xiàn)了檢驗(yàn)。盧守峰等人[11]以進(jìn)入交叉口排隊(duì)長(zhǎng)度最小為優(yōu)化目標(biāo),對(duì)Q學(xué)習(xí)在交叉口控制效果實(shí)現(xiàn)了檢驗(yàn)。徐勛倩等學(xué)者[12]利用蟻群算法實(shí)現(xiàn)了一個(gè)單路口交通信號(hào)實(shí)時(shí)控制的方案。趙晨等學(xué)者[13]對(duì)單路口車流量利用模糊邏輯對(duì)其進(jìn)行分類并設(shè)定當(dāng)前相位的最短綠燈時(shí)長(zhǎng),然后根據(jù)當(dāng)前相位不同的車流量增加相應(yīng)的綠燈時(shí)長(zhǎng),從而實(shí)現(xiàn)對(duì)路口車流量的動(dòng)態(tài)控制。趙曉華、高麗穎等學(xué)者[14-15]通過BP神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)利用Q學(xué)習(xí)對(duì)信號(hào)控制的方法并且提出了一種新的交通控制獎(jiǎng)懲函數(shù)。沈文等人[16]以車均延誤作為成本函數(shù),通過Q學(xué)習(xí)對(duì)單路口信號(hào)燈控制進(jìn)行優(yōu)化。但筆者認(rèn)為單獨(dú)針對(duì)車均延誤優(yōu)化只針對(duì)了時(shí)間上的損耗進(jìn)行最優(yōu)化處理而忽視了汽油的消耗等經(jīng)濟(jì)上消耗,比如每年由于交通擁堵所造成的損失以北上廣為例達(dá)到了1600億元人民幣。
由此,筆者認(rèn)為SCOOT系統(tǒng)——一種上世紀(jì)研發(fā)但現(xiàn)今依然在使用的交通控制系統(tǒng)中對(duì)于路口的優(yōu)化參數(shù)的設(shè)定更加貼近現(xiàn)實(shí)情況,同時(shí)人們又可以通過此系統(tǒng)經(jīng)過這么長(zhǎng)時(shí)間的使用而并未被淘汰的情況可以看出此種方法的實(shí)用性。同時(shí),SCOOT系統(tǒng)中將地圖中每個(gè)路口作為節(jié)點(diǎn),在每個(gè)信號(hào)周期內(nèi),根據(jù)到達(dá)節(jié)點(diǎn)交通需求變化來對(duì)每次綠燈時(shí)長(zhǎng)變化進(jìn)行調(diào)整。這種單路口的節(jié)點(diǎn)與Q-learning算法的單路口agent相似。因此,本文結(jié)合SCOOT交通系統(tǒng)中對(duì)綠信比優(yōu)化采用停車次數(shù)與車均延誤率相結(jié)合的思想來建立新的模型,并將其作為成本函數(shù)代入Q學(xué)習(xí)算法中對(duì)單路口綠信比進(jìn)行優(yōu)化。
本文將車均延誤與單路口中的停車次數(shù)相結(jié)合,以此為成本函數(shù),通過建立適應(yīng)交通信號(hào)控制的獎(jiǎng)懲函數(shù)模型,詳細(xì)介紹Q學(xué)習(xí)算法應(yīng)用在單路口的信號(hào)控制過程,最后分析與Webster配時(shí)算法和單獨(dú)針對(duì)車均延誤的Q學(xué)習(xí)的優(yōu)化效果。
Q-learning[17-18]是強(qiáng)化學(xué)習(xí)算法中value-based的算法,是強(qiáng)化學(xué)習(xí)中最為重要的算法之一。Q即為Q(s,a),是在某一時(shí)刻的s狀態(tài)下(s∈S),采取動(dòng)作a(a∈A)能夠獲得收益的期望。環(huán)境會(huì)根據(jù)agent的動(dòng)作反饋相應(yīng)的回報(bào)rewardR,所以算法的主要思想是將State與Action構(gòu)建成一張Q-table來存儲(chǔ)Q值,然后根據(jù)Q值來選取能夠獲得最大收益的動(dòng)作。
感受與效應(yīng)裝置是用于接收感知外界因素并選擇相對(duì)應(yīng)的處理機(jī)制的實(shí)體。處理機(jī)制輸出相應(yīng)的回報(bào)函數(shù)刺激外界因素再輸出新的狀態(tài)。
在原始狀態(tài)s的基礎(chǔ)上接受外界因素,即動(dòng)作a,然后通過處理機(jī)制尋找最大回報(bào)值。
可得到以下公式:
Qt(s,a)←Q(t-1)(s,a)+α[R(s,a)+γmaxQ(t-1)(s′,a′)-Q(t-1)(s,a)]
可以通過控制折扣因子γ來得到最優(yōu)解。由于折扣因子γ∈[0,1],當(dāng)γ接近于1時(shí)函數(shù)考慮將來回報(bào),而當(dāng)γ接近于0時(shí),則考慮即刻回報(bào)。
Q學(xué)習(xí)算法步驟[19-20]如下:
1)設(shè)置參數(shù)α、γ;
2)建立初始化矩陣,即Q(s,a)為初始方案的延誤率指標(biāo);
3)循環(huán)重復(fù)計(jì)算;
4)獲取初始狀態(tài)s并選取動(dòng)作a;
5)執(zhí)行動(dòng)作a并通過公式得到即刻回報(bào)R(s,a),獲得下一狀態(tài)s′;
6)用新的s′替代原s值;
7)當(dāng)Q值變大時(shí),停止學(xué)習(xí)。
1)車均延誤時(shí)間(d)。
根據(jù)過渡函數(shù)曲線理論[21],車輛經(jīng)過一個(gè)路口的延誤時(shí)間包括3部分,即正常相位延誤、隨機(jī)延誤及過飽和延誤。由此得各相位每輛車的平均延誤為:
其中:
x為車輛飽和度,c為信號(hào)周期時(shí)間,C為通行能力。
每周期每輛車的平均延誤為:
2)停車次數(shù)[22](h)。
Q學(xué)習(xí)中,Q值的確定與獎(jiǎng)懲函數(shù)的選擇息息相關(guān),因此,獎(jiǎng)懲函數(shù)的建立十分關(guān)鍵。本文選取停車次數(shù)與Webster算法中的d值作為變量建立函數(shù):
當(dāng)d為定值時(shí),h越大,R(s,a)就越小,當(dāng)前所得值與Webster值相比差距不大時(shí)返回一個(gè)相對(duì)小的數(shù)值;而當(dāng)前所得值與Webster值相比差距較大時(shí)返回一個(gè)更加貼近1的值。通過此連續(xù)函數(shù),使返回值更加均勻而不會(huì)出現(xiàn)離散值;當(dāng)出現(xiàn)一種相對(duì)合適的動(dòng)作時(shí)有可能會(huì)直接確定而返回。
成本函數(shù)S的物理意義:由于延誤率和停車次數(shù)為單調(diào)函數(shù),因此S也為單調(diào)函數(shù),當(dāng)S越小,表明當(dāng)前相位的時(shí)間和金錢消耗越小,反之,越大。
成本函數(shù)公式如下:
實(shí)驗(yàn)初始配時(shí)方案采用Webster配時(shí)法,設(shè)定車輛的運(yùn)行速度為6 m/s,制動(dòng)時(shí)間為2 s,黃燈時(shí)長(zhǎng)為3 s。設(shè)定5組實(shí)驗(yàn)數(shù)據(jù),如表1所示。
表1 各路口車流量
序號(hào)東直東左西直西左南直南左北直北左168815256919866314675218427882026692487631968522343888252769298893146952284499830286934896329610523345108835296939810633461152384
實(shí)驗(yàn)計(jì)算中所用參數(shù)α取0.8,γ取0.99。Q學(xué)習(xí)中初始的配時(shí)方案由Webster配時(shí)法得出為(34,23,36,22)[23]。
Q學(xué)習(xí)是通過將未來狀態(tài)可獲得的最大獎(jiǎng)勵(lì)添加到實(shí)現(xiàn)其當(dāng)前狀態(tài)的獎(jiǎng)勵(lì)來實(shí)現(xiàn)這一點(diǎn),從而通過潛在的未來獎(jiǎng)勵(lì)有效地影響當(dāng)前行動(dòng)。該潛在獎(jiǎng)勵(lì)是從當(dāng)前狀態(tài)開始的所有未來步驟的獎(jiǎng)勵(lì)的預(yù)期值的加權(quán)和。而每次更新所選取的未來狀態(tài)便是動(dòng)作集,即未來所有可能發(fā)生的動(dòng)作或狀態(tài)。
本次實(shí)驗(yàn)的動(dòng)作集是由a0(34, 23, 36, 22)為初值并與(2,-2, 0)這3種情況進(jìn)行排列組合,從而得到45種離散型數(shù)據(jù)集。該動(dòng)作集是由一定的順序一一列舉出來的,以整數(shù)位取值的離散型變量。
在Q學(xué)習(xí)方案中,4個(gè)相位的動(dòng)作集采用3種可能(2,-2, 0)。經(jīng)過分析計(jì)算得出共有45種方案,計(jì)算過程如下:
例如:a1(34,23,36,22),a2(28,25,38,24), …。其中,所有的動(dòng)作集同時(shí)保持總周期不變。得到45個(gè)動(dòng)作集,如表2所示。
表2 動(dòng)作集
動(dòng)作ESELNSNLa134233622a228253824a330233824a430253624a530253822a632213428a732213626a832214022a932214220a1032233426a1132233624a1232233822a1332234020a1432253622a1532273422a1632273620a1732293420a1834193824a1934213426a2034213624a2134213822a2234214020a2334233424動(dòng)作ESELNSNLa2434233820a2534253224a2634253422a2734253620a2834253818a2934273420a3036173824a3136193624a3236193822a3336213622a3436233224a3536233422a3636233620a3736233818a3836253024a3936253222a4036253618a4136253816a4238213422a4338213620a4438233420a4540213420
Q式子更新采用:
Qt(s,a)←Q(t-1)(s,a)+α[R(s,a)+γmaxQ(t-1)(s′,a′)-Q(t-1)(s,a)]
3.3.1 第1時(shí)間段
初始配時(shí)方案為a0(34, 23, 36, 22)。Q值Q學(xué)習(xí)第1時(shí)間段內(nèi)綜合延誤d、獎(jiǎng)懲函數(shù)R、Q值的計(jì)算結(jié)果如表3所示。
表3 第1時(shí)間段結(jié)果
狀態(tài)綜合延誤RQ值s0226.61226.6s1213.60.01213.6s2192.70.07192.7s3187.20.16187.2s4183.70.18183.7s5183.70.2183.7
根據(jù)表3,貪婪選擇最小Q值為183.7,對(duì)應(yīng)方案為(12, 25, 12, 25, 54, 24, 54, 24),綜合延誤為183.7。
3.3.2 第2時(shí)間段
初始配時(shí)方案為a0(34, 23, 36, 22)。Q值Q學(xué)習(xí)第2時(shí)間段內(nèi)綜合延誤d、獎(jiǎng)懲函數(shù)R、Q值的計(jì)算結(jié)果如表4所示。
表4 第2時(shí)間段結(jié)果
狀態(tài)綜合延誤RQ值s0234.41234.4s1226.90.01226.9s2226.90.05226.9
根據(jù)表4,貪婪選擇最小Q值為226.9,對(duì)應(yīng)方案為(38, 27, 38, 27, 26, 24, 26, 24),綜合延誤為226.9。
3.3.3 第3時(shí)間段
初始配時(shí)方案為a0(34, 23, 36, 22)。Q值Q學(xué)習(xí)第3時(shí)間段內(nèi)綜合延誤d、獎(jiǎng)懲函數(shù)R、Q值的計(jì)算結(jié)果如表5所示。
表5 第3時(shí)間段結(jié)果
狀態(tài)綜合延誤RQ值s0298.61298.6s1279.3-0.2279.3s2250.5-0.1250.5s3237.60237.6s4237.60.04237.6
根據(jù)表5,貪婪選擇最小Q值為237.6,對(duì)應(yīng)方案為(24, 27, 24, 27, 32, 32, 32, 32),綜合延誤為237.6。
3.3.4 第4時(shí)間段
初始配時(shí)方案為a0(34, 23, 36, 22)。Q值Q學(xué)習(xí)第4時(shí)間段內(nèi)綜合延誤d、獎(jiǎng)懲函數(shù)R、Q值的計(jì)算結(jié)果如表6所示。
表6 第4時(shí)間段結(jié)果
狀態(tài)綜合延誤RQ值s0260.11260.1s1260.10260.1
根據(jù)表6,貪婪選擇最小Q值為260.1,對(duì)應(yīng)方案為(34, 23, 34, 23, 36, 22, 36, 22),綜合延誤為260.1。
3.3.5 第5時(shí)間段
初始配時(shí)方案為a0(34, 23, 36, 22)。Q值Q學(xué)習(xí)第5時(shí)間段內(nèi)綜合延誤d、獎(jiǎng)懲函數(shù)R、Q值的計(jì)算結(jié)果如表7所示。
表7 第5時(shí)間段結(jié)果
狀態(tài)綜合延誤RQ值s0320.31320.3s1346.1-0.2346.1s2312.9-0.2312.9s3312.9-0.2312.9
根據(jù)表7,貪婪選擇最小Q值為312.9,對(duì)應(yīng)方案為(30, 23, 30, 23, 40, 22, 40, 22),綜合延誤為312.9。
各個(gè)時(shí)間段Q學(xué)習(xí)控制模型與Webster模型所對(duì)應(yīng)的綜合延誤對(duì)比,詳見表8。
表8 與Webster的對(duì)比
序號(hào)交通量時(shí)段內(nèi)總延誤Webster法Q-learning13352227.5183.723952247226.934552265.58237.645152307.02260.155752362.25312.9
各個(gè)時(shí)間段中,使用只針對(duì)車均延誤率的Q學(xué)習(xí)算法和結(jié)合SCOOT系統(tǒng)綠信比優(yōu)化方法的Q學(xué)習(xí)算法兩者相對(duì)于Webster算法的優(yōu)化百分比如表9所示。
表9 與車均延誤率算法的對(duì)比
序號(hào)綜合延誤優(yōu)化百分比/%車均延誤優(yōu)化百分比/%119.2510.6328.147.38310.544.83415.287.24513.628.73
由表9可以得出,與未經(jīng)改進(jìn)的車均延誤率的傳統(tǒng)算法對(duì)比,新的算法效率普遍提高了0.76~8.62個(gè)百分點(diǎn),效果較為顯著。
如圖1與圖2所示,在將傳統(tǒng)定時(shí)控制的Webster算法作為Base Line來對(duì)基于車均延誤的Q學(xué)習(xí)算法與結(jié)合SCOOT系統(tǒng)優(yōu)化思想的Q學(xué)習(xí)進(jìn)行比較,可以看出無論是當(dāng)前車流量接近飽和流量還是當(dāng)前路口的車流量與飽和流量相差較多的情況下都優(yōu)于基于車均延誤的Q學(xué)習(xí)。
這說明將SCOOT綠信比優(yōu)化方法引入與Q學(xué)習(xí)相結(jié)合的算法對(duì)單路口的綠信比配時(shí)優(yōu)化更加有效,更加有助于擁堵或非擁堵路段的路口車流通行。
圖1 各算法之間結(jié)果對(duì)比
圖2 2種算法優(yōu)化比率對(duì)比
城市路口綠信比配時(shí)的動(dòng)態(tài)控制是時(shí)代發(fā)展的趨勢(shì),本文的算法就是一種有效的優(yōu)化方法。本文通過結(jié)合經(jīng)典的SCOOT系統(tǒng)中對(duì)綠信比優(yōu)化的思想,重新定義Q學(xué)習(xí)中的成本函數(shù)和獎(jiǎng)懲函數(shù)并擴(kuò)大了Q學(xué)習(xí)算法學(xué)習(xí)過程中的動(dòng)作集,在普遍只針對(duì)延誤率等時(shí)間因素的成本函數(shù)上融入了類似SCOOT系統(tǒng)中的停車次數(shù)等消耗因素使函數(shù)更加貼近生活實(shí)際,且提高了優(yōu)化效率,一定程度上完善了Q學(xué)習(xí)的成本函數(shù),使其更加具有實(shí)際性和現(xiàn)實(shí)性。在構(gòu)造獎(jiǎng)懲函數(shù)的過程中采用連續(xù)函數(shù),使在函數(shù)逼近的過程中增加了算法的有效性和準(zhǔn)確性,防止單一正反饋一直遞增。為了使單路口所選取的配時(shí)動(dòng)作更加有效,擴(kuò)大了動(dòng)作集,使Q學(xué)習(xí)在學(xué)習(xí)過程中具有更多的選擇,使得到的最終結(jié)果更加貼近實(shí)際。
本文充分地將SCOOT系統(tǒng)中對(duì)綠信比優(yōu)化的方法與強(qiáng)化學(xué)習(xí)中的Q學(xué)習(xí)算法相結(jié)合,將經(jīng)典的算法與當(dāng)前的新方法相結(jié)合,使路口綠信比更加貼近車流量情況,使其在當(dāng)前時(shí)間段內(nèi)可以通過更多的車輛,由此緩解路口的擁堵情況。
本文將前人對(duì)單路口綠信比優(yōu)化的方法與強(qiáng)化學(xué)習(xí)等新興計(jì)算機(jī)技術(shù)相結(jié)合,對(duì)于建立智慧城市交通,緩解城市的區(qū)域交通擁堵有著較強(qiáng)的推動(dòng)力。
基于本文基礎(chǔ),下一步將對(duì)不定時(shí)長(zhǎng)的信號(hào)燈周期進(jìn)行建模,嘗試解決在沒有已定動(dòng)作集的情況下,通過算法自動(dòng)得出最適用于當(dāng)前情況的配時(shí)方案。同時(shí),改進(jìn)算法使其可以同時(shí)優(yōu)化多個(gè)路口,在一定區(qū)域內(nèi)達(dá)到更加快速地舒緩交通,避免擁堵。