Monte Carlo method

The Monte Carlo method is a numerical procedure, devised by S. Ulam (on his hospital bed, playing cards) to solve a problem by randomly sampling it. It is a very powerful method that we use quite a lot. It can apply even to quite unlikely cases (see for instance Knuth's 3:16 study of the Bible).

It is also a favorite for teaching, as it allows one to do nontrivial stuff very quickly. Rejection sampling is both explained and implemented very easily.

A quite advanced but still nice work is by L. Devroye.[1]

Multivariate sampling

Strangely enough, multivariate sampling—which seems to be a very common need—is little documented on the web, the best thing one can find being people trying to guess the procedure. It is, if taken at face value, a complicated problem, which requires dedicated methods for what are likely highly tricky particular cases that require the method. Even so:

Computational sampling from univariate distributions is effectively a solved problem.
—Dolgov et al.[2]

The simplest method goes as follows:

This page is still in progress.


See also


  1. Handbooks in Operations Research and Management Science. L. Devroye in Handbooks in Operations Research and Management Science §4:83 (2006).
  2. Dolgov, S., Anaya-Izquierdo, K., Fox, C. et al. Approximation and sampling of multivariate probability distributions in the tensor train decomposition. Stat Comput 30, 603–625 (2020). They give references to more direct discussions: cf. Devroye, Johnson & Hörmann.
  • Multivariate Statistical Simulation: A Guide to Selecting and Generating Continuous Multivariate Distributions, By Mark E. Johnson