This repository contains an open source implementation of the graph neural network model described in our paper. The model can be trained using the training binary included in this repository, and the dataset published with our paper.
Pretrained model checkpoints and the dataset are available via the google cloud platform.
Despite decades of theoretical studies, the nature of the glass transition remains elusive and debated, while the existence of structural predictors of its dynamics is a major open question. Recent approaches propose inferring predictors from a variety of human-defined features using machine learning. Here we determine the long time evolution of a glassy system solely from the initial particle positions and without any hand-crafted features, using graph neural networks as a powerful model. We show that this method outperforms current state-of-the-art methods, generalizing over a wide range of temperatures, pressures, and densities. In shear experiments, it predicts the locations of rearranging particles. The structural predictors learned by our network exhibit a correlation length which increases with larger timescales to reach the size of our system. Beyond glasses, our method could apply to many other physical systems that map to a graph of local interaction.
The dataset was generated with the LAMMPS molecular dynamics package. The simulated system has periodic boundaries and is a binary mixture of 4096 large (A) and small (B) particles that interact via a 6-12 Lennard-Jones potential. The interaction coefficients are set for a typical Kob-Andersen configuration.
The dataset (and model checkpoints) can be downloaded using gsutil. To download the entire GCP bucket (~100GB) use:
gsutil -m cp -R gs://deepmind-research-glassy-dynamics .
The data is stored in Python's pickle format protocol version 3. Each file contains the data for one of the equilibrated systems in a Python dictionary. The dictionary contains the following entries:
positions
the particle positions of the equilibrated system.types
the particle types (0 == type A and 1 == type B) of the equilibrated system.box
the dimensions of the periodic cubic simulation box.time
the logarithmically sampled time points.time_indices
the indices of the time points for which the sampled trajectories on average reach a certain value of the intermediate scattering function.is_values
the values of the intermediate scattering function associated with each time index.trajectory_start_velocities
the velocities drawn from a Boltzmann distribution at the start of each trajectory.trajectory_target_positions
the positions of the particles for each of the trajectories at selected time points (as defined by thetime_indices
array and the corresponding values of the intermediate scattering function stored inis_values
).metadata
a dictionary containing additional metadata:temperature
the temperature at which the system was equilibrated.pressure
the pressure at which the system was equilibrated.fluid
the type of fluid which was simulated (Kob-Andersen).
All units are in Lennard-Jones units. The positions are stored in the absolute coordinate system i.e. they are outside of the simulation box if the particle crossed a periodic boundary during the simulation.
If this repository is helpful for your research please cite the following publication:
Unveiling the predictive power of static structure in glassy systems V. Bapst, T. Keck, A. Grabska-Barwińska, C. Donner, E. D. Cubuk, S. S. Schoenholz, A. Obika, A. W. R. Nelson, T. Back, D. Hassabis and P. Kohli
This is not an official Google product.