趙春立 朱 頤 李禹呈 楊 志 周 倩
(1.西南石油大學(xué), 成都 610500; 2.川慶鉆探工程有限公司川西鉆探公司, 成都 610000;3.西南油氣田分公司川中油氣礦, 四川 遂寧 402660; 4.西南油氣田分公司蜀南氣礦,四川 瀘州 642450)
壓縮機(jī)組作為氣舉采油的動(dòng)力源,直接影響氣舉采油系統(tǒng)的規(guī)模。由于維護(hù)要求或故障原因,部分壓縮機(jī)通常不能正常運(yùn)轉(zhuǎn),機(jī)組總供氣量降低最終影響到壓縮機(jī)出口壓力,這時(shí)一些井就需要關(guān)閉,而且需要判斷關(guān)閉哪些井對(duì)總產(chǎn)量影響最小。當(dāng)注氣壓力低于一些井的最小注氣壓力時(shí),可能造成氣舉井的間噴。間噴帶來(lái)的壓力和流速振蕩將降低系統(tǒng)總產(chǎn)量,造成設(shè)備的嚴(yán)重?cái)_動(dòng),甚至引發(fā)系統(tǒng)停機(jī)。另外,井口壓力峰值還會(huì)造成分離器內(nèi)壓力過(guò)高、壓縮系統(tǒng)過(guò)載以及由于流體壓力振蕩所產(chǎn)生的設(shè)備疲勞問(wèn)題。
為避免以上問(wèn)題,必須對(duì)每口氣舉井的注氣速度進(jìn)行優(yōu)化,確定每口井最佳氣舉注氣速度是一個(gè)組合優(yōu)化問(wèn)題。遺傳算法作為一種啟發(fā)式搜索方法,其固有特點(diǎn)是優(yōu)化解不依賴(lài)初始條件且容易考慮限制條件。此算法廣泛應(yīng)用于國(guó)內(nèi)外油氣田[1-6],非常適合處理帶有壓縮機(jī)停機(jī)、單井注氣壓力限制等復(fù)雜因素的注氣速度優(yōu)化問(wèn)題。
Ray在2007年就對(duì)氣舉最佳注氣速度的優(yōu)化問(wèn)題進(jìn)行了分析[7]。但他沒(méi)有考慮壓縮機(jī)容量的限制問(wèn)題,而且使用Ray的方法必須事先知道總的可注入氣舉氣量。本文在Ray的研究基礎(chǔ)上,把壓縮機(jī)容量限制作為一個(gè)重要前提,并對(duì)各單井注氣量進(jìn)行擬合,從而預(yù)測(cè)總的氣舉可注入氣量。
近些年來(lái),單井氣舉研究取得了長(zhǎng)足發(fā)展[8-11]。獲取單井特征曲線的方程表達(dá)式是確定氣舉操作區(qū)間的關(guān)鍵,按照Ray的方法,單井特征曲線可由冪函數(shù)f(Qg)來(lái)計(jì)算:
Qo=f(Qg)
(1)
式中:Qg為單井注氣量,104m3d;Qo為單井產(chǎn)油量,m3d。
f(Qg)的次數(shù)由該井特征曲線的擬合情況來(lái)確定。Ray方法要求的可注入氣舉總氣量可由單井所需注氣量加和得到。這里使用氣舉軟件(如Pipsim軟件)對(duì)單井模擬模型進(jìn)行敏感性分析并得到各注氣量下的產(chǎn)油量,從而繪出氣舉特性曲線,然后再用冪函數(shù)f(Qg)對(duì)氣舉特性曲線進(jìn)行擬合。圖1是對(duì)海上某油氣田X-01井模擬模型進(jìn)行敏感性分析后得到的氣舉特性曲線。由圖1可知,對(duì)于X-01井來(lái)說(shuō),五次方程能很好地對(duì)其氣舉特性曲線進(jìn)行擬合, 故f(Qg)的次數(shù)為5。
在圖1中,氣舉操作區(qū)間由2條垂直線(L1和L2)來(lái)界定,低于區(qū)間的下界時(shí)生產(chǎn)井不穩(wěn)定,高于區(qū)間的上界時(shí)會(huì)導(dǎo)致產(chǎn)量下降。操作區(qū)間的上界(L2)就是X-01井的技術(shù)最優(yōu)生產(chǎn)點(diǎn)。
圖1 X-01井的氣舉特性曲線
將所有井的特征曲線擬合函數(shù)fi(Qgi)計(jì)算得到的產(chǎn)量相加得到總產(chǎn)量,然后將總產(chǎn)量取最大值作為目標(biāo)函數(shù),如公式(2)所示:
(2)
根據(jù)單井注氣速度Qgi應(yīng)處于氣舉操作區(qū)間之內(nèi)這一限制條件,Qgi應(yīng)滿足:
Qgimin≤Qgi≤Qgimax
(3)
同時(shí),把壓縮機(jī)容量限制作為一個(gè)重要前提,即所有井的總注氣量不能大于壓縮機(jī)系統(tǒng)用于氣舉的最大輸氣量:
(4)
式中:Qo為總產(chǎn)量;Qgimax指i井的最大氣舉注氣量;Qgimin指i井的最小氣舉注氣量;若openi等于1則表明井是在生產(chǎn);若openi等于0則表明井是關(guān)閉的。
由于每個(gè)配氣方案包含所有注氣井的全部相關(guān)參數(shù),利用枚舉法不可能詳盡評(píng)估所有可能的解決方案,遺傳算法等搜索方法的目的就是減少評(píng)估次數(shù),從而快速找到足夠接近全局最優(yōu)的配氣方案[12-13]。
根據(jù)圖2所示的結(jié)構(gòu)示意圖,遺傳算法可用來(lái)解決上述具有苛刻壓縮機(jī)能力極限限制的氣舉優(yōu)化問(wèn)題。
與Ray研究相同,把與每一口井注入氣相關(guān)的參數(shù)編成染色體字符串,染色體的長(zhǎng)度等于井的數(shù)目。每口井氣舉注入速度必須在氣舉生產(chǎn)區(qū)間內(nèi),并且通常注氣速度不接近零。受到達(dá)爾文的啟發(fā),遺傳算法先是生成配氣方案問(wèn)題可能解的種群,然后讓種群進(jìn)行進(jìn)化,種群規(guī)模設(shè)置為200個(gè)體(每個(gè)種群包含200個(gè)體,即200個(gè)配氣方案),每個(gè)個(gè)體用染色體來(lái)表示。
圖2 遺傳算法結(jié)構(gòu)圖
為了產(chǎn)生初始種群,采用等概率分布函數(shù)隨機(jī)產(chǎn)生一組數(shù),這樣就產(chǎn)生了一系列包含從0到1之間隨機(jī)數(shù)的向量,向量的長(zhǎng)度等于氣舉井的數(shù)量,向量的數(shù)目等于種群的大小,這些向量組成了一個(gè)大矩陣(種群矩陣),矩陣的每一行對(duì)應(yīng)一個(gè)單一的個(gè)體。由于是隨機(jī)產(chǎn)生,種群矩陣具有更大的“生物多樣性”。 配氣方案中最重要的參數(shù)是單井有效氣舉注氣速度,第口井有效氣舉注氣速度Qgi由式(5)表示:
Qgi=Qgimin+ran(Qgimax-Qgimin)
(5)
式中ran函數(shù)用來(lái)產(chǎn)生0到1之間的隨機(jī)數(shù)。
遺傳算法解決氣舉優(yōu)化問(wèn)題雖然沒(méi)有從數(shù)學(xué)上確定出達(dá)到收斂的平均迭代次數(shù),但通過(guò)案例研究發(fā)現(xiàn),遺傳不超過(guò)200代就收斂到足夠接近全局最優(yōu)的配氣方案。
雖然每口井(基因)得到了有效值,但個(gè)體本身有可能是無(wú)效的,因?yàn)樗芯目傋饬坎荒艹^(guò)壓縮機(jī)機(jī)組的總供氣量。如果不滿足這個(gè)條件,算法就減少其中一口井的注氣量,該井新的注氣量要是低于自身的最小注氣量,這口井就被關(guān)閉?;诖嗽?,個(gè)體生成以后必須先對(duì)染色體進(jìn)行解碼,解碼后由前所述限制條件先行判斷,不合格的個(gè)體不進(jìn)入適應(yīng)度函數(shù)計(jì)算和評(píng)價(jià)。然后,算法驗(yàn)證減少后的總注氣量是否小于壓縮機(jī)機(jī)組總供氣量,如果不能滿足這個(gè)條件,另一口井的注氣量也將被減少。如果所有井經(jīng)過(guò)減少注氣量的過(guò)程后,單口井的值還是無(wú)效的,那么算法將重新回到開(kāi)始選井階段。當(dāng)然,如果總注氣量低于壓縮機(jī)總供氣量時(shí),也可以通過(guò)相同的過(guò)程來(lái)增加注氣量。經(jīng)過(guò)減少(或增加)單井注氣量后得到的一系列有效個(gè)體(滿足限制條件)組成整個(gè)群體,這個(gè)過(guò)程通常稱(chēng)為均勻隨機(jī)初始化過(guò)程。
適應(yīng)度函數(shù)為每個(gè)個(gè)體計(jì)算適應(yīng)度Fitness,并以此對(duì)每個(gè)個(gè)體進(jìn)行排序。遺傳算法一般用目標(biāo)函數(shù)來(lái)計(jì)算適應(yīng)度。在這里,適應(yīng)度的函數(shù)值等于所有井的總產(chǎn)量。它可以通過(guò)氣舉動(dòng)態(tài)曲線和相關(guān)注氣量來(lái)計(jì)算。
(6)
個(gè)體選擇是一個(gè)被動(dòng)過(guò)程,個(gè)體生存或繁殖依賴(lài)于其應(yīng)對(duì)環(huán)境挑戰(zhàn)的能力 —— 基因特征。選擇過(guò)程是一個(gè)長(zhǎng)期反復(fù)試誤并積累優(yōu)點(diǎn)的過(guò)程,其目的是選擇優(yōu)良個(gè)體組為以后交叉繁殖后代做準(zhǔn)備。有很多種方法來(lái)選擇個(gè)體組,傳統(tǒng)的方法是通過(guò)輪盤(pán)賭來(lái)選擇。這種方法首先利用適應(yīng)度函數(shù)來(lái)評(píng)價(jià)個(gè)體,得到的適應(yīng)度值必須進(jìn)行歸一化處理,這樣所有適應(yīng)度函數(shù)值之和就等于一,然后對(duì)個(gè)體按照其適應(yīng)度值的高低進(jìn)行降序排名,每個(gè)個(gè)體適應(yīng)度值決定了個(gè)體的繁殖概率,最后將每個(gè)個(gè)體的歸一化后適度值累加起來(lái)組成輪盤(pán)。傳統(tǒng)的方法在處理情況簡(jiǎn)單、個(gè)體適應(yīng)度差異大的種群時(shí)效果較好,但氣舉配氣優(yōu)化問(wèn)題在加入限制條件后情況較復(fù)雜,為了保證個(gè)體的多樣性,在計(jì)算時(shí)往往設(shè)置很大的備選種群的規(guī)模,如此個(gè)體適應(yīng)度之間的差異開(kāi)始變小(如圖3(a)),這樣極大影響了計(jì)算收斂速度。為了提高收斂速度,這里采用A Morales等人的MiniVar方法對(duì)輪盤(pán)賭選擇進(jìn)行改進(jìn)[14-15]。
圖 3 輪盤(pán)賭對(duì)比圖
首先對(duì)初始的適度值數(shù)據(jù)進(jìn)行均值和標(biāo)準(zhǔn)方差計(jì)算,以此創(chuàng)建一個(gè)標(biāo)準(zhǔn)正態(tài)分布種群,并獲取各個(gè)體新的適度值數(shù)組:
(7)
式中:x(i)代表i個(gè)體的初始適度值,μ和σ表示初始適度值的均值和標(biāo)準(zhǔn)方差,Np代表種群規(guī)模。
然后再用高斯誤差函數(shù)erf()對(duì)新的適度值數(shù)組進(jìn)行處理:
(8)
式中μ0和σ0表示各個(gè)體新的適度值數(shù)組的均值和標(biāo)準(zhǔn)方差。
經(jīng)過(guò)MiniVar改進(jìn)的輪盤(pán)賭適度值分布如圖3b所示。兩圖對(duì)比可以看出,圖3a中的個(gè)體2(占比例最小)與其他個(gè)體相比所占比例差距不大,在輪盤(pán)賭中很難把個(gè)體2淘汰出局。經(jīng)過(guò)改進(jìn)后在圖3(b)中,個(gè)體2所占比例大大縮小,這就使個(gè)體2被選中的幾率大大降低,從而使計(jì)算的整體收斂速度大大提高。
接下來(lái)就要對(duì)新種群中選出的2個(gè)個(gè)體進(jìn)行交叉操作,一般的交叉方法有單點(diǎn)交叉、兩點(diǎn)交叉、多點(diǎn)交叉、均勻交叉、融合交叉,方法不同則效果不同。本文采用如圖4所示的單點(diǎn)交叉方式, 交叉點(diǎn)隨機(jī)產(chǎn)生。交叉操作要在一定的概率下進(jìn)行,這個(gè)概率稱(chēng)為交叉率,一般設(shè)置為0.5~0.95。按照單點(diǎn)交叉要求,將父代中所有的個(gè)體,進(jìn)行兩兩交叉。如圖4(a)所示,需要隨機(jī)選定一個(gè)位置作為交叉點(diǎn),將2個(gè)個(gè)體劃分成2部分,相互交換后半部分,分別得到2個(gè)新的個(gè)體。
圖4 交叉運(yùn)算與變異運(yùn)算
從父代中隨機(jī)選擇的個(gè)體要進(jìn)行變異操作。變異就是對(duì)染色體的結(jié)構(gòu)進(jìn)行變異,使其改變?cè)瓉?lái)的結(jié)構(gòu)(值也就改變),達(dá)到突變進(jìn)化的目的。通過(guò)變異可以把搜索范圍擴(kuò)大到初始種群產(chǎn)生的基因組合之外。這也減少了收斂到局部最優(yōu)的概率。變異操作也要遵從一定的概率來(lái)進(jìn)行,一般設(shè)置為0~0.5。如果變異的概率是0.25,那么將有四分之一的個(gè)體將進(jìn)行變異。
如圖4(b)所示,選定一個(gè)隨機(jī)位置,翻轉(zhuǎn)該位置的二進(jìn)制字符,從而得到一個(gè)新樣本。
本文的變異方法直接采取基因位反轉(zhuǎn)變異法,即0變?yōu)?,1變?yōu)?。要進(jìn)行變異的基因位的選取也是隨機(jī)的。
圖5 優(yōu)化計(jì)算迭代過(guò)程圖
傳統(tǒng)遺傳算法是在每次迭代后保持種群個(gè)體數(shù)量恒定,按照這種方法,新產(chǎn)生的個(gè)體數(shù)量等于上一代的個(gè)體數(shù)量(完全取代)。本文對(duì)傳統(tǒng)遺傳算法進(jìn)行細(xì)微的修改,即以前最好的個(gè)體組的一小部分(20%)被保持到下面的迭代過(guò)程。這保證了下一代最佳個(gè)體不比上一代最佳個(gè)體差。新算法可以減少收斂時(shí)間和加快優(yōu)化過(guò)程。
在此運(yùn)用遺傳算法對(duì)中國(guó)海上某油氣田的11口井進(jìn)行氣舉優(yōu)化。為得到各口井的特征曲線,應(yīng)用氣舉軟件對(duì)這些井進(jìn)行氣舉敏感性分析,其中一口井(X-01)的特征曲線見(jiàn)圖1。
考慮到氣體輸出及電力條件問(wèn)題,浮式生產(chǎn)儲(chǔ)油系統(tǒng)配備了2個(gè)壓縮機(jī)組,2個(gè)機(jī)組并行時(shí),總排氣量約120×104m3d。遺傳算法參數(shù)設(shè)置如下:編碼長(zhǎng)度為15;種群規(guī)模為200;選擇方式為輪盤(pán)賭(MiniVar);交叉類(lèi)型為單點(diǎn)交叉;交叉概率為0.5;變異概率為0.1;迭代終止次數(shù)設(shè)置為500。
圖5是利用種群中所有個(gè)體目標(biāo)函數(shù)的平均值繪出的優(yōu)化計(jì)算迭代過(guò)程圖。由圖5可以看出,迭代次數(shù)初步設(shè)置為500次,但實(shí)際計(jì)算顯示遺傳不超過(guò)200代計(jì)算程序就開(kāi)始收斂到足夠接近全局最優(yōu)的配氣方案。
表1反映出各井配氣及產(chǎn)量情況。可以看出,由于所研究的井都需要?dú)馀e來(lái)維持產(chǎn)量, X-04井和X-09井氣舉速度較小,相對(duì)于其他井而言效益較低而被關(guān)閉。由表1中的實(shí)際產(chǎn)油量和設(shè)計(jì)產(chǎn)油量對(duì)比可以看出,兩者大體一致。這驗(yàn)證了遺傳算法最基本的特點(diǎn):雖然無(wú)法找到這種問(wèn)題的全局最優(yōu)解,但能找到可以接受的全局次優(yōu)解。
表1 各井配氣及產(chǎn)量表
(1)在考慮單井注氣速度應(yīng)處于氣舉操作區(qū)間和總注氣量必須不大于壓縮機(jī)總?cè)萘康认拗茥l件的情況下,運(yùn)用改進(jìn)的遺傳算法能夠選擇關(guān)閉井以及井的關(guān)閉順序。
(2)在遺傳算法選擇個(gè)體的過(guò)程中,本文采用A Morales等人的MiniVar方法對(duì)輪盤(pán)賭進(jìn)行了改進(jìn),從而極大地提高了遺傳算法的收斂速度。
(3)改進(jìn)后的遺傳算法在處理帶有壓縮機(jī)停機(jī)、單井注氣壓力限制等復(fù)雜因素的注氣速度優(yōu)化問(wèn)題時(shí),雖然無(wú)法找到全局最優(yōu)解,但能找到可以接受的全局次優(yōu)解。
[1] 崔智敏,王銀鳳.基于遺傳算法的油田注水系統(tǒng)運(yùn)行優(yōu)化研究[J].科學(xué)技術(shù)與工程,2012,12(7):1656-1658.
[2] 黃輝,吳曉東,孫天禮.基于遺傳算法的低滲透氣藏水平井壓裂參數(shù)優(yōu)化[J].天然氣工業(yè),2008,28(5):91~93.
[3] Qin Lu,Graham C Fleming.The Optimization of Continuous Gas Lift Process Using an Integrated Compositional Model[G].SPE 140935,2011.
[4] Sharifa Al-Ruheili,Mathew Angelatos,Sujith Nair,et al.Production Optimization and Zonal Allocation for Auto Gas Lift Wells:A Case Study from Oman[G].SPE 161648,2012.
[5] Artur Posenato Garcia,Vinícius Ramos Rosa.A Genetic Algorithm for Gas Lift Optimization With Compression Capacity Limitation[G].SPE 153175,2012.
[6] Pierre Samier.Comparisons of Various Algorithms for Gas-Lift Optimization in a Coupled Surface Network and Reservoir Simulation[G].SPE 130912,2010.
[7] Ray T,Sarker.R.Genetic Algorithm for Solving a Gas Lift Optimization Problem[J].Journal of Petroleum Science and Engineering,2007,59:84-96.
[8] 于淑珍,胡康,馮朋鑫,等.一種井間互聯(lián)氣舉排水采氣新方法[J].特種油氣藏,2013,20(4):138-140.
[9] 李華鋒,王慶,馮祥.考慮井筒壓降的水平井流速及壓力分布研究[J].斷塊油氣田,2011,18(3):366-368.
[10] 張林,熊友明.水平井筒油水兩相流壓降計(jì)算模型[J].斷塊油氣田,2009,16(5):77-80.
[11] 楊帆.氣井多相垂直管流段壓力損失敏感性分析[J].特種油氣藏,2008,15(5):63-65.
[12] 鐘海全,李穎川,劉永輝.用混合罰函數(shù)法求解氣舉區(qū)塊優(yōu)化配氣模型[J].石油學(xué)報(bào),2007,28(1):146-150.
[13] 羅銀富,黃炳光,王怒濤,等.改進(jìn)的非支配排序遺傳算法優(yōu)化氣舉配氣[J].西南石油學(xué)院學(xué)報(bào),2009,31(2):64-66.
[14] Morales A,Nasrabadi H,Zhu D.A Modified Genetic Algorithm for Horizontal Well Placement Optimization in Gas Condensate Reservoirs[G].SPE 135182,2010.
[15] Morales A N,Nasrabadi H. Zhu D.A New Modified Genetic Algorithm for Well Placement Optimization under Geological Uncertainties[G].SPE 143617,2011.