徐 勇 廣州市高科通信技術(shù)股份有限公司 廣州 510663
SCATS調(diào)控質(zhì)量評(píng)估系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)
徐 勇 廣州市高科通信技術(shù)股份有限公司 廣州 510663
針對(duì)悉尼協(xié)調(diào)自適應(yīng)交通控制系統(tǒng)(SCATS)對(duì)于人工調(diào)控缺乏有效監(jiān)控和后評(píng)估手段的問題,開發(fā)一種SCATS操作監(jiān)控軟件系統(tǒng),根據(jù)預(yù)定的告警規(guī)則,在發(fā)現(xiàn)風(fēng)險(xiǎn)操作時(shí)生成告警并記錄在數(shù)據(jù)庫(kù)中。應(yīng)用結(jié)果證明,該方案能有效識(shí)別低效的調(diào)控操作,周期性地按人或部門統(tǒng)計(jì)告警的情況并反饋給相關(guān)人員,作為內(nèi)部培訓(xùn)以及考核、提升的基礎(chǔ)。
SCATS;調(diào)控;質(zhì)量;軟件
悉尼協(xié)調(diào)自適應(yīng)交通控制系統(tǒng)(Sydney Coordinated Adaptive Traffic System,簡(jiǎn)稱SCATS),由澳大利亞新南威爾士州道路交通局(RTA)研究開發(fā),是目前世界上少有的幾個(gè)先進(jìn)的城市交通信號(hào)控制系統(tǒng)之一。國(guó)內(nèi)已經(jīng)應(yīng)用SCATS系統(tǒng)的城市有上海、沈陽(yáng)、蘇州、廣州、石家莊、杭州等十幾個(gè)城市,SCATS在這些城市智能交通信號(hào)控制方面,發(fā)揮了巨大的作用。最理想的情況下, SCATS系統(tǒng)會(huì)自動(dòng)調(diào)節(jié)各個(gè)路口信號(hào)機(jī)的運(yùn)行參數(shù),比如周期、相位、綠信比等,以達(dá)到各路口最佳的配時(shí)方案。但由于交通具有偶然性,難免在個(gè)別時(shí)段交通流量出現(xiàn)大的變化或突發(fā)事故,這時(shí)全部依賴于SCATS系統(tǒng)的自適應(yīng)能力已經(jīng)不夠,必須進(jìn)行人工干預(yù)。目前各城市交警支隊(duì)及下轄部門經(jīng)常進(jìn)行人工干預(yù),實(shí)時(shí)調(diào)節(jié)交通信息,比如鎖定長(zhǎng)周期、長(zhǎng)相位等。但人工干預(yù)又會(huì)反過來(lái)影響系統(tǒng)的自適應(yīng)能力和SCATS系統(tǒng)的運(yùn)行效率,比如不合理的參數(shù)調(diào)節(jié),可能導(dǎo)致交通擁堵等情況。所以人工干預(yù)的質(zhì)量變得很重要,但SCATS系統(tǒng)本身并不提供足夠的手段分析和統(tǒng)計(jì)人工調(diào)控的效果,也沒有量化的方法評(píng)估各調(diào)控部門以及人員的水平,導(dǎo)致人工調(diào)控的質(zhì)量無(wú)法提高。本項(xiàng)目基于SCATS系統(tǒng)接口,實(shí)現(xiàn)了一套獲取和評(píng)估SCATS系統(tǒng)調(diào)控質(zhì)量的軟件系統(tǒng)。
SCATS系統(tǒng)本身包括SCATS中央控制機(jī)和區(qū)域控制機(jī),區(qū)域控制機(jī)用于控制各個(gè)路口的信號(hào)機(jī),并將路口數(shù)據(jù)發(fā)送至SCATS中央控制機(jī),各SCATS系統(tǒng)調(diào)控人員可以通過SCATS系統(tǒng)的客戶端,實(shí)時(shí)或計(jì)劃調(diào)節(jié)各路口信號(hào)參數(shù)。 SCATS系統(tǒng)中央控制機(jī)支持專用的數(shù)據(jù)接口,允許第三方程序交互數(shù)據(jù),調(diào)控質(zhì)量評(píng)估系統(tǒng)就通過這個(gè)接口從SCATS系統(tǒng)獲取數(shù)據(jù)。 SCATS系統(tǒng)和調(diào)控質(zhì)量評(píng)估系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
圖1 SCATS系統(tǒng)和調(diào)控質(zhì)量評(píng)估系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)
SCATS提 供ITS接 口(ITS port) 服務(wù),應(yīng)用程序通過該接口可與SCATS的中央控制機(jī)(central manager)和區(qū)域控制機(jī)(region)交換數(shù)據(jù)。該接口的通信基于TCP/ IP協(xié)議。 ITS接口通信協(xié)議中有2種消息類型:請(qǐng)求和響應(yīng)。 ITS應(yīng)用程序發(fā)送請(qǐng)求信息給SCATS主機(jī), SCATS主機(jī)響應(yīng)請(qǐng)求,將數(shù)據(jù)發(fā)回給ITS應(yīng)用程序。 ITS接口提供了多種消息獲取格式,包括流量、飽和度、子系統(tǒng)、區(qū)域、部分控制、報(bào)警、狀態(tài)等。調(diào)控質(zhì)量評(píng)估系統(tǒng)主要需要獲取路口信息、操作用戶、日志信息。路口信息和用戶信息用于同步SCATS系統(tǒng)當(dāng)前管理的所有路口和操作人員情況,日志用于分析風(fēng)險(xiǎn)操作,產(chǎn)生相應(yīng)告警。
根據(jù)SCATS系統(tǒng)的運(yùn)營(yíng)經(jīng)驗(yàn),諸如鎖定路口信號(hào)機(jī)的周期、相位、綠信比等操作,以及路口在特殊情況下的關(guān)燈、黃閃等操作,實(shí)際上都會(huì)導(dǎo)致SCATS系統(tǒng)自適應(yīng)能力的降低,因此都屬于風(fēng)險(xiǎn)操作,需要作為可能的告警源加以識(shí)別和記錄。評(píng)估系統(tǒng)通過獲取到的SCATS系統(tǒng)運(yùn)行日志,識(shí)別的告警類型如表1所示。
調(diào)控質(zhì)量評(píng)估系統(tǒng)本身是個(gè)典型的二層C/S應(yīng)用,有一個(gè)服務(wù)端連接SCATS中央控制機(jī)獲取日志等信息,實(shí)時(shí)分析告警,并將產(chǎn)生的告警存放入數(shù)據(jù)庫(kù);數(shù)據(jù)庫(kù)采用流行的MySQL開源數(shù)據(jù)庫(kù);同時(shí)提供一個(gè)GUI界面的客戶端,用于監(jiān)控實(shí)時(shí)告警,查詢、統(tǒng)計(jì)歷史告警,查看、管理路口、操作用戶信息,產(chǎn)生日、周、月報(bào)表等。
服務(wù)端、數(shù)據(jù)庫(kù)、客戶端三個(gè)部分中,數(shù)據(jù)庫(kù)和服務(wù)端可分離部署,也可以部署在同一臺(tái)服務(wù)器硬件上,客戶端可安裝于交警部門各管理人員的辦公電腦上。軟件體系結(jié)構(gòu)如圖2所示。
(1)服務(wù)端具體功能:創(chuàng)建和管理和中央控制機(jī)的連接, License驗(yàn)證;定時(shí)同步路口信息、SCATS操作用戶信息到MySQL數(shù)據(jù)庫(kù)中(1天1次);實(shí)時(shí)讀取、解析SCATS日志信息,篩選有效日志,存入MySQL數(shù)據(jù)庫(kù);根據(jù)告警規(guī)則,分析有效日志,產(chǎn)生相關(guān)告警,并實(shí)時(shí)通知客戶端;由于管理用戶可以更改告警規(guī)則參數(shù),所以可以在得到客戶端通知后,實(shí)時(shí)刷新告警規(guī)則參數(shù)。
(2)數(shù)據(jù)庫(kù)表:用于存儲(chǔ)中間日志、路口和用戶信息(主要用于告警顯示時(shí)的字段關(guān)聯(lián))、告警產(chǎn)生規(guī)則、歷史告警等。
(3)客戶端功能:主要包括路口信息、SCATS用戶查詢、告警查詢、告警統(tǒng)計(jì)、告警規(guī)則管理等管理界面,以及登陸、日志、用戶管理(此處指評(píng)估系統(tǒng)自身的用戶)、幫助等輔助功能。
4.1ACE通信中間件
系統(tǒng)服務(wù)端采用C++實(shí)現(xiàn),為滿足高性能、高可靠的要求,應(yīng)用了成熟的C++網(wǎng)絡(luò)通訊庫(kù)ACE(Adaptive Communication Environment,自適配通信環(huán)境)是面向?qū)ο蟮目蚣芎凸ぞ甙?,它為通信軟件?shí)現(xiàn)了核心的并發(fā)和分布式模式。 ACE包含的多種組件可以幫助通信軟件的開發(fā)獲得更好的靈活性、效率、可靠性和可移植性。
服務(wù)端采用TCP方式和中央機(jī)以及客戶端通信,為滿足多線程并發(fā)的需要,采用ACE反應(yīng)器框架(Reactor)實(shí)現(xiàn)對(duì)連接以及線程的管理。實(shí)踐證明,在對(duì)1000個(gè)路口以上的超大型城市的SCATS系統(tǒng)監(jiān)控時(shí),也能完全滿足性能需求。
4.2告警分析算法
每種告警類型需要對(duì)應(yīng)一種告警分析算法,主要可分為三類:一類是根據(jù)日志中的特征值即可簡(jiǎn)單識(shí)別的告警,比如“關(guān)燈”、“黃閃”;第二類是需要分析日志中指令的具體參數(shù),比如長(zhǎng)久鎖定類的告警,這需要理解SCATS各指令參數(shù)含義并判斷參數(shù)是否超過閥值;第三類則需要在一定時(shí)間范圍持續(xù)監(jiān)控,并根據(jù)前后操作進(jìn)行關(guān)聯(lián)判斷,比如“連續(xù)操作多個(gè)路口”等。告警算法充分利用面向?qū)ο缶幊痰奶攸c(diǎn),易于添加和修改,便于后續(xù)擴(kuò)展。
為防止部分告警過于頻繁產(chǎn)生(由于SCATS系統(tǒng)本身缺陷,有時(shí)個(gè)別操作會(huì)導(dǎo)致記錄的日志出現(xiàn)異常重復(fù)),還需要加入防抖算法,即短時(shí)間內(nèi)的高頻同類告警屬于誤告。由于交警支隊(duì)對(duì)各個(gè)路口的重視程度不同,告警規(guī)則同時(shí)也支持針對(duì)不同路口設(shè)置不同的告警策略(包括是否啟用,各告警參數(shù)的門限閥值等)。
4.3告警和報(bào)表推送技術(shù)
為保證告警通知的實(shí)時(shí)性,以及提高管理的自動(dòng)化程度。系統(tǒng)支持告警短信實(shí)時(shí)推送(可按告警等級(jí)、用戶等條件定制)、以及各類報(bào)表自動(dòng)定時(shí)發(fā)送功能。由于公安內(nèi)網(wǎng)和互聯(lián)網(wǎng)之間的隔離限制,短信告警未使用短信網(wǎng)關(guān)方式,而采用第三方短信貓中間件實(shí)現(xiàn)。報(bào)表則采用郵件(SMTP協(xié)議)方式主動(dòng)推送給相關(guān)人員。
表1 SCATS調(diào)控質(zhì)量評(píng)估系統(tǒng)識(shí)別的告警類型
圖2 軟件體系結(jié)構(gòu)
本文介紹了SCATS調(diào)控質(zhì)量評(píng)估系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)方案,系統(tǒng)已在國(guó)內(nèi)特大型城市SCATS系統(tǒng)中上線運(yùn)行,交警支隊(duì)根據(jù)系統(tǒng)自動(dòng)生成的告警統(tǒng)計(jì)報(bào)告,及時(shí)反饋給下轄各大隊(duì)SCATS系統(tǒng)管理、操控人員,有效提升了SCATS系統(tǒng)操作人員的人工調(diào)控水平,提高了全市道路交通信號(hào)系統(tǒng)的運(yùn)營(yíng)效率。
[1]彭信林,王寧鳴,周劍鋒,王景成,徐文艷,SCATS數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J],計(jì)算機(jī)工程,2008(12):257
[2]SCATS6 ITS Interface 2.0 For SCATS 6.4.1, 2004