Simulation Basics
Simulation Basics
Simulation Basics
Week 2
Modeling&Simulation-IW-2007
Types of Simulation
Static or dynamics
Stochastic or deterministic
Discrete event or continuous
Modeling&Simulation-IW-2007
Random
out-put
Modeling&Simulation-IW-2007
Random Behavior
Natural behavior
Values vary within a given range and
according to a probability distribution.
Probability distributions are useful for
predicting the values, where these values are
random variables.
Processing time
Modeling&Simulation-IW-2007
Modeling&Simulation-IW-2007
Modeling&Simulation-IW-2007
10
Modeling&Simulation-IW-2007
11
Modeling&Simulation-IW-2007
12
13
c : the increment;
Z0 : the seed or starting
value;
a,
c,
m
>
0
and
integer
Modeling&Simulation-IW-2007
14
15
Example of LCG
Modeling&Simulation-IW-2007
16
17
18
Mixed LCG:
Mixed LCG
Multiplicative LCG
c>0
Multiplicative LCG
c=0
Modeling&Simulation-IW-2007
19
Composite Generators
Modeling&Simulation-IW-2007
20
Independent
Uniformly distributed between zero and one
Modeling&Simulation-IW-2007
21
22
Modeling&Simulation-IW-2007
23
Inverse transformation
Composition
Convolution
Acceptance-Rejection
Methods employing special properties
Modeling&Simulation-IW-2007
24
Continuous distribution
25
Modeling&Simulation-IW-2007
26
27
e x / 1 U
ln e x / ln 1 U
x ln 1 U
x ln 1 U
28
Modeling&Simulation-IW-2007
29
Discrete distribution
Generate U ~ U(0, 1)
Determine the smallest positive integer I such that U
F(xI), and return X = XI.
Modeling&Simulation-IW-2007
30
Modeling&Simulation-IW-2007
31
p x P X x 0.30, x 2
0.60, x 3
Modeling&Simulation-IW-2007
32
33
Modeling&Simulation-IW-2007
34
35
TIME CALCULATION
ArrivalTime (i) = ArrivalTime (i 1) + InterarrivalTime (i)
If ArrivalTime (i) < DepartureTime (i 1) then
BeginServiceTime (i) = DepartureTime (i 1)
else
BeginServiceTime (i) = Arrival (i)
DepartureTime (i) = BeginServiceTime (i ) + ServiceTime (i)
TimeInQueue (i) = BeginServiceTime (i) ArrivalTime (i)
TimeInSystem (i) = DepartureTime (i) ArrivalTime (i)
Modeling&Simulation-IW-2007
36
A Spreadsheet Simulation
Modeling&Simulation-IW-2007
37
38
Modeling&Simulation-IW-2007
39
40
Modeling&Simulation-IW-2007
41
Modeling&Simulation-IW-2007
42
Modeling&Simulation-IW-2007
43
Modeling&Simulation-IW-2007
44
Uniform
1.
Generate U ~ U(0,1)
Return X = a + (b a)U
Modeling&Simulation-IW-2007
45
Uniform
Algorithm:
1.
2.
Generate U ~ U(0, 1)
Return X = a + (b a)U
Modeling&Simulation-IW-2007
46
Exponential
Inverse-transform algorithm:
1.
Generate U ~ U(0, 1)
2.
Return X = ln (1-U)
Modeling&Simulation-IW-2007
47
m-Erlang
2.
Return
X
ln
m
U
i
i 1
Modeling&Simulation-IW-2007
48
Weibull
X~
Algorithm:
1.
2.
Generate U ~ U(0, 1)
Return
X lnU
1/
Modeling&Simulation-IW-2007
49
Normal
2.
50
Lognormal
If Y ~ N(, 2) then eY ~ LN(, 2).
Algorithm:
1.
Generate Y ~ N(, 2).
2.
Return X ~ eY.
Modeling&Simulation-IW-2007
51
Bernoulli
Discrete uniform
Binomial
Geometric
Negative binomial
Poisson
Modeling&Simulation-IW-2007
52
Binomial
Algorithm:
1.
Generate Y1, Y2, ..., Yt as IID Bernoulli(p)
random variates.
2.
Return X = Y1 + Y2 + ...,+ Yt
Modeling&Simulation-IW-2007
53
Bernoulli
Algorithm:
Modeling&Simulation-IW-2007
54
Discrete Uniform
Algorithm:
Modeling&Simulation-IW-2007
55
Geometric
Algorithm:
1.
Generate U ~ U(0, 1)
2.
Return X = [ln U/ln(1 p)]
Modeling&Simulation-IW-2007
56
Negative Binomial
Algorithm:
1.
Generate Y1, Y2, ..., Ys as IID geom(p) random
variates.
2.
Return X = Y1 + Y2 + ...,+ Ys
Modeling&Simulation-IW-2007
57
Poisson
Algorithm:
1.
Let a = e, b = 1, and i = 0.
2.
Generate Ui+1 ~ U(0, 1) and replace b by
bUi+1. If b < a, return X = i. Otherwise, go to
step 3.
3.
Replace i by i + 1 and go back step 2.
Modeling&Simulation-IW-2007
58
Group Assignment#2
1 Queuing, FIFO
50 customers
59