Lecture - 3: Application of Simulation in Service Operations Management
Lecture - 3: Application of Simulation in Service Operations Management
Lecture - 3: Application of Simulation in Service Operations Management
Learning Objective
An exact analytic expression for the behavior of the system under investigation is
not available
The analytic solution is too time consuming or expensive.
Types of model
Models can be classified as being mathematical model or physical as categorized in
Figure 11.8.
Models
Simulation models
It represents systems as they change over time. Example: The simulation of a bank from
9 A.M. to 4 P.M for the time of arrival of customers.
A stochastic simulation model has one or more random variables as inputs. Random
inputs lead to random outputs. Since the outputs are random they can be considered only
as estimates of the true characteristics of the model. Example: the simulation of a bank
would usually involve random interval times and random service times. Thus in a
stochastic simulation, the output measures like the average number of people waiting,
the average waiting time of a customer, must be treated as statistical estimates of the true
characteristics of the system.
It is the modeling of systems in which the state variables change only at a discrete set of
points in time. The simulation models are analyzed by numerical methods rather than by
analytical methods. Analytical methods employ the deductive reasoning of mathematics
to solve the model. For example, differential calculus can be used to compute the
minimum cost policy for some inventory models. Numerical methods employ
computational procedure to solve mathematical models.
The process of system simulation is presented in Figure 2.
Problem formulation
Model
translation
No
Verified
Yes
No No
Validated
Yes
Experimental design
Yes Yes
More runs?
No
Documentation and
reporting
Implementation
A Monte Carlo method is a stochastic technique that involves use of random numbers and
probability statistics to solve the problems. The term Monte Carlo Method was coined by
S. Ulam and Nicholas Metropolis in reference to games of chance, a popular attraction in
Monte Carlo, Monaco (Hoffman, 1998; Metropolis and Ulam, 1949). This method can be
used in many areas from economics, nuclear physics to regulating the flow of traffic. To
call something a "Monte Carlo" experiment, all you need to do is use random numbers to
examine some problem.
The Monte Carlo method is just one of many methods for analyzing uncertainty
propagation, where the goal is to determine how random variation, lack of knowledge, or
error affects the sensitivity, performance, or reliability of the system that is being
modeled.
Monte Carlo simulation is a method for iteratively evaluating a deterministic model using
sets of random numbers as inputs. This method is often used when the model is complex,
nonlinear, or involves more than just a couple of uncertain parameters. A simulation can
typically involve over 10,000 evaluations of the model, a task which in the past was only
practical using super computers.
A queuing system is described by its population, the nature of arrivals, the service
mechanism, the system capacity, and the queuing discipline as discussed in Module 9.
Many real world queuing applications are too complex to be modeled analytically and
hence computer simulation helps to analyze the model. A simple single channel queuing
system is given in the following Figure 11.10.
Server
Calling population
Waiting line
In the single channel queue the calling population is infinite; that is, if a unit leaves the
calling population and joins the waiting line or enters service, there is no change in the
arrival rate of other units that could need service. Arrivals for service occur at a time in a
random fashion; once they join the waiting line, they eventually served. In addition,
service times are of some random length according to a probability distribution which
does not change over time. The system capacity has no limit, meaning that any number of
units can wait in line. Finally units are served in the order of their arrival by a server or
channel (often called FIFO: first in first out). Arrivals and number of customer served are
defined by the distribution of time between arrivals and the distribution of service times
respectively. For any simple single or multi channel queue, the overall effective arrival
rater must be less than the total service rate, or the waiting line will grow without bound.
When queue grow without bound, they are termed “Explosive” or “unstable”.
The state of the system is the number of units in the system and the status of the server,
busy or idle. An event is a set of circumstances that causes an instantaneous change in the
state of the system. In a single channel queuing system, there are only two possible
events that can affect the state of the system. They are the entry of a unit into the system
(the arrival event) and the completion of service on a unit (the departure event). The
queuing system includes the server, the unit being served (if one is being serviced), and
the units in the queue (if any are waiting). The simulation clock is used to track simulated
time.
If a unit has just completed service, the simulation proceeds in the manner shown in the
following Figure 11.11.
Departure event
Begin servicing
the unit
Arrival event
No Yes
Server
busy?
If the server is busy, the units enter the queue. If the server is idle and the queue is empty,
the unit begins service. It is not possible for the server to be idle while the queue is non-
empty.
After the completion of a service, the server either will become idle or will remain busy
with the next unit. The relationships of these two out comes to the status of the queue is
shown in Table 11.9.
If the queue is not empty, another unit will enter the server and it will be busy. If the
queue is empty, the server will be idle after a service is completed. These two
possibilities are shaded portion of Table 11.9. It is impossible for the server to be idle
after a service is completed when the queue is not empty.
Simulation clock times for arrivals and departures are computed in a simulation table
customized for each problem. In simulation, events usually occur at random times, the
randomness imitating uncertainty in real life. For example, it is not known with certainty
when the next customer will arrive at a grocery checkout counter, or how long the bank
teller will take to complete a transaction. In these cases, a statistical model of the data is
developed either from data collected and analyzed or from subjective estimates and
assumptions.
The randomness needed to imitate real life is made possible through the use of “random
numbers”. Random numbers are distributed uniformly and independently on the interval
(0, 1). Random digits are uniformly distributed on the set {0,1,…..,9}. Random digits can
be used to form random numbers by selecting the proper number of digits for each
random number and placing a decimal point to the left of the value selected.
When numbers are generated by using a procedure, they are often referred to as pseudo
random numbers. Because the procedure is fully known, it is always possible to predict
the sequence of numbers that will be generated prior to the simulation.
In a single channel queuing simulation, inter arrival times and service times are generated
from the distributions of these random variables.
Illustration
The following table 11.10 contains a set of five inter arrival times that were generated by
rolling a die five times and recording the up face. These five inter arrival times are used
to compute the arrival times of six customers at the queuing system.
The first customer is assumed to arrive at clock time 0. This starts the clock in operation.
The second arrives two units later at clock time 2. The third customer arrives four time
units later, at clock time 6; and so on.
Table 11.10: Inter arrival and clock times
Inter arrival Arrival time on
Customer
time clock
1 - 0
2 2 2
3 4 6
4 1 7
5 2 9
6 6 15
The second time of interest is the service time. The following table 11.11 contains service
times generated at random from a distribution of service times. The only possible time
units are one, two, three and four. Assuming that all four values are equally likely to
occur, these values could have been generated by placing the numbers one through four
on chips and drawing the chips from a hat with replacement, being sure to record the
numbers selected. Now the inter arrival times and service times must be meshed to
simulate the single channel queuing system as shown in Table 11.12.
As in table 11.12, the first customer arrives at clock time 0 and immediately begins
service which requires two minutes. Service is completed at clock time 2. The second
customer arrives at clock time 2 and is finished at clock time 3. Note that the fourth
customer arrived at clock time 7, but service could not begin until clock time 9.this
occurred because customer 3 did not finish service until clock time 9.
This simulation table is designed specifically for a single channel queue that serves
customers on a first in first out (FIFO) basis. It keeps track of the clock at which time unit
an event occurs. The occurrence of the two types of events in chronological order is
shown in table 11.13 and figure 11.13.
1 2
3 4 5 6
4 8 12 16 20
Clock time
The service times vary from 1 to 6 minutes, with the probability shown in table 11.15.
The problem is to analyze the system by simulating the arrival and service of 100
customers.
A set of uniformly distributed random numbers is needed to generate the arrivals at the
checkout counter. Such random numbers have the following properties.
The set of random numbers is uniformly distributed between 0 and 1.
Successive random numbers are independent.
The time between arrivals is presented in table 11.16. The service times are presented in
table 11.17.
Table 11.16: Time between arrival Determinations
1 - - 11 413 4
2 064 1 12 462 4
3 112 1 13 843 7
4 678 6 14 738 6
5 289 3 15 359 3
6 871 7 16 888 8
7 583 5 17 902 8
8 139 2 18 212 2
9 423 4 .
Service Service
Random Random
Customer time Customer Time
digits digits
(minutes) (Minutes)
1 84 4 11 94 5
2 18 2 12 32 3
3 87 5 13 79 4
4 81 4 14 92 5
5 06 1 15 46 3
6 91 5 16 21 2
7 79 4 17 73 4
8 09 1 18 55 3
9 64 4 . . .
10 38 1 20 26 2
Time
Inter Waiting
Service Time Time consumer
arrival Arrival time in Idle time
Customer time service service spends in
Time time queue of server
(Minutes) begins ends system
(minutes) (Minutes)
(Minutes)
1 0 4 0 0 4 4
2 1 1 2 4 3 6 5 0
3 1 2 5 6 4 11 9 0
4 6 8 4 11 13 15 7 0
5 3 11 1 15 4 16 5 0
6 7 18 5 18 0 23 5 2
7 5 23 4 23 0 27 4 0
8 2 25 1 27 2 28 3 0
9 4 29 4 29 0 33 4 1
10 1 30 3 33 3 36 6 0
Total
Similarly, expected service time, average time between arrivals, average waiting
time of those who wait, average time consumer spends in the system, average time
customer spends in the system can also be calculated.
Questions
1. Consider the following continuously operating maintenance job shop. Inter arrival
times of jobs are distributed as follows:
Time between
Probability
arrivals (Hours)
0 0.23
1 0.37
2 0.28
3 0.12
Processing times for jobs are normally distributed with mean 50 minutes and
standard deviation 8 minutes. Construct a simulation table and perform a
simulation for 10 new jobs. Assume that, when simulation begins, there is one job
being processed (scheduled to be completed in 25 minutes) and there is one job
with a 50 minutes processing time in the queue.
(i) What was the average time in the queue for the 10 new jobs?
(ii) What was the average processing time of the 10 new jobs?
(iii) What was the maximum time in the system for the 10 new jobs?
2. Small town taxi operates one vehicle during the 9.AM to 5 PM period. Currently,
consideration is being given to the addition of a second vehicle to the fleet. The
demand for the taxis follows the distribution shown:
Time between
15 20 25 30 35
calls (minutes)
Simulate 5 individual days of operation of the current system and of the system
with additional taxi cab. Compare the two systems with respect to the waiting
times of the customers and any other measures that might shed light on the
situation