CS 598 · Graduate Course

Differentiable and Inverse Monte Carlo Methods

Randomness is how we simulate the world. Derivatives are how we invert it. This course sits where the two meet — and teaches you to write estimators that see backwards, from the image to the scene, from the measurement to the cause.

Level Master’s & Ph.D.
Length 13 weeks · 4 modules
Toolchain Dr.Jit / Mitsuba 3, PyTorch
A rendered dining-room scene, its right half replaced by a false-colour map of the image gradients with respect to scene geometry.
Plate I — gradients of a rendered image with respect to scene geometry.

This course explores the theory and practice of differentiating Monte Carlo estimates and solving the inverse problems that follow from them. We build the machinery from first principles: general methods for gradient estimation, including boundary integrals for discontinuous integrands, then differentiable light transport, then applications in inverse rendering, Bayesian inference, and scientific computing.

Half of the work is analytical — deriving estimators and proving them unbiased. The other half is on the GPU, where you will implement what you derive and watch a scene reconstruct itself from a handful of photographs.

The course is open to students in Computer Science, Applied Mathematics, Computational Physics, and neighbouring fields. If you have ever wanted to run a simulation backwards, this is the course.

Multivariable calculus

Change of variables, Jacobians, and differentiation under the integral sign.

Linear algebra

Conditioning, least squares, and the vocabulary of ill-posed systems.

Probability & stochastic processes

Estimators, variance, convergence, and Markov chains.

Python or C++

Working fluency; prior exposure to PyTorch or Mitsuba helps but is not assumed.

  1. Derive unbiased gradient estimators, and know when your derivation has quietly stopped being unbiased.
  2. Handle discontinuous integrands in multidimensional integral equations.
  3. Formulate and solve ill-posed inverse problems using Monte Carlo gradient estimates.
  4. Implement GPU-accelerated differentiable Monte Carlo algorithms in modern frameworks — Dr.Jit / Mitsuba 3 and PyTorch.
  5. Read and critique current literature in differentiable graphics, neural MC estimators, and inverse physical transport.

Thirteen Weeks

Open a week to see its topics.

I

Foundations of Monte Carlo Integration & Inverse Problems

Weeks 1–3

Week 1 Fundamentals of Monte Carlo Integration & Inverse Problems Setup

Monte Carlo estimator properties — unbiasedness, variance, convergence rate. Fredholm integral equations. Forward versus inverse problems, conditioning, and regularization (Tikhonov, TV).

Week 2 Variance Reduction & Importance Sampling

Control variates, stratified sampling, Multiple Importance Sampling (MIS), weight window techniques, and variance trade-offs inside optimization loops.

Week 3 MCMC & Bayesian Inverse Problems

Metropolis–Hastings, Hamiltonian Monte Carlo, posterior estimation in high-dimensional state spaces, and pseudo-marginal MCMC.

II

Gradient Estimation in Stochastic Systems

Weeks 4–6

Week 4 Stochastic Gradient Estimation I — Score-Function Estimators

The score-function estimator (likelihood ratio method) and its derivation, control variates for variance reduction, and application to discrete and continuous distributions.

Week 5 Stochastic Gradient Estimation II — Pathwise Derivatives

The reparameterization trick as a pushforward of measures, pathwise differentiation, and a head-to-head comparison of score-function and pathwise estimators in variance and compute cost.

Week 6 Differentiating Discontinuous Integrands & Boundary Integrals

The boundary problem in MC differentiation. Reynolds transport theorem and the Leibniz rule in higher dimensions, edge sampling, Dirac delta formulations, and continuous versus discontinuous transport boundary differentiation.

III

Differentiable & Inverse Light Transport

Weeks 7–9

Week 7 Path-Space Formulation & Adjoint Methods

The path integral formulation of radiative transport, differentiation along ray paths, primary-sample-space versus screen-space differentiation, and reverse-mode automatic differentiation inside a Monte Carlo estimator.

Week 8 Differentiable Rendering & Material / Geometry Optimization

Differentiable path tracing, handling occlusion discontinuities, material parameter recovery, shape optimization, and inverse appearance modelling.

Week 9 Differentiable Volumetric & Participating Transport

The volumetric path integral, differentiable null-collision algorithms (delta tracking), inverse scattering, diffuse optical tomography in medicine, and atmospheric transport.

IV

Neural Methods & Advanced Frontiers

Weeks 10–13

Week 10 Neural Monte Carlo Methods

Neural importance sampling, neural control variates, continuous normalizing flows for proposal sampling, and learned path guiding.

Week 11 Inverse Monte Carlo in Scientific Computing

Differentiable neutron transport, climate and ocean radiative transfer, particle transport in plasma physics, and parameter calibration in complex physical simulations.

Week 12 Advanced Frontier Topics

Measure-valued derivatives, unbiased gradient estimators with bias removal (Rhee–Glynn, Russian roulette differentiation), and hardware-aware implementation — symbolic versus trace-based compilation.

Week 13 Capstone Presentations & Project Reviews

Final project presentations, peer review, and a look at where differentiable stochastic simulation goes next.