The fusion of materials science and machine learning is at the forefront of current research, attracting the attention of global giants like Google, Meta, and Microsoft. However, a significant hurdle in this rapidly growing field is the lack of robust data needed to effectively apply machine learning techniques. High-throughput experiments, while ideal, are often prohibitively expensive and labor-intensive. Thus, researchers often rely on computational simulations without external parameters, known as ab initio or first-principles calculations.
Computational simulations within the framework of Density Functional Theory (DFT) have contributed enormously to the progress of machine learning in materials science over the last decade, opening up novel possibilities in design and material selection for many practical applications such as solar cells, catalysts, batteries, and high performance electronics. However, due to the inherent shortcomings of DFT, it is arguably approaching its limits and simulation methods beyond DFT are gaining increasing attention in the research community. Unfortunately, all of these methods are computationally expensive. Among them, the de facto gold standard is the GW method, which is the focus of the research presented in the following sections. In particular, we investigate how to automate the convergence of these calculations in a simple, robust and efficient way.
In this "Behind the Paper" post, I want to share some insights into the journey of creating my first paper during my PhD research in this challenging yet exciting field: from the inception of the idea, to the research and writing process, to the presentation and explanation of our results.
The story begins with the research project my colleague Malte Grunert and I started around this time last year. Our research focuses on using machine learning to predict the optical properties of materials. The journey began with an extensive literature review, where we quickly identified a significant gap: there were no existing datasets of frequency-dependent optical properties for materials that could be used for machine learning. This gap presented both a challenge and an opportunity, and we were quick to take advantage of it.
Given that our university, the Technische Universität Ilmenau, Germany, operates a modern cluster for scientific computing, we decided to create our own Python framework to perform automated ab initio calculations using custom-build workflows and open-source codes like Quantum ESPRESSO and YAMBO. Later on, this approach would allow us to generate the necessary data and contribute something novel to the field. But for now, let's not get ahead of ourselves and stay with the story.
After outlining our code structure and testing our initial workflows, my colleague Malte Grunert took the lead on calculating optical spectra of semiconductors and insulators within the independent particle approximation based on standard DFT calculations. Meanwhile, I focused on the next step: “How we could improve the data in the future?”, or in other words, whether it is even possible to improve the data with modern computing resources within a reasonable amount of time and effort. My first and most obvious idea was, of course, to perform GW calculations, which are well studied and widely used in studies of the electronic structure and optical properties of various materials. My goal, therefore, was to evaluate how many GW calculations we could feasibly perform in a reasonable time span, since GW calculations are computationally intensive and notoriously difficult to converge.
At first, I did what any reasonable first-year graduate student would do: I looked for existing workflows to converge and perform GW computations. Two research papers proposing slightly different but still quite similar methods had been published in recent years, the one by Bonacci et al. [1] using YAMBO, as we like to do. Their workflow was written in a very general and - from what I heard at conferences - quite difficult to learn workflow management package called AiiDA. So I decided to implement their proposed GW workflow in our own code, which has two great side effects that I can only recommend to starting PhD students. First, you really improve your coding skills when implementing algorithms directly from research papers. Second, you learn all aspects of the research paper as you try to reproduce it in detail and validate the research through exact reproduction.
After implementing and testing their sophisticated workflow in our code, we asked ourselves simple questions such as "Can this workflow be made more robust, simple, and efficient?", "Does the algorithm need to be this involved?", and "Can we take advantage of the independence of some convergence parameters?” Therefore, we decided to develop our own robust, simple and efficient workflow and performed calculations for 70 semiconducting and insulating materials during the Christmas period, when CPU time on our local compute cluster was readily available. We compared the performance and accuracy of our workflow with that of Ref. [1], where the accuracy was evaluated by performing expensive reference calculations. In addition, we investigated whether the independence of certain convergence parameters could be exploited to further speed up the workflow.
Our results, which are described in detail in our paper "A robust, simple, and efficient convergence workflow for GW calculations" [2], can be summarized as follows: Using our GW workflow, which is easy to implement either automatically or manually, one can save more than a factor of two in raw computation time while maintaining the same accuracy as the previous, more complicated workflow proposed by Bonacci et al. [1]. Furthermore, another factor of 10 in computational time can be saved by exploiting the independence of parameter shown in our work.
In conclusion, by integrating these insights into a workflow, the computational efficiency of the GW calculation can be significantly increased, making no changes to the underlying ab initio code, simply by doing the right calculations in the right order. Our final convergence workflow is highly efficient, making it ideal for future high-throughput GW calculations, paving the way for the use of methods beyond DFT, such as many-body perturbation theory, in large-scale materials screening projects, and helping to discover materials for various high-tech applications. In addition, it should be mentioned that the presented workflow can also speed up high-precision single-system GW calculations.
As an afterthought, one could argue a posteriori that we applied Occam's razor (“the simplest model is often the best”) when designing our GW workflow. Arguably, this principle is not often enough applied in today's science, as discussed in detail in the comment "Inverse Occam's razor" by Igor Mazin [3], which is definitely well worth reading.
[1] Bonacci, M., et al. Towards high-throughput many-body perturbation theory: efficient algorithms and automated workflows. npj Comput Mater 9, 74 (2023).
[2] Großmann, M., Grunert, M. & Runge, E. A robust, simple, and efficient convergence workflow for GW calculations. npj Comput Mater 10, 135 (2024).
[3] Mazin, I. Inverse Occam’s razor. Nat. Phys. 18, 367–368 (2022).
Please sign in or register for FREE
If you are a registered user on Research Communities by Springer Nature, please sign in