03 Neural Network Proxy Modeling of Complex Oil Fedutenko
03 Neural Network Proxy Modeling of Complex Oil Fedutenko
03 Neural Network Proxy Modeling of Complex Oil Fedutenko
Eugene Fedutenko
1
2
Overview
• Proxy Modeling in CMG CMOST
• Need For Accuracy Improvement
• Single Layer AI vs. Multi-Layers AI
• Back Error Propagation (BEP)
• Gradient BEP
• Levenberg-Marquardt BEP
• Test Framework & Goals
• SAGD and Black Oil Cases and Test Results
• Conclusions & Current Development
• Questions?
3
Proxy Modeling in CMOST (I)
• Reservoir simulations are computationally costly,
especially for large number of grid-blocks
• All production related workflows involve a LOT of
simulations – need to cover as many scenarios as
possible
• High dimensions of parameter space
• Need for “surrogate” simulator to quickly evaluate
Objective Function (OF) for any given set of parameters
4
Proxy Modeling in CMOST (II)
• Normally, Objective Function OF (NPV, Cum. Oil, SOR,
RF, etc.) is evaluated as a function of the given set of
operational/uncertain parameters (therefore, one can
forecast):
5
Proxy Modeling in CMOST (III) Current Proxies
• Polynomial
• Neural Network – Single-Layer Radial Base Functions (NN
RBF)
• Regularly used in Sensitivity Analysis, Optimization and History
Matching workflow
• In most cases NN RBF is more accurate
• Proxy Accuracy is crucial – Inaccurate Proxy will lead to wrong
conclusions
• There are cases where further accuracy improvement is
necessary
6
Need for Accuracy Improvement
Black Oil Case (14 Pars, 1000 Training Jobs)
7
Single Layer vs. Multi-Layers
Single-Layer RBF Proxy Architecture
Single Layer RBF is based on exact interpolation of training data and is similar
to Kriging and Kernel models
It’s simple and practical for limited sizes of training data - the usual scenario in
reservoir simulation
8
Single Layer vs. Multi-Layers
Multi-Layer NN Proxy Architecture
• 1 Output, and at least 1 (but up to any) Hidden Layer
• Approximate Matching of Training Data
9
Single Layer vs. Multi-Layers
Which NN to Use?
• It is a common belief in Petroleum Community that multi-
layered NN are good only for very large (multi-thousand)
sizes of training data, therefore they are not very practical
for complex cases
• We question this belief due to recent progress reported by
different AI research groups
10
Multi-Layers NN Progress: Deep Learning,
DeepMind, Google Brain, etc.
• Google Deep Mind’s AlphaGo beat world champion at
ancient board game Go Lee Sedol (March 2016)
• Google Brain, Google X progress: Deep Learning NN
mimicking some aspects of human brain trains itself to
recognize images and drive cars
11
Back Error Propagation (BEP)
12
Gradient BEP NN Algorithm (I)
• Randomly populate initial weights of the Network
• For N training parameters, compute nonlinear output
(OF) according to a set of nonlinear rules
• Compute an error by comparing with the actual OF for
that parameter
• Propagate error back in the direction opposed to its
gradient and update the model’s weights and coefficients
• Iterate for all the training records for a given number of
times (epochs)
13
Gradient BEP NN Algorithm (II)
14
Levenberg-Marquardt BEP (I)
• Randomly populate initial weights of the Network
15
Levenberg-Marquardt BEP (II)
• Levenberg-Marquet is a
combination of Gradient
and Newtonian Methods
16
Test Framework
• We generate NN proxy (RBF, BEP Gradient and BEP LM
with 2 hidden layers) for all OF, whether its Production
Output or HM Error prediction
• Latin Hypercube Design (LHD) is used for parameter space
sampling
• LHD Size N changed in the range 50 – 2110
• Prediction is verified against L verification runs
• L changes in the range 200 – 2,000
• Each simulation ran for a time horizon of the base case
• Compare QC plots for different proxies for the same sizes of
training/verification data
17
Test Goals
• Goal 1: Find the dynamics of Average Residual Error as
N increases
• Goal 2: Compare QC plots for different proxies at the
same sizes of training/verification data
18
3-Well Pair SAGD Model
• 3-well pair real reservoir
• Permeability in the range 1 to 15,804 mD
• Time horizon 10 years
• Dimensionality D = 12 (operational parameters)
• Model dimension: 498m x 100m x 69m
• 17,181 grid blocks of dimension 1m×100m×1m
• STARS was used to model the SAGD process
19
12-Pars SAGD Case, Cum. Steam Prediction (250
Verifications)
Current RBF BEP Gradient 3&4 nodes BEP LM 3&4 nodes
14
12
Cum. Steam Prediction Error (%)
10
0
0 500 1000 1500 2000 2500
Training Job ID
20
12-Pars SAGD Case, Cum. Oil Prediction (250 Verifications)
Current RBF BEP Gradient 3&4 nodes BEP LM 3&4 nodes
14
12
10
Cum. Oil Prediction Error (%)
0
0 500 1000 1500 2000 2500
Training Job ID
21
12-Pars SAGD Case, Field NPV Prediction (250
Verifications)
Current RBF BEP Gradient 3&4 nodes BEP LM 3&4 nodes
18
16
14
12
Prediction Error (%)
Field NPV
10
0
0 500 1000 1500 2000 2500
Training Job ID
22
QC for Cum. Steam Error for RBF vs.
BEP LM 3&4 (500 Train Jobs, 250 Verifications)
27
Black Oil SPE9 Synthetic Case Study
• Black Oil model
28
14-Pars BO Case, Producer Match Error Prediction
(1000 Verifications)
Current RBF BEP Gradient 13&14 nodes BEP LM 13&14 nodes
35
30
25
ProducerMatchError (%)
20
15
10
0
0 1000 2000 3000 4000 5000 6000 7000
Training Job ID
29
14-Pars BO Case, Injector Match Error Prediction
(1000 Verifications)
Current RBF BEP Gradient 13&14 nodes BEP LM 13&14 nodes
200
180
160
Injector Match Error (%)
140
120
100
80
60
40
20
0
0 1000 2000 3000 4000 5000 6000 7000
Training Job ID
30
14-Pars BO Case, Global Hm Error Prediction
(1000 Verifications)
Current RBF BEP Gradient 13&14 nodes BEP LM 13&14 nodes
30
25
GlobalHmError Prediction Error (%)
20
15
10
0
0 1000 2000 3000 4000 5000 6000 7000
Training Job ID
31
QC for Producer Match Error for RBF vs. LM BEP
13&14 (1000 Training Jobs, 1000 Verifications)
35
General Conclusions
• BEP LM NN has strong prediction potential for both Black Oil
and SAGD cases
• However, it works well only when the numbers of nodes/layers
are selected properly
• BEP NN algorithms are not deterministic, unlike RBF NN,
therefore their results for the same training data are not
identical at different runs
• BEP NN (as any Gradient/Newtonian algorithm) finds the local
optimum only
• The number of BEP LM iterations also can be case dependent
36
Further Development
• Develop a way of optimization of number of nodes and
layers for LM BEP algorithm by combining it with Cascade
Correlation
37
Thank You!
38