I will finally be updating this material for this upcoming spring quarter, for some more informal participation with Ken Creager's ESS523 Inverse Theory class at University of Washington. I know a few other colleagues are using some of this material for their own inverse theory classes - please feel welcome to email me with any requests/recommendations on these updates. Meanwhile I envision:
  • writing up those labs below somewhat more formally (ha ha, read: legibly!)
  • sharing some general Matlab-based inversion codes I wrote for:
    • the frequentist iterative Tikhonov-regularized Gauss-Newton method focused on in the class in past, and
    • for the Bayesian MCMC sampling-based method focused on elsewhere
  • optional integration of these codes into the labs below, so that the students' time could be focused more on understanding and adapting to their own projects rather than on complicated incidental Matlab programming
  • and finally adding the Lab #7 on Global Methods (including MCMC) which I know has been listed below as "available soon" for quite some time now!



A growing list of recommended textbooks and helpful papers, Q&A list, related web links, and lecture notes, all on aspects of geophysical inverse theory...


Introductory material:

A Conceptual Introduction to Geophysical Inversion, by Andrew Ganse, 12Mar2012. PDF file, presented in the UW Earth & Space Sciences brown bag series. No math in this one, just an overview level talk, basically the graphical version of the primer below.
A Geophysical Inverse Theory Primer, by Andrew Ganse, draft 31Mar2008. This document (PDF file) is ten pages long, contains no equations, and aims to provide an overview of the main concepts in inverse theory. By giving a summary at a high-level, the goal is to introduce the subject to the new user, and place the different concepts and solution methods in perspective with each other before delving into mathematical details.
An introduction to geophysical inversion, with comparisons to analytical inversion, by Andrew Ganse, 17Oct2007. Powerpoint file, presented on invitation to the UW Math Dept Inverse Problems seminar series, posted here on request of several colleagues. Many more equations than above; you would definitely want to start with the above primer first if you are new to inverse theory.


Textbooks:

These are a subset of the books listed on my Bookshelf page. Note the (A B P U) links at the end of each synopsis are links to the book in each of the following online bookstores when available: Amazon, Barnes & Noble, Powell's Books, and the University of Washington Bookstore. (Please click book images in the carousel to select brief paragraph overviews of each book.)

Parameter Estimation and Inverse Problems, by Richard Aster, Brian Borchers, & Clifford Thurber. For beginners to inversion, I strongly recommend this book above other inverse theory textbooks; there are plenty very useful books on the topic, but this one really gets you up to speed in the subject fast with great hands-on Matlab examples. Then, after you're more familiar with the material, go back and reread the book again - there are tons of handy comparisons between methods with references to deeper treatment of the individual methods elsewhere, and many practicality details that address numerical issues and real world limitations. This book mostly focuses on frequentist inversion but does have a chapter on Bayesian inversion comparing the two approaches. This book comes with a CD with a copy of Per Christian Hansen's (linear) regularization tools for Matlab, used in most of the book's example problems, whose Matlab scripts are also on the CD. Note also the homepage for this book which includes the errata. (A B P U)


Inverse Problem Theory, by Albert Tarantola. Very well written book with a probabilistic approach to inversion, in contrast with the frequentist statistical approach focused on in Aster/Borchers/Thurber, Menke, Hansen, and Parker. Tarantola doesn't like to call it "Bayesian" (even though it's essentially the same formulation), for he rederives it differently to address concerns such as Borel's paradox seen in Bayesian philosophy. In any case, this probabilistic approach allows for the same type of linearization approach often done for weakly nonlinear problems in the frequentist approach, but additionally provides for a very flexible numerical sampling approach to handle more strongly nonlinear problems. In spite of the focus on the probabilistic approach, this book has many useful comparisons between probabilistic (Bayesian) and frequentist inverse theory. Note he offers a free PDF copy of this book on his webpage (with a request to please buy the book if you find yourself using it and can afford it). For those who are familiar with his 1987 book, this one largely replaces it but leaves out a few bits I thought were really useful in the 1987 version, like expressions for derivatives of elastic displacement with respect to media properties. But many of the other example problems remain. (A B P U)


Markov Chain Monte Carlo in Practice, by W.R. Gilks, S. Richardson, & D.J. Spiegelhalter. Markov Chain Monte Carlo (MCMC) sampling, among other uses, can be used for numerically sampling the posterior distribution in Bayesian (probabilistic) inversion. The book is a fantastic and rigorous supplement to Tarantola's book. The 19 page introductory chapter (16 pages without the refs) is such an accessible overview of the subject of MCMC that it would make a very good reading assignment for an inverse theory class that discussed Bayesian inversion. The rest of the chapters are articles by experts in the field, detailing implementation issues like convergence, sampling mechanics, and differences between variations of MCMC such as Metropolis/Hastings vs Gibbs sampling and so on. An important note made in the introduction is that MCMC is not only for Bayesian inversion -- in frequentist inversion one may wish to sample the integral in the data misfit distribution (say if it were some arbitrary distribution other than Gaussian). (A B P U)


Geophysical Inverse Theory, by Robert L. Parker. A classic frequentist text that is very readable - Parker is rigorous and introduces the reader to functional analysis concepts, but injects witty tidbits here and there which keep you interested. This book focuses on the Gram matrix / representers technique, which parameterizes the model with the same number of parameters as there are data points, and requires numerical integration for many real-world problems. But the technique is ideal for gravity inversion and magnetotellurics (MT), and those two topics are explored in detail in the book's examples. So you should be sure to read this book if you are working on gravity or MT inversion. (A B P U)


Geophysical Data Analysis: Discrete Inverse Theory, Revised Edition, by William Menke. Another frequentist classic text; note the revised edition is recommended as the original had numerous typos in the equations. While Parker leaves the Earth model being estimated as a continuous function, Menke (like Aster/Borchers/Thurber and others) discretizes it as his parameterization. The idea is that this discretization is finer than the resolution of the inverse problem solution. This book is the only one in which I've seen much discussion of the data resolution matrix (as opposed to model resolution matrix). (A B P U)


Rank-Deficient and Discrete Ill-Posed Problems: Numerical Aspects of Linear Inversion, by Per Christian Hansen. Very well written book concerning various regularization methods in frequentist inversion, with emphasis on a SVD/spectral approach. The value of formulating regularization in the SVD domain is twofold -- one, it's greatly faster computationally (analogous to speeding up timeseries processing by doing it in the frequency domain), and two, it does a much better job at preserving numerical accuracy. A good chunk of this book's material (but not all) can be found in Hansen's Regularization Tools manual (below under WWW links). And that's free unlike this book! (A B P U)


Time Series Analysis and Inverse Theory for Geophysicists, by David Gubbins. As the title implies, this book is sortof two books in one, and so far it is the inverse theory half that I've spent time reading. Unfortunately I found it somewhat scattered and think it would be very difficult to learn the material for the first time from this book. On the other hand however, this book is worth reading after being more familiar with the topic, as there are useful tidbits throughout. Just as one example, this was the only inverse theory book I've found so far that specifically points out that the model resolution matrix is not always symmetric (for example when using 2nd-order Tikhonov regularization). That drove me nuts figuring that out, but wouldn't have if I'd come across this book sooner. (A B P U)


Helpful Papers:
  • A Reading List in Inverse Problems, Brian Borchers, 1998.
    A very useful bibliography of inverse theory references, both classic and modern, with brief 1-2 sentence summaries.
  • Resolution of seismic waveform inversion: Bayes versus Occam, Gouveia & Scales, 1997.
    A fantastically helpful paper comparing and contrasting Bayesian and Occam/classical inversion techniques. Explains what happened to the regularization bias and tradeoff parameter in the Bayesian approach. (By the way, you'll find the Bayesian interpretation of the resolution matrix in Tarantola's book above.)
  • Inverse Problems in Geophysics, Snieder & Trampert, 2000.
    At 73 pages long, it's somewhere between an article and a book. The whole thing is well-written and useful, but if nothing else I strongly recommend the first five pages as a particularly good conceptual overview of geophysical inverse theory.
  • Estimation of information content and efficiency for different data sets and inversion schemes using the generalized singular value decomposition, Th. Günther, S. Friedel & K. Spitzer, 2003.
    A handy addendum to the discussion of the GSVD based inversion and resolution material in section 5.5 of the Aster et al textbook, which describes resolution for higher-order (eg 2nd) Tikhonov regularization. This paper simply clarifies the GSVD material for the case when the model norm is ||L(m-m0)||2, instead of just ||Lm||2. This comes up for example in a locally linearized (nonlinear) problem where we want to smooth the actual model rather than the model perturbation that is solved for at each iteration. This nonlinear inversion topic via the regularized, iterative Gauss-Newton method is discussed further in section 10.1 of the Aster et al book. (And that's the nonlinear method we learned in ESS523 class.) You can do the problem without the GSVD stuff, it just goes faster in GSVD (analogous to how sometimes timeseries processing is faster in frequency space - GSVD space is in fact a type of spectral space), and the GSVD filtering approach may give some more intuitive feel for stabilizing the problem.
  • Regularization Tools User's Manual, Hansen, 2001.
    The first half of this user's manual for this very useful software is a very well written treatise on regularization of linear inverse problems. This is a .zip file which contains a postscript file.
  • Monte Carlo sampling of solutions to inverse problems, Mosegaard & Tarantola, 1995.
    This and the next paper address a useful Monte Carlo technique for handling nonlinear inversions, including the non-Gaussian statistics of their solution. This is an ideal nonlinear technique when your problem is small/fast enough that you can run your forward problem many many times in a reasonable amount of computation time.
  • Resolution Analysis of General Inverse Problems through Inverse Monte Carlo Sampling, Mosegaard, 1998.
  • The Role of Nonlinearity in Inverse Problems, Snieder, 1998.


WWW Links:
  • Papers by Roel Snieder (his own pubs webpage)
  • Per Christian Hansen's website including links to his pubs and his Regularization Tools for Matlab.
  • Papers by Klaus Mosegaard (his own pubs page)
  • NMT Inverse Theory class website cotaught by Rick Aster and Brian Borchers at New Mexico Tech. These guys are coauthors of the textbook listed at the top of this page.
  • Homepage of Albert Tarantola (including a PDF copy of his textbook above!)
  • Autodiff.org, a web resource for automatic differentiation. Derivatives are a requirement for a number of inversion related computations, and yet you're often stuck with computing finite difference approximations excruciatingly slowly, or taking lots of time deriving analytic expressions manually for the few problems you can do that for. By contrast, automatic differentiation (AD) is a software approach which runs over your forward problem code module and gives you a corresponding Nth derivative code module, to use just as you would use an analytic derivative expression that you coded up. The only catch is your forward problem must be able to be called as a function with arguments (be that in C/C++, Fortran, or Matlab).
  • Samizdat Press, repository of free books, lecture notes, & software, with a particular emphasis on math and physics material (including seismology & inverse theory).


Andy's Lab Lecture Notes and Tutorial Matlab scripts from class:
These grew out of TAing for UW-ESS523, Geophysical Inverse Theory, for professor Ken Creager in Fall quarter 2005.
  • LAB #1: reviewtut.m : A review tutorial script covering Matlab scripting fundamentals and some linear algebra review. This is a long script in which everything is initially commented out. Read and uncomment it bit by bit, running local sections of it to learn key concepts. It ends with an assignment to do a parabolic curve fitting to noisy data.
  • LAB #1.5: covstattut.m : A tutorial exploring the meaning of covariance and related statistical concepts. As with reviewtut.m above, the idea is to read and uncomment it bit by bit.
  • LAB #2: lab2.txt : An extension to the curve fitting in lab #1; now we compute statistical measures of the quality of the curve fit we'd found in lab #1.
  • LAB #3: lab3.pdf : Linear inversion of several density profiles of the Earth using the Gram matrix / inner product approach we learned in class and in Parker's book.
  • LAB #4: lab4.pdf : Parameter estimation of earthquake source location given arrival times at known receiver station locations - a weakly nonlinear problem.
  • LAB #5: lab5.pdf : Objective surfaces for linear and nonlinear problems and relation to statistics of inverse solution. Plotting objective surface and confidence ellipses for last week's weakly nonlinear earthquake location problem.
  • LAB #6: lab6.pdf : Use of a smoothing matrix - ie higher-order Tikhonov regularization - in Occam's inversion and related methods for inversion of weakly nonlinear problems. In this lab the problem is to estimate a cubic spline curve fit (the smoothest possible curve) to a set of random data points, as a simple example that you can adapt to your own inverse problems.
  • LAB #7: lab7.pdf (available soon) : Supplemental lecture not given in class: Global methods for estimating the inverse of a not-so-weakly nonlinear problem (also important for comparing against results of the iterated linearized method we learned for weakly nonlinear problems). Includes brief overviews of uniform Monte Carlo, simulated annealing, genetic algorithms, and Bayesian Metropolis sampling (a type of Markov-Chain Monte Carlo or MCMC). This last is the most rigorous in terms of statistics for the solution of a nonlinear inverse problem, and is great if you can computationally afford it (eg it's not meant for global tomography). The Tarantola book and papers above expand fully on this topic.


Geophysical Inversion Q&A session from CSM 2004 Summer School
The professors/students questions-and-answers list from the "2004 Mathematical Geophysics and Uncertainty in Earth Models" summer school at the Colorado School of Mines in Golden, CO.