J Syst Sci Syst Eng
DOI: 10.1007/s11518-015-5266-0
ISSN: 1004-3756 (Paper) 1861-9576 (Online)
CN11-2983/N
SCHEDULING IN THE SERVICE INDUSTRIES: AN OVERVIEW
Michael Pinedo1 Christos Zacharias2 Ning Zhu3
1
Stern Business School, New York University, New York, NY 10012
mpinedo@stern.nyu.edu ()
2
School of Business Administration, University of Miami, Coral Gables, FL 33146
czacharias@miami.edu
3
College of Economics and Management, Tianjin University, Tianjin, China
zhuning@tju.edu.cn
Abstract
Scheduling plays an important role in many different service industries. In this paper we provide an
overview of some of the more important scheduling problems that appear in the various service
industries. We focus on the formulations of such problems as well as on the techniques used for
solving those problems. We consider five areas of scheduling in service industries, namely (i) project
scheduling, (ii) workforce scheduling, (iii) timetabling, reservations, and appointments, (iv)
transportation scheduling, and (v) scheduling in entertainment. The first two areas are fairly general
and have applications in many different service industries. The third, fourth and fifth areas are more
related to some very specific service industries, namely the hospitality and health care industries, the
transportation industries (of passengers as well as of cargo), and the entertainment industries. In our
conclusion section we discuss the similarities and the differences between the problem formulations
and solution techniques used in the various different industries and we also discuss the design of the
decision support systems that have been developed for scheduling in the service industries.
1. Introduction
Scheduling
scheduling in the service industries, namely (i)
applications
in
the
service
industries are ubiquitous. Due to the inherent
non-stationarity
of
service
the most basic scheduling paradigms relevant to
the
service
industries,
(ii)
optimization
businesses,
techniques and/or heuristics that are used in
scheduling is a very important aspect of
practice, and (iii) examples of specific real world
management in a variety of service industries,
applications.
including health care, hospitality, transportation,
One can make a distinction between static
and entertainment industries. This paper presents
scheduling and dynamic scheduling. In static
a tutorial of some of the major scheduling
scheduling applications, one would not expect a
application areas in the service industries. It
schedule to change much over time; a schedule
focuses, in particular, on three aspects of
is typically cast in stone. A typical example of
Systems Engineering Society of China and Springer-Verlag Berlin Heidelberg 2015
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
2
such schedule is a quarterly flight schedule of an
(v) professional sports and entertainment.
airline. Since such a static schedule is not
The first area, project scheduling, has many
expected to undergo many changes, the amount
applications
in
management
consulting,
of computer time allocated for finding an
accounting and auditing, as well as in systems
optimal solution may be substantial; such a
implementations. The second area, workforce
schedule typically does not have to be generated
scheduling, consists of two parts, one being shift
in real time. In dynamic scheduling applications,
scheduling (important in call centers) and the
on the other hand, one would expect a schedule
other being crew scheduling (important in
to change frequently. When schedules have to be
transportation).
generated
timetabling, reservations, and appointments. The
and
regenerated
regularly,
the
The
third
corresponding
Because of the many changes that are then
subsections. The first subsection goes into the
expected, one important characteristic of a
basics
schedule is its robustness. An example of a
applications in the hospitality industries as well
dynamic scheduling application can be a
as in the field of education. The second
resource constrained project at a consulting firm.
subsection covers interval
timetabling,
consists
considers
optimization may have to be done in real time.
of
section
area
of
which
has
three
many
scheduling and
In practice, dynamic scheduling is often done
reservation systems modeling, which are closely
manually, rather than through a decision support
related to timetabling. The last subsection
system.
discusses a more special case of timetabling,
It has been the experience that the analysis of
namely appointment scheduling, which is very
a dynamic scheduling problem is often harder
important in health care. The fourth area deals
than the analysis of its corresponding static
with
scheduling
corresponding
counterpart.
However,
in
the
transportation
section
scheduling.
The
consists
four
of
development of a procedure for a dynamic
subsections. The first one focuses on urban
scheduling problem it is always helpful to know
transit scheduling, the second one on maritime
which procedure(s) are most appropriate for the
scheduling, the third one on aviation scheduling
scheduling of its static counterpart.
and the last one on emergency operations
In this paper we provide an overview of five
scheduling. The fifth and last area covers
different scheduling areas in service industries.
scheduling
The first two areas are fairly general and have
entertainment. This section consists of two
in
professional
sports
and
applications in many different service industries,
subsections. The first one focuses on tournament
namely
scheduling in professional sports and the second
(i) project scheduling, and
one on network broadcast scheduling. In the
(ii) workforce scheduling.
very last section, we present our conclusions,
The third, fourth and fifth areas focus on
discuss the design and development of decision
specific service industries, namely
(iii) hospitality and health care industries,
(iv) transportation industries, and
support systems, and make suggestions for
future research.
There are other scheduling areas in service
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
3
industries that are not covered in this tutorial.
mainly on the precedence constraints imposed
However, the areas that are covered seem to be
on the activities and the resulting critical paths.
very representative of common scheduling
The second subsection considers more general
problems in service industries. The goal of this
project scheduling problems that have, in
paper is to provide a rudimentary overview of
addition to the precedence constraints, resource
scheduling applications and the methods and
constraints.
techniques being used in the service industries.
survey of the entire literature, the reference list
2.1 Precedence Constraints and Critical
Paths
is not exhaustive. There are in the literature
A generic project scheduling problem can be
Since it is more a tutorial rather than a detailed
many more papers on each topic we discuss.
described as follows: consider the scheduling of
a number of jobs or activities that are subject to
2. Project Scheduling
Examples
of
project
precedence constraints. A job or activity can
scheduling
are
start only when all its predecessors have been
ubiquitous in the service industries; they include
completed. The objective is to minimize the total
consulting projects, systems installation projects,
project completion time while adhering to the
maintenance and repair projects, and so on.
precedence
constraints.
Such
Consulting projects may include also the annual
considered
a
project
auditing processes that must be done at every
problem.
public company by independent accounting
standard
problem
is
scheduling
Research in project scheduling started in the
(CPA) firms. A systems installation project may
1950s. These efforts resulted in the classical
involve the installation of a large computer
technique usually referred to as the Critical Path
system at a corporation or the implementation of
Method (CPM). There is an extensive literature,
a large ERP system; these types of projects can
spanning decades, in the field of project
take several years. A maintenance and repair
scheduling and in the Critical Path Method; see,
project may be the annual overhaul of a major
for example, Walker and Sayer (1959), Moder
manufacturing or power generation facility; such
and Philips (1970), Wiest and Levy (1977), and
a facility may be forced to stop its production in
Demeulemeester and Herroelen (2002).
order for the maintenance to take place.
Since,
especially in
service
industries,
Project scheduling in service industries tend
activity durations are often random, a fair
to be intrinsically very different from project
amount of effort has been put into the
scheduling
industries.
development of critical path techniques for
Installing a large ERP system at a major
random durations; one such technique is known
company does not have much in common with
as the Project Evaluation and Review Technique
the building of an aircraft carrier or a nuclear
(PERT), see the Department of the Navy Report
submarine.
“PERT” (1958), Fulkerson (1962), Elmaghraby
in
manufacturing
In this section we discuss the basics of
project scheduling. The first subsection focuses
(1967), and Sasieni (1986).
Another version of the project scheduling
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
4
problem assumes that the durations of activities
A significant amount of research in the past has
can be determined in advance by the project
focused on project scheduling subject to
manager. A project manager may have some
resource constraints, see Patterson (1984),
control over the durations of different activities
Blazewicz et al. (1986), Kolish (1995), Brucker
by allocating selectively more resources (e.g.,
et al. (1999), and Neumann et al. (2001).
people) to some activities. A project may have a
The basic project scheduling problem with
deadline and a completion after the deadline
precedence constraints but without any resource
may entail a penalty; the project manager,
constraints is very easy from a computational
therefore, has to analyze the trade-off between
point of view. Optimal solutions can be found
the penalties incurred by completing the project
with very little computational effort. However,
late and the additional costs incurred by
project scheduling problems with resource
shortening the durations of selected activities by
constraints are typically strongly NP-Hard.
allocating more resources, see Talbot (1982).
A project scheduling problem subject to
This process is in the literature typically referred
resource constraints typically can be formulated
to as crashing.
as a Mixed Integer Program (MIP). In order to
formulate this problem as an integer program,
2.2 Project Scheduling with Resource
Constraints
Another more general version of the basic
project scheduling problem assumes that a job’s
processing requires additional resources of
different types, say some special equipment or
specific experts. Consider, for example, a
assume that all processing times are fixed and
integer. Let W
denote the total number of
people available in pool
and let Wj denote
the number of people job j requires from pool
for its processing. Let A denote the set of
precedence constraints. Introduce a dummy job
workforce that consists of various different pools
n + 1 with zero processing time. Job n + 1
of people with each pool having of a fixed
succeeds all other jobs, i.e., all jobs without
number of people with a specific skill set.
successors have an arc emanating to job n + 1 .
Because of the pools’ limitations, it may
Let
sometimes occur that two jobs cannot be
the value 1 if job j is completed exactly at
processed at the same time, even though both
time t and the value 0 otherwise. So the
are allowed to start as far as the precedence
number of operators job j needs from pool
constraints are concerned. The total number of
x jt
denote a 0 − 1 variable that assumes
in the interval [t − 1, t ] is
Wj
may be larger than the number available in that
pool, making it impossible to process two jobs at
the same time. This type of problem is typically
referred to as project scheduling with resource
constraints. Resource constraints typically make
project scheduling problems considerably harder.
∑
t + p j −1
people the two jobs require from a given pool
Let
H
u =t
x ju .
denote an upper bound on the
makespan. A simple, but not very tight, bound
can be obtained by setting
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
H = ∑ pj .
n
have been developed that have been proven to
j =1
be quite effective.
So the completion time of job
expressed as
j can be
Over the last decade research in project
∑ tx jt .
scheduling has started to focus on various types
∑ t xn+1,t .
will always be available. A renewable resource
H
of resource constraints. Traditional resources
t =1
may be referred to as “renewable”, since they
And the makespan as
H
could be a person, i.e., a specific expert, who is
t =1
on the payroll of a company. After this person
An integer program can now be formulated
as follows:
Minimize
5
∑ t xn+1,t
has lended his hand in the completion of one
H
activity and the activity has been completed, he
t =1
could be assigned to another activity. However,
other
subject to
∑ tx jt + pk − ∑ txkt ≤ 0,
resources
may
be
referred
to
as
for j → k ∈ A
“nonrenewable”. Such resources would actually
t + p j −1
= 1, , N ;
W
x
∑ j ∑ ju ≤ W , for t = 1,, H p
u t
=j 1 =
at the outset. Of late, research has started to
H
H
=t 1 =t 1
n
=
x jt 1,=
for j 1, , n .
∑
H
t =1
The objective of the integer program is to
minimize the makespan. The first set of
constraints
ensures
that
the
precedence
j is
followed by job k , then the completion time of
job k has to be greater than or equal to the
constraints are enforced, i.e., if job
be consumed and a certain supply was available
focus on project scheduling with renewable as
well as nonrenewable resources. A specific
example of a nonrenewable resource is working
capital. Such nonrenewable resource constraints
are basically equivalent to budgetary constraints.
In particular, project scheduling subject to
resource
constraints
with
random
durations has not received much research
attention in the past. This particular area seems
to be in need of new research ideas.
completion of job j plus pk . The second set
of constraints ensures that the total demand for
3. Workforce Scheduling
pool at time t does not surpass the
availability of pool . The third set of
aspect
constraints ensures that each job is processed.
Since this integer program is very hard to
solve when the number of jobs is large and the
time horizon is long, it is typically tackled with
heuristics. It turns out that even special cases of
this problem are quite hard. However, for a
number of important special cases heuristics
activity
Workforce scheduling is a very important
of
many
service
industries,
since
schedules have to be created in such a way that
they will be able to deal with fluctuating and
random demand. The application areas include
nurse
scheduling
in
hospitals,
operator
scheduling in call centers, and so on. Clearly, an
enormous amount of research has been done on
personnel scheduling, resulting in a host of
survey papers and books; see, for example, Tien
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
6
and Kamiyama (1982), Burgess and Busby
(1992), Nanda and Browne (1992), and Burke et
al. (2004). This section consists of two
subsections: the first one deals with shift
scheduling, which is very important in call
centers, and the second one deals with crew
scheduling,
which
is
very
important
in
subject to
a x + a x + + a x ≥ b ,
12 2
1n n
1
11 1
a21 x1 + a22 x2 + + a2 n xn ≥ b2 ,
for j = 1, , n,
am1 x1 + am 2 x2 + + amn xn ≥ bm ,
x j ≥ 0.
with x1 , , xn integer. In matrix form this
integer program is written as follows.
transportation industries.
3.1 Shift Scheduling
Minimize c x
In this subsection we consider personnel
scheduling problems with cycles that are fixed in
advance. In certain settings the cycle may be a
single day, while in others it may be a week or a
number of weeks. Each work assignment pattern
within a cycle has its own cost and the objective
subject to
Ax ≥ b .
Such an integer programming problem is
known to be strongly NP-hard in its most
general form. However, the A matrix may
often exhibit a special structure. For example,
is to minimize the total cost.
The problem can be formulated as follows: A
shift j , (a1 j , amj ) , may contain a contiguous
predetermined cycle consists of m time intervals
set of 1’s (a contiguous set of 1’s implies that
or periods. The lengths of the periods do not
there are no 0’s in between 1’s). However, the
necessarily have to be identical. During period
number of 1’s may often vary from shift to shift,
personnel is
since it is possible that some shifts have to work
i , i = 1, , m , the presence of bi
required. The number bi
is, of course, an
integer. There are n different shift patterns and
each employee is assigned to one and only one
pattern. Shift pattern j is defined by a vector
(a1 j , a2 j , , amj ) .
The value aij is either 0 or 1; it
is a 1 if period i is a work period and 0
longer hours or more days than other shifts.
Even though the integer
programming
formulation of the general personnel scheduling
problem (with an arbitrary 0 − 1 A matrix) is
NP-hard, the special case with each column
containing a contiguous set of 1’s is easy. It can
be shown that the solution of the linear
otherwise. Let c j denote the cost of assigning a
programming relaxation is always integer. There
person to shift
the (integer)
are several other important special cases that are
decision variable representing the number of
solvable in polynomial time. Many papers have
people assigned to shift j . The problem of
focused on a number of special cases of the
minimizing the total cost of assigning personnel
problem described above; see, for example,
to meet demand can be formulated as the
Bartholdi et al. (1980), Burns and Carter (1985),
following integer programming problem:
Burns and Koop (1987), Emmons (1985),
j
and
xj
Minimize c1 x1 + c2 x2 + + cn xn
Emmons and Burns (1991), Gawande (1996),
Hung and Emmons (1993).
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
3.2
Crew Scheduling
7
In order to formulate this crew scheduling
Another type of workforce scheduling
problem as an integer program some notation is
involves crew scheduling, which is a form of
required. If flight leg i is part of round trip j ,
workforce scheduling that is very important in
then aij is 1, otherwise aij is 0. Let x j
transportation industries, e.g., aviation and
denote a 0 − 1 decision variable that takes the
trucking.
Crew
scheduling
is
from
a
mathematical point of view very different from
shift scheduling. It has also received a lot of
research attention; see, for example, Bodin et al.
(1983),
Marsten
and
Shepardson
value 1 if round trip
otherwise. The crew scheduling problem can be
formulated as the following integer program.
Minimize c1 x1 + c2 x2 + + cn xn
subject to
(1981),
Stojkovich et al. (1998).
Crew
important
scheduling
in
the
problems
transportation
are
a x + a x + + a x =
1,
12 2
1n n
11 1
a21 x1 + a22 x2 + + a2 n xn =
1,
1.
am1 x1 + am 2 x2 + + amn xn =
x ∈ {0,1}
for j =
1, , n.
j
very
industry,
especially in the airline industry. The underlying
model is different from the models considered in
the previous sections and so are the solution
techniques.
Consider a set of m jobs, e.g., flight legs. A
flight leg is characterized by a point of departure
and a point of arrival, as well as an approximate
time interval during which the flight has to take
place. There is a set of n feasible and
permissible combinations of flight legs that one
crew can handle, e.g., round trips or tours (the
number n usually is very large). A round trip
may consist of several flight legs, i.e., a plane
may leave city A for city B, then go to city C,
before returning to city A. Any given flight leg
may be part of many round trips. Round trip j ,
j = 1, , n , has a cost c j . Setting up a crew
schedule is equivalent to determining which
j is selected and 0
Each column in the A matrix is a round trip and
each row is a flight leg that must be covered
exactly once by one round trip. The optimization
problem is then to select, at minimum cost, a set
of round trips that satisfies the constraints. The
constraints in this problem are often called the
partitioning
equations
and
this
integer
programming problem is referred to as the Set
Partitioning problem (see Appendix A). For a
feasible solution ( x1 , , xn ) , the variables that
are equal to 1 are referred to as the partition. In
what follows we denote a partition l
=
J
l
{=
j | xlj
by
1} .
round trips should be selected and which ones
This problem is known to be NP-hard. Many
not. The objective is to choose a set of round
heuristics as well as enumeration schemes
trips with a minimum total cost in such a way
(branch-and-bound) have been proposed for this
that each flight leg is covered exactly once by
problem. In many of these approaches the
one and only one round trip.
concept of row prices is used. The vector
ρ l = ( ρ1l , ρ 2l , , ρ ml ) is a set of feasible row
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
8
Set J 2 = ∅ and N = {1, 2, , n} .
Step 2
Compute the potential savings
prices corresponding to partition J l satisfying
l
∑ ρ=
i aij
cj j ∈ Jl .
m
The price
ρil
i =1
may be interpreted as an estimate
of the cost of covering job (flight leg) i using
solution J l . There are usually many feasible
∑ ρi1aij − c j
σ=
j
m
i =1
Find the column k in N with the largest
potential savings
∑ ρi1aik − ck .
m
price vectors for any given partition.
i =1
The row prices are of crucial importance in
computing the change in the value of the
objective if a partition J 1 is changed into
J 2 . If Z 1 ( Z 2 ) denotes the value of
the objective corresponding to partition 1 (2),
then
m
Z2 =
Z 1 − ∑ ∑ ρi1aij − c j .
j∈J 2 i =1
The quantity
partition
=
σj
=
j 1, , n
∑ ρi1aij − c j
m
i =1
Step 3
For i = 1, m , if aik = 1 set aij = 0 for
all j ≠ k .
Step 4
Let J 2 = J 2 {k} and N= N − {k} .
Delete from N all j for which aij = 0
for all i = 1, , m .
Step 5
If N = ∅ STOP, otherwise go to Step 2.
When the problem becomes very large, it is
can be interpreted as the potential savings with
necessary
respect to the first partition to be obtained by
approaches, namely Branch-and-Bound, Branch-
∑ ρi1aij ≤ c j
and-Price,
including column j . It can be shown that if
m
i =1
j=
1, , n ,
and
more
sophisticated
Branch-Cut-and-Price.
The
ρ
often based on a technique called Lagrangean
1
1
corresponding to partition J , then solution
J
adopt
bounding techniques in Branch-and-Bound are
for any set of feasible row prices
1
to
Relaxation.
branching
Branch-Cut-and-Price
with
so-called
combines
cutting
planes
techniques and has been used to solve real world
is optimal.
Based on the concept of row prices the
following simple heuristic can be used for
finding better solutions, given a partition J
problems arising in the airlines industry with
considerable success.
1
ρ . The goal is to find a better partition J . In
4. Timetabling, Reservations, and
Appointments
the heuristic the set N denotes the indices of
the columns that are candidates for inclusion in
In the hospitality industries, education, and
and a corresponding set of feasible row prices
1
2
2
J .
Algorithm 3.2.1: Column Selection in Set
Partitioning
Step 1
health
care
reservation,
there
and
are
many
timetabling,
appointment
scheduling
problems. These problems often tend to be
mathematically related to one another and may
require similar solution techniques, which
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
9
include integer programming formulations as
people involved have the same skill set and are
well as graph theoretic approaches.
therefore interchangeable, i.e., they represent a
homogeneous workforce. The total number of
4.1 Timetabling
Timetabling refers to a class of generic
scheduling problems with numerous applications
in education, transportation, health care, and
people in the workforce is W and in order to do
activity j W j operators have to be present. If
the sum of the people required by activities j and
applications
k is larger than W (i.e., W j + Wk > W ), then
described in this section are related to some of
activities j and k may not overlap in time. (Such
the
a constraint would be equivalent to a (renewable)
other
service
industries.
applications
The
described
in
subsequent
sections.
resource constraint as described in the previous
In the most basic timetabling model there are
section.) This type of timetabling problem may
typically n activities or jobs to be scheduled. In
be referred to as timetabling with workforce or
a timetabling problem an activity (say, for
personnel constraints.
example, a meeting) can only be scheduled if a
In a second type of timetabling problem each
given set of very specific people and/or resources
person (or resource) has its own identity or skill
are all available at the time. So an activity can be
set, i.e., they represent a heterogenous workforce.
scheduled at any time as long as all the necessary
people and/or resources are available in the time
interval selected. The availability of the people
may be subject to constraints and the constraints
may imply that certain subsets of activities
Each activity or job now requires a specific
subset of the people. In order for an activity to
be scheduled all the people in its subset have to
be available. Two activities that need the same
person cannot be done at the same time. This
type of timetabling problem is in what follows
cannot be done at the same time, because a
referred to as timetabling subject to operator
particular person cannot participate in two
constraints.
different activities at the same time. A typical
This second type of timetabling can occur in
objective of the scheduling problem may be to
many different settings. Consider, for example, a
finish all the activities (e.g., meetings) in the
large repair shop for aircraft engines. In order to
shortest possible time, i.e., to minimize the
do a certain type of repair it is necessary to have
makespan. In other words, to finish the last
a certain type of person and a certain type of tool
activity as early as possible. In a more general
available at the same time. Since a given type of
timetabling problem the timing of activity j may
person may be required for a certain type of
also be constrained by an earliest starting time rj
repair, timetabling may become necessary. A
and a latest completion time d j .
A distinction can be made between several
different types of timetabling problems: One
type of timetabling problem assumes that all
second example of this type of timetabling
occurs when meetings have to be scheduled.
Each meeting requires a given set of people to
attend and each meeting has to be assigned to a
time period in which all who have to attend are
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
10
available. The meeting rooms also correspond to
the same operator(s). The two activities,
resources. A third example of this type of
therefore, cannot be scheduled in the same time
timetabling occurs when exams have to be
slot. If the length of the time horizon is H time
scheduled. Each person represents a student (or
slots, then the question boils down to the
a group of students) and two exams that have to
following: can the nodes in the graph be colored
be taken by the same student (or groups of
with H different colors in such a way that no two
students) cannot be scheduled at the same time.
connected nodes receive the same color? This is
The objective is to schedule all the exams within
clearly a feasibility problem. The associated
a given time period, say one week. It is therefore
optimization problem is to determine the
necessary to minimize the makespan.
minimum number of colors needed to color the
It turns out that timetabling problems are
nodes of the graph in such a way that no two
very closely related to graph coloring problems.
connected nodes have the same color. This
Consider a timetabling problem with operators,
minimum number of colors is in graph theory
each having his own identity and skill set (an
referred to as the chromatic number of the graph
operator may also be equivalent to a specific
and is equivalent to the makespan in the
piece of machinery, a fixture, or a tool). A given
timetabling problem.
activity either needs or does not need any
There are a number of heuristics for this
specific operator or tool. Each activity needs for
timetabling problem with durations equal to 1.
its execution a specific subset of the operators
In this section we describe only one such
and/or tools. If two activities require the same
procedure, namely the one that is due to Brelaz
operator, then they cannot be done at the same
(1979). First some graph theory terminology is
time.
needed. The degree of a node is the number of
In a feasibility version of this problem, the
arcs connected to a node. In a partially colored
goal is to find a schedule or timetable that
graph, the saturation level of a node is the
completes all n activities within a given time
number of differently colored nodes already
horizon H. In the optimization version, the
connected to it. In the coloring process, the first
objective is to do all the activities and minimize
color to be used is labeled Color 1, the second
the makespan.
Color 2, and so on.
Even the special case with all activity
durations being equal does not allow for an easy
solution. Consider first the feasibility version
with all durations being equal to 1. Finding for
this case a conflict-free timetable is structurally
equivalent to a very well-known node coloring
problem in graph theory. In this node coloring
problem a graph is constructed by representing
each activity as a node. Two nodes are
connected by an arc if the two activities require
Algorithm 4.1.1: Graph Coloring Heuristic
Step 1
Arrange the nodes in decreasing order of
their degree.
Step 2
Color a node of maximal degree with Color
1.
Step 3
Choose an uncolored node with maximal
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
saturation level.
11
the completely heterogeneous workforce (each
If there is a tie, choose any one of the nodes
individual has its very own identity and is not
with maximal degree in the uncolored subgraph.
interchangeable with anyone else). We have not
Step 4
considered any mixtures or hybrids of the two
Color the selected node with the color with
models described above. Such problems are
the lowest possible number.
actually quite common in practice and clearly
Step 5
very hard.
If all nodes are colored, STOP. Otherwise go
to Step 3.
4.2 Interval Scheduling and Reservations
Interval scheduling problems are ubiquitous
The structure of the heuristic described
in
reservation
systems
in
the
hospitality
above is quite typical for this type of
industries, e.g., hotels, car-rentals, etc. Consider
optimization problem. It follows the “path of the
the following reservation model: There are m
most resistance”. It tries to schedule early on in
resources in parallel and n activities. Activity j
the scheduling process those parts of the
has a release date rj , a due date d j , and a
problem that appear to be the hardest to schedule
weight w j . As stated before, all data are integer.
and that maybe subject to the most constraints.
The fact that there is no slack between release
The rationale behind such a heuristic is obvious.
date and due date implies that
p=
d j − rj .
j
Early on in the process it may still be possible to
schedule those parts of the problem that appear
to be hard to schedule. If those parts of the
If we decide to do activity j, then it has to be
problem are postponed to a later stage of the
done within the specified time frame. However,
scheduling process, they may actually end up to
it may be the case that activity j cannot be done
be impossible to schedule.
by just any one of the m resources; it may have
There is a very extensive literature in the
to be done by a resource that belongs to a
field of timetabling. A series of conferences on
specific subset of the m resources, namely subset
time tabling has led to a number of proceedings
Mj
on this topic, see Burke and Ross (1996), Burke
objective is to maximize the number of activities
and Carter (1998), Burke and Erben (2001),
done. In contrast, when the activities have
Burke and De Causmaecker (2003), Burke and
Trick (2004), Burke and Rudova (2006). For the
literature on examination timetabling, see Carter
(1986), and Burke et al. (1996).
However, it is clear that there are still many
open problems in the timetabling area. First, in
this subsection we have only considered two
. When all activities have equal weights, the
different weights, the objective is to maximize
the weighted number of activities scheduled. A
weight may be equivalent to a profit that is made
by doing the activity. In a more general model
the weight of activity j may also depend on the
resource to which it is assigned, i.e., the weight
types of workforces: a completely homogeneous
is wij (i.e., the profit depends on the activity as
workforce (i.e., all individuals are identical) and
well as on the resource).
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
12
Example 4.2.1: A Car Rental Agency Consider
a car rental agency with four types of cars:
subcompact, midsize, full size and sport-utility.
Of each type there are a fixed number available.
When customer j calls to make a reservation for
pj
days, he may, for example, request a car of
∑ xij ≤ 1
m
i =1
j = 1, , n
1 i
∑ xij ≤=
j∈J t
1,=
n, t 1, H .
The first set of constraints ensures that every
activity is assigned to at most one resource and
either one of two types and will accept the price
the second set ensures that a resource is not
quoted by the agency for either type. The set
assigned to more than one activity in any given
Mj
for such a customer includes all cars
belonging to the two types. The profit made by
slot.
the agency for a car of type i is π i dollars per
problem is a feasibility problem: does there exist
day. So, the weight of this particular reservation
an assignment of activities to resources with
is wij = π i p j .
The easiest version of the reservation
every activity being assigned to a resource? A
However, if customer j specifically requests
slightly harder version of this feasibility problem
a subcompact and all subcompacts have been
would be the following: does there exist an
rented out, the agency may decide to give him a
assignment of activities to resources with
midsize for the price of a subcompact in order
not to lose him as a customer. The set M j
includes subcompacts as well as midsizes (even
though customer j requested a subcompact), but
the agency’s daily profit is a function of the car
as well as of the customer, i.e., π ij dollars per
activity j being assigned to a resource belonging
to a given subset M j ? It turns out that this
problem is still relatively easy.
In the optimization version of the reservation
problem the objective is to maximize the total
profit
m
Most
reservation
problems
□
can
be
n
=i 1 =j 1
day, since the agency gives him a larger car at a
lower price. The weight is wij = π ij p j .
∑∑ wij xij ,
where the weight wij is equivalent to a profit
associated with assigning activity j to resource i.
formulated as integer programs. Time is divided
Some special cases of this optimization problem
in periods or slots of unit length. If the number
can actually be solved in polynomial time. For
of slots is fixed, say H, then the problem is
referred to as an H-slot problem. Assume, for the
time being, that the activity durations are equal
to 1 and let J t denote the set of activities that
need a resource in slot t, i.e., during period
example, consider again the case with all n
activities having a duration equal to 1, i.e.,
pj =1
for all j, and assume arbitrary resource
subsets M j and arbitrary weights wij . Each
[t − 1, t ] . If xij denotes a binary variable that
assumes the value 1 if activity j is assigned to
time slot can be considered as a separate
resource i and 0 otherwise, then the following
Another version of the reservation model
constraints have to be satisfied:
subproblem that can be solved as an independent
assignment problem.
that allows for an efficient solution assumes
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
arbitrary durations, identical weights (i.e.,
wij = 1 for all i and j), and each set M j
consisting of all m resources (i.e., the m
resources are identical). The durations, the
starting times (release dates) and the completion
13
activity j in J.
Step 4
j = n , STOP, otherwise set
and return to Step 2.
If
j= j + 1
The structure behind the algorithm above is
times (due dates) are arbitrary integers and the
actually
quite
typical
of
the
scheduling
objective is to maximize the number of activities
optimization problems of this type. A schedule is
assigned. This problem cannot be decomposed
being built up going forward in time. Whenever
into a number of independent subproblems (one
a selection has to be made between various
for each time slot), since the durations of the
alternatives, then the alternative is selected
different activities may overlap. However, it can
which results in a situation that is the least
be shown that the following relatively simple
restrictive and the most favorable (e.g., provides
algorithm maximizes the total number of
the most freedom) for the remaining activities to
activities. In this algorithm, which is due to
be scheduled.
Bouzina and Emmons (1996), the activities are
Another version of this reservation model
ordered in increasing order of their release dates,
with zero slack, arbitrary durations, equal
i.e.,
r1 ≤ r2 ≤ ≤ rn .
weights, and identical resources is also of
Set J denotes the set of activities already
of identical resources in parallel and all
considered.
activities have to be assigned. However, the
Algorithm 4.2.2: Maximizing Number of
Activities Assigned
assignment must be done in such a way that a
minimum number of resources is used. This
problem is, in a sense, a dual of the problem
Step 1
Set J = ∅ and j = 1 .
Step 2
If a resource is available at time rj , then
assign activity j to that resource; include activity
j in J, and go to Step 4.
Otherwise go to Step 3.
discussed before. It turns out that minimizing the
number of resources when all activities have to
be done is also an easy problem.
It can be solved as follows. Again, the
activities are ordered in increasing order of their
release dates, i.e.,
r1 ≤ r2 ≤ ≤ rn . First,
activity 1 is assigned to resource 1. The
Step 3
Let j* be such that
=
C j* max(
=
Ck ) max(rk + pk ) .
k ∈J
If
interest. Assume there are an unlimited number
k ∈J
C j = r j + p j > C j* , do not include
activity j in J and go to Step 4.
Otherwise, delete activity j* from J, assign
activity j to the resource freed and include
algorithm then proceeds with assigning the
activities, one by one, to the resources. Suppose
that the first j − 1 activities have been assigned
to resources 1, 2, ,i . Some of these activities
may have been assigned to the same resource.
So i ≤ j − 1 . The algorithm then takes the next
activity from the list, activity j, and tries to
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
14
assign it to a resource that already has been
coloring process represents a resource and
utilized before. If this is not possible, i.e.,
minimizing the number of colors is equivalent to
resources 1, 2, ,i are all busy at time rj , then
minimizing the number of resources in the
the algorithm assigns activity j to resource i + 1 .
The number of resources utilized after activity n
has been assigned is the minimum number of
resources required.
This last problem, with the activities having
arbitrary durations, turns out to be a special case
of the same well-known node coloring problem
described in the timetabling section of this
survey. Consider the n nodes and let node j
correspond now to activity j . If there is an
(undirected) arc (j, k) connecting nodes j and
k, then the processing of activities j and k
overlap in time and nodes j and k cannot be
given the same color. If the graph can be colored
reservation
problem.
That
the
reservation
problem is a special case follows from the fact
that the time slots required by an activity in a
reservation problem are adjacent. However, it
may not be possible to order the operators in the
timetabling problem in such a way that the
operators required for each activity are adjacent
to one another. It is this adjacency property that
makes the reservation problem easy, while the
lack of adjacency makes the timetabling
problem with operator constraints hard.
In this subsection we have only discussed
reservation models without any slack, i.e.,
p=
d j − rj
j
. Of course, in practice, reservation
with m (or less) colors, then a feasible schedule
systems are designed in such a way that a
exists with m resources. This node coloring
limited amount of slack is allowed, i.e.,
problem, which is a feasibility problem that is
. Typically, even though a limited
p j < d j − rj
NP-hard, is actually more general than the
amount of slack enables a reservation system to
reservation problem considered in this section in
generate a better and more profitable solution,
which the number of resources used is
the optimization problems involved are often
minimized.
considerably harder
That the reservation problem considered in
this section (with the activities having arbitrary
durations and the number of resources to be
minimized) is not equivalent to the timetabling
problem (with heterogeneous operators and all
processing times equal to 1) but rather a special
case can be shown as follows: two activities that
need the same operator in the timetabling
than
the
optimization
problems for reservation systems that do not
allow for any slack.
A fair amount of research has been done on
interval scheduling, often just in the form of
single machine and parallel machine scheduling
with release dates and due dates or deadlines;
see, for example, Garey, Johnson, Simons and
problem are equivalent to two activities that
Tarjan (1981), Martel (1982a, 1982b), and
have an overlapping time slot in the reservation
Posner (1985). Martin, Jones and Keskinocak
problem. If two activities in the reservation
(2003) consider a very interesting reservation
problem have an overlapping time slot, then the
system for On-Demand Aircraft schedules for
two nodes are connected. Each color in the
fractional aircraft operators.
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
15
waiting times and system’s overtime. Recent
4.3 Appointment Scheduling
The scheduling of appointments is a
studies have demonstrated that a sensible
common practice in many service industries,
practice
mainly to utilize resources efficiently and to
significantly
avoid queueing. Many papers have appeared in
performance of a medical facility with patients
the literature on appointment scheduling, mostly
enjoying shorter waiting times and better access
motivated by health care applications. Cayirli
to services, see for example LaGanga and
and Veral (2003), Gupta and Denton (2008)
Lawrence (2012), Robinson and Chen (2010),
provide overviews of the literature, the research
Zacharias and Pinedo (2014a), Zacharias and
challenges
Pinedo (2014b).
and
opportunities.
Hall
(2012)
of
appointment
improve
overbooking
the
can
operational
provides a comprehensive review of models and
In the case of homogeneous patients it is of
methods used for scheduling the delivery of
interest to determine the number of patients to
patient care for all parts of the health care
schedule every day and how to allocate these
system. The analysis may be based on anyone of
patients to the different slots. The sequencing of
a variety of approaches, including stochastic
the patients is also of interest when patients have
programming, queueing theory, and stylized
different
scheduling models.
characteristics
(no-show
rates,
processing times, waiting cost coefficients). In
Appointment scheduling systems are widely
most cases, finding an optimal schedule is
used as a tool for managing patient arrivals at
analytically intractable, and thus, the majority
health care facilities in order to match supply
the
with demand. In practice it is actually fairly
algorithms, simulation-based techniques and/or
common for patients not to show up for their
heuristics.
literature
uses
enumeration,
search
scheduled services. Missed appointments result
Outpatient clinics typically start empty at the
in under-utilization of valuable resources and
beginning of a working day, operate for a finite
limit the access for other patients who could
amount of time (in the order of say 8-12 hours),
have filled the empty slots. Meanwhile, patients
and shut down until the next period. Therefore,
nationwide experience difficulties in accessing
it is important to perform transient analysis for
medical appointments in a timely manner due to
the random evolution of such systems. As
long backlogs. Poor appointment utilization and
pointed out in Bandi and Bertsimas (2012),
excessive delays for outpatient care are widely
transient queues are difficult to analyze via
recognized as significant barriers to effective
classical queueing techniques. Typically the
health care delivery.
analysis of rich queueing systems over finite
Appointment overbooking is one operational
strategy employed by health care providers to
time horizons is addressed either by computer
simulation or diffusion approximations.
address the issue of no-shows and at the same
The majority of the literature focuses on
time increase patients’ access to care. However,
single-server models. Kaandorp and Koole
overbooking may potentially result in an
(2007), Hassin and Mendel (2008), Klassen and
overcrowded facility, with increased patients’
Yoogalingam (2009), Robinson and Chen (2010),
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
16
Millhiser
and
Veral
(2014)
consider
the
well.
Arrivals
are
driven
by
scheduled
with
appointments. Let m denote the number of
homogeneous patients who arrive on time for
patients to be scheduled throughout the working
appointment
scheduling
problem
up. Begen and Queyranne (2011), Cayirli et al.
day, subject to optimization, and let y= m − ns
denote the level of overbooking. The scheduler
(2012),
(2012),
would like to assign each one of the patients to
Zacharias and Pinedo (2014a) account further
arrive at the beginning of one of the time slots.
their scheduled appointments, if they do show
LaGanga
and
Lawrence
literature for the single server system is quite
Patients show up with probability p = 1 − q at
the beginning of the time slot they were assigned
extensive, the multi-server case has received
and require one time slot of service.
for patient heterogeneity. Even though the
limited attention. As pointed out by Gupta and
There are three costs associated with an
Wang (2012) as well, appointment scheduling
appointment schedule: patients’ waiting cost,
models become intractable if multiple features
servers’ idle time and overtime costs. The
are
scheduling model with s ≥ 1 servers appears in
Zacharias and Pinedo (2014b). Multi-server
objective is to minimize the weighted sum of
systems can be used to model for example a
regular n time slots, then one or more providers
diagnostic facility where it is crucial to utilize
remain idle and for each provider being idle an
resources (e.g. CT scan, X-ray generator, MRI)
idle time cost cI is incurred. The scheduler
efficiently. Doctors are modeled as “parallel
may overbook certain time slots and assign more
servers” in settings where continuity of care is
than s patients in order to compensate for the
not a big concern. Nurses are modeled as
no-show behavior. If more than s patients are
“parallel servers” when they are the bottleneck
present at the beginning of a time slot due to
resource, and/or the presence of a doctor is not
overbooking, then all but s of these patients have
considered
simultaneously.
A stylized
required (e.g. vaccination and immunization).
these three costs. If there are less than s patients
present at the beginning of any one of the
to wait. A waiting cost w is incurred for each
Consider the following simple, tractable,
time slot that a patient has to wait before starting
stylized scheduling model that provides useful
her service. An overtime cost cO is incurred
insights into appointment scheduling. Variations
for each overtime slot that a provider has to
of this model have been analyzed under different
remain present at the medical facility to serve
scopes by various papers in the literature
patients at the end of the regular working day.
including Robinson and Chen (2010), LaGanga
and Lawrence (2012), Zacharias and Pinedo
(2014a), Zacharias and Pinedo (2014b).
Consider s ≥ 1 identical service providers
working in parallel. Each one has in her regular
schedule n time slots available to serve patients
A schedule
is
denoted
by
a
vector
x = ( x1 , , xn ) , where xt is the number of
patients assigned to slot t , with
can be shown that if x
then
xt*
*
∑ t =1 xt
n
=m.
It
is an optimal schedule,
≥ s for all t = 1, 2, , n.
in a working day. Beyond these n regular slot,
The backlog of patients at the beginning of
each one can serve patients in overtime slots as
slot t , denoted by Lt , satisfies the Lindley
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
{
recursion
}
=
Lt max Lt −1 + At −1 − s, 0 , for t ≥ 2 ,
and
L1 = 0 ,
j
and let π =
denote the
=
Lt j )
t (x) Pr(
probability of a backlog of j patients at the
beginning of slot t under schedule x . Let also
t
fact that (Number of servers' idle slots) +
(Number of overtime slots). We consider the
Binomial(n, p) random variable takes a value
equal to k , i.e.,
n
f (=
k ; n, p ) p k (1 − p ) n − k
k
∑t =1 ( xt − s)
Note that the second equation follows from the
(Number of patients who show up) = ns +
denotes the
where
At ~ Binomial( xt , p )
number of new arrivals at slot t .
Let f (k ; n, p ) be the probability that a
=
lt
17
denote
the
following nonlinear integer program
cI I (x) + cO O(x) + wW (x)
min
(x,m )
s.t. m ≥ ns
xt ≥ s t =
1, 2, , n
∑ xt
n
t =1
= m,
with m, x1 , x2 , xn being integer.
Optimal schedules with overbooking are
front loaded: more patients are scheduled
maximum
towards the beginning of the working day (in
possible backlog at the beginning of slot t.
Assuming that the system is empty at the
beginning of the working day, then π10 (x)=1
order to get an empty system running), and the
and π t (x) can be expressed recursively for
=
t 2,3, , n + 1 as
j
s− j
min( s ,lt −1 )
∑ π tj−1 (x) ∑ f (k ; xt −1, p ) for i = 0
j 0=k 0
=
min( s + i ,l ) π tj−1 (x)
t −1
i
π t (x) =
s + i − j; for 1 ≤ i ≤ lt
∑
j max(0, s + i − xt ) f
=
x , p
t −1
0
otherwise.
The expected system's overtime, idle time,
schedules tend to become somewhat less dense
towards the end of the working day (clearly in
order to avoid high overtime costs). An example
of such a schedule is displayed in Figure 1 for a
system with 2 servers, a working day of 24 times
slots (for example an 8-hour working day with
20-minute slots), and a no-show rate of 20%.
For a more comprehensive numerical analysis
the reader is referred to Zacharias and Pinedo
(2014b). It is evident, and intuitive, that the
optimal overbooking level is increasing in the
no-show rate q. As w increases, the optimal
and patients' aggregate waiting time can be
schedules become less front-loaded, without
expressed respectively as
necessarily
=
O(x) E=
( Ln +1 )
∑
ln+1
j =0
jπ nj+1 (x) ,
I (x)= O(x) + ns − pm ,
W (x) = ∑∑
n
xt
t= 1 i= 1 j=
overbooking
level.
a
decrease
Overbooking
in
the
increases
significantly with the number of parallel servers,
and that increase is more prevalent for higher
rf (k ; i − 1, p )
∑ π tj (x) ∑ j + k − s + 1 .
k= max(0, s − j )
max 0,( s − i +1)
s
lt
observing
i −1
no-show rates.
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
18
Figure 1. One day schedule profile
5. Transportation Scheduling
Transportation is a quintessential service that
can take many different forms, dependent upon
network,
(ii) timetabling design of the bus or subway
system,
the mode of transportation. The various modes
(iii) vehicle/train scheduling, and
of transportation include buses, trains, airplanes
(iv) crew scheduling.
and ships. The different modes of transportation
Of these four phases, three are scheduling
have different planning horizons, are subject to
related. The transit network design is an
different sets of constraints and have different
exception. The objective of the transit network
objective functions. Each mode has its own set
design problem is to minimize the costs of the
of scheduling techniques. For a handbook on
various resource investments under fixed or
transportation in general, see Barnhart and
variable
Laporte (2006).
problem is constrained by the selection of the
traffic
demand.
The
optimization
routes and the bus/train capacities. After the
5.1 Urban Transit Scheduling
Transit systems play a very important role in
urban transportation systems. There is an intense
design of the transit network has been fixed, the
timetables for each one of the bus routes have to
be determined.
competition between public transit systems and
Bus timetables clearly depend on traffic
the use of private vehicles. An efficient public
demand. Departure and arrival times for each
transit system may encourage individuals not to
trip on each line of the entire transit network
use their cars but rather use a public bus or
have to be determined. Once the departure and
subway system. This would mitigate traffic
arrival times have been determined, the headway
congestion and reduce pollution.
and frequencies of the buses are also known.
Efficient planning and scheduling of urban
The most important objective in the bus
transit systems in general would improve the
timetabling problem is the minimization of the
performance of transit systems. There are
total waiting time of the passengers. Timetabling
typically four phases in the planning and
problems become quite interesting when transit
scheduling of urban transit systems, namely
networks are considered. In transit networks,
(i) planning of the construction of the transit
transfers are very important and have to be taken
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
19
into account. Therefore, timetabling requires a
operational costs, running times with small
synchronization of buses in order to minimize
numbers of passengers, and higher probabilities
passengers’ waiting times at transfer nodes and
of bunching of buses.
avoid “bunching” of buses.
A solution to a bus scheduling problem
In what follows we use the notation from
specifies the departure and arrival times on each
Ceder et al. (2001). A bus network is denoted by
route. Based on the assumption, adopted in most
G={A, N}, where A represents the set of bus
routes and N represents the set of transfer nodes.
Let T denote the time horizon, M the number of
studies, that the travel times on specific bus lines
are deterministic, a trip can be defined by the
departure and arrival times.
The problem now becomes how to assign
bus routes, N the number of transfer nodes, and
vehicles to the respective trips, see Freling et al.
and H m ax k are the minimum and
(2001). If we have only one depot for all the
H min k
maximum
headway
allowed
between
two
vehicles, we have a so-called single-depot
consecutive departures on route k. Let Fk
vehicle scheduling problem. The input for such a
denote the total number of departures on route k ,
problem is the location of the depot and the set
Tkj
the travel time between the starting point
and node j on route k. The decision variables are
X ik and
I ikjln ;
the X ik represent the departure
of trips with their departure and arrival times.
Furthermore, a travel time matrix is given which
provides all the travel times between all the
time of the ith bus on route k and Z ikjqn = 1
locations. A feasible solution for the vehicle
implies that the arrival time at node n of the ith
be assigned to a vehicle and each vehicle
bus on route k is the same as the arrival time of
operates a set of consecutive trips. The vehicle
the jth bus on route l at node n. The objective is
starts out from the depot; after completing all
to maximize the number of synchronized trips
among all departures. The objective function is
therefore:
∑∑ ∑ ∑ ∑
M −1 Fk
M
trips, the vehicle returns to the depot. Typical
criteria in the search for an optimal vehicle
assignment involves fixed and operational costs.
In the vehicle scheduling context, a new
Fq
k=
1 i=
1 q =k +1 j =
1 n∈ Akl
scheduling problem requires that each trip has to
I ikjln
where Akl is the set of shared nodes between
routes k and l .
Bus scheduling requires that bus headways
network is designed in which the nodes
represent the trips and the arcs connect trips that
are “compatible”. The term compatible implies
that the ending time of one trip is earlier than the
have to lie in between certain minimum and
starting time of the trip immediately following.
The network is denoted by G = ( A′, N ′) .
maximum values. A headway may be neither too
Vehicle movements between two consecutive
big nor too small. A headway that is too big may
trips are referred to as idle times without
increase the waiting times of passengers while a
servicing passengers. Two dummy nodes are
headway that is too small may result in high
added to the network, both representing the
depot; the two dummy nodes are denoted by s1
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
20
and s2 . A feasible vehicle schedule consists of
between the departure and end depot. A
several consecutive trips that are compatible
deadhead represents an inevitable movement of
starting with trip s1 and ending with trip s2 .
a vehicle in between two trips or in between a
The cij is the cost associated with a vehicle
movement from trip i to trip j and is a known
trip and a depot without servicing passengers.
parameter. The decision variable yij represents
the relationship between successive trips.
The vehicle scheduling model can now be
as space information regarding a driver being
formulated as follows:
between two relief points which represents the
min
∑
∑
(i , j )∈ A′
Relief points are points that contain time as well
able to have a break or being able to leave. A
task is a sequence of trips and deadheads in
smallest unit of work that can be assigned to a
cij yij
crew member. A piece is a sequence of
i ∈ N′
consecutive tasks without breaks in between
j ∈ N′
crew scheduling problem is to minimize the total
yij ∈ {0,1} , (i, j ) ∈ A′
least one duty. Recently, the simultaneous
∑
yij = 1,
j:(i , j )
i:(i , j )∈ A′
yij = 1,
which is also called a duty. The objective in the
cost of all duties while each task is part of at
optimization of vehicle and crew scheduling
The solution of the vehicle scheduling model
have been studied as well, see Huisman et al.,
offers a set of disjoint paths from s1 to s2 .
A natural extension of the single-depot
(2005). Simultaneous optimization involving
vehicle scheduling problem is the Multidepot
in significant cost savings, see Haase et al.
Vehicle Sheduling Problem (MDVSP). In the
(2001).
MDVSP, each vehicle belongs to a given depot
both vehicle and crew scheduling usually results
In
the
field
of
urban
transportation
and each trip is assigned to only one vehicle.
scheduling the timetabling problems for Mass
Models for the MDVSP can be classified as
Rapid Systems (MRT) or Metro systems are
single-commodity flow models, multicommodity
similar to train timetabling problems. Most
flow models, and set partitioning models. The
studies in the current literature have focused on
methods used for solving such models include
a single, one way track that connects two major
Branch-and-Cut, LP-Relaxation methods, and
stations with several smaller stations in between.
column generation methods, see Fischetti et al.,
An express train may not stop at a smaller
(2001), Mesquita et al., (1999), Ribeiro et al.,
station in between. A controller can slow down a
(1994).
train or make the dwelling time at an
scheduling problem has been solved. Several
intermediate station longer. Let S = {1, 2, , s}
denote the set of stations and let T = {1, 2, , t}
concepts have to be introduced before the crew
denote the set of trains. The decision variables in
scheduling model can be formulated. A vehicle
the train timetabling problem are the departure
Crew scheduling takes place after the vehicle
block is defined as a vehicle movement from one
depot to another. There are one or more trips
times at stations {1, 2, , s − 1} and the arrival
times at stations {2,3, , s} for each train t.
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
21
There is actually an ideal timetable for each train;
urban
the ideal timetable is given and depends on
uncertain.
passenger behavior and preferences. The most
popular
objective
function
for
the
train
transportation
networks
is
highly
Mainly because of these differences, the
modeling of the train timetabling problem is
timetabling problem is to minimize the cost that
more
is associated with the deviation of the actual
timetabling problem, see Carey and Lockwood
complicated
than
timetable from the ideal timetable. Constraints
(1995),
in the train timetabling problem include track
timetabling typically faces the challenges of a
capacity constraints, time window constraints
highly
and other physical constraints. The most popular
environment.
objective function for the train timetabling
uncertain on-route travel time, uncertain dwell
problem is to minimize the cost that is
time on bus stops and etc.) are hard to model.
and Caprara
uncertain
All
that
et al.
urban
these
of
the
bus
(2002). Bus
transportation
uncertainties
(e.g.
associated with the deviation of the actual
An extensive amount of research has been
timetable from the ideal timetable. Constraints
done on the scheduling of public transport
in the train timetabling problem include track
(buses and trains). This has resulted in a number
capacity constraints, time window constraints
of proceedings of conferences, see Wren and
and other physical constraints.
Daduna (1988), Desrochers and Rousseau
Bus as well as train timetabling are supposed
(1992), Daduna et al. (1995), Wilson (1999).
to generate the arrival as well as the departure
times of each bus (train) at each stop (station).
5.2 Maritime Scheduling
Most of the differences between bus timetabling
Scheduling plays a very important role in
and train timetabling are due to the existence of
shipping. An enormous amount of work has
tracks; some of these differences are the
been done on scheduling in this mode of
following:
transportation.
(i) Because of safety regulations, a minimum
Programming
Historically,
and
in
Mathematical
particular
Integer
headway has to be maintained between two
Programming has played a very important role
consecutive trains. However, for bus systems the
in maritime as well as in aviation scheduling.
headways are not a hard constraint.
There are several special types of Integer
(ii) Takeover phenomena in the context of
Programming formulations that have numerous
train timetabling occur only at the train stations.
practical applications in many of the various
However, bus timetabling does not have any
forms
constraints with regard to takeovers.
of
transportation
scheduling.
This
subsection first describes three very widely used
(iii) Controllers can manipulate both the
Integer Programming formulations, namely Set
speed of trains and the dwelling times at the
Partitioning, Set Covering, and Set Packing. The
train stations. The control granularity of trains is
integer programming formulation of the Set
higher than of buses. In the context of bus
Partitioning problem has the following structure.
operation, it is impossible to control the running
time and dwell time for a bus since traffic in
Minimize c1 x1 + c2 x2 + + cn xn
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
22
subject to
a x + a x + + a x =
1,
12 2
1n n
11 1
a21 x1 + a22 x2 + + a2 n xn =
1,
1,
am1 x1 + am 2 x2 + + amn xn =
x ∈ {0,1}
for j =
1, , n,
j
with all aij values being either 0 or 1.
When the equal signs ( = ) in the constraints
are replaced by greater or equal signs ( ≥ ), the
problem is referred to as the Set Covering
problem, and when the equal signs are replaced
mentioned before. The reason why the tanker
scheduling problem is a Set Packing problem
and not a Set Partitioning problem is based on
the fact that not every cargo has to be
transported by a company owned tanker. If it is
advantageous to assign a cargo to an outside
charter, then that is allowed. This implies that
the first set of constraints in the MIP are
inequality ( ≤ ) constraints rather than equality (=)
constraints.
Oil companies that own and operate tanker
by less than or equal signs ( ≤ ), then the
problem is referred to as the Set Packing
fleets typically make a distinction between two
problem. In practice, the objective of the Set
company-owned and the other type of ship is
Packing
chartered.
problem
is
typically
a
profit
maximization objective.
types
of
ships.
The
One
type
operating
of
cost
ship
of
is
a
company-owned ship is different from the cost
The mathematical model underlying the Set
of a charter that is typically determined on the
Partitioning problem can be described as follows:
spot market. Each ship has a specific capacity, a
Assume m different elements and n different
given draught, a range of possible speeds and
subsets of these m elements. Each subset
fuel consumptions, and a given location and
contains one or more elements. If aij = 1 , then
element i is part of subset j, and if aij = 0 ,
time at which the ship is ready to start a new
trip.
then element i is not part of subset j. The
Each port also has its own characteristics.
objective is to find a collection of subsets such
Port restrictions take the form of limits on the
that each element is part of exactly one subset.
deadweight, draught, length, beam and other
The objective is to find that collection of subsets
physical characteristics of the ships. There may
that have a minimum cost. In the Set Covering
be some additional government rules in effect as
problem, each element has to be part of at least
well.
one subset. In the Set Packing problem each
A cargo that has to be transported is
subset yields a certain profit π j and the total
characterized by its type (e.g., type of crude),
profit has to be maximized in such a way that
quantity, load port, delivery port, time window
each element is part of at most one subset.
constraints on the load and delivery times, and
A well-known maritime scheduling example
the load and unload times. A schedule for a ship
is the so-called Tanker Scheduling Problem,
defines a complete itinerary, listing the sequence
which is an example of the Set Packing problem
of ports to be visited within the time horizon, the
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
time of entry at each port and the cargoes loaded
23
owned.
Let
or delivered at each port.
=
π il
The objective is to minimize the total cost of
transporting all cargoes. This total cost consists
∑ aijl c*j − cil
n
j =1
of a number of elements, namely the operating
denote the “profit” (i.e., the amount of money
costs for the company-owned ships, the spot
that does not have to be paid on the spot market)
charter rates, the fuel costs, and the port charges.
by operating ship i according to schedule l. The
Port charges vary greatly between ports and
decision variable xil is 1 if ship i follows
within a given port charges typically vary
schedule l and zero otherwise.
The Tanker Scheduling Problem can now be
proportionally with the deadweight of the ship.
In order to present a formal description of
the problem the following notation is used. Let n
denote the number of cargoes to be transported,
T the number of company-owned tankers, and p
the number of ports. Let Si denote the set of
all possible schedules for ship i.
Schedule
l
for ship i, l ∈ Si , is represented by the column
vector
ail1
ail2
ainl
The constant aijl is 1 if under schedule l ship
i transports cargo j and 0 otherwise. Let cil
∑ ∑ π il xil
formulated as follows:
T
Maximize
i =1 l∈Si
∑ ∑ aijl xil ≤ 1
subject to
T
i =1 l∈Si
∑ xil ≤ 1
l∈Si
xil ∈ {0,1}
j = 1, , n
i = 1, , T
l ∈ Si , i =
1, , T
The objective function specifies that the total
profit has to be maximized. The first set of
constraints imply that each cargo can be
assigned to at most one tanker. The second set of
constraints specifies that each tanker can be
assigned at most one schedule. The remaining
denote the incremental cost of operating a
constraints imply that all decision variables have
company-owned ship i under schedule l versus
to be binary 0 − 1. This optimization problem is
keeping ship i idle over the entire planning
typically referred to as a set-packing problem.
horizon. The operating cost can be computed
The algorithm used to solve this problem is a
once schedule l has been specified, since it may
branch-and-bound procedure. However, before
depend in various ways on the characteristics of
the branch-and-bound procedure is applied, a
the ship and of the schedule, including the
collection of candidate schedules have to be
distance travelled, the time the ship is used, and
the ports visited. The cost c*j denotes the
amount that has to be paid on the spot market to
transport cargo j on a ship that is not company
generated for each ship in the fleet. As stated
before, such a schedule specifies an itinerary for
a ship, listing the ports visited and the cargoes
loaded or delivered at each port. The generation
of an initial collection of candidate schedules
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
24
has to be done by a separate ad-hoc heuristic
equal to 1 for ship i, then certain schedules for
that is especially designed for this purpose. The
other ships can be ruled out for all the
collection of candidate schedules should include
descendants of this node; that is, the schedules
enough schedules so that potentially optimal
for other ships that have a cargo in common
schedules are not ignored, but not so many that
with schedule l for ship i do not have to be
the set-packing problem becomes intractable.
considered any more.
Physical constraints such as ship capacity and
Another way of branching can be done as
speed, port depth and time windows limit the
follows: Select at a given node a ship i that has
number
schedules
not been selected yet at a higher level node and
considerably. Schedules that have a negative
generate for each schedule l in Si a branch to a
profit coefficient in the objective function of the
node at the next level down. In the branch
of
feasible
candidate
set-packing formulation can be omitted as well.
corresponding to schedule l the variable xil = 1 .
The branch-and-bound method for solving
Using this branching mechanism, one still has to
the problem is typically based on customized
decide at each node which ship i to select. One
branching and bounding procedures. Since the
could select the i based on several criteria. For
problem is a maximization problem a good
example, a ship that transports many cargoes or
schedule generated by a clever heuristic (or a
a ship that may be responsible for a large profit.
manual method) provides a lower bound for the
Another way is to select an i that has a highly
value of the optimal solution. When considering
fractional solution in the LP relaxation of the
a particular node in the branching tree, it is
problem (e.g., there may be a ship i with a
necessary to develop an upper bound for the
solution xil = 1/ K for K different schedules
collection of schedules that correspond to all the
with K being a fairly large number).
An upper bound at a node can be obtained
descendants of this particular node; if this upper
bound is less than the lower bound on the
by
solving
the
linear
relaxation
of
the
optimum provided by the best schedule currently
set-packing problem corresponding to that node,
available, then this node can be fathomed.
i.e., the integrality constraints on xil are replaced
There are a variety of suitable branching
by the non-negativity constraints xil ≥ 0 . This
mechanisms for the branch-and-bound tree. The
problem may be referred to as the continuous
simplest mechanism is just the most basic 0 − 1
set-packing problem. The value of the optimal
branching. Select at a node a variable xil which
solution is an upper bound for the values of all
has not been fixed yet at a higher level node and
possible solutions of the set-packing problem at
generate branches to two nodes at the next level
=1.
that node. It is nowadays possible to find with
The selection of the variable xil may depend
at least good upper bounds) for very large
on the solution of the LP relaxation at that node;
continuous set-packing problems, making such a
down: one branch for
the most suitable
xil
xil
= 0 and one for
xil
may be the one with a
little computational effort optimal solutions (or
bounding mechanism quite effective.
value closest to 0.5 in the solution of the LP
For details regarding tanker scheduling or
relaxation. If at a node a variable xil is set
scheduling in shipping in general, see Brown,
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
25
and
airport there must be, for each airplane type, as
Rosenwein (1989), Perakis and Bremer (1992),
many arrivals as departures. One must further
Christiansen (1999), Christiansen et al. (2004),
impose at each airport the availability of an
Christiansen et al. (2006).
equal number of aircraft of each type at the
Graves
and
Ronen
(1987),
Fisher
beginning and at the end of the day.
5.3 Aircraft Scheduling
In the formulation of the problem the
Aircraft scheduling provides an interesting
following notation is used: L denotes the set of
contrast to the tanker scheduling just considered.
flight legs, T denotes the number of different
The classical aircraft routing and scheduling
aircraft types, and mi denotes the number of
problem is an example of the standard Set
Partitioning problem. It is clear that in the
aviation industry the constraint that each flight
available aircraft of type i, i = 1, , T . So the
total number of aircraft available is
∑ mi
T
i =1
leg should be covered exactly once by a round
.
trip is important. On the other hand, in the
Some fight legs may be flown by more than
trucking industry, it may be possible to have one
one type of aircraft. Let Li denote the set of
leg covered by several round trips; the
constraints may then be relaxed and the problem
assumes a Set Covering structure.
flight legs that can be flown by an aircraft of
type i and let Si denote the set of feasible
schedules for an aircraft of type i. This set
The Daily Aircraft Routing and Scheduling
includes the empty schedule (0); an aircraft
Problem can now be described as follows: Given
assigned to this schedule is simply not being
flight legs that have to be flown in a one-day
used. Let π ij denote the profit generated by
covering flight leg j with an aircraft of type i.
period with departure time windows, durations,
there is a total
a heterogeneous aircraft fleet, a collection of
and cost/revenues corresponding to the aircraft
type for each leg, a fleet schedule has to be
With each schedule l ∈ Si
anticipated profit
π il =
generated that maximizes the airline’s profits
(possibly
subject
to
certain
additional
constraints).
Some of the additional constraints that often
have to be taken into account in an Aircraft
Routing and Scheduling Problem are the number
of available planes of each type, the restrictions
on certain aircraft types at certain times and at
certain
airports,
the
required
connections
between flight legs (the so-called “thrus”)
imposed by the airline and the limits on the daily
service at certain airports. Also, the collection of
flight legs may have to be balanced, i.e., at each
where
aijl
∑ π ij aijl ,
j∈Li
is 1 if schedule l covers leg j and 0
otherwise. If an aircraft has been assigned to an
empty schedule, then the profit is π i0 . The
profit π i0 may be either negative or positive. It
may be negative when there is a high fixed cost
associated with keeping a plane for a day; it may
be positive when there is a benefit having a
plane idle (some airlines want to have idle
planes that can serve as stand by). Let A denote
the set of airports, and Ai be the subset of
airports that have facilities to accommodate
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
26
aircraft of type i. Let oihl be equal to 1 if the
origin of schedule l, l ∈ Si , is airport h, and 0
otherwise; let
dihl
be equal to 1 if the final
destination of schedule l is airport h, and 0
otherwise.
that all decision variables have to be binary 0 −
1. This model is basically a Set Partitioning
Problem
with
additional
constraints.
The
algorithm to solve this problem is also based on
Branch-and-Bound; the version of Branch-and-
The binary decision variable xil takes the
value 1 if schedule l is assigned to an aircraft of
type i, and 0 otherwise; the integer decision
xi0
Bound is typically referred to as Branch-andPrice.
The aircraft scheduling problem described
denotes the number of unused
above typically results in cyclic schedules. This
aircraft of type i, i.e., the aircraft that have been
is in contrast to the schedules for tankers (oil,
assigned to an empty schedule.
natural gas, bulk cargo in general) which are
variable
The Daily Aircraft Routing and Scheduling
∑ ∑ π il xil
Problem can now be formulated as follows:
tankers is usually based on a rolling horizon
T
Maximize
i =1 l∈Si
∑ ∑ aijl xil = 1
subject to
T
i =1 l∈Si
∑ xil = mi
l∈Si
For
scheduling
in
more
the
details
aviation
concerning
industry,
see
j∈L
et al. (1998), Cordeau et al. (2001), and Barnhart
i = 1, , T
5.4 Emergency Operations Scheduling
et al. (2003).
Whenever a geographical area is hit by a
1,T , h ∈ Ai
disaster, emergency operations have to be
xil ∈ {0,1}
=
i 1, , T , l ∈ Si
forms. A disaster may be an act of nature (e.g.,
organized. Disasters can take many different
The objective function specifies that the total
anticipated profit has to be maximized. The first
set of constraints imply that each flight leg has
to be covered exactly once. (This set of
constraints is somewhat similar to the first set of
constraints in the formulation of the tanker
scheduling
procedure.
Stojkovich (2002), Desaulniers (1997), Barnhart
i
0=
∑ (dihl − oihl ) x il =
l∈Si
usually not cyclic; the scheduling process for
problem.)
The
second
set
of
constraints specifies the maximum number of
aircraft of each type that can be used. The third
set of constraints correspond to the flow
conservation constraints at the beginning and at
the end of the day at each airport for each
aircraft type. The remaining constraints imply
hurricane, earthquake, etc.) or may be man-made
(e.g., act of war, etc.). Some acts of nature may
give an advance warning of a couple of days
(e.g., hurricane), other acts of nature may not
(e.g., earthquake, tsunami).
The management of operations before,
during and after the occurrence of a disaster is
clearly of importance. In general, there are four
stages in emergency operations management; the
four stages being mitigation, preparedness,
response and recovery. In this section, we
particularly focus on the response stage, since it
is this stage that requires routing and scheduling.
A response to a disaster involves the allocation
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
27
of resources that are needed for mitigating the
the distribution centers (after a disaster, the
economic and human losses. In what follows,
demands from affected areas may be huge);
we focus on the planning and scheduling of the
(iii) different demand areas having different
allocation of such resources. The planning and
characteristics (due to the diversity of population
scheduling of the resource allocations refer
density, economic situation and other features of
mainly to the effective transportation of the
affected areas, the impact of a disaster on each
different resources to the disaster areas. There
potential demand area may be quite different);
are basically two different types of resources to
be allocated, namely renewable resources (e.g.,
personnel,
equipment)
and
non-renewable
resources (e.g., medical supplies, building
(iv) resources have to be coordinated in order
to accomplish rescue tasks;
(v) the level of uncertainty in the environment may be elevated.
material). The allocation of the resources has to
An example of this uncertainty is the
be coordinated in an efficient manner. We first
availability of transportation networks. Basically,
concentrate on the resource planning and
there are three standard models that are often
scheduling problem and assume that routing and
referred to as the covering models, namely the
transportation alternatives are known in advance
P-median and the P-center models, see Jia,
and do not need to be optimized. However,
Ordonez and Dessouky (2007). For a framework
assuming that the transportation routes are
of emergency planning and scheduling, see
known in advance is often not reasonable and
Caunhye, Nie and Pokharel (2012).
practical. The transportation routes in many
Once the DCs have been set up, the problem
situations are not determined in advance. Travel
boils down to on how to distribute the supplies
time of transportation is another critical factor
in order to meet the demands. There are two
that influences the routing decision significantly.
important research directions here: one approach,
Before any rescue activities can be organized,
which
is
more
macroscopic,
models
the
it is necessary to build temporary emergency
distribution of the emergency supplies as a
distribution centers (DCs) in order to accelerate
multi-commodity network flow problem. The
the rescue processes. The emergency distribution
goods consists of renewable and non-renewable
centers (DCs) can take the form of warehouses
items that should be coordinated to mitigate the
that store the supplies, temporary hospitals,
negative effects of disaster. The second approach,
medical supply centers, and so on. The planning
which
stage may require a formulation of models that
distribution problem as a vehicle routing
can help determine the number and locations of
problem. Let us first consider the network flow
such DCs. The most important differences
modeling paradigm and then go into the vehicle
between
routing problem in an emergency context.
location
problems
in
emergency
scenarios and traditional location problems are
the following:
is
more
microscopic,
models
the
After the DCs have been set up, emergency
materials have to be distributed in the affected
(i) a low frequency of disaster occurrences;
areas. Commodity network flow models may be
(ii) a high frequency of requests for aid from
used. Quantities of commodity flows are going
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
28
to be determined by the network flow models.
resources have arrived. There are also some
The objectives include the minimization of the
constraints with regard to the demand and the
transportation cost,
makespan of the
supplies. Another class of constraints deals with
schedule, the amount of food delivered, the total
the travel times of the transportation. The
amount of demand that has not been met, etc.
objective function can be the tardiness of the
The constraints include the number of vehicles
services, see Lee and Lei (2001).
the
and their capacities, the capacity of the links in
In the planning and scheduling of emergency
operations, the routing of the vehicles plays an
the transportation network, and so on.
Commodity network flow models are not
important role in the delivery system. The
enough to depict the complexity of emergency
modeling of the delivery system is similar to a
resource
response
Vehicle Routing Problem (VRP). The traditional
scheduling has one very unique feature that
vehicle routing problem is one of the basic
requires
scheduling.
Disaster
and
problems in the transportation and logistics
coordination of renewable resources (e.g.,
domain. It focuses on the optimal routing design
specialists, medical personnel, etc.) as well as of
of the delivery of the goods at the distribution
non-renewable
center to customers who are scattered at different
the
antibiotics,
simultaneous
scheduling
resources
surgical
(e.g.,
blades,
syringes,
vaccines
and
bandages, etc.). When operations scheduling
locations.
Traditional vehicle routing problems can be
depends on both renewable and nonrenewable
formulated
resources and the availability of both type
formulation by Campbell, Vandenbussche, and
resources have to be satisfied, the resulting
scheduling problems tend to be very difficult.
In reality, renewable and nonrenewable
resources
have
to
be
coordinated
and
following
the
notation
and
Hermann (2008). Let N = {1, 2, , N } denote
the set of customers and let 0 denote the depot.
Let tij denote the travel time between nodes i
and j. The binary variable xij indicates
synchronized with one another so that rescue
whether or not a vehicle travels from node i to
activities
Renewable
node j. Let ai denote the arrival time of
resources are also called permanent resources. In
customer i. A vehicle routing problem in the
the resource assignment and project scheduling
emergency context can now be formulated as
literature, some work has been done in this area,
follows:
can
be
performed.
see Ait-Kadia et al. (2011), Wong et al. (2013)
Minimize
and Van Peteghem and Vanhoucke (2014); for a
literature review on project scheduling, see
Weglarz et al. (2011). In a typical emergency
resource assignment and scheduling problem
that takes both renewable and nonrenewable
resources into account, the starting time of a
service in an affected area can occur only after
both the required renewable and nonrenewable
∑
i , j∈N 0
∑ xij = 1 ,
subject to
j∈I 0
tij xij
i ∈ I0
0 , i ∈ I0
∑ xij − ∑ x ji =
j∈I 0
j∈I 0
tij + ai ≤ a j + T (1 − xij ) , i, j ∈ N
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
ai ≥ t0i x0i , i ∈ N
customer can only be visited once no longer
xij ∈ {0,1} , i, j ∈ N 0
applies.
ai > 0 , i ∈ N 0
The
objective
(iii)
of
the
mixed
integer
programming model is to minimize the total
travel
time.
The
constraints
maintain
conservation of flows and impose bounds on the
travel times.
In the disaster management context, it is
necessary to consider other factors by adding
variables and constraints into the mathematical
programming model. There are many other
constraints that can be considered in a vehicle
routing problem in a disaster management
context which are the following:
(i) In a typical vehicle routing problem, the
vehicles depart from a given depot and return to
the depot after all service provisions have been
taken care of. In an emergency situation, due to
the high level of uncertainty, the emergency
vehicle may not return to the depot, but stay at a
stop on its route waiting for further instructions.
Another possibility for this routing style is that
vehicles need on the one hand dispatch goods to
affected areas and on the other hand move sick
and injured people to medical centers. The
medical centers can also be in affected areas.
The
supplier
and
demand
areas
are
interchangeable. This feature makes the new
vehicle routing problem a bit like a simultaneous
pickup-delivery vehicle routing problem.
(ii) The vehicle capacity may not be able to
meet the demand. In such a case, multiple
vehicles are needed to meet the demand at one
of the affected areas. This situation is like the
Split
Delivery
Vehicle
29
Routing
Problem
(SDVRP). In SDVRP, the requirement that each
Unpredictability
uncertainty
is
different
of
demand.
from
This
traditional
commercial delivery systems where typically
demand is relatively stable, see Campbell,
Vandenbussche and Herman (2008).
(iv)
Coordination
among
organizations.
There are various suppliers. Different vehicles
are capable of delivering different resources. An
example of this situation is that medical teams
and medical suppliers need to be coordinated.
The vehicles need to be coordinated as well.
(v) Some items are delivered only once
during the entire disaster relief period and some
items may need daily-based delivery such as
food and water, particular in hot weather. For a
survey paper that focuses on the periodic vehicle
routing problem, see Francis, Smilowitz and
Tzur (2008).
On the objective function side, it is important
to deliver the goods to the demand areas in a fast
and fair manner. Market forces and mechanisms
tend to suddenly disappear in disaster relief
operations.
The
disappearance
of
markets
changes the nature of economics and operations.
Even though there are no unified rules for
allocating resources in disaster operations,
fairness is a very important aspect of the goods
delivery; transportation costs are not a top
priority in disaster relief. Therefore, many
objective functions have been developed with an
emphasis on fairness. Some examples of such
objective functions are:
(i) Minimize the arrival time of last visited
area.
(ii) Minimize the average arrival time.
(iii) On the route level, fairness is measured
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
30
as the weighted arrival time normalized by the
demand on node, see Huang, Smilowitz and
Balcik (2012).
6. Professional Sports and Entertainment
Professional sports and entertainment are
(iv) Number of unsatisfied demands.
very important service industries with their own
For a discussion with regard to the
sets of scheduling problems. They have their
appropriateness of the various types of objective
own planning horizons, their own objective
functions in disaster relief operations, see
functions and their own constraints.
Holguin-Veras, Jaller, Wassenhove, Pérez and
Wachtendorf (2012) and Holguin-Veras, Pérez,
6.1 Tournament Scheduling in Professional
Sports
Jaller, Wassenhove and Aros-Vera (2013).
In order to solve the various different types
Sport events are a very important segment of
of vehicle routing problems, a cornucopia of
the entertainment and recreation industry. Many
exact and heuristic algorithms have been
different branches of sports maintain regular
developed. Baldacci, Mingozzi and Roberti
local, regional or national tournaments. There is
(2012) present an overview of the exact
a great variety in types of tournaments, each
algorithms for VRP under capacity and time
type having its own rules and restrictions. These
window constraints. Augerat et al. (1998)
tournaments have to be scheduled and it turns
developed
for
out that most of these schedules are anything but
solving the capacitated VRP. Set Partition
trivial to come by. This industry has inspired a
a
Branch-and-Cutalgorithm
formulations have also been applied to both the
significant amount of theoretical as well as more
capacitated VRP and the VRP with time
applied and more computational research, see
windows. The SD-VRP has also been used for
Butenko et al. (2004). The more theoretical
modeling this dispatching problem in disaster
research established a very strong link between
operations settings. A two-stage algorithm with
tournament scheduling and graph theory, see De
valid inequalities is proposed to solve the split
Werra (1988).
delivery vehicle routing problem, see Jin, Liu
Many tournament schedules are constrained
and Bowden (2007). For a shortest path search
in time; that is, the number of rounds or slots in
algorithm based on dynamic programming for
which games are played is equal to the number
the vehicle routing problem with split pickups,
of games each team must play plus some extra
see Lee et al. (2006). Normally, exact algorithms
rounds or slots that are typically required in
for solving the VRP and its large number of
leagues with an odd number of teams. For
variants are usually constrained by the problem
example, in a so-called single round robin
size. A number of heuristics have therefore been
tournament each team has to play every other
developed for dealing with large size problems:
team once, either at home or away. Such a
for tabu search algorithms for the Split Delivery
tournament among n teams with n being even
and Hertz (2006) and Archetti, Speranza and
requires n − 1 rounds. If the number of teams is
odd, then the number of rounds is n (due to the
Savelsbergh (2008).
fact that in every round one of the teams has to
Vehicle Routing Problem, see Archetti, Speranza
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
remain idle). In a double round robin tournament
31
may already be hard.
each team has to play every other team twice,
However, it may at times also occur that one
once at home and once away. It turns out that
would like to optimize an objective. In order to
such a tournament among n teams requires
either 2n − 2 or 2n rounds (dependent upon
whether n is even or odd).
formulate one of the more common objective
In order to formulate the most basic version
sequence of games played by a given team, each
of a tournament scheduling problem certain
game can be characterized as either a Home (H)
functions
in
tournament
scheduling
some
terminology is needed. If one considers the
assumptions have to be made. Assume for the
game or as an Away (A) game. The pattern of
time being that the number of teams, n, is even.
games played by a given team can thus be
(It happens to be the case that tournament
characterized by a string of H’s and A’s, e.g.,
scheduling with an even number of teams is
HAHAA. There is typically a desire to have for
slightly easier to analyze than with an odd
any given team the home games and the away
number of teams.) Consider a single round robin
games to alternate. That is, if a team plays one
tournament in which each team has to play every
game at home, it is preferable to have the next
other team exactly once, i.e., each team plays
game away and vice versa. If a team plays in
for such a tournament a schedule that consists
the team is said to have a break in round t + 1 . A
common objective in tournament scheduling is
n − 1 games. Because of the fact that there are
an even number of teams it is possible to create
exactly of n − 1 rounds with each round having
n/2 games.
rounds t and t + 1 either two consecutive games
at home or two consecutive games away, then
to minimize the total number of breaks, see
More formally, let t denote a round (i.e., a
Trick (2001). It has been shown in the literature
date or a time slot) in the competition. The 0 − 1
that in any timetable for a single round robin
variable xijt is 1 if team i plays at home against
tournament with n teams (n being even), the
team j in round t; the variable xijt
is 0
otherwise. Of all the xijt variables a total of
(n / 2)(n − 1) are 1; the remaining are 0. The
following constraints have to be satisfied:
1 for
=
j
∑ ( xijt + x jit ) =
n
i =1
n −1
1 for
∑ ( xijt + x jit ) =
t =1
1,
=
, n; t 1, , n − 1,
i ≠ j.
In practice, there are usually many additional
minimum number of breaks is n − 2 . The
algorithm that generates a schedule with this
minimum number of breaks is constructive and
very efficient; see Miyashiro and Matsui (2003).
Example 6.1.1: Breaks in a Single Round
Robin Tournament
Consider 6 teams and 5 rounds.
term 1
term 2
constraints concerning the pairing of teams and
term 3
the sequencing of games. When there are a large
term 4
number of constraints, one may just want to find
term 5
a feasible schedule; finding a feasible schedule
term 6
round 1
round 2
round 3
round 4
round 5
-6
-5
4
-3
2
1
3
6
-1
5
-4
-2
-5
*4
*-6
-2
1
3
2
-1
5
6
-3
-4
-4
3
-2
*1
*-6
5
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
32
When team i plays in round t against team j and
scheduling problem as well. Consider a single
the game is entered in the table as j, then team i
round robin tournament in which each club has
plays at the site of team j. If it is entered as −j,
to face every other club once and only once; the
then team i plays at home. The timetable shown
game is either a home game (H) or an away
above has 4 breaks, each of them marked with a
game (A). A directed graph G=(N, B) can be
*. Since there are 6 teams, it is not possible to
constructed in which set N consists of n nodes
find for this tournament a schedule with less
and each node corresponds to one team. Each
than 4 breaks.
node is linked via an arc to each other node. The
□
Assume now that the number of teams is odd.
arcs are initially undirected. In Figure 2 the n
The minimum number of rounds in a single
nodes are positioned in such a way that they
round robin tournament is now larger than n−1.
form a polygon. If in a graph each node is
If the number of teams is odd, then one team has
connected to every other node, it is referred to as
to remain idle in each round. When a team does
a clique or as a complete graph.
not play in one round, it is referred to as a Bye
A well-known graph coloring problem
(B). So when the number of teams is odd, the
concerns the coloring of the arcs in a graph; the
sequence of games that have to be played by a
coloring has to be done in such a way that all the
given team is a string of H’s, A’s, and one or
arcs that are linked to any given node have
more B’s, e.g., HAHABA. With these more
different colors and the total number of colors is
complicated types of patterns a break can be
minimized. It is a well-known fact that a clique
defined in several ways. An HBH substring may
with n nodes can be colored this way with n
or may not be considered a break; if the B is
colors (which is often referred to as its
considered equivalent to an A, then there is no
chromatic number ). Each subgraph that receives
break. If the B is considered equivalent to an H,
a specific color consists of one arc that lies on
then there is a break (actually, then there are two
the boundary of the polygon and a number of
breaks). However, one can argue that an HBH
internal arcs (see Figure 2).
pattern is less bad than an HHH pattern; one can
even argue that it is less bad than an HH pattern.
So, as far as penalties or costs are concerned, the
cost of an HBH pattern may actually be less than
the cost of a single break.
It turns out that a single round robin
tournament problem with arbitrary n (n being
either even or odd) can be described as a graph
coloring problem. This equivalence is somewhat
similar to the relationships between timetabling
problems and graph coloring problems described
in a previous section; it provides some
additional
insight
into
the
tournament
Figure 2. Coloring of a complete graph
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
The equivalence between the graph coloring
problem and the single round robin tournament
scheduling problem is based on the fact that
each round in the tournament corresponds to a
framework for generating single round robin
schedules.
Step 1 – Assemble a Collection of HAPs
Find a collection of n different HAPs.
subgraph with a different color. The coloring of
the arcs for the different rounds thus determines
a schedule for a single round robin tournament
in which each team plays every other team only
once. One question is how to partition the arcs
into a number of subsets with each subset having
a different color. A second question has to be
addressed as well: when one team plays another
it has to be decided at which one of the two sites
the game is played, i.e., which team plays at
home and which team will be away. In order to
determine this, each arc in the graph has to be
33
This set of HAPs is referred to as the pattern
set.
Step 2 – Create a Timetable
Assign a game to each entry in the pattern
set.
The resulting assignment is referred to as a
timetable.
Step 3 – Assign Teams to Patterns
Assign a team to each pattern.
Together with the timetable, this creates a
single round robin schedule.
directed; if a game between teams i and j takes
A schedule for a double round robin
place at team j’s site, then the arc linking nodes i
tournament can be created in a similar fashion.
and j emanates from i and goes to j. In order to
First, a single round robin tournament schedule
avoid breaks in two consecutive rounds of a
is generated. Then a fourth step is added, which
schedule, the arcs have to be directed in such a
is typically referred to as the mirroring step. The
way that the two subgraphs corresponding to the
single round robin schedule is extended by
two
timetable
attaching immediately behind it a schedule that
constitute a so-called directed Hamiltonian path.
is exactly the same but with the home and away
A directed Hamiltonian path is a path that goes
games reversed.
consecutive
rounds in the
from one node to another with each node having
In practice, the framework described above
at most one outgoing arc and at most one
is often used somewhat differently. In Step 1
incoming arc.
usually more than n different HAPs are
Many approaches for developing tournament
generated and based on this larger collection of
schedules are based on a standard framework for
HAPs more than one pattern set is created.
the search for good feasible schedules. In this
Additional pattern sets give more choices and
framework a pattern is equivalent to a string
flexibility in the creation of timetables and
consisting of H’s, A’s, and B’s, for example
schedules.
HABAHHA. For a single round robin tournament
If the tournament under consideration has a
the length of a string is n−1 (n) when the number
large number of teams, then each step in the
of teams is even (odd). These strings are often
framework requires a certain computational
referred to as Home Away Patterns (HAPs). The
effort. There are actually various approaches that
following three step algorithm provides a
can be used in each step. Each step can be
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
34
implemented following either an optimization
∑
Minimize
( k , ,t )∈F
approach or a constraint programming approach.
The remaining part of this section describes the
use of optimization techniques in each step of
the framework.
In Step 1 several pattern sets can be
generated by first listing all the preferred
subject to
∑
t :( k , , t )∈F
∑
xk t +
:( k , , t )∈F
xk t +
patterns (with alternating H’s and A’s and one B)
∑
t :( , k , t )∈F
∑
xk t
xkt =
1 , for all k ∈ S , ∈ S , k ≠
:( , k , t )∈F
xkt ≤ 1 ,
for all k ∈ S , t ∈ T
xk t ∈ {0,1} , for all (k , , t ) ∈ F
of appropriate length. There may not be that
The first set of constraints specifies that
many of such preferred patterns. A list of some
during the tournament there will be exactly one
of the less preferred patterns (say, with one or
game between teams represented by patterns k
two breaks) is created as well. It is not likely
that a set that consists only of preferred patterns
and . The second set of constraints specifies
that pattern k plays at most one game in round t.
will ultimately lead to an acceptable schedule.
(In a single round robin with an even number of
Because of this, additional pattern sets are
teams this inequality constraint becomes an
created that contain, for example, n–2 preferred
equality constraint.) The objective function for
patterns and two patterns that are less preferred.
this integer program is somewhat arbitrary,
If we allow only a small number of less
because the only goal is to find a solution that
preferred patterns in a pattern set, then the
satisfies all constraints.
number of pattern sets that can be generated is
still relatively small.
Step 2 creates timetables for different teams.
Determining the timetables can also be done
Step 3 assigns teams to patterns. This step
may in certain situations also be formulated as
an integer program. Let yik denote a 0 − 1
variable taking value 1 if team i is assigned to
every pattern in each one of its rounds is linked
HAP k and 0 otherwise. Let cik denote the
relative cost of such an assignment (this relative
to another pattern. Let S denote a set of n
cost is estimated by taking all stated preferences
patterns and let T denote the set of rounds. The
into account). A timetable for the competition
binary variable xk t is 1 if the team associated
can be constructed as follows.
through integer programming. It is clear that
with pattern k plays at the site of the team
associated with pattern in round t. Of course,
this variable is only defined if the kth pattern has
an A in position t and the th pattern has an H
in position t. Let F denote the set of all feasible
(k , , t ) triplets. In order to find for a single
round robin tournament a solution that satisfies
all the constraints the following integer program
can be formulated.
∑∑ cik yik
n
Minimize
k 1
=i 1 =
∑ yik = 1
subject to
n
i =1
n
∑ yik = 1
k =1
n
for k = 1, , n
for i = 1, , n
Of course, each team is assigned to one HAP
and each HAP is assigned to one team. In
practice, the mathematical program formulated
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
35
for Step 3 is often more complicated. It is
programming technique seems to have a clear
usually of a form that is referred to as a
edge. Since the integer programming approach
Quadratic Assignment Problem.
in Step 3 is basically equivalent to complete
This approach, in which each step is based
enumeration, it is not surprising that constraint
on an integer programming technique, has been
programming can do better, see Schaerf (1999),
used in a case discussed by Nemhauser and
Aggoun and Vazacopoulos (2004), Henz et al.
Trick (1998): The Atlantic Coast Conference
(2004).
(ACC) is a group of nine universities in the
In addition to mathematical programming
southeastern United States that compete against
and constraint programming techniques, many
each other in a number of sports. From a
researchers have experimented with heuristic
revenue point of view, the most important sport
techniques as well, see Anagnostopoulos (2003),
is basketball. Most of the revenues come from
Hamiez and Hao (2001), Schonberger et al.
television networks that broadcast the games and
(2004).
from gate receipts. The tournament schedule has
A significant amount of academic research
an impact on the revenue stream. Television
has also focused on finding good solutions for
networks need a regular stream of quality games
tournaments of specific types, namely in soccer
and spectators want neither too few nor too
leagues as well as in other leagues; see, for
many home games in any period.
example,
There are numerous restrictions in the form
Schreuder
(1992),
Henz
(2001),
Bartsch et al. (2004).
of pattern constraints, game count constraints,
and team pairing constraints. The patterns of
6.2 Network Broadcast Scheduling
Home games and Away games is important
Scheduling of network television programs,
because of wear and tear on the teams, issues of
even though different in various respects from
missing class time, and spectator preferences.
interval scheduling and tournament scheduling,
No team should play more than two Away games
does exhibit a number of similarities with both
consecutively, nor more than two Home games
interval scheduling and tournament scheduling.
consecutively. A Bye is usually regarded as an
The scheduling horizon is typically one week
Away game. Similar rules apply to weekend
and the week consists of a fixed number of time
slots (no more than two at Home in consecutive
slots. A number of shows are available for
weekends).
broadcasting and these shows have to be
This type of scheduling problem can also be
assigned to the different time slots in such a way
solved using a constraint programming approach.
that a certain objective function is optimized.
As far as Steps 1 and 2 are concerned, the
Moreover, the assignment of shows to slots is
computational effort needed using a constraint
subject to a variety of conditions and constraints.
programming approach seems to be comparable
For example, assigning a show to one slot may
to the computational effort needed using an
affect the contribution to the objective function
integer programming approach. However, as far
of another show in a different slot. The integer
as
programming formulations are somewhat similar
Step
3
is
concerned
the
constraint
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
36
to the integer programming formulations for
interval scheduling and tournament scheduling.
Major television networks typically have a
number of shows available for broadcasting.
Some of these belong to series of half hour
the assignment (j, t) and 0 otherwise. Clearly,
b jtt = 1 and b jtv can only be nonzero for v > t .
The
following
There are a fixed number of 30 minute time slots,
implying that some shows require one time slot,
while others need two consecutive time slots. If
a particular show is assigned to a given time slot,
then a certain rating can be expected. The
forecasted ratings may be based on past
program
can
be
formulated to maximize the total profit.
Maximize
shows, while others belong to series of one hour
shows. There are shows of other lengths as well.
integer
∑
subject to
t :( j ,t )∈ A
∑
( j ,t )∈ A
∑
( j ,t )∈ A
π jt x jt
x jt ≤ 1
x jt b jtv = 1
x jt ∈ {0,1}
for j = 1, , n
for v = 1, , H
for ( j , t ) ∈ A
experience with the show and/or the time slot; it
This integer program takes into account the
may be based on lead-in effects due to the shows
fact that there are shows of different durations.
immediately preceding it, and it may also be
However, the formulation above is still too
based on shows that competing networks assign
simple to be of any practical use. One important
to that same slot. The profits of the network
issue in television broadcasting revolves around
depend very much on the ratings and one of the
so-called lead-in effects. These effects may have
main objectives of the network is to maximize
a considerable impact on the ratings (and the
its average ratings.
profits) of the shows. If a very popular show is
If the length of program j is exactly half an
followed by a new show for which it would be
hour, then the binary decision variable x jt is 1
hard to forecast the ratings, then the high ratings
if program j is assigned to slot t; if the length
of program j is longer than half an hour, then the
of the popular show may have a spill-over effect
on the new show; the ratings of the new show
decision variable x ji is 1 if the first half hour of
may be enhanced by the ratings of the popular
program j is assigned to slot t (i.e., broadcasting
show. Incorporating lead-in effects in the
program j may require both slots t and t+1, but
formulation described above can be done in
only the decision variable associated with slot t
several ways. One way can be described as
is 1 while the one associated with slot t+1
follows: let
the total ratings) obtained by assigning program
and show k starting in slot u. Let denote the
j to time slot t. If program j occupies more than
set of all possible lead-in conditions. The binary
over all slots the program covers. Let A denote
the set of all feasible assignments (j, t). Let the
decision variable y jtku is 1 if in a schedule the
lead-in condition ( j , t , k , u ) is indeed in effect
and 0 otherwise. Let π ′jtku denote the additional
binary variable b jtv be 1 if time slot v is filled
contribution to the objective function if the
remains zero). Let π jt denote the total profit (or
one slot, then π jt denotes the profit generated
by program j or by part of program j because of
( j , t , k , u ) refer to a lead-in
condition that involves show j starting in slot t
lead-in condition is satisfied. The objective
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
function in the formulation above has to be
∑
expanded with the term
( j ,t , k ,u )∈
π ′jtku y jtku
attention in the research literature, and that are
discussed in this tutorial, are of the static
for ( j , t , k , u ) ∈
− y jtku + x jt + xku ≤ 1
y jtku ∈ {0,1}
scheduling problems analyzed in the literature.
Most of the problems that have received
and the following constraints have to be added:
y jtku − x jt ≤ 0 for ( j , t , k , u ) ∈
y jtku − xku ≤ 0
37
deterministic type. The main reason is that these
problems are somewhat easier to analyze.
However, even though these problems are easier
for ( j , t , k , u ) ∈
to analyze than their dynamic counterparts, they
are still, more often than not, NP-Hard.
for ( j , t , k , u ) ∈
Static deterministic problems can often be
The first set of constraints ensures that y jtku can
formulated relatively easily as mathematical
never be 1 when x jt is zero. The second set of
programs (in particular, as Mixed Integer
constraints is similar. The third set of constraints
Prorams or MIPs) and the typical solution
ensures that y jtku never can be 0 when both x jt
techniques most often used for such integer
and xku are equal to 1.
A fair amount of research has been done
programs are Branch-and-Bound and Cutting
over the years focusing on the scheduling of
problems can at times also be formulated as
network television programs, see Horen (1980),
constraint programs. If that is the case, they can
Reddy, Aronson and Stam (1998), and Hall, Liu,
be
and Sidney (1998). Actually, research attention
programming techniques, see Goltz and Matzke
has
of
(2001). We have also seen that a variety of static
see
deterministic scheduling problems (including
Bollapragada, Bussieck, and Mallik (2004),
timetabling, interval scheduling, reservation
Bollapragada, Cheng, Phillips, Garbiras, Scholes,
problems, and tournament scheduling) are
Gibbs,
equivalent to graph theoretic node coloring
also
focused
commercials
and
in
on
the
broadcast
Humphreville
scheduling
networks,
(2002),
and
Plane methods. Static deterministic scheduling
solved
using
standard
constraint
problems, e.g., chromatic number, or arc
Bollapragada and Garbiras (2004).
coloring problems. If an equivalence can be
shown between a static deterministic scheduling
7. Conclusions
It is clear that scheduling plays a very
problem and a graph coloring problem (which
important role in many service industries. As
usually is strongly NP-Hard), then a host of
stated earlier, scheduling problems in practice
heuristics can be used that have been developed
may be either static or dynamic. The static
and analyzed in the graph theory and computer
problems are very similar to the so-called
science literature.
off-line scheduling problems studied in the
Many of the scheduling problems discussed
academic literature; the dynamic scheduling
in this tutorial have, in practice, either dynamic
problems are often similar to either the online
or stochastic aspects. One may be able to
scheduling
analyze such a more general problem as a
problems
or
the
stochastic
Markov Decision Process (MDP), which one
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
38
may be able to formulate as a Linear Program
development of decision support systems for
(LP). However, the transformation of an MDP
scheduling
into an LP may bring about an explosion in the
development of such a decision support system
dimension of the problem. So, even though an
is typically a major endeavour. The database and
LP may be solvable in polynomial time, since
user interface requirements are usually quite
the transformation of the MDP into the LP is not
elaborate. See, for example, in Figure 3 the user
polynomial, it is still very hard to solve the MDP.
interface of a system developed by MultiModal
One also may be able to formulate a dynamic
Applied Systems for train scheduling.
applications
in
services.
The
scheduling problem as an online scheduling
Moreover, such decision support systems
problem. However, such a problem typically
typically have to allow for seamless interactive
does not allow for an exact optimization
optimization. There are numerous software
technique. Research in such problems have led
companies
to interesting heuristics and hybrid techniques in
development of software and decision support
practice.
systems for the service industries. For example,
In
scheduling
applications
in
service
that
are
specializing
in
the
Mimosa Scheduling Software markets a host of
industries, many different types of algorithms
scheduling
are in use, from the very simplistic to the very
academic and education markets. Their systems
sophisticated. The more sophisticated techniques
focus
include
Integer
assignments, and so on. The Totalview System
Programming formulations, that are based on
of the IEX Corp. is a system used to schedule
algorithms
for
Mixed
on
software
teacher
applications
scheduling,
for
the
classroom
Branch-and-Bound and on Branch-and-Cut.
the shifts of operators in call centers. The
These methods usually have as goal to find a
MultiRail System of MultiModal Applied
very optimum solution. That is, they are applied
Systems is a widely used decision support
when the data available for the problem are
system for train scheduling. Jeppesen Systems, a
known with a high degree of certainty and it is
unit of Boeing, develops decision support
worthwhile finding the best possible solution.
systems for the scheduling of aircraft and for
Clearly, the amount of time required for
crew scheduling. Galactix Software markets
developing the code as well as the computation
their Team Sports Scheduling System. Besides
time needed when running the code tend to be
these more generic systems that are being
significant. Especially in the transportation
marketed by the various software companies
industries these techniques are widely used. In
(systems that still may need a significant amount
other application areas, the use of heuristics is
of customization upon installation), many purely
significantly more common. The heuristics
application-specific
include local search techniques, priority rules, as
developed as well. For example, the Bremen
well as hybrid (decomposition) techniques that
Public Transport Authority developed its own
combine priority rules with local search.
system, referred to as DISSY, in order to
There is an entire industry dedicated to the
schedule its drivers.
systems
have
been
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
39
Figure 3. User interface of decision support system for train scheduling
Future research on scheduling in service
industries may focus on hybrid and interactive
techniques
that
are
useful
for
systems
activities scheduling. International Journal of
Production Research, 49 (22) : 6677–6689.
[3] A. Anagnostopoulos, L. Michel, P. Van
implementations in practice, e.g., methods that
Hentenryck & Y. Vergados (2003). A
combine constraint programming techniques
Simulated
with optimization techniques or local search
Traveling
techniques (such as genetic algorithms).
Proceedings CPAIOR’03.
Annealing
Approach
Tournament
to
Problem.
the
In
[4] C. Archetti, M.G. Speranza & A. Hertz
Acknowledgments
The work is partially supported by the
National Natural Science Foundation of China
under Grant No. 71301115, Grant No.71431005.
(2006). A tabu search algorithm for the split
delivery
vehicle
routing
problem.
Transportation Science, 40(1): 64–73.
[5] C. Archetti, M.G. Speranza & M.W.P.
Savelsbergh (2008). An optimization-based
References
heuristic for the split delivery vehicle routing
[1] A. Aggoun & A. Vazacopoulos (2004).
problem. Transportation Science, 42(1): 22–
Solving Sports Scheduling and Timetabling
31.
Problems with Constraint Programming. In: S.
[6] P. Augerat, J.M. Belenguer, E. Benavent, A.
Butenko, J. Gil-Lafuente & P. Pardalos (eds.),
Corberán, D. Naddef & G. Rinaldi (1998).
Economics, Management and Optimization
Computational results with a branch and cut
in Sports. Springer, New York.
code for the capacitated vehicle routing
[2] D. Ait-Kadia, J.-B. Menye & H. Kane (2011).
problem. R. 495, Dicembre 1998, Istituto di
Resources assignment model in maintenance
Analisi dei Sistemi ed Informatica, CNR,
Roma, Italy.
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
40
[7] R. Baldacci, A. Mingozzi & R. Roberti
[16] J. Belien & E. Demeulemeester (2007).
(2012). Recent exact algorithms for solving
Building cyclic master surgery schedules
the vehicle routing problem under capacity
with
and time window constraints. European
European Journal of Operational Research,
Journal of Operational Research, 218(1): 1–6.
[8] C. Bandi & D. Bertsimas (2012). Tractable
leveled
resulting
bed
occupancy.
176: 1185–1204.
[17] R.E. Bixby & E.K. Lee (1998). Solving a
stochastic analysis in high dimensions via
truck
robust
Mathematical
branch-and-cut. Operations Research, 46:
[9] Ph. Baptiste, C.L. Le Pape & W. Nuijten
[18] J.T. Blake & M.W. Carter (1997). Surgical
optimization.
problem
using
355–367.
Programming,134(1): 23–70.
(2001).
dispatching
Constraint-Based
Scheduling.
process scheduling: a structured review.
Journal of the Society for Health Systems,
Kluwer Academic Publishers, Boston.
[10] C. Barnhart, P. Belobaba & A. Odoni
5(3):17–30.
(2003). Applications of Operations Research
[19] J.T. Blake & M.W. Carter (2002). A
in the Air Transport Industry. Transportation
goal-programming approach to resource
Science, 37: 368–391.
allocation in acute-care hospitals. European
[11] C. Barnhart & G. Laporte (eds.) (2006).
Handbooks in Operations Research and
Management
Science.
Volume
14
–
Transportation, North-Holland, Amsterdam.
[12] C. Barnhart, F. Lu & R. Shenoi (1998).
Integrated Airline Schedule Planning. In: G.
Journal of Operational Research, 140: 541–
561.
[20] J.T. Blake & J. Donald (2002). Using
Integer Programming to Allocate Operating
Room Time at Mount Sinai Hospital.
Interfaces, 32(2): 63–73.
Yu (ed.), Operations Research in the Airline
[21] J. Blazewicz, W. Cellary, R. Slowinski & J.
Industry, Chapter 13, pp. 384–403. Kluwer
Weglarz (1986). Scheduling under resource
Academic Publishers, Boston.
constraints - deterministic models. Annals of
[13] J.J. Bartholdi III, J.B. Orlin & H.D. Ratliff
Operations Research, Vol. 7, Baltzer, Basel.
Integer
[22] L. Bodin, B. Golden, A. Assad & M. Ball
Programs with Circular Ones. Operations
(1983). Routing and Scheduling of Vehicles
(1980).
Cyclic
Scheduling
via
and Crews: The State of the Art. Computers
Research, 28: 1074–1085.
[14] T. Bartsch, A. Drexl & S. Kr¨oger (2006).
Scheduling the professional soccer leagues of
austria
and
germany.
Computers
and
random
scheduling
durations.
with
discrete
Mathematics
Operations Research, 36(2): 240–257.
[23] S. Bollapragada, M. Bussieck & S. Mallik
(2004). Scheduling commercial videotapes in
broadcast television. Operations Research, 52:
Operations Research, 33: 1907–1937.
[15] M.A. Begen & M. Queyranne (2011).
Appointment
and Operations Research, Vol. 10, 63–211.
of
679–689.
[24] S. Bollapragada, H. Cheng, M. Phillips, M.
Garbiras, M. Scholes, T. Gibbs & M.
Humphreville (2002). NBC’s Optimization
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
Systems Increase Revenues and Productivity.
[25] S. Bollapragada & M. Garbiras (2004).
Scheduling
commercials
[33] E. Burke & P. De Causmaecker (eds.)
(2003).
Interfaces, 32(1): 47–60.
on
broadcast
41
The
Practice
and
Theory
of
Automated Timetabling IV. Selected Papers
from the 4th International Conference on the
television. Operations Research, 52: 337–
Practice
345.
Timetabling, Gent, Belgium, August 2002.
[26] K.I. Bouzina & H. Emmons (1996). Interval
scheduling on identical machines. Journal of
and
Theory
of
Automated
Lecture Notes in Computer Science No. 2749,
Springer Verlag, Berlin.
[34] E. Burke, P. De Causmaecker, G. Vanden
Global Optimization, 9: 379–393.
[27] M.L. Brandeau, F. Sainfort & W.P.
Berghe & H. Van Landeghem (2004). The
Pierskalla (eds.) (2004). Operations Research
state of the art of nurse rostering. Journal of
and Health Care – A Handbook of Methods
Scheduling, 7: 441–499.
[35] E. Burke, D.G. Elliman, P.H. Ford & R.F.
and Applications, Springer.
[28] D. Brelaz (1979). New Methods to Color
Weare (1996). Exam Timetabling in British
the Vertices of a Graph. Communications of
Universities: A Survey. The Practice and
the ACM, 22: 251–256.
Theory of Automated Timetabling, E. Burke
[29] G.G. Brown, G.W. Graves & D. Ronen
and P. Ross (eds.), Lecture Notes in
(1987). Scheduling ocean transportation of
Computer Science,Vol.1153, Springer Verlag,
crude oil. Management Science, 33: 335–346.
Berlin.
[30] P. Brucker, A. Drexl, R. Mõhring, K.
[36] E. Burke & W. Erben (eds.) (2001). The
Neumann & E. Pesch (1999). Resource
Practice
constrained project scheduling: notation,
Timetabling III. Selected Papers from the
classification,
methods.
3rd International Conference on the Practice
European Journal of Operational Research,
and Theory of Automated Timetabling (held
112: 3–41.
August 2000 in Konstanz, Germany), Lecture
models,
and
[31] W.J. Burgess & R.E. Busby (1992).
Personnel Scheduling. In: G. Salvendy (ed.),
Handbook of Industrial Engineering chapter
81, pp. 2155–2169. J. Wiley, New York.
[32] E. Burke & M.W. Carter (eds.) (1998). The
Practice
and
Theory
of
Automated
and
Theory
of
Automated
Notes in Computer Science, Vol. 2079,
Springer Verlag, Berlin.
[37] E. Burke & P. Ross (eds.) (1996). The
Practice
and
Theory
of
Automated
Timetabling. Selected Papers from the 1st
International Conference on the Practice and
Timetabling II. Selected Papers from the 2nd
Theory
International Conference on the Practice and
Edinburgh, August 1995. Lecture Notes in
Theory of Automated Timetabling (held
Computer Science, Vol. 1153, Springer
August 1997 in Toronto), Lecture Notes in
Verlag, Berlin.
Computer Science No. 1408, Springer Verlag,
Berlin.
of
Automated
Timetabling,
[38] E. Burke & H. Rudova (eds.) (2006). The
Practice
and
Theory
of
Automated
Timetabling VI. Selected Papers from the 6th
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
42
International Conference on the Practice and
[47] M.W. Carter & C.A. Tovey (1992). When is
Theory of Automated Timetabling, Brno,
the classroom assignment problem hard?
Czech Republic, August 2006. Lecture Notes
Operations Research, 40: S28–S39.
in Computer Science, Vol. 3867, Springer.
[39] E. Burke & M. Trick (eds.) (2004). The
Practice
and
Theory
of
Automated
Timetabling V. Selected Papers from the 5th
International Conference on the Practice and
Theory
of
Automated
Timetabling,
[48] A.M. Caunhye, X. Nie & S. Pokharel
(2012). Optimization models in emergency
logistics: a literature review. Socio-Economic
Planning Sciences, 46(1): 4–13.
[49] T. Cayirli & E. Veral (2003). Outpatient
scheduling in health care: a review of
Pittsburgh, U.S.A. August 2004. Lecture
literature.
Production
and
Notes in Computer Science, Vol. 3616,
Management, 12(4): 519–549.
Operations
[50] T. Cayirli, K. Khiong Yang & S.A. Quek
Springer Verlag, Berlin.
[40] R.N. Burns & M.W. Carter (1985). Work
(2012). A universal appointment rule in the
force size and single shift schedules with
presence
variable demands. Management Science, 31:
Production and Operations Management,
599–608.
21(4): 682–697.
[41] R.N. Burns & G.J. Koop (1987). A modular
of
no-shows
and
walk-ins.
[51] A. Ceder, B. Golany & O. Tal (2001).
approach to optimal multiple shift manpower
Creating bus timetables
scheduling. Operations Research, 35: 100–
synchronization.
110.
Part A: Policy and Practice, 35(10): 913–928.
[42] S. Butenko, J. Gil-Lafuente & P. Pardalos
with
maximal
Transportation
Research
[52] M. Christiansen (1999). Decomposition of a
and
combined inventory and time constrained
Optimization In Sports. Springer Verlag,
ship routing problem. Transportation Science,
Berlin.
33: 3–16.
(2004).
Economics,
Management
[43] A.M. Campbell, D. Vandenbussche & W.
[53] M. Christiansen, K. Fagerholt & D. Ronen
Hermann (2008). Routing for relief efforts.
(2004). Ship routing and scheduling – status
Transportation Science, 42(2): 127–145.
and perspective. Transportation Science, 38:
[44] A. Caprara, M. Fischetti & P. Toth (2002).
1–18.
Modeling and solving the train timetabling
[54] M. Christiansen, K. Fagerholt, B. Nygreen
problem. Operations Research, 50: 851–861.
& D. Ronen (2007). Maritime Transportation.
[45] M. Carey & D. Lockwood (1995). A model,
In: C. Barnhart and G. Laporte (eds.),
algorithms and strategy for train pathing.
Handbooks in Operations Research and
Journal of the Operational Research Society,
Management
46: 988–1005.
Transportation, pp.189–284, North-Holland,
[46] M.W. Carter (1986). A survey of practical
applications
of
examination
timetabling
Science,
Volume
14
–
Amsterdam.
[55] J.-F. Cordeau, G. Stojkovic, F. Soumis & J.
algorithms. Operations Research, 34: 193–
Desrosiers (2001). Benders Decomposition
202.
for Simultaneous Aircraft Routing and Crew
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
Scheduling. Transportation Science, 35: 375–
[65] H. Emmons & R.N. Burns (1991). Off-day
scheduling
388.
[56] F.H. Cullen, J.J. Jarvis & H.D. Ratliff
(1981). Set partitioning based heuristics for
interactive routing. Networks, 11: 125–144.
43
with
hierarchical
worker
categories. Operations Research, 39: 484–
495.
[66] M. Fischetti, A. Lodi, S. Martello & P. Toth
[57] J.R. Daduna, I. Branco & J.M. Pinto Paixao
(2001). A polyhedral approach to simplified
(1995). Computer Aided Scheduling of
crew scheduling and vehicle scheduling
Public Transport. Lecture
problems. Management Science, 47(6): 833–
Notes
in
Economics and Mathematical Systems No.
850.
[67] M.L. Fisher & M.B. Rosenwein (1989). An
430, Springer Verlag, Berlin.
[58] E.L. Demeulemeester & W.S. Herroelen
(2002). Project Scheduling: A Research
Handbook, Kluwer Academic Publishers,
interactive
optimization
system
for
bulk-cargo ship scheduling. Naval Research
Logistics, 36: 27–42.
[68] P.M. Francis, K.R. Smilowitz & M. Tzur
Boston, MA.
[59] B. Denton, J. Viapiano & A. Vogl (2007).
(2008). The period vehicle routing problem
Optimization of surgery sequencing and
and its extensions. The vehicle routing
scheduling
problem: latest advances and new challenges,
decisions
under
uncertainty.
Health Care Management Science, 10:13–24.
73–102, Springer, US.
[60] G. Desaulniers, J. Desrosiers, Y. Dumas, M.
[69] R. Freling, A.P.M. Wagelmans & J.M.P.
M. Solomon & F. Soumis (1997). Daily
Paixao (2001). Models and algorithms for
aircraft routing and scheduling. Management
single-depot
Science, 43: 841–855.
Transportation Science, 35(2): 165–180.
vehicle
scheduling.
[61] M. Desrochers & J.-M. Rousseau (1992).
[70] D.R. Fulkerson (1962). Expected critical
Computer Aided Scheduling of Public
path lengths in PERT type networks.
Transport. Lecture Notes in Economics and
Mathematical Systems No. 386, Springer
Verlag, Berlin.
Operations Research, 10: 808–817.
[71] M.R. Garey, D.S. Johnson, B.B. Simons &
R.E. Tarjan (1981). Scheduling unit-time
[62] D. de Werra (1988). Some models of graphs
tasks with arbitrary release times and
for scheduling sports competitions. Discrete
deadlines. SIAM Journal of Computing, 10:
Applied Mathematics, 21: 47–65.
256–269.
[63] S.E. Elmaghraby (1967). On the expected
duration
of
PERT
type
networks.
Management Science, 13: 299–306.
[64] H. Emmons (1985). Workforce scheduling
[72] M. Gawande (1996). Workforce Scheduling
Problems with Side Constraints.
Paper
presented at the semiannual INFORMS
meeting in Washington DC , May 1996.
with cyclic requirements and constraints on
[73] H.J. Goltz & D. Matzke (2001). ConBaTT –
days off, weekends off, and work stretch. IIE
Constraint Based TimeTabling. In: E. Burke
Transactions, 17: 8–16.
and W. Erben (eds.), The Practice and Theory
of Automated Timetabling III. Selected
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
44
Papers from the 3rd International Conference
[82] E. Hans, G. Wullink, M. van Houdenhoven
on the Practice and Theory of Automated
& G. Kazemier (2008). Robust surgery
Timetabling, Lecture Notes in Computer
loading. European Journal of Operational
Science, Vol. 2079, Springer Verlag, Berlin.
Research, 185: 1038–1050.
[74] M. Grönkvist (2002). Using Constraint
Propagation
to
Accelerate
Column
[83] R. Hassin & S. Mendel (2008). Scheduling
arrivals to queues: a single-server model with
Generation in Aircraft Scheduling. Technical
no-shows. Management
Report 2002, Computing Science Department,
565–572.
Chalmers
University
of
Technology,
[75] D. Gupta & B. Denton (2008). Appointment
scheduling in health care: challenges and
opportunities.
IIE
Transactions,
40(9):
basketball
conference-revisited.
Operations Research, 49: 163–168.
[85] M. Henz, T. Müller & S. Thiel (2004).
Global
constraints
for
round
robin
tournament scheduling. European Journal of
800–819.
[76] D. Gupta & W.Y. Wang (2012). Patient
appointments
54(3):
[84] M. Henz (2001). Scheduling a major
college
Gothenburg, Sweden.
Science,
in
ambulatory
care.
In:
Operational Research, 153: 92–101.
[86] J.
Holguín-Veras,
M.
Jaller,
L.N.V.
Handbook of Healthcare System Scheduling,
Wassenhove, N. Pérez & T. Wachtendorf
168: 65–104. Springer, New York,.
(2012).
On
the
unique
features
of
[77] K. Haase, G. Desaulniers & J. Desrosiers
post-disaster humanitarian logistics. Journal
(2001). Simultaneous vehicle and crew
of Operations Management, 30 (7): 494–506.
scheduling in urban mass transit systems.
[87] J. Holguín-Veras, N. Pérez, M. Jaller,
L.N.V. Wassenhove & F. Aros-Vera (2013).
Transportation Science, 35(3): 286–303.
[78] K. Hãgele, C.O. Dúnlaing & S. Riis (2001).
On the appropriate objective function for
TV
postdisaster humanitarian logistics models.
commercials. Electronic Notes in Theoretical
Journal of Operations Management, 31(5):
Computer Science, Vol. 40.
262–280.
The
complexity
of
scheduling
[79] N.G. Hall, W.-P. Liu & J.B. Sidney (1998).
[88] J.H. Horen (1980). Scheduling of network
Scheduling in broadcast networks. Networks,
television programs. Management Science,
32: 233–253.
26: 354–370.
[80] R. Hall (2012). Handbook of Healthcare
[89] V.N. Hsu, R. de Matta & C.-Y. Lee (2003).
System Scheduling, Vol. 168, Springer, New
Scheduling patients in an ambulatory surgical
York.
center. Naval Research Logistics, 50: 219–
[81] J.-P. Hamiez & J.-K. Hao (2001). Solving
238.
the Sports League Scheduling Problem with
[90] M. Huang, K. Smilowitz & B. Balcik
Tabu Search. In: A. Nareyek (ed.), Local
(2012). Models for relief routing: equity,
Search for Planning and Scheduling, Lecture
efficiency and efficacy.
Notes in Computer Science, 2148: 24–36.
research part E: logistics and transportation
Springer Verlag, Berlin.
review , 48 (1): 2–18.
Transportation
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
[91] D.
Huisman,
R.
Freling
&
A.P.M.
45
[100] G. Laporte & S. Desroches (1984).
Wagelmans (2005). Multiple depot integrated
Examination
timetabling
by
computer.
vehicle and crew scheduling. Transportation
Computers and Operations Research, 11:
Science,39 (4): 491–502.
351–360.
(1993).
[101] C.G. Lee, M.A. Epelman, C.C. White III &
Multiple-shift workforce scheduling under
Y.A. Bozer (2006). A shortest path approach
the 3-4 compressed workweek with a
to the multiple-vehicle routing problem with
hierarchical workforce.
split pick-ups. Transportation research part B:
[92] R.
Hung
&
H.
Emmons
IIE Transactions,
Methodological, 40 (4): 265–284.
25: 82–89.
[93] H.Z. Jia, F. Ordonez & M. Dessouky (2007).
[102] C.-Y.
Lee
&
L.
Lei
(2001).
A modeling framework for facility location of
Multiple-project scheduling with controllable
medical services for large-scale emergencies.
project duration and hard resource constraint:
IIE transactions, 39 (1): 41–55.
Some solvable cases. Annals of Operations
[94] M.Z. Jin, K. Liu & R.O. Bowden (2007). A
Research, 102 (1-4): 287–307.
two-stage algorithm with valid inequalities
[103] R.E. Marsten & F. Shepardson (1981).
for the split delivery vehicle routing problem.
Exact solution of crew scheduling problems
International
Journal
of
Production
using the set partitioning model: recent
successful applications. Networks, 11: 165–
Economics, 105 (1): 228–242.
[95] G.C. Kaandorp & G. Koole (2007).
177.
Optimal outpatient appointment scheduling.
[104] C.U. Martel (1982a). Scheduling Uniform
Health Care Management Science, 10 (3):
Machines with Release Times, Deadlines and
217–229.
Due times. In: M.A. Dempster, J.K. Lenstra
[96] P.
Keskinocak
Scheduling
of
&
S.
Tayur
time-shared
jet
(1998).
and
A.H.G.
Rinnooy
Kan
(Eds.),
aircraft.
Deterministic and Stochastic Scheduling,
pp.89–99. Reidel, Dordrecht.
Transportation Science, 32: 277–294.
[97] K.J. Klassen & R. Yoogalingam (2009).
[105] C.U.
Martel
(1982b).
Preemptive
outpatient
scheduling with release times, deadlines and
appointment services with a simulation
due times. Journal of the Association of
Improving
performance
optimization approach.
in
Production
and
Operations Management, 18 (4): 447–458.
[98] R. Kolish (1995). Project Scheduling under
Resource
Constraints.
Physica-Verlag
(Springer Verlag), Heidelberg.
[99] L.R. LaGanga & S.R. Lawrence (2012).
Computing Machinery, 29: 812–829.
[106] C. Martin, D. Jones & P. Keskinocak
(2003).
Optimizing
on-demand
aircraft
schedules for fractional aircraft operators.
Interfaces, 33 (5): 22–35.
[107] M. Mesquita & J. Paixao (1999). Exact
Appointment overbooking in health care
algorithms
clinics to improve patient service and clinic
scheduling
for
performance. Production and Operations
multicommodity
Management, 21 (5): 874–888.
formulations.
the
multi-depot vehicle
problem
network
based
flow
Computer-aided
on
type
transit
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
46
scheduling,
221–243.
Springer
Berlin
system: background, current practice and
model formulation. Maritime Policy and
Heidelberg.
[108] W.P. Millhiser & E. Veral (2014).
Designing appointment system templates
Management, 19: 177–187.
[117] PERT
(1958).
Program
Evaluation
targets.
Research Task. Phase I Summary Report,
Working Paper, Zicklin School of Business,
Special Projects Office, Bureau of Ordnance,
Baruch College CUNY, New York, NY.
Department of the Navy, Washington, D.C.
[109] R. Miyashiro & T. Matsui (2003).
[118] V.V. Peteghem & M. Vanhoucke (2014).
with
operational
performance
Round-Robin Tournaments with a Small
An
Number
metaheuristics
of
Breaks.
Department
of
experimental
investigation
for
of
the
multi-mode
project
scheduling
Mathematical Informatics Technical Report
resource-constrained
METR
problem on new dataset instances. European
2003-29,
Graduate
School
of
Information Science and Technology, the
Journal of Operational Research, 235 (1): 62–
University of Tokyo, Tokyo, Japan.
72.
[110] J.G. Moder & C.R. Philips (1970). Project
[119] M.E. Posner (1985). Minimizing weighted
Management with CPM and PERT. Van
completion times with deadlines. Operations
Research, 33: 562–574.
Nostrand Reinhold, New York.
[111] J.M. Mulvey (1982). A classroom/time
[120] S.K. Reddy, J.E. Aronson & A. Stam
assignment model. European Journal of
(1998).
Operational Research, 9: 64–70.
optimally
[112] R. Nanda & J. Browne (1992). Introduction
to Employee Scheduling. Van Nostrand
[113] G.L. Nemhauser & M. Trick (1998).
major
college
basketball
Neumann,
C.
Schwindt
&
J.
Zimmermann (2001). Project Scheduling
with Time Windows and Scarce Resources.
Lecture
Notes
television.
programs
Management
Science, 44: 83–102.
[121] J.C. Regin (1999). Sports Scheduling and
in
Economics
INFORMS meeting in Cincinnati, Ohio.
[122] C.C. Ribeiro & F. Soumis (1994). A
column
conference. Operations Research, 46: 1–8.
[114] K.
for
scheduling
Constraint Programming. Paper presented at
Reinhold, NY.
Scheduling a
SPOT:
and
generation
to
the
multiple-depot vehicle scheduling problem.
Operations Research, 42 (1): 41–52.
[123] L.W. Robinson & R.R. Chen (2010). A
comparison of traditional and open-access
Mathematical Systems No. 508, Springer
policies
Verlag, Berlin.
Manufacturing
[115] J.H. Patterson (1984). A comparison of
approach
for
appointment
scheduling.
&
Operations
Service
Management, 12 (2): 330–346.
exact approaches for solving the multiple
[124] L.M. Rousseau, M. Gendreau & G. Pesant
constrained resources rroject scheduling
(2002). A general approach to the physician
problem. Management Science, 30: 854–867.
rostering problems.
[116] A.N. Perakis & W.M. Bremer (1992). An
operational tanker scheduling optimization
Research,
Annals of Operations
115: 193–205.
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
[125] M. Sasieni (1986). A note on PERT times.
[126] A. Schaerf (1999). Scheduling sport
using
constraint
Science 2079: 242–253, Springer Verlag,
Berlin.
Management Science, 30: 1652–1653.
tournaments
47
logic
[134] R. Velasquez, R.T. Melo & K.-H. Kuefer
(2008).
Tactical
Scheduling:
programming. Constraints, 4: 43–65.
[127] J. Schönberger, D.C. Mattfeld & H. Kopfer
Operating
Efficient
Theatre
Appointment
Assignment. In: J. Kalcsics & S. Nickel (eds.),
(2004). Memetic algorithm timetabling for
Operations
non-commercial sport leagues. European
Proceedings of the GOR 2007 Conference
Journal of Operational Research, 153: 102–
Research
Proceedings
2007.
(Saarbruecken), pp. 303–310, Springer.
[135] S. Voss & J.R. Daduna (2001). Computer
116.
[128] J.A.M. Schreuder (1992). Combinatorial
Aided Scheduling of Public Transport.
aspects of construction of competition dutch
Lecture
professional
Mathematical Systems No. 505, Springer
football
leagues.
Discrete
Notes
in
Economics
and
Verlag, Berlin.
Applied Mathematics, 35: 301–312.
[129] G. Stojkovic, F. Soumis, J. Desrosiers & M.
[136] M.R. Walker & J.S. Sayer (1959). Project
Solomon (2002). An Optimization Model for
Planning and Scheduling. Report 6959, E.I.
a Real-Time Flight Scheduling Problem.
du Pont de Nemours & Co., Inc., Wilmington,
Transportation Research Part A: Policy and
Del.
[137] J. Weglarz, J. Jozefowska, M. Mika & G.
Practice, 36: 779–788.
[130] M. Stojkovic, F. Soumis & J. Desrosiers
(1998).
The
operational
airline
crew
Walig´ora (2011). Project scheduling with
finite or infinite number of activity processing
scheduling problem. Transportation Science,
modesA
32: 232–245.
Operational Research, 208 (3): 177–205.
[131] F.B. Talbot (1982). Resource constrained
project
scheduling
trade-offs:
the
with
time-resource
nonpreemptive
case.
Management Science, 28: 1197–1210.
survey.
European
Journal
of
[138] J.D. Wiest & F.K. Levy (1977). A
Management
Guide
to
PERT/CPM.
Prentice-Hall, Englewood Cliffs.
[139] N.H.M. Wilson (1999). Computer Aided
[132] J.M. Tien & A. Kamiyama (1982). On
Scheduling of Public Transport. Lecture
manpower scheduling algorithms. SIAM
Notes in Economics and Mathematical
Review, 24: 275–287.
Systems No. 471, Springer Verlag, Berlin.
[133] M. Trick (2001). A Schedule-and-Break
[140] C. S. Wong, F. T. S. Chan & S. H. Chung
Approach to Sports Scheduling. In: E.K.
(2013).
Burke and W. Erben (eds.), Practice and
approach considering multiple resources and
Theory of Automated Timetabling III.
preventive maintenance tasks. International
Selected
Journal of Production Research, 51 (3): 883–
Papers of Third
Conference
PATAT
2000
International
(Konstanz,
Germany), Lecture Notes in Computer
A
joint
production
scheduling
896.
[141] A. Wren & J.R. Daduna (1988). Computer
Aided Scheduling of Public Transport.
Michael Pinedo et al.: Scheduling in the Service Industries: An Overview
J Syst Sci Syst Eng
48
Lecture
Notes
in
Economics
and
Christos Zacharias is a visiting assistant
Mathematical Systems No. 308, Springer
professor
of
management
science
at
the
Verlag, Berlin.
University of Miami. He received his PhD in
[142] G. Yu (ed.) (1998). Operations Research in
operations management from the Stern School
the Airline Industry. Kluwer Academic
of Business at New York University, and his BSc
Publishers, Boston.
in Mathematics from the University of Athens,
[143] C. Zacharias & M. Pinedo (2014a).
Greece. His research focuses on designing and
Appointment scheduling with no-shows and
optimizing service operations, with an emphasis
overbooking. Production and Operations
on health care delivery. Broader areas of interest
Management, 23 (5): 788–801.
include stochastic modeling, applied probability,
[144] C. Zacharias & M. Pinedo (2014b).
scheduling, and simulation.
Managing customer arrivals in service
systems with multiple servers. Working Paper,
Stern School of Business, New York
University, New York, NY.
Michael Pinedo received the Ir. degree in
mechanical
engineering
from
the
Delft
University of Technology, the Netherlands in
1973 and the M.Sc. and Ph.D. degrees in
operations research from the University of
California at Berkeley in 1978. He is the Julius
Schlesinger Professor of operations management
in the Department of Information, Operations and
Management Sciences (IOMS) at the Stern
School of Business at New York University. His
research focuses on the modeling of production
and service systems, and, more specifically, on
the planning and scheduling of these systems.
Recently, his research also has been focusing on
operational risk in financial services. He has
(co-)authored numerous technical papers on
these topics.
He is the author of the books
“Scheduling: Theory, Algorithms and Systems”
and “Planning and Scheduling in Manufacturing
and Services”. He is Editor of the Journal of
Scheduling.
Ning Zhu is currently an assistant professor at
College of Management and Economics, Tianjin
University in China. He received the B.S. and
M.S. degrees in information systems and
information management from the Xi'an
University of Technology in 2006 and 2009,
respectively, and the Ph.D. degree in
management science and engineering from the
Tianjin University in 2012. His research
interests include modeling and optimization of
transportation
systems
and
operations
management.