李 琪,屈峰濤,何璟彬,王六鵬,陳超凡
(1.西安石油大學(xué) 石油工程學(xué)院,陜西 西安 710065;2.川慶鉆探工程有限公司 長(zhǎng)慶鉆井總公司,陜西 西安 710021;3.中國(guó)石化江蘇石油勘探局 技術(shù)監(jiān)督中心,江蘇 揚(yáng)州 225200)
提高鉆井效率、降低鉆井成本是鉆井工程領(lǐng)域的重要研究?jī)?nèi)容之一。機(jī)械鉆速是評(píng)價(jià)鉆井效率的重要指標(biāo),而機(jī)械鉆速的影響因素眾多,主要可分為兩類(lèi):一類(lèi)是不可控因素,主要表征地層性質(zhì)及巖石物性,如巖石類(lèi)型、巖石可鉆性、泥質(zhì)含量、孔隙體積等;另一類(lèi)是可控因素,主要有鉆進(jìn)過(guò)程的鉆井液參數(shù)及作業(yè)參數(shù),如鉆井液密度、黏度、排量及鉆壓、轉(zhuǎn)速、扭矩等[1-2]。精確建立機(jī)械鉆速與影響因素之間的模型對(duì)預(yù)測(cè)機(jī)械鉆速、優(yōu)化工程參數(shù)至關(guān)重要。
國(guó)內(nèi)外眾多學(xué)者自上世紀(jì)五十年代以來(lái)建立了不同的機(jī)械鉆速預(yù)測(cè)數(shù)學(xué)模型,按研究進(jìn)展歸為4個(gè)主要階段:(1)現(xiàn)場(chǎng)數(shù)據(jù)統(tǒng)計(jì)回歸預(yù)測(cè)模型。Maldia和Young F.S等[3-4]考慮巖石機(jī)械性質(zhì)、鉆頭類(lèi)型、鉆壓、轉(zhuǎn)速、牙齒磨損、水利參數(shù)等因素影響,利用多元回歸分析建立機(jī)械鉆速方程。(2)考慮所鉆地層性質(zhì)和鉆頭結(jié)構(gòu)的機(jī)械鉆速預(yù)測(cè)模型。Maurer和Warren等[5-6]用可鉆性強(qiáng)度S來(lái)反應(yīng)巖石性質(zhì),并以實(shí)驗(yàn)為依據(jù)建立機(jī)械鉆速預(yù)測(cè)方程,但由于巖石性質(zhì)參數(shù)具有較大的離散性,限制了模型在復(fù)雜結(jié)構(gòu)井的推廣應(yīng)用。(3)計(jì)算機(jī)仿真預(yù)測(cè)模型。在實(shí)驗(yàn)數(shù)據(jù)的基礎(chǔ)上,應(yīng)用計(jì)算機(jī)仿真來(lái)模擬鉆頭對(duì)巖石沖擊、剪切破碎的過(guò)程,在沖擊回旋機(jī)械鉆速預(yù)測(cè)和鉆進(jìn)過(guò)程中的鉆柱震蕩等工作中應(yīng)用效果良好[7-8]。(4)數(shù)據(jù)驅(qū)動(dòng)的智能機(jī)械鉆速預(yù)測(cè)模型。由于鉆井環(huán)境復(fù)雜,鉆井參數(shù)之間非線(xiàn)性關(guān)系明顯,簡(jiǎn)單的數(shù)學(xué)模型很難實(shí)現(xiàn)精準(zhǔn)的機(jī)械鉆速預(yù)測(cè),因此,該階段研究以現(xiàn)場(chǎng)數(shù)據(jù)為基礎(chǔ),應(yīng)用智能算法對(duì)數(shù)據(jù)隱性關(guān)系進(jìn)行挖掘,構(gòu)建智能模型,實(shí)現(xiàn)機(jī)械鉆速預(yù)測(cè)[9]。
目前,數(shù)據(jù)驅(qū)動(dòng)的SVR(Support Vactor Regression)、ELM(Extreme Learning Machine)、ANN(Approximate Nearest Neighbor)、GBDT(Gradient Boosting Decision Tree)等算法在機(jī)械鉆速預(yù)測(cè)的智能模型建立中得到了廣泛的應(yīng)用[10-13]。但是,由于這些算法很容易陷入局部最優(yōu),且預(yù)測(cè)結(jié)果穩(wěn)定性差,因此,需要開(kāi)發(fā)基于混合算法的機(jī)械鉆速預(yù)測(cè)模型。本文提出一種基于BAS(Beetle Antennae Search)優(yōu)化的BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)機(jī)械鉆速預(yù)測(cè)模型,該模型以現(xiàn)場(chǎng)實(shí)測(cè)數(shù)據(jù)為基礎(chǔ),采用小波濾波方法對(duì)實(shí)測(cè)數(shù)據(jù)進(jìn)行降噪處理;應(yīng)用互信息進(jìn)行關(guān)聯(lián)分析,確定模型輸入?yún)?shù)。
圖1為BP神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。BP神經(jīng)網(wǎng)絡(luò)一般由1個(gè)輸入層、1個(gè)或多個(gè)隱含層和1個(gè)輸出層組成。
圖1 BP神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)
BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過(guò)程主要包括信息的正向傳遞和誤差的反向傳播,其學(xué)習(xí)規(guī)則是使用最速下降法不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值使得網(wǎng)絡(luò)誤差最小,最終達(dá)到滿(mǎn)意的預(yù)測(cè)結(jié)果[14]。
天牛須搜索算法是基于天牛覓食原理而開(kāi)發(fā)的一種適用于多目標(biāo)函數(shù)優(yōu)化的新算法[15]。天牛在覓食過(guò)程中,根據(jù)左、右兩須接收食物氣味信號(hào)的強(qiáng)弱差異來(lái)判斷食物位置,逐漸優(yōu)化自身飛行方向,直至找到食物的位置[15-16]。
BAS算法具體步驟如下:
①創(chuàng)建天牛須朝向的隨機(jī)向量并作歸一化處理
(1)
式中:rands()為隨機(jī)函數(shù);n為空間維度。
②創(chuàng)建天牛左、右兩須的空間坐標(biāo)
(2)
式中:xlt、xrt分別為天牛左、右兩須在第t次迭代時(shí)的位置坐標(biāo);xt為在第t次迭代時(shí)的天牛質(zhì)心位置;d為兩須之間的距離。其中,xt,xlt,xrt均為n維向量。
③根據(jù)適應(yīng)度函數(shù)f(x)判斷左、右兩須的氣味信號(hào)強(qiáng)度,即f(xlt)和f(xrt)的值:
(3)
式中:m為訓(xùn)練集樣本數(shù);ysim(i)為第i個(gè)樣本的模型輸出值;yi為第i個(gè)樣本的真實(shí)值。
④迭代更新天牛質(zhì)心位置
xt+1=xt-δt·b·sign(f(xrt)-f(xlt))。
(4)
式中:δt為第t次迭代的步長(zhǎng)因子;sign()為符號(hào)函數(shù)。
BP神經(jīng)網(wǎng)絡(luò)在訓(xùn)練過(guò)程中完全依賴(lài)誤差函數(shù)實(shí)現(xiàn)對(duì)隨機(jī)生成的初始權(quán)值和閾值的調(diào)整,權(quán)值、閾值選擇不當(dāng)將對(duì)結(jié)果產(chǎn)生極大影響[17]。很多研究表明,通過(guò)優(yōu)化算法對(duì)初始權(quán)值、閾值進(jìn)行優(yōu)化,將極大提升網(wǎng)絡(luò)性能,避免隨機(jī)初始化造成網(wǎng)絡(luò)陷入局部最優(yōu)。本文采用BAS優(yōu)化算法,將BP神經(jīng)網(wǎng)絡(luò)的權(quán)值、閾值集合設(shè)為搜索空間,尋找最優(yōu)的初始權(quán)值和閾值,并將其應(yīng)用于構(gòu)建好的BP神經(jīng)網(wǎng)絡(luò)中,完成模型訓(xùn)練。
基于BAS優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型流程如圖2所示。具體步驟如下:
圖2 基于BAS優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型流程圖
Step1 創(chuàng)建BP神經(jīng)網(wǎng)絡(luò),并初始化網(wǎng)絡(luò)參數(shù)。
Step2 創(chuàng)建天牛須朝向隨機(jī)向量,確定搜索空間維度,設(shè)搜索空間維度為k,
k=I·H+O·H+H+O。
(5)
式中:I為輸入層神經(jīng)元個(gè)數(shù);H為隱含層神經(jīng)元個(gè)數(shù);O為輸出層神經(jīng)元個(gè)數(shù)。
Step3 設(shè)置步長(zhǎng)因子j,用來(lái)控制天牛的區(qū)域搜索能力。
Step4 確定適應(yīng)度函數(shù)。
Step5 天牛質(zhì)心位置初始化,初始參數(shù)取[-1,1]的隨機(jī)數(shù)作為天牛須算法的初始解,并將其保存于bestX中。
x=rands(k,1)。
(6)
式中:x為天牛的質(zhì)心位置,k為一維列向量。
Step6 計(jì)算初始天牛質(zhì)心位置的適應(yīng)度函數(shù)值,并將其保存于bestY中。
Step7 根據(jù)式(4)更新天牛位置,進(jìn)行迭代實(shí)驗(yàn)。
Step8 判斷迭代是否結(jié)束。根據(jù)適應(yīng)度函數(shù)值是否達(dá)到預(yù)先設(shè)定的精度(goal1=0.001)或迭代次數(shù)是否達(dá)到最大次數(shù)(n1=100)來(lái)確定迭代是否停止,迭代結(jié)束則輸出最優(yōu)權(quán)值和閾值。
Step9 新建網(wǎng)絡(luò)。根據(jù)BAS優(yōu)化結(jié)果,初始BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值,設(shè)置網(wǎng)絡(luò)訓(xùn)練次數(shù)(n2=1 000),訓(xùn)練目標(biāo)(goal2=0.000 001)和學(xué)習(xí)效率(rate=0.01)。
Step10 計(jì)算各層輸出及誤差,修正權(quán)值、閾值,重復(fù)迭代訓(xùn)練。
Step11 判斷算法是否結(jié)束。根據(jù)適應(yīng)度函數(shù)值是否達(dá)到預(yù)先設(shè)定的精度(goal2=0.000 001)或者迭代次數(shù)是否達(dá)到最大次數(shù)(n2=1 000)來(lái)確定迭代是否停止。
影響鉆頭在破巖過(guò)程中機(jī)械鉆速的可控因素主要分為機(jī)械參數(shù)、鉆井液參數(shù)及水力參數(shù)。機(jī)械參數(shù)主要有鉆壓、轉(zhuǎn)速、鉆頭類(lèi)型、立管壓力等,通過(guò)影響鉆頭對(duì)巖石的研磨、剪切過(guò)程來(lái)影響機(jī)械鉆速。鉆井液參數(shù)有鉆井液體系、密度、初切力、流變參數(shù)等,鉆井液性能和流變參數(shù)通過(guò)影響循環(huán)壓力損耗和井底凈化等來(lái)間接影響機(jī)械鉆速。水力參數(shù)有水射流速度、射流功率、鉆頭壓降等,通過(guò)保持井底凈化從而影響機(jī)械鉆速。
Bourgoyne[4]和Young綜合考慮地層參數(shù)、工程參數(shù)及鉆井液流變參數(shù)建立鉆速方程。在此基礎(chǔ)上本文對(duì)采集的鉆井井史數(shù)據(jù)、綜合錄井?dāng)?shù)據(jù)進(jìn)行篩選,以機(jī)械鉆速、轉(zhuǎn)速、鉆壓、排量、立管壓力、井深、井徑以及鉆井液稠度系數(shù)等8種參數(shù)作為影響因素,建立機(jī)械鉆速預(yù)測(cè)模型。
2.2.1 小波濾波處理
由于復(fù)雜鉆進(jìn)環(huán)境存在各種干擾,測(cè)量?jī)x器接收的實(shí)測(cè)值與實(shí)際值之間存在一定誤差,應(yīng)用小波變換進(jìn)行處理,小波變換繼承了傅里葉變換的局部化思想,同時(shí)又克服了窗口大小不隨頻率變換的缺點(diǎn),能夠提供一個(gè)隨信號(hào)改變的“時(shí)間-頻率”窗口[18]。
將分析信號(hào)X(t)作小波變換,即
(7)
式中:a為尺度因子,且a>0,實(shí)現(xiàn)對(duì)基本小波φ(t)進(jìn)行伸縮變換;τ為平移因子,實(shí)現(xiàn)對(duì)基本小波在時(shí)間軸上的平移變換。
應(yīng)用軟閾值進(jìn)行降噪處理,提取第4層分解結(jié)果作為降噪后的輸出結(jié)果。如圖3所示,原始數(shù)據(jù)曲線(xiàn)包含許多尖峰和突變,應(yīng)用強(qiáng)制降噪處理后的曲線(xiàn)較為光滑,有效地去除了原始信號(hào)中的尖峰和突變,同時(shí)降噪后曲線(xiàn)與原始曲線(xiàn)走勢(shì)一致,保持原始數(shù)據(jù)的變化特性。
圖3 小波降噪處理效果對(duì)比
2.2.2 數(shù)據(jù)歸一化
為了消除輸入、輸出參數(shù)在數(shù)量級(jí)上的差異,提高模型數(shù)據(jù)處理的泛化能力,數(shù)據(jù)降噪后,對(duì)其進(jìn)行歸一化處理。采用歸一化公式
(8)
將參數(shù)值歸至[-1,1]區(qū)間。式中:xnorm為歸一后的數(shù)值;x為歸一前的數(shù)值;xmax、xmin分別為數(shù)據(jù)歸一前的最大值、最小值;ymax、ymin分別為數(shù)據(jù)歸一后的最大值、最小值。
分析鉆井參數(shù)間的相關(guān)性,可以篩選輸入?yún)?shù),降低所建鉆井機(jī)械鉆速模型冗余。圖4左下三角位置為各變量之間的散點(diǎn)圖;圖4對(duì)角線(xiàn)位置為核密度函數(shù)圖。從圖4可以看出,鉆井參數(shù)間主要表現(xiàn)為非線(xiàn)性相關(guān),常用的Pearson系數(shù)法、回歸分析法,能有效地量化變量間線(xiàn)性關(guān)系,無(wú)法表征非線(xiàn)性相關(guān)變量間的相關(guān)性[19]。
圖4 鉆井參數(shù)相關(guān)性分析
為了方便表征非線(xiàn)性相關(guān)變量之間的關(guān)系數(shù)值,實(shí)現(xiàn)量化統(tǒng)計(jì),引入互信息關(guān)聯(lián)分析[19]?;バ畔⑹怯脕?lái)衡量變量間非線(xiàn)性關(guān)系的常用方法,當(dāng)(X,Y)~p(x,y),則變量X、Y之間的互信息定義為
MI(X;Y)=H(X)+H(Y)-H(X,Y)。
(9)
式中:H(X,Y)為變量X、Y的聯(lián)合熵;H(X)、H(Y)分別為變量X、Y的無(wú)條件熵。
為了便于評(píng)價(jià),將互信息作歸一化處理,則
(10)
NMI(X;Y)的值反應(yīng)變量X、Y之間的相關(guān)性大小。
圖4右上角為各鉆井參數(shù)間的互信息熱力圖。圖中機(jī)械鉆速與其他各鉆井參數(shù)的相關(guān)性大于1/m(m為輸入模型的參數(shù)個(gè)數(shù),此處m=8),可見(jiàn)機(jī)械鉆速與轉(zhuǎn)速、鉆壓、井深、井徑、鉆井液稠度系數(shù)等鉆井參數(shù)相關(guān)性強(qiáng),與排量和立管壓力的互信息值相關(guān)性較低,因此,篩選轉(zhuǎn)速、鉆壓、井深、井徑、鉆井液稠度系數(shù)等5個(gè)參數(shù)作為機(jī)械鉆速預(yù)測(cè)模型的輸入變量。
BAS-BP機(jī)械鉆速預(yù)測(cè)模型建模流程如圖5所示。BAS-BP機(jī)械鉆速預(yù)測(cè)建模整體主要分為5個(gè)部分:第1部分為實(shí)測(cè)數(shù)據(jù)清洗,主要完成數(shù)據(jù)采集與整理,以及對(duì)整理后的數(shù)據(jù)進(jìn)行濾波降噪;第2部分為相關(guān)性分析,主要完成為互信息分析實(shí)現(xiàn)對(duì)模型輸入?yún)?shù)的篩選;第3部分為BAS優(yōu)選初始權(quán)值和閾值,確定BP神經(jīng)網(wǎng)絡(luò)架構(gòu),應(yīng)用BAS優(yōu)化算法對(duì)BP神經(jīng)網(wǎng)絡(luò)初始權(quán)值和閾值進(jìn)行優(yōu)化;第4部分為BP神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練,將相關(guān)性分析篩選的參數(shù)作為模型輸入,以機(jī)械鉆速作為模型輸出進(jìn)行模型訓(xùn)練;第5部分為誤差分析和模型評(píng)價(jià),若模型預(yù)測(cè)精度達(dá)到設(shè)計(jì)要求則輸出模型,反之則根據(jù)BP神經(jīng)網(wǎng)絡(luò)內(nèi)置罰函數(shù)對(duì)權(quán)值和閾值進(jìn)行優(yōu)化,重復(fù)訓(xùn)練,直至精度達(dá)到設(shè)計(jì)要求則輸出模型。
圖5 機(jī)械鉆速預(yù)測(cè)模型建模流程
本次實(shí)驗(yàn)數(shù)據(jù)來(lái)自現(xiàn)場(chǎng)某區(qū)塊定向井作業(yè)數(shù)據(jù),該井完井時(shí)間為2020年4月,井型為采油井,設(shè)計(jì)井深3 800 m,實(shí)鉆井深3 720 m,造斜點(diǎn)位于井深1 900 m處,完井方式為射孔完井,鉆井周期23 d,平均機(jī)械鉆速12.52 m/h。
為了驗(yàn)證BAS-BP神經(jīng)網(wǎng)絡(luò)模型較其他優(yōu)化后的智能模型是否具有優(yōu)越性,將其與標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)模型、PSO-BP神經(jīng)網(wǎng)絡(luò)模型、GA-BP神經(jīng)網(wǎng)絡(luò)模型進(jìn)行對(duì)比分析,結(jié)果見(jiàn)表1。
表1 BAS-BP模型與其他BP模型測(cè)試集預(yù)測(cè)結(jié)果
圖6為BAS-BP模型與其他BP模型預(yù)測(cè)結(jié)果對(duì)比。圖6中各鉆速模型預(yù)測(cè)值與實(shí)際測(cè)量值折線(xiàn)走勢(shì)一致,可見(jiàn)各鉆速模型均可實(shí)現(xiàn)機(jī)械鉆速預(yù)測(cè),但各鉆速模型預(yù)測(cè)值與實(shí)際測(cè)量值之間存在偏差。
圖6 BAS-BP模型與其他BP模型預(yù)測(cè)結(jié)果對(duì)比
選取均方根(RMSE)、平均絕對(duì)百分比誤差(MAPE)、決定系數(shù)(R2)作為評(píng)價(jià)指標(biāo)對(duì)模型性能進(jìn)行評(píng)價(jià)[21]。各評(píng)價(jià)指標(biāo)計(jì)算結(jié)果見(jiàn)表2。
圖7為BAS-BP模型與其他BP模型預(yù)測(cè)誤差對(duì)比。由圖7可知,BAS-BP模型與GA-BP模型的誤差波動(dòng)范圍較小。但是,根據(jù)表2顯示,本文提出的BAS-BP模型較GA-BP模型的均方根誤差和平均絕對(duì)百分比誤差分別降低22.92%和14.71%,并且BAS-BP模型的R2值最大。R2是最常用于評(píng)價(jià)預(yù)測(cè)模型優(yōu)劣程度的指標(biāo),R2越大(接近于1),表明所建立的預(yù)測(cè)模型越優(yōu),即模型預(yù)測(cè)值越接近實(shí)際測(cè)量值。由此可見(jiàn),本文提出的BAS-BP機(jī)械鉆速預(yù)測(cè)模型相比其他3種BP神經(jīng)網(wǎng)絡(luò)模型,具有最好的預(yù)測(cè)精度。
表2 BAS-BP模型與其他BP模型評(píng)價(jià)指標(biāo)對(duì)比
圖7 BAS-BP模型與其他BP模型預(yù)測(cè)誤差對(duì)比
(1)對(duì)于機(jī)械鉆速預(yù)測(cè)這類(lèi)變量多、非線(xiàn)性強(qiáng)的數(shù)據(jù)預(yù)測(cè)問(wèn)題,應(yīng)用小波濾波方法和互信息關(guān)聯(lián)分析,能夠有效地降低噪聲干擾和模型冗余,簡(jiǎn)化運(yùn)算過(guò)程。
(2)應(yīng)用BAS-BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型,克服了標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)穩(wěn)定性差、收斂速度慢、易陷入局部最優(yōu)等缺點(diǎn),提高了網(wǎng)絡(luò)的性能及預(yù)測(cè)結(jié)果的精度。
(3)研究證明了數(shù)據(jù)驅(qū)動(dòng)模型在鉆井機(jī)械鉆速預(yù)測(cè)應(yīng)用中的可行性和有效性,但也有不足之處,由于完整樣本較少,研究結(jié)果僅停留在計(jì)算機(jī)仿真模擬,為了加強(qiáng)預(yù)測(cè)模型的泛化能力和通用性,需要進(jìn)一步收集充分的樣本數(shù)據(jù)。