Download Pseudo-Random Number Generation

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Simulation Modeling and
Analysis
Pseudo-Random Numbers
1
Outline
• Properties of Random Numbers
• Generating Random Numbers
• Testing Random Numbers
2
Properties of Random Numbers
• Key Properties
– Uniformity
– Independence
• Density function (continuous!)
f(x) = {1 for 0 < x < 1, 0 otherwise
• Moments
E(R) = 1/2 V(R) = 1/12
3
Generating Random Numbers
• Random Numbers vs Pseudo-random
Numbers
• Requirements of a RNG routine
–
–
–
–
–
Speed
Portable
Long Cycle
Replicable RN
Uniform and Independent RN’s
4
Random Number Generation
• Linear Congruential Method
X i+1 = (a Xi + c) mod m
Ri = Xi/m
• Note: Only values from the set
I = {0,1/m,2/m,…,(m-1)/m}
are obtained
5
Random Number Generation -contd
• Longest Possible Period (P)
– If m = 2b and |c| > 0 , P = m
– If m = 2b and c = 0 , P = m/4
– If m = prime and c = 0 , P = m-1
• Example:
X i+1 = (75 Xi ) mod (231-1)
6
Random Number Generation -contd
• Combined Congruential Generators. Two
distinct congruential generators can be
combined to obtain PRN’s with longer
periods.
X i+1 = ((-1)j-1 Xi,j ) mod (m1 - 1)
Ri = Xi/m1, Xi > 0 ; Ri = (m1-1)/m1, Xi > 0
7
Testing Random Numbers
• Null Hypotheses
H0 : Ri ~ U[0,1] ; H0 : Ri ~ independent
• Tests
–
–
–
–
–
Frequency test
Runs test
Autocorrelation test
Gap test
Poker test
8
Kolmogorov-Smirnov Frequency Test
1.- Arrange data in increasing value
2.- Compute D+, D- and D
3.- Find critical Dc (Handout) for given a
4.- Accept or reject the null hypothesis.
5.- Example: Stat::Fit
9
Chi-Square Frequency Test
• The Chi static compares observed
frequencies of occurrence of PRN’s in
selected subdomains against expected
frequencies derived from the U distribution
function. See Stat::Fit
X02 = n (Oi - Ei)2/Ei
10
Runs Testing
• Run: sequence of similar events
• Runs up and runs down (independence)
– Maximum number of runs (N numbers) = N-1
– mean = (2N-1)/3; variance = (16N-29)/90
– Test hypothesis against normal distribution.
11
Runs Testing -contd
• Runs above and below the mean
– Maximum number of runs (N numbers, n1
above and n2 below the mean) = n1+n2
– mean = 2 n1 n2/N + 1/2
– variance = 2 n1 n2 (2 n1 n2 - N)/N2 (N-1)
– Test hypothesis against normal distribution.
12
Runs Testing -contd
• Runs length
– Test hypothesis against Chi square distribution
13
Autocorrelation Testing
• Seek the autocorrelation between every m
numbers (I.e. dependence)
• Null Hypothesis H0 : im = 0
• Note: If values are uncorrelated, im has
normal distribution. So, test hypothesis
against normal distribution.
14
Gap Testing
• Gap: Interval of recurrence of same digit.
• Monitor Frequency of gaps and test
1.- Specify the cdf F(x) = 1-0.9 x+1
2.- Arrange the observed gaps into S(x)
3.- Find D and Dc
4.- Accept or reject the null hypothesis.
15
Poker Test
• Frequency of repetition of certain digits in a
series
• Null hypothesis is tested againts the Chisquare distribution.
16
Related documents