劉勝娃,曹湘華
(中國石油川慶鉆探工程有限公司長慶鉆井總公司,陜西 西安 710021)
鉆井工程是一項大型復(fù)雜的系統(tǒng)工程,對于鉆井過程中各種工況的自動識別能夠有效地提升鉆井工作效率并降低成本投入。隨著油田數(shù)字化建設(shè)與智能化的發(fā)展,國內(nèi)外學(xué)者采用各種機器學(xué)習(xí)算法對鉆井數(shù)據(jù)開展研究。Susana Ferreiro等人[1]提出了一種基于貝葉斯算法的鉆孔過程毛刺檢測方法,用來減少鉆孔工作中毛刺對于工作效率的影響;Alla Andrianova等人[2]使用機器學(xué)習(xí)方法來處理油田大量現(xiàn)場數(shù)據(jù),以恢復(fù)油田測量質(zhì)量;Cesar Soares等人[3]建立了基于機器學(xué)習(xí)的鉆孔滲透率(ROP)的實時預(yù)測模型;M.Golitsyna等人[4]提出了一種基于機器學(xué)習(xí)的鉆井時異常自動檢測方法,利用鉆探參數(shù)提高了對鉆井中異常工況的智能檢測效果;Mohammad Sabah等人[5]通過MLP-PSO算法和機器學(xué)習(xí)算法識別和排名預(yù)測了鉆孔滲透率上最具影響力的變量;郭長杰等人[6]深入分析了國內(nèi)油氣行業(yè)機器學(xué)習(xí)應(yīng)用場景,并從大數(shù)據(jù)分析、建模推廣等角度提出了油氣公司應(yīng)用機器學(xué)習(xí)技術(shù)的相關(guān)建議。
綜上所述,當前對于工況智能識別方面的研究相對較少。王江萍等人[7]構(gòu)建神經(jīng)網(wǎng)絡(luò)模型和基于數(shù)值計算的知識處理系統(tǒng)對鉆井事故進行了預(yù)測診斷,但在工況識別方面劃分不夠詳細;孟昭等人[8]設(shè)計了一種PDC鉆頭井下工況評價方法,該發(fā)明能夠通過讀取鉆進過程中的鉆壓、轉(zhuǎn)速以及機械鉆速等參數(shù)來判讀PDC鉆頭在井下的工況,但該發(fā)明存在一定的局限性;周向軍[9]等人提出了三牙輪鉆頭井下工況的判斷與識別方法,但該方法只針對三牙輪鉆頭;孫挺等人[10]提出了基于支持向量機的鉆井工況實時智能識別方法,解決了人工進行鉆井分析不能及時準確反映真實現(xiàn)場情況的問題,但是該方法存在尋找最優(yōu)參數(shù)問題。因此,本文提出了一種基于決策樹的鉆井工況智能識別方法,通過鉆井過程中大量多項參數(shù)監(jiān)測數(shù)據(jù)進行訓(xùn)練與測試,并采用貝葉斯算法與支持向量機進行結(jié)果對比。該方法不僅解決了傳統(tǒng)閾值法識別工況的絕對性弊端和一些現(xiàn)有的工況識別方法的局限性,同時更進一步提高了工況識別的準確性與鉆井工作的效率。
決策樹[11]是一種經(jīng)典的分類算法,其模型是根據(jù)數(shù)據(jù)的屬性以樹狀的結(jié)構(gòu)來建立的。其決策過程如下:首先,樣本數(shù)據(jù)中的每一個特征屬性都可以作為決策樹潛在的分裂節(jié)點,遍歷所有特征屬性,計算每個特征的增益(作為決策樹繼續(xù)分裂的依據(jù))。其次,將增益最大的特征作屬性為葉子結(jié)點繼續(xù)劃分,不斷循環(huán)以上過程,直到所有節(jié)點完成劃分,最終獲得完整的決策樹。
假設(shè)樣本集合為U,U中第i類樣本的所占比例為Ui(i=1,2,…,n),則U的信息熵定義為式(1)。
其中若Ent(U)的值越小,則表示U的純度越高。
由于鉆井過程中各項屬性都屬于連續(xù)屬性,不能夠直接通過其屬性的可取值來進行對樹結(jié)點的劃分,所以需要對各項屬性進行離散化處理[12-14]。
樣本集合U中,假定其中連續(xù)屬性a,a在D上出現(xiàn)了n個不同的取值,依次從小到大進行排序后,假定一個劃分點p,能夠?qū)劃分為U+p和Up。此時,兩個相鄰的屬性取值an和an+1后,點p在區(qū)間[an,an+1]中取任意值所產(chǎn)生的劃分結(jié)果都相同。所以對于連續(xù)屬性a可考察包含x-1個元素的候選劃分點集合,如式(2):
繼而就可以對這些連續(xù)屬性選取最優(yōu)的劃分點來進行樣本集合劃分,如式(3):
Gain(U,a,p)表示信息增益,Gain值越大,則表示使用屬性a對決策樹劃分后得到的結(jié)果越好,即可選擇Gain(U,a,p)為劃分點。
在工況識別的建模中,數(shù)據(jù)來源十分關(guān)鍵,數(shù)據(jù)質(zhì)量對于工況識別效果具有重要影響。本文中使用的數(shù)據(jù)集是采集自某油田連續(xù)15天鉆井現(xiàn)場的175436條真實數(shù)據(jù)。
數(shù)據(jù)集中包含有機械鉆速、吊鉗扭矩、轉(zhuǎn)盤轉(zhuǎn)速以及離開井底時間等近百余種參數(shù)數(shù)據(jù),其中有部分參數(shù)數(shù)值在鉆井過程中采集結(jié)果始終為0,即該種類的數(shù)據(jù)對于模型構(gòu)建并無影響。所以通過對每個種類數(shù)據(jù)分別求和來進行對無用數(shù)據(jù)的初步消除,篩選出求和結(jié)果不為0的參數(shù)數(shù)據(jù)進行建模。
鉆井工作中將工況分為劃眼、起鉆、下鉆、鉆進、接單根、坐卡、解卡、循環(huán)和離開井底,為方便研究,實驗中使用相應(yīng)的數(shù)字來對工況進行代替,如表1所示。

表1 現(xiàn)場鉆井工況分類
研究過程中將175436條數(shù)據(jù)集重新隨機順序排列,按照比例8:2進行拆分,即其中140349條數(shù)據(jù)用于參與訓(xùn)練以找到最優(yōu)參數(shù),剩余35087條數(shù)據(jù)進行模型測試。
通過對數(shù)據(jù)中每個屬性計算信息增益,保留最高信息增益的屬性并將其設(shè)置為根節(jié)點,對每個節(jié)點設(shè)置新的葉子節(jié)點,最后進行剪枝處理。最終模型中選取大鉤負荷、立管壓力、轉(zhuǎn)盤扭矩、轉(zhuǎn)盤轉(zhuǎn)速、大鉤高度、鉆壓、大繩做功、大鉤速度8種參數(shù)作為輸入?yún)?shù)。模型輸出參數(shù)為鉆進工況,及劃眼、起鉆、下鉆等9種工況;工況識別流程如圖1所示。
建立樸素貝葉斯算法與支持向量機工況識別模型。樸素貝葉斯算法基于貝葉斯定理和特征之間條件獨立假設(shè)的分類方法。對于給定的訓(xùn)練數(shù)據(jù)集,首先基于特征條件獨立假設(shè)學(xué)習(xí)輸入/輸出的聯(lián)合概率分布;然后基于此模型,對給定的輸入,利用貝葉斯定理求出后驗概率最大的輸出。支持向量機是一種監(jiān)督式學(xué)習(xí)算法,基于統(tǒng)計學(xué)習(xí)理論和結(jié)構(gòu)風(fēng)險最小化原則建立,其主要思想是尋找一個線性分離超平面,將非線性輸入映射到高維特征空間中,使類別之間的隔離邊緣最大化[10]。本文基于MATLAB環(huán)境,實現(xiàn)三個識別模型的主要仿真代碼如下:
accuracyArray(i,3) = accuracy;
通過三種模型間的對比,對決策樹模型進行評估。采用隨機劃分方法對原始數(shù)據(jù)進行分組,共進行42次仿真實驗。將數(shù)據(jù)代入三種模型后得到的識別結(jié)果對比,多次的驗證后識別率結(jié)果總結(jié)如表2所示。

表2 三種模型42次仿真識別正確率統(tǒng)計
實驗結(jié)果表明,在采用貝葉斯算法、支持向量機與決策樹算法三種模型工況識別正確率中,決策樹算法模型的工況識別正確率達到了97%,其識別率正確最高。
鉆井工況的智能識別對于鉆井工作具有十分重要的意義。本文設(shè)計了一種基于決策樹算法對工況進行智能識別的方法,該法以實際鉆井數(shù)據(jù)為建模依據(jù),同時建立樸素貝葉斯與支持向量機對比模型。仿真實驗結(jié)果分析表明該方法具有抗干擾強、算法參數(shù)自適應(yīng)等優(yōu)點,且對于工況智能識別的準確率進行了提高,獲得了較為理想的實驗結(jié)果。該方法能夠為鉆井工作提供有力的幫助,具有較為廣泛的應(yīng)用前景。