Parallel Large-Scale Edge-Preserving Joint Inversion with PETSc and TAO.
DOI:
https://doi.org/10.15160/1974-918X/1234Abstract
The focus of this thesis is on the study and the parallel implementation of a software package for the Tikhonov's approach to the joint inversion of multidimensional data, based on minimum support regularization and built on top of the well known and widely used high-performance parallel libraries PETSc and TAO. Studying effective methods and implementing efficient codes for a truly joint inversion arouses great interest, because multiple types of observations of the same object can be used at once in a single procedure to recover an estimate of the object itself via non-invasive inspection. One of the main reasons for this interest is that jointly inverting different kind of data could allow to reduce both the ill-posedness of data reconstruction problem and the total number of data to be collected, while still preserving the accuracy of the results. This is a relevant goal because the need to get more detailed information about the structure of the investigated physical systems, via non-invasive observations, is common to a large number of research and industrial felds such as Biology, Geophysics, Medicine and many many others; and the same applies to their large-scale scientifc applications. Original contributions are given to both the theoretical aspects and the numerical implementation of the joint inversion. First of all, we derive the analytical expressions of first- and second-order derivatives of the proposed joint inversion functional in its discretized version, to be used with first- and second-order optimization methods. Then we implemented a Matlab prototype and the HPC parallel code, named JoInv. Another important part of the thesis is the design and the implementation of a PETSc-compliant recursive procedure for the structure prediction of sparse matrices products of every dimension, in both the sequential and the parallel cases. Last, but not least, we provide the implementation of the well known Scaled Gradient Projection (SGP) method for simply constrained nonlinear programming problems as a new TAO solver. We analyze the performances of all the developed code with respect to the most important metrics, i.e., speedup, efciency, Kuck's function, and DUSD model, by using simulated data. A number of further research developments are outlined at the end, with the perspective in mind of using the code with large-scale real-world data that will be hopefully made available by interested people.