Розробка системи ШІ для нафтогазової промисловості: оптимізація видобутку та аналіз свердловин
Нафтогазова промисловість — один з найбільш зрілих користувачів ML: датчики на кожній свердловині, величезні обсяги геолого-геофізичних даних, висока вартість прийнятих рішень. ШІ оптимізує видобуток, прогнозує дебіт та запобігає аварійним ситуаціям.
Прогнозування дебіту свердловин
Аналіз кривої спаду (DCA) + ML:
Класичний DCA (Arps) описує криву падіння дебіту нафти/газу з часом. ML поліпшує DCA шляхом врахування фізичних параметрів колектора та технологічних режимів:
import numpy as np
from scipy.optimize import curve_fit
from sklearn.ensemble import GradientBoostingRegressor
import pandas as pd
class WellProductionPredictor:
"""Комбінована модель прогнозування дебіту: DCA + ML корекції"""
def arps_decline(self, t, qi, di, b):
"""Hyperbolic decline curve (Arps): q(t) = qi / (1 + b*di*t)^(1/b)"""
return qi / (1 + b * di * t) ** (1 / b)
def fit_dca(self, time_days, production_bbl_day):
"""Підбір параметрів DCA для свердловини"""
try:
popt, _ = curve_fit(
self.arps_decline,
time_days, production_bbl_day,
p0=[production_bbl_day[0], 0.01, 0.5],
bounds=([0, 1e-6, 0], [1e6, 2.0, 2.0]),
maxfev=5000
)
return {'qi': popt[0], 'di': popt[1], 'b': popt[2]}
except:
return None
def ml_correction_features(self, well_data):
"""Ознаки для ML корекції DCA"""
return {
'reservoir_pressure': well_data['bhp_current_psi'],
'water_cut': well_data['water_cut_pct'],
'choke_size': well_data['choke_size_64th'],
'esp_frequency': well_data.get('esp_hz', 50),
'glr': well_data.get('gas_liquid_ratio', 0),
'cumulative_oil': well_data['cumulative_oil_bbl'],
'days_producing': well_data['days_on_production'],
'dca_residual': well_data['actual'] - well_data['dca_predicted']
}
Фізично інформоване ML:
Рівняння фільтрації (Дарсі): реальні свердловини потребують геологічної моделі колектора. PINN на рівнянні дифузійності забезпечує фізично обґрунтований прогноз навіть при малих обсягах даних.
Оптимізація режимів експлуатації
Оптимізація глибинних насосів (ESP):
Електроцентробіжний насос (ЕЦН) — основний спосіб механізованого видобутку:
- Завдання: знайти оптимальну частоту ЕЦН для максимізації видобутку при мінімальному енергоспоживанні
- ML суррогат кривої насоса: прогнозує дебіт та ККД при заданій частоті та тиску на всмоктуванні
- RL-агент: управляє частотою при зміні тиску колектора та водонасиченості
from stable_baselines3 import SAC
import gymnasium as gym
class ESPOptimizationEnv(gym.Env):
"""Оточення для RL оптимізації ЕЦН"""
def __init__(self, well_simulator):
self.simulator = well_simulator
self.action_space = gym.spaces.Box(low=40, high=60, shape=(1,)) # частота ЕЦН (Гц)
self.observation_space = gym.spaces.Box(
low=0, high=np.inf,
shape=(6,) # тиск на всмоктуванні, дебіт, водонасиченість, струм, час, накопичено
)
def step(self, action):
freq = float(action[0])
new_state, production_bbl_day, power_kw = self.simulator.step(freq)
# Винагорода: видобуток нафти - вартість електроенергії
oil_rate = production_bbl_day * (1 - new_state[2]/100) # з урахуванням водонасиченості
reward = oil_rate * 0.5 - power_kw * 0.01 # у нормалізованих одиницях
return new_state, reward, False, False, {}
Моніторинг цілісності свердловин
Аномальна поведінка свердловин:
LSTM-Autoencoder на багатовимірному часовому ряду (тиск, температура, дебіт рідини, дебіт газу, струми ЕЦН):
- Помилка реконструкції → аномалія
- Типові аномалії: прорив води, забруднення ЕЦН, розгерметизація пакера
Виявлення піскових проявів:
Акустичні датчики на вибої свердловини → FFT → класифікатор (CNN на спектрограмах):
- Пісок створює характерний высокочастотний шум
- Раннє виявлення → зменшити депресію до утворення ерозії
Геофізика та буріння
Інтерпретація MWD/LWD:
Measurement/Logging While Drilling — дані з датчиків у бурильній колоні в реальному часі. ML інтерпретація:
- Літологічний прогноз за каротажними кривими (GR, SP, resistivity) → класифікатор за фаціями
- Гео-навігація: куди спрямувати ствол свердловини для оптимального проникнення в колектор
- Прогноз механічної швидкості проходки (ROP) → оптимізація режимів буріння
Сейсміка:
- Full Waveform Inversion (FWI) з прискоренням ML: реконструкція моделі швидкостей → структурна геологія
- Автоматичне виділення розломів: U-Net сегментація сейсмічних розрізів → виділення розломів
Термін розробки: 6–10 місяців для AI платформи аналізу свердловин з прогнозом дебіту, оптимізацією ЕЦН та моніторингом цілісності.







