case study for functional kriging in petroleum production

8
Paper 134, CCG Annual Report 22, 2020 (© 2020) 134-1 Case Study for Functional Kriging in Petroleum Production Funan Wang and Jeff Boisvert In petroleum developments, historical production data, well tests and well logs are some of the most useful information for assessing future productivity potentials. Predicting production curve at new locations seems a desirable goal. However, the nature of well production data is that, although it could be parameterized by a few key parameters like peak rate and decline rate under some common decline curve models, the real producing curves often show non-ideal behaviors due to human interventions, EORs, adjacent well inferences, and non-ideal geological pressure depletions. Also, the conventional kriging fails in this kind of problems because it has difficulties dealing with infinite-dimensional functional data, in other word, curves. Machine learning algorithms were implemented for predicting production curves (Martin & Boisvert, 2018) with decent performance, but they were better at predicting the producing rate at one time spot each time, not in a manner of “true” function. This paper will explore the functional kriging as an alternative. Merging the two techniques as a hybrid model for better results remains an option in future works. Ordinary Kriging For Functional Data – Case Study 1 By analogy with the conventional ordinary kriging (OK), the OK for functional data can be solved as follows: [ ∫‖ 1 1 () ∫‖ 1 () 1 ∫‖ 1 () ∫‖ () 1 1 1 0 ] [ 1 ] = [ ∫‖ 1 () ∫‖ () 1 ] ( )=∑ ( ) =1 Where ( ) are the normalized functional data at sampled locations (producing rate curves in petroleum cases), and ( ) is the functional curve to be solved at unsampled location. The ∫ ‖ () term is called the trace-variogram, an analogy to the semi-variogram in kriging for scalars accounting for the “covariance” in a functional sense. In 2 norm space, it can be estimated as: ∫‖ () = 1 2 {∫[( )() − ( )()] 2 } ≈ 1 2|(ℎ)| ∫[( )() − ( )()] 2 , ∈(ℎ) While in some cases, if the functional data has strong constraints, such as the particle size distribution curves in which the whole curve integrates to unity, it is more appropriate to consider the trace-variogram in a Hilbert Space, where it is the inner product instead of the 2 norm. For example, Menafoglio et al. (2014) proposed to consider Bayes Hilbert space with the following for PSD curves: 〈, 〉 = 1 2|| ∫ ∫ ln () () ln () () We start from a univariate case, where the only variable is the production data itself. The data is chosen from an area of Montney shale gas play in BC. The highlighted polygon in Figure 1 contains 86 gas wells, mostly horizontal and hydraulically cracked. These wells belong to the adjacent four well pads, which means they might have similar geological conditions and possible well inference. The production data is pulled from the AccuMap database and normalized. The unsampled locations are randomly selected inside the polygon, to test the

Upload: others

Post on 07-Apr-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Paper 134, CCG Annual Report 22, 2020 (© 2020)

134-1

Case Study for Functional Kriging in Petroleum Production

Funan Wang and Jeff Boisvert In petroleum developments, historical production data, well tests and well logs are some of the most useful information for assessing future productivity potentials. Predicting production curve at new locations seems a desirable goal. However, the nature of well production data is that, although it could be parameterized by a few key parameters like peak rate and decline rate under some common decline curve models, the real producing curves often show non-ideal behaviors due to human interventions, EORs, adjacent well inferences, and non-ideal geological pressure depletions. Also, the conventional kriging fails in this kind of problems because it has difficulties dealing with infinite-dimensional functional data, in other word, curves. Machine learning algorithms were implemented for predicting production curves (Martin & Boisvert, 2018) with decent performance, but they were better at predicting the producing rate at one time spot each time, not in a manner of “true” function. This paper will explore the functional kriging as an alternative. Merging the two techniques as a hybrid model for better results remains an option in future works. Ordinary Kriging For Functional Data – Case Study 1

By analogy with the conventional ordinary kriging (OK), the OK for functional data can be solved as follows:

[ ∫‖𝑓1 − 𝑓1‖

𝑇

(𝑡)𝑑𝑡 ⋯ ∫‖𝑓1 − 𝑓𝑛‖

𝑇

(𝑡)𝑑𝑡 1

⋮ ⋱ ⋮ ⋮

∫‖𝑓𝑛 − 𝑓1‖

𝑇

(𝑡)𝑑𝑡 ⋯ ∫‖𝑓𝑛 − 𝑓𝑛‖

𝑇

(𝑡)𝑑𝑡 1

1 … 1 0]

[ 𝜆1

𝜆𝑛

−𝜇]

=

[ ∫‖𝑓𝑜 − 𝑓1‖

𝑇

(𝑡)𝑑𝑡

∫‖𝑓𝑜 − 𝑓𝑛‖

𝑇

(𝑡)𝑑𝑡

1 ]

𝑓∗(𝑢𝑜) = ∑𝜆𝑖𝑓(𝑢𝑖)

𝑛

𝑖=1

Where 𝑓(𝑢𝑖) are the normalized functional data at sampled locations (producing rate curves in petroleum

cases), and 𝑓∗(𝑢𝑜) is the functional curve to be solved at unsampled location. The ∫ ‖𝑓𝑖 − 𝑓𝑗‖𝑇(𝑡)𝑑𝑡 term is

called the trace-variogram, an analogy to the semi-variogram in kriging for scalars accounting for the “covariance” in a functional sense. In 𝐿2 norm space, it can be estimated as:

∫‖𝑓𝑖 − 𝑓𝑗‖

𝑇

(𝑡)𝑑𝑡 =1

2𝐸 {∫[𝑓(𝑢𝑖)(𝑡) − 𝑓(𝑢𝑗)(𝑡)]

2

𝑇

𝑑𝑡} ≈1

2|𝑁(ℎ)|∑ ∫[𝑓(𝑢𝑖)(𝑡) − 𝑓(𝑢𝑗)(𝑡)]

2

𝑇

𝑑𝑡𝑖,𝑗 ∈𝑁(ℎ)

While in some cases, if the functional data has strong constraints, such as the particle size distribution curves in which the whole curve integrates to unity, it is more appropriate to consider the trace-variogram in a Hilbert Space, where it is the inner product instead of the 𝐿2 norm. For example, Menafoglio et al. (2014) proposed to consider Bayes Hilbert space with the following for PSD curves:

⟨𝑓, 𝑔⟩ =1

2|𝑇|∫ ∫ ln

𝑓(𝑡)

𝑓(𝑠)ln

𝑔(𝑡)

𝑔(𝑠)𝑑𝑡

𝑇

𝑑𝑠𝑇

We start from a univariate case, where the only variable is the production data itself. The data is chosen from an area of Montney shale gas play in BC. The highlighted polygon in Figure 1 contains 86 gas wells, mostly horizontal and hydraulically cracked. These wells belong to the adjacent four well pads, which means they might have similar geological conditions and possible well inference. The production data is pulled from the AccuMap database and normalized. The unsampled locations are randomly selected inside the polygon, to test the

Paper 134, CCG Annual Report 22, 2020 (© 2020)

134-2

Figure 1: Selected MNTN gas wells (case 1)

Figure 2: Normalized well production curves (case 1)

To further simplify the problem, we only consider the middle point of the lateral section of each horizontal well as the spatial location, and only the distance between these points in 3D space as the distance between different wells.

Figure 3: Assumed well locations (case 1)

Figure 4: Trace-variograms results (case 1)

Paper 134, CCG Annual Report 22, 2020 (© 2020)

134-3

Figure 5: Predicted producing curves for first 12 months at unsampled locations (case 1)

The performance of simply applying functional OK in this case is rather unsuccessful for a few possible reasons. The original production data represents strong irregular patterns, with some well’s productivity reduced rapidly, and some picked up after a few months, possibly due to human intervention. Unfortunately, this is the nature of many shale gas wells. Also, the production curves are varied by a significant amount, especially during the first few months. This leads to poor covariances, which is demonstrated in the trace-variogram plot. Ideally, the closer the wells gets, the smaller the trace-variogram, but we can still observe many high values in short distances. In contrast, one case study (Giraldo et al., n.d. 2012) utilizing the same technique were conducted on the Canadian Maritime temperatures, and they have decent results. Figure 6 shows the data they used, which is fairly regular and close, compared to Figure 2.

Figure 6: Data used for Canadian Maritime temperature prediction (Giraldo et al., n.d. 2012)

Ordinary Kriging For Functional Data – Case Study 2 To mitigate the issue encountered in case 1, we could process the original data prior to kriging, to make sure they are properly smoothed out and close enough. In this case, the data is chosen from 43 light oil wells in Winmore, SK. These data present more consistent patterns.

Figure 7: Selected light oil wells (case 2)

Paper 134, CCG Annual Report 22, 2020 (© 2020)

134-4

Figure 8: Producing rate curves (case 2)

All production curves are fitted using the Alp’s decline equation. This is trivial and can be automated.

𝑞 =𝑄𝑖

(1 + 𝑏𝑑𝑖𝑡)1𝑏

Figure 9: Fitted producing rate curves (case 2)

Figure 10: Examples of curve fitting (case 2)

Paper 134, CCG Annual Report 22, 2020 (© 2020)

134-5

This step removes the unusual behavior of depletion curves, but at the potential cost of reducing accuracy. We then apply the same technique in case 1.

Figure 10: Fitted trace-variograms assuming nugget effect (case 2)

In this case, we perform a 3-fold cross validation on the dataset to assess the model’s performance.

Figure 11: Cross validation result, fold-1 (case 2)

Figure 12: Cross validation result, fold-2 (case 2)

Figure 13: Cross validation result, fold-3 (case 2)

Paper 134, CCG Annual Report 22, 2020 (© 2020)

134-6

To help read the curves qualitatively, we combine results from all three folds, take the average of the both real data and test data and show them in the same chart. Note that this chart only demonstrates the “mean” of all predictions, not individual curves.

Figure 14: Averaged result (case 2)

At the 10-year mark, the real data suggests that the total recovery for these 43 wells is 1635676 bbl., while the model predicted total recovery is 1470232 bbl., with an error of 10.4%. This is a reasonable result, but it does not account for the variances among each curve.

Cokriging For Functional Data – Case Study 3

Much like the cokriging for scalar variables, the cokriging for functional data can be summarized in the following system (with one secondary variable):

For example:

Paper 134, CCG Annual Report 22, 2020 (© 2020)

134-7

Note that if the trend terms are not to be included, they can be set to zero. It is also worth noting that in order to calculate the cross trace-variogram between different data type, the second variable needs to be normalized. Assuming the primary variable is functional and the secondary variable is scalar, Grujic et al. (2018) proposed the following normalization scheme:

In this case, to simplify the problem, we add only one secondary variable to include the most impactful information in the model and consider no trends by assuming strong stationarity. The data is taken from Horn River Basin consisting of 64 wells, which was also used by Hmoud (2018) and Martin (2018). The Gamma Ray Log is selected as the secondary variable.

Figure 15: Selected wells in Horn River Basin, Martin (2018) (case 3)

Figure 16: First 18-month production (case 3)

We perform a 2-fold cross validation by first normalizing the GR values, fitting the direct and cross trace-variograms, setting all trend terms to zeros and solve the matrix.

Paper 134, CCG Annual Report 22, 2020 (© 2020)

134-8

Figure 17: Cross validation result, fold-1 (case 3)

Compared to case 1, the result represents more consistent overall trend by incorporating more information into the model. However, the machine learning model (random forest and neural network) outperforms it by having more variables such as neutron porosity and density logs.

Conclusion Kriging techniques are not traditionally applied to functional curves and the effort to utilize it with the assistance of functional data analysis (FDA) is one of the recent topics being discussed in the geostatistical community. However, many of the related studies only focused on the dataset that are well-organized and with low randomness, like the example in Figure 6. Petroleum production curves, when treated as functional data, often show high randomness and large variation (poorly correlated spatially). Machine learning has been proven to be a promising tool to predict productivity at new locations, but it is unable to predict the entire production curve as a function. On the other hand, in order to take the advantage of kriging, we may have to process the data first, sacrificing some accuracy. The future work may include: - Merge the functional kriging and machine learning to create a hybrid model, by either taking the

results of machine learning model and treat it as new variables to the kriging model, or the other way

around.

- Perform sensitivity analysis on different variables, and include more variables to the model

- Include the trend in a functional sense

- Explore more smoothing techniques to treat the data, and assess the consequential accuracy loss

References

Goulard M., Voltz M. (1993) Geostatistical Interpolation of Curves: A Case Study in Soil Science. In: Soares A. (eds) Geostatistics Tróia ’92. Quantitative Geology and Geostatistics, vol 5. Springer, Dordrecht

Giraldo, R., Mateu, J., & Delicado, P. (n.d.). geofd: An R Package for Function-Valued Geostatistical Prediction geofd: un paquete R para predicción geoestadística de datos funcionales. http://odin.mdacc.tmc.edu/

Grujic, O., Menafoglio, A., Yang, G., & Caers, J. (2018). Cokriging for multivariate Hilbert space valued random fields: application to multi-fidelity computer code emulation. Stochastic Environmental Research and Risk Assessment, 32(7), 1955–1971. https://doi.org/10.1007/s00477-017-1486-9

Mar, R., & Boisvert, J. (2018). Machine Learning Models for Predic ng Decline Curves. 2018, 1–10.

Hmoud, S. (2018). Mul?variate Geosta?s?cal Modeling ofUnconven?onal Shale Gas Reservoirs in the Pres-ence ofSparse Data (Unpublished doctoral disserta?on). University of Alberta, Edmonton.