29
ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation Gizem ALAGOZ 1

ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

  • Upload
    tamarr

  • View
    37

  • Download
    1

Embed Size (px)

DESCRIPTION

ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation. Gizem ALAGOZ. Introduction. One of the most useful tools in the arsenal of an - PowerPoint PPT Presentation

Citation preview

Page 1: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

1

ATILIM UNIVERSITYIE 504-Simulation

Paper 3AIntroduction to Simulation

Gizem ALAGOZ

Page 2: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

IntroductionOne of the most useful tools in the arsenal of anOperations research / industrial engineering / management science analyst is that of computer simulation. A simulation is simply an imitation of the operation of a real-world system for purposes of evaluating that system.

2

Page 3: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

3

Introduction (Cont’d) Simulations are often used to analyze

systems that are too complicated to attack via analytic methods such as calculus, standard probability and statistics, or queueing theory.

The simulations that are going to be interested are:

DynamicDiscreteStochastic

Page 4: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

4

MOTIVATIONAL EXAMPLESExample 1: Coin Flipping is a

trivial sequence of Bernoulli trials with success probability p=1/2. The simulation can somehow produce a sequence of independent uniform (0,1) random numbers. Suppose that the following uniforms are observed: 0.32-0.41-0.06-0.93-0.82-0.49-0.21-0.77-0.71-0.08. This sequence of uniforms corresponds to the outcomes H H H T T H H T T H.

Page 5: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

5

MOTIVATIONAL EXAMPLES (Cont’d)Example 2: Estimate π. Consider a

unit square with an inscribed circle, both centered at (1/2,1/2). If one were to throw darts randomly at the square, the probability that a particular dart will land in the circle is p/4, the ratio of the circle’s area to that of the square.

Page 6: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

6

MOTIVATIONAL EXAMPLES (Cont’d)Let Xi = 1 if pair i

satisfies inequality (1), i.e., if the ith dart falls in the circle; otherwise, let Xi = 0.

For instance, conducted n = 1000 trials and observed Y =753 darts in the circle, our estimate would be 0,753.

Page 7: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

7

MOTIVATIONAL EXAMPLES (Cont’d)

Example 3: A Single-Server Queue. The goal is to simulate the behavior of a single-server queueing system. Suppose that six customers arrive at a bank at the following times, 3-4-6-10-15-20. The service times corresponding to the arriving customers are 7-6-4-6-1-2 in a FCFS manner.

Page 8: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

8

MOTIVATIONAL EXAMPLES (Cont’d)

Customer

i

Arrival Time

Ai

Begin Service

Bi

Service Time

Si

Depart time Di

Wait Wi

1 3 3 7 10 02 4 10 6 16 63 6 16 4 20 104 10 20 6 26 105 15 26 1 27 116 20 27 2 29 7

Page 9: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

9

MOTIVATIONAL EXAMPLES (Cont’d)Example 4: (s,S) Inventory Policy.

Customer orders for a particular good arrive at a store every day. During a certain one-week period, the quantities ordered are 10-6-11-3-20-6-8. The store starts the week off with an initial stock of 20. If the stock falls to 5 or below, the owner orders enough from a centra warehouse to replenish the stock to 20.

Page 10: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

10

MOTIVATIONAL EXAMPLES (Cont’d)

Day

Initial Stock

Customer Order

End Stock

Reorder?

Lost Orders

1 20 10 10 no 02 10 6 4 yes 03 20 11 9 no 04 9 3 6 no 05 6 20 0 yes 146 20 6 14 no 07 14 8 6 no 0

Page 11: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

11

Generating Random VariablesGenerating Uniform (0,1) Random

VariablesThere are a variety of methods for

generating uniform (0,1) random variables, among them:

Sample from certain physical devices such as an atomic clock

Look up pre-determined random numbers from a table

Generate pseudo-random numbers (PRN’s) from a deterministic algorithm

Page 12: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

12

Generating Random Variables (Cont’d) The most popular method for obtaining

PRN’s is the linear congruential generator (LCG).

Start with a non-negative “seed” integer, X0, use the seed to generate a sequence of non-negative integers, X1,X2, . . ., and then convert the Xi’s to PRN’s, U1,U2, . . .. The algorithm is simple.

Page 13: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

13

Generating Random Variables (Cont’d)

1. Specify a non-negative seed integer, X0.

2. For i=1,2, . . ., let Xi =(aXi−1+c)mod(m), where a, c, and m are appropriately chosen integer constants, and “mod” denotes the modulus function, e.g., 17mod(5) = 2 and −1mod(5) = 4.

3. For i = 1,2, . . ., let Ui = Xi/m.

Page 14: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

14

Generating Random Variables (Cont’d)

Example 5: Consider the “toy” generator Xi =(5Xi−1+1)mod(8), with seed X0 = 0. This

produces the integer sequence X1 = 1, X2 = 6, X3 = 7, X4 = 4, X5 = 5, X6 =2, X7 = 3, X8 = 0,

whereupon things start repeating, or “cycling.” The PRN’s corresponding to the sequence starting with seed X0 =0 are thereforeU1 =1/8,U2 =6/8,

U3 =7/8, U4 = 4/8, U5 = 5/8, U6 = 2/8, U7 = 3/8, U8 = 0. Since any seed eventually produces all of the integers 0,1, . . . ,7, said that this is a full-cycle (or full-period) generator.

Page 15: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

15

Generating Random Variables (Cont’d)

Example 6: Not all generators are full-period. Consider another “toy” generator Xi = (3Xi−1+1)mod(7), with seed X0 = 0. This produces the integer sequence X1 = 1, X2 = 4, X3 = 6, X4 = 5, X5 = 2, X6 = 0, whereupon cycling ensues. Further, notice that for this generator, a seed of X0 = 3 produces the sequence X1 = 3 = X2 = X3 = · · · , not very random looking!

Page 16: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

16

Generating Random Variables (Cont’d)Generating Non-uniform Random

Variables

The goal is to generate random variables from distributions other than the uniform. The methods will always start with a PRN, and then apply an appropriate transformation to the PRN that gives the desired non-uniform random variable. Such non-uniform random variables are important in simulation for a number of reasons.

Page 17: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

17

Generating Random Variables (Cont’d)

Inverse Transform Method: The most basic technique for generating random variables from a uniform PRN relies on the remarkable Inverse Transform Theorem.

Theorem 1: If X is a random variable with continuous cumulative distribution function (CDF) F(x), then the random variable Y = F(X) has the uniform (0,1) distribution.

Page 18: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

18

Generating Random Variables (Cont’d)

Example 7:Suppose that the discrete random variable X has probability mass function.

0.3 if x = −1 p(x)= 0.6 if x = 2.3 0.1 if x = 7 0 otherwise

Page 19: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

19

To generate variates from this distribution, the table above where F(x) is the associated CDF and U denotes the set of uniform (0,1)’s corresponding to each x-value. To generate a realization of X, first generate a PRN U, and then read the corresponding x-value from the table. For instance, if U = 0.43, then X = 2.3.

x p(x) F(x) U-1 0.3 0.3 [0, 0.3)

2.3 0.6 0.9 [0.3, 0.9)7 0.1 1.0 [0.9, 1.0)

Generating Random Variables (Cont’d)

Page 20: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

20

Generating Random Variables (Cont’d)

Box–Muller method. The Box–Muller (1958) method is an exact technique for generating independent and identically distributed (IID) standard normal (0,1) random variables.

Theorem 2: Suppose that U1 and U2 are IID uniform (0,1) random variables. Then

Z1 = [√ −2 n(ℓ U1 ) ]cos(2pU2)and Z2 = [√ −2 n(ℓ U1) ]sin(2pU2)

are IID standard normal random variates. (Note that the sine and cosine evaluations must be carried out in radians.)

Page 21: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

21

Generating Random Variables (Cont’d)

Example 8: Suppose that U1 =0.35 and U2=0.65 are two IID PRN’s. Using Box Muller method to generate two normal (0,1)’s, we obtain

Z1 = [√−2 n(0.35) ]cos(2p(0.65)) = −0.852 ℓand Z2 = [√−2 n(0.35) ]sin(2p(0.65)) = −1.172.ℓ

Page 22: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

22

Generating Random Variables (Cont’d)

Central Limit Theorem(CLT); is to generate “quick-and-dirty” random variables that are approximately normal. Suppose that U1,U2, . . . ,Un are IID PRN’s. Then for large enough n, the CLT says that

=

≈ normal (0,1).

Page 23: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

23

Generating Random Variables (Cont’d)

Example 14: Suppose we have the following PRN’s 0.28 0.87 0.44 0.49 0.10 0.76 0.65 0.98 0.24 0.29 0.77 0.90

Then

is a realization from a distribution that is

approximately standard normal.

Page 24: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

24

Input Analysis A fundamental problem in

simulation modeling is that of determining the proper input random variables to drive the simulation. For example, how are the interarrivals of customers distributed? What random variables are appropriate to model service times? Machine breakdown times? Such questions underline the critical nature of correct input analysis.

Page 25: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

25

Input Analysis (Cont’d) An experimenter can never specify the

“perfect” model, there are steps that one can take to try to do the best job possible.

Assess what input variables will be neededTry to collect as much good data as possible,

and assess their value.Make reasonable assumptions about the

underlying observations that are obtained.Estimate the relevant unknown parameters.Conduct a formal goodness-of-fit testTry to determine whether more-sophisticated

models

Page 26: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

26

Output Analysis Simulation output analysis is one of the

most important aspects of any proper and complete simulation study. Since the input processes driving a simulation are usually random variables (e.g., interarrival times, service times, and breakdown times), regard the output from the simulation as random.

Page 27: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

27

Output Analysis (Cont’d) The problem is that simulations

almost never produce convenient raw output that is IID normal data. For example consecutive customer waiting times from a queueing system. . .

Are not independentAre not identically distributed.Are not normally distributed.

Page 28: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

28

Output Analysis (Cont’d) There are two different types of

simulation with respect to output analysis:Terminating/Transient Simulations are

applying on a closed system which has a specific time, such as banks.

Non terminating/Steady-State Simulations are applying on a long run period, such as continuously running production line.

Page 29: ATILIM UNIVERSITY IE 504-Simulation Paper 3A Introduction to Simulation

29

Comparison of Systems There are many techniques

available for comparing systems,among them:

Classical statistical CI’s, Common random numbers, Antithetic variates, Ranking and selection procedures.