, , , , ,
(1.天津大學(xué) 水利工程仿真與安全國家重點(diǎn)實(shí)驗(yàn)室, 天津 300072;2.高新船舶與深海開發(fā)裝備協(xié)同創(chuàng)新中心, 上海 200240)
深海海底管道通常處在極為復(fù)雜惡劣的運(yùn)營環(huán)境中,在整個(gè)深海油氣輸送系統(tǒng)中管道如同人體的血管,處于極為重要的地位,一旦管道出現(xiàn)結(jié)構(gòu)破壞或失效,會(huì)造成極大的經(jīng)濟(jì)損失[1]。據(jù)PARLOC 2001統(tǒng)計(jì),海底管道立管失效事件中由腐蝕造成的事故超過40%。
隨著海洋油氣技術(shù)的不斷發(fā)展,海底管道和海洋平臺(tái)的數(shù)量不斷增加,建立海洋環(huán)境腐蝕速率預(yù)測(cè)模型可以減少潛在的結(jié)構(gòu)性失效[2]。但是鋼材的腐蝕是一個(gè)復(fù)雜的過程,至今為止沒有完整的理論可以進(jìn)行鋼材的腐蝕速率計(jì)算?;陔娀瘜W(xué)腐蝕數(shù)據(jù)建立合理的機(jī)器學(xué)習(xí)模型,可以有效地進(jìn)行腐蝕速率預(yù)測(cè),能夠?yàn)楹Q蠼Y(jié)構(gòu)物腐蝕失效預(yù)測(cè)提供可靠的腐蝕缺陷幾何參數(shù)數(shù)據(jù)。
針對(duì)鋼材腐蝕行為,國內(nèi)外專家已經(jīng)做了許多研究工作。HAQUE等[3]通過建立神經(jīng)網(wǎng)絡(luò)模型預(yù)測(cè)DP鋼材的腐蝕行為;KAMRUNNAHAR等[4]將神經(jīng)網(wǎng)絡(luò)作為挖掘工具,預(yù)測(cè)鋼材腐蝕行為;SHI等[5]針對(duì)氯化物等腐蝕物對(duì)混凝土鋼材點(diǎn)腐蝕行為進(jìn)行定量研究,通過試驗(yàn)測(cè)試腐蝕電位和點(diǎn)腐蝕電位,探究其與氯化物濃度、pH和溶氧量之間的關(guān)系,并通過性能測(cè)試模型得到測(cè)定系數(shù)為0.8741;劉威等[6]建立灰色神經(jīng)網(wǎng)絡(luò)腐蝕速率預(yù)測(cè)模型;胡松青等[7]建立BP神經(jīng)網(wǎng)絡(luò)對(duì)輸油管線內(nèi)腐蝕行為進(jìn)行預(yù)測(cè);汪川等[8]利用統(tǒng)計(jì)學(xué)方法進(jìn)行鋼材腐蝕速率預(yù)測(cè);鄧志安等[9]將模糊算法用于改進(jìn)人工神經(jīng)網(wǎng)絡(luò)腐蝕速率預(yù)測(cè)模型。
國內(nèi)外學(xué)者針對(duì)鋼材腐蝕行為多研究腐蝕影響因素對(duì)腐蝕速率的影響,或者采用人工神經(jīng)網(wǎng)絡(luò)或數(shù)學(xué)統(tǒng)計(jì)方法對(duì)腐蝕速率進(jìn)行預(yù)測(cè),但是深海管道風(fēng)險(xiǎn)評(píng)估需要更為精確地預(yù)測(cè)鋼材在海洋環(huán)境條件下的腐蝕速率。
人工神經(jīng)網(wǎng)絡(luò)作為一種機(jī)器學(xué)習(xí)糾偏方法,被廣泛應(yīng)用于模式識(shí)別、數(shù)據(jù)預(yù)測(cè)等方面。但是,神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)參數(shù)的選擇通常需要設(shè)計(jì)人員的經(jīng)驗(yàn),同時(shí)也需要大量的訓(xùn)練數(shù)據(jù)才可以得到較為理想的預(yù)測(cè)結(jié)果。由于海洋腐蝕速率試驗(yàn)數(shù)據(jù)樣本容量小,人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)結(jié)果無法滿足管道腐蝕失效風(fēng)險(xiǎn)預(yù)警體系的要求。
VAPNIK[10]和KAVEH等[11]提出了支持向量機(jī)(Support Vector Machine, SVM)理論。SVM最初應(yīng)用于分類問題。SPECHT[12]提出SVM回歸方法,用于數(shù)據(jù)預(yù)測(cè)。SVM能夠在小樣本條件下根據(jù)數(shù)據(jù)樣本的統(tǒng)計(jì)特性,進(jìn)行更為準(zhǔn)確的數(shù)據(jù)預(yù)測(cè)。在SVM預(yù)測(cè)模型中,選擇合理的參數(shù)對(duì)預(yù)測(cè)精確度至關(guān)重要。SVM預(yù)測(cè)模型結(jié)合遺傳優(yōu)化算法可以得到精確的腐蝕速率預(yù)測(cè)數(shù)據(jù),為海底管道腐蝕失效計(jì)算提供更為可靠的腐蝕缺陷幾何數(shù)據(jù)。
SVM是統(tǒng)計(jì)理論在機(jī)器學(xué)習(xí)方面的延伸,能夠在少量樣本條件下尋找樣本數(shù)據(jù)的統(tǒng)計(jì)特性,提高回歸分析的準(zhǔn)確度。傳統(tǒng)的機(jī)器學(xué)習(xí)算法存在過擬合、局部領(lǐng)域取值過大或過小以及樣本特征向量增加、計(jì)算量成倍遞增等缺點(diǎn),而SVM能夠很好地克服這些缺陷,因此得到了廣泛應(yīng)用[13]。
給定樣本集D={(xi,yi)|i=1,2,…,l},其中:xi∈Rn,yi∈R。SVM數(shù)據(jù)預(yù)測(cè)模型通過引進(jìn)松弛變量約束ξ和ξ*,并且引進(jìn)從輸入空間Rn到Hilbert空間H的變換φ,將數(shù)據(jù)樣本集(xi,yi),i=1,2,…,l,xi∈Rn,yi∈R映射為f(φ(xi),yi,b)=0,i=1,2,…,l,原始的回歸問題轉(zhuǎn)化為優(yōu)化函數(shù):
(1)
式中:w為權(quán)重向量;C為懲罰因子,且C>0。優(yōu)化函數(shù)的約束條件為
(2)
式中:b為映射的參數(shù);ε為損失函數(shù),且ε>0。
若對(duì)應(yīng)的變換φ的核函數(shù)為K(xi,xj),上述問題轉(zhuǎn)化為
式中:α為拉格朗日乘子。最終得到優(yōu)化后的回歸函數(shù)
,xi)+b(5)
SVM回歸的核函數(shù)主要包括幾種:
線性核函數(shù)形式
K(xi,xj)=xixj(6)
多項(xiàng)式函數(shù)形式
K(xi,xj)=(γxixj+fcoe)d(7)
徑向核函數(shù)(Radial Basis Function, RBF)形式
K(xi,xj)=exp(-γ|xi-xj|2)(8)
Sigmoid核函數(shù)形式
K(xi,xj)=tanh(γxixj+fcoe)(9)
在非線性回歸預(yù)測(cè)問題中通常選用后3種核函數(shù)。式(7)~式(9)中:d為冪參數(shù),可取任意值;γ、fcoe為核函數(shù)的常量參數(shù),取值需大于零。
遺傳算法是按照生物進(jìn)化論的思維并以遺傳變異作為理論基礎(chǔ),實(shí)現(xiàn)數(shù)值優(yōu)化的。20世紀(jì)60年代HOLLAND[14]首次利用生物進(jìn)化機(jī)制解決簡(jiǎn)單的生物適應(yīng)性問題,開創(chuàng)新的優(yōu)化方法。
染色體編碼有多種形式,常用的有實(shí)數(shù)編碼和二進(jìn)制編碼。實(shí)數(shù)編碼是將染色基因值用1個(gè)實(shí)數(shù)表示,由于實(shí)數(shù)具有連續(xù)性,可以很好地解決連續(xù)性參數(shù)優(yōu)化問題,但是易于陷入局部最小問題。二進(jìn)制編碼是將基因值用二進(jìn)制符號(hào)0和1表示,可以進(jìn)行全局搜索,并且變異和交叉易于實(shí)現(xiàn),可以避免局部最小問題。
SVM的關(guān)鍵參數(shù)主要包括懲罰因子C、核函數(shù)類型、γ值和損失函數(shù)ε。采用遺傳算法進(jìn)行參數(shù)優(yōu)化時(shí),需要選擇合適的參數(shù)范圍。遺傳算法首先會(huì)初始化生成一個(gè)種群,將種群中各個(gè)體進(jìn)行解碼生成SVM初始參數(shù),建立SVM模型得到腐蝕速率預(yù)測(cè)結(jié)果,根據(jù)優(yōu)化目標(biāo)函數(shù)選擇適當(dāng)?shù)倪m應(yīng)度函數(shù)計(jì)算各個(gè)體的適應(yīng)度值,按照適應(yīng)度遴選種群中的個(gè)體,種群個(gè)體基于編碼接著進(jìn)行交叉及變異產(chǎn)生新的種群個(gè)體,經(jīng)過反編碼得到SVM的新參數(shù),輸入到SVM中進(jìn)行預(yù)測(cè),得到預(yù)測(cè)結(jié)果。迭代往復(fù),最終在迭代數(shù)次后可得到滿足要求的參數(shù)優(yōu)化結(jié)果。其流程如圖1所示。
以Q 235鋼材海洋掛片腐蝕試驗(yàn)數(shù)據(jù)作為樣本,建立腐蝕速率預(yù)測(cè)模型。腐蝕試驗(yàn)數(shù)據(jù)見表1。預(yù)測(cè)模型中需要對(duì)數(shù)據(jù)進(jìn)行歸一化處理,避免不同變量之間的數(shù)量級(jí)不同或者出現(xiàn)函數(shù)不飽和區(qū)域,導(dǎo)致數(shù)值問題的產(chǎn)生。
圖1 遺傳算法SVM實(shí)現(xiàn)過程
序號(hào)溫度/℃含氧量/(mg·L-1)含鹽量/(103mg·L-1)pH值腐蝕速率/(μA·cm-2)124.270.8032.568.102.55227.452.6035.377.9610.96327.234.2031.947.8912.00428.726.8032.218.0013.33528.528.4032.108.0117.31628.459.9031.957.9322.48723.957.619.178.048.13824.956.8016.297.829.07924.607.5224.427.5710.741027.323.1229.318.2013.591124.007.9530.208.1012.891227.786.3531.387.2013.611327.976.0531.946.6014.601430.707.1531.746.5015.00
續(xù)表1 海洋環(huán)境腐蝕速率試驗(yàn)數(shù)據(jù)
圖2 鋼材腐蝕圖
通過海洋掛片的失重質(zhì)量計(jì)算Q235鋼材在海洋環(huán)境中的腐蝕速率。鋼材腐蝕情況如圖2所示。
在選擇訓(xùn)練樣本時(shí)要包含各變量的最大、最小值,避免測(cè)試樣本變量數(shù)值大于訓(xùn)練樣本,無法得到理想的預(yù)測(cè)模型。通過歸一化將變量和輸出值轉(zhuǎn)化至范圍內(nèi)。選取測(cè)試樣本的樣本號(hào)及歸一化后數(shù)據(jù)見表2。
表2 測(cè)試樣本數(shù)據(jù)
圖3 適應(yīng)度值變化圖
經(jīng)過優(yōu)化,SVM模型得到準(zhǔn)確度更高的預(yù)測(cè)結(jié)果,遺傳算法也表現(xiàn)出較好的收斂性。平均適應(yīng)度隨著迭代次數(shù)的變化如圖3所示。遺傳算法中選擇測(cè)試樣本與試驗(yàn)值的誤差絕對(duì)值的平均值,其倒數(shù)作為適應(yīng)度函數(shù)(誤差絕對(duì)值按照100%計(jì)算),適應(yīng)度值為1.118 2,誤差絕對(duì)值的平均值為0.89%。
利用遺傳算法對(duì)SVM進(jìn)行參數(shù)優(yōu)化得到的優(yōu)化結(jié)果見表3,其中懲罰因子C小于10,避免了SVM回歸預(yù)測(cè)由于懲罰因子C過大導(dǎo)致的過擬合問題。
表3 遺傳算法優(yōu)化參數(shù)結(jié)果
圖4 模型預(yù)測(cè)值和腐蝕速率試驗(yàn)值對(duì)比
表4為SVM模型預(yù)測(cè)結(jié)果與試驗(yàn)值對(duì)比表,樣本4號(hào)和12號(hào)誤差分別為-0.147 8%和-0.450 3%。由圖4可以看出預(yù)測(cè)值幾乎接近實(shí)際試驗(yàn)值。3組預(yù)測(cè)結(jié)果誤差均小于3%,說明基于遺傳算法的SVM腐蝕速率預(yù)測(cè)模型可以提供可靠的數(shù)據(jù)預(yù)測(cè)結(jié)果。
表4 模型預(yù)測(cè)值和試驗(yàn)值對(duì)比
圖5 GA-SVM模型和BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)結(jié)果誤差對(duì)比
在BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型中,測(cè)試樣本誤差絕對(duì)值的平均值為7.23%。由圖5可以看出,相對(duì)于人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型,通過遺傳算法給出優(yōu)化的懲罰因子C、γ值參數(shù)的SVM模型的精確度也達(dá)到了較高的水平。基于遺傳算法的SVM預(yù)測(cè)模型可以有效降低預(yù)測(cè)誤差,能夠?yàn)轱L(fēng)險(xiǎn)預(yù)警體系中腐蝕失效預(yù)測(cè)提供可靠的腐蝕速率預(yù)測(cè)結(jié)果。同時(shí)也證明,基于遺傳算法的SVM海洋環(huán)境腐蝕速率預(yù)測(cè)模型切實(shí)可行。
除此之外,利用遺傳算法對(duì)SVM參數(shù)進(jìn)行優(yōu)化時(shí),不同的取值范圍會(huì)導(dǎo)致不同優(yōu)化結(jié)果,見表5。因此,在利用遺傳算法優(yōu)化時(shí),要嘗試不同的取值范圍,以便能夠得到更為合理的SVM參數(shù)。
表5 參數(shù)取值范圍對(duì)最優(yōu)適應(yīng)度的影響
本文基于MATLAB開發(fā)平臺(tái),以腐蝕預(yù)測(cè)SVM模型的預(yù)測(cè)結(jié)果與試驗(yàn)值的誤差最小作為優(yōu)化目標(biāo)函數(shù),編寫遺傳算法優(yōu)化程序進(jìn)行參數(shù)優(yōu)化。通過海洋腐蝕掛片試驗(yàn)數(shù)據(jù)驗(yàn)證模型預(yù)測(cè)結(jié)果得到以下結(jié)論:
(1) 根據(jù)海洋掛片腐蝕試驗(yàn)數(shù)據(jù),建立SVM模型,利用遺傳算法進(jìn)行參數(shù)優(yōu)化,可以得到精確的腐蝕速率結(jié)果。因此,基于遺傳算法的SVM模型可以用作海洋環(huán)境腐蝕速率預(yù)測(cè)模型,為深海油氣輸送系統(tǒng)中處于海洋水環(huán)境的立管、平臺(tái)等結(jié)構(gòu)的風(fēng)險(xiǎn)預(yù)警體系提供精確的數(shù)據(jù)參考。
(2) SVM可以解決海洋腐蝕速率試驗(yàn)樣本數(shù)據(jù)較少的規(guī)律預(yù)測(cè)問題,能夠在小樣本條件下給出比BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型更可靠的腐蝕速率預(yù)測(cè)結(jié)果。
(3) 利用遺傳算法進(jìn)行參數(shù)優(yōu)化時(shí)需要設(shè)置適當(dāng)?shù)膮?shù)范圍。不合適的參數(shù)范圍通常無法得到合理的懲罰因子C、核函數(shù)類型、γ值和損失函數(shù)ε,同時(shí)在參數(shù)優(yōu)化過程中考慮到懲罰因子C過大導(dǎo)致的過擬合化的問題,因此在利用遺傳算法進(jìn)行參數(shù)優(yōu)化時(shí),須慎重選擇關(guān)鍵參數(shù)的取值范圍。