In this section we quickly describe the full waveform inversion [20,120,121] which is the main motivation of our work with block iterative solvers presented inChapter 2andChapter 3. Although the full waveform inversion consists of an optimization problem it gives raise to the block linear systems which we aim at solving using the methods we discussed in previous chapters.
Let the real velocity model be denoted by m(∗) and consider an initial guess m(1) given. The inverse problem consists of an iterative procedure which aims at improving a “synthetic velocity model” m(i)every iteration i, hoping to obtain a model m(`) as a reliable approximation of m(∗) in a finite number of steps `.
It consists of two main steps. In the first one, the so called1“forward problem”takes place. The forward problem consists of building a “propagator”, a procedure which simulates the propagation of the waves through m(i)when an acoustic wave is ignited at a known position with a known frequency, obtaining the so called wavefield. We recall that during the geophysical experiment, the acoustic waves are ignited on several points of the physical domain along the “survey line”, possibly for several different frequencies, and that the geophones gather the data for each test separately, meaning that potentially the forward problem has to solve multiple times per iteration of the inverse problem. Therefore, we represent the set of “source positions” {sj}pj=1and a set of frequencies {fj}
nf
j=1, meaning a total of nf× psolutions have to computed for every iteration i of the inverse problem. We analyse in further sections the multiple sources issue and
4.2. THE INVERSE PROBLEM 61 how to exploit the relations between each case to increase the performance of the forward problem, but we do not address the multiple frequencies in practice, as we explain better inSection 4.3.
Once each wavefield u(i)
j for j = 1, ..., nf× p of the forward problem of the i-th iteration is known, it has to be projected onto the position of the geophones by the projector Pdata: this is done to know the data that the geophones would have gathered if m(i) were the real velocity model. The projected synthetic solution, or “computed data” is then denoted by d(i)
j = Pdata
u(i)j .
The inverse problem compares the computed data with the “observed data”, gathered by the geophones on the real experiment, which we denote here by dobs
j , for j = 1, ..., nf× p. Figure 4.3 shows an illustra- tion of the difference between the data gathered by the geophones in the real experiment (left) and the simulation performed by the propagator on the synthetic velocity model (right).
Figure 4.3: On the left: acoustic waves propagated by a source s are reflected by a reflective layer (in grey) and are detected by the geophones g. On the right: the propagator simulates the behaviour of the waves through the synthetic velocity model. Since the information reaching the geophones is considerably different from the observed data, the inverse problem should decide to update the synthetic velocity model in order to obtain a better approximation.
We consider that the convergence criterion of the inverse problem relies on the cost function C(m(i)) =1 2 (nf×p) X j=1 ∆d(i)j † S†S∆d(i)j (4.2.1)
(cf. [20, p.93]) where S is a diagonal weighting matrix2 and ∆d(i)
j = d (i) j − dobsj
is themisfit vector, or residual vector.
The goal of the inverse problem is thus to minimize (4.2.1), characterizing the inverse problem as a weighted least squares problem. However, not only the size of the problem is considerable (the dimension of each m(i) is between O(104) and O(106) in a realistic application, cf. [20, p.93]) but it is also very ill-conditioned, consequently making prohibitive the use of global methods. Due to this restriction, local methods are often preferred, considering that an initial guess is known. Algorithm 4.2.1 shows a simple pseudo-code for the FWI using a generic steepest descent algorithm for solving this problem.
Remark 4.2.1. Steps8to10ofAlgorithm 4.2.1refer to the choice of the model for the next iteration, and are topic of active research [133]. We briefly mention that some strategies for performing FWI consist of choosing λ models rather than only one, that is, steps8to10generate m(i+1)
k for 1 ≤ k ≤ λ, and during iteration i + 1 the algorithm is ran once for each model, being thus able to effectively search in multiple
2We do not address the choice of S in this thesis, and we simply consider it given. Moreover, in many cases a regularization
Algorithm 4.2.1: Generic acoustic FWI algorithm using steepest descent method
1 Set iteration counter i = 1; 2 Define n = p × nf;
3 while not converged do
4 Solve forward problem: Compute incident wavefields u(i)j for j = 1, ..., n; 5 Compute misfit vectors ∆d(i)j for j = 1, ..., n;
6 Compute value of the cost function C(m(i))(cf. (4.2.1)); 7 Build gradient vector G(i);
8 Choose a perturbation vector δm(i); 9 Choose a step length α(i);
10 Update model m(i+1)= m(i)+ α(i)δm(i); 11 end while
directions every iteration. This however, comes at a great extra cost, since λ × p × nf forward problems have to be solved for such a case3.
It is yet to be mentioned how to performline 7 ofAlgorithm 4.2.1. As we discuss inSection 4.3, the forward problem is solved by dully discretizing the wave-equation and then solving the linear system
A(i)u(i)j = s(i)j (4.2.2)
where s(i)
j represents the position of the source. Considering A(i)given, we obtain the gradient of C(m(i)) as ∂C(m(i)) ∂m(i) = G(m (i) ) = nf×p X j=1 R u(i)j T " ∂A(i) ∂m(i) #T A(i) −T ˜ PdataS†S∆d (i) j ,
where ˜Pdatais the operator that projects ∆d (i)
j onto the forward problem space and R(∗) is the real part of the referred vector (cf. [20, (2.11)]). We highlight here the term
A(i) −T ˜ PdataS†S∆d (i) j
which is referred to as the back-propagation of the misfit vector. Computing such a vector is equivalent to find the solution of the linear system
A(i) T g(i)= ˜PdataS†S∆d (i) j (4.2.3)
the so called backward problem. Notice the relation between (4.2.2) and (4.2.3), and that the solution for the later depends on the solution of the former (the solution of the forward problem is needed to compute the right-hand side of the backward problem). When the operator A(i) is symmetric, the only difference between the backward and forward problem lies in the right-hand side.
If (A(i))−1 would be known, the solution of the backward problem would take a matrix-vector mul- tiplication operation, otherwise we would have to effectively solve the backward problem once for each frequency and each source position. When using iterative solvers, (A(i))−1 is not known and therefore it is extremely important to address the solution of the backward problem. This is subject of future studies.
3as we mention shortly, the forward problem, along with the backward problem (whenever it is present) are the most