Article Type: Overview Generating Random Variables and Processes

Many quantitative problems in science, engineering, and economics are nowadays solved via statistical sampling on a computer. Such Monte Carlo methods can be used in three different ways: (1) to generate random objects and processes in order to observe their behavior, (2) to estimate numerical quantities by repeated sampling, and (3) to solve complicated optimization problems through randomized algorithms. The idea of using computers to carry out statistical sampling dates back to the very beginning of electronic computing. Stanislav Ulam and John Von Neumann pioneered this approach with the aim to study the behavior of neutron chain reactions. Nicholas Metropolis suggested the name Monte Carlo for this methodology, in reference to Ulam’s fondness of games of chance [18]. This article gives an overview of modern Monte Carlo methods. Starting with random number and process generation, we show how Monte Carlo can be useful for both estimation and optimization purposes. We discuss a range of established Monte Carlo methods as well as some of the latest adaptive techniques, such as the cross-entropy method. Generating Random Variables and Processes At the heart of any Monte Carlo method is a uniform random number generator: a procedure that produces an infinite stream U1, U2, . . . of random1 numbers on the interval (0,1). 1Since such numbers are usually produced via deterministic algorithms, they are not truly random. However, for most applications all that is required is that such pseudo-random numbers are statistically indistinguishable from genuine random numbers, which are uniformly distributed on the interval (0,1) and are independent of each other.

[1]  Hoon Kim,et al.  Monte Carlo Statistical Methods , 2000, Technometrics.

[2]  D. C. Rapaport,et al.  Book review:Monte Carlo methods. Volume I: Basics , 1987 .

[3]  Reuven Y. Rubinstein,et al.  Simulation and the Monte Carlo method , 1981, Wiley series in probability and mathematical statistics.

[4]  Donald Geman,et al.  Stochastic relaxation, Gibbs distributions, and the Bayesian restoration of images , 1984 .

[5]  Dirk P. Kroese,et al.  The Cross-Entropy Method for Continuous Multi-Extremal Optimization , 2006 .

[6]  Ronald L. Wasserstein,et al.  Monte Carlo: Concepts, Algorithms, and Applications , 1997 .

[7]  H. Kushner,et al.  Stochastic Approximation and Recursive Algorithms and Applications , 2003 .

[8]  Dirk P. Kroese,et al.  Chapter 3 – The Cross-Entropy Method for Optimization , 2013 .

[9]  Peter W. Glynn,et al.  Stochastic Simulation: Algorithms and Analysis , 2007 .

[10]  Paul Glasserman,et al.  Monte Carlo Methods in Financial Engineering , 2003 .

[11]  N. Metropolis,et al.  Equation of State Calculations by Fast Computing Machines , 1953, Resonance.

[12]  Shie Mannor,et al.  A Tutorial on the Cross-Entropy Method , 2005, Ann. Oper. Res..

[13]  Dirk P. Kroese,et al.  Handbook of Monte Carlo Methods , 2011 .

[14]  L. Devroye Non-Uniform Random Variate Generation , 1986 .

[15]  Takuji Nishimura,et al.  Mersenne twister: a 623-dimensionally equidistributed uniform pseudo-random number generator , 1998, TOMC.

[16]  Robert L. Smith,et al.  An analytically derived cooling schedule for simulated annealing , 2007, J. Glob. Optim..

[17]  N. Metropolis THE BEGINNING of the MONTE CARLO METHOD , 2022 .

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

[19]  Pierre L'Ecuyer,et al.  Good Parameters and Implementations for Combined Multiple Recursive Random Number Generators , 1999, Oper. Res..

[20]  Lih-Yuan Deng,et al.  The Cross-Entropy Method: A Unified Approach to Combinatorial Optimization, Monte-Carlo Simulation, and Machine Learning , 2006, Technometrics.

[21]  Ted G. Lewis,et al.  Generalized Feedback Shift Register Pseudorandom Number Algorithm , 1973, JACM.

[22]  P. A. W. Lewis,et al.  A Pseudo-Random Number Generator for the System/360 , 1969, IBM Syst. J..