Bayesian Waveform Inversion 

PI:  Andreas Fichtner (ETH Zurich)

Co-PIs:  Christian Boehm, Marga Rominger, Sergio Sanabria, Michael Afanasiev, Lion Krischer 

July 1, 2021 – June 30, 2024

Project Summary

During the past decade, full-waveform inversion (FWI) has evolved into one of the most powerful methods to image the interior of an inaccessible body based on wavefield recordings at its surface. It has provided images with unprecedented resolution in a wide range of application domains, including seismology, medical ultrasound, and nondestructive material testing. Despite its undeniable success, FWI continues to suffer from the absence of methods for uncertainty quantification that properly account for nonuniqueness and nonlinearity of the inverse problem, especially for 3D problems. 

While traditionally deemed out of scale, a Bayesian approach to uncertainty quantification is within reach, thanks to advances in computing hardware and a series of recent methodological developments. These include wavefieldadapted meshes, adjoint-based Hamiltonian Monte Carlo (HMC) sampling, and quasi-Newton autotuning of the HMC mass matrix. 

Within this context, we propose to develop a GPU-enabled computational framework that integrates the above developments into a scalable and portable software package. This is primarily intended to (1) achieve a scientific breakthrough in nonlinear wave-based imaging by providing full uncertainty information, (2) ensure application readiness of (future) large-scale Bayesian Waveform Inversion on emerging exascale systems, (3) produce continuously tested, portable, open-source sub-packages that can easily be reused for other problems, such as any forward and adjoint finite-element PDE solution, (4) lead to Swiss allocations on Tier 0 systems of EuroHPC or other computational resource providers, and (5) address a large group of applied scientists, specifically in the domains of seismic and medical imaging. 

The proposed project is highly collaborative, bringing together top experts from various domains, including seismic imaging, medical ultrasound, high-performance scientific computing, numerical optimisation, inverse theory, and large-scale data analysis. The academic part of the team from ETH Zurich and the University Hospital Zurich, is complemented by highly-skilled code developers from the ETH Spin-Off Mondaic. Further support will be provided by NVIDIA’s CoDesign Lab at ETH Zurich. 

The project is organised into five work packages, focused on the following code deliverables: (1) GPU-accelerated data processing, including the computation of adjoint sources, for large seismic and medical waveform datasets, (2) GPU-accelerated autotuning of the HMC mass matrix using a factorised L-BFGS approximation, (3) an API for finite-element kernel fusion to accelerate typical multiply-scale-transpose operations and ensure portability between different HPC systems, (4) a fault-tolerant workflow that integrates the previous code developments into a scalable HMC sampler, and (5) code optimisation for scalability and speed, concurrently with large-scale applications using Tier 0 resources. All codes developed within this project will have OSI-compliant licenses, will be continuously tested, and distributed though commonly used repositories, such as GitHub. The CI/CD of codes developed in work packages 2 and 3 will be integrated with CSCS infrastructure and will lead to production-quality software that will be useful for other (CSCS) users. 

External work packages, financed through matched funding, will support the project through (1) the implementation of the general kernel-fusion API into the spectral-element wave equation solver Salvus, and (2) concurrently running, real-data applications that ensure the actual usefulness of the code developments for the solution of realistic, large-scale problems. 

The work packages are distributed over a project duration of three years. During the first two years, we will mainly develop prototype codes on the basis of relatively small-scale, mostly 2D, example problems. Approximately 1.5 to 2 years after the start of the project, we will apply for Tier 0 resources provided, for instance, by EuroHPC. This will allow us to run large-scale realistic scenarios for the purpose of code optimisation for scaling and speed. 

Required resources for this project are dominated by the salaries for two postdoctoral researchers, employed at ETH Zurich (100 % for three years) and the University Hospital Zurich (33 % for three years). Furthermore, we would be greatful if CSCS staff could provide information about targeted future technologies, training in HPC development, and access to development platforms. The most significant impact of this project will come from (1) the sheer ability to provide complete uncertainty information in FWI for both seismic and medical applications, which will affect decision making, model comparison, and model interpretation, (2) the development of widely usable software packages, for instance, for finite-element kernel fusion and Hessian-aware MCMC autotuning, and (3) the ability to perform GPU-accelerated data processing for seismic and medical ultrasound datasets that currently grow at super-exponential speed. 

It is the nature of this project to ensure readiness for future large-scale applications on emerging exa-scale systems. The actual problems that we will be able to solve within this project may still be deemed small because they will operate at rather low frequencies. However, we believe that this project is an essential preparatory step towards fully Bayesian Waveform Inversion that delivers important uncertainty information.