Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article

Gaussian random number generators

Published: 02 November 2007 Publication History
  • Get Citation Alerts
  • Abstract

    Rapid generation of high quality Gaussian random numbers is a key capability for simulations across a wide range of disciplines. Advances in computing have brought the power to conduct simulations with very large numbers of random numbers and with it, the challenge of meeting increasingly stringent requirements on the quality of Gaussian random number generators (GRNG). This article describes the algorithms underlying various GRNGs, compares their computational requirements, and examines the quality of the random numbers with emphasis on the behaviour in the tail region of the Gaussian probability density function.

    References

    [1]
    Ahrens, J. H. and Dieter, U. 1972. Computer methods for sampling from the exponential and normal distributions. Comm. ACM 15, 10, 873--882.
    [2]
    Ahrens, J. H. and Dieter, U. 1988. Efficient table-free sampling methods for the exponential, Cauchy, and normal distributions. Comm. ACM 31, 11, 1330--1337.
    [3]
    Andraka, R. and Phelps, R. 1998. An FPGA based processor yields a real time high fidelity radar environment simulator. In Military and Aerospace Applications of Programmable Devices and Technologies Conference.
    [4]
    Bell, J. R. 1968. Algorithm 334: Normal random deviates. Comm. ACM 11, 7, 498.
    [5]
    Boutillon, E., Danger, J.-L., and Ghazel, A. 2003. Design of high speed awgn communication channel emulator. Analog Integr. Circ. Sig. Proc. 34, 2, 133--142.
    [6]
    Box, G. E. P. and Muller, M. E. 1958a. A note on the generation of random normal deviates. Annals Math. Stat. 29, 610--611.
    [7]
    Box, G. E. P. and Muller, M. E. 1958b. A note on the generation of random normal deviates. Annals Math. Stat. 29, 2, 610--611.
    [8]
    Brent, R. P. 1974. Algorithm 488: A Gaussian pseudo-random number generator. Comm. ACM 17, 12, 704--706.
    [9]
    Brent, R. P. 1993. Fast normal random number generators on vector processors. Tech. Rep. TR-CS-93-04, Department of Computer Science, The Australian National University, Canberra 0200 ACT, Australia.
    [10]
    Brent, R. P. 1997. A fast vectorised implementation of Wallace's normal random number generator. Tech. Rep. TR-CS-97-07, Department of Computer Science, The Australian National University, Canberra 0200 ACT, Australia.
    [11]
    Brent, R. P. 2003. Some comments on C. S. Wallace's random number generators. Comput. J., to appear.
    [12]
    Chen, J., Moon, J., and Bazargan, K. 2004. Reconfigurable readback-signal generator based on a field-programmable gate array. IEEE Trans. Magn. 40, 3, 1744--1750.
    [13]
    Chen, W. and Burford, R. L. 1981. Quality evaluation of some combinations of unit uniform random number generators and unit normal transformation algorithms. In ANSS '81: Proceedings of the 14th Annual Symposium on Simulation. IEEE Press, Piscataway, NJ. 129--149.
    [14]
    Danger, J.-L., Ghazel, A., Boutillon, E., and Laamari, H. 2000. Efficient FPGA implementation of Gaussian noise generator for communication channel emulation. In ICECS'2000. IEEE, Jounieh, Lebanon.
    [15]
    Devroye, L. 1986. Non-Uniform Random Variate Generation. Springer-Verlag, http://cg.scs.carleton.ca/~luc/rnbookindex.html, New York.
    [16]
    Forsythe, G. E. 1972. Von Neumann's comparison method for random sampling from the normal and other distributions. Math. Computation 26, 120, 817--826.
    [17]
    Gebhardt, F. 1964. Generating normally distributed random numbers by inverting the normal distribution function. Math. Computation 18, 86, 302--306.
    [18]
    Hörmann, W. 1994. A note on the quality of random variates generated by the ratio of uniforms method. ACM Trans. Model. Comput. Simul. 4, 1, 96--106.
    [19]
    Kabal, P. 2000. Generating Gaussian pseudo-random deviates. Tech. Rep., Department of Electrical and Computer Engineering, McGill University.
    [20]
    Kinderman, A. J. and Monahan, J. F. 1977. Computer generation of random variables using the ratio of uniform deviates. ACM Trans. Math. Softw. 3, 3, 257--260.
    [21]
    Knop, R. 1969. Remark on Algorithm 334 {g5}: normal random deviates. Comm. ACM 12, 5, 281.
    [22]
    Knuth, D. E. 1981. Seminumerical Algorithms, Second ed. The Art of Computer Programming, vol. 2. Addison-Wesley, Reading, Massachusetts.
    [23]
    Kronmal, R. 1964. Evaluation of a pseudorandom normal number generator. J. ACM 11, 3, 357--363.
    [24]
    L'Ecuyer, P. 1992. Testing random number generators. In WSC '92: Proceedings of the 24th Conference on Winter Simulation. ACM Press, New York, NY. 305--313.
    [25]
    L'Ecuyer, P. 1996. Maximally equidistributed combined Tausworthe generators. Math. Computation 65, 213, 203--213.
    [26]
    L'Ecuyer, P. 2001. Software for uniform random number generation: distinguishing the good and the bad. In WSC '01: Proceedings of the 33nd Conference on Winter Simulation. IEEE Computer Society, Washington, DC. 95--105.
    [27]
    L'Ecuyer, P. and Simard, R. 2005. TestU01. http://www.iro.umontreal.ca/~simardr/indexe.html.
    [28]
    Lee, D.-U., Luk, W., Villasenor, J. D., and Cheung, P. Y. 2004. A Gaussian noise generator for hardware-based simulations. IEEE Trans. Comput. 53, 12 (Dec.), 1523--1534.
    [29]
    Lehmer, D. H. 1949. Mathematical methods in large-scale computing units. In Proceedings of the 2nd Symposium on Large-Scale Digital Calculating Machinery. Harvard University Press, Cambridge, Massachusetts, 141--146.
    [30]
    Leva, J. L. 1992a. Algorithm 712; a normal random number generator. ACM Trans. Math. Softw. 18, 4, 454--455.
    [31]
    Leva, J. L. 1992b. A fast normal random number generator. ACM Trans. Math. Softw. 18, 4, 449--453.
    [32]
    Marsaglia, G. 1964. Generating a variable from the tail of the normal distribution. Technometrics 6, 101--102.
    [33]
    Marsaglia, G. 1997. The Diehard random number test suite. http://stat.fsu.edu/pub/diehard/.
    [34]
    Marsaglia, G. 2004. Evaluating the normal distribution. J. Statis. Softw. 11, 4, 1--11.
    [35]
    Marsaglia, G. and Bray, T. A. 1964. A convenient method for generating normal variables. SIAM Rev. 6, 3, 260--264.
    [36]
    Marsaglia, G., MacLaren, M. D., and Bray, T. A. 1964. A fast procedure for generating normal random variables. Comm. ACM 7, 1, 4--10.
    [37]
    Marsaglia, G. and Tsang, W. W. 1984a. A fast, easily implemented method for sampling from decreasing or symmetric unimodal density functions. SIAM J. Sci. Statis. Comput. 5, 349--359.
    [38]
    Marsaglia, G. and Tsang, W. W. 1984b. A fast, easily implemented method for sampling from decreasing or symmetric unimodal density functions. SIAM J. Sci. Stat. Comput. 5, 2 (June), 349--359.
    [39]
    Marsaglia, G. and Tsang, W. W. 1998. The Monty Python method for generating random variables. ACM Trans. Math. Softw. 24, 3, 341--350.
    [40]
    Marsaglia, G. and Tsang, W. W. 2000. The ziggurat method for generating random variables. J. Statis. Softw. 5, 8, 1--7.
    [41]
    Matsumoto, M. and Nishimura, T. 1998. Mersenne twister: A 623-dimensionally equidistributed uniform pseudo-random number generator. ACM Trans. Model. Comput. Simul. 8, 1 (Jan.), 3--30.
    [42]
    McCollum, J. M., Lancaster, J. M., Bouldin, D. W., and Peterson, G. D. 2003. Hardware acceleration of pseudo-random number generation for simulation applications. In IEEE Southeastern Symposium on System Theory. IEEE, Morgantown, WV.
    [43]
    Moler, C. 1995. Random thoughts: 10435 years is a very long time. http://www.mathworks.com/company/newsletters/news_notes/pdf/Cleve.pdf.
    [44]
    Moler, C. B. 2004. Numerical Computing in Matlab. Society for Industrial and Applied Mathematics, USA.
    [45]
    Molle, J. W. D., Hinich, M. J., and Morrice, D. J. 1992. Higher-order cumulant spectral-based statistical tests of pseudo-random variate generators. In WSC '92: Proceedings of the 24th conference on Winter simulation. ACM Press, New York, NY. 618--625.
    [46]
    Muller, M. E. 1958. An inverse method for the generation of random normal deviates on large-scale computers. Mathematical Tables and Other Aids to Computation 12, 63, 167--174.
    [47]
    Muller, M. E. 1959. A comparison of methods for generating normal deviates on digital computers. J. ACM 6, 3, 376--383.
    [48]
    Pike, M. C. 1965. Algorithm 267: random normal deviate {g5}. Comm. ACM 8, 10, 606.
    [49]
    Press, W. H., Teukolsky, S. A., Vetterling, W. T., and Flannery, B. P. 1997. Numerical Recipes in C, Second ed. Cambridge University Press, Cambridge.
    [50]
    Rukhin, A., Soto, J., Nechvatal, J., Smid, M., Barker, E., Leigh, S., Levenson, M., Vangel, M., Banks, D., Heckert, A., Dray, J., and Vo, S. 2001. A statistical test suite for random and pseudorandom number generators for cryptographic applications. NIST special publication 800-22, National Institute of Standards and Technology (NIST), Gaithersburg, Maryland See http://csrc.nist.gov/rng/.
    [51]
    Schollmeyer, M. F. and Tranter, W. H. 1991. Noise generators for the simulation of digital communication systems. In ANSS '91: Proceedings of the 24th Annual Symposium on Simulation. IEEE Computer Society Press, Los Alamitos, CA, 264--275.
    [52]
    Teichroew, D. 1953. Distribution sampling with high speed computers. (PhD thesis).
    [53]
    Thomas, D. B. and Luk, W. 2006. Non-uniform random number generation through piecewise linear approximations. In International Conference on Field Programmable Logic and Applications.
    [54]
    Walker, A. J. 1977. An efficient method for generation discrete random variables with general distribution. ACM Trans. Math. Softw. 3, 253--256.
    [55]
    Wallace, C. 2005. Random number generators. Tech. rep., Monash University. See http://www.datamining.monash.edu.au/software/random/.
    [56]
    Wallace, C. S. 1996. Fast pseudorandom generators for normal and exponential variates. ACM Trans. Math. Softw. 22, 1, 119--127.
    [57]
    Wetherill, G. B. 1965. An approximation to the inverse normal function suitable for the generation of random normal deviates on electronic computers. Appl. Statis. 14, 2, 201--205.
    [58]
    Wichura, M. J. 1988. Algorithm AS 241: The percentage points of the normal distribution. Appl. Statis. 37, 3, 477--484.
    [59]
    Xilinx. 2002. Additive white Gaussian noise (AWGN) core. CoreGen documentation file.

    Cited By

    View all
    • (2024)Statistical properties for an optically injected chaotic semiconductor laser with a high-pass filterOptics Letters10.1364/OL.52290849:10(2609)Online publication date: 6-May-2024
    • (2024)Generation of true quantum random numbers with on-demand probability distributions via single-photon quantum walksOptics Express10.1364/OE.50960132:11(20207)Online publication date: 16-May-2024
    • (2024)Flexible FPGA Gaussian Random Number Generators With Reconfigurable VarianceIEEE Transactions on Circuits and Systems I: Regular Papers10.1109/TCSI.2024.337473171:5(2384-2397)Online publication date: May-2024
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Computing Surveys
    ACM Computing Surveys  Volume 39, Issue 4
    2007
    134 pages
    ISSN:0360-0300
    EISSN:1557-7341
    DOI:10.1145/1287620
    Issue’s Table of Contents

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 02 November 2007
    Published in CSUR Volume 39, Issue 4

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Gaussian
    2. Random numbers
    3. normal
    4. simulation

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)114
    • Downloads (Last 6 weeks)9

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Statistical properties for an optically injected chaotic semiconductor laser with a high-pass filterOptics Letters10.1364/OL.52290849:10(2609)Online publication date: 6-May-2024
    • (2024)Generation of true quantum random numbers with on-demand probability distributions via single-photon quantum walksOptics Express10.1364/OE.50960132:11(20207)Online publication date: 16-May-2024
    • (2024)Flexible FPGA Gaussian Random Number Generators With Reconfigurable VarianceIEEE Transactions on Circuits and Systems I: Regular Papers10.1109/TCSI.2024.337473171:5(2384-2397)Online publication date: May-2024
    • (2024)Ultra-Fast True Random Number Generator Based on Ill-Posedness Nucleation of Skyrmion Bags in FerrimagnetsIEEE Electron Device Letters10.1109/LED.2024.336821045:5(917-920)Online publication date: May-2024
    • (2024)Probability‐Distribution‐Configurable True Random Number Generators Based on Spin‐Orbit Torque Magnetic Tunnel JunctionsAdvanced Science10.1002/advs.20240218211:23Online publication date: 15-Apr-2024
    • (2023)Critical Analysis of Beta Random Variable Generation MethodsMathematics10.3390/math1124489311:24(4893)Online publication date: 6-Dec-2023
    • (2023)Efficient Simulation of Polyhedral Expectations with Applications to FinanceSSRN Electronic Journal10.2139/ssrn.4447428Online publication date: 2023
    • (2023)Design of Improvised DCM-Based Tunable True Random Number Generator2023 International Conference on Sustainable Communication Networks and Application (ICSCNA)10.1109/ICSCNA58489.2023.10370028(756-761)Online publication date: 15-Nov-2023
    • (2023)An Efficient FPGA-Based Gaussian Random Number Generator Using an Accurate Segmented Box–Muller MethodIEEE Access10.1109/ACCESS.2023.328943211(64745-64757)Online publication date: 2023
    • (2023)Construction and Optimization of Dynamic S-Boxes Based on Gaussian DistributionIEEE Access10.1109/ACCESS.2023.326231311(35818-35829)Online publication date: 2023
    • Show More Cited By

    View Options

    Get Access

    Login options

    Full Access

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media