Monte Carlo methods and parallel random number generators
We recalled the main idea of Monte Carlo methods and their
reliance on good random number generators.
Last time we sketched the MTBF (mean time between failures) problem.
To generate samples along a normal distribution, one would need to
apply a Box-Muller transformation to uniformly distributed samples.
Besides implementing the MTBF problem in C, another good exercise
is to perform a frequency test on the standard random number generators.
With a simple C program patterns.c we produced
a very disturbing picture: random numbers
generated by multiplicative congruential generators occur on planes!
We seized this experiment to consider the alternative lagged Fibonacci
generators.
We formulated the four criteria used in
SPRNG,
The Scalable Parallel Random Number Generators Library.
Bibliography
- James E. Gentle: "Random Number Generation and Monte Carlo Methods",
Second edition, Springer-Verlag, 2003.
- Donald E. Knuth: "The Art of Computer Programming.
Volume 2. Seminumerical Algorithms".
Third Edition, Addison Wesley, 1998.
- Michael Mascagni:
"Parallel linear congruential generators with prime moduli".
Parallel Computing 24:923-936, 1998.