微信扫码
添加专属顾问
中国石化人工智能大赛聚焦油田开发关键难题,探索AI在水驱油藏注采优化中的创新应用。 核心内容: 1. 水驱油藏开发的技术挑战与注采参数优化痛点 2. 基于历史数据构建时空预测模型的赛题设计 3. 多维度油藏数据(井位/井斜/射孔/生产)的分析与应用
https://aicup.sinopec.com/competition/SINOPEC-03/
地下石油并非储存在巨大的油湖中,而是分布于岩石的微小孔隙内。油田开发初期依赖地层自身的天然压力进行开采,但随着压力逐渐衰竭,油井产量会大幅下降。为维持产量,工程师采用水驱开发技术,即通过注水井向油层注水,以补充地压、驱赶原油。本次竞赛的数据就来自于一个进入水驱开发中后期的油藏,其动态调控的复杂性和重要性尤为突出。
水驱开发的核心挑战在于,水的流动性比油更好。若注采调控不当,注入水会沿高渗透通道直接流窜到生产井,形成无效水循环,大幅降低石油的最终采收率。因此,如何精确地协同调控多口注水井的注水量和生产井的产液量,以最大限度地驱替石油而非“水”本身,是决定油田开发经济效益的关键技术难题。
目前,注采参数的优化主要依赖工程师的经验和耗时的数值模拟,难以实时捕捉多口井之间的动态干扰。本次竞赛旨在探索一种新的解决方案:要求选手利用提供的油藏历史数据,构建人工智能模型,精准预测在给定的未来注采计划下,油井的含水率将如何变化,从而为油田的智能化决策提供支持。
参赛选手需利用提供的油藏历史数据集,构建一个高精度的时空预测模型。
依据油藏的静态及动态数据,在给定各油井日度数据作为输入条件的前提下,精准预测出油井日度含水率(%)。
含水率的上升趋势和速度,可以帮助工程师判断当前的注水方案是否有效。一个理想的状态是含水率缓慢而平稳地上升,这表明水正在均匀地推进,有效地将大片区域的原油“扫”向生产井。
定义了每口井在地面上的精确位置,是分析井与井之间相互影响的基础。每一行数据代表一口井的地理坐标。
现代钻井技术允许井在地下弯曲穿行,以更好地接触油层。这份数据精确描述了这种三维轨迹,揭示了井在地下的真实走向,是进行精确油藏模拟和分析的关键。
射孔是油井完井和后期改造中的关键步骤,它是在井筒的钢制套管上打出孔眼,建立油气从地层流入井筒的通道。这份数据就是这些“通道”的建立记录。
这份数据记录了油井在不同时间点都打开了哪些“阀门”来采油。以“1号井”为例,它在2000年、2016年、2021年等多个时间点都有射孔记录。这说明这口井的“工作状态”是动态变化的。
以月为单位,跟踪和记录了一口油井在生产过程中的各项关键性能指标随时间的变化。 每一行数据代表了某一口井在某一个月份的生产表现总结。
总结了每口注水井每月向地层补充能量的“工作量”和“工作状态”,是理解整个油田压力系统变化和预测油井“水淹”规律的关键输入。
这是油井近期的微观工作日报。它以天为单位,提供了比月度数据更精细的动态信息,尤其能反映出短期操作、设备状态变化和工程师的直接干预措施。
详细记录了每日的注水操作和井口状态,是分析油井含水率短期波动的直接原因的重要依据。
石油开采是一个漫长而复杂的过程,通常分为多个阶段。目前世界上绝大多数油田所采用的“水驱开发”方式。
油田开发初期,地下油藏处于高压状态。当钻井打通岩层后,这种天然压力(如岩石上覆压力、溶解气驱、边水驱动等)会像“挤海绵”一样,将石油自发地推向压力较低的井筒,并举升到地面。
水总是寻找阻力最小的路径(高渗透带或裂缝)。如果某口生产井的含水率在注水后异常快速上升,这就像一个警报,提示注入水可能没有有效地大面积驱油,而是形成了“水流优势通道”(也叫水窜)直接短路到了这口生产井。
井在地面上的位置决定了其控制的地下区域。根据油藏工程中的“井网”概念(如五点法、九点法井网),注水井和生产井的相对位置决定了水驱油的方向和效率。
直井是垂直打下去的,而定向井/水平井可以在地下拐弯、水平延伸。这样做的目的是让井筒在油层中穿行的距离更长,接触更多的原油,提高单井产量(就像让收容点的大门开得更长)。
油井并不是整个井筒都在采油。地下的油层像千层饼一样,一层一层的。通过“射孔”这道工序,用射孔弹在特定的深度位置炸开套管和水泥环,打开油层与井筒之间的通道。
生产层位通常遵循一个层次化的命名系统:大层位(层组)-小层位(砂层组)-具体小层号。
Es2x: 代表一个主要的地质单元,如“二叠系下统”。这是最宏观的分类,表明所有这些井都位于相似的区域地质结构中。F 或 15: 可能是砂层组(Facies),代表了沉积相或更细分的层组。1,2,3,4,5,6: 代表了具体的砂层编号,例如 ES2XF1 表示 Es2x 大层位下 F 砂层组的第1号小层。(1),(2): 进一步细分了小层,可能代表了该小层内部的子单元。许多条目都以 起始层位 - 终止层位 的形式出现,这表明油井同时开采了多个连续的层位。
将每口生产井(油井) 视为一个独立的预测单元,但其行为受到两类信息的共同驱动:
量化本井与外部其他井(尤其是注水井)的空间相互作用。基于well_deviation数据,计算两口井井下轨迹之间的最近距离。这是更精确的特征,因为地下井身可能是弯曲的。
此外还需要判断注水井I和生产井O的射孔层位是否有重叠。
is_same_layer_{layer_name}: 布尔特征,标记与注水井是否在同层注采。num_injectors_same_layer: 有多少口注水井在生产井的相同层位注水。wc_rolling_mean_7d:过去7天平均含水率。wc_rolling_mean_30d:过去30天平均含水率。wc_rolling_std_7d:过去7天含水率的标准差。值突然变大可能预示水窜或生产不稳定。liquid_rolling_std_7d:产液量的波动性。wc_rolling_trend_7d:用过去7天的数据点拟合一条线性回归线,取其斜率作为特征。wc_rolling_trend_30d:过去30天的趋势,反映长期方向。wc_rolling_max_30d:过去30天的最高含水率。wc_rolling_min_30d:过去30天的最低含水率。将日度、月度和静态数据合并到一个特征表中,然后用线性回归进行预测。
train_set = pd.merge(train_daily_oil, well_info, on = "井号", how="left")
train_set["日期"] = pd.to_datetime(train_set["日期"])
train_set["日期"] = train_set["日期"].dt.to_period('M')
train_set["日期"] = train_set['日期'].dt.to_timestamp()
well_deviation_agg = well_deviation.groupby("井号").agg({
"测点深度": ["min", "max"],
"井斜角": ["max", "nunique"],
"方位角": ["max", "nunique"]
})
well_deviation_agg.columns = [x[0] + "_" + x[1] for x in well_deviation_agg.columns]
well_deviation_agg = well_deviation_agg.reset_index()
train_set = pd.merge(train_set, well_deviation_agg, on = ["井号"], how="left")
train_daily_water_agg = train_daily_water.groupby(["井号", "日期"]).agg({
'干 压(Mpa)': ["min", "max", "sum"],
'油 压(Mpa)': ["min", "max", "sum"],
'日配注(m3)': ["min", "max", "sum"],
'日注水(m3)': ["min", "max", "sum"],
})
train_daily_water_agg.columns = [x[0] + "_" + x[1] for x in train_daily_water_agg.columns]
train_daily_water_agg = train_daily_water_agg.reset_index()
train_set = pd.merge(train_set, train_daily_water_agg, on = ["井号", "日期"], how="left")
train_monthly_oil['年 月'] = train_monthly_oil['年 月'].astype(str)
train_monthly_oil['年 月'] = pd.to_datetime(train_monthly_oil['年 月'], format='%Y%m')
train_monthly_oil['日期'] = train_monthly_oil['年 月'].dt.to_period('M')
train_monthly_oil["日期"] = train_monthly_oil['日期'].dt.to_timestamp()
train_set = pd.merge(train_set, train_monthly_oil, on = ["井号", "日期"], how="left")
train_set = train_set.drop(["ID", "井号", "日期", "生产层位", "年 月", "层 位"], axis=1)
test_set = pd.merge(validation_daily_oil, well_info, on = "井号", how="left")
test_set["日期"] = pd.to_datetime(test_set["日期"])
test_set["日期"] = test_set["日期"].dt.to_period('M')
test_set["日期"] = test_set['日期'].dt.to_timestamp()
test_set = pd.merge(test_set, well_deviation_agg, on = ["井号"], how="left")
test_set = pd.merge(test_set, train_daily_water_agg, on = ["井号", "日期"], how="left")
test_set = pd.merge(test_set, train_monthly_oil, on = ["井号", "日期"], how="left")
test_set = test_set.drop(["id","井号", "日期", "生产层位", "年 月", "层 位", ], axis=1)
model = LinearRegression()
model.fit(train_set.drop(['含水', "日产油(t)"], axis=1).fillna(0), train_set["含水"])
pred = model.predict(test_set.fillna(0)).astype(int)
validation_daily_oil["predict"] = pred
validation_daily_oil[["id", "predict"]].to_csv("result.csv", index=None)
井间距离:除了简单的井口坐标距离,更精确的特征是利用井斜数据计算井筒在地下油层中的最近距离或平均距离。
连通性指标:将每口井视为图中的节点,井之间的空间关系(如距离、层位连通性)作为边的权重。
考虑多层位交互:射孔数据表明油井在不同层位进行生产。可以构建分层位的空间特征,
趋势与波动:除了简单的滚动均值和标准差,可以引入更复杂的时序特征,如偏度(skewness) 和峰度(kurtosis)。
注水滞后效应:注水对油井含水率的影响通常存在滞后性。可以计算注水井在过去一定时间窗口内(例如,30天、90天)的累计注水量,作为当前时刻的输入特征。
交叉特征:将时序特征和空间特征进行组合。例如,计算“距离生产井最近的注水井在过去30天的平均注水量”,或者“与生产井同层位的注水井的累计注水量”。
线性模型难以捕捉油藏系统中复杂的非线性关系,树模型能够自动学习复杂的非线性关系。
含水率是单调递增的,那么历史的上升速度对未来的预测至关重要。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2026-07-11
别再为 AI 调用超支头疼:Credits 配额,让每一笔消耗都透明可控
2026-07-11
阿里腾讯 AI 大战
2026-07-10
OpenAI“杀死了”Codex,一个超级应用诞生
2026-07-10
OpenAI 重磅推出超级 APP 及 GPT 5.6
2026-07-10
GPT-5.6 正式开放:三个型号一起放出完整成绩单,ultra 其实是 4 个智能体并行
2026-07-10
GPT-5.6深夜上线,首发实测,Claude Fable5 慌了!
2026-07-10
刚刚,GPT-5.6全面上线,Codex被合并,生产力工具ChatGPT Work来了
2026-07-09
Claude Design 迎来一次重大更新
2026-04-15
2026-04-24
2026-04-17
2026-04-14
2026-04-24
2026-05-19
2026-04-22
2026-04-24
2026-04-24
2026-04-16
欢迎您使用【53AI 官方网站】(以下简称“本网站”或“我们”)。本《会员服务协议》(以下简称“本协议”)是您(以下简称“会员”或“用户”)与【深圳市博思协创网络科技有限公司】之间关于注册、登录及使用本网站会员服务所订立的法律协议。
在您注册或登录前,请务必审慎阅读、充分理解各条款内容,特别是免除或限制责任的条款、知识产权条款、争议解决条款等。此类条款将以加粗形式提示您注意。 当您通过微信公众号授权、手机验证码验证或其他方式成功登录本网站时,即视为您已完全理解并同意接受本协议的全部内容。
一、 定义
本网站:指由【深圳市博思协创网络科技有限公司】运营的,域名为【53ai.com】的网站及相关移动端页面。
会员服务:指本网站向注册会员提供的知识库文章查阅、内容检索及其他相关增值服务。
知识库内容:指本网站发布的包括但不限于文字、图表、数据、研究报告、行业分析等数字化内容资源。
二、 账号注册与登录
登录方式:本网站支持以下登录方式,您可根据实际情况选择:
微信公众号授权登录:您同意将您的微信OpenID信息授权给本网站,用于创建或关联会员账号。
手机验证码登录:您需提供真实有效的手机号码,并通过短信验证码完成身份验证与登录/注册。
账号安全:您的账号仅限您本人使用,禁止赠与、借用、租用、转让或售卖。因您保管不善导致的账号被盗、密码泄露等损失,由您自行承担。
实名认证:根据相关法律法规要求,我们可能要求您在特定功能下完成实名认证。如您拒绝提供,可能无法使用部分或全部服务。
未成年人保护:若您未满18周岁,请在法定监护人的陪同下阅读本协议,并在征得监护人同意后使用本服务。
三、 服务内容与规范
知识库查阅权限:会员登录后,有权按照其会员等级对应的权限范围,在线浏览、检索本网站知识库中的相关文章及内容。
服务变更:我们有权根据业务发展需要,调整、变更或终止部分服务内容,并将以网站公告、公众号消息等方式提前通知。
禁止行为:您在使用服务时不得实施以下行为:
利用技术手段批量爬取、下载、转存知识库内容;
将知识库内容用于商业目的或未经授权地向第三方传播;
干扰本网站正常运行或侵犯其他用户合法权益;
发布违法违规信息或从事违反公序良俗的活动。
四、 知识产权声明
权利归属:本网站知识库中的排版设计、软件代码等内容的知识产权均归【公司全称】或原权利人所有,受《中华人民共和国著作权法》等法律保护。
有限许可:本网站授予会员一项非独占、不可转让、不可转授权的普通许可,仅限于个人学习、研究之目的在线查阅知识库内容。
侵权追责:未经书面许可,任何单位或个人不得以任何形式复制、转载、摘编、镜像、汇编或以其他方式使用上述内容。一经发现,我们保留追究其法律责任的权利。
五、 个人信息保护
我们重视对您个人信息的保护。关于我们如何收集、使用、存储和保护您的个人信息,请单独阅读 《隐私政策》。
您通过微信公众号授权或手机号验证所提供的信息,我们将严格按照《个人信息保护法》的规定处理,仅用于身份识别、服务提供及安全验证等必要用途。
您可以随时通过网站设置或联系客服行使查阅、更正、删除个人信息及撤回授权同意的权利。
六、 免责声明
内容准确性:知识库内容仅供参考,不构成专业建议。我们不对其完整性、准确性、时效性作任何明示或暗示的保证,您应自行判断并承担使用风险。
不可抗力:因自然灾害、政策法规变化、网络故障、第三方平台接口异常(如微信接口维护、运营商短信通道故障)等不可抗力导致的服务中断或延迟,我们不承担违约责任。
第三方链接:本网站可能包含指向第三方网站的链接,该等网站的内容和服务不受我们控制,请您自行甄别风险。
七、 违约责任
如您违反本协议约定,我们有权视情节采取警告、限制功能、暂停服务、注销账号等措施,并保留要求赔偿损失的权利。
如因您的违约行为导致我们遭受行政处罚、第三方索赔或商誉损失,您应承担全部赔偿责任(包括但不限于罚款、赔偿金、律师费、公证费等)。
八、 法律适用与争议解决
本协议的订立、执行和解释均适用中华人民共和国大陆地区法律。
因本协议产生的或与本协议有关的任何争议,双方应友好协商解决;协商不成的,任何一方均可向【公司所在地】有管辖权的人民法院提起诉讼。
九、 其他
本协议构成双方就本服务达成的完整协议,取代此前任何口头或书面约定。
本协议任一条款被认定为无效或不可执行的,不影响其他条款的效力。
我们对本协议享有最终解释权,并在法律允许的范围内保留随时修改的权利。修改后的协议一经公布即生效,继续使用服务即视为同意修订内容。