You are on page 1of 26

INSTITUTE OF PHYSICS PUBLISHING INVERSE PROBLEMS

Inverse Problems 21 (2005) 565590 doi:10.1088/0266-5611/21/2/009


History matching problem in reservoir engineering
using the propagationbackpropagation method
Pedro Gonz alez-Rodrguez, Manuel Kindelan, Miguel Moscoso
and Oliver Dorn
Mathematics Department, Universidad Carlos III de Madrid, Avenida de la Universidad 30,
Leganes 28911, Spain
Received 14 June 2004, in nal form 29 November 2004
Published 23 February 2005
Online at stacks.iop.org/IP/21/565
Abstract
This paper describes the application of the adjoint method to the history
matching problem in reservoir engineering. The history matching problem
consists in adjusting a set of parameters, in this case the permeability
distribution, in order to match the data obtained with the simulator to the actual
production data in the reservoir. Several numerical experiments are presented
which show that our method is able to reconstruct the unknown permeability
distribution in a reliable and efcient way from synthetic data provided by
an independent numerical forward modelling code. An efcient and exible
regularization scheme is introduced as well, which stabilizes the inversion and
enables the reservoir engineer to incorporate certain types of prior information
into the nal result.
(Some gures in this article are in colour only in the electronic version)
1. Introduction
History matching techniques are used in reservoir modelling for estimating unknown properties
of a reservoir, such as porosity and permeability, from measured data. The data are usually
taken at the production wells and might consist of pressure or owdata. Proper characterization
of the reservoir heterogeneity is a crucial aspect of any optimal reservoir management strategy.
It helps to better understand the reservoir behaviour so that its performance can be predicted
and controlled with higher reliability.
History matching can be carried out either manually (by a trial-and-error process), or
automatically by computing a set of parameter values so as to minimize a prescribed cost
function. Generally, the reservoir simulator uses a spatial grid, and the history matching
process is used to determine the permeability and/or porosity in each grid cell. This can
be done manually when a small number of parameters has to be retrieved from the observed
production data. However, for large scale models, where more than 50 000 parameter values are
unknown, this procedure is infeasible. Automatic strategies for history matching were initially
based on the perturbation method. This method computes the single grid block sensitivity
0266-5611/05/020565+26$30.00 2005 IOP Publishing Ltd Printed in the UK 565
566 P Gonz alez-Rodrguez et al
coefcients in order to evaluate the change of an objective function under small perturbations
of the permeability of each cell [27]. Adirect method of obtaining these sensitivity coefcients
requires a number of forward solutions per iteration equal to the number of reservoir parameters
to be determined. In consequence, this approach is very time consuming for large geophysical
models.
A major breakthrough was achieved by Jacquard and Jain [26]. They used an electric
circuit analogue of a reservoir, to compute the sensitivity coefcients for pressure to changes
in the permeability map. The method was computationally efcient since it required only
one simulation per observation point. It was based on a linear, single phase, reservoir model
and it was later rigorously derived in terms of the diffusion equation [9]. The resulting
optimization problem was solved by a linear programming procedure which computed the
reservoir parameters including constraints.
The work by Chavent et al represented another major breakthrough in automatic history
matching [11]. They applied an adjoint technique from optimal-control theory to this
application. For the same linear, single phase, reservoir model as used in [26] they derived
a corresponding adjoint equation, and computed the sensitivity coefcients by just solving
two PDEs (the equation for the reservoir model, and the adjoint equation) and some integrals
involving the pressure and the adjoint variable.
Secondary oil recovery techniques involve the simultaneous ow of up to three uid
phases. The water, oil and gas ows are governed by a set of coupled nonlinear partial
differential equations and therefore the derivations in [9, 26] had to be extended. Several
researchers have paid attention to this and other coupled inverse problems [8, 19, 32, 50]. The
combination of spatially dependent parameters and nonlinearity results in a very challenging
inverse problem. Wasserman et al [52] modied the original work by Chavent et al [11]
to treat multiphase effects approximately with a pseudo single-phase model. They applied
the adjoint method directly to the set of ordinary differential equations resulting from the
nite-difference discretized model. The adjoint method for the case of a two-phase, nonlinear,
reservoir model was derived in [53] starting from the discretized equations. Based on a set
of adjoint operation rules, Sun and Yeh [45] introduced a general procedure for deriving the
adjoint state equations in a straightforward way for general coupled inverse problems. As
examples, they applied their method to problems of saltwater intrusion and two-phase ow.
There are other more recent techniques which have been applied successfully in reservoir
engineering. We only want to mention two approaches in the following.
The rst one is an alternative streamline approach which has been proposed in
[28, 47, 51]. A method is introduced in that work for estimating the sensitivity coefcients
semi-analytically with one single forward simulation, which signicantly reduces the
numerical cost. This gives rise to a large and sparse, but ill-conditioned, linear system.
With appropriate regularization this system can be solved efciently [2, 25]. As a second
approach we mention the use of geostatistical methods [7, 21, 29] as well as genetic algorithms
[24, 40]. These methods generate different realizations of a geological model which is derived
from well-log and seismic data, and select the realization that best matches the pressure or
production history. Although accurate and fast simulators are available, the large number of
realizations to be tested usually makes this procedure computationally quite demanding.
Adjoint techniques, which we are focusing on in this paper, are particularly useful in
large scale inverse problems where relatively few independent experiments can be performed
for gathering data but many parameters need to be reconstructed. Since typically only one
experiment is performed in history matching due to the simultaneous production process,
the adjoint technique is therefore much faster in this application. We mention that adjoint
techniques have been applied recently with great success also in other applications of medical
History matching problem in reservoir engineering 567
and geophysical imaging. See for example the articles [3, 15, 33, 49] dealing with examples
from ultrasound tomography, optical tomography and microwave imaging with medical
applications, or [16, 17, 23] describing applications in geophysical monitoring or prospecting.
More general information regarding adjoint techniques for solving large scale inverse problems
can be found for example in [35, 48].
One important difference between the history matching problem and these applications
is that in the history matching problem the experimental setup cannot easily be changed in
order to obtain independent data. As already mentioned, typically only one eld experiment is
available due to the production process. As a consequence, the information content of the data
is quite low, and the history matching problemis highly ill-posed. Therefore, when developing
reconstruction schemes for this application, an important component will be the incorporation
of efcient and exible regularization tools, as well as the capability of incorporating as
much prior information as possible into the search for a good candidate for the parameter
distribution. Prior information can consist of results which have been obtained with different
physical experiments such as seismic imaging, core analysis, well-logs or general geological
information. Therefore, we will put a strong emphasis on the regularization tools which we
want to use in our reconstruction method. Good overviews of general regularization techniques
for inverse problems can be found, for example, in [18, 22, 34, 48].
In this paper, we derive the adjoint formulation as needed here for a two-phase reservoir,
starting directly from the partial differential equations of the nonlinear reservoir model. The
resulting method is a propagationbackpropagation algorithm for history matching which is
used to estimate the permeability distribution inside the reservoir based on the water ow
extracted at a small number of production wells. Starting from a homogeneous permeability
distribution, we calculate the difference between the computed and the given production data.
These residuals are numerically backpropagated into the reservoir by solving the corresponding
adjoint equation, and the correction to the guess is directly calculated from the result. The
process is repeated iteratively until a convergence criterion is satised.
As mentioned, a particular emphasis is put on the derivation and discussion of exible
and useful regularization schemes for this method, which can be used for stabilizing the
reconstruction process and, in addition, for incorporating certain types of prior information
into the reconstruction. In contrast to the more standard approach of TikhonovPhillips
regularization, we will not change our cost functional for the derivation, but instead will
restrict the search for a minimum to a smaller subspace of functions with certain properties.
This has the advantage that, upon convergence, only the data mist has been minimized, which
is our primary objective.
For describing the ow dynamics in the reservoir (our basic forward model), we use
a simplied Black-oil model [46]. In order to avoid the so-called inverse crime, the data
are generated with a streamline method, while during the reconstruction process we use an
independent IMPES method to solve the equations (see appendix B for details of these two
different forward modelling codes). Here our approach differs slightly from the more standard
approach of simply adding statistically random noise to the data which have been created with
the same simulator. We believe that, by using a different simulator for creating data, we can
incorporate some component of systematic noise which might render the data more realistic.
Purely random noise often can easily be removed (at least partially) by a simple ltering of
the data, whereas systematic noise might be harder to cope with. The noise content of our
data using this strategy is typically about 3%.
This paper is organized as follows. In section 2 we give a short introduction to our
setup of the reservoir characterization problem. In section 3 a mathematical description of
the underlying ow equations is given. Section 4 introduces the inverse problem and gives a
568 P Gonz alez-Rodrguez et al
theoretical derivation of the basic algorithm which we use for the inversion. The algorithm
itself is outlined in section 5. In section 6 we propose an efcient regularization scheme for
the method. Various numerical experiments are presented in section 7 which demonstrate
the performance of the reconstruction method in different situations. In section 8 we draw
some conclusions and indicate some directions for future research. In appendix A a proof
of theorem 1 of the paper is given. In appendix B we briey describe the two basic forward
modelling codes (the IMPES method and the streamline method).
2. Description of the problem
Our basic ow model (the Black-oil model) consists of partial differential equations which
govern the unsteady ow of different uid phases in the reservoir medium. The petroleum
engineer often uses this model for understanding the dynamics of petroleum reservoirs and
petroleum production in order to design an efcient operational strategy.
We consider here the case of secondary recovery where water is injected through several
injection wells conveniently located in order to enhance oil production. The behaviour of the
reservoir is usually inuenced by many factors (permeability, porosity, relative permeability,
etc) which are never known precisely. Therefore, the engineer uses the best values available
and compares the results from the simulator with the eld-recorded histories at the wells.
Generally, this history matching will show discrepancies which the engineer tries to minimize
by modifying one or several of the parameters which dene the reservoir (permeability,
porosity, etc). Once the simulator matches the production data, it is used to predict its future
behaviour and to design alternative plans of operation of the reservoir. It should be pointed out
that there is not a unique set of parameters to match production data, so that a perfect match
does not mean that the reservoir is correctly characterized. In fact, if after a perfect match
the simulator is used to predict future behaviour, the actual performance may differ from the
predicted one so that it is necessary to monitor periodically the predicted versus the actual
performance in order to update reservoir characterization.
We use inverse problem techniques to optimize this history matching process. For
simplicity, we consider the two-dimensional case and we select the distribution of rock
permeability throughout the reservoir as the parameter that we try to adjust. Therefore,
we assume that all the other parameters needed to dene the reservoir behaviour are known.
The direct problem refers to the resolution of the equations describing the ow within
the reservoir assuming that the permeability distribution is known. For instance, the left
side of gure 1 shows a ve-spot layout with an injector well (o) at the centre (location
x
(i)
1
) and four production wells (x) at the corners of a two-dimensional reservoir (locations
x
(p)
j
, j = 1, . . . , 4, j = 1 being the well at the upper left corner and numbered in the clockwise
direction). Also shown is the real permeability distribution in milli-Darcys (mD). The water
injected at the injection well displaces the oil in the reservoir towards the production wells.
Time resolution of the ow equations provides the time evolution of pressure and ow at each
point of the reservoir. Of particular interest is the oil and water ow rate at each production
well. The right-hand side of gure 1 shows the time history of water ow rate (Q
w
) at each
well obtained by solving the direct problem. Note that water arrival occurs rst at well four
since it is surrounded by a region of high permeability.
In the inverse problem we assume that the water ow rate at each well is known but
the permeability distribution is unknown. We will start with an initial permeability guess
(typically some constant distribution) and will iteratively modify the permeability distribution
until the actual water production rate at each well is matched by the simulator.
History matching problem in reservoir engineering 569
0 200 400 600
0
100
200
300
400
500
600
mD
600
800
1000
1200
1400
1600
1800
(p)
x
x
(p)
1
x
2
(p)
3 4
x
(p)
x
1
(i)


0.6
1.2

0.6
1.2

0.6
1.2

1.2
2.4
0 100 200 300

5
10
15
Time (Days)
Q
w


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] exists and is well-dened)


and write
R[K + K] = R[K] + R

[K]K + O(K
2
). (13)
The linearized operator R

[K] is often called the Frechet derivative of R at K. (See for


example [14] and references therein for some formal derivations of Frechet derivatives in
different applications.) It is also closely related to the sensitivity functions of the parameter
prole with respect to the data. Using (13) we want to look for a correction K such that
R[K + K] = 0. Neglecting terms of order O(K
2
) in (13), this amounts to solving
R

[K]K = R[K]. (14)


Certainly, due to the ill-posedness of our problem, this equation needs to be handled with
care. Treated as an ill-posed linear inverse problem, a classical solution of (14) will be the
minimum-norm solution
K
MN
= R

[K]

(R

[K]R

[K]

)
1
R[K], (15)
where R

[K]

is the adjoint operator of R

[K] with respect to our chosen spaces P and D


[34]. In applications with very few data, this form has the useful property that it avoids
contributions in the solution which are in the (often non-empty) null-space of the (linearized)
forward operator R

[K]. Using (13) it can be veried by direct calculation that


J(K + K
MN
) = J(K) R(K)
2
D
+ O
_
K
MN

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 .

indicates some norm or semi-norm, e.g.


K

= 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]

to vectors R in the data space


D. This will lead us to the propagationbackpropagation technique which is applied in this
paper.
4.2. Computation of the operator R

[K]: the linearized problem


Let us consider a small perturbation K in the permeability distribution K that leads to small
perturbations W and q in the saturation and the pressure, respectively. Here we assume that the
pressure remains nearly unchanged so that q is negligible. This is so because the pressure
is a smooth function compared to the saturation. Using a heuristic approach to derive an
expression for R

, 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]

: the adjoint problem


Here, we derive an expression for the adjoint operator R

[K]

applied to a function in the


data space. The operator R

[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]

the image of D under application of the adjoint


linearized residual operator as calculated in section 4.3, considered as an operator mapping
fromDinto P = L
2
(). Denote furthermore by R

[K]

its image under the adjoint linearized


residual operator with respect to the newly dened weighted inner product, mapping into the
smaller space

P. With a straightforward calculation, using the denitions of the two adjoint
operators
R

[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]

) n = 0 on . The symbol I stands for the identity, and stands for


the Laplacian operator. Equation (30) can easily be derived by applying Greens formula to
the right-hand side equality in (29).
In practice, the ratio = / (which can be considered as a regularization parameter)
is an indicator for the smoothing properties of our scheme. The larger this ratio, the more
weight is put on minimizing the derivatives of our solution. Therefore, by properly choosing
this ratio, we can steer the smoothness properties of our nal reconstruction to a certain degree.
In our numerical experiments, we will choose this ratio once, when starting the algorithm, and
keep it xed during the iterations. The other free parameter, say , will be chosen in each
individual step to scale the update properly. In our numerical experiments, we choose such
that
R

[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]

does not depend too much on .


Note also that the new search directions using this modied adjoint operator are still
descent directions for the least-squares cost functional (12), as can be veried easily by
replacing P by

P in (16) and (18).
Practically, the scheme is implemented as follows:
is xed regularization parameter
Dene = R

[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]

and the newcandidate , whereas the rst two terms penalize


roughness of . The gradient direction for this cost functional is [(a + c)I b] c
(where the Laplace operator is again understood to be accompanied by the boundary condition
n = 0 on ). Therefore, a necessary condition for the minimum can be stated as
[(a + c)I b] = c. (33)
Choosing c = 1, b = 0 and a = 1 0 this amounts to calculating
= (I )
1
, (34)
which is equivalent to (30). Therefore, applying function space regularization as described
above can be interpreted as minimizing the cost functional (32) with specically chosen
parameters a, b and c.
6.2. Smoothing with the heat kernel
An alternative (and slightly more ad hoc) approach to regularization and smoothing is to use
well-known concepts from image processing. Denote = R

[K]

for some residual vector


D. Then, we can convolve these (unregularized) updates calculated by (15) with a
Gaussian kernel of variance > 0
f

(x) =
1
4
exp
_

|x|
2
4
_
(35)
which produces the smoothed update

= f

=
_
f

(x y)(y) dy. (36)


Practically, this can be done by solving the initial value problem for the heat equation
v
t
v = 0 for t [0, ]
v(0) =
(37)
on with = and with suitably chosen boundary conditions, and putting

= 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]

. Moreover, for small values of N the additional


heating term
(n)
is typically small (recall that we start the iteration with
(0)
= ),
such that we can safely neglect it and arrive at the regularization scheme by the heat kernel
(37). Although this yields only a very crude approximation to R

[K]

, the results achieved


with this scheme are usually quite satisfactory when used in each step of our iterative scheme
for solving the inverse problem.
We complete this section by mentioning that, throughout this paper, we will always use
the scheme described in section 6.1 (regularization by function spaces) for the regularization.
However, most of our calculations have also been tested with the alternative scheme described
above using a small value of N, which also gave us good results.
7. Numerical experiments
In our numerical experiments we use two different numerical schemes for the forward
modelling: the IMPES method and the streamline method. Both are described in appendix B.
For the numerical solution of the adjoint problem (26), (27) we have implemented an explicit
upwind nite difference scheme. We model a reservoir of 600 600 m
2
which is discretized
by a 25 25 uniform spatial grid. The typical time-step in the discretization is between
2 h and one day, and the reservoir is monitored for a duration between 50 and 100 days.
When using the streamline method, each cell of the grid is intersected by at least one
578 P Gonz alez-Rodrguez et al
0 0.2 0.4 0.6 0.8 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Sw
K
r
K
rw
K
ro
Figure 2. Relative permeabilities versus saturation as used in the numerical experiments.
streamline. The parameters used to describe the reservoir are = 0.213,
w
= 8.2
10
4
Pa s,
o
= 7.9 10
4
Pa s. As boundary and initial conditions for the forward
modelling we use S
0
w
(x) = 0.187, p
0
= 3000 psi, p
(i)
wb
= 3500 psi and p
(p)
wb
= 2000 psi p at
all wells. The relative permeabilities are nonlinear functions of saturation which are shown in
gure 2. For the value c in formulae (4) and (5) we use c =
2
dx dy ln(
r
d
rw
)
(see also [12, 37])
where r
d
= 0.14[dx
2
+ dy
2
]
1
2
and r
w
= 0.108 m is the well radius. Here dx and dy denote the
discretization lengths of the grid in the x and y directions, respectively.
In the following we showpermeability estimations for several examples with two different
reference permeability distributions. In the rst case we estimate a smooth permeability
distribution, whereas in the second example we estimate a permeability distribution with
sharp discontinuities. In both cases we use four injector wells and nine production wells
arranged as an array of so-called ve-spot patterns.
7.1. First example: reconstruction of a smoothly varying function
We rst investigate the reconstruction of the smoothly varying permeability distribution which
was already shown in gure 1. The extracted water ow

G =

Q
w
at the producers is plotted in
gure 3(b) with solid lines. In our initial experiment (sections 7.1.1 and 7.1.2), we compute the
synthetic data by using the IMPES method and perform the reconstruction by using the same
forward modelling code (the IMPES method). In the later section 7.1.3, and in all further
numerical experiments presented in section 7.2, we will use instead data which have been
generated by the streamline method, whereas the reconstruction is done by using the IMPES
method. By doing this, we can avoid the so-called inverse crime, and also can investigate
the performance of the algorithm in the case of very noisy data.
7.1.1. Basic reconstruction without explicit regularization. The well conguration and the
estimated permeability distribution at the nal iteration are shown in gure 3(a). Our initial
model, a uniform permeability distribution corresponding to the mean permeability value
(1400 mD) serves to generate the initial data M[K
(0)
], plotted in gure 3(b) with dot-dashed
History matching problem in reservoir engineering 579
0 200 400 600
0
200
400
600
mD
600
1000
1400
1800
C
A
B
D
(a)
Q
w


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

You might also like