Lightning Talk: But How Do You Autograd Through Your Simulator? Making a...
summary
Practical recipe for turning PyTorch physics code into a differentiable simulator: replace non‑smooth collision and Coulomb friction with smooth proxies (smooth L1, smoothed friction), clamp Jacobians for corotated/NeoHookean materials, freeze contact sets per inner Newton solve, and stop‑grad through line search and warm starts. Differentiate inner CG/Newton with implicit differentiation using only matrix‑vector products, reuse forward preconditioners, and save memory with checkpointing. Demos and code use torch defim and show Jacobian‑free back‑prop on large rigid/deformable systems.
AI-written summary · about
chapters (9)
- 0:00Autograd through simulators
- 1:49Training with sim parameters
- 2:52Autograd assumptions in simulators
- 4:19Implicit differentiation for gradients
- 6:47Gradient accuracy pitfalls
- 7:51Forward pass data storage
- 8:55Converging forward solves
- 9:39Freezing contact sets
- 10:01torch-deform and closing remarks
related talks
12mLightning Talk: Simulating Quantum Systems with PyTorch
12mLightning Talk: Backpropagation-Free Optimization in PyTorch
12mLightning Talk: Building Intermediate Logging for PyTorch
10mTorchJD: Jacobian Descent in PyTorch
32mProbabilistic and Differentiable Programming in Scientific Simulators
54mGeneralized Physics-Informed Learning through Language-Wide Differentiable Programming
01h 10mThe impact of differentiable programming: how ∂P is enabling new science in Julia
27mControlling the Chaos: Reproducible Deep Learning Experiments Using Lightning and Hydra
