Determining the Potential Energy Surface of Atomic Clusters using Machine Learning
Applying machine learning techniques and especially artificial neural networks to problems related with quantum mechanical calculations has become more popular recently.
Meanwhile, the development of software frameworks for efficient parallelized computations, like Numpy and SciPy for the CPU as well as Theano, TensorFlow or Keras for a GPU made enormous progress in the last few years.
The main part of this work is devoted to translating the techniques developed in the above mentioned works on applying artificial neural networks to approximate the Potential Energy Surface of an atomic cluster to modern computing frameworks, making use of the possibility to parallelize and hence speed up the computations, using a GPU. First, we test the software developed within this thesis and obtain results comparable to those in for the approximation of the Potential Energy Surface. However, we will see that the software developed within this thesis is much faster, the factor of speed improvement is about 30 to 70, depending on the given problem and, of course, on the size of the data set.
The next step is to approximate the forces acting on the nuclei of the atoms in the atomic cluster, which was done before by differentiating the Potential Energy Surface with respect to the coordinate axes.
In this thesis, we will take a different approach, not differentiating the Potential Energy Surface but rather directly approximating these forces with an artificial neural network. We will see that this takes more time than approximating the Potential Energy, but because of the speed improvements gained by using the modern and optimized software frameworks like Keras, and because of the usage of a GPU, this approach is still feasible in terms of computational time needed.
The features for the training of an artificial neural network that approximates the Potential Energy Surface have been obtained using so called symmetry functions that have been applied to atoms lying within a certain range of a sphere, yielding features that are invariant under translation and rotation, just as the target output, the Potential Energy, is as well. However, when approximating the forces, the output is not invariant under rotation. But still, rotating the atomic cluster will rotate the forces in the same way. For this reason, we introduce a modified approach, replacing the aforementioned spheres by ellipsoids, more precisely spheres stretched along one of the coordinate axes, to ensure the same behaviour of features and target outputs when rotating the input, namely the atomic cluster. Introducing this change in feature calculation did not improve the result in terms of error measurement by a meaningful amount, but the idea is very new and there is definitely a lot of room for improvement.
It must be said that this is only a first try of directly approximating the forces through the use of an artificial neural network, but it yields promising results and asks for optimization in this direction.