Simulation Simulation: Modeling and Performance Analysis With Discrete-Event Simulation G y
Simulation Simulation: Modeling and Performance Analysis With Discrete-Event Simulation G y
Simulation Simulation: Modeling and Performance Analysis With Discrete-Event Simulation G y
Simulation
Modeling and Performance Analysis with Discrete-Event Simulation g y
Dr. Mesut Gne
Chapter 2
Simulation Examples
Three steps
1. Determine the characteristics of each inputs to the simulation. 2. Construct a simulation table consisting of
p inputs xij, j=1,2,,p one response yi, i=1,2,,n
3. For each repetition i, generate a value for each of the p inputs xijj and calculate the response yi.
Events
- Arrival of a unit - Departure of a unit
Calling population
ti+1
ti
Arrivals
Waiting line Server
Dr. Mesut Gne 5
Departure Event
If queue is not empty begin servicing next unit, otherwise server will be idle.
The simulation run is build by b ild b meshing hi clock, arrival and service times!
1 2 3 4 5 6
Example 1: A Grocery
Analysis of a small grocery store y g y
One checkout counter Customers arrive at random times from {1 2 {1,2,,8} minutes 8} Service times vary from {1,2,,6} minutes C Consider th system f 100 id the t for customers
Interarrival Time 1 2 3 4 5 6 7 8 Service Time 1 2 3 4 5 6
Chapter 2. Simulation Examples 9
Probability 0.125 0.125 0.125 0.125 0.125 0.125 0 125 0.125 0.125 Probability 0.10 0.20 0.30 0.25 0.10 0.05
Cumulative Probability 0.125 0.250 0.375 0.500 0.625 0.750 0 750 0.875 1.000 Cumulative Probability 0.10 0.30 0.60 0.85 0.95 1.00
Dr. Mesut Gne
Problems/Simplifications
Sample size is too small to be able to draw reliable conclusions Initial condition is not considered
Example 1: A Grocery
Customer
1 2 3 4 5 6 100 Total
0 1 2 8 11 18 415
2 317
10
Example 1: A Grocery
Average waiting time Probability that a customer has to wait Porpotion of server idle time Average service time
w=
p( wait ) =
Number of customer who wait 46 = = 0.46 Nunber of customers 100 Idle time f Idl ti of server = 101 = 0.24 Simulation run time 418
p(idle server) =
s=
Service time
Number of customers
s =0
=
E ( ) =
Number of arrivals - 1
a + b 1+ 8 = = 4.5 min 2 2
Average waiting time of those who wait Average time a customer spends in system
wwaited =
t=
Example 1: A Grocery
Interesting results for a g manager, but
longer simulation run would increase the accuracy
Occurrences (N of Trials) No.
18 16 14 12 10 8 6 4 2 2 0 0 0 0,5 1 1,5 2 2,5 3 3,5 4 4,5 >4.5 2 1 0 0 1 7 5 15
Average of 50 Trials
Histogram for the Average Customer Waiting Time
17
Some interpretations
Average waiting time is not high Server has not undue amount of idle time, it is well loaded ;-) Nearly half of the customers have to wait (46%)
12
Example 2: Call Center Problem Consider a Call Center where technical personnel take calls and provide service Two technical support people (2 server) exists
Able more experienced, provides service faster Baker newbie, provides service slower
Rule R l
Able gets call if both people are idle
13
Example 2: Call Center Problem Interarrival distribution of calls for technical support
Time between Arrivals [Minute] Probability Cumulative Probability Random-Digit Assignment
1 2 3 4
01 25 26 65 66 85 86 00
3 4 5 6
01 35 36 60 61 80 81 00
14
2 3 4 5
01 30 31 58 59 83 84 00
Dr. Mesut Gne
Step 2:
For Caller k, generate an interarrival time Ak. Add it to the previous arrival time Tk-1 to get arrival time of Caller k as Tk = Tk-1 + Ak
Step 3:
If Able is idle, Caller k begins service with Able at the current time Tnow Ables service completion time Tfin,A is given by Tfin,A = Tnow + Tsvc,A where Tsvc,A is the service time generated from Ables service time distribution. Caller ks waiting time is Twait = 0 0. it Caller ks time in system, Tsys, is given by Tsys = Tfin,A Tk If Able is busy and Baker is idle, Caller begins with Baker. The remainder is in analogous. If Able and Baker are both busy, then calculate the time at which the first one becomes available, as follows: Tbeg = min(Tfin,A, Tfin,B) Caller k begins service at Tbeg. When service for Caller k begins, set Tnow = Tbeg. g g Compute Tfin,A or Tfin,B as in Step 2. Caller ks time in system is Tsys = Tfin,A Tk or Tsys = Tfin,B - Tk
15
1 2 3 4 5 100 Total 2 4 2 1 1
0 2 6 8 9 219
0 2 4 8 12 221
0 0 0 0 0 219
2 2 2 4 3 4
0 2 6 8 9 219
2 4 8 12 12
0 0 0 0 0 0 211
2 2 2 4 3 4 564
16
400 simulation trials of 100 caller 80 5% of callers h d 80.5% f ll had delay up to 1 minute 19.5% of callers had delay more than 1 minute
Chapter 2. Simulation Examples 17 Dr. Mesut Gne
Example 3: Inventory System Important class of simulation problems: inventory systems Performance measure: Total cost (or total profit) Parameters
N Review period length M Standard inventory level Qi Quantity of order i
18
19
Producing Random Numbers from Random Digits Select randomly a number, e.g.
- One digit: 0.9 - Two digits: 0.19 - Three digits: 0 219 0.219
Summary This chapter introduced simulation concepts by means of examples Example simulations were performed on a table manually
Use a spreadsheet for large experiments (Excel, OpenOffice) Input data is important Random variables can b used R d i bl be d Output analysis important and difficult The used tables were of ad hoc, a more methodic approach is needed
21