A Machine Learning Approach to Real-Time Uncertainty Assessment of SAGD Forecasts
Bibliographic record
Abstract
Summary Field development planning and economic analysis require reliable forecasting of bitumen production. Forecasting at the field level may be done using reservoir simulations, type curve analysis, and other (semi-)analytical techniques. Performing reservoir simulation is usually computationally expensive, and the nonuniqueness of a history-matched solution leads to uncertainty in the model predictions and production forecasts. Analytical proxies, such as Butler’s model and its various improvements, allow for sensitivity studies on input parameters and forecasting under multiple operational scenarios and geostatistical realizations to be conducted rather quickly, despite being less accurate than reservoir simulation. Similar to their reservoir simulation counterparts, proxy models can also be tuned or updated as more data are obtained. Type curves also facilitate efficient reservoir performance prediction; however, in practice, the performance of many steam-assisted gravity drainage (SAGD) well pairs tends to deviate from a set of predefined type curves. Historical well data is a digital asset that can be utilized to develop machine learning (ML) or data-driven models for production forecasting. These models involve lower computational effort than numerical simulators and can offer better accuracy compared to proxy models based on Butler’s equation. Furthermore, these data-driven models can be used for automated optimization, quantification of geological uncertainties, and “What If” scenario analysis due to their lower computational cost. This paper presents a novel ML workflow that includes a predictive model development using the random forest algorithm, clustering (to group well pairs by geological properties), Bayesian updating, and Monte Carlo sampling (for uncertainty quatification) for the forecasting of real-world SAGD injection and production data. The training data set consists of field data from 152 well pairs, including approximately 3 years of operational data. Each well pair’s data set involves data that are typically available for an SAGD well pair (e.g., operational data, geological, and well design parameters). This ML workflow can update predictions in real time and be applied for quantifying the uncertainties associated with the forecasts, making it an important step for development planning. To the best of the author’s knowledge, this is the first time ML algorithms have been applied to an SAGD field data set of this size.
Fetched live from OpenAlex and de-inverted. Abstracts are not stored in this database: the inverted indexes are 8.6 GB of the frame’s 9.3 GB of text, and the host has 13 GB free.
How this classification was reachedexpand
Full frame distilled prediction
Teacher imitationNot calibrated prevalence, not ground truth. Human validation pending. Learned from the 10,348 direct Codex labels and 10,348 direct Gemma labels. Candidate is the union of thresholded teacher heads; consensus is their intersection. These outputs are machine_predicted_unvalidated and are not human labels or direct frontier model labels.
Codex and Gemma teacher scores by category
| Category | Codex | Gemma |
|---|---|---|
| Metaresearch | 0.001 | 0.000 |
| Meta-epidemiology (narrow) | 0.000 | 0.000 |
| Meta-epidemiology (broad) | 0.000 | 0.000 |
| Bibliometrics | 0.000 | 0.000 |
| Science and technology studies | 0.000 | 0.000 |
| Scholarly communication | 0.000 | 0.000 |
| Open science | 0.000 | 0.000 |
| Research integrity | 0.000 | 0.001 |
| Insufficient payload (model declined to judge) | 0.000 | 0.000 |
Machine scores (provisional)
The two teacher heads of the student model, read on this work. A score orders the frame for review; it never asserts a category, and the validation status ships verbatim with every row.
Baseline scores from an immature model (maturity gate not passed, 7 training rounds). Scores rank; they never assert a category.
score_only:v0-immature-baseline · verbatim from the scoring run: score_only means the number may rank works, and no category label ships from itClassification
machine, unvalidatedMachine predicted; a candidate call from one teacher head, not a consensus.
How this classification was reached, model by model and score by score, is at the end of the page under "How this classification was reached".