賈 瑩 高丙坤
(東北石油大學電氣信息工程學院,黑龍江 大慶 163318)
管道運輸業作為與鐵路、公路、航空、水運并駕齊驅的五大運輸行業,在輸送氣體、液體時具有天然優勢,它具有連續平穩、安全性好、運輸量大、質量易保證、物料損失少、占地少及運費低等特點。但統計資料表明,目前世界上總管網的50%已經用了30年甚至更久,由于老化、腐蝕、地形沉降及人為破壞等因素導致管道泄漏事故時有發生,此問題任何國家都必須面對,而且會日趨嚴重。因此,做好對管道的泄漏檢測就顯得至關重要[1]。
目前,管道泄漏檢測方法眾多,但總體而言可分為兩類,即基于硬件的泄漏檢測方法和基于軟件的泄漏檢測方法。常用的基于硬件的泄漏檢測方法有人工巡檢法、氣體法、智能清管器法及光纖檢漏法等[2]。人工巡檢法對于較大的泄漏不會誤報,但靈敏度太低,對于如海底、沙漠及沼澤等更加難以檢測。氣體檢測設備通常需要搭載在運輸工具上,沿管線邊移動邊檢測,其檢測響應時間通常是氣體揮發出來后的幾小時或者數天。智能清管器法的設備比較昂貴,檢測費用也比較高,目前常用的是超聲波檢測法和漏磁通檢測法。而光纖檢漏法的優點是能檢出微小的泄漏,缺點是材料成本高、連續使用性差,對于己建設好的管道系統要重新鋪設電纜或光纖。常用的基于軟件的泄漏檢測方法有質量或體積平衡法、聲波檢測法、負壓波法、模型法及神經網絡法等[2]。負壓波法是當今管道檢測主流方法之一,對突發性的較大泄漏能快速檢測定位,但對于小泄漏和緩慢泄漏容易出現誤報或漏報。
由于影響管道的因素非常多,很難建立一個準確的數學模型進行泄漏檢測分析,而神經網絡模型能夠識別管道泄漏信號和正常信號,具有較強的適應學習能力,能夠自動更新網絡參數,適應不同的管道系統,從而準確及時地進行管道泄漏檢測報警[3]。同時,利用遺傳算法對神經網絡進行優化,能改進BP神經網絡算法收斂速度慢、易陷入誤差函數的局部極小點的缺點,進一步提高檢測的可靠性,減小誤差、減少漏報和誤報的發生。筆者利用遺傳算法優化的BP神經網絡對壓力傳感器采集到的信號進行識別,并與單純的BP神經網絡監測結果進行對比,同時在Matlab環境下進行有效性仿真研究。

圖1所示為只有一個隱含層的結構,圖1中左側為輸入層,有n個節點,對應的輸入向量X=(x1,x2,…,xn)T;中間為隱含層,有q個節點,對應隱含層的輸出向量Z=(z1,z2,…,zq)T;右側是輸出層,有m個節點,對應輸出向量Y=(y1,y2,…,ym)T。令輸入層任一節點xi到隱含層任一節點zj之間的連接權值為vij;隱含層節點zj到輸出層節點yk之間的連接權值為wjk,θj為網絡隱含層第j個神經元的閾值,γk為網絡輸出層第k個神經元的閾值,其中i=1,2,…,n,j=1,2,…,q,k=1,2,…,m。

圖1 只有一個隱含層的BP神經網絡結構
對于每一個樣本p的二次型誤差準則函數為Ep[6]:
(1)
系統對P個訓練樣本的總誤差準則函數為:
(2)
遺傳算法(Genetic Algorithm,GA)是基于Darwin的進化論和Mendel的遺傳學說提出的。它的遺傳算法的基本思想是從代表問題可能潛在解集的一個種群開始的[7],而一個種群則由經過基因編碼的一定數目的個體組成,每個個體實際上是染色體帶有特征的實體,染色體作為遺傳物質的主要載體,即多個基因的集合,其內部表現(即基因型)是某種基因組合,它決定了個體形狀的外部表現。因此,在一開始需要實現從表現型到基因型的映射即編碼工作。由于仿照基因編碼的工作很復雜,往往進行簡化,如二進制編碼。初代種群產生之后,按照適者生存和優勝劣汰的準則,逐代演化產生出越來越好的近似解。在每一代,根據問題域中個體的適應度大小挑選個體,并借助于自然遺傳學的遺傳算子進行組合交叉和變異,產生出代表新的解集的種群。這個過程將導致種群像自然進化一樣的后生代種群比前代更加適應于環境,末代種群中的最優個體經過解碼可以作為問題近似最優解。
基本遺傳算法(Single Genectic Algorthmi,SGA)使用選擇、交叉和變異3個算子,基本遺傳算法可定義為一個8元組[7]:
SGA=(D,F,Po,N,S,M,C,T)
式中C——交叉算子;
D——個體的編碼方式;
F——個體的適應度評價函數;
M——變異算子;
N——種群規模;
Po——初始群體;
S——選擇算子;
T——搜索終止條件。
這些參數對遺傳算法的性能都有很重要的影響,而參數的設定目前尚無統一的理論指導,主要根據經驗和具體問題確定,下面簡單介紹這些參數[8,9]:
a. 編碼。把一個問題的可行解從其解空間轉換到遺傳算法所能處理的搜索空間的轉換方法稱為編碼。編碼方法在很大程度上決定了如何進行群體的遺傳進化運算及其效率。通常采用二進制編碼或浮點數編碼。
b. 個體的適應度評價函數。基本遺傳算法一般按與個體適應度成正比的概率來決定當前群體中每個個體遺傳到下一代群體中的機會大小。為正確計算這個概率,要求所有個體的適應度必須非負,否則要進行處理。
c. 初始群體。較大數目的初始種群可以同時處理更多的解,因而容易找到全局的最優解,缺點是增加了每次迭代所需要的時間和計算量,并對染色體間的競爭有不利影響。一般為20~100。
d. 選擇算子。最常用的選擇算子是比例選擇算子,也叫賭盤選擇,基本思想是每個個體被選中的概率與其適應度大小成正比。
e. 交叉算子。交叉是產生新個體的主要方法,主要作用就是使結果更趨近于最優解。交叉概率決定了交換操作的頻率,頻率越高,能越快地收斂到最優解區域,但太高的頻率也可能導致只收斂于一個解。一般的交叉概率為0.6~0.9。
f. 變異算子。在遺傳算法中通過引入變異算子來產生新的個體,主要目的是為了改善遺傳算法的局部搜索能力,維持群體的多樣性,避免出現早熟現象。變異概率通常只取較小的數值,一般為0.001~0.100。
遺傳算法優化神經網絡主要是利用遺傳算法的搜索不依賴梯度信息,只需要求解函數在約束條件下的可行解,對目標函數的適用條件很低,無論目標函數是否連續線性皆在適用范圍內,且算法搜索全局性強,易得到最優解[10]。因此遺傳算法與神經網絡相結合,則可以充分利用兩者的優點,使新算法既有神經網絡的學習能力和魯棒性,又有遺傳算法的很強的全局搜索能力。一般來說,遺傳算法和BP神經網絡的結合可以在3個層面上進行,一是對網絡連接權及閾值的優化;二是對網絡結構的優化;三是對網絡規則的優化[11]。筆者主要通過遺傳算法在神經網絡構建的過程中對神經網絡連接權值和閾值進行優化,具體步驟為[11]:
a. 采用實數編碼方案對初始權值和閾值進行編碼,得到N個碼串,每個碼串就對應著一組神經網絡的權值和閾值。

c. 通過選擇算子讓適應度大的個體進入下一代種群。
d. 以交叉率和變異率對個體進行交叉和變異操作,產生出新的個體。
e. 計算新個體的適應度,同時將新個體插入到種群中。
f. 如果找到的個體達到適應度標準,則結束算法,否則轉步驟b。
g. 以遺傳算法計算出的優化初值作為初始權值,用BP算法訓練網絡直到指定精度。
實驗選取某氣體管線進行研究,此段天然氣管長3.13km,管徑DN300.0mm,外徑323.9mm,管壁厚7.1mm,管端壓力0.75MPa。實驗利用管道上所安裝的壓力傳感器接收的壓力信號經預處理后的48組數據作為神經網絡的訓練數據。另取12組作為測試樣本對訓練好的網絡進行實際性能測試。根據實際情況和實驗要求,神經網絡采用兩個隱含層結構的BP神經網絡,輸入層神經元數為6,輸出層神經元數為2,每層的傳遞函數均為S型函數logsig,輸出層使用線性函數logsig,訓練目標精度為0.01,經訓練后得到的誤差曲線如圖2所示。

圖2 BP神經網絡訓練后的誤差曲線
從圖2可以看出,BP算法經2 162次的訓練,網絡達到預期的精度要求。對用遺傳算法優化過的神經網絡的權值和閾值進行訓練,訓練后的誤差曲線如圖3所示。

圖3 遺傳算法優化BP神經網絡訓練曲線
從圖3中可以看出,遺傳算法優化BP神經網絡后經660次訓練就達到了訓練要求的精度。隨后用12組測試樣本進行測試,測得的期望輸出值和實際輸出值結果見表1。

表1 兩種算法期望輸出與實際輸出比較
從表1可以看出,經遺傳算法優化的神經網絡對管道數據的分析基本滿足期望輸出,可以很好地反應管道狀況。并且相比較BP神經網絡算法,收斂速度有所提高。表2所示為兩種算法對12個測試樣本測試后的分析統計表。

表2 兩種算法分析統計
筆者利用遺傳算法優化BP神經網絡的權值和閾值,對管道泄漏進行檢測與識別。兩者相結合避免了BP神經網絡在學習過程中,誤差收斂速度慢和容易陷入局部極小值的缺點,增強了全局搜索能力。并在實驗中利用兩種方法對管道采集的數據進行分析,證明遺傳算法優化的BP神經網絡比傳統BP神經網絡算法收斂速度有所提高。