A Box Muller transform takes a continuous, two dimensional uniform distribution and transforms it to a normal distribution.

It is widely used in statistical sampling, and is an easy to run, elegant way to come up with a standard normal model. In fact, since it can be used to generate normally distributed random numbers, it was originally developed as a better and computationally efficient alternative to inverse sampling.

## Running the Box Muller Transformation

At its most basic, the Box-Muller transformations simply takes two variables that are uniformly distributed and sends them to two independent random variables with a standard normal distribution.

Let’s say U_{1} and U_{2} are our original independent random variables; they are uniformly distributed in the interval (0,1). The Box-Muller transformation creates new Z_{0} and Z_{1}; independent, random variables that have a standard normal distribution:

The derivation here is based on the way we can represent any point in the X,Y Cartesian plane through polar coordinates, with a radius and an angle.

## The Polar Form of the Box Muller Transform

There’s another form of the Box-Muller transform which uses the Pythagorean identity

as well as the identities

to rewrite the above equations as

Although the same points are being mapped to as with the ‘basic form’ of the Box-Muller transform, given above, this alternate form is sometimes preferred because it replaces sine and cosine with simple divisions and so is often more computationally efficient.

## References

Goodman, Jonathan. Lecture Notes on Monte Carlo Methods. Chapter 2: Simple Sampling of Gaussians Retrieved from https://www.math.nyu.edu/faculty/goodman/teaching/MonteCarlo2005/notes/GaussianSampling.pdf on March 16, 2018

Vafa, Keyon. The Box Muller Transform.

Retrieved from http://keyonvafa.com/box-muller-transform/ on March 16, 2018