1 / 16

3. Random Number Generator

3. Random Number Generator. The Roulette and Dice. Mechanical random number generators. What is a Random Number?. Follow a definite distribution, usually uniform distribution Uncorrelated Unpredictable. 1. 0. 3. 7. 4. Pseudo-Random Numbers.

igeorge
Télécharger la présentation

3. Random Number Generator

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 3. Random Number Generator

  2. The Roulette and Dice Mechanical random number generators

  3. What is a Random Number? • Follow a definite distribution, usually uniform distribution • Uncorrelated • Unpredictable 1 0 3 7 4

  4. Pseudo-Random Numbers • Truly random numbers can not be generated on a computer • Pseudo-random numbers follow a well-defined algorithm, thus predictable and repeatable • Have nearly all the properties of true random numbers

  5. Linear Congruential Generator (LCG) • One of the earliest and also fastest algorithm: xn+1 = (axn + c ) mod m where 0 ≤ xn < m, m is the modulus, a is multiplier, c is increment. All of them are integers. Choice of a, c, m must be done with special care.

  6. Choice of Parameters (ax + c) mod m

  7. Short-Coming of LCG When (xn,xn+1) pairs are plotted for all n, a lattice structure is shown. xn+1 xn

  8. Other Modern Generators • Mersenne Twister Extremely long period (219937-1), fast • Inversive Congruential Generator xn= a xn+1+ c mod m where m is a prime number Nonlinear, no lattice structure

  9. Pick an Integer at Random • Suppose we want to select an integer j from 0 to N-1 with equal probability. This can be done with: j = N*x; where 0 x < 1 is uniformly distributed random number. For 2D lattice, we can also do this if we name the lattice site sequentially.

  10. Pick j with Probability Pj • Since Sj Pj=1, we pick out j if x is in the corresponding interval. 0 P0 P1 x 1 P=p[0]; j = 0; x = drand64(); while(x>P) {++j; P+=p[j]};

  11. Pei Lucheng’s Method • Use j = N*x to get an index; pick a final result based on the relative height. This is an O(1) algorithm. 1 4 2 1 2 3 4 5

  12. Non-Uniformly Distributed Random Numbers • Let F(x) be the cumulative distribution function of a random variable x, then x can be generated from x = F-1(ξ) where ξ is uniformly distributed between 0 and 1, and F-1(x) is the inverse function of F(x).

  13. Proof of the Inverse Method • The Mapping from x to ξ is one-to-one. • The probability for ξ between value ξ and dξ is 1·dξ, which is the same as the probability for x between value x and dx. Thus dξ = dF(x) = F’(x)dx = p(x)dx, since F-1 (ξ)=x, or ξ = F(x)

  14. Example 1, Exponential Distribution • P(x) = exp(-x), x ≥ 0, then • So we generate x by x = -log(ξ) where ξ is a uniformly distributed random number.

  15. Example 2, Gaussian distribution • Take 2D Gaussian distribution • Work in polar coordinates:

  16. Box-Muller Method • The formula implies that the variable θ is distributed uniformly between 0 and 2π, ½r2 is exponentially distributed, we have ξ1 and ξ2 are two independent, uniformly distributed random numbers.

More Related