【论文】马天寿(本刊编委),等:基于机器学习模型的斜井坍塌压力预测方法
【论文】马天寿(本刊编委),等:基于机器学习模型的斜井坍塌压力预测方法
tianranqigongye
创刊于1981年,是由中国石油西南油气田公司、川庆钻探工程有限公司联合主办的学术期刊。关注地质勘探、开发工程、钻井工程、集输加工、安全环保、经济管理等多个领域。Ei检索、CSCD核心、中文核心、中国科技核心、入选中国科技期刊卓越行动计划。
本文版权归天然气工业杂志社所有
未经允许,不得转载
马天寿, 张东洋, 杨赟, 等. 基于机器学习模型的斜井坍塌压力预测方法[J]. 天然气工业, 2023, 43(9): 119-131.
MA Tianshou, ZHANG Dongyang, YANG Yun, et al. Machine learning model based collapse pressure prediction method for inclined wells[J]. Natural Gas Industry, 2023, 43(9): 119-131.
作者简介 : 马天寿,1987 年生,研究员,博士,本刊编委;主要从事油气井工程方面的科研与教学工作。地址:(610500)四川省成都市新都区新都大道8 号。ORCID: 0000-0002-8754-9156。
E-mail :
马天寿 1 张东洋 1 杨 赟 2 陈颖杰 3
1. 油 气藏地质及开发工程全国重点实验室•
西南石油大学
2. 中国石油川庆钻探工程有限公司
钻采工程技术研究院
3. 中国石油西南油气田公司
致密油气 勘探开发项目部
摘要: 坍塌压力是优化钻井液密度、维持井壁稳定的重要基础参数,对保障油气井安全高效钻井具有重要作用。为了解决传统坍塌压力预测方法存在的计算过程繁琐、预测精度较低等问题,采用随机森林、多项式回归等4 种机器学习模型,建立了斜井坍塌压力机器学习预测方法,利用参数随机采样和传统解析模型生成了训练样本,优选了最佳模型,优化了训练样本数量、神经网络结构和模型超参数,并以Z-1 井为例验证了该预测方法的可靠性和准确性。研究结果表明:①优化的多层感知机模型预测性能最好,在验证集和测试集均表现出较好的预测能力;②该模型能准确预测不同井段的坍塌压力剖面,与测井解释结果相比,Z-1 井直井段、斜井段和水平段坍塌压力预测的平均绝对误差小于0.007 3 g/cm 3 、均方根误差小于0.013 8 g/cm 3 、平均绝对百分比误差小于0.771 1%、决定系数大于0.950 5 ;③该模型能够准确预测任意深度斜井的坍塌压力,Z-1 井在3 个深度处的坍塌压力半球投影图预测最大相对误差小于1.97%、决定系数大于0.987 6。结论认为,该方法能够准确预测给定参数范围内任意斜井的坍塌压力,并能捕捉坍塌压力随井斜和方位的变化规律,对于保持斜井和水平井井壁稳定保障油气安全高效开发具有重要技术支撑作用。
关键词: 井壁稳定;坍塌压力;机器学习;斜井;多层感知机;预测方法
0 引言
坍塌压力是优化钻井液密度、优化井身结构、维持井壁稳定、确保钻井安全的重要基础参数,对于安全高效钻井至关重要 [1-2] 。当井筒压力低于坍塌压力时,井壁可能发生压剪破坏,造成井壁崩落、掉块和井眼扩大,严重时甚至发生井壁坍塌复杂事故 [3-4] 。为了防止井壁坍塌,一般需要使钻井液密度高于坍塌压力当量密度,但过高的钻井液密度会导致机械钻速降低、粘卡风险增加、诱导性井漏风险增加等问题 [5-6] 。因此,坍塌压力的准确预测对于安全高效钻井具有十分重要的作用和现实意义。
对于坍塌压力的预测,国内外学者主要通过测井解释预测坍塌压力,其关键之一在于坍塌压力计算模型。国内外学者基于线弹性力学理论,建立了任意斜井井周应力分布模型,结合不同类型的岩石强度准则,建立了多种斜井坍塌压力计算模型 [7-8] ,但这类模型计算过程比较复杂,现场工程师很难掌握,计算精度仍有待提高。近年来,随着机器学习的不断兴起和发展,机器学习提供了一种解决这些问题的新手段。国内外学者试图利用机器学习解决石油工程专业领域的一些经典问题,如岩石力学参数预测、地应力预测、孔隙压力预测、岩性识别等 [9-14] 。针对井壁稳定预测问题,吴超等 [15] 利用径向基函数神经网络建立了波阻抗与直井地层三压力之间的映射关系,根据波阻抗数据随钻预测钻头前方地层的井壁稳定性,有助于及时优化钻井液密度。Beheshtian 等 [16] 基于多层极限学习机和最小二乘支持向量机,以测井数据作为输入参数,构建了直井安全钻井液密度窗口预测模型,并通过伊朗南帕斯气田3 口井的数据验证了模型。Tewari 等 [17] 提出了一种利用地面录井数据预测斜井安全钻井液密度的方法,通过Bagging 和随机森林算法来模拟传感器测量变量与钻井液密度窗口之间的关系,使用挪威已钻井数据进行训练和测试,并与人工神经网络、支持向量回归机法进行了对比,验证了该方法的准确性。Javad 等 [18] 以测井数据为输入参数,采用支持向量回归机建立了直井安全钻井液密度窗口预测模型,并使用相同区块3 口井的数据进行了训练和测试。Gowida 等 [19] 以测井数据为输入参数,利用人工神经网络建立了直井安全钻井液密度窗口预测模型,并使用中东地区的数据集对模型进行了验证。Phan 等 [20] 利用孔弹性解析模型生成任意斜井坍塌和破裂压力数据集,采用人工神经网络模型进行训练,使用训练后的模型预测了随时间变化的钻井液密度窗口和下半球投影图,计算效率与解析模型相比提高了1 000 倍。
综上所述,传统斜井坍塌压力预测需要进行复杂的斜井井壁应力和强度计算,现场工程师很难掌握,而且存在计算过程繁琐、预测精度较低等不足。使用机器学习模型预测坍塌压力可避免中间参数的计算,简化计算过程,但现有研究的训练和验证数据集样本数量有限,仅能保证同井或钻进方位相近邻井坍塌压力的预测精度,存在泛化能力不足的问题,尤其是在精准预测坍塌压力随井斜角和方位角变化方面仍然存在不足。为此,通过参数随机采样的方式生成斜井坍塌压力计算所需的基础参数,利用斜井坍塌压力模型计算并构建机器学习所需的数据集,将预处理后的数据喂入随机森林、多项式回归、支持向量回归、多层感知机等4 种典型的机器学习模型,对比不同机器学习方法的预测结果优选出最佳模型,对优选模型的结构和超参数进行优化,并使用优化后的模型进行坍塌压力预测来验证模型。本文的研究对于准确预测坍塌压力、简化坍塌压力计算过程、推广机器学习在石油工程领域的应用具有重要的作用和意义。
1 斜井坍塌压力计算模型
1.1 斜井井壁应力分布模型
假设地层岩石为多孔弹性介质,根据Bradley 给出的井周应力分布模型,取径向距离 r = R ,可以得到井壁应力分布模型 [21] :
根据材料力学理论,可得井壁的3 个主应力:
对3 个主应力 σ i 、 σ j 、 σ k 进行排序,即可得井壁最大、中间和最小主应力 σ 1 、 σ 2 和 σ 3 。
1.2 坍塌压力计算模型
井壁坍塌一般是由于地层发生剪切破坏所致,常用Mohr-Coulomb、Drucker-Prager 和Mogi-Coulomb等强度准则判断是否发生剪切破坏。本文采用Mohr-Coulomb 准则,若考虑有效应力原理,则该准则可表示为:
此时,可以定义一个函数 f c 来求解井周地层是否发生剪切破坏:
函数 f c 的物理意义表示地层岩石抵抗井壁剪切应力的能力 [22] 。若 f c < 0,将发生剪切破坏;若 f c = 0,井壁处于极限平衡状态;若 f c > 0,则不会发生剪切破坏。假设井筒压力为未知参数,联立式(1)~(4)进行求解,可得到井壁坍塌的临界井筒压力,即为坍塌压力。
2 坍塌压力的机器学习预测方法
2.1 数据集构建
通过参数随机采样结合坍塌压力解析模型构建机器学习训练所需的数据集。首先,根据各区块已钻井的数据结合专家经验设定参数可能存在的范围;然后,在此范围内进行多次均匀随机采样生成参数样本数据,具体采样次数根据机器学习模型达到最高预测精度时的样本数量决定;最后,将参数样本数据带入坍塌压力解析模型中计算得到坍塌压力数据。机器学习模型通过该数据集训练能学习到任意参数条件下的坍塌压力,从而实现任意斜井或水平井坍塌压力的准确预测。需要注意的是,虽然通过该过程生成的数据集比较大,但仍未包含所有可能存在的参数组合情况,尤其是任意深度下坍塌压力随井斜方位角的变化规律,因此不能通过搜索算法在数据集中找到任意参数所对应的坍塌压力值。参数采样范围如表1 所示,为了符合工程实际,对孔隙压力、最大水平地应力和最小水平地应力设定约束条件 [20] : p p ≤ σ h ≤ σ H 。图1 为随机采样1.0×10 6 次情况下部分参数的柱状分布图,其中,图1-a 为未设定约束条件下垂深的柱状分布图,图1-b、c、d为设定约束条件下孔隙压力、最大和最小水平地应力的柱状分布图。不难看出,在未设定约束条件下,随机采样得到的垂深服从均匀分布,其余未设定约束的参数与之相似;而设定约束条件 p p ≤ σ h ≤ σ H 情况下,随机采样得到的孔隙压力、最大和最小水平地应力不再服从均匀分布,且分布带宽表现为 p p > σ h > σ H ,这说明随机采样过程受到了约束条件的限制。
2.2 数据预处理
为了消除输入参数之间的维度差异,需要对输入参数进行归一化处理 [23] ,将输入参数约束在[0, 1]范围内。对于机器学习而言,这将有助于加快模型在优化过程中梯度下降的速度,提升模型的预测精度。需要说明的是,坍塌压力作为目标数据不需要进行归一化,但为了使模型能够快速收敛,将坍塌压力单位换算为当量密度。归一化采用下式进行处理:
2.3 机器学习模型
机器学习模型中适用于回归问题的主要包括回归树、线性回归、支持向量机和神经网络等4 大类,考虑到坍塌压力与输入参数之间的非线性映射关系,从这4 类方法中选择了适用于非线性回归的随机森林、多项式回归、支持向量回归和多层感知机4 种模型进行坍塌压力预测,进而优选出适合的机器学习模型。
随机森林是一种基于决策树的集成学习模型,其建模流程如图2 所示,从样本数据中随机抽样生成子数据集,根据子数据集构建子决策树,集成所有子决策树的预测值作为最终的输出结果。
随机森林模型的计算公式可表示为 [24-25] :
随机森林模型的关键在于特征随机选取和子决策树的构建。图3 所示为特征随机选取过程,子决策树从所有特征中随机选取一定的特征,并从随机选取的特征中选取最优特征。具有不同特征的子决策树丰富了系统的多样性,提升了模型的预测性能。
子决策树根据平方误差最小化准则选择最优的切分变量 j 和切分点 s ,划分区域并决定相应的输出值,该准则可表示为 [26] :
多项式回归模型是一种典型的线性回归方法,通过加入特征的高次方,增加模型的自由度,从而捕获数据中的非线性变化,拟合出适当的函数曲线,如图4 所示。
多项式回归通过损失函数最小化构建回归方程,该方程可表示为 [27] :
多层感知机(MLP)是一种全连接前馈神经网络 [30] ,图6 为一个具有多个隐藏层的MLP 模型,输入数据通过隐藏层计算后,由输出层神经元进行输出。图中输入层的输入变量 x 1 、 x 2 、…, x n 分别为垂深、井斜角、方位角等基础输入参数,输出层的输出变量 ŷ i 表示破裂压力。隐藏层通过函数 y i = ω i x i + b i 来求解普通线性函数,并通过引入激活函数来求解非线性函数。
MLP 模型计算过程如图7 所示。将基于输入向量和权重的加权求和应用于激活函数 f ,其结果作为后续隐藏层或输出层的输入变量。在MLP 模型中,通过将激活函数从输出层向输入层反向微分来执行反向传播,以减少最终输出层预测值与真实值之间的误差。常用激活函数包括ReLU、sigmoid、tanh,可分别表示为 [31] :
2.4 模型评价指标
为了评价模型预测性能,采用平均绝对误差、平均绝对百分比误差、均方根误差和决定系数4 个评价指标对模型预测结果进行分析和评估,这些评价指标可表示为 [32] :
3 机器学习模型的优选及优化
3.1 机器学习模型优选
不同机器学习模型的适用性存在一定差异,为了验证随机森林、多项式回归、支持向量回归和多层感知机(MLP)4 种模型的预测效果,将4 种模型在相同数据集下进行坍塌压力预测,数据集包括垂深、井斜角、方位角、垂向地应力、最大水平地应力、最小水平地应力、孔隙压力、最大水平主应力方位角、泊松比、内聚力、内摩擦角、Biot 系数以及坍塌压力。训练样本数量为1×10 6 ,并从其中随机划分20% 数据作为验证集,测试样本数量为5×10 4 ,验证集的作用是检验模型的训练效果,测试集的作用是检验模型的预测精度和泛化能力。预测结果如图8 所示:①随机森林模型在训练集的误差较小,而在验证集和测试集的误差较大,说明出现了过拟合现象;②多项式回归模型在训练集、验证集和测试集的误差均较大,说明其无法准确建立坍塌压力与参数之间的非线性映射关系;③支持向量回归模型的预测效果优于随机森林和多项式回归模型,但预测精度仍然较低,并且在测试集的预测精度较差,说明该模型的泛化能力较差;④ MLP 模型在训练集、验证集和测试集的误差均最小、决定系数最大,说明MLP 模型优于其他3 种模型,因此,推荐采用MLP 模型进行坍塌压力预测。
3.2 MLP 模型优化
MLP 模型的神经网络结构对预测性能具有显著影响,选择合适的隐藏层和神经元数量可以使模型具有更好的综合性能。为此,利用交叉验证方法,比较了隐藏层1 ~ 4 个、神经元数量50 ~ 400 情况下,MLP 模型的预测效果,结果如图9 所示。需要注意的是,此处所述的交叉验证方法是考察不同隐藏层和神经元数量组合下MLP 模型预测结果的方法,即在隐藏层数量相同时,神经元数量由50 增加至400 时MLP 模型的预测结果以及在神经元数量相同时,隐藏层数量由1 增加至4 时MLP 模型的预测结果。不难看出:①当隐藏层数量相同时,随着每层神经元数量的增加,MLP 模型预测结果的决定系数整体上逐渐增加,在神经元数量超过350 后决定系数缓慢增加;②平均绝对误差、均方根误差和平均绝对百分比误差随神经元数量的增加整体上表现为逐渐降低的趋势,在神经元数量超过350 后缓慢下降;③当每层中神经元数量相同时,随着隐藏层数量的增加,MLP 模型预测结果的决定系数整体上逐渐增加,平均绝对误差、均方根误差和平均绝对百分比误差表现为逐渐减少,当隐藏层数量超过3 层后,模型的预测性能趋于稳定,模型的预测误差比较接近。考虑到模型的预测性能以及计算效率,推荐采用3 个隐藏层、每层350 个神经元的神经网络结构。
除了神经网络结构参数,模型超参数也会影响MLP 模型的预测精度和综合性能。为了进一步提升MLP 模型的预测精度,对MLP 模型的学习率、迭代次数和批尺寸3 个超参数进行优化。考虑到参数较多且存在交互作用,若使用交叉验证,工作量会变得很大,因此,使用正交试验设计进行超参数优选 [12] :以学习率、迭代次数和批尺寸3 个超参数为因子,每个因子分别选取5 个水平值进行正交试验设计,其中,学习率分为0.001、0.005、0.010、0.015 和0.020,批尺寸分为500、1 000、1 500、2 000 和2 500,迭代次数分别为 200、300、400、500 和 600。正交试验设计是研究多因素多水平的一种设计方法,根据正交性从全面试验中挑选出部分有代表性的点进行试验,这些数据点具备了“均匀分散、齐整可比”的特点,是一种高效率、快速、经济的实验设计方案。正交试验设计方案及对应的评价指标如表2 和图10 所示。
结合表2 和图10 不难发现:①随着迭代次数的增加,模型的平均绝对误差、均方根误差和平均绝对百分比误差表现为先降低后增加,决定系数表现为先增加后降低;②随着批尺寸的增加,模型的平均绝对误差和决定系数表现为先降低后增加,均方根误差和平均绝对百分比误差表现为先增加后降低再增加;③随着学习率的增加,平均绝对误差、均方根误差和平均绝对百分比误差表现为先增加后降低再增加,决定系数表现为逐渐降低,从0.010 增加到0.015 时出现小幅度增加。
可见超参数对于MLP 模型坍塌压力当量密度的预测具有较明显的影响,其中学习率的影响较大,批尺寸的影响较小。不同超参数组合下,MLP模型预测坍塌压力的误差存在一定差异, E MAE 介于0.010 ~ 0.044 g/cm 3 、 E RMSE 介于0.015 ~ 0.025 g/cm 3 、 E MAPE 介于0.538% ~ 2.419%、 R 2 介于0.980 ~ 0.992,其中,第4 组超参数条件下坍塌压力的预测误差最低、决定系数最高,其对应指标分别为 E MAE = 0.010 g/cm 3 、 E RMSE = 0.015 g/cm 3 、 E MAPE = 0.538%、 R 2 = 0.992。因此,MLP 模型的最优超参数组合为:学习率0.001、批尺寸2 000、迭代次数500。
训练集样本数量也会影响MLP模型的预测性能,因此将训练集样本数量由1×10 5 增加至2×10 6 ,分别对MLP 模型进行训练,并在相同的测试集下进行测试,分析不同样本数量的训练集对模型预测结果的影响,相应的评价指标如图11 所示。不难看出:当训练集样本数量为1×10 5 时,MLP 模型的预测误差较大,随着训练集样本数量的增加,预测误差逐渐降低,预测精度随样本数量的增加逐渐提高;当样本数量超过1.2×10 6 后,模型的性能趋于稳定。因此,考虑到模型的预测精度和计算效率,推荐训练集的样本数量为1.2×10 6 。
3.3 MLP 模型的训练及验证
采用上述网络结构和超参数组合对模型进行训练和验证,MLP 模型由3 个隐藏层、每层350 个神经元组成,训练集样本数量为1.2×10 6 ,验证集和测试集的样本数量分别为5×10 4 和2×10 5 ,模型的学习率为0.001、批尺寸为2 000、迭代次数为500。MLP 模型在训练、验证和测试集上的性能如表3 所示。可以看出:优化后的MLP 模型在训练集、验证集和测试集的误差指标 E MAE 、 E RMSE 、 E MAPE 均比优化前显著降低,其对应的决定系数分别为0.999 7、0.995 0、0.999 4。优化后模型在训练集和验证集的良好预测性能表明:MLP 模型能够建立输入参数与坍塌压力之间的非线性映射关系;优化后模型在测试集的良好预测性能表明:MLP 模型具有较强的泛化能力,能够实现坍塌压力的准确预测。
图12 是MLP 模型与解析模型的计算时间对比图(MLP 模型的计算时间是指模型进行预测所需的时间,不包含构建数据集以及模型参数优化和进行训练所花费的时间),可以看出:随着样本数量的增加,解析模型所需的计算时间和MLP 模型进行预测所需的时间都呈现一种近似于线性的增长趋势。对于相同的样本数量,解析模型进行坍塌压力计算所需的时间为MLP 模型预测所需时间的10 倍左右,因此,MLP 模型相较于解析模型具有更好的计算效率。
4 井壁稳定实例分析
为进一步检验模型的预测效果,利用四川某区块一口水平井(Z-1 井)的测井解释结果对模型进行验证。将直井段、斜井段和水平段的坍塌压力预测结果与坍塌压力真实结果进行了对比,对比结果如图13 所示。表4 为不同井段MLP 模型预测结果的评价指标。结合表4 和图13 不难看出:MLP 模型预测的坍塌压力与测井解释结果吻合较好;直井段和斜井段坍塌压力的预测误差略微高于水平井段,但整体误差较小,能够满足现场井壁坍塌压力预测的实际需求。
为了进一步验证模型预测任意斜井坍塌压力的性能,取Z-1 井直井段处3 250 m、斜井段处3 700 m和水平段处4 600 m 3 个深度进行坍塌压力半球投影图预测。图14 为MLP 模型预测的坍塌压力半球投影图及其与解析模型间的相对误差,表5 为3 个深度处预测结果的评价指标统计表。不难看出:3 个深度处的坍塌压力下半球投影图分布大致相近,但坍塌压力当量密度差异较大;直井和小角度定向井坍塌压力较低,坍塌压力随井斜角的增加整体呈增大趋势,最大水平地应力方向的坍塌压力明显低于最小水平地应力方向;深度3 250 m 处的最大相对误差为-1.97%、 R 2 = 0.994 9,深度3 700 m 处的最大相对误差为-1.59%、 R 2 = 0.989 1,深度4 600 m 处的最大相对误差为-1.74%、 R 2 = 0.987 6,说明MLP模型具有较强的泛化能力,能够实现对于斜井任意深度点不同井斜方位下坍塌压力的准确预测。
5 结论
1)通过参数均匀随机采样和斜井坍塌压力计算模型构建了训练数据集,采用随机森林、多项式回归、支持向量机和MLP 模型4 种机器学习模型,建立并优选了适合斜井坍塌压力预测的机器学习方法,4种机器学习模型对比结果表明:MLP 模型预测误差最低、决定系数最高,更适合用于斜井坍塌压力的预测。
2)通过MLP 模型神经网络结构及超参数优化,推荐MLP 模型的隐藏层数量为3、神经元数量为350,超参数组合为学习率0.001、批尺寸2 000、迭代次数500,训练集样本数量为1.2×10 6 。
3)Z-1 井直井段、斜井段和水平段坍塌压力预测结果与测井解释结果吻合较好,其平均绝对误差小于0.007 3 g/cm 3 、均方根误差小于0.013 8 g/cm 3 、平均绝对百分比误差小于0.771 1%、决定系数大于0.950 5,说明该模型能够准确预测Z-1 水平井不同井段的坍塌压力剖面,能够满足现场井壁稳定预测的实际需求。
4)Z-1 井3 个不同深度处斜井坍塌压力预测结果与解析模型预测结果一致性较好,其最大相对误差小于1.97%、决定系数大于0.987 6,说明该模型在预测任意深度处斜井和水平井坍塌压力方面具有较强的泛化能力,能够实现任意深度处不同井斜和方位条件下坍塌压力的准确预测。
参考文献请点击 下方“阅读原文”查看
编 辑 王 斌
论文原载于《天然气工业》2023年第9期
基金项目 : 四川省杰出青年科技人才项目“深层页岩水平井井壁稳定流固化热耦合弹塑性有限元模拟”(编号:2020JDJQ0055)。
编辑:张 敏
审核:王良锦 黄 东
点击
阅读原文
,链接到《
天然气工业
》官网
-
2023年血糖新标准公布,不是3.9-6.1,快来看看你的血糖正常吗? 2023-02-07
-
2023年各省最新电价一览!8省中午执行谷段电价! 2023-01-03
-
GB 55009-2021《燃气工程项目规范》(含条文说明),2022年1月1日起实施 2021-11-07
-
PPT导出高分辨率图片的四种方法 2022-09-22
-
2023年最新!国家电网27家省级电力公司负责人大盘点 2023-03-14
-
全国消防救援总队主官及简历(2023.2) 2023-02-10
-
盘点 l 中国石油大庆油田现任领导班子 2023-02-28
-
我们的前辈!历届全国工程勘察设计大师完整名单! 2022-11-18
-
关于某送变电公司“4·22”人身死亡事故的快报 2022-04-26
