One Factor Experiments and Two-Factor Full Factorial Designs

Random-Variate Generation
Andy Wang
CIS 5930-03
Computer Systems
Performance Analysis
Random-Variate Generation
• Methods to generate nonuniform
variables
– Each method is applicable to a subset of
the distribution
– For a distribution, one method may be
more efficient than the others
2
Inverse Transformation
• Observation
• u = CDF F(x) is uniformly distributed
between 0 and 1
• x can be generated via F-1(u)
• A powerful technique
• If F(x) and F-1(x)
can be computed
CDF
1
0.8
0.6
F(x)
0.4
0.2
0
0
0.5
1
x
1.5
2
3
Empirical Inverse
Transformation
• Network packet
sizes, f(x) =
CDF F(x) =
0.0, 0 < x < 64
0.7, 64 < x < 128
0.8, 128 < x < 512
1.0, 512 < x
64 bytes, 70%
128 bytes,10%
512 bytes, 20%
CDF
PMF
1
1
0.8
0.8
0.6
0.6
F(x)
f(x)
0.4
0.4
0.2
0.2
0
0
0
64
128 192 256 320 384 448 512 576
packet size (bytes)
0
64 128 192 256 320 384 448 512 576
packet size (bytes)
4
Empirical Inverse
Transformation
• F-1(u) =
64, 0 < u < 0.7
128, 0.7 < u < 0.8
512, 0.8 < u < 1
5
Inverse Transformation
Example
• Exponential
distribution
• Inverse
transformation
• f(x) = e-x
• CDF F(x) = 1 - e-x =
u
• x = - ln(1-u)/ 
• Given that u = U(0,1)
• x = - ln(u)/ 
PDF
CDF
1.2
1
1
0.8
0.8
0.6
f(x) 0.6
F(x)
0.4
0.4
0.2
0.2
0
0
0
0.5
1
x
1.5
2
0
0.5
1
x
1.5
2
6
Rejection
• Useful if a PDF g(x) exists so that cg(x)
envelopes PDF f(x), where c is a
constant
• Steps
1. Generate x with PDF g(x)
2. Generate y uniform on [0, cg(x)]
3. If y < f(x), return x, else go to step 1
7
Rejection Example
• f(x) = 20x(1 - x)3
0<x<1
• Let g(x) = U(0,1)
c = 2.058
2.5
2
1.5
reject
• Steps
1. Generate x on [0, 1]
according to U(0,1)
2. Generate y uniform
on [0, 2.058]
3. If y < 20x(1 – x)3
return x
else go to step 1
f(x)
1
2.058*U(0,1)
accept
0.5
0
0
0.5
x
1
8
Composition
(Decomposition)
• Can be used
– If CDF F(x) is a weighted sum of CDFs
– Or, if PDF f(x) is a weighted sum of PDFs
n
n
i 1
i 1
F x    pi Fi x , f x    pi f i x 
• Steps
– Generate u1 ~ U(0,1), u2 ~ U(0,1)
– Use u1 to choose fi(x) or Fi(x), return F-1(u2)
9
Composition Example
• Laplace distribution
1  x /a
f ( x) 
e
2a
• a = 2, x > 0 with
50% probability
• Steps
1. Generate
u1 ~ U(0,1)
u2 ~ U(0,1)
2. If u1 < 0.5
return x = -aln(u2)
else
return x = aln(u2)
0.3
0.25
0.2
0.15
f(x)
0.1
0.05
0
-3
-2
-1
0
x
1
2
3
10
Convolution
• Random variable x = y1 + y2 + … yn
• x can be generated by summing n
random variate yis
• Example
y1 = outcome of die 1 (uniform distribution)
y2 = outcome of die 2 (uniform distribution)
x = sum of outcomes of two dice
= y1 + y2 (triangular distribution)
11
Choosing Random-Variate
Generation Techniques
• Use inversion if CDF is invertible
• Use composition if CDF/PDF sum of
other CDFs/PDFs
• Use convolution if the variate a sum of
other variates
• Use rejection if a bounding PDF
function exists
• Use empirical inversion as needed
12
White Slide
13