Lecture - 3: Application of Simulation in Service Operations Management

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 20

Lecture – 3

APPLICATION OF SIMULATION IN SERVICE


OPERATIONS MANAGEMENT

Learning Objective

 To discuss application of simulation in services


1. SIMULATION
Simulation is a powerful technique for solving a wide variety of problems. Simulation is
an imitation of the operation of a real world processor system over time. Simulation
involves the generation of an artificial history of a system and the observation of that
artificial history to draw inferences concerning of the operating characteristics of the real
system. Simulation is done either manually or using computers. Simulation is basically an
experimental technique. It is a fast and relatively inexpensive method of doing an
experiment on the computer.

The basic idea behind simulation include


 Model the given system by means of some equations.
 Determine its time dependent behavior.
The simplicity of approach when combined with the computational power of the high
speed digital computer makes simulation a power full tool.

Simulation is mostly used when

 An exact analytic expression for the behavior of the system under investigation is
not available
 The analytic solution is too time consuming or expensive.

Simulation modeling can be used as


 An analysis tool: To predict the effect of changes to the effect of changes to
existing system.
 A design tool: to predict the performance of new systems under varying set of
circumstances.

Examples of simulation applications in services


 Simulating aircraft delay absorption
 Runway schedule determination by simulation optimization
 Modeling ship arrivals in ports
 Modeling and simulation of telephonic call centre
 Baggage screening at airports
 Telecommunication billing system
 Modeling front office and patient care in ambulatory health care practices
 Project management
 Scheduling of police patrols
 Hazardous waste handling

2. DEFINITION OF SYSTEM AND STATE OF A SYSTEM


System
A system is defined as a group of objects that are joined together in some regular
interaction or interdependence toward the accomplishment of some purpose. System can
be categorized as discrete or continuous.
State of a system
The state of a system is defined to be a collection of variables necessary to describe the
system at any time relative to the objective of the study. In case of banking the possible
state variables are a number of busy tellers, the number of customers waiting in line or
being served, and the arrival time of the next customer.
Discrete system
A discrete system is one in which the state variables change only at a discrete set of
points in time. The number of customer waiting in line in a bank is an example of discrete
system.
Continuous systems
A continuous system is one in which the state variables change continuously over time.
An example is arrival time of the next customer in a bank.
Model of a system
A model of a system is defined as a representation of a system for the purpose of
studying the system.

Types of model
Models can be classified as being mathematical model or physical as categorized in
Figure 11.8.

Models

Mathematical Physical model


model

Simulation models

Static or Deterministic Discrete or


dynamic or Stochastic continuous

Figure 11.8: Classification of models

Static simulation models


It represents a system at a particular point in time. It is otherwise called as Monte Carlo
simulation.

Dynamic 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.

Deterministic simulation models

Simulation models that contain no random variables are classified as deterministic.


Deterministic models have a known set of inputs which will result in unique set of
outputs. Example: deterministic arrivals would occur at a dentist’s office if all patients
arrived at the scheduled appointment time.

Stochastic simulation models

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.

Discrete event system simulation

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

Setting of objectives and


overall project plan

Model Data collection


conceptualization

Model
translation

No
Verified

Yes

No No
Validated

Yes

Experimental design

Production runs and


analysis

Yes Yes
More runs?

No

Documentation and
reporting

Implementation

Figure 2: Steps in system simulation process


MONTE CARLO METHOD

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.

3. SIMULATION OF QUEUING SYSTEMS

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

Figure 11.10: Queuing system

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

No Another Yes Remove the waiting unit


Begin server idle time unit from the queue
waiting?

Begin servicing
the unit

Figure 11.1: Flow diagram presenting a service just completed


The arrival event occurs when a unit enters the system. The flow diagram for the arrival
event is shown in Figure 11.12.

Arrival event

No Yes
Server
busy?

Unit enters Unit enters queue for


service service

Figure 11.12: Unit entering system flow diagram


The unit will find the server either idle or busy; therefore, either the unit begins to be
served immediately, or it enters the queue for the server. The unit follows the course of
action shown in Table 11.8.
Table 11.8: Potential unit actions upon arrival
Queue status
Non empty Empty
Server Busy Enter queue Enter queue
status Idle Impossible Enter service

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.

Table 11.9: server outcomes after the completion of service


Queue status
Non empty Empty
Server busy impossible
outcomes idle Impossible

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.

Table 11.11: Service times


Customer Service time
1 2
2 1
3 3
4 2
5 1
6 4
Table 11.12: Simulation table emphasizing clock times
A B C D E
Customer Arrival time Time service Service time Service time
Number (Clock) Begins (duration) ends (clock)
(Clock)
1 0 0 2 2
2 2 2 1 3
3 6 6 3 9
4 7 9 2 11
5 9 11 1 12
6 15 15 4 19

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.

Table 11.13: Chronological ordering of events


Customer
Event type Clock time
number
Arrival 1 0
Departure 1 2
Arrival 2 2
Departure 2 3
Arrival 3 6
Arrival 4 7
Departure 3 9
Arrival 5 9
Departure 4 11
departure 5 12
Arrival 6 15
Departure 6 19
Number of customers in the system

1 2
3 4 5 6

4 8 12 16 20
Clock time

Figure 11.13: Number of customers in the system


Example: Single channel Queue
A small grocery store has only one checkout counter. Customers arrives at this checkout
counter at random times that are from 1 to 8 minutes apart. Each possible value of inter
arrival time has the same probability of occurrence as shown in table 11.14.
Table 11.14: Distribution of time between arrivals at grocery stores
Time between Cumulative Random digit
probability
arrivals (minutes) probability assignments
1 0.125 0.125 001-125

2 0.125 0.250 126-250

3 0.125 0.375 251-375

4 0.125 0.500 376-500

5 0.125 0.635 501-625

6 0.125 0.750 626-750

7 0.125 0.875 751-875

8 0.125 1.000 876-000

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.

Table 11.15: Service time distribution at grocery store

Service time Cumulative Random digit


probability
(minutes) probability assignments
1 0.10 0.10 01-10

2 0.20 0.30 11-30

3 0.30 0.60 31-60

4 0.25 0.85 61-85

5 0.10 0.95 86-95


6 0.05 1.00 96-00

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

Customer Random Time Customer Random Time


digits between digits between
arrivals arrivals
(Minutes) (Minutes)

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 .

10 039 1 100 538 5


Table 11.17: Time between arrival Determinations

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

Simulation table for first 10 customers is shown in table 11.18.


Table 11.18: Simulation table for single channel queuing problem in a grocery
store

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

The following findings can be determined from the simulation table.

Total time customers wait in queue (minutes)


Average waiting time =
Total number of customers
Number of customers who wait
Probability of customers waiting =
Total number of customers

Total idle time of server (minutes)


Probability of getting server idle =
Total run time of simulation (minutes)

Total service time (minutes)


Average service time =
Total number of customers

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)

Probability 0.14 0.22 0.43 0.17 0.04

The distribution of time to complete a service as follows:


Service
time 5 15 25 35 45
(Minutes)

Probability 0.12 0.35 0.43 0.06 0.04

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

You might also like