朱海峰
(1.中國電子科技南湖研究院,浙江 杭州 310012;2.浙江海康智聯科技有限公司,浙江 杭州 310012)
當前,交叉口信號控制多采用多時段固定配時方案,隨著交通環境的長期或短期變化經常會無法適應交通需求,引起不必要的延誤甚至部分時段擁堵。因此,對時段內的配時方案進行實時優化非常必要。常見的實時優化方法未根據反饋進行學習,且計算過程復雜或變化過于靈活不安全,不利于實施和流程化操作,不能完全滿足動態交通信號配時的需要。該文兼顧信號配時優化的穩定性和靈活性,以交叉口時段內原始固定配時方案為基準,向其上下兩個安全區域進行搜索和選擇,實現控制的穩定性,同時對時段內相對長久緩慢或異常變化作出及時響應,體現控制的靈活性,從而穩定、靈活地改善路口交通運行狀況。
如圖1所示,將交叉口看作智能體,通過對時段內交通環境狀態的判別,區分常規與異常狀態,選擇并執行相應狀態下配時方案動作行為,作用于當前交通環境,分析交叉口狀態,并依據狀態給出相應的獎勵或懲罰反饋。該獎勵或懲罰用于強化環境狀態與最佳方案選擇之間的映射關系,反復執行這個映射過程,學習模型即可獲得時段內常規與異常環境狀態下選擇最佳方案的能力。

圖1 單點信號配時方案選擇原理示意圖
為描述常規與異常狀態,將狀態空間定義為S=(C,F),其中C代表狀態集,F代表狀態開關。
為使算法能快速收斂并迅速響應交通環境變化,對狀態集進行簡化設計。以某一時段內運行的固定配時方案為基準,向其上下2個方向各拓展2套方案。狀態集C共設置5套方案,即C=(P1,P2,P3,P4,P5),其中P3為原始基準方案,P1為向下拓展方案1,P2為向下拓展方案2,P4為向上拓展方案4,P5為向上拓展方案5。以城市主干道上三相位十字交叉口為例進行狀態集5套方案的設置展示:P3方案各相位時長分別設置為54、34、44 s,周期為132 s;P1各相位時長分別設置為30、24、32 s,周期為86 s;P2各相位時長分別設置為43、29、40 s,周期為112 s;P4各相位時長分別設置為56、35、46 s,周期為137 s;P5各相位時長分別設置為59、36、47 s,周期為142 s。
為區分交通狀態異常與否,設置針對常規與異常狀態的開關量F,表達式如下:
(1)
式中:y為交叉口的關鍵流量比,以三相位交叉口為例,y=(q1+q2+q3)/s;q1、q2、q3分別為相位1、2、3中關鍵車流的流量;s為車道的飽和流量,這里假設各車道的飽和流量相同;ynow為當前關鍵流量比;ylast為數據分析得到的該時段公允關鍵流量比,與ylast同比增大超過e可判定為異常狀態,e可根據實際交叉口情況進行設置。
在單點信號配時優化中,一個完整的動作空間包括交叉口在一個時間步內所有可能的動作,也就是所有可能的信號配時方案。考慮到動作空間太大會影響算法的收斂速度,將動作簡化為5套方案的選擇。動作空間定義為A=(P1,P2,P3,P4,P5),其中P1、P2、P3、P4、P5與狀態空間中的P1、P2、P3、P4、P5相同。每套方案中各相位時長已確定(實際應用中,相位可根據各相位關鍵車流的流量比進行分配調節)。
為簡化算法,將異常狀態和常規狀態下動作空間設置成一樣,動作空間需同時覆蓋常規及異常狀態下配時方案空間(實際應用中,可根據常規狀態和異常狀態分別設置動作空間)。
回報函數可選取延誤時間、停車次數、排隊長度等指標值計算得到,指標值可通過仿真軟件直接獲得。這里選取交叉口車輛平均延誤作為評價指標。
首先通過聚類算法分析得到交叉口該時段內不同類別延誤變化范圍的上限值d。如圖2所示,類別為0上的“★”代表正常延誤類別的聚類中心點,×代表80%分位上正常延誤值上限;為1上的“★”代表異常延誤類別的聚類中心點,×代表80%分位上異常延誤值上限。正常延誤上限d為44 s,異常延誤上限d為66 s。

圖2 交叉口車均延誤聚類結果
獎懲函數為:
(2)
式中:dt0為動作執行前的延誤;dtk為動作執行后的延誤。
為防止因交通自身的波動性導致延誤突變及獎懲函數產生振蕩,設置連續相同動作標志b。若連續2次相同的動作,則b=2;若連續3次相同的動作,則b=3;以此類推,每增加1次連續相同動作,b值加1;連續動作被中斷,則b=1。
針對不同的b、rt(s,a)、dif(dif=dtk-dt0)調整反饋rt(s,a),規則如下:
(3)
如式(3)所示,b=2且rt(s,a)=-1時,說明被選中的方案已連續2次被選中,該算法動作選擇策略采取貪婪算法,據此可知被選中的方案曾經是一套相對優秀的方案,或許是由于交通的波動性導致延誤升高。延誤升高幅度不大,即dif<10時,可修正rt(s,a)=0;延誤升高幅度較大,即dif≥10時,可保持rt(s,a)=-1。
如式(4)所示,b>2且rt(s,a)=-1時,說明被選中的方案已連續3次以上被選中,同理可知被選中的方案已是比較優秀的方案,或許是由于交通的波動性或交通環境變化導致延誤升高。延誤升高幅度不大,即dif<10時,可保持rt(s,a)=-1;延誤升高幅度較大,即dif≥10時,可修正rt(s,a)=-b+1,加強環境變化的反饋值。
rt(s,a)=

(4)
如式(5)所示,rt(s,a)=2、b=2時,重新設置b=1,防止緊接著出現相同動作時,隨著b的升高,出現修正rt(s,a)=-1甚至是更小的負值,從而產生強烈振蕩,導致出現不收斂的情況。
rt(s,a)=2;rt(s,a)=1,b=2
(5)
Q值的更新采用Bellman最優方程:
Qt+1(st,at)=(1-αt)Qt(st,at)+αt(rt+1+
γQtmax(st+1,at+1))
(6)
該算法需建立2張Q值表,一張用于記錄常規交通,另一張用于記錄異常交通,其他參數統一設置。取α=0.5、γ=0.9(α為學習速率,其值越大,保留之前訓練的效果越少;γ為折扣因子,其值越大,之前訓練的效果所起的作用越大。可根據具體交叉口特性按需選擇)。動作選擇策略采用貪婪算法,即ε-greedy 探索策略,通過設置自增加的ε值∈[0.7,0.9]與隨機生成數r∈[0,1],比較大小進行學習動作選取。選取規則:r<ε時,選取當前狀態下Q值最大的動作;r≥ε時,在當前狀態下隨機選取一個動作執行。ε自增加規則:迭代次數n≤500次時,ε=0.7+0.2/500n;n>500次時,ε=0.9。
該算法中,Q值表為5×5矩陣(見表1),其中s1、s2、s3、s4、s5代表5種狀態(為便于理解,采用傳統強化學習中狀態表示字母s,對應的狀態為P1、P2、P3、P4、P5),a1、a2、a3、a4、a5代表5種動作(為便于理解,采用傳統強化學習中動作表示字母a,對應的動作為P1、P2、P3、P4、P5)。

表1 Q值的初值
根據Bellman方程,在迭代中更新各狀態下不同行為的Q值,讓各狀態下最優行為的Q值取得最大值,這樣最優行為的選擇概率越來越大,而非最優行為的概率越來越小,在Q值矩陣最終收斂后,確保在每種狀態下都能大概率地選擇最優行為。
相比一般強化學習算法,該算法無論是常規Q值表還是異常Q值表都能在收斂后迅速響應交通環境的長期緩慢變化。因為收斂后最優行為大概率會被連續選中,若最優行為已與交通環境不再匹配,將因為被連續選中而受到不斷加重的懲罰,從而迅速減小被選中的概率,直到達到新的收斂狀態。
采用VSC++編程實現狀態判定及方案控制和選取,在 Vissim 平臺構建仿真環境進行仿真,分別采集該算法及固定配時方案下延誤、流量等數據,比較分析該算法的有效性。
選取黃山天湖路-科學大道路口及周邊相關路口(見圖3),在 Vissim 中構建道路環境,構建一個南北雙向六車道、東西雙向三車道的交叉口。

圖3 路口關系示意圖
設置3個相位對該交叉口進行控制,南向北放行左直右為第一相位Phase1,北向南放行左直右為第二相位Phase2,東西向無左轉放行直右為第三相位Phase3。狀態空間共5套方案(P1、P2、P3、P4、P5),方案的切換通過VSC++代碼控制,信號方案的切換依據Q值表規則。最后通過延誤檢測器統計得到的平均延誤對兩方案進行評價。
時段內交通流量統計結果及車道數見表2。

表2 各進口交通流量統計結果及車道數
單點交叉口的算法程序Q值數表初始值設置見表1,通過運行算法代碼對Q值表進行更新,學習結果同樣是 5×5矩陣(見表3)。

表3 訓練收斂中的Q值表
交叉口方案在迭代中依據學習規則進行不斷切換,通過設置不同學習次數N的值,可獲取不同收斂情況的Q值表。N取值越大,Q值表收斂情況越好,但相應耗時會增加。試驗中選取N值為 540次,每迭代30次統計一次總平均延誤Di,迭代540次,共統計18次總平均延誤進行對比。
(7)

該算法與固定配時方案的總平均延誤對比見圖4。

圖4 文中算法與固定配時延誤對比曲線
由表2和圖4可知:固定信號配時與交通環境較匹配。該算法在學習480次后才在總平均延誤上達到固定信號配時的控制效果,主要原因在于該算法的信號配時方案是不斷地在原固定信號配時方案上下進行探索,易導致仿真中交叉口車流出現波動現象,而偶爾的波動就會給交通延誤指標造成較大影響;迭代480次后,該算法在延誤指標上趨于穩定并優于固定信號配時方案;迭代540次后,總平均延誤為871.992 25 s。固定配時方案的總平均延誤為1 147.871 719 s,相對于固定配時,該算法的總平均延誤減少24%,明顯優于固定信號配時。
運用 Q 學習算法設計單點信號配時方案選擇算法,以交叉口平均延誤的相關規則作為評價回報值,利用Qlearning進行Q值矩陣的收斂性學習,實現對交叉口信號配時方案選擇的學習。通過對 Vissim進行二次開發,將該算法與交叉口原固定信號配時進行仿真對比,結果表明該算法經過學習后的總平均延誤優于固定信號配時,對單點交叉口方案選擇具有一定的適用性。