周 陽,王壽喜
(西安石油大學(xué),西安 710065)
目前,我國部分氣田已經(jīng)進(jìn)入到開發(fā)后期階段,這些集輸管道的服役時間相對較長,介質(zhì)中的含水率以及酸性物質(zhì)含量隨服役時間的延長不斷提升,致使管道的腐蝕速率不斷加快[1-4]。腐蝕是威脅管道運(yùn)行安全的重要因素。因此,氣田集輸管道腐蝕速率的準(zhǔn)確預(yù)測對提前制定防護(hù)措施、保障氣田管道運(yùn)行安全十分重要[2-6],同時也有利于推動我國能源產(chǎn)業(yè)的進(jìn)一步發(fā)展。
國內(nèi)外學(xué)者對于氣田管道腐蝕速率預(yù)測進(jìn)行了多方面的研究。駱正山等[7]通過建立隨機(jī)森林算法,對凝析氣田管道的腐蝕問題進(jìn)行了全面研究,研究過程中使用灰色關(guān)聯(lián)度算法對內(nèi)腐蝕速率的影響因素進(jìn)行了全面篩選,并使用氣田集輸管道實(shí)際腐蝕速率數(shù)據(jù)對所建立的模型進(jìn)行了驗(yàn)證,但是隨機(jī)森林算法在使用的過程中會出現(xiàn)過度擬合問題,最終導(dǎo)致預(yù)測結(jié)果精度降低。RAJU等[8]通過引入壓電傳感器的方式,對管道的腐蝕問題進(jìn)行了全面評價,使用該種方法的腐蝕速率評價結(jié)果相對精度較高,但是所需要的經(jīng)濟(jì)成本也相對較高,同時壓電傳感器非常容易受到腐蝕的影響出現(xiàn)損壞問題。曾維國等[9]建立了徑向基神經(jīng)網(wǎng)絡(luò)模型進(jìn)行腐蝕速率研究,在模型訓(xùn)練過程中,其預(yù)測值與期望值之間的相關(guān)性相對較高,使用該種模型可以對腐蝕風(fēng)險相對較高的管道進(jìn)行篩選,但是神經(jīng)網(wǎng)絡(luò)類型的算法對于樣本數(shù)量的依賴度相對較高,在訓(xùn)練樣本相對較少的前提下,預(yù)測結(jié)果將會受到較大的影響。梁金祿等[10]針對高含硫氣田的腐蝕問題,使用PSO(粒子群優(yōu)化)模型對SVM(支持向量機(jī))模型中的參數(shù)進(jìn)行了優(yōu)選,然后使用SVM模型進(jìn)行了腐蝕速率研究,預(yù)測結(jié)果顯示,該種模型的預(yù)測誤差相對較小,但是在使用PSO對參數(shù)進(jìn)行篩選的過程中,非常容易出現(xiàn)局部最優(yōu)的問題,即優(yōu)選的參數(shù)可能不是最佳參數(shù)。
通過全面調(diào)研發(fā)現(xiàn),目前國內(nèi)外關(guān)于管道腐蝕速率預(yù)測的研究存在一定的局限性。為此,本工作將使用灰色關(guān)聯(lián)度(GRA)模型對氣田集輸管道內(nèi)腐蝕的影響因素進(jìn)行全面篩選。螢火蟲(FA)模型非常容易出現(xiàn)局部最優(yōu)的問題,因此,對其進(jìn)行了改進(jìn),得到改進(jìn)后的螢火蟲(IFA)模型。最小二乘支持向量機(jī)(LSSVM)模型中兩種參數(shù)的設(shè)定會對預(yù)測結(jié)果產(chǎn)生影響,因此,使用IFA模型對LSSVM模型進(jìn)行了參數(shù)優(yōu)選,最終建立GRA-IFA-LSSVM模型,對氣田集輸管道的內(nèi)腐蝕速率問題進(jìn)行預(yù)測研究,為保障氣田集輸管道的安全運(yùn)行奠定基礎(chǔ)。
對于灰色關(guān)聯(lián)度(GRA)模型而言,其屬于一種根據(jù)系統(tǒng)的發(fā)展趨勢進(jìn)行定量分析以及比較的算法[11]。使用GRA算法的過程可分為以下5個步驟。
(1) 確定母序列與子序列之間的關(guān)系。在進(jìn)行氣田集輸管道內(nèi)腐蝕速率預(yù)測的過程中,將介質(zhì)的溫度、流速、H2S含量、CO2含量、O2含量、水含量、鹽含量以及pH作為其影響因素,此時的母序列可以表示為:X0={x0(1),x0(2),…,x0(m)}。對于第i個子序列而言,可以表示為:Xi={xi(1),xi(2),…,xi(m)}(i=1,2,3,…,8),最終可以構(gòu)成式(1)所示矩陣。
(1)
(2) 對數(shù)據(jù)進(jìn)行處理。由于各個影響因素數(shù)據(jù)以及腐蝕速率數(shù)據(jù)量綱之間存在較大的差異,因此,數(shù)值的差異度相對較大,需要對其進(jìn)行初值變換處理,得到式(2)。
(2)
式中:X0為數(shù)列后面的數(shù)據(jù);X0(1)為某一列數(shù)據(jù)的第一個數(shù)值;Y0為處理后得到的數(shù)據(jù)。
初值變換處理后的第i個子序列,可表示為式(3)。
(3)
在進(jìn)行無量綱處理以后,可以得到如式(4)所示矩陣。
(4)
(3) 對Yi和Y0之間的關(guān)聯(lián)系數(shù)σ0i進(jìn)行計算,見式(5)。
(5)
式中:ρ為分辨系數(shù),其處于區(qū)間[0,1]內(nèi),一般可以取值0.5。
(4) 對所有影響因素的關(guān)聯(lián)度進(jìn)行處理,此時可以得到Y(jié)i對Y0的關(guān)聯(lián)度γ0i,如式(6)所示。
(6)
式中:M為數(shù)據(jù)數(shù)量。
(5) 對所有影響因素的關(guān)聯(lián)度γ0i進(jìn)行排序,對較為重要的影響因素進(jìn)行篩選[12]。
螢火蟲(FA)模型是一種相對較為先進(jìn)的參數(shù)優(yōu)選算法,在整個種群中,每一個螢火蟲都代表一個數(shù)值解,其相對亮度表示適應(yīng)度,根據(jù)其相對亮度可以確定每個個體的位置移動方向,亮度較小的個體將會向亮度大的個體移動,而最亮的個體,會隨機(jī)移動[13-14]。使用該種類型算法的步驟如下:
(1) 對各個參數(shù)進(jìn)行初始化處理,計算每個個體的初始化相對亮度I0。
(2) 根據(jù)式(7)、(8)、(9)對I和β進(jìn)行計算。
(7)
(8)
(9)
式中:β為吸引力數(shù)值;β0為最大吸引力數(shù)值;I為個體的相對亮度;I0為個體的初始化相對亮度;γ為光吸收系數(shù)數(shù)值;rij為個體i和個體j之間的距離;d為空間維數(shù),根據(jù)優(yōu)化運(yùn)算的目標(biāo)確定;xi,k為個體i的第k個數(shù)值。
(3) 根據(jù)式(10)對個體的位置進(jìn)行更新。
xi(t+1)=xi(t)+
β[xj(t)-xi(t)]+α(rand-0.5)
(10)
式中:xi,xj分別為個體i和個體j所處的位置;α為隨機(jī)步長,其處于區(qū)間[0,1]中;rand函數(shù)表示在區(qū)間[0,1]內(nèi)產(chǎn)生隨機(jī)實(shí)數(shù)。
(4) 確定位置更新以后個體的亮度。
(5) 若滿足所有的條件,輸出最佳的極值,結(jié)束;若不滿足條件,需要從步驟(3)開始重新迭代。
在FA算法的使用過程中,非常容易出現(xiàn)局部最優(yōu)的問題,同時如果參數(shù)設(shè)置不合理,還可能會出現(xiàn)函數(shù)無法收斂的問題。因此,需要對其進(jìn)行合理的改進(jìn),改進(jìn)后的螢火蟲(IFA)算法為:
(1) 對每個個體的位置進(jìn)行Logistics混沌初始化處理,進(jìn)而使得種群多樣性得到提升,全局搜索能力得到增強(qiáng),Logistics混沌處理的映射公式見式(11)。
zn+1=rzn(1-zn)
(11)
式中:r為混沌因子,在取值為4的前提下,表示完全混沌,此時滿足公式zn+1∈(1-zn)。
(2) 對于線性遞減過程中的慣性權(quán)重w而言,其變化情況與迭代次數(shù)T以及最大迭代次數(shù)Tmax之間具有很強(qiáng)的聯(lián)系,在進(jìn)入到后期階段后,其收斂的速度將會大幅降低,進(jìn)而出現(xiàn)局部最優(yōu)的問題。針對該問題,本工作引入一種新的慣性權(quán)重計算方法,如式(12)~(13)所示。該計算方法基于每個個體以及整體的適應(yīng)度數(shù)值,適應(yīng)度fi如式(14)所示,IFA算法位置更新如式(15)所示。
(12)
(13)
(14)
xi(t+1)=w(t)xi(t)+
β[xj(t)-xi(t)]+α(rand-0.5)
(15)
LSSVM模型屬于一種對SVM(支持向量機(jī))進(jìn)行改進(jìn)的算法,使用該算法時,在對偶空間之內(nèi),不等式可以使用等式進(jìn)行約束。同時,可以根據(jù)最小二乘基本理論,對損失函數(shù)進(jìn)行合理優(yōu)化。最終將二次規(guī)劃問題轉(zhuǎn)化為方程組的求解問題。此時使用該模型進(jìn)行數(shù)據(jù)預(yù)測的精度進(jìn)度得到大幅提升[18-20]。LSSVM算法的應(yīng)用步驟為:
(1) 將數(shù)據(jù)集合分為兩個樣本組,分別是訓(xùn)練樣本以及預(yù)測樣本,訓(xùn)練樣本可以表示為D={(xi,yi)|i=1,2,…,n},其中,xi∈Rn為第i個樣本,yi∈{-1,+1}輸出數(shù)據(jù)組合。
(2) 在高維空間之內(nèi),可以將回歸函數(shù)表示為式(16)。
y(x)=ω·φ(x)+b
(16)
式中:ω為可調(diào)權(quán)函數(shù);φ(x)為映射函數(shù);b為偏差參數(shù)。
(3) 在對參數(shù)ω和b進(jìn)行求解的過程中,需要引入結(jié)構(gòu)風(fēng)險最小化理論,求解公式如式(17)所示。
(17)
式中:C為正則化參數(shù);ξi為誤差。
(4) 為了實(shí)現(xiàn)最優(yōu)的目標(biāo),引入拉格朗日函數(shù)進(jìn)行求解,如式(18)所示。
(18)
式中:αi為乘子,使用L(ω,b,ξ,α)對ω,b,ξ,α進(jìn)行偏微分求解,進(jìn)而得到式(19)。
(19)
(5) 將上述公式中的參數(shù)ω和ξi去除,并將式(19)轉(zhuǎn)化為矩陣
(20)
式中:e=[1,1,…,1]T,y=[y1,y2,…,yn]T,α=[α1,α2,…,αn]T,Ωij=φ(xi)·φ(xj)=k(xi,xj)。k(xi,xj)為核函數(shù)矩陣,本工作中使用的核函數(shù)為徑向基函數(shù),如式(21)所示。
(21)
(6) 對上述方程進(jìn)行求解,最終得到線性方程
(22)
在使用LSSVM算法時,正則化參數(shù)C以及徑向基函數(shù)中的參數(shù)σ會對最終的預(yù)測結(jié)果產(chǎn)生重要影響,為了全面降低內(nèi)腐蝕速率預(yù)測的誤差,使用改進(jìn)的螢火蟲算法對參數(shù)進(jìn)行優(yōu)選[21-23]。
按圖1所示流程建立預(yù)測氣田集輸管道內(nèi)腐蝕速率的GRA-IFA-LSSVM組合模型。
圖1 GRA-IFA-LSSVM組合模型建立流程Fig.1 Process of building GRA-IFA-LSSVM combined model
(1) 引入灰色關(guān)聯(lián)度算法,對氣田集輸管道內(nèi)腐蝕速率的影響因素進(jìn)行篩選,確定內(nèi)腐蝕的主要影響因素。
(2) 引入螢火蟲算法,對初始參數(shù)進(jìn)行設(shè)置。
(3) 根據(jù)式(11)產(chǎn)生混沌序列,將其作為螢火蟲算法使用過程中的初始種群。
(4) 對適應(yīng)度進(jìn)行計算,使用LSSVM模型對訓(xùn)練數(shù)據(jù)集合進(jìn)行學(xué)習(xí),并對預(yù)測數(shù)據(jù)集的預(yù)測誤差進(jìn)行計算,將每個螢火蟲的絕對百分比誤差作為IFA算法使用過程中的適應(yīng)度,如式(23)所示。
(23)
式中:Ai為實(shí)際值;Pi為預(yù)測值。
(5) 根據(jù)式(8)和式(9)對IFA算法進(jìn)行計算,對每個個體之間的距離以及步長進(jìn)行判斷,使用式(10)和式(15)對每個個體的位置進(jìn)行更新。
(6) 對適應(yīng)度進(jìn)行重新計算,使用式(11)和式(12)進(jìn)行混沌序列優(yōu)化以及搜素。
(7) 輸出最佳參數(shù)至LSSVM模型中,使用LSSVM模型對訓(xùn)練數(shù)據(jù)集進(jìn)行學(xué)習(xí),對預(yù)測數(shù)據(jù)集進(jìn)行預(yù)測。
為了對GRA-IFA-LSSVM組合模型的預(yù)測精度進(jìn)行全面評價,引入三種誤差評價方法,分別是均方根誤差ERMSE、平均相對誤差EMRE以及可決系數(shù)R2,三種評價方法的計算公式分別如式(24)~(26)所示。
(24)
(25)
(26)
為了對本研究所提出的GRA-IFA-LSSVM組合模型進(jìn)行驗(yàn)證,以我國某氣田為例,進(jìn)行了集輸管道腐蝕試驗(yàn)。該氣田集輸管道的材料為16Mn鋼,隨著管道使用時間逐漸增長,腐蝕已經(jīng)成為威脅管道安全運(yùn)行的重要因素。在研究的過程中,采用腐蝕掛片的方式對腐蝕樣本進(jìn)行提取。腐蝕掛片的尺寸為10 mm×3 mm×50 mm,采樣周期為30 d,取出的掛片經(jīng)清水沖洗、防銹劑浸泡以及無水乙醇處理等步驟后吹干,然后進(jìn)行了稱量。根據(jù)掛片腐蝕前后質(zhì)量變化計算腐蝕速率,如式(27)所示。
(27)
式中:vcorr為腐蝕速率,mm/a;K為換算系數(shù),8.76×104;Δγ為掛片腐蝕前后質(zhì)量差,g;t為時間,d;μ為材料密度,g/cm3;S為掛片的表面積,cm2。經(jīng)過試驗(yàn),共獲取76組數(shù)據(jù),部分?jǐn)?shù)據(jù)如表1所示。
表1 部分腐蝕速率及影響因素數(shù)據(jù)Tab.1 Partial data of corrosion rates and influencing factors
根據(jù)GRA算法的計算步驟,計算各影響因數(shù)與腐蝕速率的關(guān)聯(lián)度,結(jié)果如表2所示。分析表2中數(shù)據(jù)可以發(fā)現(xiàn),每種影響因素與管道腐蝕速率的關(guān)聯(lián)度數(shù)值都相對較高。本研究將選擇關(guān)聯(lián)度數(shù)值較高的前五項(xiàng)作為模型的特征變量,腐蝕速率作為模型的輸出目標(biāo)。這五項(xiàng)影響因素分別為溫度、H2S含量、CO2含量、pH以及流速。
表2 影響因素關(guān)聯(lián)度計算結(jié)果Tab.2 Calculation results of correlation degree of influencing factors
為了對本研究所提出的GRA-IFA-LSSVM組合模型進(jìn)行先進(jìn)性驗(yàn)證,將其與FA-LSSVM算法、GA-LSSVM算法(遺傳算法優(yōu)化最小二乘支持向量機(jī))以及PSO-LSSVM(粒子群算法優(yōu)化最小二乘支持向量機(jī))算法進(jìn)行對比。在使用IFA算法以及FA算法的過程中,種群規(guī)模設(shè)定為30,步長因子設(shè)定為0.1,光吸收強(qiáng)度設(shè)定為1,最大吸引度設(shè)定為1,最大迭代次數(shù)設(shè)定為100,訓(xùn)練精度設(shè)定為10-6。在使用GA算法的過程中,種群規(guī)模設(shè)定為30,最大迭代次數(shù)設(shè)定為100,訓(xùn)練精度設(shè)定為10-6,交叉概率設(shè)定為0.6,突變概率設(shè)定為0.05。在使用PSO算法的過程中,種群規(guī)模設(shè)定為30,粒子群維數(shù)設(shè)定為2,慣性權(quán)重設(shè)定為0.4,學(xué)習(xí)因子設(shè)定為0.2,最大迭代次數(shù)設(shè)定為100,訓(xùn)練精度設(shè)定為10-6。使用4種算法分別對LSSVM模型中的正則化參數(shù)C以及徑向基函數(shù)參數(shù)σ進(jìn)行優(yōu)選,得到的參數(shù)數(shù)值如表3所示,將這些參數(shù)數(shù)值分別輸入LSSVM算法中,進(jìn)行腐蝕速率預(yù)測。
表3 參數(shù)優(yōu)選結(jié)果Tab.3 Results of parameter optimization
將76組數(shù)據(jù)分為兩組,訓(xùn)練數(shù)據(jù)組以及預(yù)測數(shù)據(jù)組。訓(xùn)練數(shù)據(jù)組為66組氣田集輸管道腐蝕速率及影響因素數(shù)據(jù),用于GRA-IFA-LSSVM、FA-LSSVM、GA-LSSVM以及PSO-LSSVM模型訓(xùn)練;預(yù)測數(shù)據(jù)組有10組,用于模型驗(yàn)證。采用訓(xùn)練數(shù)據(jù)組對4種模型進(jìn)行訓(xùn)練后,再根據(jù)預(yù)測數(shù)據(jù)組數(shù)據(jù)進(jìn)行預(yù)測,預(yù)測結(jié)果如表4、圖2及圖3所示。通過對預(yù)測結(jié)果進(jìn)行分析可以發(fā)現(xiàn):GA-LSSVM模型的預(yù)測精度最差,其最大相對誤差達(dá)到了21.454 7%,平均相對誤差達(dá)到了9.500 8%; GRA-IFA-LSSVM模型的預(yù)測精度最好,其預(yù)測結(jié)果的最大相對誤差為2.919 1%,最小相對誤差為1.012 3%,該模型的誤差區(qū)間為[1.012 3%, 2.919 1%];PSO-LSSVM模型的誤差區(qū)間為[2.860 8%,9.115 5%],FA-LSSVM模型的誤差區(qū)間為[2.014 5%,17.281 8%],相比之下,GRA-IFA-LSSVM模型的誤差區(qū)間較小,取值范圍也相對較小。對圖2進(jìn)行分析可以發(fā)現(xiàn),本研究所提出的GRA-IFA-LSSVM組合模型的預(yù)測結(jié)果與實(shí)際腐蝕速率相對較為接近,相對誤差變化相對平穩(wěn),證明該模型的魯棒性較強(qiáng),因此,GRA-IFA-LSSVM組合模型優(yōu)于其他三種模型,適用于氣田集輸管道內(nèi)腐蝕速率預(yù)測。
表4 4種模型的預(yù)測結(jié)果Tab.4 Prediction results of four models
圖2 4種模型預(yù)測結(jié)果與實(shí)際腐蝕速率對比Fig.2 Comparison of prediction results of four models and actual corrosion rate
圖3 4種模型預(yù)測誤差對比Fig.3 Comparison of prediction errors of four models
分別將GRA-IFA-LSSVM、FA-LSSVM、GA-LSSVM以及PSO-LSSVM模型的預(yù)測結(jié)果與實(shí)際腐蝕速率進(jìn)行相關(guān)性分析,結(jié)果如圖4~7所示。由圖4~7可以發(fā)現(xiàn),GRA-IFA-LSSVM模型的R2為0.975 3,FA-LSSVM模型的R2為74.39,GA-LSSVM模型的R2為67.53,PSO-LSSVM模型的R2為81.08。其中,GRA-IFA-LSSVM模型的R2最為接近1,說明用GRA-IFA-LSSVM模型對氣田集輸管道內(nèi)腐蝕速率預(yù)測具有很強(qiáng)的準(zhǔn)確性以及魯棒性。
圖4 GRA-IFA-LSSVM模型預(yù)測結(jié)果線性擬合圖Fig.4 Linear fitting diagram of IFA-LSSVM model prediction results
圖5 FA-LSSVM模型預(yù)測結(jié)果線性擬合圖Fig.5 Linear fitting diagram of FA-LSSVM model prediction results
圖6 GA-LSSVM模型預(yù)測結(jié)果線性擬合圖Fig.6 Linear fitting diagram of GA-LSSVM model prediction results
圖7 PSO-LSSVM模型預(yù)測結(jié)果線性擬合圖Fig.7 Linear fitting diagram of PSO-LSSVM model prediction results
為了進(jìn)一步對GRA-IFA-LSSVM組合模型進(jìn)行驗(yàn)證,使用2.2節(jié)中的方法對模型進(jìn)行評價,評價結(jié)果如圖8所示。分析圖8中數(shù)據(jù)可以發(fā)現(xiàn),在用GRA-IFA-LSSVM模型進(jìn)行氣田集輸管道內(nèi)腐蝕速率預(yù)測的過程中,其平均相對誤差為1.946%,均方根誤差為1.496%,可決系數(shù)為0.975 3,這三項(xiàng)指標(biāo)均小于其他模型。因此,在氣田集輸管道內(nèi)腐蝕速率預(yù)測過程中,本研究提出的GRA-IFA-LSSVM組合模型具有很強(qiáng)的準(zhǔn)確性、魯棒性以及先進(jìn)性,可以在氣田集輸管道腐蝕速率預(yù)測的過程中推廣使用該種類型的方法。
圖8 誤差分析Fig.8 Error analysis
(1) 在使用FA模型對LSSVM模型進(jìn)行參數(shù)尋優(yōu)的過程中,非常容易陷入局部最優(yōu)的問題,因此,需要對其進(jìn)行改進(jìn)。對于IFA模型而言,其引入了新的慣性權(quán)重計算措施,同時,在對螢火蟲個體的位置進(jìn)行初始化時,引入了Logistics混沌初始化方法,可以避免出現(xiàn)參數(shù)優(yōu)選過程中的局部最優(yōu)問題。
(2) 在進(jìn)行腐蝕速率預(yù)測時,如果將所有影響因素都輸入到預(yù)測模型中,將會使得模型的復(fù)雜性提升,通過使用GRA算法對影響因素進(jìn)行簡化發(fā)現(xiàn),溫度、H2S含量、CO2含量、pH以及流速屬于氣田集輸管道內(nèi)腐蝕的主要影響因素,可以使用這五項(xiàng)影響因素代替所有影響因素輸入到預(yù)測模型中進(jìn)行腐蝕速率預(yù)測。
(3) 通過本研究所提出的GRA-IFA-LSSVM組合模型對氣田集輸管道內(nèi)腐蝕速率進(jìn)行預(yù)測,其平均相對誤差為1.946%,均方根誤差為1.496%,可決系數(shù)為0.975 3,這3項(xiàng)指標(biāo)均小于其他模型,相對誤差的變化也相對較小,證明該模型具有很強(qiáng)的準(zhǔn)確性、魯棒性以及先進(jìn)性,可以在我國氣田中推廣使用。