Decline Python PowerBI Dashboard
Decline Python PowerBI Dashboard
This paper was prepared for presentation at the Asia Pacific Unconventional Resources Symposium held in Brisbane, Australia on 14 – 15 November 2023.
This paper was selected for presentation by an SPE program committee following review of information contained in an abstract submitted by the author(s). Contents
of the paper have not been reviewed by the Society of Petroleum Engineers and are subject to correction by the author(s). The material does not necessarily reflect
any position of the Society of Petroleum Engineers, its officers, or members. Electronic reproduction, distribution, or storage of any part of this paper without the written
consent of the Society of Petroleum Engineers is prohibited. Permission to reproduce in print is restricted to an abstract of not more than 300 words; illustrations may
not be copied. The abstract must contain conspicuous acknowledgment of SPE copyright.
Abstract
Decline curve analysis (DCA) is a curve fitting procedure used for analyzing declining production rates and
forecasting future performance of oil and gas wells. Certain types of standard curves are fit, based on the
past production performance which are then extrapolated to predict the future well performance. It is the
basic tool for estimating recoverable reserves and can be used when the production history is long enough
that a decline trend can be identified.
One of the key technologies used in the process is an automated DCA methodology which can be
automatically run on a machine without any human interaction and with minimum errors. The traditional
DCA is derived by Arp's equation, where three types of decline curves have been identified: exponential,
hyperbolic, and harmonic.
In this research work, authors have developed a python code that apply DCA methods to wells in an
unbiased, systematic, and automated manner. This method contrasts with manual DCA, which was the
widespread practice of the industry. As industry has entered digital transformation era, it is imperative that
digital capabilities be coupled with conventional knowledge of DCA. This can be used as a handy tool to
generate type curves for fitting decline curves and to further analyze using business intelligence (BI) tools,
for a batch of oil wells under study.
Introduction
Lot of work in the past has been conducted for theoretical and practical applications of DCA manually.
It is subjective and based on experience of reservoir/ production engineer's judgment. In recent years,
advancements in data science and automation have led to the development of automated DCA methods,
allowing engineers and analysts to streamline the process of analyzing production data and extracting
meaningful insights. Python, a popular programming language in the data science community, has played
a significant role in enabling the automation of DCA.
Paper discusses DCA techniques and its evolution in chronological order. Python libraries and its
functionalities developed by authors would be discussed in detail in this paper. Test cases were developed
for verifying the workings of the code, which culminate onto developing formation characteristics-based
2 SPE-217288-MS
decline curve groupings. This would aid readers to understand application of programming techniques for
solving everyday petroleum engineering problems.
Where:
Q(t) = Production rate at time t
Q(O) = Initial production rate
b = Hyperbolic constant
D = Decline rate
t = Time
In above equation, the matching parameters are b and D. The values b = 0 and b = 1 represent exponential
and harmonic decline, respectively. During pseudo steady state for liquid systems, an exponential decline
is a characteristic of constant pressure production whereas a harmonic decline occurs with constant rate
production. Any other value of b represents a hyperbolic decline.
A set of graphical type curves were proposed that represent different decline behaviors based on the
hyperbolic decline equation. These type curves allowed engineers to match production data to a specific
curve and estimate decline parameters.
This work was expanded upon by introducing additional type curves that accounted for more complex
production scenarios, including wells subjected to boundary-dominated flow or various combinations of
boundary and transient flow (Fetkovich et al. 1980). Fetkovich's type curves offered improved accuracy in
analyzing unconventional reservoirs and transient flow conditions.
In 1990's, the concept of type curves was further extended (Palacio et al. 1993) by developing diagnostic
type curves that helped identify and quantify specific wellbore damage, fracture closure, and reservoir
heterogeneity effects on production decline. These diagnostic curves added a layer of interpretation to DCA
beyond simple parameter estimation.
In 2000's, type curves were introduced specifically for unconventional reservoirs which often exhibit
complex transient flow behavior (Holditch et al. 2006). These type curves considered the unique
characteristics of shale gas and tight oil reservoirs, helping engineers better interpret production data from
these challenging environments.
Since 2010, As reservoir simulation techniques became more sophisticated, researchers started
integrating numerical simulations with type curves. This integration allowed for the development of
integrated type curves (Purvis et al., 2016) that incorporated both boundary-dominated and transient flow
behaviors. These type curves provided more accurate predictions by considering a broader range of reservoir
condition.
The earlier automations in DCA were based on usage of non-linear parametric estimations (Chen et al.
1993). In recent times, artificial intelligence has been recently used to perform regressions like the use
of probabilistic DCA using methods of quantile regression (Kianinejad et al. 2019). Artificial intelligence
based DCA has been used in integrated management of reservoir performance and field production
(Carpenter. 2020). Monte-Carlo methods were used for deriving the probabilistic estimates at the field level
(Castiñeira et al. 2014). The MC simulations were used to compute reserves for over 9,000 wells at the field
level (Chavali et al. 2021). The various AI probabilistic workflows integrating petrophysical evaluation has
SPE-217288-MS 3
been introduced to increase the accuracy (Snow et al. 2020). The results of automated DCA are further
integrated into the reservoir management digital portals for real time decision-making (Nuaim et al. 2011). A
SCADA system can be used for full-scale end-to-end automation including data import/export, processing,
visualization, and analysis (Jordan et al. 2022). The usage is further extended to unconventional coalbed
methane wells (Kuznetsov et al. 2018), coal seam gas wells (Falcon et al. 2021), using three-segment DCA
using open-source programming language Python (Mogollón et al. 2021). These automated DCA methods
help in significantly reducing the cycle time involved in forecasting (Kumar et al. 2019).
Method adopted for this work using python libraries and its functionalities to automate DCA workflow
Current methodology
This paper showcases the extensive research work done to automate the Decline Curve Analysis (DCA)
workflow using Python libraries and their functionalities is outlined briefly below.
Curve Fitting.
Automated DCA in Python involves fitting decline curves to the production data. There are several decline
curve models available, such as the exponential decline model, hyperbolic decline model, and harmonic
decline model. Libraries like SciPy provide tools for curve fitting, enabling the selection of the most
appropriate model for a given dataset.
Parameter Estimation.
Once a decline curve model is chosen, Python can be used to estimate the parameters of the model that best
fit the production data. Optimization techniques available in libraries like SciPy can automatically find the
optimal parameter values that minimize the difference between the model and the actual data.
Production Forecasting.
Automated DCA allows engineers to forecast future production rates and cumulative production based
on the fitted decline curve model. Python scripts can be developed to project production behavior under
different scenarios and operational conditions.
Visualization.
Python's visualization libraries, such as Matplotlib, Seaborn, Plotly etc., or BI dashboard make it easy
to create informative graphs and plots that visually represent the DCA results. These visualizations help
stakeholders understand the trends and patterns in the production data.
Decision Support.
By automating the DCA process, decision-makers can quickly assess the performance of wells, identify
anomalies, and make informed decisions about well interventions, optimization strategies, and future
investments.
As programming languages continue to evolve toward greater user-friendliness, harnessing Python
for Decline Curve Analysis (DCA) emerges as a potent avenue for scrutinizing production data and
deriving decline parameters. Thus, while crafting an automated DCA solution, a foundational grasp of
Python libraries and their functionalities becomes imperative. Proficiency in programming languages has
4 SPE-217288-MS
emerged as a pivotal skillset within modern solutions for petroleum engineering, especially in the context
of optimizing production strategies for mature fields. This emphasis on technology-driven production
optimization underscores the evolving landscape of the industry, highlighting the significance of adapting
to new-age methodologies and tools.
NumPy is a fundamental Python library for numerical computations, particularly when working with
arrays and matrices. NumPy arrays exhibit a distinctive feature of contiguous memory storage, setting
them apart from lists. As a result, they facilitate streamlined accessibility and manipulation by various
processes, ultimately leading to enhanced operational efficiency. It forms the foundation for many other
scientific computing libraries. It was used for basic arithmetic calculations such as addition, subtraction,
multiplication, division on columns, universal functions for elementwise calculations such as applying row
wise function to forecast production data based on decline curve parameters and model function used in
the curve fitting algorithm and for list generation to project production rates, a list was created utilizing
production data against forecasted production data in the Business Intelligence (BI) environment aimed at
assessing the level of congruence between the two datasets.
Furthermore, a new feature has been introduced to enable manual adjustment of decline parameters.
This feature allows users to customize the starting fit date, specify the number of days for forecasting
cumulative oil estimation, and define the fraction of the validation dataset for assessing the quality of the
match. This adjustment functionality was implemented to iteratively fine-tune the parameters manually,
with the objective of achieving an improved alignment between the historical and forecasted production
data. The specified initial values for the curve fitting parameters were b = 0.5, D = 0.005 1/day, and Q(O)
Discussion of Results
To verify optimization algorithm, different test cases were run with real life production data available.
Results presented below from Fig. 2 to Fig. 5 indicate variability of b, D & Q(O) values with satisfactory
match between observed data and model data.
SPE-217288-MS 7
Using the decline curve parameters for each well, type curves were generated as shown in Fig. 6, for each
of the zones, which could be helpful in future development decisions of the field.
Figure 3—Case 2: DCA match for Well B, matching parameters: b=0.11, D=0.0008, Q(O)=2200
8 SPE-217288-MS
Figure 5—Case 4: DCA match for Well D, matching parameters: b=1, D=0.0008, Q(O)=3000
SPE-217288-MS 9
The research workflow was employed to align historical production data from wells in the Volve dataset
and to calculate reserves for the well. Fig. 7 to 10 represent the match between observed and modelled data
and Fig. 11 to 14 represent the cumulative oil with days based on forecasted rate from model.
Conclusion
In this paper, we showcased the python based automated DCA solution and discussed the accuracy aspects.
Based on the test cases run using automated DCA solution, below are the key conclusions.
By harnessing automation, the need for manual labor is significantly diminished, expediting the analysis
process. This strategic integration empowers engineers to allocate their energies towards interpretation
and decision-making, alleviating the burden of repetitive tasks and enhancing the overall efficiency of the
workflow. Automated DCA ensures consistent analysis across multiple wells and datasets, reducing the
risk of human error. This approach can be helpful for a field scale DCA matching exercise reducing the
overall manual efforts and reduce the time involved in updating the production forecast, which enables
faster performance monitoring.
Python's inherent versatility empowers analysts to tailor and expand their Decline Curve Analysis (DCA)
workflows to precisely align with specific business requisites. The results can be integrated into the real
time reservoir management digital dashboards for interactive visualization and controlled evaluation. Usage
of cloud-based data analytics can be used for real time processing of production decline and further assist
command for real time reservoir management at a field scale and, further will also help in reducing the cost
of running various softwares and the efforts spent on integrating the results from these platforms. Various
smart flow meters and internet of things (IoT) based devices at the production field can help in amalgamation
of high frequency data from various wells and further be pushed to the cloud-based production ecosystem.
The future trajectory of this endeavor encompasses its evolution into a more comprehensive framework
capable of accommodating diverse production scenarios, including transient conditions and unconventional
reservoirs.
It should be noted that methodology employed by authors assumes operating conditions of the well,
including factors such as artificial lift system, secondary recovery mechanisms, back pressure, contributing
14 SPE-217288-MS
net pay etc should remain relatively unchanged and the well's boundary conditions should remain consistent
and unchanged, adding new wells nearby may change the decline trend.
Acknowledgements
The authors want to thank the management of SLB for their permission to perform this research work and
publish this paper, along with their leadership, support, and encouragement for undertaking the task of
automating the existing workflows.
The authors would like to thank Equinor AS, the former Volve license partners ExxonMobil Exploration
References:
Arps, J. J. 1945. Analysis of Decline Curves. Trans AIME 160 (1): 228–247. SPE-945228-G. https://
doi.org/10.2118/945228-G
Castiñeira, David, Mondal, Anirban, and Sebastien Matringe. "A New Approach for Fast Evaluations of Large Portfolios
of Oil and Gas Fields." Paper presented at the SPE Annual Technical Conference and Exhibition, Amsterdam, The
Netherlands, October 2014. doi: https://doi.org/10.2118/170989-MS
Carpenter, Chris. "AI-Based Decline-Curve Analysis Manages Reservoir Performance." J Pet Technol 72 (2020): 58–59.
doi: https://doi.org/10.2118/0920-0058-JPT
Chavali, V. B. K., and W. J. Lee. "Fast Probabilistic Forecasting of Oil Production using Monte Carlo Simulations
on Data Driven Acquisition of Decline-Curve Parameter Distributions." Paper presented at the SPE/AAPG/SEG
Unconventional Resources Technology Conference, Houston, Texas, USA, July 2021. doi: https://doi.org/10.15530/
urtec-2021-5696
Chen, Jianping, and J. L. Prouty. "Automated Decline-Curve Analysis Using Robust (LAV) Nonlinear Parameter
Estimation Under MS-Windows™ 3.X." Paper presented at the Petroleum Computer Conference, New Orleans,
Louisiana, July 1993. doi: https://doi.org/10.2118/26249-MS
E. Jones, T. Oliphant, P. Peterson. et al. 2001. SciPy: Open-source scientific tool for Python, http://www.scipy.org/
Equinor, 2018, Volve data village dataset: released under a license based on CC BY 4.0, https://data.equinor.com/"Volve
Field Data Village Download - Data 2008-2016." Volve Field Data Village Download Data 2008-2016, https://
www.equinor.com/en/what-we-do/digitalisation-in-our-dna/volve-fielddata-village-download.html.
Falcon, Gerardo E. Guillen. "Flowing Material Balance and Decline Curve Analysis: A Hybrid Approach for Better EUR
and Decline Profile Predictions for CSG Wells." Paper presented at the SPE/AAPG/SEG Asia Pacific Unconventional
Resources Technology Conference, Virtual, November 2021. doi: https://doi.org/10.15530/AP-URTEC-2021-208381
Fetkovich, M.J. 1980. Decline Curve Using Type Curves, J Pet Technol (June 1980) 1065.
Holditch, S. A. 2006. Tight Gas Sands. J Pet Technol 58 (6): 86–93. SPE-103356-MS. http://dx.doi.org/10.2118/103356-
JPT
Jordan, Colin Lyle, Koochak, Roozbeh, Roberts, Martin, Nalonnil, Ajay, and Mike Honeychurch. "A Holistic Approach
to Big Data and Data Analytics for Automated Reservoir Surveillance and Analysis." Paper presented at the SPE Asia
Pacific Oil & Gas Conference and Exhibition, Adelaide, Australia, October 2022. doi: https://doi.org/10.2118/210757-
MS
Kianinejad, Amir, Kansao, Rami, Maqui, Agustin, Kadlag, Rahul, Hetz, Gill, Ibrahima, Fayadhoi, Suicmez, Vural, Darabi,
Hamed, and David Castineira. "Artificial-Intelligence-Based, Automated Decline Curve Analysis for Reservoir
Performance Management: A Giant Sandstone Reservoir Case Study." Paper presented at the Abu Dhabi International
Petroleum Exhibition & Conference, Abu Dhabi, UAE, November 2019. doi: https://doi.org/10.2118/197142-MS
Kuznetsov, Dan, Fernandes, Glen, Daly, Michael, and Kai Ma. "Statistical Decline Curve Analysis for Automated
Forecasting of Production from Coalbed Methane Wells." Paper presented at the SPE Asia Pacific Oil and Gas
Conference and Exhibition, Brisbane, Australia, October 2018. doi: https://doi.org/10.2118/191985-MS
Mogollón, Leonardo, Sinchitullo, Joseph, and Joel Cahuas. "Improving Tight Oil Reserves Forecast Using 3-Segment
Decline Curves Analysis in a Peruvian Northwest Basin." Paper presented at the SPE/AAPG/SEG Asia Pacific
SPE-217288-MS 15