A Family of Hybrid Random Number Generators with Adjustable Quality and Speed

Conventional random number generators provide the speed but not necessarily the high quality output streams needed for large-scale stochastic simulations. Cryptographically-based generators, on the other hand, provide superior quality output but are often deemed too slow to be practical for use in large simulations. We combine these two approaches to construct a family of hybrid generators that permit users to choose the desired tradeoff between quality and speed for a given application. We demonstrate the effectiveness, performance, and practicality of this approach using a standard battery of tests, which show that high quality streams of random numbers can be obtained at a cost comparable to that of fast conventional generators.

[1]  A. Kolmogorov Three approaches to the quantitative definition of information , 1968 .

[2]  P. Hellekalek Good random number generators are (not so) easy to find , 1998 .

[3]  Leonid A. Levin,et al.  The Tale of One-Way Functions , 2000, Probl. Inf. Transm..

[4]  Stuart L. Anderson,et al.  Random Number Generators on Vector Supercomputers and Other Advanced Architectures , 1990, SIAM Rev..

[5]  G. Marsaglia Random numbers fall mainly in the planes. , 1968, Proceedings of the National Academy of Sciences of the United States of America.

[6]  S. Rajsbaum Foundations of Cryptography , 2014 .

[7]  S. K. Park,et al.  Random number generators: good ones are hard to find , 1988, CACM.

[8]  Michael Mascagni,et al.  SPRNG: A Scalable Library for Pseudorandom Number Generation , 1999, PP.

[9]  尚弘 島影 National Institute of Standards and Technologyにおける超伝導研究及び生活 , 2001 .

[10]  Marc Olano,et al.  GPU random numbers via the tiny encryption algorithm , 2010, HPG '10.

[11]  Pierre L'Ecuyer,et al.  TestU01: A C library for empirical testing of random number generators , 2006, TOMS.

[12]  G. Marsaglia,et al.  Some Difficult-to-pass Tests of Randomness , 2022 .

[13]  G. Marsaglia The Structure of Linear Congruential Sequences , 1972 .

[14]  F. James A Review of Pseudorandom Number Generators , 1990 .

[15]  Michael Mascagni,et al.  Testing parallel random number generators , 2003, Parallel Comput..

[16]  Mark A. Moraes,et al.  Parallel random numbers: As easy as 1, 2, 3 , 2011, 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (SC).

[17]  Leonid A. Levin,et al.  A Pseudorandom Generator from any One-way Function , 1999, SIAM J. Comput..

[18]  Pierre L'Ecuyer,et al.  Random numbers for simulation , 1990, CACM.

[19]  P. L'Ecuyer,et al.  About polynomial-time “unpredictable” generators , 1989, WSC '89.

[20]  Oded Goldreich,et al.  A Primer on Pseudorandom Generators , 2010 .

[21]  Li-Yi Wei,et al.  Parallel white noise generation on a GPU via cryptographic hash , 2008, I3D '08.