徐 勇 廣州市高科通信技術股份有限公司 廣州 510663
SCATS調控質量評估系統的設計和實現
徐 勇 廣州市高科通信技術股份有限公司 廣州 510663
針對悉尼協調自適應交通控制系統(SCATS)對于人工調控缺乏有效監控和后評估手段的問題,開發一種SCATS操作監控軟件系統,根據預定的告警規則,在發現風險操作時生成告警并記錄在數據庫中。應用結果證明,該方案能有效識別低效的調控操作,周期性地按人或部門統計告警的情況并反饋給相關人員,作為內部培訓以及考核、提升的基礎。
SCATS;調控;質量;軟件
悉尼協調自適應交通控制系統(Sydney Coordinated Adaptive Traffic System,簡稱SCATS),由澳大利亞新南威爾士州道路交通局(RTA)研究開發,是目前世界上少有的幾個先進的城市交通信號控制系統之一。國內已經應用SCATS系統的城市有上海、沈陽、蘇州、廣州、石家莊、杭州等十幾個城市,SCATS在這些城市智能交通信號控制方面,發揮了巨大的作用。最理想的情況下, SCATS系統會自動調節各個路口信號機的運行參數,比如周期、相位、綠信比等,以達到各路口最佳的配時方案。但由于交通具有偶然性,難免在個別時段交通流量出現大的變化或突發事故,這時全部依賴于SCATS系統的自適應能力已經不夠,必須進行人工干預。目前各城市交警支隊及下轄部門經常進行人工干預,實時調節交通信息,比如鎖定長周期、長相位等。但人工干預又會反過來影響系統的自適應能力和SCATS系統的運行效率,比如不合理的參數調節,可能導致交通擁堵等情況。所以人工干預的質量變得很重要,但SCATS系統本身并不提供足夠的手段分析和統計人工調控的效果,也沒有量化的方法評估各調控部門以及人員的水平,導致人工調控的質量無法提高。本項目基于SCATS系統接口,實現了一套獲取和評估SCATS系統調控質量的軟件系統。
SCATS系統本身包括SCATS中央控制機和區域控制機,區域控制機用于控制各個路口的信號機,并將路口數據發送至SCATS中央控制機,各SCATS系統調控人員可以通過SCATS系統的客戶端,實時或計劃調節各路口信號參數。 SCATS系統中央控制機支持專用的數據接口,允許第三方程序交互數據,調控質量評估系統就通過這個接口從SCATS系統獲取數據。 SCATS系統和調控質量評估系統的網絡結構如圖1所示。

圖1 SCATS系統和調控質量評估系統的網絡結構
SCATS提 供ITS接 口(ITS port) 服務,應用程序通過該接口可與SCATS的中央控制機(central manager)和區域控制機(region)交換數據。該接口的通信基于TCP/ IP協議。 ITS接口通信協議中有2種消息類型:請求和響應。 ITS應用程序發送請求信息給SCATS主機, SCATS主機響應請求,將數據發回給ITS應用程序。 ITS接口提供了多種消息獲取格式,包括流量、飽和度、子系統、區域、部分控制、報警、狀態等。調控質量評估系統主要需要獲取路口信息、操作用戶、日志信息。路口信息和用戶信息用于同步SCATS系統當前管理的所有路口和操作人員情況,日志用于分析風險操作,產生相應告警。
根據SCATS系統的運營經驗,諸如鎖定路口信號機的周期、相位、綠信比等操作,以及路口在特殊情況下的關燈、黃閃等操作,實際上都會導致SCATS系統自適應能力的降低,因此都屬于風險操作,需要作為可能的告警源加以識別和記錄。評估系統通過獲取到的SCATS系統運行日志,識別的告警類型如表1所示。
調控質量評估系統本身是個典型的二層C/S應用,有一個服務端連接SCATS中央控制機獲取日志等信息,實時分析告警,并將產生的告警存放入數據庫;數據庫采用流行的MySQL開源數據庫;同時提供一個GUI界面的客戶端,用于監控實時告警,查詢、統計歷史告警,查看、管理路口、操作用戶信息,產生日、周、月報表等。
服務端、數據庫、客戶端三個部分中,數據庫和服務端可分離部署,也可以部署在同一臺服務器硬件上,客戶端可安裝于交警部門各管理人員的辦公電腦上。軟件體系結構如圖2所示。
(1)服務端具體功能:創建和管理和中央控制機的連接, License驗證;定時同步路口信息、SCATS操作用戶信息到MySQL數據庫中(1天1次);實時讀取、解析SCATS日志信息,篩選有效日志,存入MySQL數據庫;根據告警規則,分析有效日志,產生相關告警,并實時通知客戶端;由于管理用戶可以更改告警規則參數,所以可以在得到客戶端通知后,實時刷新告警規則參數。
(2)數據庫表:用于存儲中間日志、路口和用戶信息(主要用于告警顯示時的字段關聯)、告警產生規則、歷史告警等。
(3)客戶端功能:主要包括路口信息、SCATS用戶查詢、告警查詢、告警統計、告警規則管理等管理界面,以及登陸、日志、用戶管理(此處指評估系統自身的用戶)、幫助等輔助功能。
4.1ACE通信中間件
系統服務端采用C++實現,為滿足高性能、高可靠的要求,應用了成熟的C++網絡通訊庫ACE(Adaptive Communication Environment,自適配通信環境)是面向對象的框架和工具包,它為通信軟件實現了核心的并發和分布式模式。 ACE包含的多種組件可以幫助通信軟件的開發獲得更好的靈活性、效率、可靠性和可移植性。
服務端采用TCP方式和中央機以及客戶端通信,為滿足多線程并發的需要,采用ACE反應器框架(Reactor)實現對連接以及線程的管理。實踐證明,在對1000個路口以上的超大型城市的SCATS系統監控時,也能完全滿足性能需求。
4.2告警分析算法
每種告警類型需要對應一種告警分析算法,主要可分為三類:一類是根據日志中的特征值即可簡單識別的告警,比如“關燈”、“黃閃”;第二類是需要分析日志中指令的具體參數,比如長久鎖定類的告警,這需要理解SCATS各指令參數含義并判斷參數是否超過閥值;第三類則需要在一定時間范圍持續監控,并根據前后操作進行關聯判斷,比如“連續操作多個路口”等。告警算法充分利用面向對象編程的特點,易于添加和修改,便于后續擴展。
為防止部分告警過于頻繁產生(由于SCATS系統本身缺陷,有時個別操作會導致記錄的日志出現異常重復),還需要加入防抖算法,即短時間內的高頻同類告警屬于誤告。由于交警支隊對各個路口的重視程度不同,告警規則同時也支持針對不同路口設置不同的告警策略(包括是否啟用,各告警參數的門限閥值等)。
4.3告警和報表推送技術
為保證告警通知的實時性,以及提高管理的自動化程度。系統支持告警短信實時推送(可按告警等級、用戶等條件定制)、以及各類報表自動定時發送功能。由于公安內網和互聯網之間的隔離限制,短信告警未使用短信網關方式,而采用第三方短信貓中間件實現。報表則采用郵件(SMTP協議)方式主動推送給相關人員。

表1 SCATS調控質量評估系統識別的告警類型

圖2 軟件體系結構
本文介紹了SCATS調控質量評估系統的設計和實現方案,系統已在國內特大型城市SCATS系統中上線運行,交警支隊根據系統自動生成的告警統計報告,及時反饋給下轄各大隊SCATS系統管理、操控人員,有效提升了SCATS系統操作人員的人工調控水平,提高了全市道路交通信號系統的運營效率。
[1]彭信林,王寧鳴,周劍鋒,王景成,徐文艷,SCATS數據采集系統的設計與實現[J],計算機工程,2008(12):257
[2]SCATS6 ITS Interface 2.0 For SCATS 6.4.1, 2004