Learning to Simulate Complex Physics with Graph Networks
Authors: Alvaro Sanchez-Gonzalez, Jonathan Godwin, Tobias Pfaff, Rex Ying, Jure Leskovec, Peter Battaglia
ICML 2020 | Conference PDF | Archive PDF | Plain Text | LLM Run Details
| Reproducibility Variable | Result | LLM Response |
|---|---|---|
| Research Type | Experimental | We implemented our GNS framework in a single deep learning architecture, and found it could learn to accurately simulate a wide range of physical systems in which fluids, rigid solids, and deformable materials interact with one another. Our model also generalized well to much larger systems and longer time scales than those on which it was trained. While previous learning simulation approaches (Li et al., 2018; Ummenhofer et al., 2020) have been highly specialized for particular tasks, we found our single GNS model performed well across dozens of experiments and was generally robust to hyperparameter choices. Our analyses showed that performance was determined by a handful of key factors: its ability to compute long-range interactions, inductive biases for spatial invariance, and training procedures which mitigate the accumulation of error over long simulated trajectories. |
| Researcher Affiliation | Collaboration | Alvaro Sanchez-Gonzalez * 1 Jonathan Godwin * 1 Tobias Pfaff * 1 Rex Ying * 1 2 Jure Leskovec 2 Peter W. Battaglia 1 *Equal contribution 1Deep Mind, London, UK 2Department of Computer Science, Stanford University, Stanford, CA, USA. Email to: alvarosg@google.com, jonathangodwin@google.com, tpfaff@google.com, rexying@stanford.edu, jure@cs.stanford.edu, peterbattaglia@google.com. |
| Pseudocode | No | The paper describes the GNS framework components conceptually (ENCODER, PROCESSOR, DECODER) and provides diagrams (Figure 2), but it does not include structured pseudocode or algorithm blocks. |
| Open Source Code | Yes | Code and data available at github.com/deepmind/deepmind-research/tree/master/learning to simulate. |
| Open Datasets | Yes | Code and data available at github.com/deepmind/deepmind-research/tree/master/learning to simulate. For one domain, we use Li et al. (2018) s BOXBATH, which simulates a container of water and a cube floating inside, all represented as particles, using the PBD engine Fle X (Macklin et al., 2014). We also created WATER-3D, a high-resolution 3D water scenario with randomized water position, initial velocity and volume, comparable to Ummenhofer et al. (2020) s containers of water. We used SPlis HSPlas H (Bender & Koschier, 2015), a SPH-based fluid simulator with strict volume preservation to generate this dataset. |
| Dataset Splits | Yes | Our datasets typically contained 1000 train, 100 validation and 100 test trajectories, each simulated for 300-2000 timesteps (tailored to the average duration for the various materials to come to a stable equilibrium). |
| Hardware Specification | No | We stopped training when we observed negligible decrease in MSE, which, on GPU/TPU hardware, was typically within a few hours for smaller, simpler datasets, and up to a week for the larger, more complex datasets. This statement is too general and does not specify exact hardware models or types. |
| Software Dependencies | Yes | We implemented our models using Tensor Flow 1, Sonnet 1, and the Graph Nets library (2018). |
| Experiment Setup | Yes | Our GNS architecture used the relative ENCODER variant, 10 steps of message-passing, with unshared GN parameters in the PROCESSOR. We applied noise with a scale of 3 10 4 to the input states during training. All MLPs have two hidden layers (with Re LU activations), followed by a non-activated output layer, each layer with size of 128. All MLPs (except the output decoder) are followed by a Layer Norm (Ba et al., 2016) layer. We optimized the model parameters θ over this loss with the Adam optimizer (Kingma & Ba, 2014), using a nominal mini-batch size of 2. We performed a maximum of 20M gradient update steps, with exponential learning rate decay from 10 4 to 10 6. |