汪 斌,孫博文,黃召庭,郭 平*,姚 琨,汪周華,白 銀
(1.中國石油塔里木油田分公司勘探開發(fā)研究院,庫爾勒 841000;2.西南石油大學油氣藏地質(zhì)及開發(fā)工程國家重點實驗室,成都 610500)
在凝析氣藏衰竭開發(fā)過程中,隨著溫度、壓力的降低,當壓力低于第一露點時,原本在凝析氣中以氣態(tài)存在的凝析油將逐漸析出,產(chǎn)生的反凝析現(xiàn)象不僅將凝析油損失在地層中,而且會堵塞地層滲流通道,降低氣井產(chǎn)能[1-3]。為防止反凝析現(xiàn)象的產(chǎn)生,開采時常常保持地層壓力高于上露點壓力[4]。為此,準確測定凝析氣藏露點壓力,對于保障此類氣藏高效開發(fā)至關(guān)重要。
目前,中國外確定凝析氣藏露點壓力的方法主要有:實驗法、經(jīng)驗公式法、狀態(tài)方程法等。實驗法通常采用恒質(zhì)膨脹(CCE)或定容衰竭(CVD)方法測定露點壓力[5],實驗測試成本較高、耗時耗力;Nemeth等[6]基于多變量回歸,提出了關(guān)于流體摩爾組成、氣藏溫度、C7+分子量、C7+相對密度的露點壓力關(guān)聯(lián)式,但經(jīng)驗?zāi)P推者m性相對較差,泛化能力較弱;Elsharkawy等[7]提出了采用Soave R K(SRK)狀態(tài)方程和Peng-Robinson(PR)狀態(tài)方程進行凝析氣藏露點壓力計算,并對比了兩個模型的預(yù)測精度,但熱力學模型需要進行各組分的二元系數(shù)擬合,且求解收斂性存在一定的問題;隨著人工智能技術(shù)的發(fā)展,如誤差反向傳播(BP)和徑向基函數(shù)(RBF)等人工神經(jīng)網(wǎng)絡(luò)和基因表達式編程(GEP)等已成功運用于凝析氣藏露點壓力預(yù)測,胡世強等[8]利用BP神經(jīng)網(wǎng)絡(luò)預(yù)測了凝析氣藏露點壓力,Najafi-Marghmaleki等[9]將遺傳算法(GA)和RBF結(jié)合,建立了GA-RBF露點壓力預(yù)測模型,并同其他模型進行了精度對比,人工神經(jīng)網(wǎng)絡(luò)雖能進行復(fù)雜的非線性回歸,但其調(diào)參工作量較大;Ahmadi等[10]基于GEP提出了一種簡便、智能,能夠更加準確地預(yù)測露點壓力的模型。
為此,采用GA算法和最小二乘支持向量機(LSSVM)相結(jié)合的方法建立了一種基于機器學習的凝析氣藏露點壓力預(yù)測模型(GA-LSSVM),并與BP和RBF人工神經(jīng)網(wǎng)絡(luò)方法進行預(yù)測精度對比。在皮爾遜關(guān)聯(lián)性分析的基礎(chǔ)上,上述模型均選取氣藏溫度、(N2+CO2、C1、C2~C6、C7+)摩爾分數(shù)、C7+相對分子質(zhì)量、C7+相對密度和氣油比作為自變量,露點壓力為因變量。采用公開發(fā)表的34組露點壓力數(shù)據(jù)進行模型優(yōu)化,然后對15組實測露點壓力數(shù)據(jù)進行預(yù)測。
LSSVM是一種新型機器學習算法[11],其在傳統(tǒng)支持向量機SVM基礎(chǔ)上,將二次規(guī)劃問題中的不等式約束改為等式約束,極大地方便了求解過程,克服了數(shù)據(jù)集粗糙、數(shù)據(jù)集波動性大等問題造成的異常回歸,能有效避免BP神經(jīng)網(wǎng)絡(luò)等方法中出現(xiàn)的局部最優(yōu)等問題。
LSSVM回歸的基本思想是通過一個非線性映射將低維空間的非線性回歸問題轉(zhuǎn)為高維特征空間的線性回歸問題,給定一個訓練集(xi,yi)(i=1,2,…,l),LSSVM的回歸函數(shù)為
f(x)=[ω,φ(x)]+b
(1)
式(1)中:ω是權(quán)向量;φ(x)是從輸入空間到高維特征空間的非線性映;b是一個偏量。
根據(jù)結(jié)構(gòu)風險最小化原則,LSSVM的優(yōu)化目標可表示為
(2)
引入Lagrange乘子αi,則式(2)對偶問題的Lagrange多項式為
(3)
將式(3)代入Karush-Kuhn-Tucker條件可得:
(4)
從而求解的優(yōu)化問題可以轉(zhuǎn)化為求解式(5)中的線性方程組問題。
(5)
式(5)中:I=[1,2,…,l]T;α=[α1,α2,…,αl]T,b=[b1,b2,…,bl]T;y=[y1,y2,…,yl]T,A=ZZT+γ-1I,Z=[φ(x1),φ(x2),…,φ(xl)]T。
最終,LSSVM回歸模型變?yōu)?/p>
(6)
式(6)中:K(xi,x)是LSSVM的核函數(shù),常用徑向基函數(shù)表述:
(7)
根據(jù)上述LSSVM原理,在給定樣本以及核函數(shù)的條件下,LSSVM的性能主要受懲罰因子γ和核參數(shù)σ2的影響。因此,為獲取參數(shù)γ和σ2的全局最優(yōu)解,采用遺傳算法進行參數(shù)優(yōu)化。
GA算法[12]是由美國密歇根大學的Holland于1975年提出的一種模擬生物進化論的自然選擇和生物遺傳的優(yōu)化技術(shù),是一種高度并行、自適應(yīng)和全局性的概率搜索算法。GA求解問題的核心過程包括:編碼(二進制)、遺傳操作(選擇、交叉、變異)、適應(yīng)度函數(shù)。首先對優(yōu)化參數(shù)進行二進制編碼,將解空間轉(zhuǎn)換成染色體空間;設(shè)定進化代數(shù)、個體長度、種群大小等初始群體參數(shù);確定合適的適應(yīng)度函數(shù),計算群體中個體的適應(yīng)度;然后對種群進行遺傳算子操作,如選擇、交叉和變異,經(jīng)過迭代計算,使種群不斷向最優(yōu)方向進化,從而得到最優(yōu)解[13]。由于LSSVM模型需要優(yōu)化的參數(shù)有兩個(懲罰因子γ,核參數(shù)σ2),所以種群維數(shù)為2,GA其他設(shè)定參數(shù)如表1所示。
表1 GA算法初始參數(shù)設(shè)定Table 1 Initial parameter setting of GA algorithm
GA-LSSVM、BP和RBF模型的程序編程均采用MATLAB 2016a軟件,GA-LSSVM模型的建立需要結(jié)合LSSVM工具箱,將LSSVM算法嵌入GA算法進行擴展編程。根據(jù)設(shè)定的步長依次迭代,獲取最優(yōu)模型參數(shù),然后在此基礎(chǔ)上,完成模型的預(yù)測工作。
選取已公開發(fā)表的34組凝析氣藏露點壓力實驗數(shù)據(jù)[14]分別對GA-LSSVM、BP和RBF模型進行參數(shù)優(yōu)化,模型訓練數(shù)據(jù)如表2所示。
表2 凝析氣藏露點壓力實驗數(shù)據(jù)Table 2 Experimental data of dew point pressure in condensate gas reservoirs
續(xù)表2
由于實驗數(shù)據(jù)級差較大,為加速模型訓練速度,對所有數(shù)據(jù)采用歸一化函數(shù)進行預(yù)處理:
(8)
式(8)中:x為變量的值;xmin為該變量中的最小值;xmax為該變量中的最大值。
在GA-LSSVM露點壓力模型輸入變量的選擇問題上,利用IBM SPSS Statistics 23分析軟件,采用皮爾遜(Pearson)雙變量分析法,探究了各自變量對露點壓力的影響排序(圖1)。
①為氣藏溫度;②、③、④、⑤分別為NO2+CO2、C1、C2~C6、C7摩爾分數(shù);⑥、⑦分別為C7+相對分子質(zhì)量和相對密度;⑧為油氣比圖1 露點壓力影響因素分析Fig.1 Affecting factors analysis of dew point pressure
由圖1可知,C2~C6、C7+摩爾分數(shù)、C7+相對分子質(zhì)量、C7+相對密度與露點壓力為正相關(guān),其余變量為負相關(guān)。從分析可知,由于N2+CO2為非烴組分,且在凝析氣中含量較低,對露點壓力的影響程度較小。雖然凝析氣流體的主要成分為甲烷,但“+”組分性質(zhì)(摩爾組成、相對分子質(zhì)量和相對密度)對露點壓力有很大影響。為了更全面地考慮自變量對露點壓力的影響,將選取氣藏溫度、(N2+CO2、C1、C2~C6、C7+)摩爾分數(shù)、C7+相對分子質(zhì)量、C7+相對密度和氣油比,8個變量作為GA-LSSVM模型的輸入變量,露點壓力為輸出變量。其中:氣藏溫度為353.75~412.05 K,(N2+CO2、C1、C2~C6、C7+)摩爾分數(shù)分別為1.03%~14.96%、68.55%~94.55%、1.17%~24.87%、0.59%~9.84%,C7+相對分子質(zhì)量為120~274,C7+相對密度為0.709~0.83,氣油比為848~46 023 m3/m3。
首先,定義絕對相對誤差(ARD)和平均絕對相對誤差(AARD):
(9)
(10)
由于BP和RBF為較成熟的人工神經(jīng)網(wǎng)絡(luò)模型,具體的參數(shù)優(yōu)化步驟此處不再贅述。GA-LSSVM露點壓力預(yù)測模型的流程圖如圖2所示,優(yōu)化后所有模型的最優(yōu)參數(shù)如表3所示。
圖2 GA-LSSVM模型計算流程圖Fig.2 Flow chart of GA-LSSVM model
表3 各模型最優(yōu)參數(shù)Table 3 Optimal parameters of each model
GA-LSSVM模型求解步驟如下:①將模型訓練數(shù)據(jù)進行歸一化處理,設(shè)定LSSVM參數(shù)范圍和算法參數(shù);②設(shè)置目標函數(shù)為AARD,初始化GA基本參數(shù),優(yōu)化LSSVM模型的兩參數(shù)(γ,σ2);③計算適應(yīng)度函數(shù),進行全局最優(yōu)解判斷,如果滿足精度條件,則確定最優(yōu)參數(shù),反之進行選擇,交叉,變異,重新迭代計算;④采用優(yōu)化出的(γ,σ2)參數(shù)重啟LSSVM模型,對非樣本實驗數(shù)據(jù)進行預(yù)測。
如圖3所示,GA-LSSVM模型訓練數(shù)據(jù)的預(yù)測值和實驗值均勻分布在45°線附近,訓練數(shù)據(jù)的AARD僅為1.78%,其中最小、最大ARD分別為0.05%和6.93,訓練效果較好。BP和RBF模型的訓練數(shù)據(jù)AARD分別為8.76%和6.10%,最大ARD均超過了20%,其中BP模型的最大ARD為80.78%,說明BP模型對個別數(shù)據(jù)的逼近能力較差。結(jié)果表明:建立GA-LSSVM模型對解決高度非線性的凝析氣藏露點壓力問題有良好的逼近能力,相對傳統(tǒng)的BP和RBF模型有較大提升。
為了進一步表明本文建立的GA-LSSVM露點壓力模型的預(yù)測性能,并與BP和RBF神經(jīng)網(wǎng)絡(luò)模型進行對比,選取除模型訓練數(shù)據(jù)外的15組實測凝析氣藏露點壓力數(shù)據(jù)[14]進行預(yù)測,對比結(jié)果見表4。如圖4所示,GA-LSSVM模型和RBF模型預(yù)測精度明顯高于BP神經(jīng)網(wǎng)絡(luò)模型,兩者預(yù)測數(shù)據(jù)AARD分別為5.84%和7.29%,最大ARD均低于17%,GA-LSSVM模型和RBF模型的預(yù)測值與實驗值基本吻合,證實了該算法具有較好的露點壓力預(yù)測精度。BP神經(jīng)網(wǎng)絡(luò)模型的預(yù)測AARD為14.21%,其中最大ARD為40.64%,預(yù)測效果相對較差。
圖3 各模型訓練數(shù)據(jù)預(yù)測結(jié)果Fig.3 Prediction results of training data of each model
表4 各模型測試數(shù)據(jù)預(yù)測結(jié)果對比Table 4 Comparison of predicted results of test data of each model
圖4 各模型測試數(shù)據(jù)預(yù)測結(jié)果Fig.4 Prediction results of test data for each model
根據(jù)Leverage方法[15],能夠進行實驗數(shù)據(jù)的異常點檢測,同時也能識別預(yù)測模型的有效性和適用范圍,具體計算方法可參考文獻[15]。
帽子矩陣(H)定義為
H=X(XTX)-1XT
(11)
式(11)中:X為二維列矩陣,矩陣行數(shù)取決于數(shù)據(jù)點個數(shù),矩陣第二列為變量個數(shù)。
臨界帽子值(H*)定義為
H*=3(p+1)/n
(12)
式(12)中:p為自變量個數(shù);n為數(shù)據(jù)點個數(shù)。
標準殘差(SR)定義為
(13)
通過上述方法,計算出模型對應(yīng)的H、H*和SR,分別以H、SR為橫縱坐標作出Leverage圖。首先,如果數(shù)據(jù)點位于0≤H≤H*,-3≤SR≤3范圍內(nèi),則說明模型對該數(shù)據(jù)有良好的預(yù)測能力;其次,若數(shù)據(jù)點位于H*≤H,-3≤SR≤3范圍內(nèi),則說明該數(shù)據(jù)超出了模型的適用范圍;最后,若數(shù)據(jù)點SR≤-3或SR≥3(無論H是否小于H*),則定義為異常點,該數(shù)據(jù)實驗值的正確性有待商榷。
圖5 Leverage方法異常點檢測圖Fig.5 Leverage method outlier detection map
如圖5所示,僅有1個數(shù)據(jù)點的標準殘差SR小于-3,界定為異常點。該數(shù)據(jù)點為測試數(shù)據(jù)中實驗值為35.75 MPa的露點壓力,通過分析可知,各模型對該數(shù)據(jù)點的預(yù)測誤差均較大,GA-LSSVM、BP和RBF模型的預(yù)測ARD分別為16.61%、30.88%和11.83%。綜上所述,該點實驗值的正確性有待進一步驗證,其余所有數(shù)據(jù)全部介于0≤H≤H*,-3≤SR≤3范圍內(nèi)。
(1)將GA和LSSVM結(jié)合,運用MATLAB進行編程,建立了一種預(yù)測凝析氣藏露點壓力的新模型(GA-LSSVM模型),同時根據(jù)BP和RBF人工神經(jīng)網(wǎng)絡(luò)方法,建立了相應(yīng)的露點壓力預(yù)測模型。
(2)運用IBM SPSS Statistics 23軟件,采用Pearson雙變量關(guān)聯(lián)性分析,探究露點壓力主力影響因素。最終確定模型的輸入變量為:氣藏溫度、(N2+CO2、C1、C2~C6、C7+)摩爾分數(shù)、C7+相對分子質(zhì)量、C7+相對密度和氣油比。
(3)與BP和RBF模型相比,提出的GA-LSSVM模型AARD僅為2.59%,訓練集和測試集的AARD分別為1.78%、5.84%,所有數(shù)據(jù)AARD為3.02%,精度相對較高,可滿足凝析氣藏工程計算的需要。模型適用范圍如下,氣藏溫度為353.75~412.05 K、(N2+CO2、C1、C2~C6、C7+)摩爾分數(shù)分別為1.03%~14.96%、68.55%~94.55%、1.17%~24.87%、0.59%~9.84%,C7+相對分子質(zhì)量為120~274,C7+相對密度為0.709~0.83,氣油比為848~46 023 m3/m3。
(4)根據(jù)Leverage方法,對所有數(shù)據(jù)進行了異常點檢測,僅有1個數(shù)據(jù)點為異常點,其余所有數(shù)據(jù)全部介于0≤H≤H*,-3≤SR≤3范圍內(nèi)。