Or “experiment design”
Choose best simulations to launch
- Diverse set?
- Ones that improve ML model?
- Ones likely to improve quantity of interest?
- If ML model degrading, collect more data?
Examples:
- “Machine Learning Inter-Atomic Potentials Generation Driven by Active Learning” by Sivaraman, et al. paper, code
- "Coarse-Grained Density Functional Theory Predictions via Deep Kernel Learning" by Jackson and Sivaraman. paper, code
Examples:
- “Deep Learning Hamiltonian Monte Carlo” by Foreman, et al. paper, code
- “Stream-AI-MD: Streaming AI-driven Adaptive Molecular Simulations for Heterogeneous Computing Platform” by Brace, et al. paper, code
Replace part of simulation with ML surrogate model
- Expensive part?
- Inaccurate part? ML model output fed back into rest of simulation
Example: “A turbulent eddy-viscosity surrogate modeling framework for RANS simulations” By Maulik, et al. paper, code
- Apply ML model to save compressed simulation results
- Train online during simulation (skip I/O bottleneck)
- In situ analysis giving feedback on simulations before completed
- Need to adjust something?
Example: “In Situ Compression Artifact Removal in Scientific Data Using DeepTransfer Learning and Experience Replay” by Madireddy, et al. paper
- Select simulation parameters
- Select numerical scheme
Example: “Distributed Deep Reinforcement Learning for Simulation Control” By Pawar & Maulik paper, code
- Data assimilation
- Augmenting simulation with ML closure/discrepancy model
- Solver as part of ML loss function
See: “A terminology for in situ visualization and analysis systems” by Childs et al. 2020
Proximity
- On node
- Off node, same computing resource
- Distinct computing resource
Data Access
- Direct: share same logical memory space (may or may not require copy)
- Indirect: distinct logical memory
- Either way: need to synchronize data
-
Space Division (Different physical compute resources)
- Can allocate appropriate resource to each
- But need to keep both utilized & transfer data
-
Time Division (Some compute resources alternate simulation vs. AI)
- Less or no synchronization & data transfer
- But always blocking one or the other
