Ziggurat algorithm

From Wikipedia, the free encyclopedia

The ziggurat algorithm is a rejection sampling algorithm which generates normally-distributed pseudo-random numbers. The algorithm is considerably faster than the more commonly used Box-Muller transform, because the latter calculates logarithms and discards on average more than 20% of the generated values. The ziggurat algorithm on the other hand can generate normally-distributed random numbers nearly as fast as uniformly-distributed ones.

The ziggurat algorithm is named after ziggurats because the basis of the algorithm is a step function which resembles a ziggurat.

[edit] See also

[edit] References