廖 創(chuàng),李富年,余興勝,閆俊鋒,林俊平
(1.武漢科技大學(xué) 信息科學(xué)與工程學(xué)院,湖北 武漢 430081;2.中鐵第四勘察設(shè)計(jì)院集團(tuán)有限公司,湖北 武漢 430063;3.華中科技大學(xué) 土木與水利工程學(xué)院,湖北 武漢 430074)
橋梁在建成后,長(zhǎng)期受到雨雪天氣、化學(xué)腐蝕氧化和來往車輛的重壓等影響,使橋梁發(fā)生結(jié)構(gòu)性的損傷,最終導(dǎo)致橋梁坍塌事故的發(fā)生,造成重大人員傷亡和財(cái)產(chǎn)損失,因此橋梁后期的管理與養(yǎng)護(hù)成為了橋梁?jiǎn)栴}的重中之重。傳統(tǒng)的橋梁管養(yǎng)是通過巡檢人員對(duì)橋梁時(shí)時(shí)刻刻的監(jiān)督,當(dāng)橋梁發(fā)生病害時(shí),巡檢人員向管養(yǎng)人員報(bào)告橋梁病害情況,橋梁管養(yǎng)人員針對(duì)橋梁出現(xiàn)的病害進(jìn)行分析,然后提出最優(yōu)的維修治理措施。這種方式會(huì)消耗大量的人力物力,而且有些發(fā)生的病害一般的管養(yǎng)人員水平有限還不知如何治理,此時(shí)就必須向有豐富經(jīng)驗(yàn)的橋梁管養(yǎng)專家咨詢請(qǐng)教,這將增加額外的管養(yǎng)成本,而且治理的最佳時(shí)間將會(huì)被耽擱,這種傳統(tǒng)的橋梁管養(yǎng)方法費(fèi)時(shí)費(fèi)力而且效果也不是很好。因此,設(shè)計(jì)一種具有智能決策橋梁病害功能的專家系統(tǒng)非常有必要。專家系統(tǒng)也被稱為基于某領(lǐng)域知識(shí)的智能計(jì)算機(jī)系統(tǒng),能夠?qū)⒃擃I(lǐng)域?qū)<曳e累多年的經(jīng)驗(yàn)和相應(yīng)的專業(yè)知識(shí)結(jié)合起來,從而求解一般只有該領(lǐng)域?qū)<也拍芙鉀Q的問題。
本系統(tǒng)采用的橋梁管養(yǎng)專家系統(tǒng)會(huì)依據(jù)相關(guān)橋梁管養(yǎng)規(guī)范和橋梁管養(yǎng)專家的有關(guān)經(jīng)驗(yàn)編寫橋梁病害管養(yǎng)措施,然后根據(jù)這些橋梁病害的管養(yǎng)措施建立專家系統(tǒng)知識(shí)庫(kù),從而形成具有智能管養(yǎng)決策的專家系統(tǒng)。之后當(dāng)橋梁再發(fā)生各種病害時(shí),管養(yǎng)人員只需將橋梁發(fā)生病害的情況進(jìn)行描述輸入專家系統(tǒng),專家系統(tǒng)會(huì)根據(jù)輸入的病害描述自發(fā)地進(jìn)行推理,最終提出最優(yōu)的橋梁病害養(yǎng)護(hù)、維修和治理措施。
贛江特大橋全長(zhǎng)超過2 km,位于贛江支流章江、貢江兩江匯合口下游,主橋結(jié)構(gòu)為塔梁分離形式,半漂浮系統(tǒng)。在橋梁建成后為了保證贛江橋的健康安全運(yùn)行,本系統(tǒng)裝配了較為完整的監(jiān)測(cè)系統(tǒng)對(duì)贛江橋進(jìn)行實(shí)時(shí)監(jiān)測(cè)和分析,為后期的橋梁管理與養(yǎng)護(hù)提供可靠支撐。贛江特大橋監(jiān)測(cè)主要包括大橋南昌側(cè)結(jié)構(gòu)、贛州側(cè)結(jié)構(gòu)、大橋橋面和大橋附屬結(jié)構(gòu)四部分,其中共計(jì)400多個(gè)各種各樣的傳感器,包含風(fēng)速風(fēng)向、溫濕度、GPS、應(yīng)變、撓度、加速度、索力、支座位移、軌道監(jiān)測(cè)等多種傳感器,其結(jié)構(gòu)如圖1所示。
圖1 監(jiān)測(cè)系統(tǒng)結(jié)構(gòu)圖
從監(jiān)測(cè)系統(tǒng)的結(jié)構(gòu)圖中可以清楚地了解到每個(gè)傳感器在橋梁上所處的位置,當(dāng)傳感器的數(shù)據(jù)發(fā)生異常時(shí),通過監(jiān)測(cè)系統(tǒng)能第一時(shí)間發(fā)現(xiàn)是橋梁上哪個(gè)位置的傳感器出現(xiàn)了問題,然后通過傳感器的異常數(shù)據(jù),管養(yǎng)系統(tǒng)能自動(dòng)化的給出管養(yǎng)建議和策略。這樣就確保了橋梁維護(hù)治理的實(shí)時(shí)性,為橋梁的健康安全提供高效的管理養(yǎng)護(hù)支撐。
專家系統(tǒng)也是一種計(jì)算機(jī)系統(tǒng),但是它與普通計(jì)算機(jī)系統(tǒng)的區(qū)別在于,它是一類具有某個(gè)領(lǐng)域?qū)iT知識(shí)和實(shí)踐經(jīng)驗(yàn)的計(jì)算機(jī)程序系統(tǒng)。當(dāng)遇到問題時(shí),系統(tǒng)會(huì)自發(fā)地查閱知識(shí)庫(kù)中的相關(guān)問題描述,對(duì)問題進(jìn)行有效的推理,最終解決一般只有領(lǐng)域?qū)<也拍芙鉀Q的復(fù)雜問題。專家系統(tǒng)結(jié)構(gòu)如圖2所示。
圖2 專家系統(tǒng)結(jié)構(gòu)圖
Jess是一種基于Java的專家系統(tǒng)外殼,它是由美國(guó)Sandia國(guó)家實(shí)驗(yàn)室在1995年以Java為核心技術(shù)開發(fā)出來的一個(gè)經(jīng)過擴(kuò)充的Clips版本。Jess除了繼承Clips移植性好、開發(fā)工具和硬件成本低等優(yōu)點(diǎn)外,還具有許多自己獨(dú)特的特征,例如Jess支持正向推理和逆向推理,能直接調(diào)用Java類庫(kù),Jess中還有為實(shí)現(xiàn)與Java間的數(shù)據(jù)交互而開發(fā)的接口來完成Java對(duì)Jess的集成調(diào)用。Jess的這些優(yōu)點(diǎn)和特征使專家系統(tǒng)與Java相結(jié)合,使其能夠非常方便地運(yùn)用在不同系統(tǒng)中。Jess核心由事實(shí)庫(kù)、規(guī)則庫(kù)和推理機(jī)三部分組成,其中規(guī)則庫(kù)與事實(shí)庫(kù)共同構(gòu)成知識(shí)庫(kù),如圖3所示。
圖3 Jess結(jié)構(gòu)圖
Jess高效的前向和逆向推理是通過Rete算法實(shí)現(xiàn)的,Rete匹配算法是一個(gè)解決復(fù)雜多對(duì)多問題的有效求解機(jī)制,該算法是由卡內(nèi)基梅隆大學(xué)的Charles L.Forgy在1974年提出的。常見的專家系統(tǒng)都有結(jié)構(gòu)相似性和時(shí)間冗余性的特點(diǎn),Rete匹配算法有著高效推理能力的原因就是采用Rete算法的專家系統(tǒng)在進(jìn)行事實(shí)斷言時(shí)利用了這兩個(gè)特點(diǎn)來減少匹配的操作次數(shù),以達(dá)到高效的推理目的。即當(dāng)事實(shí)集合中的數(shù)據(jù)發(fā)生變化時(shí),系統(tǒng)會(huì)對(duì)其進(jìn)行有效匹配,經(jīng)過匹配后的狀態(tài)結(jié)果都被保存在節(jié)點(diǎn)中,在事實(shí)集合下一次再發(fā)生數(shù)據(jù)變化時(shí),由于絕大多數(shù)的狀態(tài)結(jié)果都沒有變化,變化的只有小部分,這時(shí)Rete算法通過在節(jié)點(diǎn)中保存之前操作匹配過程中的狀態(tài)而避免了大量的重復(fù)計(jì)算,以達(dá)到高效的推理匹配。但是由于保存操作匹配過程中的狀態(tài)結(jié)果需要占用大量的內(nèi)存,所以這種匹配算法是以犧牲內(nèi)存空間換取執(zhí)行時(shí)間的算法,它將消耗更多的內(nèi)存,故開發(fā)時(shí)應(yīng)當(dāng)考慮性能與內(nèi)存的取舍問題。
本系統(tǒng)的事實(shí)庫(kù)即為橋梁病害類別、橋梁病害位置和橋梁病害描述等一條條事實(shí)的集合。建立管養(yǎng)專家系統(tǒng)的事實(shí)庫(kù)也就是建立一個(gè)存儲(chǔ)器,用來存放工作人員在橋梁現(xiàn)場(chǎng)巡檢記錄下來的橋梁出現(xiàn)的橋梁病害類別、橋梁病害發(fā)生位置和橋梁病害描述。又因不同類型的橋梁病害對(duì)應(yīng)的橋梁病害描述情況也不同,每一種病害的描述都有其不同的參數(shù)個(gè)數(shù)。例如,在橋梁出現(xiàn)滲漏水病害時(shí),病害描述有滲漏發(fā)生位置、出現(xiàn)的滲漏現(xiàn)象和滲漏的范圍3個(gè)參數(shù);當(dāng)橋梁出現(xiàn)裂縫病害時(shí),病害描述有裂縫發(fā)生位置、裂縫長(zhǎng)度、裂縫寬度、裂縫深度、裂縫發(fā)展方向和裂縫開裂狀態(tài)6個(gè)參數(shù);當(dāng)橋梁出現(xiàn)劣化剝落病害時(shí),病害描述有劣化現(xiàn)象、露筋情況、劣化半徑、劣化深度和強(qiáng)度降低比5個(gè)參數(shù)。本系統(tǒng)為了滿足適配每一種病害類型對(duì)應(yīng)不同個(gè)數(shù)參數(shù)的病害描述情況,建立了如圖4所示的工作存儲(chǔ)器。分別為單字符串型屬性槽、單字符串型屬性槽和多字符串型屬性槽。
圖4 工作存儲(chǔ)器圖
橋梁巡檢人員記錄的橋梁病害類別和橋梁病害發(fā)生位置存儲(chǔ)在圖4中的前兩個(gè)單字符串型屬性槽中,而對(duì)于病害的多個(gè)描述類參數(shù)則存儲(chǔ)在多字符串型屬性槽中。這樣圖4所示的工作存儲(chǔ)器適配所有橋梁出現(xiàn)的病害情況。
管養(yǎng)專家系統(tǒng)規(guī)則庫(kù)的建立,需要參考當(dāng)前的橋梁管養(yǎng)標(biāo)準(zhǔn)規(guī)范并向有豐富經(jīng)驗(yàn)的橋梁管養(yǎng)專家進(jìn)行咨詢,將橋梁可能出現(xiàn)的病害以及每條病害應(yīng)采取的管理養(yǎng)護(hù)治理措施歸納整理,然后使用Jess專家系統(tǒng)開發(fā)語(yǔ)言,將其轉(zhuǎn)換為橋梁病害情況對(duì)應(yīng)橋梁維修治理措施的clp文件。本文建立的橋梁管養(yǎng)規(guī)則庫(kù)參考了如表1所示的橋梁管養(yǎng)規(guī)范標(biāo)準(zhǔn)。
表1 橋梁管養(yǎng)規(guī)范標(biāo)準(zhǔn)
管養(yǎng)專家系統(tǒng)的規(guī)則庫(kù)就是由許多個(gè)clp文件共同組成的。本系統(tǒng)中將這些clp文件存儲(chǔ)在MySQL數(shù)據(jù)庫(kù)中,當(dāng)專家系統(tǒng)根據(jù)橋梁病害進(jìn)行推理時(shí),系統(tǒng)會(huì)通過jdbc連接到數(shù)據(jù)庫(kù),然后從數(shù)據(jù)庫(kù)中取出相應(yīng)的clp文件進(jìn)行橋梁管養(yǎng)推理。為了提高系統(tǒng)的推理效率,系統(tǒng)將規(guī)則庫(kù)中的橋梁病害情況描述與橋梁病害管養(yǎng)措施分別存在兩個(gè)不同的表中,并且用具有唯一標(biāo)識(shí)符的主鍵ID表示規(guī)則庫(kù)中的橋梁病害管養(yǎng)措施,當(dāng)系統(tǒng)根據(jù)規(guī)則庫(kù)中的橋梁治理規(guī)則推理出橋梁病害管養(yǎng)措施的ID編碼后,系統(tǒng)將根據(jù)ID找到相對(duì)應(yīng)的橋梁管養(yǎng)措施,從而完成橋梁病害管養(yǎng)的推理。以下代碼為橋梁橋面上發(fā)生滲漏水病害時(shí)的clp文件規(guī)則模板代碼。
(defrule example
(template(type?tp&:(eq?tp″water leakage″))
//病害類別為滲漏水
(template(location?loc&:(eq?loc″deck″))//病害位置為橋面
(template(num_des?nd&:(and(menber&>/=drip leakage$?nd) //病害1為出現(xiàn)滴漏
(menber&>/=wet stains$?nd) //病害2為出現(xiàn)濕漬
))))
=>
(add(new result”...”))) //管養(yǎng)措施
為保證橋梁的安全運(yùn)行單靠視頻監(jiān)測(cè)遠(yuǎn)遠(yuǎn)不夠,本系統(tǒng)采取視頻監(jiān)控與實(shí)地考察相結(jié)合的方式為橋梁的安全運(yùn)行保駕護(hù)航。橋梁管養(yǎng)工作人員會(huì)根據(jù)橋梁的實(shí)際情況定期制定橋梁的現(xiàn)場(chǎng)巡檢計(jì)劃,巡檢計(jì)劃中包括參與現(xiàn)場(chǎng)巡檢的人員、巡檢時(shí)間以及巡檢的類型等。橋梁巡檢計(jì)劃如圖5所示。
圖5 橋梁巡檢計(jì)劃圖
例如,當(dāng)通過傳感器數(shù)據(jù)發(fā)現(xiàn)橋梁可能出現(xiàn)異常情況時(shí),工作人員會(huì)立即制定橋梁的現(xiàn)場(chǎng)巡檢計(jì)劃,然后安排工作人員進(jìn)行現(xiàn)場(chǎng)巡檢,將橋梁現(xiàn)場(chǎng)的情況進(jìn)行記錄保存,以保證橋梁管養(yǎng)的及時(shí)性。
當(dāng)巡檢人員對(duì)橋梁進(jìn)行現(xiàn)場(chǎng)巡檢后,會(huì)根據(jù)橋梁的實(shí)際巡檢情況進(jìn)行巡檢結(jié)果錄入,巡檢結(jié)果錄入中包括進(jìn)行現(xiàn)場(chǎng)巡檢的人員、巡檢時(shí)間、巡檢項(xiàng)和巡檢出現(xiàn)的病害等。巡檢結(jié)果錄入如圖6所示。
圖6 橋梁巡檢結(jié)果圖
針對(duì)橋梁出現(xiàn)的病害,對(duì)病害類別進(jìn)行初步的判斷,然后進(jìn)入橋梁管養(yǎng)功能模塊界面,根據(jù)病害描述進(jìn)行有效的推理,提出最優(yōu)的橋梁管理養(yǎng)護(hù)建議。
在橋梁發(fā)生病害后,智能管養(yǎng)專家系統(tǒng)功能模塊會(huì)根據(jù)系統(tǒng)監(jiān)測(cè)到的橋梁數(shù)據(jù)和巡檢人員進(jìn)行現(xiàn)場(chǎng)巡檢得到的橋梁病害結(jié)果進(jìn)行推理匹配,然后給出最優(yōu)的橋梁管養(yǎng)建議。橋梁管養(yǎng)功能界面分為四部分,分別為橋梁病害類別區(qū)、橋梁病害位置區(qū)、橋梁病害描述區(qū)和橋梁病害維修措施區(qū)。當(dāng)橋梁出現(xiàn)病害時(shí),用戶首先在病害類別區(qū)選擇橋梁發(fā)生病害的類別,然后在病害位置區(qū)選擇該病害發(fā)生的位置,接著在病害描述區(qū)對(duì)病害描述進(jìn)行選擇,最后點(diǎn)擊最右側(cè)的診斷按鈕,此時(shí)專家系統(tǒng)會(huì)根據(jù)用戶輸入的橋梁病害類別、病害發(fā)生位置和病害情況描述進(jìn)行推理匹配,推理得到的結(jié)果會(huì)在病害維修措施區(qū)中顯示出來,如圖7所示。
圖7 管養(yǎng)功能界面圖
橋梁管養(yǎng)人員根據(jù)管養(yǎng)專家系統(tǒng)推理得到的結(jié)果對(duì)橋梁進(jìn)行管理與養(yǎng)護(hù),以到達(dá)消除橋梁病害的目的。
在橋梁建成后,為了保證橋梁的安全與長(zhǎng)期的穩(wěn)定,本文設(shè)計(jì)了一種智能計(jì)算機(jī)系統(tǒng)即專家系統(tǒng),通過參考橋梁管養(yǎng)手冊(cè)以及咨詢經(jīng)驗(yàn)豐富的橋梁管養(yǎng)專家,將橋梁可能發(fā)生的各種病害情況以及解決措施編寫成一條條規(guī)則存入數(shù)據(jù)庫(kù),當(dāng)橋梁發(fā)生病害時(shí),用戶只需根據(jù)橋梁出現(xiàn)的病害對(duì)病害類別、病害發(fā)生位置和病害情況進(jìn)行分析判斷,然后輸入計(jì)算機(jī)系統(tǒng),系統(tǒng)會(huì)自動(dòng)根據(jù)用戶輸入的信息進(jìn)行推理,最終給出最優(yōu)的橋梁病害解決措施。本系統(tǒng)的橋梁管養(yǎng)決策專家系統(tǒng)模塊已投入實(shí)際運(yùn)用,運(yùn)行效果良好,能在橋梁發(fā)生病害時(shí)及時(shí)提出合理的橋梁維修治理措施,為橋梁結(jié)構(gòu)的長(zhǎng)期穩(wěn)定運(yùn)行提供了有效的支撐。