于秀麗 王旭坪
摘要:文章采用蟻群算法對神經(jīng)網(wǎng)絡(luò)的參數(shù)加以優(yōu)化,提出了一種基于蟻群神經(jīng)網(wǎng)絡(luò)的特征參數(shù)融合模型。從理論分析的角度給出了優(yōu)化的蟻群神經(jīng)網(wǎng)絡(luò)所體現(xiàn)的優(yōu)勢和特點(diǎn),識(shí)別化工園區(qū)泄漏隱患,有效提高化工裝置管道的泄漏識(shí)別的預(yù)測精度,為園區(qū)科學(xué)管理提供技術(shù)支撐。
關(guān)鍵詞:蟻群神經(jīng)網(wǎng)絡(luò);泄漏特征;融合算法
一、 前言
為提高園區(qū)化工園區(qū)管道泄漏識(shí)別的檢測精度,針對傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)網(wǎng)絡(luò)收斂速度慢,管道泄漏識(shí)別誤差偏大的缺點(diǎn),本文結(jié)合管道泄漏監(jiān)測的具體需求,建立化工園區(qū)管道泄漏特征參數(shù)的蟻群神經(jīng)網(wǎng)絡(luò)融合算法,提出基于蟻群算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò),進(jìn)行其結(jié)構(gòu)以及參數(shù)的優(yōu)化,從理論分析的角度給出了優(yōu)化的蟻群神經(jīng)網(wǎng)絡(luò)所體現(xiàn)的優(yōu)勢和特點(diǎn),識(shí)別化工園區(qū)泄漏隱患,有效提高化工園區(qū)管道泄漏的識(shí)別預(yù)測精度,為園區(qū)科學(xué)管理提供技術(shù)支撐。
二、 泄漏事故情景構(gòu)建
對于化工裝置管道泄漏監(jiān)測報(bào)警系統(tǒng)而言,利用管道瞬態(tài)模型,根據(jù)管道的實(shí)際情況,檢測泄漏對化工園區(qū)管道運(yùn)行參數(shù)造成的影響,采用壓力定位、流量報(bào)警,以及壓力、流量綜合分析的方法進(jìn)行報(bào)警,確定管道是否發(fā)生泄漏情況。鑒于管道各進(jìn)、出站都安裝有流量計(jì)的情況,綜合運(yùn)用流量平衡法判斷管道泄漏與否,當(dāng)管道發(fā)生泄漏時(shí),泄露處壓力突然下降,可以利用瞬時(shí)流量來判斷管道是否泄漏。如果管道正常,管道上(下)游端壓力和流量同時(shí)上升或下降;如果管道發(fā)生泄漏情況,由于管道內(nèi)外的壓差,使得泄漏處的壓力突然下降,管道瞬時(shí)流量下降。結(jié)合壓力和流量的變化特征,可以判斷管道泄漏是否發(fā)生。
構(gòu)建化工裝置管道泄漏事故情景結(jié)構(gòu)圖,如圖1所示,該情景結(jié)構(gòu)圖包括情景、后果和任務(wù)三部分組成。
提取出泄漏特征參數(shù)以后,進(jìn)一步綜合分析、處理這些泄漏特征參數(shù),判斷管道是否發(fā)生泄漏以及泄漏的等級,如果在一定的時(shí)間內(nèi)泄漏量超出了門檻值,將產(chǎn)生泄漏報(bào)警,給出四個(gè)級別:級別1(無泄漏),計(jì)算結(jié)果是小于門檻值;級別2(可能泄漏),計(jì)算結(jié)果超過門檻值,發(fā)出“可能的泄漏”警告;級別3(泄漏預(yù)警),泄漏計(jì)算結(jié)果已經(jīng)超過門檻值一段時(shí)間或大于1倍~3倍門檻值,發(fā)出“泄漏預(yù)警”警告;級別4(泄漏報(bào)警),泄漏計(jì)算結(jié)果已經(jīng)超過門檻值,從級別3起已經(jīng)持續(xù)一個(gè)確定的時(shí)間,發(fā)出“泄漏報(bào)警”信號(hào)。
三、 BP神經(jīng)網(wǎng)絡(luò)和蟻群算法原理
1. BP神經(jīng)網(wǎng)絡(luò)。目前最廣泛使用的定義是Kohonen于1988年提出的,神經(jīng)網(wǎng)絡(luò)是由具有適應(yīng)性的簡單單元組成的廣泛并行互連的網(wǎng)絡(luò),它的組織可以模擬生物神經(jīng)系統(tǒng)與現(xiàn)實(shí)世界物體的交互反應(yīng)。神經(jīng)元是以生物研究及大腦的響應(yīng)機(jī)制而建立的拓?fù)浣Y(jié)構(gòu)網(wǎng)絡(luò),模擬神經(jīng)沖突的過程,多個(gè)樹突的末端接受外部信號(hào),并傳輸給神經(jīng)元處理融合,最后通過軸突將神經(jīng)傳給其它神經(jīng)元或者效應(yīng)器。神經(jīng)元的拓?fù)浣Y(jié)構(gòu)如圖2所示,這個(gè)模型中,每個(gè)神經(jīng)元都接受來自其它神經(jīng)元的輸入信號(hào),每個(gè)信號(hào)都通過一個(gè)帶有權(quán)重的連接傳遞,神經(jīng)元把這些信號(hào)加起來得到一個(gè)總輸入值,然后將總輸入值與神經(jīng)元的閾值進(jìn)行對比(模擬閾值電位),然后通過一個(gè)“激活函數(shù)”處理得到最終的輸出(模擬細(xì)胞的激活),這個(gè)輸出又會(huì)作為之后神經(jīng)元的輸入一層一層傳遞下去。
θi表示該神經(jīng)元的閾值,根據(jù)生物學(xué)中的知識(shí),只有當(dāng)神經(jīng)元接收到的信息達(dá)到閾值是才會(huì)被激活。因此,我們將Netin和θj進(jìn)行比較,然后通過激活函數(shù)處理以產(chǎn)生神經(jīng)元的輸出。如果輸出值有一定的范圍約束,比如用來分類,一般使用的激活函數(shù)是Sigmod函數(shù),它可以把輸入從負(fù)無窮大到正無窮大的信號(hào)變換成0到1之間輸出。如果沒有約束的話,可以使用線性激活函數(shù)(即權(quán)值相乘之和),得到的輸出為:
yj=f(Netin-θj)
將公式化簡一下,設(shè)第一個(gè)輸入永遠(yuǎn)值為θ,權(quán)值為-1,可以得到公式:
其中w0=-1,x0=θj,其中f為選擇的激活函數(shù)。
在BP神經(jīng)網(wǎng)絡(luò)中,單個(gè)樣本有m個(gè)輸入,有n個(gè)輸出,在輸入層和輸出層之間通常還有隱含層,即這三層分別是輸入層(I),隱含層(H),輸出層(O)。如圖3所示。
關(guān)于隱藏層的選擇,在BP神經(jīng)網(wǎng)路中,輸入層和輸出層的節(jié)點(diǎn)數(shù)目都是固定的,關(guān)鍵的就是在于隱藏層數(shù)目的選擇,隱藏層數(shù)目的選擇決定了神經(jīng)網(wǎng)絡(luò)工作的效果。一般而言,有一個(gè)關(guān)于隱藏層數(shù)目的經(jīng)驗(yàn)公式。其中h為隱含層節(jié)點(diǎn)數(shù)目,m為輸入層節(jié)點(diǎn)數(shù)目,n為輸出層節(jié)點(diǎn)數(shù)目,α為1~10之間的調(diào)節(jié)常數(shù)。
作為應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一,BP神經(jīng)網(wǎng)絡(luò)理論不斷地得到完善和發(fā)展,研究學(xué)者運(yùn)用該神經(jīng)網(wǎng)絡(luò)解決了不少實(shí)際應(yīng)用問題。但BP神經(jīng)網(wǎng)絡(luò)在廣泛使用的過程中也暴露出了如下的一些不足:
(1)存在局部極小問題;
(2)學(xué)習(xí)收斂速度慢,且收斂速度與初始權(quán)值的選擇有關(guān);
(3)BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì),即隱藏層和接點(diǎn)數(shù)的選擇至今尚無統(tǒng)一而完整的理論指導(dǎo),一般由經(jīng)驗(yàn)選定;
(4)新加入的樣本會(huì)影響已經(jīng)學(xué)習(xí)成功的網(wǎng)絡(luò)。針對標(biāo)準(zhǔn)BP算法收斂速度慢、容易陷入局部極小值的問題,利用附加動(dòng)量項(xiàng)來加以改進(jìn)算法,常規(guī)BP算法的權(quán)值修正量為:Δωji(n)=ηδj(n)yj(n)。在BP算法中,步長η的選擇很重要,η大則收斂快,但是過大則可能引起不穩(wěn)定(η最大不能超過■,λmax為輸入向量x的自相關(guān)陣的最大特征值)。η小可避免振蕩,但收斂速度變慢,解決這一矛盾的最簡單方法就是加入“動(dòng)量項(xiàng)”,即令:Δωji(n)=ηδj(n)yj(n) +αΔωji(n-1),0<α<1。
與標(biāo)準(zhǔn)的最速下降BP法相比,更新權(quán)值時(shí),上式多了一個(gè)因式αΔωji(n-1),稱為動(dòng)量項(xiàng),其通過在權(quán)值更新中引入穩(wěn)定性來提高標(biāo)準(zhǔn)反向傳播的速度;α稱為遺忘因子,通常在0,1之間取值。它表示,本次權(quán)值的更新方向和幅度不僅與本次計(jì)算的梯度有關(guān),還與上次更新有關(guān)。加入這一因式使權(quán)值更新具有一定的慣性,并且具有了一定的抗震蕩能力,加快了收斂速度。其作用分析如下:
當(dāng)順序加入訓(xùn)練樣本時(shí),公式可寫成以t為變量的時(shí)間序列,因此上式可看做是Δωji的一階差分方程,對Δωji(n)求解,可得:
標(biāo)準(zhǔn)的最速下降法采用固定大小的學(xué)習(xí)率,無法根據(jù)情況調(diào)整學(xué)習(xí)率的值。在動(dòng)量BP法中,更容易找到最小值點(diǎn),而不會(huì)陷入來回振蕩。
2. 蟻群算法原理。1992年,意大利學(xué)者Dorigo.M,Maniezzo V,Colorni A首先提出蟻群算法,簡稱ACO(Ant Colony Optimization)。蟻群算法ACO是一種新型的模擬進(jìn)化算法,該算法是由螞蟻覓食得到啟發(fā)而來的,采用蟻群在搜索食物源的過程中所體現(xiàn)出來的尋有能力來解決一些離散系統(tǒng)優(yōu)化中的困難問題。應(yīng)經(jīng)用該方法求解了旅行商問題(TSP問題)、指派問題和調(diào)度問題等,取得了一系列較好的實(shí)驗(yàn)結(jié)果。
螞蟻這類群居昆蟲,雖然單個(gè)螞蟻的行為非常簡單,但是由單個(gè)螞蟻組成的螞蟻群體的行為卻非常復(fù)雜,這個(gè)群體可以完成復(fù)雜的任務(wù)。究其原因是因?yàn)槲浵亗€(gè)體通過一種叫做信息素的物質(zhì)傳遞信息,螞蟻移動(dòng)時(shí),可以把信息素留在自己經(jīng)過的路徑上,這樣它們就可以感知到這種物質(zhì)的存在,同時(shí)感受到該物質(zhì)的強(qiáng)度并朝著物質(zhì)強(qiáng)度高的方向移動(dòng),從而指導(dǎo)它們的運(yùn)動(dòng)方向。如果螞蟻群體在運(yùn)動(dòng)方向遇到障礙,由于螞蟻群體是均勻分布的,所以剛開始無論路徑的長短如何,螞蟻總是按照相同的概率選擇各種路徑。由于螞蟻能夠在運(yùn)動(dòng)路徑上留下信息素,信息素濃度越高,螞蟻就會(huì)越多,相同的時(shí)間內(nèi)較短路徑中螞蟻群體留下的信息素濃度較高。
因此,隨后螞蟻選擇較短路徑的概率也會(huì)隨之增加,導(dǎo)致選擇較長路徑的螞蟻越來越少,從而逐漸消失。通過這種信息素的交流,最終蟻群個(gè)體之間選擇了尋找食物的最佳途徑,這就是蟻群算法的生物學(xué)背景和基本原理,它用一個(gè)形象化的圖示描述如下。如圖4-a所示,假定螞蟻從巢穴越過障礙物到達(dá)食物源有兩條道路可走,各點(diǎn)之間的距離,如圖4-a中的d所示。假定螞蟻繞過障礙物周圍的兩條道路分別為:巢穴—ABC—食物和巢穴—ADC—食物,設(shè)每個(gè)單位時(shí)間有30只螞蟻從巢穴點(diǎn)到達(dá)A點(diǎn),有30只螞蟻從食物點(diǎn)到達(dá)C點(diǎn),螞蟻過后留下的信息素為1。由于路徑CB,CD,AB、AD在初始時(shí)刻均無信息素,位于A點(diǎn)和C點(diǎn)的螞蟻以相同的概率隨機(jī)選擇路徑CB,CD,AB、AD,如圖4-b所示,即每條路徑上分布15只螞蟻。經(jīng)過一個(gè)時(shí)間單位后,在路徑CDA上的信息量會(huì)是路徑CBA上信息量的兩倍。如圖4-c所示,隨著時(shí)間推移,在信息素的指導(dǎo)下,螞蟻群體選擇路徑CDA的概率會(huì)越來越大,最終所有螞蟻都會(huì)放棄路徑CBA,完全選擇路徑CDA,最終找到從巢穴搜索到食物的最優(yōu)路徑。
蟻群算法屬于隨機(jī)搜索算法的一種,眾多研究已經(jīng)表明,蟻群算法具有很強(qiáng)尋優(yōu)能力,因?yàn)槔谜答佋?,該算法在一定程度上可以加快尋?yōu)的過程,蟻群算法具有以下優(yōu)點(diǎn):(1)具有很強(qiáng)的魯棒性:只要對基本蟻群算法的模型稍加修改,便可以應(yīng)用于其他問題;(2)并行性和全局收斂性:該算法是一種基于種群的進(jìn)化算法,不同個(gè)體之間可以進(jìn)行信息交互和相互協(xié)作,易于并行實(shí)現(xiàn);(3)易于同其他啟發(fā)式算法結(jié)合:蟻群算法很容易與多種智能算法結(jié)合,通過組合優(yōu)化提高算法的性能。
四、 泄漏特征的蟻群神經(jīng)網(wǎng)絡(luò)融合模型
對于BP神經(jīng)網(wǎng)絡(luò)而言,其學(xué)習(xí)方法可以很好的調(diào)整系統(tǒng)參數(shù),訓(xùn)練一個(gè)BP神經(jīng)網(wǎng)絡(luò),實(shí)際上就是調(diào)整網(wǎng)絡(luò)的權(quán)重和偏置這兩個(gè)參數(shù),參數(shù)的調(diào)整速度依賴于初始階段狀態(tài)選擇,這可能會(huì)減慢收斂速度并影響收斂結(jié)果。蟻群算法是一種隨機(jī)搜索的全局優(yōu)化算法,通過選擇合理的蟻群模型參數(shù),進(jìn)行網(wǎng)絡(luò)的有效訓(xùn)練,使網(wǎng)絡(luò)盡快收斂,同時(shí)避免陷入局部最優(yōu)解,大大提高了網(wǎng)絡(luò)的魯棒性和自學(xué)能力。
將蟻群算法與神經(jīng)網(wǎng)絡(luò)算法融合的基本思想是假定神經(jīng)網(wǎng)絡(luò)中有m個(gè)參數(shù)將被優(yōu)化,包括所有權(quán)值和閾值。首先,將這些參數(shù)排序形成一個(gè)集合Is,然后將螞蟻的數(shù)量定義為k,這些螞蟻從巢穴出發(fā)去搜索食物,蟻群中的每只螞蟻根據(jù)集合Is中每個(gè)元素的信息素狀態(tài)從集合中隨機(jī)選擇一個(gè)參數(shù)出發(fā),不同螞蟻選擇的元素彼此獨(dú)立,當(dāng)螞蟻選擇完集合中所有元素后,它們到達(dá)食物源并按照原始路徑返回巢穴,依照蟻群算法根據(jù)信息素調(diào)節(jié)規(guī)則調(diào)節(jié)集合中所選元素的信息素,重復(fù)正反饋過程,當(dāng)所有的螞蟻收斂到相同的路徑時(shí),就意味著找到網(wǎng)絡(luò)參數(shù)的最優(yōu)權(quán)值,搜索結(jié)束。蟻群神經(jīng)網(wǎng)絡(luò)融合算法具體步驟如下:(1)設(shè)置初始條件:在螞蟻搜索的初始時(shí)間t=0時(shí),將所有螞蟻都放在巢穴中。最大迭代次數(shù)設(shè)置為Nmax,每個(gè)集合中的每個(gè)元素的信息素濃度初始化為常量;(2)遍歷,啟動(dòng)螞蟻,每只螞蟻從集合Is開始,集合Is中的元素選擇依次按照路徑選擇規(guī)則進(jìn)行;(3)信息素更新,重復(fù)步驟(2),直到滿足最大迭代次數(shù)或找到最佳權(quán)值;(4)網(wǎng)絡(luò)的二次學(xué)習(xí)訓(xùn)練,用蟻群算法得到的最優(yōu)解作為BP神經(jīng)網(wǎng)絡(luò)參數(shù)訓(xùn)練樣本的初始權(quán)值,對網(wǎng)絡(luò)進(jìn)行二次訓(xùn)練,直至滿足誤差要求。
利用蟻群算法為一般的BP神經(jīng)網(wǎng)絡(luò)的初始權(quán)值和閾值尋優(yōu),經(jīng)過合理選取蟻群模型參數(shù),利用最佳的權(quán)值和閾值組合來優(yōu)化BP神經(jīng)網(wǎng)絡(luò)性能,改進(jìn)的網(wǎng)絡(luò)可以利用蟻群算法優(yōu)越的全局尋優(yōu)特性加快算法收斂速度,其泄漏識(shí)別精度也高于傳統(tǒng)神經(jīng)網(wǎng)絡(luò)優(yōu)化算法,克服BP神經(jīng)網(wǎng)絡(luò)的常常不穩(wěn)定、易發(fā)生震蕩、易于陷入局部最優(yōu)值等缺陷。
參考文獻(xiàn):
[1] 王全國,湯銀才,管強(qiáng).石化裝置氣體泄漏頻率的貝葉斯分析[J].數(shù)理統(tǒng)計(jì)與管理,2016,35(4):594-602.
[2] 呂紅芳,顧幸生.基于蟻群神經(jīng)網(wǎng)絡(luò)的兩級信息融合算法[J].上海交通大學(xué)學(xué)報(bào),2016,50(8).
[3] 程加堂,艾莉,熊偉.基于蟻群神經(jīng)網(wǎng)絡(luò)的滾動(dòng)軸承故障診斷[J].軸承,2012,(2):34-36.
[4] 黃博,師奕兵,張偉,等.基于蟻群神經(jīng)網(wǎng)絡(luò)的油氣套管裂縫缺陷檢測[J].測控技術(shù),2011,30(3):98-102.
[5] 章曉英.基于蟻群算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的數(shù)控機(jī)床熱誤差補(bǔ)償[J].組合機(jī)床與自動(dòng)化加工技術(shù), 2013,(10):50-53.