1. 引言
随着全球对清洁可再生能源需求的不断增加,地热能因其储量丰富、稳定可靠等特点在全球能源转型中扮演着重要角色 [1] 。我国地热资源分布广泛,尤其在大型沉积盆地中储量丰富 [2] [3] [4] 。其中,孔隙型热储以其渗透性好、非均质性弱等特点,成为地热开发的理想选择 [5] 。CO2循环采热是一种高效的地热开发方法,与传统的注水开采相比,CO2在超临界状态下具有更高的流动性和采热效率,同时还能在一定程度上实现CO2的地质封存 [6] [7] 。然而,由于孔隙型热储CO2循环采热过程涉及复杂的多场耦合过程,传统数值模拟方法模拟CO2循环采热过程计算量大、耗时长。近年来,国内外学者针对CO2循环采热开展了大量的数值模拟研究。通过建立热流耦合数值模拟模型研究了地质控制因素对地热流体储层CO2循环采热影响 [8] 。建立三维的热流耦合模型模拟了CO2在EGS中的热提取以及CO2封存 [9] 。但数值模拟建模复杂,且具有复杂性和非线性的特征,计算时通常会消耗大量的时间和计算资源 [10] [11] 。而基于深度学习方法的代理模型因为不依赖数学公式或物理模型并可以形成具有高度预测性能的模型得到了迅猛发展。
代理模型的基本思想是用一个简单的模型来近似代替一个复杂的模型,以实现更高效的计算和预测。随着计算机性能的进步,越来越多的代理模型技术在地热领域得到了发展。生成式对抗网络是最流行的深度学习框架之一,它是由Ian J. Goodfellow等人提出的 [12] ,生成式对抗网络是一个通过对抗过程训练模型的框架。在本研究中,以渭河盆地西安凹陷高陵群这一典型的孔隙型热储为例,使用序贯高斯模拟方法生成随机渗透率场,基于生成对抗网络(GAN)开发了一种模拟注入CO2循环采热过程热储三维温度演化的代理模型,代理模型通过输入渗透率场和时间输出热储温度分布,GAN可以学习到输入与输出之间的映射关系达到快速预测热储温度分布的目的。
2. 数据集生成
本研究基于渭河盆地西安凹陷高陵群的储层物性建立地质模型。首先采用序贯高斯方法生成多个符合高陵群地质统计特征的渗透率分布,具体参数设定见表1。然后根据固有的渗透率推算地层岩石的孔隙度,应用霍尔兹相关性 [13] 来关联孔隙度和渗透率,可用以下等式表示:
(1)
其中k为岩石的固有渗透率,φ为储层岩石的孔隙度。为通过该方法随机生成的渗透率分布。
![](Images/Table_Tmp.jpg)
Table 1. Geological statistical parameters
表1. 地质统计参数
根据以上参数使用序贯高斯模拟生成800个渗透率分布,图1为其中一个生成结果。
![](//html.hanspub.org/file/129-2571685x8_hanspub.png?20240604170346443)
Figure 1. Permeability distribution generated by the sequential Gaussian simulation method
图1. 序贯高斯数值模拟生成渗透率场
以渭河盆地西安凹陷高陵群储层物性为例,气水两相渗流传热数值模拟热储参数设定如表2所示。在三维数值模拟模型中,网格数量为64 × 64 × 16,每一个网格大小为10 m × 10 m × 4 m。地热开采采用两口垂直井,注入井位于热储剖面网格的(7, 57),生产井位于(57, 7)。CO2在37 MPa的恒定井下压力约束下注入,注入的CO2温度为40℃,CO2循环采热过程持续30年。描述不同组分之间的质量守恒方程与CO2-水两相渗流的能量守恒方程通过有限差分方法对方程进行离散,在每个时间步,离散后的非线性代数方程组通过牛顿迭代法进行求解。
![](Images/Table_Tmp.jpg)
Table 2. Numerical simulation model parameter settings
表2. 数值模拟模型参数设置
为了生成用于代理模型训练和测试的储层温度分布图,需要保存7个时间步长的输出,首先以1年为间隔,保存1到10年的时间段,然后以10年为间隔,保存第10年到50年的储层温度分布。
数值模拟计算完成后需要对其进行预处理。预处理主要是对数据进行归一化,将所有的数据缩放到一个统一的范围。归一化处理能够帮助代理模型更快地学习和收敛,减少训练时间,并防止训练过程中的梯度消失或爆炸问题。训练数据包含渗透率场、时间信息、不同时刻下渗透率场对应的温度分布数据。
归一化公式为:
(2)
其中k为数据,kmin为每一类数据的最小值,kmax为每一类数据的最大值,x为处理后的数据。
数据归一化后,将渗透率场与时间信息进行拼接。处理结束后,将数据的80%作为训练集,20%作为测试集。
3. 代理模型构建及模型评价
3.1. 代理模型构建
生成对抗网络由生成器和判别器组成,生成器负责生成逼真的储层温度分布,而判别器则负责判断输入的样本是真实的(来自真实数据分布)还是生成的(来自生成器) [12] 。在构建模型时,需要设计生成器和判别器的网络结构。在本研究中,该模型由生成器(Generator)和判别器(Discriminator)两部分组成,如图2所示。生成器采用U-net结构,由下采样编码器和上采样解码器构成,生成器的输入输出均为64 × 64 × 16。下采样编码器由7个串联的卷积块组成,每个卷积块包含卷积层、激活函数层和批标准化层,通过逐步缩小特征图的空间分辨率和增加通道数,提取输入数据的局部特征。上采样解码器由7个串联的反卷积块组成,通过逐层上采样和通道数减少,将特征图的空间分辨率恢复到与输入图像相同,并引入随机丢弃正则化以减少过拟合风险。在U-net架构中,上采样过程中的每一层特征图与下采样过程中对应层的特征图按通道维度拼接,以传递不同尺度的语义信息。判别器采用Patch GAN结构,由5个卷积块组成,对输入的热储温度分布图像的局部区域进行真假判断,最终通过平均池化得到全局的真假判别结果。这种设计可以显著减少参数量和计算消耗,提供局部精细的梯度信号,鼓励生成器合成逼真细节。
生成对抗网络模型的损失函数由两部分组成:生成器损失函数采用二元交叉熵和L1损失函数相组合,判别器损失函数采用二元交叉熵。在训练过程中将迭代地更新生成器和判别器的参数以使两个损失函数同时达到最优,训练过程中的每一步都会根据实际数据进行参数更新,直到模型收敛或达到停止条件为止。生成器损失函数
可以表示为:
(3)
其中,前半部分为二元交叉熵,y是二元标签0或者1,
是属于y标签的概率,二元交叉熵是用来评判一个二分类模型预测结果的好坏程度的,通俗的讲,即对于标签y为1的情况,如果预测值
趋近于1,那么损失函数的值应该趋近于0。反之,如果此时预测值
趋近于0,那么损失函数的值应该非常大。后半部分为L1损失函数,通过一个权重λ控制两部分的占比。
判别器损失函数
可以表示为:
(4)
3.2. 模型评价标准
在本研究中,使用了两种方法评价模型性能,分别是结构相似性指数、均方根误差。SSIM算法分别从亮度、对比度、结构三方面度量两幅图像相似性,其值越接近于1越相似,越接近于0则越不相似 [14] 。SSIM定义如下:
(5)
其中μ表示给定图像的平均值,
表示给定图像的标准差,x和y是被比较的两个图像,C1与C2为常数,保证分母为0时的稳定性。
RMSE通过计算预测值和实际值之间距离(即误差)的平方后,开方来衡量模型优劣。即预测值和真实值越接近,两者的均方差就越小。RMSE可以表示为:
(6)
其中,N为样本数量,
为真实图像,
为生成器模型生成的图像。
4. 结果分析
本研究采用气水两相渗流数值模拟,生成了904组3维图像数据集。每组数据包含从第1年至第30年(间隔5年),共7个时间节点的储层温度分布情况。为了深入分析和验证所开发的深度学习代理模型的有效性,训练集和测试集是完全独立的,确保了评估的公正性和准确性。图3展示了训练集中的一组示例数据。
在训练完成后,使用训练时未被使用的数据测试代理模型。预测了注入CO2采热后第366天、1827天、3653天、5479天、7305天、9132天、10,958天的储层温度分布情况,代理模型预测结果如图4所示。本节中使用SSIM与RMSE两种方法计算代理模型预测结果与数值模拟结果之间的误差。如图5所示,SSIM最小值为0.97,RSME最大值小于0.05,说明代理模型能够复现非均质热储CO2循环采热过程中温度场时空演化规律。
![](//html.hanspub.org/file/129-2571685x24_hanspub.png?20240604170346443)
Figure 4. Dynamic temperature distribution during heat extraction process (numerical simulation results, proxy model predictions, residual plot)
图4. 采热过程动态温度分布(数值模拟计算结果、代理模型预测结果、残差图)
![](//html.hanspub.org/file/129-2571685x25_hanspub.png?20240604170346443)
Figure 5. SSIM and RMSE comparison between proxy model results and numerical simulation results
图5. 代理模型结果与数值模拟结果SSIM与RMSE
本研究采用测试集中的所有样本,对训练后的代理模型进行了系统测试,并使用结构相似性指数(SSIM)和均方根误差(RMSE)两个定量指标对代理模型的预测结果与数值模拟结果进行了比对分析。图6展示了深度学习代理模型在整个测试集预测结果与数值模拟计算结果的SSIM分布情况。统计发现,所有测试样本的SSIM值均具有较高的数值,最大值高达99.74%,最小值也达到78%,平均SSIM指数更是高达97%,表明代理模型生成的三维温度场在结构纹理上与数值模拟结果具有极高的相似度,验证了代理模型优异的泛化预测能力。同时,本研究计算了整个测试集预测结果的均方根误差分布,如图6所示,可以看出,所有测试样本的RMSE值分布较为集中,最大值为0.2,最小值为0.002,整体平均RMSE仅为0.04。这些定量结果再次证实,代理模型能够以较小的预测误差准确预测孔隙型热储CO2循环采热过程的三维热储温度演化,具有良好的泛化性能。
为了比较三维深度学习代理模型与气水两相渗流传热数值模拟在计算效率上的差异,本研究对两种方法的计算耗时进行了定量分析,如图7所示。在代理模型训练之前,我们首先使用数值模拟方法生成了766组结果作为训练集数据,每个数值模拟过程平均耗时约20分钟。由于训练集的生成是代理模型训练的前提,因此在模型训练开始前,代理模型与数值模拟在时间成本上并无差异,累计耗时相同。三维代理模型训练需要花费45个小时,这相当于数值模拟计算135个模型。当代理模型训练结束后,代理模型预测热储温度仅需要不到1秒,而数值模拟模型依然需要20分钟,因此,如果需要模拟超过135个,使用本代理模型将会是更优的选择。
![](//html.hanspub.org/file/129-2571685x26_hanspub.png?20240604170346443)
Figure 6. Overall test set SSIM and RMSE comparison between proxy model predictions and numerical simulation results
图6. 整体测试集代理模型预测结果与数值模拟结果SSIM与RMSE
![](//html.hanspub.org/file/129-2571685x27_hanspub.png?20240604170346443)
Figure 7. Computational time of proxy model versus numerical simulation time
图7. 代理模型计算时间与数值模拟计算时间
5. 结论
基于GAN,设计了三维孔隙型热储CO2循环采热过程的深度学习代理模型,代理模型预测结果与数值模拟结果的SSIM平均值为97%,RMSE平均值为0.002,说明代理模型能够有效捕捉流体循环采热过程中储层温度场的动态演化,验证了三维代理模型在模拟CO2循环采热热储温度分布的可行性。
通过生成器和判别器的对抗学习,代理模型能够自动提取渗透率场和温度场之间的高维非线性映射关系,生成与数值模拟结果高度一致的三维温度分布。同时,代理模型的泛化能力得到验证,对于未参与训练的新渗透率场,模型依然表现出了优异的预测性能,这为代理模型在实际孔隙型热储CO2循环采热中的应用提供了可能。
与传统的数值模拟方法相比,训练完成的三维代理模型在预测效率上具有明显优势。数值模拟求解耗时15~30 min,而代理模型的预测时间小于1 s,速度呈数量级的提升。高效的代理模型使得实时热储动态分析、不确定性定量评估、参数优化等任务成为可能,为孔隙型热储开发决策提供强有力的工具。
综上所述,本研究提出了一种基于生成对抗网络的储层温度预测优化方法,旨在解决地热能开发中的储层温度预测问题,通过构建代理模型并进行训练,利用GAN学习渗透率场与储层温度分布之间的复杂关系实现了对储层温度的高效预测。实验结果表明,地热能开发领域具有广阔的应用前景,能够有效地指导地热能资源的开发和利用,提高地热能开发的效率和经济效益。