Sie sind auf Seite 1von 14

This article was downloaded by: [202.67.38.

6] On: 10 September 2017, At: 04:15


Publisher: Institute for Operations Research and the Management Sciences (INFORMS)
INFORMS is located in Maryland, USA

INFORMS Transactions on Education


Publication details, including instructions for authors and subscription information:
http://pubsonline.informs.org

Graphical Spreadsheet Simulation of Queues


Armann Ingolfsson, Thomas A. Grossman, Jr.,

To cite this article:


Armann Ingolfsson, Thomas A. Grossman, Jr., (2002) Graphical Spreadsheet Simulation of Queues. INFORMS Transactions on
Education 2(2):27-39. https://doi.org/10.1287/ited.2.2.27

Full terms and conditions of use: http://pubsonline.informs.org/page/terms-and-conditions

This article may be used only for the purposes of research, teaching, and/or private study. Commercial use
or systematic downloading (by robots or other automatic processes) is prohibited without explicit Publisher
approval, unless otherwise noted. For more information, contact permissions@informs.org.

The Publisher does not warrant or guarantee the articles accuracy, completeness, merchantability, fitness
for a particular purpose, or non-infringement. Descriptions of, or references to, products or publications, or
inclusion of an advertisement in this article, neither constitutes nor implies a guarantee, endorsement, or
support of claims made of that product, publication, or service.

Copyright 2002, INFORMS

Please scroll down for articleit is on subsequent pages

INFORMS is the largest professional society in the world for professionals in the fields of operations research, management
science, and analytics.
For more information on INFORMS, its publications, membership, or meetings visit http://www.informs.org
INGOLFSSON & GROSSMAN
Graphical Spreadsheet Simulation of Queues

This paper shows how graphical representations of


Graphical Spreadsheet spreadsheet queueing simulations can be used to give
Simulation of Queues students a richer understanding of queues, provide
a deeper understanding of simulation, and to serve
as a lead-in to teaching queueing theory results. This
Armann Ingolfsson
paper builds on previous work on spreadsheet queue-
Downloaded from informs.org by [202.67.38.6] on 10 September 2017, at 04:15 . For personal use only, all rights reserved.

School of Business
ing simulation (Grossman, 1999), with the relevant
University of Alberta material summarized in sections 2-4. The contribu-
Edmonton, Alberta T6G 2R6, Canada tion of this paper (sections 5-8) is the development
Armann.Ingolfsson@UAlberta.Ca and use of "live" simulation graphs to provide a rich
visual means for understanding queues and simula-
Thomas A. Grossman, Jr. tion, and techniques for using these graphs to moti-
Faculty of Management vate students, enhance their learning, and stimulate
University of Calgary their interest in simulation.
2500 University Dr. NW The queueing simulation and their graphical repre-
Calgary, Alberta, Canada T2N 1N4 sentations were implemented in Microsoft Excel 97,
grossman@UCalgary.ca and any specific instructions below refer to this soft-
ware package.

Abstract 1. Introduction
Graphical representations of spreadsheet queueing Queuing theory has always been a staple in survey
simulations can be used to teach students about courses on management science. Queueing theory
queues and queueing processes. A customer graph is a powerful tool for computing certain steady-state
shows the experience of every individual customer queue performance measures. However, queueing
in a queue, based on arrival time, start of service, theory is a poor vehicle for teaching students about
end of service, and showing clearly the length of what transpires in queues. For example, queueing
time in queue and service time for each individual theory tells us that, other things being equal, a queue
customer. The cumulative effect is powerful, illus- with higher service time variability has longer aver-
trating how one long service time (or short age queueing time than a queue with lower variabil-
interarrival time) can cause delays for many succeed- ity. (Note that we are using "queueing theory" to
ing customers. The server graph (a Gantt chart) mean what it usually means to students taking a sur-
shows the experience of each server, illustrating how vey course in management science: a small collec-
customers stack up, and the nature of periods of idle tion of formulas, typically for single server Mark-
time. The graphs are linked to a spreadsheet simula- ovian queues.) However, queueing theory yields no
tion and update instantly when the simulation is rep- insight into why this occurs.
licated. The graphs illustrate the complete evolution Spreadsheet queueing simulation can be used to give
of a queue (which simulation animations cannot do) students insight into queue behavior -- why queues
and help provide a holistic view of queues. They form, why they persist, the role of variability, and
can be used to teach students about the nature of the non-linear effect of increasing utilization on
queues and support active learning where the stu- queue performance. In this paper we extend previ-
dents articulate for themselves the cause of queue ous work on spreadsheet queueing simulation to pro-
behaviors. vide a graphical representation of queue behavior.
This graphical representation, which is connected
to a live simulation model, allows students to ar-
ticulate for themselves powerful insights about queue

27

INFORMS Transcations on Education 2:2 (27-39) INFORMS
INGOLFSSON & GROSSMAN
Graphical Spreadsheet Simulation of Queues

behavior. This enhances their intuition about queues 3. Overview of Simulating Queues in Spread-
and stochastic phenomena in general, and gives them sheets
a solid foundation to utilize queueing theory formu-
Any spreadsheet model can be simulated using tech-
las when appropriate.
niques that can be found in survey textbooks such
as Ragsdale (1998) or Winston and Albright (1997).
Downloaded from informs.org by [202.67.38.6] on 10 September 2017, at 04:15 . For personal use only, all rights reserved.

There are three classes of spreadsheet simulation


2. Approaches to Teaching Queueing
models (Evans and Olson, 1998), activity-driven,
There are three approaches to teaching about queue- event-driven, and process-driven, each of which can
ing: analytical queueing theory, dedicated simula- be used for queueing simulation.
tion packages, and spreadsheet simulation.
An activity-driven simulation describes the activi-
Queueing theory is widely taught in business school ties that occur during fixed intervals of time (for
OR/MS survey courses, and students can use it to example, an hour, day, or week), typically using one
quickly compute a handful of steady-state perfor- row of the spreadsheet for each time interval. The
mance measures for simple queueing systems. As activity-driven approach (often used in textbook
presented in textbooks for management science sur- inventory models) seems to have first been used for
vey courses (for example, Camm and Evans 1996, queueing by Clauss (1996) for ship unloading. How-
Winston and Albright 1997, or Ragsdale 1998), ever, we think this approach oversimplifies most
queueing theory is limited because the models are queueing systems, unless the simulation time inter-
simplified to make them analytically tractable, the vals are made very small - which makes the spread-
results apply only to steady-state behavior, and the sheet model very large.
number of performance measures that can be com-
An event-driven simulation describes the changes
puted is small. Because deriving results using queue-
in the system at the moment of each stochastic event,
ing theory models requires mathematics beyond the
typically using one row of the spreadsheet for each
scope of the survey course, they are presented as
event. This approach was apparently first used for
black box formulas, and students do not gain the
queueing by Winston (1996) for a single-server
insights that OR/MS professionals obtain by study-
queue. Evans and Olson (1998) describe a similar
ing the underlying theory.
model . The event-driven approach has technical
Steady state queueing theory results are not particu- advantages of efficiency and flexibility, but it is not
larly useful for understanding what actually tran- good for teaching because it obscures the customer
spires in queues: their dynamics, the effect of vari- experience of queues, and it is less intuitive than
ability, human behavior while waiting in line, and the process-driven approach.
such important technical issues as the role of initial
A process-driven simulation (Figure 1) models the
conditions and the distinction between transient and
logical sequence of events for each customer, typi-
steady-state behavior.
cally using one row of the spreadsheet for each cus-
Simulating queues using dedicated software pack- tomer. This approach was apparently first used for
ages is flexible, powerful and widely used. It is of- queueing by Chase and Aquilano (1992), who
ten the best technology for computing quantitative present a model of two serial single-server queues
results. Many simulation packages are available, with zero queue size. Process-driven simulation was
such as SLAM, GPSS, Extend+, and Arena. How- first described in a management science textbook
ever, simulation packages hide the mechanics of by Plane (1994) for a model of a single-server queue.
queues, are expensive and time-consuming to learn, Grossman, Tran, and Ursu (1997) developed proto-
and are not widely used in survey courses on OR/ types of multiserver process-driven models, includ-
MS, although Liberatore and Nydick (1999) argue ing balking, reneging, and multi-server serial queues.
that they should be. Hesse (1997) extends Chase and Aquilano's model
by allowing the second queue to hold one customer.
Camm and Evans (1996) and Lawrence and

28

INFORMS Transcations on Education 2:2 (27-39) INFORMS
INGOLFSSON & GROSSMAN
Graphical Spreadsheet Simulation of Queues

Cust. # Interarriv Arrival Service Server #1 Server #2 Wait Total


al Time Time Time Time Time
(hr:min) (min) (hr:min) (hr:min)
(min) Start End Start End
(hr:min) (hr:min) (hr:min) (hr:min)
Downloaded from informs.org by [202.67.38.6] on 10 September 2017, at 04:15 . For personal use only, all rights reserved.

start 9:00
1 1 9:01 3 9:01 9:04 0:00 0:03
2 1 9:02 9 9:02 9:11 0:00 0:09
3 1 9:03 9 9:04 9:13 0:01 0:10
4 3 9:07 9 9:11 9:20 0:04 0:13
5 3 9:10 9 9:13 9:22 0:03 0:12
Figure 1: A two-server queueing simulation template. The entries in bold are included on the template.
Students use the bold entries to compute the italicized entries.

Pasternack (1998) contain single-server process- 4. Process-Driven Spreadsheet Queueing


driven models. Evans and Olson (1998) describe one- Simulation
and two-server process-driven models. Grossman
A process-driven spreadsheet queueing simulation
(1999) discusses in detail the use of process-driven
(Grossman 1999) uses one row for each customer.
spreadsheet queueing simulations. Evans (2000) uses
We provide students with a paper template of the
a single-server process-oriented queueing model
spreadsheet (Figure 1) with all cells except
similar to Figure 1. He presents live graphs of aver-
interarrival times and service times blank and work
age performance measures, including average num-
with them to fill out the template, computing for
ber in queue, average percent idle time, and average
each customer the arrival time, service start time,
waiting time per customer, and indicates that indi-
end time, wait time, and so forth. This by-hand simu-
vidual replications demonstrate different times to
lation insures that every student understands how
converge to the long-term average value.
the model functions.
In the spreadsheet model, the user
enters the start time and end time
of the simulation. The user pro-
grams probability distributions
for interarrival time and service
time. The spreadsheet model
samples the distributions and
computes the values shown in
Figure 1. A screen shot of the
spreadsheet is in Figure 2. De-
tails of how these models are pro-
grammed and instructions for
downloading spreadsheet queue-
ing simulation template files can
be found in Grossman (1999).

Figure 2: A two-server queueing simulation model.

29

INFORMS Transcations on Education 2:2 (27-39) INFORMS
INGOLFSSON & GROSSMAN
Graphical Spreadsheet Simulation of Queues

Figure 2: interactive version (opens new window; 5.1 The Customer Graph
requires Internet Explorer 4.01 or later)
Figure 3 shows the "customer graph". The horizon-
We now discuss the key idea of this paper, which is tal axis measures time. The vertical axis displays
to represent graphically the results of a spreadsheet the customer number, with customer 1 the first to
queueing simulation such as the one shown in Fig- arrive, customer 2 the second to arrive, etc. (column
Downloaded from informs.org by [202.67.38.6] on 10 September 2017, at 04:15 . For personal use only, all rights reserved.

ure 2. A of Figure 2). A two-color horizontal bar repre-


sents the experience of each customer. The left hand
portion of the bar represents the customer's waiting
5. Graphical Representations of a Spreadsheet time (this is absent if the customer does not wait).
Queueing Simulation The right hand portion represents the customer's ser-
We have integrated two graphical representations vice time. The left edge of the bar is placed at the
with the spreadsheet queueing simulation templates. customer's arrival time (column C of Figure 2) to
These graphs are "live" in the sense that when the the system. The separation between the colors is the
spreadsheet is recalculated (for example, by press- start of the customer's service (columns E and G of
ing the F9 key in Microsoft Excel) the graphs in- Figure 2). The right edge of the bar is the time of
stantly change to reflect a new replication. We refer end of the customer's service (columns F and H of
to the two representations as the customer graph and Figure 2).
the server graph. For each graph, we discuss the form In contrast to animated simulation packages, the
of the graph and how it can be programmed. In the customer graph shows the entire evolution of the
Appendix we indicate how spreadsheet queueing system on one graph.
simulations containing these graphs may be down-
loaded.

Figure 3: The Customer Graph

30

INFORMS Transcations on Education 2:2 (27-39) INFORMS
INGOLFSSON & GROSSMAN
Graphical Spreadsheet Simulation of Queues

When the simulation is replicated (that is, the spread- up by vertical lines to show when the server fin-
sheet is recalculated, by pressing the F9 key), the ished serving one customer and immediately began
customer graph is updated instantly and automati- serving the next customer.
cally. The updated graph reflects new samples from
the interarrival and service time distributions, and
the corresponding customer arrival times, service Like the customer graph, the server graph is updated
Downloaded from informs.org by [202.67.38.6] on 10 September 2017, at 04:15 . For personal use only, all rights reserved.

start times, and service end times. instantaneously when the simulation is replicated
(that is, the spreadsheet is recalculated).
Figure 5 shows both the customer and server graphs
5.2 The Server Graph
for three replications. When viewed in a web
Figures 4 shows the "server graph" (a Gantt chart) browser, the Figure cycles automatically through the
corresponding to the same replication as Figure 3. three replications.
The horizontal axis measures time. The vertical axis
shows the server index. The server graph represents
each server by a horizontal bar whose length equals
the duration of the simulation. Each server bar is
divided into sections whose color indicates whether
the server was busy (serving a customer) or idle dur-
ing that time interval. The busy sections are broken

Figure 4: The Server Graph

31

INFORMS Transcations on Education 2:2 (27-39) INFORMS
INGOLFSSON & GROSSMAN
Graphical Spreadsheet Simulation of Queues
Downloaded from informs.org by [202.67.38.6] on 10 September 2017, at 04:15 . For personal use only, all rights reserved.

Figure 5: Customer and server graphs. When viewed in a web browser, the Figure will cycle through
three different replications of the simulation.

5.3. Programming the Spreadsheet Queueing Simu- The steps for constructing the customer graph are:
lation Graphs 1 Program in this order each customer's arrival
It is easy to program the spreadsheet queueing simu- time, time in queue, and time in service.
lation graphs. However, some non-standard tech- 2 Graph these data using Excel's built-in "stacked
niques are required. We summarize here the steps bar chart."
required to program the graphs in Microsoft Excel
97. 3 Format the arrival time series to have no area
and no border (this makes the series invisible
on the chart).
4 Format one of the visible series (time in queue
or time in service) to have zero gap width

32

INFORMS Transcations on Education 2:2 (27-39) INFORMS
INGOLFSSON & GROSSMAN
Graphical Spreadsheet Simulation of Queues

(double-click the series and choose the options 6. Uses of the Spreadsheet Queueing Simulation
tab). The zero gap width will be applied to both Graphs
visible series. Now, one can interpret the upper
The spreadsheet queueing graphs help communicate
envelope of the bars to be the cumulative num-
clearly the function of a complex model. Although
ber of arrivals to the system as a function of time.
we have students in class fill out by hand the tem-
Downloaded from informs.org by [202.67.38.6] on 10 September 2017, at 04:15 . For personal use only, all rights reserved.

Constructing the server graph is more complicated plate in Figure 1, the richness of the model does not
than constructing the customer graph. The steps are seem to be fully appreciated until the moment we
as follows. recalculate the worksheet while viewing the cus-
tomer graph. In addition, repeated replications seem
1.Create a column for each server that contains
to help students more fully internalize the function
all the start and end times of services performed
of simulation models. In contrast to queueing theory
by that server, sorted in ascending order. Excel's
formulas (and to some extent simulation packages)
SMALL(range, i) function (which finds the i-th
the spreadsheet simulation is not a black box. Stu-
smallest number in range) can be used to do this,
dents can do the simulation by hand, and hence it is
assuming all the start and end times for a par-
easier to grasp the functioning of the model.
ticular server are in a contiguous range (for ex-
ample, see columns E and F in Figure 2, for Because of the rich graphical presentation, complex
server 1). data are easily interpreted, particularly by students
with weak quantitative skills. With some facilita-
2.Select the columns corresponding to all the serv-
tion from their instructor, students can articulate the
ers and plot them using Excel's built-in clustered
insights themselves. This reduces their dependence
bar chart. Instruct Excel that the data is orga-
on the instructor. Such active learning presumably
nized in rows, rather than columns.
results in deeper understanding and better long-term
3.Format one of the series to have an overlap of retention.
100.
Students can see for themselves the impact of vari-
4.Reverse the order of the series. ability by observing multiple replications of two
5.Change the area color of the series so they alter- models that differ only in the variance of service
nate - corresponding to busy and idle intervals. time. This in turn leads to student insights into why
queues form -- particularly when utilization (arrival
The customer and server graphs display time on the rate divided by total service rate) is significantly
horizontal axis using Excel's time format, assuming lower than 100%. Likewise, the simulation model
the underlying data is formatted to display as time. can quickly be programmed to have a very brief
Unfortunately, Excel defaults to using rather strange interarrival time, or a very long service time (or one
times to display on the horizontal axis, such as 8:38. can hit F9 several times until such an effect occurs)
The Appendix shows VBA code that overcomes this so students can observe. This helps students under-
problem. The code executes every time the stand why queues persist after forming. These in-
worksheet recalculates (and therefore, every time the sights are not possible with queueing theory formu-
simulation is replicated). It sets the lower and upper las, and are harder to obtain with simulation anima-
limits on the time axis to be the ones specified for tions.
the simulation and chooses approximately ten time
instants to display between the upper and lower lim- The utilization performance measure often indicates
its. The interval between two consecutive displayed that servers have idle time. It is attractive to devote
times is constrained to be a multiple of 5 minutes. this idle time to useful work, but this is problematic
in many real situations. The server graph shows the
nature of server idle time, and allows students to
observe the challenge of harnessing the idle time
periods. The graph makes obvious the stochastic

33

INFORMS Transcations on Education 2:2 (27-39) INFORMS
INGOLFSSON & GROSSMAN
Graphical Spreadsheet Simulation of Queues

nature of server idle time, which makes difficult any Then the average arrival rate of customers is
attempt to plan useful work between customers. The
= A(t)/t (1)
server graph also shows the length of server idle
periods, highlighting that they are often too short to Now let
be useful. F(t) = area of shaded region from 0 to t in Figure 6
Downloaded from informs.org by [202.67.38.6] on 10 September 2017, at 04:15 . For personal use only, all rights reserved.

= total system time for all customers


7. Advanced Topics Using Spreadsheet Queueing = total number of "customer-hours"
Simulation Graphs
We use spreadsheet queueing simulation graphs to
teach several advanced topics to business students. We now see that the average system time of a cus-
The graphs have proven useful for an intuitive proof tomer is
of Little's Law, to teach the craft skill (Powell 1998) W = (total system time for all customers)/(to
of cleaning flawed data, and for linking microscopic tal number of customers)
features of queues (for example, arrival times of in-
dividual customers) with macroscopic measures (for = F(t)/A(t) (2)
example l, the average arrival rate to the system),
and for understanding non-linear changes in queue
performance as utilization increases. The average number of customers in the system is
L = (total "customer-hours")/(total hours)

7.1 Little's Law = F(t)/t (3)

The idea for the customer graph originally came from


a diagram that is sometimes used to derive Little's Combining (1), (2), and (3) we see that
law - for example, see Figure 2.3 in Kleinrock (1975).
L = W
Our informal derivation goes as follows. Define A(t)
to be the cumulative number of arrivals up to time t,
D(t) to be the cumulative number of departures up
of us has used this informal derivation in a 4th year
to time t and L(t) = A(t) - D(t) to be the number in
undergraduate business course for a few years. The
system at time t, as shown in Figure 6.
better students usually notice, and point out, that
equation (2) is only approximately true, unless t is
chosen so that L(t) = 0, that is, the system is empty
at time t. Otherwise, F(t) will not include all of the
system time for the last few arriving customers. This,
and the implicit assumption of first-in-first-out, is
what makes the derivation informal.

7.2 Cleaning Data and Checking Assumptions


Figure 6: Informal derivation of Little's law. One very real problem that anyone who tries to ap-
ply queueing theory is often faced with is imperfect
data. Figure 7 shows a particularly troublesome part
of a real dataset that one of us has used as the basis
for an assignment. The Figure shows the times at
which customers arrived to a "water kiosk" in a third
world country, entered service ("arrival at tap"), and

34

INFORMS Transcations on Education 2:2 (27-39) INFORMS
INGOLFSSON & GROSSMAN
Graphical Spreadsheet Simulation of Queues

departed after receiving service. Unfortunately, many will have to make sure the arrival time of a cus-
of the numbers are missing. Some students might tomer is always less than or equal to the "arrival at
have seen examples of imperfect data sets in a prior tap" time for that customer, if it is known.
statistics course. If the data set can be thought of as
The missing departure times can also be estimated
consisting of several independent draws from the
fairly easily. One can estimate the average service
same distribution, then one option is to simply re-
Downloaded from informs.org by [202.67.38.6] on 10 September 2017, at 04:15 . For personal use only, all rights reserved.

time, using customers for which both "arrival at tap"


move the missing observations from the data set.
and "departure time" are available. Then one can
Here, the situation is more complicated - one cannot
estimate the missing departure times as "arrival at
simply remove a customer with one or more miss-
tap" plus the average service time (2 minutes and 34
ing numbers from the dataset, because that customer
seconds in this case).
may interact with other customers in important ways.
The choice is really between modifying the data set The tricky part is estimating the missing "arrival at
intelligently or not using the data set at all. The op- tap" times. These should be estimated in a way that
tion to use the data set after removing all missing is consistent with the queue discipline (first-come-
observations is not realistic in this case. first-serve) and the number of servers (two). This is

Arrival Arrival Arrival at Departur


Number Time Tap e Time
70 8:21 8:21 8:27
71 8:25 8:26 8:32
72 ? ? 8:30
73 8:28 8:31 8:34
74 ? ? 8:30
75 ? ? 8:31
76 ? 8:31 ?
77 8:33 ? 8:41
78 8:34 ? 8:37
79 8:35 8:41 8:49
80 ? ? 8:36
81 8:36 8:42 ?
82 ? ? 8:40
83 8:39 8:41 8:43

Figure 7: Imperfect transactional data for a water


kiosk.

Some of the missing data are easy to estimate, par- where the customer graph can help.
ticularly the arrival times. For example, a reason- Figure 8 shows a customer graph for the data shown
able estimate for the missing arrival time for cus- in Figure 7, after the missing arrival times and de-
tomer 72 would be the average of the arrival times parture times have been estimated as explained
of customers 71 and 73. When several arrival times above. The "arrival at tap" times have been set equal
in a row are missing (such as for customers 74-76) to the arrival time of the respective customers, to
one can estimate the missing times such they are provide initial estimates.
equally spaced between the last known arrival time
and the next known arrival time. In addition, one

35

INFORMS Transcations on Education 2:2 (27-39) INFORMS
Figure 8: Customer gr
INGOLFSSON & GROSSMAN
Graphical Spreadsheet Simulation of Queues
Downloaded from informs.org by [202.67.38.6] on 10 September 2017, at 04:15 . For personal use only, all rights reserved.

A close look at Figure 8 shows that the "arrival at The customer graph can also be used to examine the
tap" time for customer 72 must be adjusted from its validity of assumptions about how the system oper-
current value of 8:26:30. A server does not become ates. For example, we notice that customer 74 de-
available until 8:27, when customer 70 departs. The parts from service before customer 73 enters ser-
next customer with missing "arrival at tap" data is vice. So the queue does not operate in a truly first-
customer 74. From the queueing graph, we see that come-first-serve manner at all times (and this is not
this customer will not have access to a server until an artifact of how we estimated the missing data -
customer 72 departs, at 8:30. Continuing in this fash- the "arrival at tap" for customer 73 and the depar-
ion we can replace all the missing "arrival at tap" ture time of customer 74 were both recorded). The
times with estimates that are at least consistent with customer graph also shows that customers 71, 73,
how the system operates. and 76 are all receiving service simultaneously, de-
It is even possible to do the estimation graphically spite the system having only two servers (again, this
in Excel, by grabbing the vertical line correspond- is based on numbers that were actually recorded,
ing to an "arrival at tap" time and moving it. When not our estimates of missing number). Apparently,
one does this, Excel brings up the goal seek dialog customers "shared servers" at certain times.
box, and asks what "changing cell" to use. Enter the It is easy to throw one's hands up in frustration and
cell with the missing "arrival at tap" data and click ask for better data, but in reality that might not be an
OK, and Excel will adjust the data to correspond to option. Customer graphs can help pre-process the
the new position of the vertical line in the graph. data in an intelligent way to allow the best analysis
Some students enjoy applying this procedure because that is possible, given the quality of the data. Queue-
the can concentrate on the graphical representation ing graphs also help the analyst see whether assump-
rather than precise numbers on the time scale, but tions about how the system operates are supported
for other students the complexity of the procedure by the data.
is an impediment.

36

INFORMS Transcations on Education 2:2 (27-39) INFORMS
INGOLFSSON & GROSSMAN
Graphical Spreadsheet Simulation of Queues

7.3 Linking Transactional Data to Macroscopic Pa- graph makes the basic concepts of simulation very
rameters clear to students. It also shows how simulation (in a
spreadsheet or in dedicated simulation software) can
The customer graph displays almost all there is to
be used to model complex business processes.
know about a queueing system in one picture. To
use a term coined by Edward R. Tufte [Tufte, 1983], Graphical spreadsheet queueing simulation is a
Downloaded from informs.org by [202.67.38.6] on 10 September 2017, at 04:15 . For personal use only, all rights reserved.

the customer graph has a high data-ink ratio. The strong lead-in to traditional queueing theory results.
average arrival rate to the system (l) can be visual- Students develop intuition regarding queues in gen-
ized as the (average) slope of the A(t) curve in Fig- eral. They easily grasp the distinctions among one
ure 7, and estimated numerically as A(t)/t as dis- arrival, one particular day's queue (or one replica-
cussed above. The number in system at any time t tion), average performance in a single day, and av-
can be visualized as the vertical distance between erage performance across many days. It is easier for
A(t) and D(t). The average number in system (L) students to understand the meaning of queueing
can be visualized as the average vertical distance theory results, and to appreciate the limitations of
between A(t) and D(t). Hence, the customer graph the average results that most queueing theory mod-
can be used to illustrate both such macroscopic pa- els yield. In turn, the hard work required to imple-
rameters as l and L, and microscopic transactional ment a spreadsheet queueing simulation makes them
data (arrival time, waiting time, service time) for appreciate the speed with which queueing theory
every customer -- all in one picture. This can help to provides results.
explain the link between the detailed behavior of a
Finally, spreadsheet queueing simulation increases
queue over time (which students usually understand
student interest in learning simulation software (and
easily) and average measures of performance, such
taking elective courses in simulation). Business stu-
as L and W (which students usually have more dif-
dents find spreadsheet simulation of queues to be
ficulty interpreting).
inherently interesting. This makes them excited
about simulation in general. However, programming
spreadsheet queueing simulations, even with the
7.4. The Effect of Increasing Utilization on Queues
templates in Grossman (1999) can be cumbersome.
As a first order approximation, many students be- When we demonstrate a simulation package such as
lieve intuitively that utilization less than 100% means Arena and indicate that a queue which requires hours
that no queue should form. The customer graph al- of spreadsheet programming can be programmed in
lows them to see that a queue does form if there is under 1 minute in Arena, students take note. Simu-
variability in arrivals or service, and the size of the lation elective enrolments have increased since we
queue increases non-linearly as utilization gets close started using spreadsheet queueing simulation in the
to 100%. They can articulate for themselves why required course.
this is so.

9. Conclusions
8. Benefits of Spreadsheet Queueing Simulation
We discussed the use of spreadsheet queueing simu-
Graphs
lation graphs to enhance student understanding of
The use of spreadsheet queueing simulation graphs queues and of simulation. Use of this technique
can enhance student understanding of queues. By seems to increase student interest in elective courses
providing a rich visual representation of the com- in simulation.
plete evolution of a queue, complex queue behavior
We look forward to using the server graph in re-
can be presented to students so that they can articu-
search work with call center managers exploring the
late the insights themselves, rather than relying on
possibility of mixed inbound-outbound call centers
the instructor for wisdom. The ease with which rep-
where outbound calls are made during periods of
lications can be made and instantly presented on the

37

INFORMS Transcations on Education 2:2 (27-39) INFORMS
INGOLFSSON & GROSSMAN
Graphical Spreadsheet Simulation of Queues

idleness in a pure inbound call center. It is difficult ' will be a multiple of 5 minutes.
to understand and communicate the size and stochas-
tic nature of the time windows for outbound calls. X = Int(X / 10 / 5 + 1)
The server graph provides a powerful stochastic rep- For I = 1 To N
resentation of these time windows. With
Downloaded from informs.org by [202.67.38.6] on 10 September 2017, at 04:15 . For personal use only, all rights reserved.

ActiveSheet.ChartObjects(I).Chart.Axes(xlValue)
.MinimumScale = [start_time]
10. Appendix
.MaximumScale = [close_time]
10.1 Software Downloads
.MajorUnit = 1 / 24 / 60 * 5 * X
A family of spreadsheet queueing templates with End With
customer and server graphs for queues with balk-
Next I
ing, reneging, and both balking and reneging can be
downloaded from http://www.bus.ualberta.ca/ End Sub
aingolfsson/simulation/ [local copy] .

10.2 VBA Code


The following VBA code scales the time axis on the
customer and server graphs in a way that we find
more pleasing than Excel's default scaling. The code
needs to be associated with the worksheet that con-
tains the graph. The name of the worksheet does
not matter. Copies of this same subroutine can be
associated with several worksheets, if desired.
Cells with the names start_time and close_time must
exist somewhere in the workbook. The code scales
the value axis of every chart in the worksheet it is
associated with.

Private Sub Worksheet_Calculate()


Dim N As Long, I As Integer
Dim X As Double
N = ActiveSheet.ChartObjects.Count
' Find open time in minutes
X = ([close_time] - [start_time]) * 24 * 60
' Find how many 5 minute intervals in open
time.
' Then divide by ten and take integer value.
The result,
' times 5 minutes, will be the interval
length. Therefore,
' there will be approximately ten inter-
vals, and each interval

38

INFORMS Transcations on Education 2:2 (27-39) INFORMS
INGOLFSSON & GROSSMAN
Graphical Spreadsheet Simulation of Queues

11. References Plane, D. R. (1994), Management Science, a Spread-


sheet Approach, Boyd and Fraser, Danvers, MA.
Camm, J. D. and J. R. Evans (1996). Management
Science: Modeling, Analysis and Interpretation, Powell, S. G. (1998), "The studio approach to teach-
South-Western College Publishing, Cincinnatti, OH. ing the craft of modeling," Annals of Operations
Research, vol. 82, no. 1, pp.29-47.
Chase, R. B. and N.J. Aquilano (1992), Production
Downloaded from informs.org by [202.67.38.6] on 10 September 2017, at 04:15 . For personal use only, all rights reserved.

and Operations Management, sixth edition, Rich- Ragsdale, C. T. (1998), Spreadsheet Modeling and
ard D. Irwin, Chicago, IL. Decision Analysis, second edition, South-Western
College Publishing, Cincinnati, OH.
Clauss, F. J. (1996), Applied Management Science
and Spreadsheet Modeling, Duxbury Press, Belmont, Tufte, E. R. (1983), The Visual Display of Quantita-
CA. tive Information, Graphics Press, Cheshire, CT.
Evans, J. R. and D. L. Olson (1998), Introduction to Winston, W. L. (1996), Simulation Modeling Using
Simulation and Risk Analysis, Prentice Hall, Upper @RISK, Duxbury Press, Belmont, CA.
Saddle River, NJ.
Winston, W. L. and S. C. Albright (1997), Practical
Evans, J.R. (2000), "Spreadsheets as a Tool for Management Science, Spreadsheet Modeling and
Teaching Simulation", INFORMS Transactions on Applications, Duxbury Press, Belmont, CA.
Education, Vol. 1, No. 1, http://ite.informs.org/
Vol1No1/evans/evans.html
Grossman, T. A., Tran, K. and Ursu, G.D. (1997),
"Prospects and techniques for dynamic discrete event
simulation in spreadsheets," Proceedings of the In-
ternational Association of Science and Technology
for Development International Conference on Ap-
plied Modelling and Simulation, Banff, Canada, July,
available at http://www.ucalgary.ca/~grossman/
simulation/history.htm.
Grossman, T. A. (1999), "Spreadsheet Modeling and
Simulation Improves Understanding of Queues,"
Interfaces vol.29, no.3, pp.88-103. Templates avail-
able from http://www.ucalgary.ca/~grossman/simu-
lation/ .
Hesse, R. (1997), Managerial Spreadsheet Model-
ing and Analysis, Richard D. Irwin, Chicago, IL.
Kleinrock, L. (1975), Queueing Systems, Volume 1:
Theory, John Wiley and Sons, New York, NY.
Lawrence, J. A. and B.A. Pasternack (1998), Ap-
plied Management Science, a Computer-Integrated
Approach for Decision Making, John Wiley and
Sons, New York, NY.
Liberatore, M. J. and R. L. Nydick (1999), "Break-
ing the mold: A new approach for teaching the first
MBA management science course," Interfaces,
vol.29, no.4, pp.99:116.

39

INFORMS Transcations on Education 2:2 (27-39) INFORMS

Das könnte Ihnen auch gefallen