本發明涉及算法優化,具體地指一種用于疊前地震數據參數反演的改進遺傳算法。
背景技術:
:地震勘探是利用地震信息進行石油勘探的一種方法,由于地震信息可以反映出儲層參數的變化趨勢,因此,可以使用該方法來預測儲層參數。地震數據分為疊前和疊后兩種,由于疊前地震數據比疊后地震數據包含了更多的流體信息,而且疊前反演方法具有結果穩定、分辨率高、可控制性強等明顯優勢,因此近年來,基于疊前地震數據的反演一直是地震勘探領域中的熱門話題。avo(amplitudevariationwithoffset)技術是目前最常用的應用疊前資料預測油氣的技術。該技術能充分利用地震資料信息,已經被廣泛的用于油氣檢測。疊前地震資料中包含許多有用的信息可用于地下油氣狀況的預測,其中地震波的縱波速度vp、地震波波的橫波速度vs和巖石的密度ρ這三個彈性參數是關鍵的參數。這三個彈性參數可以側面反映出地下儲層的含氣飽和度狀況,縱波速度vp與含氣飽和度的關系是非線性的,密度ρ與含氣飽和度的關系則是線性的,橫波速度vs可以反映一些巖石特性。因此在判斷地下油氣飽和度時需要這三個彈性參數的變化的信息。疊前地震數據參數的反演需要構建合適的目標函數,然后對目標函數進行優化,該目標函數一般是非線性的。當使用線性或擬線性的方法來求解該問題時,由于這些方法存在對初始模型依賴較強等缺陷,若初始模型選擇有誤,就會導致反演結果不可靠;尤其在對具有多參數、多極值等特性的非線性反演問題進行求解時,這些線性反演方法便遇到了瓶頸。針對于傳統三參數反演問題,橫波波速、縱波波速這兩項往往能反演的很好,但是密度項卻很差,這也是一個亟待解決的問題。同樣在反演過程中,存在著反演出的振幅地震數據和實際振幅地震數據十分擬合,但是反演出的彈性參數與實際彈性參數存在較大誤差的情況也就是彈性參數之間的相關系數很低,這同樣也是一個亟待解決的問題。遺傳算法是模擬達爾文生物進化論的自然選擇和遺傳學機理的生物進化過程的計算模型,是一種通過模擬自然進化過程搜索最優解的方法。遺傳算法是從代表問題可能潛在的解集的一個種群開始的,而一個種群則由經過基因編碼的一定數目的個體組成。每個個體實際上是染色體帶有特征的實體。染色體作為遺傳物質的主要載體,即多個基因的集合,其內部表現(即基因型)是某種基因組合,它決定了個體的形狀的外部表現,如黑頭發的特征是由染色體中控制這一特征的某種基因組合決定的。因此,在一開始需要實現從表現型到基因型的映射即編碼工作。由于仿照基因編碼的工作很復雜,我們往往進行簡化,如二進制編碼,初代種群產生之后,按照適者生存和優勝劣汰的原理,逐代演化產生出越來越好的近似解,在每一代,根據問題域中個體的適應度大小選擇個體,并借助于自然遺傳學的遺傳算子進行組合交叉和變異,產生出代表新的解集的種群。這個過程將導致種群像自然進化一樣的后生代種群比前代更加適應于環境,末代種群中的最優個體經過解碼,可以作為問題近似最優解。技術實現要素:本發明所要解決的技術問題是提供利用地震記錄對彈性參數進行反演計算的用于疊前地震數據參數反演的改進遺傳算法。本發明解決上述技術問題的技術方案如下:一種用于疊前地震數據參數反演的改進遺傳算法,包括如下步驟:s1、對油田地下儲層測井區域進行采樣,獲取至少兩個測井采樣點數據,獲取至少兩組彈性參數;對所述油田地下儲層測井區域與所述至少兩個測井采樣點對應的地震記錄采樣點進行地震勘探,獲取至少一組實際地震記錄;s2、運用所述彈性參數進行迭代運算,更新彈性參數;s3、通過s2計算得到的彈性參數計算對應的地震記錄計算值,并與所述s1中的實際地震記錄比較,得到驗證計算結果;s4、當驗證計算結果小于閾值時,驗證成功得到所述彈性參數的反演結果;當驗證計算結果大于或者等于閾值時,驗證失敗則返回s2。進一步地,所述s2中通過實數型編碼的遺傳算法對所述彈性參數進行迭代運算,所述遺傳算法中初始種群中的個體的基因位的數值根據所述s1中獲取的若干組彈性參數在預設范圍內上下浮動生成;所述遺傳算法中個體適應度通過所述驗證計算結果進行計算。進一步地,每一組所述彈性參數均包括地震波縱波速度vp、地震波橫波速度vs和巖石密度ρ。進一步地,所述s1中對所述油田地下儲層測井區域進行采樣,獲取n+1個測井采樣點的共n+1組彈性參數:[vpiwell,vsiwell,ρiwell],(其中i=1,2…,n+1,n為正整數);對所述油田地下儲層測井區域中進行地震勘探獲取與所述n+1個測井采樣點對應的n個地震記錄采樣點的m種不同角度的實際地震記錄如下:[s(θi,j)](其中i=1,2…,n;j=1,2…m,m為正整數)。進一步地,所述遺傳算法中的每個個體為長度為3n+3的實數型一維數組;初始種群中的個體中每個元素的值根據所述s1中獲取的n+1組共3n+3個彈性參數在預設范圍內上下浮動隨機選取。進一步地,所述初始種群的個體中的前三個元素的值根據所述s1中測井獲取的第一組彈性參數上下浮動隨機選取;所述初始種群的個體中的第四個元素至最后一個元素的值按如下約束隨機選取:進一步地,通過s2計算得到的彈性參數以及角度運用zoeppritz方程式計算對應的地震記錄計算值:[s'(θi,j)](其中i=1,2…,n;j=1,2…m)。進一步地,所述驗證計算結果的計算方式如下:進一步地,通過s2計算得到的彈性參數以及角度運用zoeppritz方程式中的aki&richard近似方程計算對應的地震記錄計算值。本發明利用疊前地震的理論模型,建立彈性參數與地震記錄之間的相關關系,彈性參數通過模型正演計算得到地震記錄;測井獲取初始的彈性參數,運用遺傳算法對彈性參數不斷迭代,不斷將新得到的彈性參數進行正演與地震記錄比對,使正演獲取的地震記錄無限逼近實際地震記錄,以最終獲取精確的彈性參數值。附圖說明圖1為本發明用于疊前地震數據參數反演的改進遺傳算法流程示意圖(形式一);圖2為本發明用于疊前地震數據參數反演的改進遺傳算法流程示意圖(形式二);圖3為本發明中于疊前地震數據參數反演的改進遺傳算法的正演結果圖。圖4為本發明中于疊前地震數據參數反演的改進遺傳算法的中交叉運算示意圖。具體實施方式以下結合附圖對本發明的原理和特征進行描述,所舉實例只用于解釋本發明,并非用于限定本發明的范圍。如圖2所示,本發明包括如下步驟,s1、對油田地下儲層測井區域進行采樣,獲取至少兩個測井采樣點數據,獲取至少兩組彈性參數;對所述油田地下儲層測井區域與所述至少兩個測井采樣點對應的地震記錄采樣點進行地震勘探,獲取至少一組實際地震記錄;s2、運用所述彈性參數進行迭代運算,更新彈性參數;s3、通過s2計算得到的彈性參數計算對應的地震記錄計算值,并與所述s1中的實際地震記錄比較,得到驗證計算結果;s4、當驗證計算結果小于閾值時,驗證成功得到所述彈性參數的反演結果;當驗證計算結果大于或者等于閾值時,驗證失敗則返回s2。下面對本發明的各步驟進行詳細說明:疊前地震數據的反演問題:如圖1所示,本發明中首先通過對油田地下儲層測井區域進行采樣,獲取n+1個測井采樣點的共n+1組彈性參數,其中也可通過相關地質區域的勘測結果或經驗值計算得到彈性參數的初始估計值(并通過實際地震記錄對彈性參數的初始估計值進行修正):[vpi,vsi,ρi],(其中i=1,2…,n+1);對所述油田地下儲層測井區域進行地震勘探獲取與所述n+1組彈性參數對應的n個地震記錄采樣點m種不同角度的實際地震記錄如下:[s(θi,j)](其中i=1,2…,n;j=1,2…m)。通過上述方式即獲得s1中所述彈性參數以及實際地震記錄。若干個采樣點中,相鄰上下兩層測井采樣點(采樣點通常設置在不同高程,采樣點密度越高數據越精確)對應一個地震記錄采樣點,因此n+1個測井采樣點對應n個地震記錄采樣點,且每個地震記錄采樣點可采用若干不同角度,當采用m種不同角度時,則獲取共nm組實際地震記錄。本發明的宗旨就在于通過實際地震記錄對彈性參數進行修正,即通過地震記錄對彈性參數進行反演。反演利用彈性參數與地震記錄在zoeppritz方程式中存在著相互對應的關系;反演的實質是無數次正演,即通過擬合得到的彈性參數計算對應的地震記錄,與地震記錄進行比對。由于zoeppritz方程式較為復雜,本發明采用的是zoeppritz方程式中的aki&richard近似方程:建立反演褶積模型:建立反演褶積模型是進行疊前avo彈性參數反演的主要步驟之一,建立褶積模型主要有以下幾個步驟:第一,計算反射系數rpp。本發明使用aki&rechard近似方程計算rpp:其中,δvp,δvs,δρ分別表示相鄰上下兩層vp、vs和ρ的之間的差值,而和表示上下層vp、vs和ρ的平均值,θ為角度,根據實際數據計算得出,根據該公式可以獲得rpp,作為地震記錄褶積運算的一個分量。第二,獲取地震子波。地震子波是地震記錄褶積模型的另一個分量,通過將子波與反射系數做褶積運算得到地震記錄,適用于建立正演模型和制作合成地震道記錄,本發明使用的是雷克子波,是一種零相位的地震子波,其表達式如下:其中vm表示主頻,t表示時間,可以手動設置。通常是根據實際地震記錄提取出來的,是一組定值。第三,將反射系數與雷克子波進行褶積運算,方程式如下:s(θ)=rpp(θ)*f(t)+n(t)其中f(t)表示地震子波,n(t)表示噪聲。在本發明中不考慮噪聲因素。計算出的s(θ)用來構建目標函數。這里rpp與雷克子波進行褶積運算的過程中,各個角度是單獨計算的,沒有關聯的。如圖3所示,可以看到8個角度的地震記錄。由于整個地震記錄的計算的核心是通過計算反射系數rpp,而每個角度每層采樣點對應的rpp的計算是通過上下兩層三個彈性參數的平均值以及下層減去上層數據的差值求得的,而平均值又等于上層數值加上1/2的差值,由此可以看出,rpp完全可以由上層彈性參數和差值表示,并且可以看出差值在公式中占據主導地位。通過上述的建立反演褶積模型的過程,完成了正演,即完成了s3中所述的通過彈性參數可以計算得到對應的地震記錄計算值的過程:[s'(θi,j)](其中i=1,2…,n;j=1,2…m)遺傳算法的基本策略:s2中的迭代運算通常采用遺傳算法對彈性參數進行迭代更新。遺傳算法中的每個個體采用為長度為3n+3的實數型一維數組;初始種群中的個體的中每個元素的值根據所述s1中獲取的n+1組共3n+3個彈性參數上下浮動隨機選取。而遺傳算法中個體適應度則是通過zoeppritz方程式計算遺傳算法迭代得到的新彈性參數與實際地震記錄的吻合性來計算。以地震記錄采樣點n=240,角度m=8為例,現有的遺傳算法采用如下方式進行初始種群個體的取值,每個個體呈如下形式:gi=(vp1,vs1,ρ1,vp2,vs2,ρ2,…,vpn+1,vsn+1,ρn+1),n=1,2,…,243遺傳算法的傳統初始化策略:初始個體中每個元素即每個基因位的采用如下約束:0.8·vpwell≤vp≤1.2·vpwell0.8·vswell≤vs≤1.2·vswell0.9·ρwell≤ρ≤1.1·ρwell由于隨機在該閾值范圍內生成彈性參數,可能會出現,上層彈性參數在區間最左側(即取最小值),下層彈性參數在區間最右側(即取最大值),因此可能會導致上下兩層的彈性參數產生的差值誤差較大,并且通過左右震蕩幅度比較大,導致計算出的rpp不夠精確,進而導致計算出的地震記錄誤差較大。遺傳算法的改進的初始化策略:由于傳統的初始化策略存在不夠精確的問題,通過改進初始化操作來加快算法收斂,初始化操作是根據測井數據得到的一系列彈性參數求得的閾值,在閾值范圍內隨機選取的,根據測井數據可以得到一系列上下層彈性參數的差值,然后對彈性參數的差值設定閾值,在差值閾值范圍內隨機選取的,如下所示:遺傳算法中初始種群的個體中的前三個元素的值根據所述s1中測井獲取的第一組彈性參數上下浮動隨機選取;初始種群的個體中的第四個元素至最后一個元素的值,引入相鄰測井采樣點的彈性參數之間的差值δvpi、δvsi,δρi,并按如下約束隨機選取:適應度計算:對遺傳算法中的各個體的適應度,通過將該個體中各元素的代表的彈性參數的值進行正演,計算對應的地震記錄,并對若干組地震記錄與實際地震記錄比較,計算驗證計算結果作為適應度,同時也為s3中將地震記錄計算值與實際地震記錄進行比較,得到驗證計算結果的過程:驗證計算結果的計算方式如下:交叉操作:因為本發明是基于實數編碼的,單純使用單點交叉方法,算法的搜索能力較弱,所以本發明采用一種更加適合實數編碼的交叉算子,使用算術交叉策略,該策略通過兩個個體的線性組合,生成兩個新的個體,λ為[0,1]區間的隨機分布數。表達式如下:child1=λ×parent2+(1-λ)×parent1child2=λ×parent1+(1-λ)×parent2假設λ為0.3,對父代個體中的一個基因位進行交叉,則子代個體對應的基因位的值如圖4所示。變異操作:使用了一種適用于該研究課題的非均勻、自適應的變異操作。首先隨機選出需要變異的基因v,取值范圍為[bound1,bound2],在進行變異操作時,假設當前進化代數為pi,種群最大進化代數為p,該范圍為算法開始前給定,假設v1,v2分別為:v1=v-bound1v2=bound2-v變異開始,首先生成一個隨機數λ:當λ>0.5時,對進行變異的基因執行以下操作:vnew=v+δv當λ<0.5時,對進行變異的基因執行以下操作:vnew=v-δv遺傳算法小結:實驗中,最基礎的遺傳算法(這里簡稱bga)的種群初始化選擇傳統策略,選擇操作采用的是輪盤賭選擇,交叉操作采用的是單點交叉,變異操作采用的是非均勻、自適應的變異操作。改進的遺傳算法的的種群初始化選擇改進策略,選擇操作采用的是錦標賽選擇,交叉操作采用的是算術交叉,變異操作采用的是非均勻、自適應的變異操作(這里簡稱iga)。這里對兩種算法分別采用兩種不同的初始化操作進行實驗,這里分別簡稱為bga和iga,算法相關參數設置如下表所示:表1遺傳算法通用參數參數參數說明參數大小pc交叉概率0.7pm變異概率0.05popsize種群大小40iternum迭代次數5000數據集中的測井曲線數據為有241個采樣點的數據,包括縱波速度vp、橫波速度vs及密度ρ。每個采樣點對應8個不同的角度:[0°,6°,11°,17°,23°,29°,34°,40°],每個數據集都使用這8個角度。利用aki&richard公式對測井曲線理論模型進行正演,利用測井曲線模型計算出反射系數,再將反射系數與子波進行褶積,因為生成地震記錄需要利用上下兩組采樣點間關系,因此地震記錄中包含240*8個數據。使用我們提出的改進的遺傳算法與最基礎的遺傳算法分別進行疊前地震數據參數反演,根據算法參數設置進行實驗,可得實驗結果如下表。表2三參數平均適應度值數值對比算法名稱bgaiga平均適應度值0.0063320.001231表3三參數平均相關系數數值對比bgaigavp0.5563640.941373vs0.6508050.915569ρ0.4623460.949102算法驗證:由于反射系數rpp的計算是通過彈性參數vp、vs和ρ得到的,并且最終計算得到同一組反演地震數據由無限種vp、vs和ρ組合得到。因此,存在三彈性參數都有誤差計算得到的反演地震數據和兩參數沒有誤差,一個參數存在誤差計算得到的反演地震數據相同的情況。為了更好地評價優化算法對疊前avo彈性參數反演結果的好壞,本發明采用了皮爾遜積矩相關系數(pearsonproduct-momentcorrelationcoefficient,又稱作ppmcc或pccs)來度量反演出的三彈性參數與實際的三彈性參數的相關情況。這里我們建立的相關系數函數如下:其中,xi為三彈性參數某個參數標準值,yi為與之對應的反演值,分別為一組值的平均值。由于地震數據求解過程十分復雜,目標函數值越小,三彈性參數的相關系數不一定越高,并且,三彈性參數的相關系數越高,目標函數值同樣也不一定越小,但是,當目標函數達到理論最優值即為0的時候,vp、vs和ρ的相關系數均能達到理論最優值1。因此,本發明通過將目標函數值和相關系數相結合的方式共同評判反演結果的優劣。最終目標是既能使得反演得到的目標函數值小,同時也讓三彈性參數的相關系數高。從對比數據可以看出,遺傳算法經過一系列改進后逐步變好,不僅反演出的彈性參數更趨近于實際測井數據,反演出的地震數據也與實際的地震數據更加吻合,同時彈性參數的相關系數也較高。以上所述僅為本發明的較佳實施例,并不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。當前第1頁12