next up previous [pdf]

Next: CG method for Iteratively Up: Conjugate guided gradient (CGG) Previous: INTRODUCTION

CG method for LS Inversion

Most inversion problems start by formulating the forward problem, which describes the forward operator $\mathbf L$ that transforms the model vector $\mathbf m$ into the data vector $\mathbf d$


\begin{displaymath}
\mathbf d = \mathbf L \mathbf m .
\end{displaymath} (1)

In general, the measured data $\mathbf d$ may be inexact, and the forward operator $\mathbf L$ may be ill-conditioned. In that case, instead of solving the above equation directly, different approaches are used to find an optimum solution $\mathbf m$ for given data $\mathbf d$. The most popular method is finding a solution that minimizes the misfit between the data $\mathbf d$ and the modeled data $\mathbf L\mathbf m$. The misfit is often referred as residual vector $\mathbf r$ and is described as follows:


\begin{displaymath}
\mathbf r = \mathbf L\mathbf m - \mathbf d .
\end{displaymath} (2)

In least-squares inversion, the solution $\mathbf m$ is the one that minimizes the squares of the residual vector as follows:


\begin{displaymath}
min_m ({\mathbf r^T r}) = min_m {(\mathbf L\mathbf m - \mathbf d)^T(\mathbf L\mathbf m - \mathbf d)} .
\end{displaymath} (3)

Most iterative solvers for the LS problem search the minimum solution on a line or a plane in the solution space. In the CG algorithm, not a line, but rather a plane is searched. A plane is made from an arbitrary linear combination of two vectors. One vector is chosen to be the gradient vector. The other vector is chosen to be the previous descent step vector. Following Claerbout (1992), a conjugate-gradient algorithm for the LS solution can be summarized as shown in Algorithm 1.


\begin{algorithm}
% latex2html id marker 34\caption{ CG method for LS solution...
...mathbf m, \mathbf \Delta \mathbf r) $
\ENDWHILE
\end{algorithmic}\end{algorithm}

In Algorithm 1, the $\rm condition$ represents a convergence check such as the tolerance of residual vector $\mathbf r$, a maximum number of iteration, and so on. The subroutine cgstep() updates model $\mathbf m$ and residual $\mathbf r$ using the previous iteration descent vector in the conjugate space $\Delta \mathbf s = L (\mathbf m_i - \mathbf m_{i-1})$, where $i$ is the iteration step, and the conjugate gradient vector $\Delta \mathbf r$. The update step size is determined by minimizing the quadrature function composed from $\Delta \mathbf r$ (the conjugate gradient) and $\Delta \mathbf s$ (the previous iteration descent vector in the conjugate space) as follows Claerbout (1992):

\begin{displaymath}Q(\alpha,\beta) = (\mathbf r-\alpha \Delta \mathbf r -\beta \...
...
(\mathbf r-\alpha \Delta \mathbf r -\beta \Delta \mathbf s) .\end{displaymath}

Notice that the gradient vector ( $\Delta \mathbf m$) in the CG method for LS solution is the gradient of the squared residual and is determined by taking the derivative of the squared residual (i.e. the $\ell^2$-norm of the residual, $\mathbf r^T \mathbf r$) with respect to the model $\mathbf m^T$:


\begin{displaymath}
\Delta \mathbf m =
{\partial \over \partial \mathbf m^T }
(...
...f d)^T(\mathbf L\mathbf m -\mathbf d)
= \mathbf L^T\mathbf r .
\end{displaymath} (4)



Subsections
next up previous [pdf]

Next: CG method for Iteratively Up: Conjugate guided gradient (CGG) Previous: INTRODUCTION

2011-06-26