一种用于叠前地震数据参数反演的改进遗传算法的制作方法

文档序号:11588844阅读:271来源:国知局
本发明涉及算法优化,具体地指一种用于叠前地震数据参数反演的改进遗传算法。
背景技术
:地震勘探是利用地震信息进行石油勘探的一种方法,由于地震信息可以反映出储层参数的变化趋势,因此,可以使用该方法来预测储层参数。地震数据分为叠前和叠后两种,由于叠前地震数据比叠后地震数据包含了更多的流体信息,而且叠前反演方法具有结果稳定、分辨率高、可控制性强等明显优势,因此近年来,基于叠前地震数据的反演一直是地震勘探领域中的热门话题。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
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1