鄭雙進(jìn) 程霖 龍震宇 劉洋 赫英狀
1. 長(zhǎng)江大學(xué)石油工程學(xué)院;2. 中國(guó)石油大學(xué)(北京)人工智能學(xué)院;3. 中國(guó)石油西南油氣田分公司川東北氣礦;4. 中國(guó)石化西北油田分公司工程技術(shù)研究院
固井是油氣井建井的重要環(huán)節(jié),也是保證油氣井生產(chǎn)壽命的關(guān)鍵所在[1]。固井質(zhì)量影響因素眾多,受地層條件、井眼狀況、流體性能、固井參數(shù)等多種因素綜合作用,且各因素之間相互制約與關(guān)聯(lián),難以建立多因素條件下的固井質(zhì)量預(yù)測(cè)解析模型[2-3]。國(guó)內(nèi)外學(xué)者應(yīng)用不同方法對(duì)影響固井質(zhì)量的主要因素進(jìn)行了相關(guān)性分析,初步建立了一些固井質(zhì)量評(píng)價(jià)方法。Li Xue等將不同的測(cè)井評(píng)價(jià)方法有機(jī)結(jié)合起來(lái),形成了適用于不同要求的固井質(zhì)量評(píng)價(jià)體系,但評(píng)價(jià)結(jié)果受人為因素影響較大[4];Market等模擬了套管在井中的隨鉆聲波儀器響應(yīng),但未考慮在固井質(zhì)量評(píng)價(jià)方面的應(yīng)用價(jià)值[5];Kinoshita等、Pistre等也進(jìn)行了隨鉆聲波定量評(píng)價(jià)固井質(zhì)量的可行性探索[6];Sun Zhicheng等運(yùn)用模糊評(píng)判和灰色關(guān)聯(lián)理論建立了固井質(zhì)量多因素統(tǒng)計(jì)方法[7];Zhu Yuxi等利用人工神經(jīng)網(wǎng)絡(luò)算法建立數(shù)學(xué)模型進(jìn)行固井質(zhì)量預(yù)測(cè),應(yīng)用結(jié)果表明,預(yù)測(cè)值與實(shí)際值還存在一定差距[8];Ni Hongmei 等建立了基于人工神經(jīng)網(wǎng)絡(luò)的固井質(zhì)量預(yù)測(cè)方法,預(yù)測(cè)精度較高,但耗時(shí)較長(zhǎng)[9]。
近年來(lái),SVR被證實(shí)是一種可靠的機(jī)器學(xué)習(xí)算法,它克服了人工神經(jīng)網(wǎng)絡(luò)的諸多缺點(diǎn),因而在科學(xué)與工程的多個(gè)領(lǐng)域得到了大量應(yīng)用[10]?;谖鞅庇吞镯槺眳^(qū)塊歷史固井?dāng)?shù)據(jù),在固井質(zhì)量影響因素分析的基礎(chǔ)上,建立并優(yōu)化得到了基于GA-SVR算法的固井質(zhì)量預(yù)測(cè)方法。
西北油田順北區(qū)塊井深大,封固段長(zhǎng),井底溫度高,環(huán)空間隙小,固井施工過(guò)程中易造成環(huán)空憋堵,引發(fā)井下漏失,水平井套管難以居中,頂替排量受限,固井質(zhì)量難以保證。經(jīng)多年經(jīng)驗(yàn)總結(jié)及質(zhì)量分析,固井質(zhì)量主要影響因素有井斜角、狗腿度、井徑擴(kuò)大率、套管居中度、注漿返速、替漿返速及水泥漿接觸時(shí)間:(1)井斜角較大情況下,套管居中不好,或套管在狗腿度較大井況下易貼邊,巖屑及鉆井液難以被有效驅(qū)離,同時(shí)易產(chǎn)生繞流影響固井質(zhì)量;(2)注漿返速、替漿返速及水泥漿接觸時(shí)間是影響頂替效率的關(guān)鍵,其直接影響固井流體對(duì)鉆井液的驅(qū)替效率,進(jìn)而影響固井質(zhì)量;(3)井徑擴(kuò)大率直接影響注漿返速和替漿返速,間接影響固井質(zhì)量。
支持向量機(jī)SVM(Support Vector Machines)的主要思想是結(jié)構(gòu)風(fēng)險(xiǎn)最小化原則和統(tǒng)計(jì)學(xué)習(xí)理論VC維理論[11]。SVM算法在解決小樣本、非線性回歸模型中表現(xiàn)出優(yōu)勢(shì),在很大程度上克服了“維數(shù)災(zāi)難”和“過(guò)學(xué)習(xí)”等問(wèn)題[12]。
以二分類為例,設(shè)樣本集合為{(x1,y1),(x2,y2),···,(xi,yi)},(i=1,2,···,m)。在樣本空間,最優(yōu)分界面線性方程為
式中,ω為法向量; ωT為 法向量的轉(zhuǎn)置;b為位移項(xiàng)。要使超平面(ω,b)能對(duì)訓(xùn)練樣本正常分類,則
y(x)=sgn(ωT·x+b)
由此可得決策函數(shù) ,為了最大化間隔,可化為二次規(guī)劃問(wèn)題
式中,s .t.是subject to的縮寫(xiě),意為受約束。引入Lagrange函數(shù)
求其對(duì)偶問(wèn)題
解出α,進(jìn)而求出ω與b即可得到模型為
其中,αi滿足卡羅需-庫(kù)恩-塔克條件KKT(Karush-Kuhn-Tucker)
由于一些點(diǎn)出現(xiàn)在2條線的間隔內(nèi)部,不滿足函數(shù)間隔的約束條件,故引入松弛變量εi用以表征該樣本不滿足約束的程度,則有
式中,εi為松弛變量;C為懲罰系數(shù),C>0。
若遇線性不可分情況,可將樣本映射到一個(gè)更高維的特征空間,使其在這個(gè)特征空間內(nèi)線性可分。在特征空間中劃分最優(yōu)超平面對(duì)應(yīng)模型表示為
最后,可采用“核技巧”,引入核函數(shù)避免式(9)中的維數(shù)災(zāi)難,常用核函數(shù)有線性、多項(xiàng)式和高斯函數(shù)(也稱為徑向基函數(shù)RBF),最終得到SVM非線性回歸模型的表達(dá)式為
通過(guò)研究可知,基于SVM模型的固井質(zhì)量預(yù)測(cè)方法,實(shí)質(zhì)上是利用SVM中的算法SVR(Support Vector Regression)構(gòu)建一個(gè)誤差范圍,將落在誤差范圍內(nèi)的預(yù)測(cè)值視為預(yù)測(cè)正確,與SVM模型思路(到“超平面”最近樣本點(diǎn)的間隔最大,如圖1所示)不同,SVR則是要使到“超平面”最遠(yuǎn)樣本點(diǎn)的間隔最小。
圖1 最優(yōu)超平面示意圖Fig. 1 Sketch of optimal hyperplane
在模型訓(xùn)練中,筆者從順北油田某井獲取了48段歷史固井?dāng)?shù)據(jù),每段包括固井質(zhì)量(CBL聲幅值)及其影響因素:井斜、狗腿度、井徑擴(kuò)大率、套管居中度、注漿平均返速、替漿平均返速及水泥漿接觸時(shí)間,各種因素之間相互作用、相互抑制或相互依賴,通過(guò)代入模型進(jìn)行訓(xùn)練后評(píng)估,得到了準(zhǔn)確的固井質(zhì)量預(yù)測(cè)模型。
將48組原始數(shù)據(jù)使用標(biāo)準(zhǔn)化方法中的maxmin方法進(jìn)行處理,防止原數(shù)據(jù)集的數(shù)據(jù)維度過(guò)大對(duì)預(yù)測(cè)結(jié)果造成影響,如式(11)所示。采用均方根誤差(RMSE)和平均相對(duì)誤差(MRE)對(duì)固井質(zhì)量的預(yù)測(cè)結(jié)果進(jìn)行評(píng)價(jià),以此驗(yàn)證模型的準(zhǔn)確性,如式(12)、式(13)所示。
式中,oi為固井質(zhì)量的真實(shí)值;pi為固井質(zhì)量的預(yù)測(cè)值;n為預(yù)測(cè)數(shù)據(jù)的組數(shù)。
以井斜、狗腿度、井徑擴(kuò)大率、套管居中度、注漿平均返速、替漿平均返速、水泥漿接觸時(shí)間為輸入量,以固井質(zhì)量為輸出量,基于SVR建立固井質(zhì)量預(yù)測(cè)模型。
由Python中的Pandas方法從原始數(shù)據(jù)集中劃分出建立模型所需要的訓(xùn)練數(shù)據(jù)以及評(píng)估模型精度所需的測(cè)試數(shù)據(jù),劃分比例為5∶1,將其中的40組作為訓(xùn)練數(shù)據(jù),剩下的8組作為預(yù)測(cè)數(shù)據(jù)。處理后的數(shù)據(jù)利用Python中的Sklearn方法,使用默認(rèn)的SVR模型進(jìn)行建模,其中,核函數(shù)類型Kernel為Rbf核函數(shù),正則化參數(shù)Lambda設(shè)為1,核函數(shù)參數(shù)Gamma設(shè)為1/7。劃分的測(cè)試集及其預(yù)測(cè)結(jié)果的相對(duì)誤差見(jiàn)表1,預(yù)測(cè)時(shí)間小于1 s。由表1可見(jiàn),SVR預(yù)測(cè)固井質(zhì)量與實(shí)際固井質(zhì)量的最大相對(duì)誤差為23.37%,最小相對(duì)誤差1.03%。通過(guò)計(jì)算得出,平均相對(duì)誤差MRE為9.80%,均方根誤差RMSE為2.851,可對(duì)SVR參數(shù)進(jìn)行優(yōu)化,以期得到精度更高的模型。
表1 測(cè)試集及模型預(yù)測(cè)評(píng)價(jià)Table 1 Test set and model prediction evaluation
對(duì)于SVR算法而言,其懲罰系數(shù)C和核函數(shù)參數(shù)g的選擇將直接影響到模型預(yù)測(cè)誤差,前人也不斷進(jìn)行SVR回歸研究[13],對(duì)SVR參數(shù)的合理設(shè)置提出了一些意見(jiàn),但仍然存在很多矛盾。通過(guò)實(shí)際研究,為縮小SVR預(yù)測(cè)誤差,首先使用網(wǎng)格搜索法[14]、貝葉斯算法[15]、遺傳算法[16]對(duì)參數(shù)C和g進(jìn)行尋優(yōu),然后再用優(yōu)化后的SVR算法對(duì)相關(guān)數(shù)據(jù)進(jìn)行訓(xùn)練和預(yù)測(cè)。研究中由Python指定Rbf作為核函數(shù),指定懲罰系數(shù)C的范圍為0.1~100,核函數(shù)參數(shù)g的范圍為0.01~1。
3.2.1 網(wǎng)格搜索法優(yōu)化SVR模型(GS-SVR)
網(wǎng)格搜索法(Grid Search, GS)[17]是全局優(yōu)化算法中最簡(jiǎn)易的方法之一,是一種通過(guò)遍歷給定的參數(shù)組合來(lái)優(yōu)化模型表現(xiàn)的學(xué)習(xí)方法,其原理是先確定模型搜索范圍,將待搜索參數(shù)的可能取值按照一定步長(zhǎng)進(jìn)行分離,生成“網(wǎng)格”,然后將對(duì)每個(gè)網(wǎng)格節(jié)點(diǎn)進(jìn)行逐次搜索,運(yùn)用目標(biāo)函數(shù)進(jìn)行判斷,根據(jù)目標(biāo)函數(shù)值調(diào)整搜索范圍和步長(zhǎng),直至搜索出最優(yōu)解。網(wǎng)格搜索法的優(yōu)化流程如圖2所示。
圖2 網(wǎng)格搜索法流程Fig. 2 Process of grid search method
3.2.2 貝葉斯算法優(yōu)化SVR模型(BOA-SVR)
貝葉斯優(yōu)化算法(Bayesian Optimization Algori thm, BOA)[18]的思路主要是根據(jù)先驗(yàn)知識(shí)對(duì)每次采樣點(diǎn)進(jìn)行測(cè)試并更新先驗(yàn)分布,最終找出全局最優(yōu)值。假設(shè)已經(jīng)存在一個(gè)樣本S,其中包括t個(gè)參數(shù)組和對(duì)應(yīng)目標(biāo)函數(shù)值,首先通過(guò)高斯過(guò)程計(jì)算其后驗(yàn)概率分布Dt,即聯(lián)合正態(tài)分布,然后選擇函數(shù)a(x|Dt),采集一個(gè)新參數(shù)值xt+1,使其滿足式(14)
即在分布中Dt取值能使新的估計(jì)目標(biāo)函數(shù)值ft+1(x)與 當(dāng)前最大目標(biāo)函數(shù)值fbest差值的期望最大,然后用這一新參數(shù)值計(jì)算新的實(shí)際目標(biāo)函數(shù)值,并相應(yīng)更新高斯過(guò)程,得到新的后驗(yàn)分布Dt,之后重復(fù)前述過(guò)程不斷進(jìn)行優(yōu)化,直到滿足停止條件。貝葉斯優(yōu)化算法的優(yōu)化流程如圖3所示。
圖3 貝葉斯優(yōu)化算法流程Fig. 3 Process of Bayesian optimization algorithm
利用網(wǎng)格搜索法優(yōu)化SVR模型,優(yōu)化后的最優(yōu)參數(shù)為懲罰系數(shù)C=25.10,核函數(shù)參數(shù)g=0.13,優(yōu)化結(jié)果及模型評(píng)價(jià)見(jiàn)表2,預(yù)測(cè)時(shí)間為44.8 s。由表2數(shù)據(jù)計(jì)算可得,GS-SVR預(yù)測(cè)固井質(zhì)量與實(shí)際固井質(zhì)量的平均相對(duì)誤差MSE為8.46%,均方根誤差RMSE為2.653,有一定的優(yōu)化效果。
表2 網(wǎng)格搜索法優(yōu)化結(jié)果及模型評(píng)價(jià)Table 2 Optimization result and model evaluation of grid search method
利用貝葉斯算法優(yōu)化SVR模型,優(yōu)化后的最優(yōu)參數(shù)為懲罰系數(shù)C=47.38,核函數(shù)參數(shù)g=0.07,優(yōu)化結(jié)果及模型評(píng)價(jià)見(jiàn)表3,預(yù)測(cè)時(shí)間為19.8 s。由表3數(shù)據(jù)計(jì)算得出,BOA-SVR預(yù)測(cè)固井質(zhì)量與實(shí)際固井質(zhì)量的平均相對(duì)誤差MSE為8.00%,均方根誤差RMSE為2.533,優(yōu)化效果較好。
表3 貝葉斯算法優(yōu)化結(jié)果及模型評(píng)價(jià)Table 3 Optimization result and model evaluation of Bayesian algorithm
3.2.3 遺傳算法優(yōu)化SVR模型(GA-SVR)
遺傳算法(Genetic Algorithm, GA)[19]是基于自然界遺傳機(jī)制和生物進(jìn)化論的一種高效隨機(jī)搜索和優(yōu)化方法。GA具有全局優(yōu)化性能,運(yùn)用在SVM中能夠?qū)ふ覅?shù)C和g最合適的值,使得SVM達(dá)到最優(yōu)配置,從而更加準(zhǔn)確地預(yù)測(cè)固井質(zhì)量。遺傳算法的優(yōu)化流程如圖4所示。
圖4 遺傳算法流程Fig. 4 Process of genetic algorithm
在Python中運(yùn)行GA-SVR代碼,利用遺傳算法優(yōu)化SVR模型,優(yōu)化后的最優(yōu)參數(shù)為懲罰系數(shù)C=85.08,核函數(shù)參數(shù)g=0.02,優(yōu)化結(jié)果及模型評(píng)價(jià)見(jiàn)表4,預(yù)測(cè)時(shí)間為 36.3 s。由表4數(shù)據(jù)計(jì)算得出,利用GA優(yōu)化后構(gòu)建的SVR模型比SVR、GS-SVR和BOA-SVR預(yù)測(cè)精度更高,平均相對(duì)誤差MSE為7.30%,均方根誤差RMSE為2.318,優(yōu)化效果最好。
表4 遺傳算法的優(yōu)化結(jié)果及模型評(píng)價(jià)Table 4 Optimization result and model evaluation of genetic algorithm
基于SVR建立了固井質(zhì)量預(yù)測(cè)算法,并對(duì)SVR的懲罰系數(shù)C和核函數(shù)參數(shù)g進(jìn)行優(yōu)化,參數(shù)優(yōu)選過(guò)程使用Python編程進(jìn)行,采用GA、GS、BOA共3種參數(shù)優(yōu)選法。4種算法預(yù)測(cè)結(jié)果對(duì)比見(jiàn)表5。由表5可知,GA-SVR算法預(yù)測(cè)結(jié)果的平均相對(duì)誤差為7.30%,均方根誤差RMSE為2.318,遠(yuǎn)小于SVR、GS-SVR、BOA-SVR,表明該算法更加適合于固井質(zhì)量預(yù)測(cè),根據(jù)表5的時(shí)間可分析得出,GA-SVR算法消耗時(shí)間較長(zhǎng),說(shuō)明該算法相比于SVR、BOA-SVR模型更加復(fù)雜,考慮因素更全面。
表5 模型優(yōu)化前后評(píng)價(jià)Table 5 Model evaluation before and after the optimization
實(shí)例驗(yàn)證采用皮爾遜相關(guān)系數(shù)法,它是一種度量2個(gè)變量X和Y之間相關(guān)程度的方法,X和Y之間的皮爾遜相關(guān)系數(shù)定義為兩者的協(xié)方差和標(biāo)準(zhǔn)差的商,如式(15)。皮爾遜相關(guān)系數(shù)是一個(gè)介于?1和1之間的值。其中,1表示變量完全正相關(guān),0表示無(wú)關(guān),?1表示完全負(fù)相關(guān)[20]。
式(15)定義了總體相關(guān)系數(shù),估算樣本的協(xié)方差和標(biāo)準(zhǔn)差,計(jì)算方法為順北區(qū)塊某井完鉆井深8 725.00 m,最大井斜角86.01°,最大全角變化率18.38°/30 m,最大井徑擴(kuò)大率12%,鉆井液密度1.68 g/cm3,塑性黏度36 m Pa·s。針對(duì)該井?139.7 mm尾管固井,由于采用無(wú)接箍鐓粗直連扣套管,不能安放扶正器,套管緊貼下部井壁,居中度基本為0;設(shè)計(jì)1.05 g/cm3的驅(qū)油沖洗液7.0 m3,1.75 g/cm3加重隔離液4.0 m3,1.88 g/cm3水泥漿11.0 m3,設(shè)計(jì)注替排量為0.6~0.8 m3/min。該井整個(gè)封固段CBL測(cè)井聲幅值在10%~30%之間,其中7 850~8 000 m固井質(zhì)量為優(yōu)秀。將該井固井?dāng)?shù)據(jù)運(yùn)用GA-SVR算法進(jìn)行固井質(zhì)量預(yù)測(cè),預(yù)測(cè)值與實(shí)際值對(duì)比如圖5所示,皮爾遜相關(guān)系數(shù)r=0.9781,GA-SVR算法預(yù)測(cè)值與實(shí)際固井質(zhì)量值之間具有很好的相關(guān)性。
圖5 固井質(zhì)量實(shí)際值與預(yù)測(cè)值的相關(guān)性對(duì)比Fig. 5 Correlation between actual value and predicted value of cementing quality
為了進(jìn)一步分析GA-SVR模型預(yù)測(cè)值與固井質(zhì)量實(shí)際值之間的偏差大小,針對(duì)模型預(yù)測(cè)結(jié)果的相對(duì)誤差進(jìn)行了分析,分析結(jié)果見(jiàn)表6。第6組數(shù)據(jù)的預(yù)測(cè)結(jié)果相對(duì)誤差最大,為9.16%;第1組數(shù)據(jù)的預(yù)測(cè)結(jié)果相對(duì)誤差最小,為1.27%,大部分組數(shù)的預(yù)測(cè)誤差集中在5.5%附近,平均相對(duì)誤差MRE為5.27%,平均均方根誤差RMSE為1.166。研究結(jié)果表明,GA-SV算法預(yù)測(cè)值與固井質(zhì)量實(shí)際值的匹配程度較高,誤差較小,可用于順北區(qū)塊固井質(zhì)量預(yù)測(cè)。
表6 GA-SVR模型預(yù)測(cè)固井質(zhì)量相對(duì)誤差Table 6 Relative error of cementing quality predicted by GA-SVR model
(1)固井質(zhì)量受地層條件、井眼狀況、流體性能、固井參數(shù)等多種因素綜合作用,并且各因素之間相互制約與關(guān)聯(lián),基于固井?dāng)?shù)據(jù)量級(jí)及特征建立了基于支持向量回歸(SVR)的固井質(zhì)量預(yù)測(cè)模型。
(2)運(yùn)用網(wǎng)格搜索法(GS)、貝葉斯優(yōu)化算法(BOA)、遺傳算法(GA)進(jìn)行優(yōu)化,結(jié)合順北區(qū)塊歷史固井?dāng)?shù)據(jù),分別運(yùn)用SVR、GS-SVR、BOA-SVR、GA-SVR 共4種算法對(duì)固井質(zhì)量進(jìn)行預(yù)測(cè),預(yù)測(cè)結(jié)果表明GA-SVR算法精度較高,可用于順北區(qū)塊固井質(zhì)量預(yù)測(cè),有助于該區(qū)塊固井方案優(yōu)化。
(3)在使用SVR算法的過(guò)程中,懲罰系數(shù)C、核函數(shù)系數(shù)g的選擇會(huì)對(duì)數(shù)據(jù)學(xué)習(xí)和預(yù)測(cè)結(jié)果產(chǎn)生較大的影響,如何選擇系數(shù)是固井質(zhì)量預(yù)測(cè)的關(guān)鍵。