Professional Documents
Culture Documents
History Matching
History Matching
1
0
6
(
s
1
)
Producer 1
Producer 2
Producer 3
Producer 4
Injector 1
(b) (a)
Figure 1. (a) Permeability distribution: 5-spot example; (b) extracted water ows at the producers
(shown in (a) with crosses) and injected water ow at the injector (shown in (a) with a circle).
3. The mathematical model
In order to model the time evolution of the ow in a reservoir we use a simplication of the
Black-oil model [46]. We consider two incompressible phases (water and oil) in a porous
medium where the effects of gravity and capillary pressure are neglected. Then, the governing
equations for the multiphase incompressible ow in a reservoir R
n
(n = 2, 3) can be
written as
[T p] = Q in [0, t
f
] (1)
S
w
t
[T
w
p] = Q
w
in [0, t
f
], (2)
where p( x, t ) and S
w
( x, t ) are the unknowns of the problem which represent the pressure and
the water saturation at position x and time t respectively. The water saturation S
w
measures
the volume fraction of water. ( x) is the porosity, and T and T
w
are the transmissibilities,
which are known functions which depend linearly on the permeability K, the parameter to be
reconstructed, and nonlinearly on S
w
,
T
w
= K( x)
K
rw
(S
w
)
w
, T
o
= K( x)
K
ro
(S
w
)
o
, T = T
w
+ T
o
. (3)
In (3), K
rw
(S
w
), K
ro
(S
w
),
w
and
o
denote the relative permeabilities and the viscosities of
each phase, respectively. Hereafter, the subindex w stands for water, while the subindex o
stands for oil. Q( x, t ) and Q
w
( x, t ) dene the total ow and the water ow at the wells,
respectively. They are given by
Q = cT
N
i
j=1
_
p
(i)
wb
j
p
_
_
x x
(i)
j
_
+ cT
N
p
j=1
_
p
(p)
wb
j
p
_
_
x x
(p)
j
_
(4)
Q
w
= cT
N
i
j=1
_
p
(i)
wb
j
p
_
_
x x
(i)
j
_
+ cT
w
N
p
j=1
_
p
(p)
wb
j
p
_
_
x x
(p)
j
_
, (5)
570 P Gonz alez-Rodrguez et al
where x
(i)
j
, j = 1, . . . , N
i
, denote the locations of the N
i
injector wells, x
(p)
j
, j = 1, . . . , N
p
,
denote the locations of the N
p
production wells, and p
(i)
wb
j
, p
(p)
wb
j
are the imposed well bore
pressures at the N
i
injector wells and at the N
p
production wells, respectively. Here, c is a
constant that depends on the well model [12]. Since p
(i)
wb
j
_
p
(p)
wb
j
_
are larger (smaller) than the
reservoir pressure at the injector (production) wells, Q and Q
w
are positive (negative) at the
injector (production) wells.
Equation (2) is the conservation law for water in a porous medium and equation (1) is
obtained by combining the conservation laws for water and oil in order to eliminate the time
derivative term. It is assumed that the ow obeys Darcys law
u
l
( x, t ) =
K( x)K
rl
(S
w
)
l
p( x, t ), l = w, o
which denes the velocity of each phase in the medium. Equations (1) and (2) are solved with
the following initial and boundary conditions:
S
w
( x, 0) = S
0
w
( x) in , (6)
p( x, 0) = p
0
( x) in , (7)
p = 0 on , (8)
where is the outward unit normal to . The boundary condition (8) implies no ux across
the boundary.
Equations (1)(8) dene the direct problem for the dynamic production history at the
extraction wells. The properties of the porous media are given by K( x) and ( x). The
properties of the uids are dened by
w
,
o
, K
rw
(S
w
) and K
ro
(S
w
). The well bore pressures
p
(i,p)
wb
j
are known functions of time at the wells positions.
4. The inverse problem
4.1. A propagationbackpropagation inversion method
In reservoir characterization, typically, one tries to estimate the permeability distribution by
matching production data. The porosity distribution and the relative permeabilities are usually
assumed known from core analysis [47, 51].
For the mathematical analysis of the above-described problem, we need to specify some
function spaces that will be used in the formulation of the problem. These function spaces
will also become important when deriving our regularization tools. We will use suitably
chosen Hilbert spaces throughout our derivation. We will denote the space of permeability
distributions Kby P, which is dened by P = L
2
(), equipped with the usual L
2
inner product.
In section 6 we will introduce an additional space
P for the permeability distributions. The set
of measurement locations (well-locations) will be denoted by
+
:=
_
x
(p)
1
, x
(p)
2
, . . . , x
(p)
N
p
_
.
At each of these positions, the water ow is measured during a time 0 t t
f
, such that the
data space D is given by D = (L
2
([0, t
f
]))
N
p
. Our forward operator M is given as
M : P D M[K] = Q
w
[K]|
+
[0,t
f
]
, (9)
where Q
w
is obtained by solving the direct problem for a given permeability distribution K
(equations (1)(8)). For some guess K of the permeability, and given the measured data
G
(water ow rate) at the production wells, we can furthermore dene the residual operator
R : P D by
R[K] = M[K]
G. (10)
History matching problem in reservoir engineering 571
Equation (10) describes the mismatch between these physically measured data and the data
corresponding to a guess K.
In the inverse problem, we ideally want to nd a permeability distribution
K in P such
that
R[
K] = 0. (11)
This equation has a solution in the situation where the data
G are in the range of M. Using real
data, we cannot be sure whether this is the case. Therefore, we generalize our criterion for a
solution. Dening the least-squares cost functional
J(K) =
1
2
R(K)
2
L
2
, (12)
we are searching for a minimizer of this cost functional, which can be zero in the situation
where
G range(M). Otherwise, it will be a positive number. A standard method for nding
a minimizer of the cost functional (12) is to start a search with some initial guess K
(0)
, and to
nd descent directions of (12) in each step of an iterative scheme. Popular choices for descent
directions are for example the gradient direction, conjugate gradient directions, Newton- or
quasi-Newton directions (see, for example, [13, 36, 48] for details). We will, in the following,
derive update directions for minimizing (12) using formulation (11). These update directions
will have the useful property that they can easily be generalized in order to incorporate efcient
regularization schemes in our algorithm.
In order to nd an update (or correction) K for our permeability K we linearize the
nonlinear operator R (assuming that this linearized operator R
[K]K + O(K
2
). (13)
The linearized operator R
[K]
(R
[K]R
[K]
)
1
R[K], (15)
where R
[K]
2
P
_
(16)
such that (15) is also a descent direction of the least-squares cost functional (12).
In our application the operator C = (R
[K]R
[K]
)
1
is very ill-conditioned, such that a
regularized version needs to be used. This can be, for example,
C = (R
[K]R
[K]
+ I)
1
,
where is some regularization parameter and I is the identity operator. Unfortunately, in
practice, both C and
C are very expensive to calculate and to apply to the residuals R.
Typically, a direct calculation of the operator
C would require us to solve as many forward and
adjoint problems as we have independent data values. Iterative schemes (such as the gradient
572 P Gonz alez-Rodrguez et al
or conjugate gradient method) for applying this operator to a given vector are possible as well,
but usually they converge only slowly. In addition, we also have the possibility of just using
a rough approximation of it in each step of the inversion. This is much easier and faster to do
and might yield good results. We will investigate these possibilities in our future research.
When using a very large regularization parameter , the contribution of R
[K]R
[K]
can
be neglected and we end up with essentially (i.e. up to the scaling factor
1
) calculating
K = R
[K]
R(K). (17)
For this update direction we have
J(K + K) = J(K) R
[K]
R(K)
2
P
+ O
_
K
2
P
_
(18)
such that it is also a descent direction for (12).
We will use this update direction throughout the paper, with some important modications
described below. Our goal will be to derive and test efcient schemes for applying the adjoint
linearized residual operator to given data (the basic propagationbackpropagation scheme),
and moreover to derive and evaluate a new regularization scheme for this backpropagation
technique. We will emphasize, however, that the propagationbackpropagation scheme as
well as the regularization scheme will also be applicable directly to the update directions given
in (15), which will be treated in our future work.
A standard method for deriving regularization schemes is to explicitly try to minimize
a cost functional which incorporates, in addition to the usual least-squares data mist, a
TikhonovPhillips regularization term:
J
T P
(K) =
1
2
R(K)
2
D
+
2
K
2
, (19)
where > 0 is the regularization parameter and .
= K
L
2
[20, 48]. Using this approach, the cost functional is changed signicantly
with the goal of obtaining in a stable way a global minimizer. We do not want to take this
route, but prefer instead to keep working with the original least-squares cost functional (12)
which only involves the data t. We will minimize this cost functional by restricting the search
to elements of a smaller function space, which is an alternative form of regularization.
The regularization scheme will be derived and discussed in detail in section 6. In the
following, we will present the basic structure of our inversion method, and will derive practical
ways of applying the adjoint linearized residual operator R
[K]
, we introduce K +K and S
w
+W in (2) and we neglect second-order terms.
Then, W solves the initial value problem
W
t
_
T
w
S
w
Wp
_
Q
w
S
w
W =
K
K
Q
w
+
_
K
K
T
w
p
_
in (20)
W( x, 0) = 0 in , (21)
History matching problem in reservoir engineering 573
where S
w
and p are the solutions of (1)(8). From the value of W we derive the linearized
response of the data to a perturbation K in the permeability distribution, which is given by
R
[K]K =
Q
w
S
w
W
+
[0,t
f
]
. (22)
4.3. Computation of the operator R
[K]
[K]
[K]
is dened by
R
[K]K,
D
= K, R
[K]
P
. (23)
We assume that the inner products in the parameter space P and in the data space D are given
by
f, g
D
=
N
p
j=1
_
t
f
0
f
j
g
j
dt, A, B
P
=
_
AB d x, (24)
where f
j
= f
_
x
p
j
, t
_
and g
j
= g
_
x
p
j
, t
_
, j = 1, . . . , N
p
, are time functions dened at the
production well positions x
p
j
. We formulate the basic result of this section in the following
theorem, which is derived in appendix A.
Theorem 1. Let D be an arbitrary function in the data space. Then R
[K]
is given by
R
[K]
=
_
t
f
0
_
T
w
K
pz z
1
K
Q
w
_
dt, (25)
where z is the solution of the adjoint equation
z
t
+
T
w
S
w
pz
_
_
z
N
p
j=1
_
x x
(p)
j
_
_
_
Q
w
S
w
= 0 in (26)
z( x, t
f
) = 0 in , (27)
and S
w
and p are the solutions of (1)(8).
Note that Q
w
is nonzero only at the well locations. Therefore, when we assume in the
mathematical derivation of the theorem that the permeability is known directly at the wells (a
realistic assumption), the second term in (25) disappears and we only have to evaluate the rst
term in order to calculate the update in the rest of the domain . This will be the approach
we use in our numerical reconstructions.
Note that, as typical for the adjoint scheme, the system (26), (27) physically models
some kind of backpropagation with respect to the linearized forward model. The residuals
are applied at the production wells as articial injectors, and backpropagated backward in
time (note the minus sign in front of the time derivative in (26) and the prescribed nal value
conditions in (27), compared to a plus sign in (20) and initial values in (21)) and in space by
the system (26), (27). Equation (25) uses these backpropagated elds to extract an update
direction by combining forward and adjoint elds at each location.
574 P Gonz alez-Rodrguez et al
5. The basic algorithm
The basic inversion algorithm(without regularization) can be summarized as follows. Assume
that the nth approximation K
(n)
to the true permeability distribution has been obtained. Then:
(i) Compute the residual R[K
(n)
] = M[K
(n)
]
G on
+
[0, t
f
] by solving the direct
problem (1)(8).
(ii) Apply = R[K
(n)
], as computed in (i), at the production wells and backpropagate by
solving the adjoint problem (26), (27) for this .
(iii) Combine the results of (i) and (ii) for calculating the update K
(n)
from (25). Let p be
the pressure as calculated in (i), and let z be the solution of (26), (27) as calculated in (ii).
Since we assume that K is known at the well locations, and Q
w
is zero in the rest of the
domain, (25) simplies to
K
(n)
=
_
t
f
0
T
w
K
pz dt. (28)
(iv) The new approximation to the true permeability distribution is
K
(n+1)
= K
(n)
+ K
(n)
,
where is some step-length to be chosen properly. An efcient scheme for practically
choosing (a variant of a line-search technique) will be explained in section 7.1.2.
(v) Compute the residual R[K
(n+1)
] and proceed with step (i) until some convergence criterion
is achieved.
6. Regularization and smoothing
6.1. Smoothing with function spaces
We have presented above the basic algorithmwhich recovers L
2
functions of permeability from
given data such that the mist in the data is minimized. This procedure does not incorporate
explicit regularization (except of the stabilizing procedure incorporated in the operator
C).
In some situations, it might be necessary or desirable to restrict the search for permeability
functions to a smaller subset of L
2
, for example of smoothly varying functions. This might
be so in order to regularize the reconstruction algorithm, or in order to take into account
some prior information or assumptions on the solution we are looking for. For example, the
reservoir engineer might know or assume that the permeability distribution in some region is
fairly smoothly varying. Or, he might only have very few data available for the inversion, so
that he wants to select a smoothly varying prole as a regularized form of the reconstructed
permeability distribution. This can easily be done in our framework.
Instead of looking for permeability distributions in L
2
(), let us assume now that we
require the permeability to be an element of the smaller subspace
H
1
() := {m L
2
(),
i
m L
2
() for i = 1, 2, 3}.
This Sobolev space is usually equipped with the standard norm
m
1,1
:=
_
m
2
L
2
+ m
2
L
2
_
1/2
and the standard inner product
m
1
, m
2
1,1
:= m
1
, m
2
L
2
+ m
1
, m
2
L
2
.
For reasons explained below, we will instead prefer to work with the equivalent norm
m
,
:=
_
m
2
L
2
+ m
2
L
2
_
1/2
, , > 0
History matching problem in reservoir engineering 575
and its associated inner product
m
1
, m
2
,
:= m
1
, m
2
L
2
+ m
1
, m
2
L
2
.
A proper choice of the weighting parameters and will allow us to steer the regularization
properties of our algorithm in an efcient and predictable way.
Let us denote the new parameter space H
1
(), when equipped with the weighted norm
.
,
, by
P. When using this modied space in our algorithm, we also have to adjust the
operators acting on it, in particular the adjoint of the linearized residual operator. This operator
is now required to map from the data space D into
P. Moreover, the minimum norm solution
of (14) is nowtaken with respect to the weighted norm.
,
, which clearly gives us a different
candidate. The necessary adjustments for our algorithm can be done as follows.
Denote as before by R
[K]
[K]
[K]x,
D
= x, R
[K]
P
= x, R
[K]
P
, (29)
it follows that
R
[K]
= (I )
1
R
[K]
, (30)
where we supplement the inverted differential operator (I )
1
by the boundary
condition (R
[K]
[K]
L
2
= R
[K]
L
2
is satised for the current update. This possibility of scaling the updates is the main reason
for keeping the parameter throughout the calculations instead of simply putting it to 1 right
at the beginning. When testing and comparing the performance of different regularization
parameters it is practically useful (in particular for the line-search method) that the order of
magnitude of the calculated values of R
[K]
[K]
.
Solve (I ) = , n = 0 on .
Dene =
with =
(such that = )
Then we have (I ) = , n = 0 on , with = .
Put R
[K]
= .
(31)
576 P Gonz alez-Rodrguez et al
We mention that applying this regularization scheme amounts to applying the
postprocessing operator (I )
1
to the updates calculated in the previous unregularized
scheme. Therefore, the effect of the regularization is similar to ltering the updates with a
carefully designed (iteration-dependent) ltering operator.
In the following, we want to give an interesting additional interpretation of this
regularization scheme.
Dene the cost functional
J() =
a
2
2
L
2
+
b
2
2
L
2
+
c
2
2
L
2
(32)
with = R
[K]
. Here, the third term penalizes the mist between the unregularized
update direction K = R
[K]
[K]
(x) =
1
4
exp
_
|x|
2
4
_
(35)
which produces the smoothed update
= f
=
_
f
= v(). (38)
Here, the smoothing time can be considered as a regularization parameter: for = 0
no regularization takes place, whereas with increasing the updates become increasingly
smoothed. In image processing, this procedure (in a generalized form) is sometimes referred
to as dening a scale space, with > 0 being the scale.
Although the scheme described above is only ad hoc, it turns out that a similar scheme can
be derived in a more rigorous way from the cost functional (32). This will be demonstrated in
the following.
History matching problem in reservoir engineering 577
Let us assume that we again want to minimize (32) for the above given choice of the
parameters c = 1, b = 0 and a = 1 0. Now we want to use a gradient method for
nding the minimum, starting with the initial guess
(0)
= . Using the gradient direction
for (32) derived above, we get the iteration rule
(n+1)
=
(n)
[(I )
(n)
] (39)
where is the (xed) step-size in a given step n of the iteration. This can be written as
(n+1)
(n)
=
(n)
+ (
(n)
) (40)
which is just one step of a nite-difference time discretization of a modied heat equation (37)
v
t
v = ( v) for t [0, ]
v(0) =
(41)
with additional time-dependent heating source v and xed time-step t = .
The choice of the free parameter in this iteration can be done according to the same lines
as described in the algorithm in section 6.1. This strategy leads to the practical algorithm:
is xed regularization parameter
Dene = R
[K]
.
for n = 1, . . . , N :
(n+1)
=
(n)
+ [
(n)
+ (
(n)
)]
end for (Upon convergence we have
(N)
= (I )
1
)
Dene =
(N)
with =
(N)
(such that = )
Then we have (I ) = , n = 0 on , with = .
Put R
[K]
= .
(42)
It turns out that this procedure has good regularization properties even if we choose N fairly
small (e.g. N = 5 or N = 10), which amounts to choosing the regularization time in (41)
small. In that case, we will not exactly calculate R
[K]
= (I )
1
, but we will have
only a mildly smoothed form of = R
[K]
[K]
1
0
6
(
s
1
)
20 40 60
0
2.4
Time (Days)
(12,12)
(12,300)
(12,588)
(300,12)
(300,300)
(300,588)
(588,12)
(588,300)
(588,588)
2000
2000
m
D
0
2000
200 400 600
0
2000
A
B
C
D
(c)
(b)
(d)
20 40 60 80
0
2
4
6
8
Iterations
F
l
o
w
r
e
s
i
d
u
a
l
(
a
.
u
.
)
Figure 3. Synthetic example with four injectors and nine producers: (a) estimated permeability;
(b) extracted water ows at the producers (solid lines, dot-dashed lines and dashed lines represent
the extracted water ow for the reference model, for the initial model and for the estimated model,
respectively); (c) cross sections (solid lines and dashed lines represent the reference permeability
model and the estimated model, respectively); (d) residuals at each iteration. The reference
permeability is shown in gure 1(a).
lines. The calculated extracted ows at the producers after 100 iterations are shown with
dashed lines. The agreement is very good, indicating the validity of our approach. Note
that the calculated responses match the true production data over almost the whole time
history. The small differences might be due to pressure effects that are not taken into account.
Figure 3(d) shows the root mean square error in the measurements at each iteration. It
decreases monotonically until becoming stationary (up to small uctuations) at a small value,
after about 80 iterations. For comparison purposes, we plot in gure 3(c) several cross sections
of the real permeability (solid lines) and of the estimated permeability (dashed lines). Note
that no explicit regularization has been applied in this numerical experiment. Accordingly, the
reconstruction does not look very smooth. Moreover, a block structure can be observed in the
reconstruction which is due to the use of ve-spot patterns in the experimental setup. Each
block reects the ow from one injector to the corresponding neighbouring producer.
In this example we have chosen the relaxation parameter to be constant. Usually, its
value is determined by trial and error. We have chosen it such that the maximum of the relative
update K
(0)
/K
(0)
in the rst iteration is 1% of the constant permeability value of the initial
guess.
580 P Gonz alez-Rodrguez et al
0 200 400 600
0
200
400
600
mD
600
1000
1400
1800
20 60 40 80
0
2
4
6
8
Iterations
F
l
o
w
r
e
s
i
d
u
a
l
(
a
.
u
.
)
(b) (a)
Figure 4. Same as gure 3 but with variable and with regularization: (a) estimated permeability;
(b) residuals at each iteration with variable (solid line) and with constant (dashed line).
7.1.2. Reconstruction with regularization and with a line-search variant. In the next example,
we allow to be variable in order to speed up the convergence. We use a variant of a line
search technique for nding a suitable update. Our goal is to take a maximally possible step
which still decreases the mismatch between calculated and measured data. Therefore, step (iv)
in the algorithm is replaced by K
(n+1)
= K
(n)
+
(n)
K
(n)
, n = 0, 1, 2, . . .. For starting this
scheme,
(0)
is chosen as before. We introduce a suitable factor > 1 for manipulating the
relaxation parameter . If the residual R[K
(1)
] decreases when applying the chosen value for
(0)
, we accept this step, and set
(1)
=
(0)
for the next iteration. Otherwise, we reject the
update and try again with
(0)
(0)
/ . In this case, we continue reducing
(0)
until we nd
an
(0)
for which the newly calculated residual R[K
(1)
] is reduced. This step is then accepted,
and we continue with the next iteration searching for a suitable
(1)
, assuming as initial value
for the search the nal value for
(0)
. The algorithm stops if at least 15 consecutive trials
are rejected, i.e. if choosing
(n+1)
=
15
(n)
does not lead to a decrease of the residual
in some iteration step n. In our numerical experiments this scheme has shown to reduce the
total computational time for the reconstruction signicantly. We note here that Bulishev et al
[6] have used a similar procedure for choosing the length of the iterative step in a gradient
method. Alternative line search techniques are possible, and will be investigated in our future
research.
Figure 4(a) shows the estimated permeability after 20 of these modied iterations when
using the value = 1.5. Observe in gure 4(b) that now the residual decreases much
faster. In addition to the line search technique, we have also applied to this reconstruction the
regularization scheme explained in section 6.1. Using here the same well conguration and
reference permeability distribution as in gure 3, it is apparent that the estimated permeability
distribution is now smoother than the one obtained in gure 3(a).
7.1.3. Reconstruction from data created by an independent STREAMLINE method. In the
numerical experiments shown so far we have used the same forward modelling code for
creating the data as we have used for the reconstruction task, without any additional noise
added to these data. Certainly, in order to really evaluate the stability and practical usefulness
of a reconstruction algorithm, it is necessary to apply the algorithm also to data corrupted with
different types of noise. Noisy data with only randomGaussian noise can be created by simply
adding random numbers of a certain magnitude to the previously considered noiseless data.
History matching problem in reservoir engineering 581
0 200 400 600
0
200
400
600
mD
600
1000
1400
1800
0 200 400 600
0
200
400
600
mD
600
1000
1400
1800
(b) (a)
(d) (c)
5 10 15 20 25
0
2
4
6
8
Iterations
F
l
o
w
r
e
s
i
d
u
a
l
(
a
.
u
.
)
5 10 15 20 25
0
5
10
15
20
Iterations
E
r
r
o
r
i
n
p
e
r
m
e
a
b
i
l
i
t
y
(
m
D
)
Figure 5. Reconstruction of the smooth permeability distribution shown in gure 1 from data
created with an independent streamline method. Regularization is applied with a value / = c
0
.
Top left: reconstruction after 10 iterations; top right: reconstruction after 25 iterations. Bottom
left: evolution of residuals and actual noise level of data. Bottom right: evolution of L
2
-error of
reconstruction.
In order to include some possible systematic noise component into our investigation, we have
decided not to take this route, but instead to use a completely independent simulation technique
for calculating our data. For this purpose, we use a streamline method that is not designed
to produce data with the highest accuracy. In fact, we have measured that the disagreement
with data obtained with the IMPES method is approximately 3%. In summary, the streamline
created data are used as the input for our reconstruction scheme. Then, we use the IMPES
method throughout the iterations for carrying out the reconstruction task. We believe that this
is also an excellent test for evaluating the expected performance of the code when applied to
real data.
In order to regularize the scheme, we select a xed ratio of / = c
0
throughout the
iterations and apply the postprocessing operator (I )
1
in each update as described
before. The results after 10 and 25 iteration steps are shown on the top left and top right
images of gure 5. In the bottom left image of this gure we have plotted the evolution
of the norm of the residuals during the iteration. It can be observed that the residuals are
continuously decreasing, as expected from the algorithm. In order to get an indication of the
actual level of noise contained in the data, we have also plotted the L
2
-mist between these
data and the data we would get using the IMPES method (the horizontal line in the gure).
For the value c
0
chosen here for our reconstruction we observe some form of semi-
convergence of the algorithm, as often occurs in iterative methods applied to noisy data.
582 P Gonz alez-Rodrguez et al
In order to illustrate this, we show in the bottom right image of gure 5 the evolution of
the L
2
-error of the reconstruction compared to the reference permeability distribution. During
the early iterations of the method this error obviously decreases. Approximately at a point
where the residuals hit the noise level, this error starts to increase again, although the
residuals are still decreasing. Our interpretation of this phenomenon is that at this point
the algorithm starts tting the noise rather than the data. The top left image of gure 5 shows
the reconstruction at the point where the L
2
-norm of the image error turns from decreasing to
increasing (which can be considered as the optimal stopping point for the algorithm), and
the top right image shows the nal reconstruction which we get when keeping the algorithm
running until the residuals do not decrease anymore. We see that the image obtained at
the optimal stopping point is a very good reconstruction of the reference permeability
distribution, whereas in the image obtained at the nal iteration, noise-related artefacts have
degraded the reconstruction.
Certainly, in real applications the noise level of the data can only be estimated, and
the optimal stopping point must be chosen according to some appropriate criterion (e.g. the
Morozov discrepancy principle). Moreover, it must be taken into account that the evolution
of the L
2
-error of the reconstruction itself needs to be considered with care. Since the problem
at hand is vastly underdetermined, it does not really make sense at all to speak about the
correct solution without any further prior information available. We want to point out the role
of prior information in our scheme in the following numerical experiment.
In order to investigate this semi-convergence property further, we have increased in this
experiment the ratio / to 10 times its previous value, i.e. / = 10c
0
. The results of the
reconstructions are displayed in gure 6. Now the residuals decrease about as much as in
the previous situation. However, the L
2
-norm of the error in the reconstruction (bottom right
image of gure 6) does not show the semi-convergence behaviour here. The reconstruction
error becomes practically stationary at some stage of the algorithm and we get a good nal
reconstruction in a stable way. The reason for this improvement is that now we have increased
the smoothing property of the inversion algorithm by increasing the ratio /. Since the
reference permeability distribution is fairly smooth, this amounts to putting more weight on
correct prior information, such that we arrive at a better reconstruction than before.
7.2. Second example: reconstruction of a function with sharp discontinuities
In contrast to the previous situation where we tried to reconstruct a very smooth unknown
permeability distribution from the data, we will now investigate the performance of the
numerical scheme when the true permeability distribution is highly discontinuous with large
sharp edges of high contrast. The experimental setup is the same as before. Figure 7 shows
the true permeability distribution and the well locations. The data have been calculated with
the streamline method, and the numerical reconstruction is done by using the IMPES method
for forward modelling.
In this reconstruction, our initial guess is a constant permeability distribution of 1400 mD.
Figure 8 shows the results of the experiment when using the ratio / = c
0
(the same value
as before) for the regularization at two different iteration steps of the reconstruction. The
lower left image in gure 8 shows the evolution of the residual during the reconstruction,
together with the theoretical noise level of the data. The semiconvergence behaviour of the
reconstruction is hardly noticeable here. One reason might be that the original prole is not
as smooth as it was in the previous example. Certainly, also here we can display the results
after an intermediate stage of the reconstruction, here after 19 iterations (top left image of
gure 8), and at the nal stage after about 70 iterations (top right image) when the iteration
History matching problem in reservoir engineering 583
0 200 400 600
0
200
400
600
mD
600
1000
1400
1800
(a)
0 200 400 600
0
200
400
600
mD
600
1000
1400
1800
(b)
(c) (d)
10 20 30
0
2
4
6
8
Iterations
F
l
o
w
r
e
s
i
d
u
a
l
(
a
.
u
.
)
10 20 30
0
5
10
15
20
Iterations
E
r
r
o
r
i
n
p
e
r
m
e
a
b
i
l
i
t
y
(
m
D
)
Figure 6. Reconstruction of the smooth prole shown in gure 1 from data created with an
independent streamline method. Regularization is applied with a value / = 10c
0
. Top left:
reconstruction after 15 iterations; top right: after 37 iterations. Bottom left: evolution of residuals
and actual noise level of data. Bottom right: evolution of L
2
-error of reconstruction.
0 200 400 600
0
200
400
600
mD
200
600
1000
1400
Figure 7. Reference permeability distribution for the second example. The gure also shows the
location of the four injectors () and the nine producers ().
stops according to our stopping criterion. It is difcult to say which one could be selected as
the better reconstruction of the original prole.
584 P Gonz alez-Rodrguez et al
0 200 400 600
0
200
400
600
mD
500
1000
1500
2000
(a)
0 200 400 600
0
200
400
600
mD
500
1000
1500
2000
(b)
(c) (d)
10 20 30 40 50 60
0
5
10
15
Iterations
F
l
o
w
r
e
s
i
d
u
a
l
(
a
.
u
.
)
10 20 30 40 50 60 70
0
5
10
15
20
25
Iterations
E
r
r
o
r
i
n
p
e
r
m
e
a
b
i
l
t
y
(
m
D
)
Figure 8. Reconstruction of the non-smooth prole shown in gure 7 from data created with
an independent streamline method. Regularization is applied with a value / = c
0
. Top left:
reconstruction after 19 iterations; top right: after 70 iterations. Bottom left: evolution of residuals
and actual noise level of data. Bottom right: evolution of L
2
-error of reconstruction.
In the same way as in the previous example we want to compare the behaviour of the
code when we change the regularization parameter to / = 10c
0
. As mentioned before,
this amounts to putting more weight on the smoothing properties of the algorithm. Figure 9
shows the results in this situation. Again, the lower left image shows the evolution of the
residual norm during the iterations, together with the theoretical noise level of the data. The
bottom right image shows the evolution of the L
2
-error in the reconstruction. In contrast to
the previous situation where we tried to recover the smooth prole, now the L
2
-error of the
image does not stabilize when using the higher value for /. Instead, we see in this situation
a semi-convergence behaviour for this larger value for /. Therefore, in a way, the behaviour
of the algorithm seems to be reversed compared to the previous smooth example. This makes
sense since now our reference permeability distribution is highly discontinuous, and enforcing
a smooth reconstruction is not the right way to proceed if this prior knowledge is available.
Using the smaller value for / = c
0
could be the better choice in this situation. We have
displayed in the top left image of gure 9 the reconstruction at the point where the L
2
-error
in the image changes from decreasing to increasing (after 17 iterations), and in the top right
image the nal reconstruction of the algorithm.
We want to mention at this point that, when it is known a priori that the permeability
distribution is highly discontinuous, or if it is desired for different reasons to reconstruct
a discontinuous prole, different regularization methods might be particularly useful here.
History matching problem in reservoir engineering 585
0 200 400 600
0
200
400
600
mD
500
1000
1500
2000
(a)
0 200 400 600
0
200
400
600
mD
500
1000
1500
2000
(b)
(c) (d)
10 20 30
0
5
10
15
Iterations
F
l
o
w
r
e
s
i
d
u
a
l
(
a
.
u
.
)
5 10 15 20 25 30 35
18
20
22
24
26
28
Iterations
E
r
r
o
r
i
n
p
e
r
m
e
a
b
i
l
i
t
y
(
m
D
)
Figure 9. Reconstruction of the non-smooth prole shown in gure 7 from data created with an
independent streamline method. Regularization is applied with a value / = 10c
0
. Top left:
reconstruction after 17 iterations; top right: after 36 iterations. Bottom left: evolution of residuals
and actual noise level of data. Bottom right: evolution of L
2
-error of reconstruction.
In particular the use of total variation regularization [1, 10], Huber norm regularization [4],
the use of a Mumford Shah functional [41] or a level set based shape reconstruction scheme
[17, 31, 43] would be appropriate tools to use. See also [39] for a description (and alternative
treatment) of such a situation in reservoir engineering. We plan to investigate some of these
regularization schemes in our future research in order to compare their performances with
the reconstructions shown here.
8. Conclusions
We have introduced in this paper a new reconstruction scheme for the history matching
problem which is based on an adjoint method. Starting from some initial guess, this iterative
scheme calculates successive corrections for the permeability distribution by numerically
backpropagating the residuals corresponding to the latest best guess. This so-called adjoint
scheme avoids the usually expensive calculation of large sensitivity matrices in each step of
the inversion. A line-search variant is used to nd optimal steps for the updates. In particular,
new efcient regularization schemes have been derived and tested which enable the reservoir
engineer to incorporate prior information into the inversion which stabilizes the reconstruction
process.
586 P Gonz alez-Rodrguez et al
The numerical experiments presented in this paper show that this algorithm is able to
reconstruct unknown permeability distributions in a fast and efcient way from relatively few
data which have been created by an independent forward modelling scheme. In the case of very
noisy data we observe typical semi-convergence behaviour. However, it can be controlled to a
certain degree by introducing correct prior information into the reconstruction. In particular,
for a smooth prole this leads to a signicant improvement of the results.
The presented scheme can easily be extended to a more realistic 3D situation. Since it
is based on repeated forward and adjoint calculations of the reservoir equations, all that is
needed are reliable forward and adjoint solvers in 3D. These solvers can be integrated into the
inversion code in a black-box fashion, such that the reservoir engineer can easily switch back
and forth between different forward modelling codes if necessary. The same holds true for
the two regularization schemes presented in this paper. Since they have the form of easy to
implement post-processing tools (applied in each step of the iterative inversion), they can be
used as black-box lters which can be modied and exchanged independently from the rest of
the algorithm in order to incorporate correct or assumed prior information into the inversion.
In our future work we plan to investigate alternative regularization schemes, such as
level-set techniques, which are better suited for the presence of sharp discontinuities.
Acknowledgments
We thank the anonymous referees for useful comments which improved the paper. Funding
for this work was provided by the Direcci on de Tecnologa y Soporte T ecnico, Repsol-YPF.
ODacknowledges support by the Ministerio de Ciencia y Tecnologia, Spain, through a Ram on
y Cajal grant.
Appendix A. Proof of theorem 1
In this appendix we prove theorem 1. Let z be a function dened in [0, t
f
]. Then, using
(20) and (23) we can obtain
K, R
[K]
P
= R
[K]K,
D
+ C
1
+ C
2
, (A.1)
where
C
1
=
_
_
t
f
0
z
_
W
t
_
T
w
S
w
Wp
_
Q
w
S
w
W
_
dt d x (A.2)
C
2
=
_
_
t
f
0
z
_
_
K
K
T
w
p
_
+
K
K
Q
w
_
dt d x. (A.3)
Note that C
1
+ C
2
= 0. Integrating by parts (A.3) and applying the divergence theorem
C
2
=
_
K
_
t
f
0
_
T
w
K
pz z
1
K
Q
w
_
dt d x (A.4)
where (8) has been used. Thus, dening
R
[K]
=
_
t
f
0
_
T
w
K
pz z
1
K
Q
w
_
dt (A.5)
we have C
2
= K, R
[K]
P
, if
R
[K]K,
D
+ C
1
= 0. (A.6)
History matching problem in reservoir engineering 587
Note that z is not determined yet. We want to select z so that (A.6) is satised. In order to
nd a formula for z we apply partial integration and the divergence theorem to (A.2). Using
(8) and (21)
C
1
=
_
z( x, t
f
)W( x, t
f
) d x +
_
_
t
f
0
W
_
z
t
+
T
w
S
w
pz z
Q
w
S
w
_
dt d x. (A.7)
We impose that z( x, t
f
) = 0 in (A.7) so the rst integral vanishes and therefore (A.6) reads
R
[K]K,
D
+
_
_
t
f
0
W
_
z
t
+
T
w
S
w
pz z
Q
w
S
w
_
dt d x = 0. (A.8)
On the other hand, using (22) and (24)
R
[K]K,
D
=
N
p
j=1
_
t
f
0
Q
w
S
w
W
j
j
dt =
_
_
t
f
0
Q
w
S
w
W
N
p
j=1
_
x x
(p)
j
_
dt d x, (A.9)
so (A.8) yields
_
_
t
f
0
W
_
_
_
z
t
+
T
w
S
w
pz
_
_
z
N
p
j=1
_
x x
(p)
j
_
_
_
Q
w
S
w
_
_
_
dt d x = 0. (A.10)
Therefore, by choosing z to be the solution of the following adjoint problem:
z
t
+
T
w
S
w
pz
_
_
z
N
p
j=1
_
x x
(p)
j
_
_
_
Q
w
S
w
= 0 (A.11)
z( x, t
f
) = 0, (A.12)
where S
w
and p are the solutions of (1), (2) with boundary and initial conditions (6)(8), we
have found a z which satises our requirements. With this, we have proven the theorem.
Appendix B. Numerical methods
In this paper we have used two alternative methods to solve equations (1) and (2) describing
the direct problem. The rst alternative is the IMPES (implicit pressure explicit saturation)
method which is based on nite differences and was rst proposed by Sheldon et al
[44, 46]. It is widely used in commercial reservoir simulators and consists of solving at
each time step equation (1) implicitly to derive the pressure distribution, and then computing
the saturation distribution at the new time step by solving equation (2) with an explicit nite
difference scheme (such as the upwind method) where the values of transmissibilities, T, and
pressure, p, are computed at the previous time step.
The second alternative is the streamline method (see, for example, [5]), which instead of
solving equation (2) in the 2D or 3D space, solves it along one-dimensional streamlines. The
method became an attractive alternative for reservoir simulation after the work of Pollock [38],
which proposed a very efcient technique to compute the streamlines. The main advantage of
the method lies in its speed, since instead of computing the evolution of saturation in a two-
dimensional or three-dimensional grid, it is only necessary to solve a set of one-dimensional
problems to derive the evolution of saturation along streamlines. Thus, it is a method very well
suited for inverse problems, where many direct problems have to be solved for convergence
and, therefore, very efcient methods are needed in order to solve realistic problems in three
dimensions.
588 P Gonz alez-Rodrguez et al
To derive the method it is useful to write equation (2) in terms of the total ow velocity
u
t
( x, t ) = T ( x, t )p( x, t ). Introducing this variable in (2) and using (1) leads to
S
w
t
+ u
t
_
T
w
T
_
= Q
w
+
T
w
T
Q. (B.1)
This equation can be written along the streamlines using as the independent variable the time
of ight,
=
_
s
0
| u
t
|
d (B.2)
where s represents distance along the streamline. Since the streamline has the direction of the
velocity u
t
, the derivative along a streamline can be obtained from the gradient by
s
=
u
t
| u
t
|
. (B.3)
Also, from (B.2),
s
=
| u
t
|
. (B.4)
Thus,
= u
t
(B.5)
and equation (B.1) can be written as a one-dimensional conservation law in terms of the
variable time, t, and time of ight, , along the streamlines,
S
w
t
+
_
T
w
T
_
=
1
_
Q
w
+
T
w
T
Q
_
. (B.6)
The right-hand side is zero except at injection and production wells.
Therefore, the procedure to solve the direct problem is the following:
(i) Compute the pressure at time t
p
by solving equation (1) with nite differences in a 2D
or 3D grid.
(ii) From the pressure distribution compute the velocity distribution u
t
.
(iii) Use Pollocks method to derive a set of streamlines (at least one streamline must go
through each grid cell).
(iv) Project the values of the saturation on each grid cell at time t
p
, in order to derive the
saturation distribution along each streamline.
(v) Along each streamline solve the conservation law (B.6) with time step t
s
in order to
advance the saturation distribution along each streamline from time t
p
to time t
p
+ t
p
.
(vi) Project the values of saturation along the streamlines at time t
p
+ t
p
in order to compute
the values of saturation at each grid cell.
(vii) Use the saturation values at each cell to compute the values of T at time t
p
+ t
p
.
(viii) If t
p
= t
p
+ t
p
is smaller than the total simulation time go to (i).
The method takes advantage of the fact that the pressure varies more slowly than the saturation
and, therefore, the time step for computation of the pressure, t
p
, can be taken much larger
than the time step for saturation, t
s
. When other effects, such as gravity or capillarity forces,
which cannot be written in terms of are included, the mapping between streamlines and grid
cells has to be carried out at each time step, and the method loses its efciency.
History matching problem in reservoir engineering 589
References
[1] Acar R and Vogel C R 1994 Analysis of total variation penalty methods Inverse Problems 10 121729
[2] Agarwal B and Blunt M 2003 A streamline-based method for assisted history matching applied to an Arabian
Gulf eld SPE ATCE (Denver, CO, 58 Oct.) SPE paper 84462
[3] Arridge S R 1999 Optical tomography in medical imaging Inverse Problems 15 R4193
[4] Ascher U and Haber E 2004 Computational methods for large distributed parameter estimation problems
with possible discontinuities Inverse Problems, Design and Optimization Symposium 2004 (Rio de Janeiro,
Brazil)
[5] Batycky R P, Blunt M J and Thiele M R 1997 A 3-D eld scale streamline-based reservoir simulator SPERE
12 24654
[6] Bulishev A E, Souvorov A E, Semenov S Y, Svenson R H, Nazarov A G, Sizov Y E and Tatsi G P 2000 Three-
dimensional microwave tomography. Theory and computer experiments in scalar approximation Inverse
Problems 16 86375
[7] Caers J 2002 SPE Annual Technical Conference and Exhibition paper 77429
[8] Carrera J 1987 State of the art of the inverse problem applied to the ow and solute transport equations
Groundwater Flow and Quality Modeling (NATO ASI Series)
[9] Carter R D, Kemp L F Jr, Pierce A C and Williams D L 1974 Performance matching with constraints Soc.
Petrol. Eng. J. 14 18796
[10] Chan T F and Tai X 2003 Identication of discontinuous coefcients in elliptic problems using total variation
regularization SIAM J. Sci. Comput. 25 881904
[11] Chavent G, Dupuy M and Lemmonier C 1975 History matching by use of optimal control theory Soc. Petrol.
Eng. J. 15 7486
[12] Crichlow H B 1976 Modern Reservoir EngineeringA Simulation Approach (Englewood Cliffs, NJ: Prentice
Hall)
[13] Dennis J Eand Schnabel RB1996 Numerical Methods for Unconstrained Optimization and Nonlinear Equations
(SIAM Classics in Applied Mathematics series no 16) (reprint)
[14] Dierkes T, Dorn O, Natterer F, Palamodov V and Sielschott 2002 Frechet derivatives for some bilinear inverse
problems SIAM J. Appl. Math. 62 2029113
[15] Dorn O 1997 A transportbacktransport method for optical tomography Inverse Problems 14 110730
[16] Dorn O, Bertete-Aguirre H, Berryman J G and Papanicolaou G C 1999 A nonlinear inversion method for 3D
electromagnetic imaging using adjoint elds Inverse Problems 15 152358
[17] Dorn O, Miller E L and Rappaport C 2000 A shape reconstruction method for electromagnetic tomography
using adoint elds and level sets Inverse Problems 16 111956
[18] Engl HW, Hanke Mand Neubauer A1996 Regularization of Inverse Problems (Mathematics and Its Applications
series no 375) (Dordrecht: Kluwer)
[19] Ewing R, Lin T and Falk R 1987 Inverse and ill-posed problems in reservoir simulation Inverse and Ill-
Posed Problem (Notes and Reports on Mathematics in Science and Engineering) (New York: Academic)
pp 48397
[20] Ewing R E, Pilant M S, Wade J G and Watson A T 1995 Identication and control problems in petroleum
and groundwater modeling Control Problems in Industry (Progress in Systems and Control Theory)
ed I Lasciecka and B Morton (Basle: Birkhauser) pp 11949
[21] Gomez-Hernandez J J, Sahuquillo A and Capilla J E 1997 Stochastic simulation of transmissivity elds
conditional to both transmissivity and piezometric dataI: theory; II: demonstration on a synthetic aquifer
J. Hydrol. 203 16288
[22] Groetsch C W 1993 Inverse Problems in the Mathematical Sciences (Braunschweig: Vieweg)
[23] Haber E, Ascher U and Oldenburg D 2000 On optimization techniques for solving nonlinear inverse problems
Inverse Problems 16 126380
[24] Harding T J, Radcliffe N J and King P R 1996 Optimization of production strategies using stochastic search
methods SPE European 3-D Reservoir Modelling Conference paper 35518
[25] He Z, Datta-Gupta A and Yoon S 2002 Streamline-based production data integration with gravity and changing
elds conditions Soc. Petrol. Eng. J. 42336
[26] Jacquard P and Jain C 1965 Permeability distribution from eld pressure data Soc. Petrol. Eng. J. 5 28194
[27] Jahns H O 1966 A rapid method for obtaining a two-dimensional reservoir description from well pressure
response data Soc. Petrol. Eng. J. 237 31527
[28] Kulkarni K N and Datta-Gupta A 2000 Estimating relative permeability from production data: a streamline
approach Soc. Petrol. Eng. J. 5 40211
[29] Landa J L, Kamal M M and Jenkins C D 1996 SPE Annual Technical Conference and Exhibition paper 36511
[30] Landa J L and Home R N 1997 SPE Annual Conference paper 38653
590 P Gonz alez-Rodrguez et al
[31] Litman A, Lesselier D and Santosa F 1998 Reconstruction of a two-dimensional binary obstacle by controlled
evolution of a level-set Inverse Problems 14 685706
[32] Mishra S and Parker S C 1989 Parameter estimation for couple unsaturated ow and transport Water Resour.
Res. 25 38596
[33] Natterer F and W ubbeling F 1995 A propagationbackpropagation method for ultrasound tomography Inverse
Problems 11 122532
[34] Natterer F 2001 The Mathematics of Computerized Tomography (SIAM Classics in Applied Mathematics series
no 32) (reprint)
[35] Natterer F and W ubbeling F 2001 Mathematical Methods in Image Reconstruction (SIAM Monographs on
Mathematical Modeling and Computation) (Philadelphia, PA: SIAM)
[36] Nocedal J and Wright S J 1999 Numerical Optimization (New York: Springer)
[37] Peaceman D W 1978 Interpretation of well-block pressure in numerical reservoir simulation Soc. Petrol. Eng.
J. 3 18394
Peaceman D W 1978 Trans. AIME 253
[38] Pollock D W 1988 Semianalytical computation of path lines for nite difference models Ground Water 26
74350
[39] Rahon D, Edoa P F and Masmoudi M 1997 Inversion of geological shapes in reservoir engineering using well
tests and history matching Proc. SPE 38656 (San Antonio, Oct 56)
[40] Romero C and Carter J N 2002 Develop. Petrol. Sci. 51 32363
[41] Rondi L and Santosa F 2001 Enhanced electrical impedance tomography via the MumfordShah functional
ESAIM: Control Optim. Calculus Variations 6 51738
[42] Sagar RK, Kelkar MGand Thomson L G1995 Reservoir Description by Integrating Well-Test Data and Spatial
Statistics SPEFE (Dec.) p 267
[43] Santosa F 1996 A level-set approach for inverse problems involving obstacles ESAIM: Control Optim. Calculus
Variations 1 1722
[44] Sheldon J W, Harris C D and Bavly D 1960 A method for general reservoir behavior simulation on digital
computers Presented at SPE 35th Annual Meeting (Denver, Oct. 25) paper SPE 1521-G
[45] Sun N and Yeh W G 1990 Coupled inverse problems in groundwater modelling 1. Sensitivity analysis and
parameter identication Water Resour. Res. 26 250725
[46] Thomas G W 1982 Principles of Hydrocarbon Reservoir Simulation (Englewood Cliffs, NJ: Prentice-Hall)
[47] Vasco D M, Yoon S and Datta-Gupta A 1999 Integrating dynamic data into high-resolution reservoir models
using streamline-based analytic sensitivity coefcients SPE J. 4 38999
[48] Vogel CR2002 Computational Methods for Inverse Problems (SIAMSeries Frontiers in Applied Mathematics)
[49] Vogeler M 2003 Reconstruction of the three-dimensional refractive index in electromagnetic scattering by using
a propagationbackpropagation method Inverse Problems 19 73953
[50] Wagner B J and Gorelick S M 1987 Optimal groundwater quality management under parameter uncertainty
Water Resour. Res. 23 116274
[51] Wang Y and Kovscek A R 2000 Streamline approach for history matching production data Soc. Petrol. Eng. J.
5 35362
[52] Wasserman M L, Emanuel A S and Seinfeld J H 1975 Practical applications of optimal-control theory to
history-matching multiphase simulator models Soc. Petrol. Eng. J. 15 34755
[53] Wu Z, Reynolds A C and Oliver D S 1999 Conditioning geostatical models to two-phase production data Soc.
Petrol. Eng. J. 4 14255