Models and Methods For Optimizing Baggage and Ground Handling at Airports
Models and Methods For Optimizing Baggage and Ground Handling at Airports
genehmigten Dissertation.
Acknowledgements iii
List of Tables vi
List of Figures ix
1 Introduction 1
1.1 Introduction to Airport Baggage Handling . . . . . . . . . . . . . . . . . . 1
1.2 Introduction to Airport Ground handling . . . . . . . . . . . . . . . . . . . 2
1.3 Scientific scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
iii
2.5 Outbound baggage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.5.1 Literature review . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.5.2 Mathematical model . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.5.3 Future challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.6 Transfer baggage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.6.1 Mathematical model . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.6.2 Future challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.7 Inbound baggage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.7.1 Literature review . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.7.2 Mathematical model . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.7.3 Future challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
iv
3.6.1.1 IBHP vs. heuristic . . . . . . . . . . . . . . . . . . . . . . 71
3.6.1.2 Performance of the heuristic . . . . . . . . . . . . . . . . . 73
3.6.2 Real-world scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5 The flexible break assignment problem for large tour scheduling prob-
lems with an application to airport ground handlers 118
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
5.2 Literature review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
5.3 Problem description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
5.4 Break Assignment Problem . . . . . . . . . . . . . . . . . . . . . . . . . . 127
v
5.5 Decomposition Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
5.5.1 Tour scheduling problem . . . . . . . . . . . . . . . . . . . . . . . . 137
5.5.2 Break assignment problem . . . . . . . . . . . . . . . . . . . . . . . 141
5.5.2.1 Implicit formulations . . . . . . . . . . . . . . . . . . . . . 142
5.5.2.2 Notation and components of implicit BAP formulations . . 142
5.5.2.3 Implicit BAP formulation based on the Bechtold and Ja-
cobs model . . . . . . . . . . . . . . . . . . . . . . . . . . 146
5.6 Computational Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
5.6.1 Performance MIP-Heuristic . . . . . . . . . . . . . . . . . . . . . . 152
5.6.2 Benefits of break flexibility . . . . . . . . . . . . . . . . . . . . . . . 154
5.7 Discussion and Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . 163
6 Conclusion 165
6.1 Summary and conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
6.2 Future research . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
A Appendix 169
A.1 Linearization of IBHP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
A.2 Measuring the service level . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
A.3 Simulation environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
A.4 Pseudo code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
A.5 Compact mixed integer program . . . . . . . . . . . . . . . . . . . . . . . . 172
A.6 Implicit BAP formulation based on Aykin’s approach . . . . . . . . . . . . 175
A.7 Implicit BAP formulation III . . . . . . . . . . . . . . . . . . . . . . . . . . 178
A.8 Low demand curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
B Abbreviations 182
vi
List of Tables
2.1 Airport actors on the baggage handling process and their responsibilities . 10
2.2 Literature on check-in counter allocation . . . . . . . . . . . . . . . . . . . 22
2.3 Literature on baggage handling . . . . . . . . . . . . . . . . . . . . . . . . 29
2.4 Literature on inbound baggage handling . . . . . . . . . . . . . . . . . . . 37
vii
4.6 Example 1 – objective function values for M-SCRP and 2-SCRP . . . . . . 94
4.7 Example 2 – objective function values for M-SCRP and 2-SCRP . . . . . . 95
4.8 Shift types and their corresponding shifts . . . . . . . . . . . . . . . . . . . 98
4.9 Two random demand scenarios . . . . . . . . . . . . . . . . . . . . . . . . . 98
4.10 Shift type regulations ‘R2’ and ‘R4’ . . . . . . . . . . . . . . . . . . . . . . 105
4.11 Average objective values of the evaluation . . . . . . . . . . . . . . . . . . 109
4.12 Comparison of traditional cyclic and flexible cyclic rostering (all data entries
are in terms of %) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
4.13 Value of the stochastic information for traditional cyclic and flexible cyclic
rostering (all data entries are in terms of %) . . . . . . . . . . . . . . . . . 113
4.14 Comparison of R-SCRP and 2-SCRP for flexible cyclic rostering and the
expected value of the perfect information (all data entries are in terms of %)115
4.15 Model size and runtime comparisons for R-SCRP and 2-SCRP . . . . . . . 117
5.1 Example of three different weekly templates for three workers with the
following shift types: E=early, L=late, X=day off . . . . . . . . . . . . . . 124
5.2 Sets and indices used in the formulation . . . . . . . . . . . . . . . . . . . 125
5.3 Cost parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
5.4 Break regulations in the staff scheduling literature . . . . . . . . . . . . . . 129
5.5 Parameter values for the fixed and flexible work templates . . . . . . . . . 149
5.6 Work templates – Fix and Flex . . . . . . . . . . . . . . . . . . . . . . . . 149
5.7 Settings for the break regulations . . . . . . . . . . . . . . . . . . . . . . . 150
5.8 Results for the CMIP and the MIP-heuristic for break regulation {S|V |T } 153
5.9 Results for the CMIP and the MIP-heuristic for break regulation {F |V |W } 154
5.10 Number of workers considered for the two demand levels . . . . . . . . . . 155
5.11 Results of the ThSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
5.12 Comparison of implicit BAP formulations for break regulation {S|V |T } . . 160
5.13 Comparison of implicit BAP formulations for break regulation {F |V |W } . 161
5.14 Average benefits from break flexibility . . . . . . . . . . . . . . . . . . . . . 162
viii
5.15 Comparison of break flexibility with respect to {F |V |W } . . . . . . . . . . 163
ix
List of Figures
x
xi
Introduction
Landside Airside
Airport’s
Baggage/Passenger Flow
Terminal Airline
Infrastructure Ground Handling Provider
With the steady increase in worldwide passenger numbers and ongoing globalization
1
1.2 Introduction to Airport Ground handling 2
(see IATA [70] and Airbus [4]), airports are increasingly exposed to an open and com-
petitive market where service quality is a crucial competitive factor to attract airlines and
their passengers. To simultaneously keep pace with the growth, airports are more and
more optimizing the use of their existing infrastructure before investing in cost intensive
expansion programs. A major factor for passenger satisfaction and an airport’s economic
performance is the quality of baggage handling. To analyze the quality, a key figure is the
number of so-called ‘mishandled bags’ where each mishandled bag corresponds to a report
of a delayed, damaged or pilfered bag (see SITA [115]). While the number of mishandled
bags worldwide peaked in 2007 with 46.9 million mishandled bags out of 2.48 billion pas-
sengers, the airport industry’s efforts led to a decrease of 21.8 million mishandled bags out
of 3.13 billion passengers in 2013. While considerable progress has been made, the costs
for mishandled bags are still 2.09 billion US dollars per year. This dissertation, in part,
focuses on the improvement of baggage flows from an airport’s planning perspective.
Airports
Airlines
Independent Handlers
costs constitute about 80 percent of a ground handling provider’s total costs (Müller et al.
[93]), the second key aspect of this dissertation is on an efficient planning and scheduling
of personnel with a focus on airport ground handling staff. Ground handling providers
often employ hundrets of workers, making the personnel scheduling a challening task. This
second focus of this dissertation is on personnel scheduling on a tactical and operational
planning level which is applied to airport ground handling.
is studied and opportunities for future research are highlighted. For planning problems
associated with inbound baggage handling we present a MIP-based model for their opti-
mization at a major European airport. A heuristic solution method is presented which is
capable of solving real world instances. In simulation studies, results of both methods are
compared against the airport’s current planning indicating a significant improvement in
key figures of both processes. In the context of this work, optimization algorithms for the
transfer and inbound baggage handling to support the manual planner were implemented
at a major European airport.
In the second part, the focus of this dissertation is on personnel scheduling problems.
We study personnel scheduling on the tactical and operational level. Airport ground han-
dlers often employ cyclic rosters to schedule their workforce (see Herbers [68]). In cyclic
rostering, the workforce is divided into groups of equal size and each group is assigned
the same schedule but lagged in time. Those plans are typically established for a tactical
planning period with a rather stable flight plan. At a major European ground handling
company, different cyclic rosters are used throughout the summer and winter flight season
in an innovative manner as they extend classical cyclic rostering by allowing for regulated
weekly adaptions of the workers schedules. We review the OR related literature on cyclic
rostering and propose a stochastic multi-stage program together with two relaxations to
tackle the beforementioneds problem for real world instance sizes. In a computational
study we compare our solution with the solution provided by the ground handling com-
pany, show the benefits of the new cyclic rostering approach in contrast to classical cyclic
rostering, and investigate the value of the stochastic solution for cyclic rostering. On the
operational planning level, we study the impact of shift and break flexibility in the context
of weekly personnel schedules. Allowing for flexiblity is a key issue for airport ground han-
dlers due to the high fluctuations in worker demand throughout the day. A mixed-integer
programming (MIP) model is presented that includes shift and days-off scheduling along
with break assignments for a multi-skilled workforce. As ground handling often requires
to plan hundreds of workers, we suggest a decomposition procedure to solve large-scale
instances in reasonable time. To achieve tractability, a two-stage decomposition proce-
dure separates the tour scheduling problem from the break assignment problem. To better
understand the literature and the models previously developed, a 3-field break classifica-
tion scheme is introduced. A complexity analysis of the resulting break regulations is
undertaken and computations are presented for a wide variety of scenarios using data
1.4 Overview 5
provided by a European airport ground handler company where over 500 instances were
investigated.
1.4 Overview
This dissertation is structured as follows. Chapter 2 provides an overview of baggage
handling processes, resources needed for baggage handling, as well as the different baggage
streams. Each of the baggage streams entails a planning problem to the airport for which
an optimization model is presented. A detailed investigation of the inbound handling is
given in chapter 3. An optimization method to tackle the problem is presented together
with insights into the implementation of the method at a major European airport justifying
the research’s relevance in practice. In chapters 4 and 5, we switch the perspective and
optimize personnel scheduling from a ground handling provider’s point of view on the
tactical and operational planning level. On the tactical level, chapter 4 introduces an
innovative scheme for cyclic rostering which turns out to be especially suitable for ground
handling, where cyclic rostering is often required due to union regulations. A stochastic
mathematical model formulation is presented and compared with traditional personnel
scheduling approaches. On the operational level, we present different mathematical models
and solution procedures to tackle the personnel scheduling problem with a special focus
on break assignment in chapter 5. Break regulations play an important role in ground
handling as workforce demand, based on the flight schedule, evidences large fluctuations.
We show the benefits as well as the disadvantages associated with flexible break regulations
when scheduling ground handlers. Chapter 6 summarizes this dissertation and gives an
outlook on future research.
Chapter 2
2.1 Introduction
Increasing passenger volume of about 4% per year (see The Boeing Company Corp. [122]),
rising operating costs and high competition force airports to optimize their operations. So
far, Operations Research (OR) has focused on the interface between airline and airport like
runway planning and gate assignment for aircraft (see e.g. Balakrishnan and Chandran
[19], Marín [89] and Dorndorf et al. [52]) and on the interface between passenger and
airline or airport, like check–in scheduling or passengers’ boarding and de-boarding (see
e.g. Bachmat et al. [15], Bachmat et al. [16], Bachmat and Elkin [14], Bachmat et al.
[17] and Steffen [116]). However, there have been little applications of OR to baggage
handling processes at airports, although at international hub airports, the planning and
control of passenger baggage is one of the major challenges. Planning the baggage handling
processes impacts key figures of the quality of an airport and consequently an increasing
interest in optimized baggage handling can be observed (see SITA [115]). Large European
airports like Frankfurt airport, Munich airport and Paris Charles de Gaulles are investing
in OR-based technology in order to improve and further automatize their baggage handling
processes.
The objective of this chapter is to close the gap between the planning problems for
operational baggage handling at airports and OR. For this purpose, we give a detailed
description of the baggage handling processes at airports and present relevant literature (a
6
2.1 Introduction 7
literature review for passenger operations can be found in Tošić [126]). Interdependencies
and similarities between the baggage handling processes and other airport processes such
as flight positioning or runway planning are discussed. To the best of our knowledge, this
is the first paper providing a detailed literature overview with a paper classification of
baggage processes at airports. The second main contribution of this paper is a generic
mathematical model formulation suitable for all discussed baggage handling processes. As
we will show, the generic problem is NP-hard which also delivers the complexity of all
baggage handling processes. For each handling process we present an adapted version of
the generic model showing its special structural properties. Thereby, we present a new
model formulation for check-in counter planing which can be connected to shift planning
models as well as new formulations for the transfer and inbound baggage handling.
In the remainder of this section we provide an overview of the physical parts of an
airport, introduce the four main baggage handling processes, the required resources to
undertake these processes as well as the actors in charge of planning and controlling them.
Landside and airside An airport can be separated into a landside and an airside
part (see Figure 2.1). The landside includes the access roads, car-parking lots, public
transportation stations and check-in. In constrast, the airside comprises all areas having
direct access to aircraft such as runways, taxiways and ramps. The connection between
the landside and the airside part is the terminal which contains the baggage handling
system (BHS), the central infrastructure for baggage handling. The BHS is an automated
baggage transportation system that also provides a storage to temporarily buffer baggage.
Bags can enter and leave the BHS from either landside or airside. Figure 2.1 shows the
inflows and outflows of baggage at the BHS. On the airside, incoming flights feed baggage
into the BHS which in the case of inbound baggage is forwarded to the baggage claim (4)
at the landside, or in the case of transfer baggage (3) is forwarded to handling facilities
where the baggage is loaded into containers for connecting flights. Together with Check-
in baggage brought in by newly arriving passengers at the landside, transfer baggage is
denoted as outbound baggage (4) as soon as it enters the BHS.
Baggage handling processes Hub airports have four major baggage handling pro-
cesses which are made up of the four baggage streams presented above: check-in baggage
handling, outbound baggage handling, transfer baggage handling and inbound baggage
2.1 Introduction 8
Landside Airside
Terminal
(1) Check-In baggage (§2.4) (2) Outbound baggage (§2.5)
BHS (3) Transfer baggage (§2.6)
(4) Claim baggage (§2.7) Inbound baggage
handling.
4. Inbound baggage handling: Besides transfer baggage, incoming flights also bring
along inbound baggage, which leaves the airport through the claiming hall on the
airport’s landside. Inbound baggage is transported from an incoming flight to an
infeed station and via the BHS send to a baggage claim carousel where it is picked
up by the passenger (4).
2.1 Introduction 9
In Sections 2.4 - 2.7 we will discuss the four baggage handling processes in more
detail. Next we briefly describe the resources required for and the actors involved in
baggage handling.
Resources In order to operate the baggage handling processes, resources are required.
The primary resource is the BHS. Further resources are baggage towing vehicles, baggage
containers and human resources (drivers, loaders, ramp agents,...). In Section 2.2, we
provide an overview of airport resources necessary for baggage handling and take a specific
look at the planning of human resources which are needed for all ground handling tasks.
Actors The baggage handling processes are influenced by different actors. While the
BHS’s inflows and outflows are planned and steered by the airport, the necessary handling
tasks are performed by groundhandler. At deregulated airports, ground handling services
have to be assigned not to one but to several companies. The processes of the airport
and the ground handler depend on the decisions made by the air traffic control. The
air traffic control influences all inflows and outflows of flights by coordinating the arrival
and departure times of planes. Finally, the airline is an actor which is responsible for
the check-in and therefore for the landside inflow as well as for other relevant processes
like container sorting. Table 2.1 provides an overview on how the main actors influence
the three baggage handling processes. This chapter focuses on these baggage processes
conducted by the airport as given in the upper block of the table.
The remainder of this chapter is structured as follows: Section 2.2 provides a detailed
description of the airport resources. The generic model suitable for all baggage handling
processes is presented in Section 2.3 and its complexity is established. The four main
baggage flows - check-in baggage, outbound baggage, transfer baggage, and inbound bag-
gage - are addressed in Section 2.4 - 2.7 where each section is structured as follows: First,
we provide a detailed description of the baggage handling (sub)processes and discuss the
relevant literature in subsection “Literature review”. Afterwards, in subsection “Mathe-
matical model” we formulate the problem as a mixed integer program. Finally, in the
paragraph “Future challenges” we point out open research questions and ideas for future
research. Finally, Section 2.8 summarizes our review and provides outlook for further
research directions.
2.2 Airport resources 10
Table 2.1: Airport actors on the baggage handling process and their responsibilities
trucks are used to load containers or bulk baggage in the cargo hold of airplanes.
Infeed station Infeed stations are the access points for baggage into the BHS. The
infeed stations are either the check-in counters at the landside (see (1) in Figure 2.1), or
2.2 Airport resources 12
the transfer and inbound baggage infeed stations at the airside (see (3) in Figure 2.1). At
check-in counters the bag is dropped either by an airline agent or in case of self check-in by
the passenger on the conveyor belt. At transfer infeed stations the unloading of bags from
the container to the conveyor belt is a manual process which is sometimes mechanically
supported by lift-aids. A check-in bag is given an identification tag that indicates its
itinerary and contains a unique bar code, the Baggage Source Message (BSM). The BSM
identifies a bag worldwide as long as the bag does not leave the airside of an airport.
The BHS transports baggage using the BSM to its handling facility, the central storage
system or to the baggage claim carousel. Le et al. [83] use simulation and binary search
to determine optimal infeed rates at infeed stations to minimize the bags’ flow time and
to maximize the throughput of bags.
Baggage sorting network Within the BHS the baggage transport can be realized by
different transportation devices. Conveyor belts as used at Terminal 1 of Munich Airport,
tilt trays used at Terminal 5 of London Heathrow Airport, totes or plastic boxes employed
at Terminal 2 of Munich Airport, or destination-coded vehicles (DCV), automatically
guided vehicles which carry one bag on rails to its destination as used in Toulouse Airport.
The latter three transportation systems are preferred because the sorting of baggage within
the BHS in order to automatically direct bags to its destination is more flexible and can be
easer realized (see Johnstone et al. [75]). Yu and Xu [138] discuss key issues when designing
a conveyor belt network and combining them with programmable control technologies.
Storage system Storage systems as part of the BHS have the task to store baggage
which can not be immediately directed to a handling facility. The storage consists of
several parallel lanes to store the baggage (see Figure 2.2). Each bag in a lane can be
individually sent to a handling facility. If the addressed bag is not stored in the front of the
lane and thus can not be immediately accessed, the baggage blocking the addressed bag
2.2 Airport resources 13
Handling facility At the handling facilities groundhandler load the arriving bag into
containers. The location of the handling facilities are either centralized or decentralized.
Typically, decentralized handling facilities are located very close to the departing flight,
that is directly in the pier or gate where the flight is positioned (see Abdelghany et al. [2]
and Ascó et al. [8]). In contrast, at centralized handling facilities all facilities are located
in one central baggage hall which is located in a more remote position from the departing
flight. While new airports like the Terminal 2 of Munich Airport use a centralized infras-
tructure, older airports such as Frankfurt Airport with its evolved infrastructure use both
centralized and decentralized handling facilities.
A handling facility is either an oval-shaped (baggage carousel) or a lane based (chute)
conveyor belt. While the first type can store more bags at a time on the conveyor belt, the
latter type requires less space in the baggage hall. The conveyor belt capacity is given by
the number of bags which can be placed on a conveyor belt at a time. Lane based handling
facilities are often used in a decentralized environment, which only allows one flight at a
time to be handled. Baggage carousels handling facilities allow to handle several flight
simultaneously.
In general, the number of flights handled at a handling facility is restricted to the
number of available working stations and parking positions for containers. A working
station comprises a segment of the handling facility’s conveyor belt. Containers or dollies
are lined up on parking positions parallel to the relevant segments of the conveyor belt.
Each working station is equipped with a display and a scanning device. The display
provides necessary information about the handled flight such as the number of bags, flight’s
departure time and the destination. The scanning device is used to check whether the bag
can be loaded into the container or not. For each bag to be loaded, a scan of the bag’s
BSM and the barcode of the destination container is performed. If the scans match
the bag is loaded into the container, else the bag remains on the conveyor belt of the
carousel or is placed next to the handling facility. For security reasons and to reduce the
number of mishandled bags, not more than one flight is handled at each working station
at a time. At most airports, the loading of baggage into containers is done manually
2.2 Airport resources 14
Baggage claim carousel Baggage claim carousels are the final point of a bag’s journey
from one airport to another. Baggage claim carousels are grouped in baggage claim halls
where arriving passengers pick up their baggage at landside. An infeed station for inbound
baggage is either connected via the BHS to more than one baggage claim carousel or the
infeed station is directly connected to a dedicated baggage claim carousel. While a direct
connection allows a faster processing of the baggage, a connection of an infeed station via
the BHS to more than one baggage claim carousel offers greater flexibility and allows to
buffer baggage.
Displays for passengers at each baggage claim carousel show the expected and served
flights at this carousel. The conveyor belt capacity depends on the size and shape of
the baggage claim carousel. The carousel shape differ between airports and terminals
(see Ghobrial et al. [64] for different carousel types). Different layouts for baggage claim
areas are presented by de Barros and Wirasinghe [50], Gosling [65] and Robusté [109].
2.3 Generic assignment and scheduling problem 15
Notation The GASP is defined on discrete planning horizon T = {1, . . . , T } where each
t ∈ T defines a unique time interval with all periods t being of equal length. Each flight
is represented by a job i ∈ F = {1, . . . , F } which has to be planned. When job i is
executed, it requires one or several resources g ∈ G = {1, . . . , G} with capacity Ug ≥ 0 per
period. Each job i can be processed on the resources in different modes. A mode defines
the resources as well as the maximum quantity of the resources which are employed to
process the job. For example, the “check-in of a flight" can be done by using one counter
each with up to four service lines or two counters with up to two service lines, respectively.
Formally, job i can be processed in mode m ∈ Mi using up to ri,m,g units of resources
g during each processing period. Job i has to start its processing within time window
Sies , Sils with Sies and Sils as the earliest and latest possible start time, respectively. The
finish time Sie of job i is defined by the flight schedule.
Passenger or bag flow The assignment and scheduling decision determines the flow of
passengers or bags. To depict the flow associated with flight i on resource g, we introduce
2.3 Generic assignment and scheduling problem 16
ri,m,g zi,g,t
Li,t
t
Sies Sils Sie
variable Ii,g,t which gives the number of passengers or bags for flight i at resource g at the
end of period t.
Model formulation The GASP for baggage handling processes can be formulated as
follows:
⎛ e ls ⎞
Si Si
Minimize ⎝ f I,z (Ii,g,τ , zi,g,τ ) + f x (xi,g,τ )⎠ (1)
i∈F g∈G τ =Sies τ =Sies
subject to
Sils
xi,m,τ = 1 ∀i∈F (2)
m∈Mi τ =Sies
Li,t ≤ zi,g,t ∀ i ∈ F , t ∈ Sils , Sie (3)
g∈G
zi,g,t ≤ Ug ∀ g ∈ G, t ∈ T (4)
i∈F :t∈[ Sies ,Sie ]
min{t,Sils }
ri,m,g · xi,m,τ ≥ zi,g,t ∀ i ∈ F , g ∈ G, t ∈ [Sies , Sie ] (5)
m∈Mi τ =Sies
2.3 Generic assignment and scheduling problem 17
min{t,Sils }
∀ i ∈ F , m ∈ Mi , g ∈ G,
ri,m,g · xi,m,τ = zi,g,t (6)
τ =max{ t−pi,m,g +1,Sies } t ∈ [Sies , Sie ]
Objective function (1) is generic and respects the decisions made for the assignment and
scheduling of jobs, represented by start variable xi,m,t , resource allocation zi,g,t , and the
number of passengers or bags Ii,g,t of job i in mode m at resource g at time t. Con-
straints (2) ensure that each job is started once within its start time window. Due to
constraints (3) the minimal number of required resources are assigned to each job i for
any period t of the minimum processing time pi,m,g . Constraints (4) bound the capacities of
the resources used for each period the job can be processed. In (5) the number of allocated
resources of type g at time t of job i are limited to ri,m,g in mode m, while constraints (6)
guarantee that for the minimum duration of pi,g,m the full quantity of recources available
in mode m are used by job i. The flow of passengers or bags is covered in equation (7).
Ii,g,t is defined as classical dynamic inventory variable where g(zi,g,t ) is the in- or outflow
of period t resulting from resource allocation decision zi,g,t . Finally, constraints (8) to (10)
define the variables.
The presented formulation for resource allocation has several advantages. First, modes
can be used to limit the combinations of resources allocated to a job. Thereby, we can
allow to allocate resources only within spatial proximity, e.g. when allocating check-in
counters or working stations in outbound baggage handling (see Section 2.4 and 2.5).
Moreover, combinations can be given when there is a dependency between resources, e.g.
an infeed station is connected to a specific baggage claim carousel for handling inbound
baggage (see Section 2.7). Excluding the z-variables from the model leads to an excessive
amount of modes while excluding modes from the model, i.e. utilizing only the z-variables,
requires further variables and constraints to ensure feasible combinations when allocating
resources. Finally, mode variables can be used for branching in branch & bound based
solution procedures where they can be seen as cuts in the solution space of the z-variables.
2.3 Generic assignment and scheduling problem 18
Proof. We show that an instance of the single machine scheduling problem with release
times and deadlines which is strongly NP-hard (see Garey and Johnson [63]), can be
polynomially transformed into an instance of SGASP.
INSTANCE: Set J MS of jobs, for each job j ∈ J MS a processing time pj ∈ Z+ , a
release time rj ∈ Z+ 0 , and a deadline ej ∈ Z .
+
QUESTION: Is there a single machine schedule for J MS that satisfies the release time
and deadline constraints?
Given an instance of the single machine scheduling problem, we equate each job j ∈ J
with a job j ∈ J MS . In the GASP, we only have one resource g with Ug = 1 corresponding
to the single machine and one mode m for all jobs such that rj,m,g = 1 for all j ∈ J . For
job j, let Sjes = rj be the period in which the job can start (release time), Sjls = ej − pj the
last period in which the job is allowed to start (deadline), and pj,m,g = pj the processing
time. Sje can be set to the end of the planning horizon.
Claim: There exists a feasible schedule for the jobs for the SGASP if and only if there
is a feasible schedule of jobs for the single machine problem.
The processing of job j has to start between rj and ej − pj , claiming single resource g
at full capacity for processing time pj . After the processing is finished, job j can deallocate
resource g by setting the z-variable to 0.
Let us further consider a second simplified GASP (SGASP II) in which we only consider
constraints (2) to (4), and the corresponding variables defined in (8) to (10).
Theorem 2. The SGASP II is strongly NP-hard.
Proof. We show that the decision problem of the bin packing problem which is strongly
NP-hard (see Garey and Johnson [63]), can be polynomially transformed into an instance
of SGASP II.
INSTANCE: Set J BP of items, each item j ∈ J BP having size aj ∈ Z+ and a set of
bins B, each bin having size V ∈ Z+ .
QUESTION: Is there an assignment of items to bins such that the sum of all sizes of
items assigned to a bin does not exceed the bins size?
Let us consider a planning horizon with just a single time period t. Given an instance of
the bin packing problem, we equate each job j ∈ J with an item j ∈ J BP with Lj,t = aj .
2.4 Check-in baggage 19
For each b ∈ B we define a resource g with Ug = V and a mode m with rj,m,g = V such
that |B| = |G| = |M|.
Claim: There exists a feasible assignment of jobs to resources for the SGASP II if and
only if there is a feasible assignment of items to bins without exceeding the bins size for
the bin packing problem.
Each job j has to be assigned to exactly one resource consuming at least zi,g,t ≥ aj
units with the resource being limited to V units.
In the following, we will adopt the GASP to the four baggage handling processes at an
airport. The transfer baggage handling problem (see Section 2.6) as well as the inbound
baggage handling problem (see Section 2.7) are strongly NP-hard as SGAPS can easily
be reduced to both. For the check-in counter planning problem (see Section 2.4) as well
as the outbound baggage handling (see Section 2.5), strong NP-hardness has to be shown
through a reduction of SGASP II as both problems do not have a minimum processing
time pi,g,m . We can therefore conclude that all baggage handling models are NP-hard to
solve.
The objective of check-in counter planning is to minimize the operating costs, such
as renting costs for counters, while guaranteeing a defined level of service for passengers
(see Bruno and Genovese [36], Chun [42, 43, 44], Chun and Mak [45], Van Dijk and Van der
Sluis [130], Park and Ahn [101] and Parlar and Sharafali [102]). In the literature, costs
are minimized by the minimization of the number of check-in counters to be opened in a
given time interval. An efficient usage of the counter leads to reduced renting and labor
costs. Common measures for the level of service are the waiting time or the queue length
of passengers at the counters (see Bruno and Genovese [36], Chun [42, 43, 44], Chun and
Mak [45], Van Dijk and Van der Sluis [130], Park and Ahn [101] and Parlar and Sharafali
[102]). A dynamic counter allocation is the preferred strategy against a static counter
policy. Another service measurement in check-in counter planning is the walking distance
from the counter to the gate (see Yan et al. [134, 135, 136]). Besides operating costs, Yan
et al. [134, 135, 136] introduce the inconsistency measure, a penalty for the violation of a
defined allocation principles, such as the counter adjacency for a flight. Another decision
problem is to balance the workload among the check-in counters to obtain a fair work
distribution among the agents. The work shifts of the desk agents should lead to a fair
distribution of the workload among all employees (see Stolletz [119]).
For the assignment of flights to counters we distinguish between dedicated (single)
check-in counters and common-use check-in counters. For the case of dedicated or single
check-in counters each flight has its own counter(s) leased by the airline over a long term,
while common-use counters are shared by a group of flights for short term (see Yan et al.
[135]). The assignment of flights to common-use counters requires the assignment of flights
to counter blocks and, thus, is a generalization of the assignment of flights to dedicated
check-in counters.
the minimal number of required counters for each flight (see Joustra and Dijk [76]) in order
to meet a predefined level of service in terms of passenger waiting times at Schipool Air-
port. Given this lower bound for the number of counters for a flight, the airport check-in
counter problem is formulated for dynamic and static allocation. The objective mini-
mizes the total number of check-in counters over time. Both problems are NP-complete
(see Bruno and Genovese [36]) which leads to high computation times when solving real
world instances. Therefore, Van Dijk and Van der Sluis [130] propose a LP-heuristic which
decomposes the problem into smaller subproblems with natural separation such as domes-
tic and international flights. Bruno and Genovese [36] show alternative MIP formulations
for the static and dynamic allocation model of Van Dijk and Van der Sluis [130] which have
similarities to the capacitated lot sizing problem (see Bitram and Yanasse [32] and Florian
et al. [60]).
Beside mathematical programming, Chun [44] formulates the dynamic check-counter
allocation problem as multi-dimensional placement problem and combines simulation with
constraint propagation programming to estimate the number of counters for each flight
such that a level of service in terms of passenger waiting times is guaranteed at Hong
Kong Kai Tak International Airport (see also Chun [42, 43] and Chun and Mak [45]).
Considering the arrival patterns of passengers, Park and Ahn [101] derive system of rules
for the allocation of flights to counters for the Seoul Gimpo International Airport in Korea.
Parlar and Sharafali [102] present an approximated stochastic dynamic program algo-
rithm (ADP) to determine the optimal number of counters for a dynamic allocation.
Common-use check-in Yan et al. [134, 135] present IPs for static and dynamic alloca-
tion of flights to common-use counters at the Chiang Kai-Shek International Airport in
Taiwan. While Yan et al. [134, 135] decompose the MIP in smaller subproblems which
are independently solved in one run, Yan et al. [135] use an iterative improvement proce-
dure. Chun and Mak [45] propose a simulation to dynamically assign flights to common-use
check-in counters.
A dynamic reallocation of flights to counters for the daily disruptions management is
presented by Yan et al. [136]. The solution methodology is based on decomposition and
relaxation of the MIP for which the subproblems are iteratively solved.
Most of the analytical models are applicable to dedicated and common-use check-
in counter planning. Hence, we do not distinguish between analytical approaches for
2.4 Check-in baggage 22
dedicated and common-use check-in counters planning. Given an allocation policy for
flights, queuing models are used to measure the level of service in terms of passenger
waiting times and queue lengths at check-in counters (see Janic [71, 72], Lee [84], Newell
[98] and Stolletz [119]). Stochastic queuing models for check in counters assume a Poisson
process for passenger arrivals and an uniform or an exponential distributed service times
(see Lee [84] and Stolletz [119]). Stochastic queuing models are criticized in the literature
as they assume steady state for the arrival rate of passengers. To incorporate the dynamic
arrival rates of passengers at check-in counter, Stolletz [119] uses the stationary backlog
carryover approach (see Stolletz [117]) which approximates the inhomogeneous arrival
process of passengers by dividing the time horizon into small periods in which a constant
arrival rate for passengers is assumed. He compares single and common-use counters
and concludes that common-use counters lead to a reduction in passenger waiting times.
Beside stochastic queuing models, deterministic queuing model based on cumulative flow
2.4 Check-in baggage 23
diagrams to evaluate passengers’ waiting time and their queue length at counters are
presented by Newell [98], Janic [71, 72], Tanner [121], Park and Ahn [101] Piper [103],
and Tošić [126]. A cumulative flow diagram graphically depicts the passenger arrival rate,
passenger service rate, passengers waiting time and their queue length.
To avoid the lack of the steady state assumption and to obtain a greater flexibility,
simulation is an alternative analysis method for check-in counters. There are Monte-Carlo
simulation (see Tošić and Babic [127]) and discrete-event simulations (see Appelt et al.
[7], Chung and Sodeinde [46], Joustra and Dijk [76] and Takakuwa and Oyama [120]).
Using discrete-event simulation Joustra and Dijk [76] compare waiting times of passengers
for common-use and dedicated counters. In contrast to Stolletz [119], Joustra and Dijk
[76] do not identify any advantage of the common-use check-in procedure in a simulation
conducted for Schipool Airport.
A rather unique analytical study is conducted by Johnson [74]. He examines the cost
of check-in counters with a multiple-service costing model from micro-economics which
allocates fixed operating costs to each served flight at the counters.
Parameters:
Sies , Sils – time window for the start of the check-in of flight i;
Sie – last period for the check-in of flight i;
Li,t – minimum number of required service lines for flight i in period t;
Ug – maximum number of allocable service lines at counter g;
λ+
i,t – arriving passengers of flight i at time t;
λ− – number of passengers that can be served at a service line per period;
ri,m,g – number of service lines used by flight i in mode m at counter g.
Variables:
xi,m,t – 1, if the handling of flight i is done in mode m and starts in period
t,
0 otherwise;
zi,g,t – number of service lines of counter g that are used by flight i in
period t;
Ii,t – number of waiting passengers of flight i at the end of period t.
The start time of each flight is within time window Sies , Sils ; the earliest start time
Sies and the latest start time Sils is usually three and two hours before flight i’s scheduled
departure time, respectively. The end of the check-in Sie depends on the flight type (e.g.
transcontinental or domestic flight) and of the airport size and can vary between 45 to
15 minutes before flights scheduled departure time. Each passenger waiting in line is
penalized with cost ci per period while the cost for operating a service line per period is
given by c. Then, the check-in counter planing problem (CCPP) is given by
minimize (ci · Ii,g,t + c · zi,g,t ) (11)
i∈F g∈G t∈T
subject to
Si ls
xi,m,τ = 1 ∀i∈F (12)
m∈Mi τ =Sies
Li,t ≤ zi,g,t ∀ i ∈ F , t ∈ Sils , Sie (13)
g∈G
2.4 Check-in baggage 25
zi,g,t ≤ Ug ∀ g ∈ G, t ∈ T (14)
i∈F :t∈[ Sies ,Sie ]
min{t,Sils }
ri,m,g · xi,m,z ≥ zi,g,t ∀ i ∈ F , g ∈ G, t ∈ [Sies , Sie ] (15)
m∈Mi z=Sies
⎛ ⎞+
−
Ii,g,t = ⎝Ii,g,t−1 + λ+
i,t −λ · zi,g,t ⎠ ∀ i ∈ F , g ∈ G, t ∈ [Sies , Sie ] (16)
g∈G
Ii,g,Sie = 0 ∀ i ∈ F, g ∈ G (17)
and (8) to (10)
Objective function (11) minimizes the penalties for the number of passengers for flight
i waiting in a queue as well as the costs for operating the service lines. Due to con-
straints (12) the service of each each flight i is started exactly once in a specific mode
m in the time window Sies , Sils . Constraints (13) ensure that the minimal number of
required service lines for flight i at time t are allocated. The maximal number of assigned
service lines at each check-in counter g and at each time t is bounded by constraints (14).
In constraints (15) the number of open lines for flight i is set. The number of flight i’s
waiting passengers Ii,t at time t is calculated in constraints (16). Due to constraints (17),
all passengers of a flight have to be served up to the flights last check-in period.
Complexity analysis Due to Theorem 2 the problem is NP-hard to solve in the strong
sense. The number of constraints is F · (T + 1 + G · (2 · T + 1)) + G · T .
which enforce the number of agents assigned to flight i at counter g at time t to be equal
to the number of flight i’s open lines for counter g at time t. Constraints (18) are linking
constraints between the CCPP and the shift-scheduling problem for agents.
Passenger flow
Custom
Baggage claim
Landside
Airside
Arrival Departure
Baggage flow
Figure 2.4: Passenger and baggage flow for transfer and inbound processes
For outbound baggage handling the airport operators have to make an assignment
and a scheduling decision. In a first step, each departing flight is assigned to (at least)
one handling facility and the start of the baggage handling is set. Bags in the storage
system can only be depleted, once the flight’s baggage handling has been started. At
some airports, the airport operator also decide about the storage place, that is the storage
2.5 Outbound baggage 27
Passenger flow
Landside
Airside
Departure
Check-In
Baggage flow
Screening BHS Transport
and loading
lane, for early baggage (see Figure 2.2). Stored baggage in the same storage lane should
be depleted simultaneously to reduce the re-organization time of the baggage within the
storage and to reduce the mechanical wear of the network devices. The amount of stored
bags at a time is restricted by the storage capacity. In a second step, work groups have
to be assigned to handling facilities to load the bags into containers.
The assignment of flights to handling facilities and the scheduled start time of the
baggage handling should avoid workload peaks at the handling facilities. The workload is
the number of bags on a conveyor belt at a time. A workload at a handling facility increases
when the bag inflow from the sorting network onto the conveyor belt of the handling facility
is higher than the loading rate at the working stations. Once the workload reaches conveyor
belt’s capacity of the handling facility, no more bags within the sorting network of the
BHS will be sent to the handling facility. Instead, the bags remain in the sorting network
until the workload of the handling facility is decreased. An increased number of bags in
the sorting network, in turn, increases the danger of traffic jams and therefore may lead
to further delays in sorting baggage through the BHS. In a worst case scenario, too many
bags in the BHS may lead to a major break down of the whole system (see Frey and Kolisch
[61], Frey et al. [62]). One objective for outbound baggage handling is to obtain a balanced
workload across the baggage carousels. Further objectives are a short distance between
the handling facility and the parking position of the departing airplane as well as the
2.5 Outbound baggage 28
assignment of handling facility which are preferred by groundhandlers (see Ascó et al. [8]).
Each handled flight requires its own number of working stations at which workers load the
baggage into containers. Thus, according to Abdelghany and Abdelghany [1], Abdelghany
et al. [2] and Ascó et al. [8, 9] operating cost (staffing costs) can be reduced if the number
of simultaneously handled flights is minimized.
As constraints, the number of simultaneously handled flights is restricted by the total
number of available working stations at each handling facility. Moreover, the capacity of
the storage system has to be satisfied.
Optimization
Mathematical Programming
IP [8, 26, 61, 62]
Heuristic
Constructive [1, 2, 8, 9]
Other
Description [85]
Parameters:
Sies , Sils – time window for start of the baggage handling for flight i;
Sie – end of the baggage handling for flight i;
Ug – number of working stations available at baggage carousel g;
Us – capacity of the central storage system;
λ+
i,t – number of newly incoming bags for flight i in period t;
λ− – number of bags that can be handled at a working station per period;
ri,m,g – number of working stations assigned to flight i in mode m
at baggage carousel g.
2.5 Outbound baggage 30
Variables:
xi,m,t – 1, if the handling of flight i is done in mode m and starts at the
beginning of period t,
0 otherwise;
zi,g,t – number of working stations of carousel g that are used by flight i
in period t;
Ii,g,t – workload caused by flight i on baggage carousel g at the end of
period t.
Similar to the check-in counter planning, the earliest start time Sies and the latest start
time Sils for the baggage handling of each flight i ∈ F is three to two hour before the
flight’s scheduled departure time, respectively, whereas the end of the baggage handling,
Sie , is about 10 minutes before the scheduled departure time. In addition, we need variable
Bi,t which is equal to the number of bags of flight i that are in the storage at time t. The
capacity of the storage system is limited by U s . When starting the baggage handling,
bags are sent from the storage to the assigned baggage carousel with a rate of β bags per
period. At the end of the baggage handling the containers with the baggage are towed to
the departing airplane and the resources at the baggage carousels are set free again. The
objective of the presented outbound baggage handling is to obtain a balanced workload
across all carousels. The model formulation for outbound baggage handling reads as
follows
2
minimize Ii,g,t (19)
g∈G t∈T i∈I
subject to
Sils
xi,m,τ = 1 ∀i∈F (20)
m∈Mi τ =Sies
Li,t ≤ zi,g,t ∀ i ∈ F , t ∈ Sils , Sie (21)
g∈G
zi,g,t ≤ Ug ∀ g ∈ G, t ∈ T (22)
i∈F :t∈[ Sies ,Sie ]
min{t,Sils }
ri,m,g · xi,m,τ ≥ zi,g,t ∀ i ∈ F , g ∈ G, t ∈ [Sies , Sie ] (23)
m∈Mi τ =Sies
2.5 Outbound baggage 31
t
min {β, Bi,t−1 } · xi,m,τ +
m∈Mi τ =Sies
Bi,t ≥ 0 ∀ i ∈ F, t ∈ T (27)
and (8) to (10)
The workload over all baggage carousels is balanced due to the quadratic objective
function (19). As all arriving bags have to be loaded within the handling period, con-
straints (21) bound the minimal number of working stations in each period from below.
In constraints (20) each flight i ∈ F is assigned to exactly one mode, corresponding to
a number of working stations at a specific carousel. The number of flights which can
be assigned to one baggage carousel g is restricted by the number of available working
stations Ug in constraints (22). Constraints (23) determine the number of open working
stations for flight i at time t. The workload of a carousel is calculated in constraints (24).
The amount of bags on carousel g of flight i is the sum of flight i’s arriving bags from
the storage, min {β, Bi,t}, and the number of bags Ii,g,t−1 which could not be loaded in
previous period t − 1 minus flight i’s loading rate λ− · zi,g,t . Constraints (25) calculate
flight i’s amount of baggage in the central storage system. Before baggage handling starts,
t
i.e. 1− xi,m,τ ) = 1 , flight i’s amount of baggage Bi,t in the storage system
m∈Mi τ =Sies
at the end of period t is the number of baggage stored in the previous period t − 1 plus
the newly arriving amount of baggage λ+ i,t . The total amount of stored bags at time t is
restricted in constraints (26). The above model is non-linear. However, it can be linearized
straight forward (see Williams [133]).
2.6 Transfer baggage 32
Complexity analysis Due to Theorem 2 the problem is NP-hard in the strong sense.
The number of constraints is F · (1 + T · (2 · G + 1)) + T · (G + 1).
position, the on-block position. Usually, baggage is already sorted within the cargo hold
of the plane such that urgent transfer baggage with shorter connecting time is unloaded
first. The transfer baggage is loaded on a baggage towing vehicle and the vehicle drives
to an infeed station where the bags are fed into the BHS.
A further transfer baggage handling process is often called “short connection service”.
In case that bags can not be regularly transported via the BHS to the outgoing flight’s han-
dling facility within the corresponding time window, many airports have a special handling
facility to process last minute bags, the so–called “last minute chutes” (see Section 2.2.2).
The bags are transported to the “last minute chutes” through the BHS. There, bags from
one or more flights leaving in a nearby area are loaded onto a vehicle and transported to
the outgoing flights. Besides dedicated “last minute chutes”, some airports temporarily
use regular handling facilities for short connection services.
The regular process of forwarding transfer baggage and the “short connection service”
using “last minute chutes” reaches its limit when it comes to very short connecting times.
In this case, “direct transfer services” or “ramp direct services” (RDS) have to be under-
taken. Dedicated vans are loaded with RDS bags at the incoming airplane and transport
the bags directly to the outgoing flight bypassing the BHS. Depending on the incoming
flight, it can be necessary to first bring a bag to a custom control station or a baggage
screening station.
Parameters:
2.6 Transfer baggage 34
Sies , Sils – time window for the infeed of inbound baggage of flight i;
Ug – maximal number of flights which can be simultaneously handled by
infeed station g;
rm,g – 1, if mode m corresponds to infeed station g, 0 otherwise;
pi,m,g – processing time of flight i at infeed station g in mode m;
λ+
g – infeed rate at infeed station g.
Variables:
xi,m,t – 1, if the handling of flight i is done in mode m and starts in period
t, 0 otherwise;
zi,g,t – 1, if infeed station g is used by flight i in period t, 0 otherwise;
Ii,g,t – cumulative number of bags of flight i handled at infeed station g
up to the end of period t.
The earliest start Sies of the handling process at an infeed station g is predetermined
by the arrival time of the flight and the time required for unloading and transferring the
baggage to the infeed station. Due to their layout, most infeed stations can only be used to
infeed one flight at a time so that Ug = 1. The minimum processing time pi,m,g depends on
the number of bags of flight i and the infeed rate at station g such that the baggage reaches
the handling facility of the destinating flight on time. Therefore, parameter wi,g,t defines
the number of bags that have to be fed in at infeed station g until time t, assuming that
bags are already pre-ordered in a way that urgent bags are handled first. The objective
function penalizes the number of bags that are not handled on time. The transfer baggage
handling problem is formulated as follows:
Sie
minimize (wi,g,t − max {wi,g,τ −1, Ii,g,τ })+ (28)
i∈I g∈G τ =Sies
subject to
Si ls
xi,m,τ = 1 ∀i∈F (29)
m∈Mi τ =Sies
zi,g,t ≤ Ug ∀ g ∈ G, t ∈ T (30)
i∈F :t∈[ Sies ,Sie ]
2.7 Inbound baggage 35
min{t,Sils }
∀ i ∈ F , m ∈ Mi ,
rm,g · xi,m,τ = zi,m,g (31)
τ =max{
t−pi,m,g +1,Sies } g ∈ G, t ∈ [Sies , Sie ]
∀ i ∈ F , g ∈ G,
g · zi,g,t
Ii,g,t = Ii,g,t−1 + λ+ (32)
t ∈ [Sies , Sie ]
and (8) to (10)
The number of handled bags is used in the objective function (28) in order to penalize
the amount of late baggage. Due to constraints (29) a flight is assigned to exactly one
infeed station, (30) limits the number of flight that can be handled simultaneously at a
station. Constraints (31) assure that the processing of a flight at an infeed station is not
interrupted for a minimum duration of pi,m,g . The number of bags of flight i that are
handled until time t at infeed station g is calculated in (32).
Complexity analysis Due to Theorem 1 the problem is NP-hard to solve in the strong
sense. The number of constraints is F · (1 + T · G · (M + 2)) + G · T .
predefined by the airport operators. For example, passenger from transcontinental flights
have to pass trough customs, while passengers from regional flights access the baggage
claim hall directly. But also the gate of the flight (e.g. northern or souther part of the
terminal) defines the way to the baggage claim carousels. As soon as the passenger arrives
at the baggage claim carousel and identifies his bag on the conveyor belt he picks it up
and finally leaves the baggage claim hall when all his bags are claimed.
In the operational inbound baggage handling we are facing a “double sided” assignment
problem one at the airside (infeed stations) and the other at the landside (baggage claim
carousel). The assignment of the infeed station has influence on the possible assignment
of the baggage claim carousel and vice versa (see Section 2.2).
The objective of the operational decision problem can vary between airports and de-
pends on local situations (see Ashford et al. [11]). Since the perceived satisfaction of
passengers is an important factor for airlines and airport (see for example Correia and
Wirasinghe [48], Martel and Senviratne [90] and de Neufville and Odoni [51]) one objec-
tive is to obtain a specific level of service for passengers in terms of waiting times at the
baggage claim carousel or the distance from the gate to the carousel (see Barbo [21]). The
service quality is also influenced by the utilization of the baggage claim carousel. Hence,
another objective is a leveled utilization across all baggage claim carousels leading to re-
duced passenger congestion at the device frontage (see e.g. Correia and Wirasinghe [48]
and Ghobrial et al. [64]).
As inbound and transfer baggage is brought to the infeed stations by the same baggage
tug it is desired by the groundhandler that the assigned infeed stations for transfer baggage
and inbound baggage are located closely to each other. Since transfer baggage has to
be transferred to outgoing flights, it is more time critical than inbound baggage and is
usually prioritized over inbound baggage. The joint usage of infeed stations for inbound
and transfer baggage is generally not possible. One infeed station can be used to feed in
the baggage of one container at a time. Therefore, containers assigned to the same infeed
station have to wait in a queue and are processed first-come, first-served.
At a baggage claim carousel several flights can be served at a time. The number of
simultaneously served flights is limited by the display at the baggage claim carousel and the
number of maximal number of people who can stand around the baggage claim carousel.
The splitting of a flight to several baggage claim carousel is not common in practice even
2.7 Inbound baggage 37
if carousels are located next to each other. The reasons is the reduced perceived service
quality of passengers (see Martel and Senviratne [90] and Robusté [109]). Robusté [109]
criticizes the splitting of a flight to several baggage claim carousels as this leads to a
reduced service quality for passengers. However, some airports such as Frankfurt Airport
use different baggage claim carousels for first, business and economy passengers.
Analytical
Queuing model
Deterministic [21, 33, 64, 65, 69, 98, 109, 126]
Survey [48, 137]
Other
Description [51, 90]
Literature review [126]
Parameters:
Sies , Sils – time window for the start of the infeed of inbound baggage of flight
i;
Sie – upper bound for the end of flight i’s baggage claim;
Ug – maximal number of flights which can be simultaneously handled at
baggage claim carousel or infeed station g;
ri,m,g – 1, if baggage claim carousel/infeed station g is used in mode m for
flight i, 0 otherwise;
pi,m,g – infeed duration for flight i in mode m if g corresponds to an infeed
station;
– claiming duration for flight i in mode m if g corresponds to a bag-
gage claim carousel;
+
λ – infeed rate;
λ−
i,g,t – rate at which baggage is picked up by passengers in period t if flight
i is
assigned to baggage claim carousel g.
Variables:
2.7 Inbound baggage 39
The start time of the infeed process depends on the arrival time of flight i ∈ F . Adding
an offset to flight i’s actual arrival time for unloading and transferring the container to
an infeed station, we obtain the earliest start time Sies for flight i’s infeed. To guarantee
that the flight is fed in within a given time period, we define the latest infeed start time
Sils which should be not more than 20 minutes after Sies . Passengers’ baggage pick up
rate λ−i,g,t of flight i is time dependent and depends on the passenger’s walking distance
from flight i’s parking position to the assigned baggage claim carousel g. As long as no
passenger has arrived at the assigned baggage claim carousel, we have λ−
i,g,t = 0. Given
a combination of infeed station and baggage claim carousel and passengers pick up rate,
we derive the required claim duration pi,m,g at mode’s m corresponding baggage carousel
g. Sie denotes a maximal upper bound for the end time of flight i’s claim process, i.e.
Sie = maxm∈M,g∈G Sils + pi,m,g .
We have Ug = 1, if g represents an infeed station. Whereas Ug is equal the number of
flights that can be handled simultaneously, if g corresponds to a baggage claim carousel.
As objective we balance the workload over all baggage claim carousels. The infeed
process of each flight must not bet artificially delayed. Thus, a delay of an infeed is
penalized by a value t , with t < t+1 for all t ∈ T . The basic model formulation for the
inbound baggage handling is stated as
2 Sils
minimize Ii,g,t + τ · xi,m,τ (33)
g∈G t∈T i∈F i∈F τ =Sies
subject to
Si ls
xi,m,τ = 1 ∀i∈F (34)
m∈Mi τ =Sies
zi,g,t ≤ Ug ∀ g ∈ G, t ∈ T (35)
i∈F :t∈[Sies ,Sie ]
2.7 Inbound baggage 40
min{t,Sils }
∀ i ∈ F , m ∈ Mi , g ∈ G,
ri,m,g · xi,m,τ = zi,g,t (36)
τ =max{ t−pi,m,g +1,Sies } t ∈ [Sies , Sie ]
+
Ii,g,t = Ii,g,t−1 + λ+ · zi,g,t − λ−
i,g,t ∀ i ∈ F , g ∈ G, t ∈ [Sies , Sie ]
(37)
and (8) to (10)
Objective function (33) balances the workload across all baggage claim carousels and
penalizes an artificial delay of a flight’s infeed. Constraints (34) assign each flight i ∈ F
to one mode m where the start time for the infeed has to be within flight i’s time window.
The number of flights, which can be simultaneously served at one baggage claim carousel
or infeed station at a time is restricted by constraints (35). Constraints (36) ensures that
flight i allocates infeed station g or baggage claim carousel g as long as flight i’s bags are
fed in or claimed, respectively. The amount of baggage of flight i on baggage claim carousel
g at time t is calculated in constraints (37). The above model is non-linear. However, it
can be linearized straight forward (see Williams [133]).
Complexity analysis Due to Theorem 1 the problem is NP-hard to solve in the strong
sense. The number of constraints is F · (1 + G · T · (M + 2)) + G · T .
2.8 Conclusion
With increasing flight traffic, airports seek to use their given resources as efficiently as
possible. Quite some work has already been done on optimizing baggage handling at
airports. In particular, during the last decades the issue of baggage became more and
more the focus of OR which underlies its importance. In this chapter, we provide a
structured description of the baggage handling process and classify the research on this
topic. We discuss constraints and objectives of the four subprocesses that are common for
many airports. A generic model for baggage handling processes at airports is introduced
which employs a new and innovative resource assignment and scheduling formulation.
Based on the generic model we derive the presented baggage subprocesses and show their
similarities and differences. In so doing, we derived in Section 2.4.2 a more general model
formulation for the CCPP which combines two check-in counter planning strategies found
in literature. Our paper with the mathematical classification should serve as a basis for
future research, bridging the gap between new practical problems at airports and OR
approaches.
Future challenges will be not only to improve the single processes of the baggage
handling through optimization models and solution methods, but also to integrate all
aspects of the handling process and give the different stakeholders a common process
view. Ideally, this should lead to improved customer satisfaction, more robust baggage
handling, while postponing investments in expensive infrastructure.
Chapter 3
3.1 Introduction
The number of airline passengers is rapidly increasing at about 5.9% per year which
forces airports to use their existing infrastructure more efficiently. At the same time, the
high competition between airports demands higher quality services to satisfy passengers.
One crucial task for airports impacting both these issues is the baggage claim. On the
one hand, expanding the baggage claim area is cost-intensive and limited by an airport’s
infrastructure. On the other hand, as the former chairman of Eastern Airlines, Frank
Borman said “baggage claim is the last chance to disappoint the customer” (see Robusté
[109]). Passengers service quality can be increased, for example, by shortening walking
distances from flights parking position to the baggage carousel, or by reducing waiting
times of passengers at the baggage carousels (see Martel and Senviratne [90] and Correia
and Wirasinghe [48]).
Baggage brought-in by an incoming flight and claimed by passengers is called inbound
baggage. The inbound baggage handling process starts as soon as an incoming flight
reaches its parking position. First, inbound baggage containers are unloaded from the
aircraft. Then, a baggage tug tows the containers to one of several available infeed stations.
More than one trip might be necessary, depending on the number of containers. At the
infeed station, the baggage is transferred into the baggage handling system (BHS) which
is an automated baggage transportation system that forwards bags to baggage carousels.
The baggage is routed to one of the available baggage carousels where it is retrieved by
the passengers. Depending on the layout of the BHS, one or more baggage carousels can
42
3.1 Introduction 43
this chapter we develop a mathematical model to assign incoming flights to infeed stations
and baggage carousels and to set the infeed order of flights’ baggage tugs arriving at the
same time at the infeed station in order to balance the load across baggage carousels and
to guarantee a high level of service for passengers.
The assumptions of Martel and Senviratne [90] that the level of service quality of an
airport can be improved by reducing passengers’ waiting time or passenger density at
baggage carousels are confirmed by a survey of Correia and Wirasinghe [48]. It should
be noted that Yen et al. [137] observe that the perceived waiting time is considerably
higher than the real waiting time at baggage carousels. Further work concerning inbound
baggage handling is published by de Barros and Wirasinghe [50] as well as Gosling [65]
who study the design of the baggage claim hall.
To the best of our knowledge, this paper is the first to provide a mathematical model
formulation and a heuristic for the inbound baggage handling process at airports. The
model is generic and thus can be applied to many airport infrastructures. The objective is
to balance the usage of the baggage carousels and to minimize waiting times for passengers.
The remainder of this chapter is structured as follows: Section §3.2 provides a de-
tailed problem description of the inbound baggage handling process in which the required
notation and assumptions for the mathematical model are presented. The mixed-integer
model is formulated in §3.3. Further, its problem complexity is established and structural
properties are discussed in section §3.3. As solution we present an efficient hybrid greedy
randomized adaptive search procedure (GRASP) with a guided fast local search (GFLS)
and path-relinking, which we will call hybrid HGGLS (hybrid GRASP-GFLS) in the fol-
lowing. To the best of our knowledge, this is the first hybridization of GRASP and GFLS.
Our computational tests show, that HGGLS leads to high quality solutions for short run-
ning time. The proposed solution procedure has been implemented at a major European
Airport, where we also conducted a survey to measure which factors influence passengers’
level of service. In §3.4 and §3.5 the HGGLS heuristic and issues regarding the practical
implementation are discussed. Moreover, we discuss features which we incorporate into
the practical implementation. For the evaluation of our model formulation and the hybrid
heuristic, we use real-world data and compare the results of the approach presented in a
real-world simulation study with the airport’s planning procedure. The solution obtained
by our heuristic, embedded in a rolling planning framework, leads to a significant im-
3.2 Problem description 45
provement of the carousel utilization and an increased service quality by reducing waiting
times by about 3 minutes on average. The computational study is presented in §3.6. §3.7
concludes this chapter by summarizing the results.
Infeed process For each flight, one baggage tug is available to tow the flight’s containers
to exactly one infeed station, where workers load the bags from the container onto the
infeed station’s conveyor belt. A baggage tug can tow up to 3 containers at a time. If
there are more than 3 containers, the baggage tug has to make more than one trip from
the airplane to the infeed station and back. As the driver of the baggage tug also unloads
bags at the infeed station, the completion time of the unloading process influences the
start time of the subsequent trip necessary to handle the same flight.
At an infeed station, only one container can be handled at a time. Multiple containers
of the same flight are handled sequentially. If there is more than one baggage container of
different flights in front of the infeed station, the ‘first come, first serve’ (FCFS) discipline
is applied in order to sequence the containers. Only when two trips arrive in the same
time period (having a length of one minute) a sequence of the containers of the two
flights has to be determined. We distinguish between direct and remote infeed stations
(see Figure 3.1). A direct infeed station is located close to a baggage carousel and it
is connected to one unique carousel, while a remote infeed station is connected to one
or more baggage carousels. Direct infeed stations are very close to a terminal’s baggage
carousels. Often they are separated from the baggage carousel by a wall only. In contrast,
remote infeed stations are often located in a building on the apron, further away from the
terminal building.
If a bag is fed-in at a remote infeed station, it is transported through the BHS’s
conveyor belt network to the assigned baggage carousel. At a direct infeed station, bags
are directly transported to the corresponding baggage carousel through a conveyor belt
3.2 Problem description 46
BHS
BC 1 BC 2 BC 3 BC 4
link. Such a direct access to a baggage carousel leads to shorter transportation times for
bags than for a remote access. For example, at a major European Airport, a bag requires
less than 5 seconds to reach the carousel’s conveyor belt at a direct infeed station, while
a bag fed-in at a remote infeed station requires 6 minutes on average to reach a baggage
carousel.
The capacity of a carousel is defined as the number of bags which can be placed on the
carousel’s conveyor belt at a time. The number of bags on a baggage carousel relative to
the carousel’s capacity yields the utilization of a baggage carousel. Once the utilization
of a baggage carousel reaches 100%, no additional bags can be placed anymore. A fully
loaded baggage carousel leads to congestion at the associated direct infeed station, and
the unloading process of baggage from containers to the infeed station has to be halted
until the baggage carousel’s utlization falls below 100%. If a remote infeed station is
used and the baggage carousel is utilized to full capacity, the BHS serves as temporary
storage, which ensures that the unloading process at the infeed stations continues without
interruption. However, using the BHS as temporal storage is not desired as it might affect
other baggage flows within the BHS. To avoid congestion at infeed stations or the usage of
the BHS as temporary storage, the primary goal for the inbound baggage handling from
an operational perspective is to obtain a balanced utilization at the baggage carousels.
Claiming process While a flight’s baggage infeed process is taking place, the passengers
disembark from the aircraft. Depending on the flight’s parking position, they enter the
terminal either through an air bridge or by using a shuttle bus. The architecture of the
airport as well as the origin of a flight influence the passenger arrival at the baggage
3.3 Mathematical model 47
100
80
70
60
50
40
30
20
10
0
0 1:12 2:24 3:36 4:48 6:00
Arrival at the baggage caorusell in minutes
Figure 3.2: Passenger arrival at a baggage carousel for a domestic (thin) and transconti-
nental flight (bold)
carousel. For example, passengers from transcontinental flights need to pass through
immigration and customs which is not the case for domestic flights. Figure 3.2 shows
a typical cumulative arrival diagram of passengers at a baggage carousel for a domestic
and a transcontinental flight as it can be observed at a major European Airport. The
dashed-lines represent a linear approximation of the arrival function. The goodness of fit
in terms of the adjusted-R2 is on average 0.88 for transcontinental flights and 0.97 for
domestic flights. When a passenger has arrived at the baggage carousel he immediately
picks up his bags once they are on the conveyor belt. After retrieving all of his bags, the
passenger leaves the baggage claim hall. The number of simultaneously handled flights
at a baggage carousel is restricted by the number of flights which can be shown on the
baggage carousel’s display. A flight’s service time on a baggage carousel is displayed as
soon as the flight reaches its parking position (“goes on-block”) and remains until all bags
have been retrieved. To avoid confusing passengers, it is common practice at airports to
assign a flight to only one baggage carousel (see Robusté [109]).
Given sets and parameters The sets and parameters used throughout the chapter
are summarized in Table 3.1 and 3.2. All time points t in the discrete planning horizon
T = {t0 , . . . , tT } are equally spread across time and each time tk ∈ T is connected to a
unique time interval [tk , tk+1 [ for k = 0, . . . , T − 1. In the following we will speak of time
point tk when we refer to the beginning of time interval [tk , tk+1 [, and we speak of time
period tk when we refer to the time interval.
Sets Description
T Discrete planning horizon
F Flights with inbound baggage
L Set of trips
Li Set of trips for flight i
Ld Set of trips including dummy trips
E Infeed stations
Ec Infeed stations connected to baggage carousel c
C Baggage carousels
Ce Carousels accessible from infeed station e
The inbound baggage of a flight is transported to one infeed station e ∈ E = {1, . . . , E},
which has access to one or several baggage carousels c ∈ C = {1, . . . , C} in the baggage
claim area. The set of baggage carousels reachable from infeed station e is denoted by
Ce ⊆ C, while all infeed stations in Ec ⊆ E reach baggage carousel c. Tuple (e, c) ∈ E ×Ce in-
dicates a potential assignment of an infeed station e with one of its corresponding carousels
c. Carousel c’s conveyor belt capacity and the number of flights which can be shown on
the display are given by Kccb and Kcdi , respectively.
The set of arriving flights carrying inbound baggage is denoted by F = {1, . . . , F }.
For flight i ∈ F , Pi passengers carry at least one inbound bag; passengers or flights with
3.3 Mathematical model 49
no inbound baggage are not the focus of inbound baggage handling and therefore are not
taken into account. With the maximal number of bags Ni carried by one passenger, the
percentage of passengers of flight i carrying 1 ≤ n ≤ Ni bags is given by pi (n).
Each flight i requires a predefined number of trips Li to transport all containers to the
assigned infeed station. The set of trips for flight i is denoted by Li = {1i , . . . , Li }, where
1i and Li are the first and last trip, respectively; the set of trips for all flights is denoted
by L. For the number of baggage transported in trip l, we assume that it always carries
the maximal number of the remaining baggage not transported in previous trips such that
the trip capacity is not violated. Index il denotes the flight corresponding to trip l.
The infeed process of flight i has to start as soon as the assigned infeed station becomes
available. An “artificial” delay of the infeed process for each trip is not permitted and
does not occur in practice. After flight i’s on-block time Siob a sequence of sub-processes
determines the earliest possible infeed start time S1esi ,e ∈ T of flight i’ first trip 1i at infeed
station e. More precisely, the earliest infeed time is the sum of the offset to unload the
containers from flight i’s cargo hold, duration Δpl to place the containers on the baggage
tug and duration Δtrip
i,e to transport containers from flight i’s parking position to infeed
station e. To avoid a late infeed, we also set a latest possible infeed S1lsi ,e ∈ T which is
30 minutes after the earliest infeed S1esi ,e . The time windows Slesi ,e , Sllsi ,e for the earliest
and latest infeed time of flight i’s succeeding trips li ∈ Li \ {1i } result from infeed start
s ∈ Slesi −1,e , Sllsi −1,e and infeed duration Δinf
li −1 of the previous trip li − 1 plus duration
2 · Δi,e + Δpl to transfer the next containers to the infeed station. As soon as the infeed
trip
process of trip l starts it takes Δdur e,c periods to transfer a bag from infeed station e to
carousel c.
At infeed station e, relation (L, e ) defines the sequence order or infeed order for two
trips l, h ∈ L with l e h if trip l can arrive at infeed station e before trip h. If l e h and
h e l, i.e. trip l can arrive at infeed station e before trip l and vice versa, we write l ∼
=e h.
Hence, for the first trips 1i and 1j of flights i, j ∈ F we have 1i e 1j iff S1esi ,e ≤ S1esj ,e , as
flight i’s first trip arrives at infeed station e before flight j’s first trip, and we have 1i ∼
= e 1j
iff both trips arrive in the same period. For all succeeding trips li ∈ Li \ {1i } of flight i
and for an arbitrary trip hj ∈ Lj of a flight j with i = j we have li ∼ =e hj iff the time
windows of trips li and hj overlap, otherwise either li e h or h e li holds. Depending
of flight i’s parking position and by assuming constant walking speed of passengers the
3.3 Mathematical model 50
Parameters Description
Ai,c Arrival time of the first passenger of flight i at baggage carousel c
Bl Number of inbound bags of trip l
Bitot Total number of inbound bags for flight i
ob
Si On block time of flight i
es ls
Sl,e , Sl,e Time window to start handling of trip l at infeed station e
Kccb Conveyor belt capacity of baggage carousel c
Kcdi Display capacity of baggage carousel c
Ni Maximal number of bags carried by one passenger of flight i
Pi Number of passengers of flight i
pi (n) Percentage of passengers of flight i carrying n inbound bags
Δdur
e,c Duration to transfer a bag from infeed station e to baggage
carousel c
Δpl Duration to place containers on a baggage tug
Δtrip
i,e Duration to drive from flight i’s parking position to infeed station
e
μw Baggage loading rate of workers at an infeed station
μpi Arrival rate of passengers of flight i
first passenger arrives at carousel c at Ai,c . Based on the results presented in Figure 3.2,
we approximate the arrival process of passengers at the baggage carousel by arrival rate
μpi once the first passenger has arrived at the baggage carousel at Ai,c (see Ghobrial et al.
[64]).
Preprocessed parameters Given the sets and parameters introduced above, we derive
the parameters presented in Table 3.3. In the following, let flight i be assigned to tuple
(e, c) and let the infeed process for flight i’s trip l ∈ Li start at time s ∈ Sl,e
es ls
, Sl,e .
• Given the number of bags Bl per trip l together with the infeed rate μw yields trip
l’s infeed duration
Bl
Δinf
l =
μw .
• The minimum time lag between two succeeding trips l e h of different flights, i.e.
il = ih , and of the same flight, i.e. il = ih , at infeed station e are given by
Preprocessed Description
parameters
Δinf
l Infeed duration of trip l
Δlag
l,h,e Minimum time lag between trip l and h at infeed station e
Δclaim
i,e,c,s Baggage claim duration for flight i, if tuple (e, c) is selected and the infeed
process starts at time s
Ψwalk
i,c Walking distance penalty for passengers of flight i, if baggage carousel c is
selected
Ψwait
l,e,c,s Waiting time penalty for passengers of trip l, if tuple (e, c) is selected and the
infeed process starts at time s
Φl,e,c,s,t Number of bags of trip l on baggage carousel c at time t, if the infeed station
e is selected and the infeed process starts at time s
respectively.
• Function bl,e,c,s(t) and ai,c (t) in [0, 1] give for flight i’s trip l the percentage of bags
and passengers, respectively, arriving at baggage carousel c in period t ∈ T . Then,
the number of bags of trip l on baggage carousel c in period t is (see also Ghobrial
et al. [64] and Robusté and Daganzo [110])
• Passengers’ service level can be increased by a short waiting time for baggage at
the baggage carousel (see Appendix A.2). The realized waiting time Δwait is mea-
sured by utility function g(Δwait ). The higher the waiting time the higher the value
of g(Δwait ). In §3.5.1 we show how to derive the utility function in practice for a
major European airport. Given the utility function, we derive the penalty coeffi-
l,e,c,s for the waiting time for passengers having bags in trip l ∈ Li . To
cients Ψwait
calculate the penalty term for passengers of flight i waiting twait minutes from their
arrival at the baggage carousel until they pick-up their last bag, for all t1 , t2 ≥ Ai,c ,
t1 being the arrival period of the passenger and t2 being the arrival period of the
passengers’ last bag at the baggage carousel, with twait = t2 − t1 , passengers’ utility
3.3 Mathematical model 52
Ψwait
l,e,c,s = · āi,c (t1 )·
|F | · max {g(Δwait )} t1 =Ai,c
⎛ ⎞
Bl
tfirst
l,e,c,s
+ μw
⎜ ⎟
⎜ ⎟
⎜
⎝ l,e,c,s (t2 ) · g (t2 − t1 )⎟
pwait
⎠
t2 =max{tfirst
l,e,c,s 1 }
,t
where 1{Bi,e,c (t)≥n} is the indicator function which is equal to 1, if Bi,e,c(t) ≥ n, and 0
otherwise. Since we need the likelihood of the passenger’s last bag to arrive exactly
3.3 Mathematical model 53
in period t, we have to subtract the likelihood that all of the passenger’s bags have
arrived before period t.
Variable Description
xl,e,c,s 1, if trip l starts the infeed at s and assignment tuple (e, c) is selected, and 0
otherwise
yl,h,e 1, if trip l is handled before trip h at infeed station e, and 0 otherwise
ei,c,t 1, if flight i’s claiming period ends on baggage carousel c at time t, and 0
otherwise
uc,t utilization of baggage carousel c at time t
Using the decision variables listed in Table 3.4 the model formulation for the inbound
baggage handling problem (IBHP) can be written as follows
2
Minimize f (x) = λ · uc,t + (39)
c∈C t∈T
⎛ ⎞
S1ls ,e
i
(1 − λ) · ⎜
⎝
⎟
i,c · xli ,e,c,s ⎠
Ψwalk
i∈F e∈E c∈C s=S1es,e
i
2
Minimize f (x) = λ · uc,t + (39’)
c∈C t∈T
⎛ ⎞
S ls
⎜
l,e
⎟
(1 − λ) · ⎝ l,e,c,s · xl,e,c,s ⎠
Ψwait
es
l∈L e∈E c∈C s=Sl,e
3.3 Mathematical model 54
subject to
S1ls ,e
i
S ls
∀ i ∈ F,
l,e
S ls
∀ i ∈ F,
l,e
S ls
h,e
M · (1 − yl,h,e) ≤ s · xh,e,c,s l = h ∧ l e h
es
c∈Ce s=Sh,e
S ls
l,e
≤ M · yh,1j ,e − 1 + S1esj ,e 1j ∼
=e h, e ∈ E
M · (yl,h,e − 1) + ∀ i, j ∈ F : i = j, (46)
ls
Se,l−1
l−1,l,e · xl−1,e,c,s
s + Δlag l ∈ Li \ {1i } , h ∈ Lj \ {1j } :
es
c∈Ce s=Se,l−1
ls
Se,h−1
≤ h−1,h,e · xh−1,e,c,s
s + Δlag l∼
=e h, e ∈ E
es
c∈Ce s=Se,h−1
3.3 Mathematical model 55
∀ e ∈ E, l, h ∈ L :
yl,h,e + yh,l,e ≤ 1 (47)
l =h∧l ∼ =e h
S ls
l,e
xl,e,c,s = yh,l,e ∀ l ∈ L, e ∈ E (48)
h∈L∪{ }:h=l
es
c∈Ce s=Sl,e l0start
S ls
l,e
xl,e,c,s = yl,h,e ∀ l ∈ L, e ∈ E (49)
h∈L∪{ }:h=l
es
c∈Ce s=Sl,e l0end
yl00 ,l,e ≤ 1 ∀e∈E (50)
l∈L
yl,lL+1,e ≤ 1 ∀e∈E (51)
0
l∈L
ls
SL
i ,e
T
ei,c,t = 1 ∀ i ∈ F, c ∈ C (53)
c∈C t=S ob
i
⎛ ⎞
⎜
t
⎟
⎝1 − ei,c,z ⎠ ≤ Kcdi ∀ c ∈ C, t ∈ T (54)
i∈F :Siob ≤t z=Siob
S ls
1 l,e
∀ l ∈ L, e ∈ E, c ∈ Ce ,
xl,e,c,s ∈ {0, 1} (56)
es
Si,e ≤ s ≤ Si,e
ls
∀ e ∈ E, l, h ∈ L :
yl,h,e ∈ {0, 1} (57)
l = h ∧ l e h
ei,c,t ∈ {0, 1} ∀ i ∈ F , c ∈ C, t ∈ T (58)
uc,t ≥ 0 ∀ c ∈ C, t ∈ T . (59)
Objective function (39) minimizes the carousels’ utilization and additionally passen-
gers’ waiting times. The domain of the variables are defined in (56) to (59). IBHP’s set
3.3 Mathematical model 56
of constraints can be separated into constraints (40) to (51) modeling the infeed process
and constraints (52) to (55) modeling the passenger process.
Infeed process In constraints (40) the infeed start time of each trip is selected and
assigned to one infeed and one baggage carousel. Due to (41) and (42) each trip l ∈ Li\ {1i }
of flight i ∈ F is assigned to the same infeed station and to the same baggage carousel
as the first trip 1i . The precedence relation between two consecutive trips are set in
constraints (43) to (51). Constraints (43) ensure that two trips are consecutively served at
an infeed station, while an artificially delay of the infeed process of a trip is forbidden by
constraints (44). For example, consider two trip l and h consecutively assigned at infeed
station e, i.e. yl,h,e = 1, where trip l starts its infeed at time t = 2 and ends at t = 3.
Let us first assume that trip h can start the infeed process at t = 2, i.e. trip h’s time
window to start the infeed overlaps with the time window of trip l. Then the left term
of constraints (44) is equal to 3 enforcing that the right term has to be 2 which sets the
start time of trip h to 3, i.e. trip h is immediately fed in after trip l. If we assume that
trip h’s earliest infeed time is 4, i.e. the time windows for the start times do not overlap,
it follows that the right hand side of constraints (44) has to be 0 and therefore xh,e,c,4 = 1
and, hence, trip h is fed in with no artificial delay after trip l. To guarantee that also the
first trip is fed as soon as the trip arrives, we set the infeed duration of dummy trip le0
equal to a small constant > 0, while the infeed duration for the dummy trip lN+1 is set
to 0. Due to constraints (45) and (46), trips arriving first at infeed station e are served
first. To guarantee that either trip l is served before trip h, or vice versa, we require
constraints (47). Constraints (48) and (49) set for each trip l ∈ L exactly one predecessor
and one successor trip at the assigned infeed station e. Constraints (50) and (51) set at
most one trip l as successor or predecessor for dummy trips le0 and leL+1 , respectively.
Linearization In order to linearize the first quadratic part of the objective function,
the utilization is approximated with a step-wise function. We introduce threshold values
u1 < . . . < uk < . . . uK and associate to each threshold value greater than uk a penalty
3.3 Mathematical model 57
pu1 < . . . < puk < . . . < puK . The model formulation for the linearized IBHP (L-IBHP) can
be found in Appendix A.1.
Theorem 4. DP I is NP-complete.
Proof. Obviously, DP I is in NP. That is, given any assignment and schedule, we can test
feasibility in polynomial time. To show that IBHP is NP-hard, we proof that the feasibility
problem for DP I is already NP-hard. Therefore, we reduce the feasibility problem of DP I
in polynomial time to the K-colorability problem which is known to be NP-hard (see Garey
and Johnson [63]). In the K-colorability problem it is asked, whether the vertices v ∈ V
of a given graph G = (V, A) can be colored with at most K colors such that no adjacent
vertices v and v with (v, v ) ∈ A have the same color.
Suppose an arbitrary K-colorability problem with an underlying graph G is given.
Assume the infeed duration for each trip is equal to one and each trip has to be handled
for all e, e ∈ E, meaning that the
es ls es es
immediately, i.e. Sl,e = Sl,e . Moreover, let Sl,e = Sl,e
start time of the infeed process of trip l is identical for all infeed stations. Now we define
the following transformation:
3.3 Mathematical model 58
• For each color K we define an infeed station such that an infeed station always
corresponds to exactly one color.
• For each edge (v, v ) ∈ A we define a time period t ∈ T and two trips l and l , one
for each flight that corresponds to either vertex v or v . Further, let Sl,e
es
= Sles ,e = t
for all e ∈ E, i.e. both trips have to be handled in period t.
According to the transformation, for each pair of vertices that are connected in A, i.e.
which cannot be assigned the same color, there is a pair of trips of the flights corresponding
to the vertices which cannot be assigned to the same infeed station. As all trips of a flight
have to be assigned to the same infeed station, a flight (vertex) is assigned to exactly one
infeed station (color) and all trips that have to be handled in the same period (each pair
of adjacent vertices) cannot be assigned to the same infeed station (color). Therefore,
solving DP I answers the decision problem of the K-colorability problem.
Already the 3-colorability problem is NP-hard, meaning that only 3 infeed stations
lead to the NP-hardness of the IBHP. The problem becomes even more complex when
considering the carousels with the capacity restrictions on the number of flights which can
be served at a time.
Theorem 5. DP II is NP-complete.
Since the feasibility problem of the inbound problem at the airside and the utilization
problem at the landside are NP hard (see Theorem 4 and 5) and because of the large
number of variables and constraints, MIP formulation (39) – (147) does not guarantee
to obtain a solution within an acceptable time for a practical implementation (see §3.6).
3.4 Solution methodology 59
The time aspects becomes crucial as the volatility of the arrival time of flights and the
number of arriving bags makes it necessary to adjust the solution over the whole planning
day within short time periods, e.g. at a major European airport the algorithm presented
in §3.4 runs after each touch down of a flight.
1. Following the GRASP framework, the first phase is a memory-less construction phase
using a greedy randomized heuristic. A greedy heuristic iteratively extends a (par-
tial) solution by adding a new element (e.g. an assignment) in a greedy manner
according to the best value of a defined greedy function. To overcome the determin-
istic nature of a greedy heuristic, in each iteration, the current solution is extended
by an element that is randomly chosen out of a restricted candidate list RC. Based
on a greedy function, the RC is composed of all elements that lead to a new solution
within α% of the best solution found when adding an element.
order to overcome the local minimum. For this, so-called solution features are used
to determine the penalties. A feature φ ∈ Φ defines a property of the problem
having direct or indirect impact on solution x. A feature can be any property of a
solution that is non-trivial in the sense that not all solutions have this property. The
augmented cost function of an objective function f (x) and a solution x is defined as
h(x) = f (x) + λ · pφ · Iφ (x) (60)
φ∈Φ
where pφ is the penalty associated with a feature φ and indicator function Iφ (x) is
1 if x has feature φ and 0 otherwise. The sum of the feature penalties are weighted
with parameter λ. Initially, the penalties of all features are set to 0. Each time a
local optimum according to h(x) is found, penalties of features having the highest
GLS utility
costφ
uφ (x) = Iφ (x) ·
1 + pφ
are penalized by incrementing their penalty by one. costφ denotes the feature cost
which can either be constant or variable.
Furthermore, FLS is used to reduce the size of the neighborhoods in order to improve
runtime.
3. As the constructive and the improvement phase are memoryless procedures, i.e. they
generate solutions independently of previously generated solutions, path-relinking is
applied to further improve the found solution. The basic idea of path-relinking is to
iteratively change an initial solution towards a guiding solution in order to explore
the solution space between promising solutions.
For an overview of a single iteration of the heuristic procedure see Algorithm 1; Table 3.5
provides a description of the used variables and functions.
In the following, a solution is represented by a set of tuples {(e, c)i ∈ E × Ce |i ∈ F }
where each flight is assigned to a tuple (e, c) and for each infeed station e ∈ E we de-
fine an infeed order ≺e which leads to a unique solution in case more than one trip is
3.4 Solution methodology 61
arriving at the same time. Note that each representation leads to a unique solution as the
infeed begin of a trip cannot be artificially delayed in the infeed process as stated in IBHP.
Function Description
hcstr cost function in constructive phase
h augmented cost function in improvement phase
Solution Description
best
x best solution found based on function hcstr
x current iteration best solution found based on function hcstr
3.4 Solution methodology 62
to the best partial solution found are put into RC. Finally, flight i is randomly assigned
to a tuple (e, c) and infeed order ≺e from RC, and the partial solution is updated. The
procedure continuous until all flights are assigned and scheduled in solution xbest .
To demonstrate the effect of a new assignment on carousels’ utilization and the level
of service quality, let us consider the following example: Assume we have three trips l1 , l2
and l3 of three flights i1 ,i2 and i3 (see Table 3.6). There is one remote infeed station e with
an infeed rate of 1 bag per period which has access to carousels c1 and c2 . Further, we
assume that transportation time from the infeed station to the carousel is neglected. The
arrival time of the first passenger is the same at both carousels and the arriving rate of
passengers is equal to 1 passenger per period. Each bag belongs to exactly one passenger.
The objective is to minimize passenger waiting times. Finally, at infeed station e we have
order e with l1 e l3 e l2 . Assigning the first two trips to tuple (e, c1 ) results in the bag
arrival profile shown in Figure 3.3 (a). Based on pwaitl,e,c,s (t), passengers’s average waiting
times are 0 and 0.11 periods for trip l1 and l2 , respectively. Next, we assign trip l3 to
assignment tuple (e, c2 ). According to the order e , we have to schedule trip l3 before trip
l2 . Figure 3.3 (b) shows the resulting workload of carousel c1 . As can be seen, the delayed
infeed of trip l2 influences the workload and waiting times at carousel c1 , even though trip
l3 is not assigned to carousel c1 . While the workload has decreased, average passenger
waiting time for trip l2 has increased to 2 periods.
Ai,c1 Ai,c1
#Bags #Bags
Passenger waiting time Passenger waiting time
3 3
l2 i1 : 0; i2 : 0,11 i1 : 0; i2 : 2
l3
2 l2 2
l1 l1 l1 l1 l2
1 1
l1 l1 l2 l1 l1
0 0
Time Time
1 2 3 4 5 6 7 1 2 3 4 5 6 7
infeed infeed infeed infeed infeed
start l1 start l2 start l1 start l3 start l2
Figure 3.3: Workload and passenger waiting times at carousel c1 before and after the
assignment of trip l3 to remote infeed station e; the dotted line indicate the arrival time
of passengers at the carousel
1) Change the tuple of flight i; e.g. change (e, c)i to (e , c )i with e = e ∨ c = c . Note
that all possible infeed orders ≺e have to be considered in case e = e .
2) Change the infeed order of two simultaneously arriving trips l and h with l ∈ Li ∨h ∈
Li at an infeed station e; e.g. if l is served before h, replace l ≺e h by h ≺e l;
It is obvious that we are capable of reaching each solution in the space of feasible solutions
through neighborhood N 1(x).
Besides assigning a single flight to a new tuple (e, c) or changing the infeed order
of a flight’s trip, we also apply a 2-opt neighborhood search in neighborhood N 2 (x).
Neighborhood N 2 (x) swaps the carousel assignment of two flights i and j assigned to
different carousels. For both flights, all infeed stations connected to the new carousel are
evaluated, i.e. the tuples of flight i and j are changed according to:
(ei , ci )i → (ei , cj )i , ei ∈ Ecj and (ej , cj )j → (ej , ci )i , ej ∈ Eci .
Evaluating the new assignment includes all possible combinations of infeed orders ≺ei and
≺ej if ei = ei or ej = ej , respectively.
Note that if a neighborhood move changes the infeed station of a flight, it can have an
impact on the start time of the infeed of all subsequent flights assigned to the formerly
and newly assigned infeed station of the flight and consequently on all carousels that can
be reached by these infeed stations. Therefore, in the worst case, the utilization and the
3.4 Solution methodology 64
level of service quality at all carousels has to be re-calculated (see the example in §3.4.1).
The same holds for a change of the infeed order at an infeed station.
h(x) = f (x) + pcap
c · Iccap (x) + plsi,l · Ii,l
ls
(x) (61)
c∈C i∈F l∈Li
If local search in either neighborhood N 1(x) or N 2(x) does not find an improvement,
we update the augmented objective function h(x) according to (62).
Fast local search To speed up the local search we make use of fast local search (FLS)
techniques (see Faroe et al. [55], Tsang and Voudouris [128] and Voudouris [131]) which
subdivides the neighborhood into small sub-neighborhoods that can be either active or
inactive. The idea is to examine the sub-neighborhoods in a given order, searching only
the active ones. After exploring a sub-neighborhood, the search continues with the next
active sub-neighborhood. A sub-neighborhood is set inactive when no solution leading to
an improvement can be found. We define the sub-neighborhoods of N 1 (x) and N 2 (x) as
follows:
• Ni1(x): For each flight i, we define Ni1 (x) as the set of solutions that can be obtained
by performing a neighborhood move in N 1 (x) for flight i
• Ni2(x): For each flight i, we define Ni2 (x) as the set of solutions that can be obtained
by performing a neighborhood move in N 2(x) where one of the swapped flights is i
and the neighborhood of the other flight is active.
We order both sets of sub-neighborhoods according to the flight’s expected time of arrival.
If an improvement is found, all affected sub-neighborhoods are reactivated. A flight i and
its corresponding sub-neighborhood can either be affected when the infeed time of at least
one of its trips changes or when the utilization at the flights’ carousel during the processing
of i changes.
We can further speed up local search by reducing the neighborhood size. For Ni1 (x) and
Ni2 (x) we consider only infeed stations within a maximal distance MaxDist from flight i’s
current infeed station. Moreover, we can reduce the size of neighborhood Ni2 (x) by only
swapping the carousel assignment of flight i with those flights which arrive on block within
the time window Siob − MaxTime, Siob + MaxTime . Algorithm 3 in Appendix A.4
shows the pseudo code for the local search.
• Two trips competing for the same infeed station in the same period have a different
infeed order.
We transform a start solution into the target solution by sequentially swapping the assign-
ment or infeed order of the initial solution into the assignment or infeed order of the target
solution in a best first manner. In each step, we can either change the infeed order of two
trips at an infeed station or the assignment tuple of a flight. In case of moving a flight to a
new infeed station, we adapt the infeed order of the target solution. For example, assume
two flights i and j that are assigned to tuple (ei , ci ) and (ej , cj ) in the start solution and to
assignment tuple (ei , ci) and(ej , cj ) in the target solution, respectively. If ei = ei ∨ ci = ci
and ej = ej ∨ cj = cj we swap the assignment of either flight i or flight j in a best first
manner based on objective hconst (x).
ing to Correia and Wirasinghe [48], we asked the passengers picking up their baggage to
assess the
The details and the results of the survey are provided in Appendix A.2. The results
showed that passengers’ waiting times are most relevant for the level of service. To obtain
6
fitted curve
observed data
average waiting times
4
Assessment
0
0 3.72 7.83 10.35 13.12 16.14 17.22 25 30 35
Waiting time (in minutes)
Figure 3.4: Interpolation between passengers’ assessment and the realized waiting time;
the size of the dots represents the number of observations in the same minute
utility function g(dwait) for passengers’ waiting times, we interpolate the points between
passengers’ assessment for the waiting time on a scale from 1 (=very satisfied) to 6 (=not
satisfied) and passengers’ realized waiting time measured in seconds (see Figure 3.4). The
best interpolation is a polynomial function of degree 2. Hence, with increasing waiting
time, passengers’ tolerance of waiting decreases quadratically.
value for λ, we provide the dispatcher with an interactive method so that the dispatcher
can consider different choices of λ in short time. In order to quickly produce new results,
we do not want to resolve the problem from scratch when using a different weighting of the
objectives because this is too time consuming when done for several λ values. Therefore,
we propose an innovative approach which makes use of the path-relinking idea. The
procedure consists of the following three steps:
• In a first step, a solution xinit , based on weight λinit , is generated and presented to
the dispatcher.
• In a second step, we solve the problem for values λdec < λinit and λinc > λinit
leading to solutions xdec and xinc . The dispatcher can decide whether he selects the
initial solution xinit based on λinit or further explores the solution space by either
incrementing the weight towards λinc or by decrementing the weight towards λdec .
• In case of a decrease of the weight from λinit towards λdec or an increase towards λinc
a third step is initiated. In the first case, a path-relinking procedure from starting
solution xinit to guiding solution xdec is performed, while in the latter case a path-
relinking procedure from starting solution xinit to guiding solution xinc is performed.
Following the path relinking procedure presented in §3.4.2, moves between the solu-
tions are made in a best first manner, but now the best move is evaluated based on
the new objective weight set by the dispatcher.
The procedure iteratively presents new solutions xnew to the dispatcher without having
to resolve the problem from scratch each time (see Figure 3.5). In the following, we call
the procedure multi-objective path-relinking (MOPR)
service level
violation
xinit Solution
space
xnew
xdec
∗
x
utilization
Figure 3.5: Solution space if the objective weight is decreased from λinit towards λdec with
xnew as best solution found when exploring the path between solutions xinit and xdec ; x∗
shows the optimal solution for the new weight of λ
flights currently handled at an infeed station or baggage carousel are fixed according to the
previously undertaken assignment. For flights arriving in the future, the actual expected
arrival times are used when the algorithm starts to updates the solution. As the actual
arrival time is updated by the incoming flights during their journey, flights’ actual expected
arrival times becomes more accurate as the airplane approaches the airport, which reduces
the volatility of the solutions.
Since the assignment of the carousel and infeed station has to be determined some
time before the flight is on-block, the computing time to obtain a solution is restricted to
at most Δtime minutes (e.g. 3 minutes). The computing time should be chosen such that
the dispatcher may have some time left to elaborate other weight combinations with the
multi-objective path-relinking method (see §3.5.2).
To improve the quality of solutions obtained within the given computation time of
time
Δ , we reduce the size of the solution space and, hence, the number of possible neigh-
borhoods to be examined, by considering only flights arriving during the next Δnext > 0
minutes (e.g. 180 minutes) in expectation; flights further in the future have less influence
on flights currently handled. Moreover, as the plan is updated during the course of the
day and as the announcement of the baggage carousel is only important for incoming pas-
sengers already on the ground, a plan for all flights is not required for inbound baggage
3.6 Computational study 70
handling.
Table 3.7: Penalties and threshold values for the utilization of L-IBHP
Threshold values
u1 u2 u3 u4 u5
Utilization ≤ 0.1 0.4 0.8 1 2
Penalties 0.1 1.6 6.4 10 100
performance of each subroutine of the heuristic and the solution quality of the multi-
objective path-relinking (see §3.5.2) is studied in §3.6.1.2.
For the comparison of L-IBHP and HGGL we consider ‘instance set 1’ to ‘instance set 4’.
The results obtained are presented in Table 3.8 and 3.9, respectively. Column “λ” shows
the λ-value for the objective function for each instance set “Inst”. In Table 3.8 column
“Time (s)” gives the required time in seconds (s) to obtain the objective value in column
“f ”. If no solution is found in 3 minutes, we report the objective value and time of the first
feasible solution found within 3 minutes. An instance set where the time limit has been
exceeded for at least one of its contained instances is indicated by ‘†’. The objective value
of the optimal solution for L-IBHP is given in column “f ∗ ” which is obtained by solving
L-IBHP without time limit. Column “GAP∗ ” shows the gap in % between the objective
value of the solution found in column “f ” and the objective value of the optimal solution.
In Table 3.9 columns “GAP” and “GAP∗ ” report the gap in % between the objective
value of the heuristic solution and the solution of L-IBHP within the computational time
limit as reported in column “f ”, and the objective function value of the optimal solution
of L-IBHP reported in column “f ∗ ”, respectively. The number of periods in which the
utilization is within the intervall ]0.0, 0.1], ]0.1, 0.4], ]0.4, 0.8] and ]0.8, 1.0] is shown in
“utilization” columns 0.1, 0.4, 0.8, 1.0, respectively. If a carousel’s utilization is 0 in a
period, it is not taken into account. The percentage of passengers waiting less than 3, 8,
14, 17 and 180 minutes are given in the respective columns “waiting time”.
While the average solution time optimizing for different λ values for ‘instance set 1’
using CPLEX is at most 104 seconds, the average time to find a feasible solution for
instance sets with more than 20 flights exceeds the time limit of 180 seconds for all λ > 0.
Moreover, the quality of the first solution found after 180 seconds is 0.2% to 61.31% worse
3.6 Computational study 72
than the solution found by the heuristic. Comparing the solution quality of the heurstic
with the optimal solutions of L-IBHP, we see that the solution of the heurstic is at most
5.03% worse than the optimal solution. For instance sets 5’ and 6’ with 50 and 60 flights,
L-IBHP could not find an optimal or even feasible solution in some of the sets instances
within 45 minutes.
The results reveal that minimizing carousels’ utilization and passengers’ waiting times
are conflicting objectives. Considering for example ‘instance set 3’, minimizing carousels’
utilization only, i.e. λ = 1, a utilization of 0.4 is never exceeded, while up to 45% of
the passengers wait longer than 17 minutes and only 2.01% of the passengers wait less
than 3 minutes. In contrast, when minimizing passengers’ waiting times only, i.e. λ = 0,
carousels’ utlization is increased such that a utilization 0.4 is exceeded 28 times, while
only at most 12.65% of passengers wait longer than 17 minutes and 45% of passengers
wait less than 3 minutes for their bags.
To test the performance of the subroutines GFLS and path-relinking, we use ‘instance set
4’ to ‘instance set 6’ with 40, 50 and 60 flights. In Table 3.10, we report the average per-
cental improvements of the constructive solution obtained by the GRASP when applying
GFLS and path-relinking subsequently (see rows 4 and 5 in Table 3.10), and the average
improvement when applying only path-relinking (see row 6 in Table 3.10). The initial
solution of the construction heuristic is improved by up to 20.61% using both GFLS and
path-relinking subsequently, while applying only path-relinking yields an improvement of
up to 12.49%.
The last set of rows of Table 3.10 shows the gap in % between the solution obtained
for the heuristic, when optimizing the objective with weight λ and the solution obtained
when using multi-objective path-relinking (MOPR) between the HGGLS solutions for
weight λinit and λinc with an objective weight of λ. The gap between the heuristic solution
and the solution obtained by the multi-objective path-relinking is at most 4.8%. The
effectiveness of the MOPR is emphasized when considering the computing times of less
than 1 second for all instances. Multi-objective path-relinking is a highly valuable method
for the dispatcher to approximate high quality (heuristic) solutions of different weights
in short runtime with only small decreases of the solution quality compared to the best
heuristic solution found.
the results obtained over 1 historical week, where one day has 1, 440 periods, i.e. the day
is partitioned in 1 minute periods. In turn, the rolling planning framework is implemented
into a simulation model as described in Appendix A.3. The algorithmic setting is equal to
the setting as used in §3.6.1 with Δnext = 180 and Δtime = 3. In Table 3.11 the heuristic
(see rows for “Heuristic”) is compared with the solution used at the cooperating Airport
(see row “Airport”). The heuristic is run for λ-values 0, 0.2, 0.5, 0.8 and 1. Columns 3 to 6
show in how many time periods, relative to the overall claiming period, the utilization is
within the interval ]0.0, 0.1], ]0.1, 0.4], ]0.4, 0.8] and ]0.8, 1.0], respectively. An utilization
value of 0 is not taken into account. The percentage of passengers waiting not longer than
3, 8, 14, 17 and 120 minutes are given in columns 7 to 11. The average maximal utilization
as well as the average waiting time of passengers in minutes obtained during the simulation
are presented in the columns “Avg max utilization” and “Avg waiting time”. In the last
column “Var waiting time” we give the variance for the average expected waiting time
for passengers according to distribution (38) to passengers’ realized waiting time in the
simulation. To get valid results, we simulate each λ-value 100 times.
During the simulation we had to optimize 44.5 flights in average in the time intervals.
The utilization obtained with the heuristic outperforms the utilization obtained with the
manually solution procedure by at least 3.33% (λ = 0) and by at most 46.67% (λ = 1).
Moreover, with the procedure from the airport, we obtained 3 to 17 times an utilization
of 100%, which was never the case when using the heuristic. However, the higher the
λ-value the higher the average waiting times for passengers. The heuristic is even worse in
terms of average waiting time in comparisson to the aiprort procedure for λ ≥ 0.5. Also
the variance of the waiting time increases with increasing λ-values which can be explained
by the increased maximal waiting times for passengers when λ is set high. Applying
the χ2 -test with the realized waiting times in the simulation and expected waiting times
computed with distribution (38) we obtain a significant level of 6%. The coefficient of
variance is between 0.3 and 0.4.
3.7 Conclusion
In this chapter we have discussed theoretically and practically the inbound baggage han-
dling at international airports. A MIP formulation minimizing the carousel’s utilization
and the violation of passengers’ level of service quality. The problem complexity was
3.7 Conclusion 75
analyzed by considering the assignment problem for the flights’ trips to infeed stations
and carousels and by considering the objective of obtaining a minimized utilization. Both
problems turned out to be NP-hard to solve. To tackle the problem we proposed an hybrid
GRASP/GFLS heuristic with path-relinking. Aspects for practical application of the al-
gorithm in a rolling planning framework were discussed. There we present the results of a
survey measuring the level of service quality and show a technique for the dispatcher how to
get solutions with different objective weights within short time when using path-relinking.
In a real-world simulation we showed that our algorithm outperforms the solution quality
used at an international European Airport. Based on the results in our simulation study,
we set the λ-value for the cooperating airport to 0.2 and 0. With these weights we never
reached an utilization higher than 0.8 and obtained average waiting times of 5.9 minutes.
Given some incremented steps between the λ-values 0 and 0.2, we implemented the multi-
objective path-relinking (see §3.5.2) to calculate, e.g., 4 solution possibilities which can be
selected by the dispatcher. To guarantee flexibility, the λ-values as well as the incremented
steps between two λ-values for the MOPR can be defined by the dispatcher in the future.
Moreover, currently, we conduct surveys in order to evaluate the improvement in terms of
passenger satisfaction, especially the impact of the trade-off between passengers’ waiting
time and passengers’ walking distance.
3.7 Conclusion
4.1 Introduction
Daily and weekly fluctuations in demand coupled with the use of a part-time flexible
workforce are major factors that set apart the service sector from manufacturing where
standard 8-hour shifts are the rule. The challenge for service managers is to continually
balance customer satisfaction with personnel costs and worker preferences for shifts. Call
centers, urban transportation systems, airports, and hospitals are examples where this
balance drives staffing decisions at all levels of planning. In such environments, cyclic
scheduling is often the best way to cover demand while assuring an equal allocation of
work over the planning horizon. In the cyclic model, the workforce is typically divided
into groups of equal size and each group is assigned the same schedule but lagged in time
(see e.g., Rocha et al. 111). When a group reaches the last scheduling period, it starts
from the beginning. In contrast to tour scheduling, where employees may receive a weekly
or monthly non-repeating schedule on short notice, cyclic rosters offer a high degree of
fairness and regularity. Everyone works the same schedule (although displaced in time)
and so can see their on and off days well in advance.
Cyclic rosters, however, admit several disadvantages, the most notable being lack of
management flexibility when reacting to weekly demand fluctuations or unusually high
undercoverage when, say, more than a few employees in the same group are absent on
the same day. In an effort to address these and related shortcomings, we present a novel
78
4.1 Introduction 79
approach to cyclic rostering derived from practice. In particular, we introduce the con-
cept of a flexible cyclic roster which offers many of the benefits of tour scheduling while
maintaining a high degree of repeatability from period to period.
In cyclic rostering, the days in the planning horizon are grouped into periods of equal
size, for example, weeks or months, and each day is considered to be either on or off.
For the on-days, each worker is assigned a shift, which is defined by its starting time,
duration, and perhaps break characteristics. In some cases, the option may exist for a
subset of “shifts” to be off-days rather than working days (see Kiermaier et al. 78). The
number of periods in the planning horizon is generally equal to the number of groups,
which, in practice can be five or more (Rocha et al. 111, Musliu 94). In contrast, the
planning horizon for tour scheduling is usually much shorter; e.g., Purnomo and Bard
[104] used two-week rotations to construct nurse rosters, while Brunner and Bard [34]
developed weekly tours for U.S. Postal workers.
In our version of flexible cyclic rostering, we integrate tactical and short-term planning
within a two-phase model. At the tactical or longer-term level, either a day off or a shift
type is chosen for each day in the cyclic roster. In the second phase, just prior to the
upcoming week, one shift out of the set of eligible shifts is selected for each day on in the
schedule. Employees thus know their working days from one week to the next, although
they may not know their actual shifts. However, they all share the same base schedule
with the same days-off pattern and workload. From the scheduler’s point of view, more
freedom exists to match shifts with expected demand and to accommodate fluctuations in
worker availability.
Formalizing the generation of flexible cyclic rosters leads to a stochastic multi-stage
problem when different demand scenarios are taken into account. To tackle the curse
of dimensionality, we introduce two approximations. The first is the conversion of the
multi-stage problem into a two-stage problem, and the second relates to how shifts are
chosen in the second stage of the latter. Nevertheless, the approximations are sufficiently
general to permit the resolution of standard cyclic rostering problems and are shown to
provide high-quality solutions over a wide range of scenarios. To the best of our knowledge,
this is the first attempt to optimize cyclic rostering problems with probabilistic demand.
Our methodology is evaluated using data obtained from a ground handling company that
provides services to a large European airport as well as data that was randomly generated
4.2 Literature review 80
• The introduction of flexible cyclic rostering, which combines the features of tour
scheduling and traditional cyclic rostering
• A comparative analysis that shows the advantages of flexible cyclic rostering over
traditional cyclic rostering and the value of stochastic information for either approach
based on data associated with airport ground handlers
The chapter is organized as follows. In § 5.2 we review the literature on cyclic roster-
ing and stochastic programming for personnel scheduling. The problem of flexible cyclic
rostering is described § 5.3 and the multi-stage formulation along with our two-stage ap-
proximations are given in § 4.4. The demand scenarios used to evaluate the models and
scheduling procedures are described in § 4.6, while the computational comparisons are
reported in § 5.6. We close with some insights and observations on the proposed method-
ology in § 5.7.
a shift is NP hard. He then presented a new linear programming heuristic with a novel
round-off scheme that produced high quality lower bounds.
Rosenbloom and Goertzen [113] proposed a three-stage algorithm for constructing
cyclic schedules for hospital nurses. In the first stage, a set of possible schedules is gener-
ated. In the second stage, an integer program is solved with the objective of minimizing
shift costs while ensuring that the minimum daily coverage requirements is met. The last
stage converts the second stage solution into actual work patterns for the nurses. The
approach is limited in that only workstretches and days off are considered, and then only
for a single shift per day.
Balakrishnan and Wong [20] present a network flow-based formulation for a cyclic
rostering problem but did not permit different shift types within a workstretch. Their so-
lution approach was based on Lagrangian duality and the enumeration of up to k-shortest
paths in the network. A similar approach was followed by Millar and Kiragu [91] who
tackled cyclic and non-cyclic scheduling problems for nurses by solving a shortest path
problem. Because only two non-overlapping shifts were considered, they were able to effi-
ciently enumerate all feasible workstretches. Taking an interactive approach, Musliu et al.
[95] developed a four-step algorithm to generate a cyclic rosters, which was implemented
in a commercial scheduling package. Their algorithm first chooses a set of lengths for
consecutive work blocks and then chooses a sequence of blocks that satisfies certain week-
end rules. Next, possible shift sequences for the chosen work blocks are determined, and
finally the shift sequences are assigned to work blocks.
Felici and Gentile [56] introduced an integer programming model to maximize staff
satisfaction that gives preference to solutions in which desirable pairs of shifts are assigned
consecutively. To speed convergence, valid inequalities were introduced that tightened the
LP relaxation. The approach was implemented by Alitalia to generate rosters for their
ground staff. Laporte et al. [81] present an integer linear programming-based algorithm to
generate cyclic rosters for police and fire departments. Three non-overlapping shifts were
included in the model, and under the given constraints, shift changes were only allowed
after a day off.
An integer programming model for scheduling teams was proposed by Rocha et al.
[111] who used it with only minor modifications for two case studies. The first concerned
a glass manufacturing facility and the second a “continuous” care unit in a hospital.
4.2 Literature review 82
In both cases, all teams worked the same schedule but with an offset parameter that
specifies the number of days between cycles. As in the above mentioned papers, their
model was built around shift-based demand meaning that the number of shifts that have
to be assigned to rosters is given. Shift-based demand implies that some preprocessor or
planning authority determines the composition and number of shifts needed. This makes
the rostering problem easier. Others have built models around period-based demand
where the demand for workers is given per time period but the composition and number
of shifts is not predetermined. Herbers [68] claimed to be the first to present a period-
based approach. He designed a branch-and-price algorithm to solve the cyclic rostering
problem and tested it using real-world airport planning scenarios. Similarly, Purnomo
and Bard [104] used branch and price to generate cyclic nurse rosters with the objective of
minimizing a weighted combination of undercoverage and individual preference violations
related to days off patterns and back-to-back shifts changes. In light of the way rotations
were defined, they were able to take advantage of two levels of aggregation to substantially
reduce the size of the problem.
Lusby et al. [88] addressed a ground crew rostering problem for a major European
airline that required fixed work patterns. In particular, all employees worked a 6&3
pattern in which six days on were followed by three days off. A cutting stock-based integer
programming formulation was proposed and solved heuristically using a combination of
decomposition, column generation, and variable fixing. Testing was done for a six-month
planning horizon that was divided into smaller, overlapping blocks. A solution was then
found for each block in sequence, where the solution for the overlapping portion of a
predecessor block served as input to the current block.
Returning to demand uncertainty, Bard et al. [25] developed a two-stage integer,
stochastic optimization model for a staff planing and scheduling problem at U.S. Postal
Service mail processing centers. In the first stage, the size and composition of the perma-
nent workforce is determined; in the second stage, demand is observed and weekly tours
with overtime are generated for the staff. Instances with a 52-week planning horizon and
three demand scenarios were solved. Further examples of stochastic programming as ap-
plied to workforce scheduling can be found in Zhu and Sherali [139], Robbins and Harrison
[108], and Campbell [39]. For more information on stochastic programming, see Louveaux
and Schultz [86], Birge and Louveaux [31], and Sen [114].
4.3 Problem description 83
Table 4.1: Example of a cyclic roster for three weeks and groups
Table 4.2: Example of a flexible cyclic roster for three weeks and groups
The roster in Table 4.2 is really a set of weekly templates and not a set of schedules.
Prior to the week of operation, the scheduler must choose an appropriate shift for each
working day for each group. A possible realization of such a roster for groups 1 to 3 in
calendar week 2 is given in Table 4.3.
In the first step, a flexible cyclic roster is constructed and is then finalized in the
second step where a weekly tour is specified for each group. Of course, legal restrictions,
organizational policies, and perhaps union agreements must be respected if the schedules
are to be feasible. For our application, the following regulations must be observed:
W2. The overall number of working hours per week is within a specified range.
W3. For any given day, all workers in the same group work the same shift
C3. The assigned shift types and the start time of a shift must be non-decreasing from
one day to the next when the days are consecutive, i.e., the working days are subject
to forward rotation.
4.4 Model development 86
While constraints W1 to W3 can be considered independently for each week in the planning
horizon, constraints C1 to C3 apply to consecutive days and weeks. The forward rotation
for shift types, C3, means that when a particular shift is assigned on day d an earlier shift
cannot be assigned on day d + 1. The next section provides a stochastic model for the
generation of traditional and flexible cyclic rosters.
4.4.1 Notation
The required sets and parameters are summarized in Tables 5.2 and 4.5, respectively.
As previously mentioned, the planning horizon is divided into weeks, or more generally,
time periods of equal length, and the number of weeks in a cycle is equal to the number
of groups, which is denoted by G. For a 10-week problem, for example, |G|= 10. The
workforce is partitioned amongst the groups and has to cover the demand over a planning
horizon of W weeks. In our model, a day is divided into forty-eight 30-minute periods, and
the number of workers required in each period is considered to be an input parameter, at
least in the deterministic version of the problem. This is opposed to shift-based demand
where the number and type of shifts are given and worker demand is specified for each
(e.g., see Bard et al. 25, Rocha et al. 111).
Sets Definition
P = {1, ..., P } set of shift types (e.g., early/day/late)
S = {1, ..., S} set of shifts
S(p) ⊆ S set of shifts associated with shift type p
T = {1, ..., T } set of time periods per day
D = {1, ..., D} set of days per week
W = {1, ..., W } set of weeks in the planning horizon
G = {1, ..., G} set of groups
4.4 Model development 87
Parameter Definition
as,t number of workers per group if shift s covers period t, 0 otherwise
dmin minimum number of working days per week allowed
dmax maximum number of working days per week allowed
fs earliest period covered by shift s
fp earliest period covered by any shift associated with shift type p
ls number of periods covered by shift s
D random vector for demand
D d,t random variable for demand on day d in period t
nmax maximum number of consecutive working days allowed
hmax maximum number of working periods per week allowed
hmin minimum number of working periods per week allowed
M arbitrarily large positive number
Demand patterns for service workers, such as airport ground handlers and retail clerks,
can vary widely over the day, week and season. For tactical planning, the robustness of
generated plans is a critical factor in controlling labor costs. To account for demand
fluctuations and uncertainty from one period to the next, we present below a stochastic
programming model that can be used to construct cyclic rosters for a fixed workforce.
It is assumed that the demand in each week w ∈ W is independent of the demand
in the other weeks, and that each week has the same demand distribution. The random
= D
vector for the demand is denoted by D
and D(ω) = D (ω) gives
d,t d,t
d∈D,t∈T d∈D,t∈T
a realization for the demand of a sample point or scenario ω ∈ Ω, where Ω represents the
finite support or sample space. The corresponding probability mass function is give by
P D = D(ω)
= p(ω).
When selecting realizations for the demand, several different approaches may be fol-
lowed. In practice as well as in literature, a single scenario representing a ‘typical week’
is often favored. In such cases, historical averages or even forecasts are taken as input.
When a robust solution is called for, a worst case scenario may be chosen. In our analysis,
we include up to 10 realizations reflecting high and low demand curves, as well as small
and large fluctuations over the week. Each is discussed in Section 4.6.
4.4 Model development 88
Minimize ED
h1 (x, D) = zM (63)
subject to
xp,g,d ≤ 1 ∀ w ∈ W, d ∈ D (64)
p∈P
4.4 Model development 89
dmin ≤ xp,g,d ≤ dmax ∀g∈G (65)
p∈P d∈D
max
d+n
xp,g,δ ≤ nmax ∀ d ≤ D − nmax , g ∈ G (66)
δ=d p∈P
nmax −(D−d)
D
xp,g,δ + xp,g+1,δ ≤ nmax ∀ D − nmax < d ≤ D, g ∈ G \ {10}
δ=d p∈P δ=1 p∈P
(67)
nmax −(D−d)
D
xp,G,d + xp,1,δ ≤ nmax ∀ D − nmax < d ≤ D (68)
¯ p∈P
d=d δ=1 p∈P
(xp,g,D−1 + xp,g,D ) ≤ 2 · vg ∀g∈G (69)
p∈P
vψ ≤ B − A ∀ g ∈ {1, .., G − B + 1} (70)
ψ∈{g,..,g+B−1}
vψ + vψ ≤ B − A ∀ g ∈ {G − B + 2, .., G} (71)
ψ∈{g,..,G} ψ∈{1,..,B−(G−g)−1}
⎛ ⎞
fp · xp,g,d ≤ fp · xp,g,d+1 + ⎝1 − xp,g,d+1 ⎠ · M ∀ g ∈ G, d ∈ D \ {D}
p∈P p∈P p∈P
(72)
⎛ ⎞
fp · xp,g,D ≤ fp · xp,g+1,1 + ⎝1 − xp,g+1,1 ⎠ · M ∀ g ∈ G \ {G} (73)
p∈P p∈P p∈P
⎛ ⎞
fp · xp,G,D ≤ fp · xp,1,1 + ⎝1 − xp,1,1 ⎠ · M (74)
p∈P p∈P p∈P
with hW +1 (x, yW , D(ω)) ≡ 0 for all ω ∈ Ω.
The objective functions (63), (76) and (84) minimize the expected uncovered demand
across the W planning weeks. In what follows, we describe the constraints for the (deter-
ministic) first stage and (stochastic) subsequent stages.
First stage In light of constraints (64), at most one shift type is selected for each day
in the W -week schedule. Constraints (65) bound the minimum and maximum number of
working days per week as required by W1. Constraints (66) – (68) bound the maximum
number of consecutive working days to at most nmax as required by C1. Constraints (66)
enforce the maximum consecutive working days within a week, while (67) account for the
transition from one week to the next except for the transition from the last week to the first
which is modeled in constraints (68). The A out of B weekends requirement as specified
by C2 is modeled by (69) – (71). Constraints (69) determine whether a shift is assigned on
a weekend within a week. Constraints (70) and (71) enforce the weekend requirement for
B consecutive weeks within the same cycle and account for the transition from one cycle
to the next, respectively. Constraints (72) – (74) assign shift types in accordance with
the forward rotation requirement C3 , e.g., an early shift cannot immediately follow a late
shift. Constraints (72) establish forward rotation within each week, while (73) account for
4.5 Model approximations 91
transitions between consecutive weeks, and (74) take care of the transition from the last
week in the cycle to the first week. The variables are defined in (75).
Stages 1 ≤ w ≤ W Constraints (77) serve as a link between shift and the shift types
selected in the first stage for each day. These constraints connect the first stage decisions
with the decisions taken in the stochastic stages 1 to W . Thus, xp,g,d can bee seen as a
parameter. The minimum and maximum number of working hours per week are bounded
by constraints (78), as required by W2. The undercoverage for each random event ω
with respect to the selected shift start times is accounted for by the variables uw,d,t(ω)
in probabilistic constraints (79). Note that the group size is reflected in the parameter
as,t , which is equal to the number of workers per group if shift s covers period t and 0
otherwise. Thus, (79) implies that all members of a group work the same schedule.
Constraints (80) – (81) are similar to (72) – (74) and enforce non-decreasing shift
starting times from one day to the next and hence guarantee forward rotation throughout
the roster. More specifically, (80) guarantees forward rotation within each week, while
(81) accounts for transitions between consecutive weeks in which yg,s,w−1,d represents a
parameter for the decision taken in the previous stage, that is, week w − 1. The variables
are defined in (82) and (83).
It can easily be shown that each of the W models (76) – (83) is NP-hard (see Lau 82).
In theory, M-SCRP can be solved by dynamic programming when the set of scenarios Ω
is finite. In such a case, we would have to solve |Ω|W problems to evaluate all scenario
realizations across W weeks for one given solution of the first stage model (63) – (75).
If, for example, only 2 demand scenarios were considered for a week, there would be 210
possible realizations across a 10-week planning horizon. To make the problem tractable
for real-world applications, two approximations are introduced.
of the reduced model. The aim is to further decrease model complexity and hence ease
the computational burden.
where
h(x, D(ω)) = minimize ud,t (ω) (86)
d∈D t∈T
When only one scenario is considered, i.e., |Ω| = 1, the solution to 2-SCRP provides
an upper bound for the M-SCRP (see Theorem 6 in the next subsection). However,
because 2-SCRP does not consider the transition between two weeks with different demand
realizations, its solution is less robust than that of M-SCRP. The reduction of the scenario
space from |Ω|W to |Ω|, though, makes the model more tractable for real-world instances.
When more than one scenario is considered, i.e., |Ω| > 1, we cannot make a statement
whether the objective function value derived from the two-stage model approximation is
lower, higher or equal to the M-SCPR’s objective function value. Hence, 2-SCRP does
not constitute a lower or upper bound for M-SCRP.
Consider a small example where |T | = 2 with only one shift type that allows for two
different shifts, i.e., S = {1, 2} , P = {1} , S(1) = {1, 2}. Shift 1 covers the first period of
the day while shift 2 covers the second period, implying that a1,1 = 1, a1,2 = 0, a2,1 = 0, and
a2,2 = 1. Without loss of generality, we consider only two days (D = {1, 2}) and assume
that the group size is equal to 1 (|G| = 1), there are two weeks in the planning horizon
(|W| = 2), and there are two scenarios (Ω = {ω1 , ω2 }) with both random events having
the same likelihood in each w ∈ W. Finally, we assume no restrictions on the number of
∗
working days per week. Let zM and z2∗ be the optimal solutions to M-SCRP and 2-SCRP,
∗
respectively. To show that zM can be larger than z2∗ , we assume that for ω1 and ω2 we
get demand realizations D(ω 1 ) with Dd,1 (ω1 ) = 0, Dd,2 (ω1 ) = 1 for all d ∈ D and D(ω2 )
(ω ) = 1, D
with D (ω ) = 0 for all d ∈ D, respectively. Table 4.6 enumerates the
d,1 2 d,2 2
different combinations of random events for both weeks and shows the resulting demand
realizations as well as resulting undercoverage for the optimal solution for M-SCRP and
2-SCRP. For an optimal solution of the problem, demand that cannot be covered due to
∗
forward rotation constraints is circled. For this instance we get zM = (0+1+0+0)/4 = 0.25
and z2∗ = 2 · (0 + 0)/2 = 0.
∗
In contrast, we show that it is possible for zM < z2∗ by assuming that for ω1 and ω2 we
get demand realizations D(ω
1 ) with D0,1 (ω1 ) = 0, D0,2 (ω1 ) = 1, D1,1 (ω1 ) = 1, D1,2 (ω1 ) = 0
and D(ω
2 ) with D0,1 (ω2 ) = 1, D0,2 (ω2 ) = 0, D1,1 (ω2 ) = 0, D1,2 (ω2 ) = 1, respectively.
4.5 Model approximations 94
Table 4.6: Example 1 – objective function values for M-SCRP and 2-SCRP
(a) M-SCRP
(b) 2-SCRP
Table 4.7 depicts the different combinations of random events for both weeks and shows the
resulting demand realizations as well as resulting undercoverage for the optimal solution
∗
for M-SCRP and 2-SCRP. For this instance we get zM = (2 + 1 + 1 + 0)/4 = 1 and
∗
z2 = 2 · (1 + 1)/2 = 2.
Symmetry constraints When the number of scenarios is not too large, the two-stage
model can be solved as a single integer program by enumerating (85) – (91) for all scenarios.
For any optimal solution, there are at least |W| − 1 symmetric alternative solutions with
the same objective function value. This can be seen by rotating the weekly schedules
forward without changing their order. To reduce the symmetry, we introduce a set of
symmetry-breaking constraints.
ls · y1,s,d(ω) ≥ ls · yg,s,d(ω) ∀ g ∈ G \ {1} (92)
ω∈Ω d∈D s∈S ω∈Ω d∈D s∈S
Constraints (92) require that the expected number of total working hours in the first
week of the flexible cyclic roster, i.e., for g = 1, are greater than or equal to the expected
4.5 Model approximations 95
Table 4.7: Example 2 – objective function values for M-SCRP and 2-SCRP
(a) M-SCRP
(b) 2-SCRP
number of total working hours in any of the other G − 1 weeks of the schedule.
subject to
xs,g,d ≤ 1 ∀ g ∈ G, d ∈ D (94)
s∈S
dmin ≤ xs,g,d ≤ dmax ∀g∈G (95)
s∈S d∈D
max
d+n
xs,g,δ ≤ nmax ∀ g ∈ G, d ≤ D − nmax (96)
δ=d s∈S
nmax −(D−d)
D
xs,g,δ + xs,g+1,δ ≤ nmax ∀ g ∈ G \ {G}, D − nmax < d ≤ D
δ=d s∈S δ=1 s∈S
(97)
nmax −(D−d)
D
xs,G,δ + xs,1,δ ≤ nmax ∀ D − nmax < d ≤ D (98)
δ=d s∈S δ=1 s∈S
(xs,g,D−1 + xs,g,D ) ≤ 2 · vg ∀g∈G (99)
s∈S
vψ ≤ B − A ∀ g ∈ {1, .., G − B + 1} (100)
ψ∈{g,..,g+B−1}
vψ + vψ ≤ B − A ∀ g ∈ {G − B + 2, .., G} (101)
ψ∈{g,..,G} ψ∈{1,..,B−(G−g)−1}
fs · xs,g,d ≤ fp · xs,g,d+1 + 1 − xs,g,d+1 · M ∀ g ∈ G, d ∈ D \ {D}
s∈S s∈S s∈S
(102)
fs · xs,g,D ≤ fs · xs,g+1,1 + 1 − xs,g+1,1 · M ∀ g ∈ G \ {G} (103)
s∈S s∈S s∈S
⎛ ⎞
fs · xs,G,D ≤ fp · xs,1,1 + ⎝1 − xs,1,1 ⎠ · M (104)
s∈S s∈S p∈P
(ω) ∀ ω ∈ Ω, d ∈ D, t ∈ T
as,t · xs,g,d + ud,t (ω) ≥ D (105)
d,t
s∈S g∈G
hmin < as,t · xs,g,d ≤ hmax ∀g∈G (106)
d∈D s∈S t∈T
ls · xs,1,d ≥ ls · xs,g,d ∀ g ∈ G \ {1} (107)
d∈D s∈S d∈D s∈S
4.5 Model approximations 97
Proof. To prove that zR∗ ≥ z2∗ for |Ω| ≥ 2 in part (i), we first point out that each feasible
solution (x, u) to R-SCRP is also feasible to 2-SCRP. This can be seen by setting yg,s,d(ω) =
xs,g,d ∀g ∈ G, s ∈ S, d ∈ D, ω ∈ Ω in 2-SCRP. Next, we show that there are instances for
which zR∗ > z2∗ for |Ω| ≥ 2. Consider the three shift types early, day and late with
corresponding shifts given in Table 4.8 for one group with one worker. Further consider
the two discrete realizations for the demand given in Table 4.9, where each realization has
a probability of 0.5. The solution of R-SCRP is any one of the shifts defined for shift type
‘early’ with an expected undercoverage of 4. Thus, after post-processing we would obtain
shift type ‘early.’ If, however, the same problem instance was solved with 2-SCRP, the
objective function value would decrease to 3 since we would now select shift type ‘day’
4.5 Model approximations 98
rather than an early shift. For scenario ω1 , the shift starting in period 5 and ending in
period 8 would lead to an undercoverage of 2 while for scenario ω2 , the shift starting in
period 6 and ending in period 9 would lead to an undercoverage of 1 for a total of 3.
Time periods
Realizations 3 4 5 6 7 8 9 10 11 12 13
1)
D(ω 1 1 1 1
2)
D(ω 1 1 1
For the deterministic case considered in part (ii) with only one scenario, the y-variables
in M-SCRP and 2-SCRP are equivalent to the x-variables in R-SCRP. Also, for 2-SCRP
and R-SCRP the forward rotation condition holds for the wrap-around transition from
week w = W to w = 1, but not for M-SCRP. There are no constraints that require the
starting time of the first shift in week w = 1 to be no later than the starting time of the
last shift of week w = W if they are back to back.
When applying model M-SCRP to traditional cyclic rostering, the problem becomes
equivalent to setting |P| = |S| and |S(p)| = 1 for all p ∈ P such that that each shift type
corresponds to a single shift s ∈ S. Consequently, the first stage decisions for variables x
already determine the decisions for variables y in the consecutive stages. As a result, the
same set of shifts is selected in each of the stages with the forward rotation between the
last day of the week and the first day of the next week already being accounted for in the
first stage. Therefore, we can conclude
Theorem 7. When used for traditional cyclic rostering, M-SCRP and R-SCRP yield the
same optimal values regardless of the number of scenarios, that is, zR∗ = zM
∗
for |Ω| ≥ 1.
4.6 Distribution of demand 99
120
100
80
Demand
60
40
20
0
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47
Periods of the day
100
90
80
70
60
Demand
50
40
30
20
10
0
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47
Periods of the day
In our study, we consider different sample spaces Ω, some of which are continuous and
hence infinite. To generate scenarios, we follow a two-step approach. We start with a
representative set of jobs that define the variable and stable demand curves. We then
define 7 different perturbations that incorporate uncertainty in ways that are commonly
experienced throughout the service industry. Each perturbation together with the set of
jobs leads to a different set of scenarios Ωi , i ∈ {1, ..., 7}.
To construct instances that are both representative and solvable, we generate a finite
number of realizations from Ωi ; that is, we sample a finite number of times. The use
of sampling serves two purposes. First, we want to create a sample set of realizations
Ω̂− −
i ⊆ Ωi with |Ω̂i | ≤ 10 to be used as input to 2-SCRP and R-SCRP given in § 4.5.
4.6 Distribution of demand 101
Second, we want to generate a much larger set of realizations, call it Ω̂i , to evaluate the
rosters produced by 2-SCRP and R-SCRP. The evaluation of flexible cyclic rosters can be
done with 2-SCRP by fixing the xp,g,d variables at the values of the corresponding rosters.
Computationally, we are limited to solving instances of 2-SCRP and R-SCRP with
up to 10 scenarios; however, a much larger number of scenarios can be evaluated for a
particular roster since each evaluation is done independently of the others. In particular,
the roster generation step considers all ω ∈ Ω̂−i simultaneously while the evaluation step
considers each ω ∈ Ω̂i separately. In the experimental study, each Ω̂i holds a large number
of scenarios which represent a complete enumeration of Ωi or are designed to provide a
robust approximation of Ωi .
For each set Ωi , we assume that its elements follow a uniform distribution, implying
that each scenario is equally likely. Figures 4.2 – 4.5 depict examples of demand curve
realizations derived from the four different perturbations discussed below.
Ω̂−
1 5 scenarios: del ∈ {−60, −30, 0, 30, 60}
Ω̂−
2 3 scenarios: del ∈ {−30, 0, 30}
90
80
70
60
Demand 50
40 del=15
30 del=0
20
10
0
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47
Periods of the day
Ω̂−
3 3 scenarios: n ∈ {0, 15, |J + |}
Ω̂−
4 3 scenarios: n ∈ {0, 10, |J + |}
160
140
120
100
Demand
80
n=30
60 n=0
40
20
0
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47
Periods of the day
Ω̂−
5 10 scenarios: each scenario sampled from Ω5 with (p+ , p− ) ∈ {(0.0, 0.0),
(0.05, 0.0), (0.10, 0.0), (0.20, 0.0), (0.0, 0.05), (0.0, 0.10), (0.0, 0.20),
(0.5, 0.5), (0.10, 0.10), (0.20, 0.20)}
Ω̂−
6 10 scenarios: each scenario sampled from each Ω6 with (p+ , p− ) ∈ {(0.0, 0.0),
(0.02, 0.0), (0.04, 0.0), (0.06, 0.0), (0.0, 0.02), (0.0, 0.04), (0.0, 0.06),
(0.02, 0.02), (0.04, 0.04), (0.06, 0.06)}
4.6 Distribution of demand 104
120
100
80
Demand
60
(0.1,0.1)
40 (0,0)
20
0
1 3 5 7 9 11131517192123252729313335373941434547
Periods of the day
Ω̂−
7 4 scenarios: each scenario sampled from Ω7 with (p, b) ∈ {(0.00, 0), (0.05, 4),
(0.20, 4), (0.4, 4)}
140
120
100
Demand 80
60 (0,0)
(0.4,4)
40
20
0
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47
Periods of the day
Regulation Set of starting periods for shift types shift durations dmin dmin hmin hmax nmax
R2 {[6, 13], [20, 28]} 16 − 21
4 6 76 84 5
R4 {[6, 10], [9, 13], [20, 25], [24, 28]} 16 − 21
To uniquely identify a test instance we use the notation I(Ωi , pro, reg), with scenario
set Ωi ∈ {Ω1 , ..., Ω7 }, demand profile pro ∈ {VD, SD}, and shift regulation reg ∈ {R2, R4}.
For all instances, we assume a cycle length of 10 weeks, which implies 10 work groups. A
total of 20 full-time workers are associated with each group.
4.7 Computational Study 106
where X represents the feasible space for the first stage. The wait-and-see solution, rep-
resenting the best solution that can be obtained, is compared with the solution to what
is called the resource problem.
RP = min W · ED
h(x, D)
x∈X
In our case, RP is either 2-SCRP or R-SCRP, and yields the so called here-and-now
solution. Nevertheless, computational difficulties prevented us from solving RP based on
the scenario set Ω̂i so we resorted to Ω̂−
i . The difference between WS and RP gives the
expected value of perfect information, i.e.,
EV P I = RP − W S
Stochastic programs are usually harder to solve then their deterministic counterparts
due to the additional variables and constraints so RP is usually much more difficult than
WS. The second concept compares the RP solution to the solution derived from a much
simpler problem based on the expected demand, E D . Given this value, we solve the
4.7 Computational Study 107
to get the optimal solution of the first stage variables; call it x̄. Note that in light of
Theorem 6, EV and optimal values for x̄ are identical for all three models M-SCRP,
2-SCRP and R-SCRP. Now, we hold x̄ constant and solve
EEV = ED
W · h(x̄, D)
The difference between this result and RP yields the value of the stochastic solution
(VSS), i.e.,
V SS = EEV − RP
According to Birge and Louveaux [31], RP ≤ EEV holds for linear functions. However,
since we only solve RP for a subset of possible realizations (see Section 4.6) the inequality
does not necessarily hold in our case.
value, zR . For flexible cyclic rostering, we make use of the flexibility that the scheduling
procedure offers to evalute how the demand of the weekly demand curve realization of
ω is covered. Therefore model 2-SCRP is used for evaluation fixing the xp,g,d variables
according to the flexible cyclic roster, but allowing an adaption of the yg,s,d(ω) variables
according to the weekly demand realization of scenario ω.
Table 4.11 gives an overview of the average results of the evaluation. In each column of
Table 4.11, the average objective value, i.e. the average undercoverage, over all scenarios
ω of instance I(Ωi , pro, reg) is reported when the roster is generated with the recourse
problem (RP, using all scenarios ω ∈ Ω̂− i ) or the expected value problem (EEV, using
average demand scenario of Ω̂i ), scheduling is based on traditional cyclic rostering (trad)
or flexible cyclic rostering (flex), and model formulation 2-SCRP (z2 ) or R-SCRP (zR ) is
used.
Note that Theorem 7 states that R-SCRP yields the same result as the multi-stage
and two-stage model for traditional cyclic rostering. Therefore, for traditional cyclic ros-
tering, we only present results for rosters generated with R-SCRP. When using R-SCRP
to generate flexible cyclic rosters, each shift s associated with the xs,w,d variables in the
solution needs to be replaced by a shift type p. This is done in a post-processing step in
which a shift type p is selected such that s ∈ S(p) and fp ≤ fp ∀ p ∈ P.
In the following we focus on the comparison of the different scheduling approaches and
model approximations.
Instance zR (trad, EEV) zR (flex, EEV) zR (trad, RP) zR (flex, RP) z2 (flex, RP)
{Ω1 , VD, R4} 5014 4110 4848 4101 4098
{Ω1 , VD, R2} 5014 3829 4848 3820 3819
{Ω1 , SD, R4} 1880 1644 1840 1489 1483
{Ω1 , SD, R2} 1880 1413 1840 1386 1384
{Ω2 , VD, R4} 4556 3883 4186 3773 3766
{Ω2 , VD, R2} 4556 3719 4186 3698 3695
{Ω2 , SD, R4} 1548 1413 1462 1327 1327
{Ω2 , SD, R2} 1548 1247 1462 1242 1242
Ω1 and Ω2 average 17.53 15.89 4.76 2.71 0.11
{Ω3 , VD, R4} 6978 6682 6904 6597 6597
{Ω3 , VD, R2} 6978 6373 6904 6302 6302
{Ω3 , SD, R4} 3896 3341 3699 3335 3335
{Ω3 , SD, R2} 3896 3153 3699 3139 3139
{Ω4 , VD, R4} 5356 5133 5344 5083 5083
{Ω4 , VD, R2} 5356 4891 5344 4891 4891
{Ω4 , SD, R4} 2346 2058 2248 2037 2037
{Ω4 , SD, R2} 2346 1947 2248 1938 1938
Ω3 and Ω4 average 11.03 9.18 2.62 0.68 0.00
{Ω5 , VD, R4} 4760 4446 4741 4440 -
{Ω5 , VD, R2} 4760 4142 4741 4138 -
{Ω5 , SD, R4} 2202 2008 2198 2009 -
{Ω5 , SD, R2} 2202 1908 2198 1905 -
{Ω6 , VD, R4} 4624 4382 4615 4385 -
{Ω6 , VD, R2} 2624 4169 4615 4166 -
{Ω6 , SD, R4} -
{Ω6 , SD, R2} -
Ω5 and Ω5 average 8.68 8.57 0.073 0.030 -
{Ω7 , VD, R4} 5326 4898 5320 4969 4968
{Ω7 , VD, R2} 5326 4597 5320 4596 4596
{Ω7 , SD, R4} 3082 2624 3102 2726 2726
{Ω7 , SD, R2} 3082 2513 3102 2532 2532 8
Ω7 average 13.75 12.38 -0.29 -1.52 0.0078
of flexible cyclic rostering and cyclic rostering over all scenarios ω of instance I(Ωi , pro, reg)
when the rosters are generated with the expected value of the random variables, i.e., the
result from the EV solution. For example, for all instances i with pertubation Ω1 , the
expected value is calculated based on all scenarios in Ω̂1 while each ω ∈ Ω̂i is considered
independently for evaluation purposes.
Column ‘GAP(RP)’ gives the average percentage gap between the undercoverage of
flexible cyclic rostering and cyclic rostering over all scenarios of instance I(Ωi , pro, reg)
when generating the rosters based on the scenarios included in Ω̂− i . This effectively com-
pares the solution quality associated with the recourse problem. Again, each ω ∈ Ω̂i is
considered independently for roster evaluation purposes.
4.7 Computational Study 110
The results indicate that for all test instances, flexible cyclic rostering significantly
outperforms cyclic rostering in both the expected value problem and the recourse problem.
The lowest gap between both procedure is found for instance {Ω6 , SD, R4} with 3.90%
while the average gap over all instances is more than 12%. The difference can also be seen
in terms of absolute numbers. For examples, with test instances I(Ω1 , V D, R2), flexible
cyclic rostering reduces average undercoverage by 5014 − 3829 = 1185 periods which is
equal to a reduction of 592.5 hours of undercoverage per week. Assuming a maximum
number of 42 working hours per week at least an additional 14 workers are needed to
cover the difference. The gap between the two procedures decreases when the number of
eligible shifts remains the same but the number of shift types increases. This can be seen
when comparing the results for each instance I(Ωi , pro, R2) with the results for instance
I(Ωi , pro, R4). In all cases, for EEV as well as for RP, the gap decreases. As flexibility is
lost, the results converge. In the extreme case each shift corresponds to one shift type and
both procedures are identical. The design of shift types, their number and composition
is always a trade-off between the week-to-week consistency in each worker’s schedule and
the employer’s flexibility to react to uncertainty.
The gap between the two scheduling procedures also decreases when increasing the
stochastic information for the roster generation as can be seen in the next section.
Table 4.12: Comparison of traditional cyclic and flexible cyclic rostering (all data entries
are in terms of %)
since the procedure is less able to adjust to demand fluctuations with fewer shift types and
therefore has to rely more on stochastic information given for the roster generating. We
can conclude that the benefits increase as the options for adjusting the schedule decrease
once the shift types are specified.
The gap between traditional and flexible cyclic rostering decreases when solving the
4.7 Computational Study 112
recourse problem to generate rosters instead of the expected value problem as shown in
Table 4.12. When generating rosters based on the expected values, flexible cyclic rostering
can still adjust the schedule to better cover the demand of the evaluation scenarios. Cyclic
rosters, though, are restricted to their initial shift schedule and so cannot be adjusted to
match the perturbations in demand that accompany multiple realizations. This is also
reflected in Table 4.13 where the avergage benefit of using the stochastic information is
higher for all instances with pertubations Ω1 and Ω2 , Ω3 and Ω4 , Ω5 and Ω6 , and Ω7 ,
respectively, for traditional cyclic rostering than for flexible cyclic rostering.
Column ‘GAP(EVPI)’ reports the gap in % between the solution of the recourse prob-
lem and the wait-and-see solution for flexible cyclic rostering. The column’s values are
equal to EVPI/WS (= (RP − WS)/WS). For all test instances associated with scenario
sets Ω1 – Ω4 and Ω7 , the value of RP is based on the solution provided by 2-SCRP while
we had to use the solution from R-SCRP for all test instances associated with scenario
sets Ω5 and Ω6 since we could not generate the rosters with 2-SCRP within our imposed
time limit of 18,000 seconds. EVPI is calculated based on the scenarios that define Ω̂i in
line with the assumption made for 2-SCRP that we have the same scenario in every week
of the planning horizon. Therefore, the wait-and-see solution is similar to the solution
one would get by solving a traditional tour scheduling problem. For 78.6% of the test
instances, GAP(EVPI) is less than 5%. Only for the 6 test instances with scenario set Ω1
and with scenario set Ω7 along with stable demand profiles, are the gaps between 5.68%
and 13.42%.
Table 4.13: Value of the stochastic information for traditional cyclic and flexible cyclic
rostering (all data entries are in terms of %)
upper bound on 2-SCRP since all gaps are less or equal than 0.36% with most being zero.
This is especially valuable in light of the runtimes for 2-SCRP, which are considerably
higher than those of R-SCRP. The size and computation times for R-SCRP and 2-SCRP
are presented in Table 4.15. The number of binary variables for R-SCRP is given in
column ‘#bin’ and is the same for all test instances whether EEV or RP is being solved
4.8 Conclusion 114
since the shift decisions are the same for each scenario. Further, the number of integer
variables, the number of constraints, and the runtime in seconds for R-SCRP are given
in columns ’intvar()’,‘constr()’, and ‘time()’, respectively, with ‘EEV’ and ‘RP’ indicating
whether R-SCRP was used to solve EEV or RP, respectively. Note that the number of
integer variables and constraints linearly increases with the number of scenarios (compare
e.g. {Ω1 , VD, R4}, 5 scenarios with {Ω2 , VD, R4}, 3 scenarios). The number of binary
variables, the number of integer variables, the number of constraints, and the runtime
in seconds for 2-SCRP are shown in columns ‘bin(2-RP)’, ’intvar(2-RP)’, ‘constr(2-RP)’,
and ‘time(2-RP)’, respectively. The number of binary variables as well as the number of
constraints increases for 2-SCRP with an increase in the number of scenarios. This follows
because different shift assignment decisions can be made for different scenarios in the same
evaluation set while the number of integer variables u(ω), which tracks the undercoverage
in each period, remains constant for R-SCRP. While we could compute cyclic rosters with
R-SCRP in less than 200 seconds for all instances, it took between 4,493 and 9,334 seconds
with 2-SCRP for those instances with scenario sets Ω̂− − −
1 – Ω̂4 and Ω̂7 . Depending on the
operational conditions, this might still be acceptable for tactical planning. For all test
instances associated with scenario sets Ω5 and Ω6 , which correspond to the perturbations
of adding and removing jobs uniformly over the planning horizon, we were not able to
solve 2-SCRP within our imposed time limit of 18,000 seconds. Note that the number
of integer variables does not increase from R-SCRP to 2-SCRP, whereas the number of
constraints and the number of binary variables linearly increases with |Ω̂−
i |.
4.8 Conclusion
Cyclic rostering is frequently employed by service organizations facing repetitive demand
patterns over the day and week but has traditionally been limited to selecting fixed shift
assignments for each cycle. Flexible cyclic rostering offers a more robust approach in
which shift types are selected for each cycle and then adjusted within some bounds to
accommodate daily demand variations. To model this extension, we have introduced a
multi-stage stochastic program and a two-stage relaxation that can be used to generate
flexible cyclic rosters. These models generalize the traditional formulations and, along
with our case study, represent one of the first attempts to to deal with stochastic issues
in a real setting.
4.8 Conclusion 115
Table 4.14: Comparison of R-SCRP and 2-SCRP for flexible cyclic rostering and the
expected value of the perfect information (all data entries are in terms of %)
Instance GAP(2-SCRP)
{Ω1 , VD, R4} 0.083
{Ω1 , VD, R2} 0.015
{Ω1 , SD, R4} 0.36
{Ω1 , SD, R2} 0.11
{Ω2 , VD, R4} 0.17
{Ω2 , VD, R2} 0.09
{Ω2 , SD, R4} 0.010
{Ω2 , SD, R2} 0.0106
Ω1 and Ω2 average 0.11
{Ω3 , VD, R4} 0.00
{Ω3 , VD, R2} 0.00
{Ω3 , SD, R4} 0.00
{Ω3 , SD, R2} 0.00
{Ω4 , VD, R4} 0.00
{Ω4 , VD, R2} 0.00
{Ω4 , SD, R4} 0.00
{Ω4 , SD, R2} 0.00
Ω3 and Ω4 average 0.00
{Ω5 , VD, R4} -
{Ω5 , VD, R2} -
{Ω5 , SD, R4} -
{Ω5 , SD, R2} -
{Ω6 , VD, R4} -
{Ω6 , VD, R2} -
{Ω6 , SD, R4} -
{Ω6 , SD, R2} -
Ω5 and Ω6 average -
{Ω7 , VD, R4} 0.031
{Ω7 , VD, R2} 0.00
{Ω7 , SD, R4} 0.00
{Ω7 , SD, R2} 0.00
Ω7 average 0.0078
For our 28 different test instance sets, the computations showed that the two-stage
relaxation could be used to solve all problems with up to five scenarios in less than 3
hours, while the remaining ten scenario cases could not be solved within 3 hours. Be-
cause runtimes can be critical in some environments, we presented a further relaxation
of the two-stage model excluding the possibility to adjust shifts in the different scenarios
4.8 Conclusion 116
which was able to solve all instances in less than 200 seconds with less than a 0.4% gap
with respect to the solutions provided by the two-stage model. Comparing flexible cyclic
rostering with traditional cyclic rostering, we found that the flexiblity added by the new
scheduling procedure reduced undercoverage by more then 10%. The value of the stochas-
tic solution was investigated for both rostering approaches. The results indicated that
the value of the stochastic information decreases when fluctuations in the demand profile
increase as we cannot solve the problem with more than a dozen of scenarios. Further,
as the options decrease for adjusting to demand fluctuation, the value of the stochastic
information increases. The implication is that exploiting stochastic information is espe-
cially valuable for traditional cyclic rostering which does not allow for reactive decisions.
The stochastic information was notably high for demand pertubations where all jobs are
delayed with an average improvement of the undercoverage of 4.75% for cyclic rostering
and 2.71% for flexible cyclic rostering while we had even slightly negative impact for the
highly fluctuating demand pertubation where only a subset of jobs gets delayed. For 78.6%
of the test instances, the expected value of the perfect information was less than 5% which
is especially interesting since it is also a tight approximation to the gap that is obtained
when comparing flexible cyclic rostering to tour scheduling where each weekly roster is
generated from scratch.
4.8 Conclusion
Table 4.15: Model size and runtime comparisons for R-SCRP and 2-SCRP
Instance #bin #bin(2-RP) #int(EEV) #int(RP) #int(2-RP) #constr(EEV) #constr(RP) #constr(2-RP) time(EEV) time(RP) time(2-RP)
Ω1 and Ω2 average 7,150 35,920 336 1,344 1,344 614 1,622 2,468 24.52 27.88 11,916
{Ω3 , VD, R4} 14,570 19.90 20.26 6,351
{Ω3 , VD, R2} 14,430 19.88 18.14 4,716
7,150 336 672 672 614 950 1,358
{Ω3 , SD, R4} 14,570 21.54 34.31 8,440
{Ω3 , SD, R2} 14,430 23.95 41.31 7,981
Ω3 and Ω4 average 7,150 14,500 336 672 672 614 950 1,358 24.60 35.63 7,003
{Ω5 , VD, R4} 71,690 25.12 61.65 -
{Ω5 , VD, R2} 71,550 23.43 56.40 -
7,150 336 3,360 3,360 614 3,638 5,798
{Ω5 , SD, R4} 71,690 24.80 59.87 -
{Ω5 , SD, R2} 71,550 51.66 103.01 -
Ω5 and Ω6 average 7,150 71,620 336 3,360 3,360 614 3,638 5,798 57.74 103.60 -
{Ω7 , VD, R4} 28,850 18.24 18.01 5,020
{Ω7 , VD, R2} 28,710 18.74 18.40 4,493
7,150 336 1,344 1,344 614 1,622 2,468
{Ω7 , SD, R4} 28,850 19.28 19.04 4,857
{Ω7 , SD, R2} 28,710 18.22 19.90 4,901
Ω7 average 7,150 28,780 336 1,344 1,344 614 1,622 2,468 18,62 18,84 4,817
117
Chapter 5
5.1 Introduction
In most personnel scheduling problems workforce demand is a function of the number of
required tasks per period, and, depending on the application, can have extremely high
variance. To optimally cover demand, a tour scheduling problem needs to be solved to
determine the days off (days-off scheduling) and shift assignments (shift scheduling) for
each worker on each day of the planning horizon. Once the days off are fixed, there are
two immediate ways to adapt a worker’s tour when demand is highly variable: adjusting
the start time and length of a shift, and assigning breaks to shifts. Although much
has been written about the first option, there is a noticeable absence in the literature
when it comes to analyzing different break regulations, especially in the tour scheduling
environment. Moreover, there is little practical evidence that planners have exploited the
benefits offered by such regulations when it comes to better matching supply with demand.
One of the objectives of this chapter is to show how break assignments can be used to
improve the scheduling of airport ground handlers. When a flight arrives at an airport,
baggage and cargo must be transferred to the terminal, handicapped passengers must
be transported to either their next flight or the baggage area, and the aircraft must be
118
5.1 Introduction 119
prepared for its next trip. These functions fall under the heading of ground handling and,
depending on the number of arriving passengers and the distance flown, may require a
dozen or more service workers to perform (Ashford et al. [11]). Personnel costs are the
largest expense faced by the service provider and must be managed carefully in today’s
competitive environment. Ground handling as well as many other personnel scheduling
problems require the explicit assignment of shifts and days off to individual employees
rather than to a generic workforce. This means that information on individual skills,
availability, and overtime balances must be taken into account (e.g., see Love and Hoey
[87]). In ground handling, the difference between peak and non-peak demand can be as
large as three to one over the day. Meeting the demand without an excess of under- or
over-coverage is an extremely challenging task. To the best of our knowledge, this chapter
is the first to analyze the full range of break options in tour scheduling.
The approach we take involves decomposing the full problem into a tour scheduling
problem and a break assignment problem. By separating the two, we create a framework
in which different break models can be computationally evaluated without controlling for
the basic tour scheduling parameters. The majority of the work in the area of breaks has
focused on model development and the design of computational techniques for reducing
problem size and runtimes in the context of shift scheduling. The primary example centers
on the the implicit modeling of breaks in shift scheduling (see Aykin [13], Bechtold and
Jacobs [29], Rekik et al. [106]). Our decomposition approach enables us to fully investigate
the various implicit formulations in the wider context of tour scheduling and a hierarchical
workforce.
As part of the developments, we introduce a classification scheme for the break assign-
ment problem (BAP) and present a complexity analysis of all major variations. Based on
the different properties of the accompanying models, the flexibility and operational value
of each is evaluated using data from a large European ground handling company. For
applications where breaks are assigned dynamically over the day, e.g., for ground handling
and mail processing operations, the decomposition approach provides an upper bound on
costs. In such environments, the break assignment model can be used in a rolling horizon
manner to support reactive planning.
In order to generate tours, we rely on templates that define a set of permissible shifts
for each day of the planning horizon. The templates also include the option for a day
5.1 Introduction 120
off and therefore allow us to consider the availability of each employee each day of the
week. To show the impact of shift starting time and shift duration flexibility and its
interaction with break flexibility, we investigate two different scenarios. In the case of
high shift flexibility, when early and late shifts are considered, we get more than 1, 400
possible shifts for the different combinations of starting times and working hours alone.
This is in contrast to less than 30 possible shifts for the low flexibility case. As expected,
we show that model size is strongly correlated with our ability to solve realistic instances
in a timely manner.
The main contributions of this chapter are as follows.
• An analysis showing the impact of shift and break flexibility on solution quality and
runtime
The chapter is organized as follows. In § 5.2 we review the literature on ground handling
operations and break assignment models. This is followed in § 5.3 with a detailed descrip-
tion of the full problem, including an example and definitions related to templates and
tours. An integrated mixed-integer programming (MIP) formulation of the tour scheduling
problem based on weekly templates is presented in Appendix A.5. In § 5.4, we introduce
a classification scheme for the different BAPs and analyze the complexity of each. The
decomposition approach is highlighted in § 5.5 along with an efficient implicit model for
break assignments for a hierarchical workforce. This is followed by a computational study
in § 5.6 where the various break assignment models and the decomposition procedure
are empirically evaluated. We close with some insights and observations on the proposed
methodology.
5.2 Literature review 121
[29], Aykin [13] and Rekik et al. [106]. Bechtold and Jacobs [29] reduced the size of the
set-covering-type model by excluding the break information from the shift matrix. That
is, breaks are treated in the aggregate and not explicitly assigned to shifts by the MIP. A
set of constraints is introduced to guarantee that feasible breaks are available for the shifts
chosen. In a post-processing step, breaks are assigned to shifts. A different approach is
proposed by Aykin [13] where a variable is introduced for each combination of shift and
eligible break starting time. Again, beak information is removed from the shift matrix.
In both formulations, predetermined break time windows and a fixed break duration are
assumed.
The modeling of sub-breaks for shift scheduling was introduced by Rekik et al. [106]
who used the term fractionable breaks. A fractionable break has an overall duration that
can be split into one or more sub-breaks with the restriction that the number of sub-breaks
is within a predefined range. In their work, sub-break placement is constrained by work
stretch durations between consecutive breaks. They present two formulations for shift
scheduling based on extensions of the models of Bechtold and Jacobs [29] and Aykin [13].
In our experience, however, these formulations cannot be directly adapted to the much
more complex tour scheduling problem.
While many organizations take advantage of flexible break patterns within a shift, to
the best of our knowledge, there has been no research on their use in the extended problem
of tour scheduling. In part, this chapter is aimed at filling this void. By separating the tour
scheduling problem from the BAP it is possible to use implicit formulations for dealing
with a range of skill requirements. Building on the work of Rekik et al. [106] and others,
we present two implicit formulations for the BAP in which hierarchical skills are taken
into account. The one based on Bechtold and Jacobs [29], however, needs a post-processor
to assign breaks to workers and so cannot be applied in all environments (e.g., bus driver
scheduling; see Rekik et al. [106]). To circumvent this limitation we introduce and evaluate
an alternative implicit formulation that models the break rules as constraints.
Contributions to tour scheduling for ground handlers and other airport personnel can
be found in Dowling et al. [53], Chu [41], Ásgeirsson [10], and Lusby et al. [88]. Dowling
et al. [53] proposed a system for the monthly rostering of 500 workers at a large airport.
They used simulated annealing to minimize idle time under highly fluctuating demand. A
novel component of their approach was an external rule engine to check for feasibility after
5.3 Problem description 123
each neighborhood search. Chu [41] optimized daily schedules for baggage handlers at the
Hong Kong International Airport using a goal programming-based algorithm. Taking a
behavior-based approach, Ásgeirsson [10] designed a heuristic that emulates the logic of
personnel managers when creating schedules for an airport ground service company with
53 employees. He begins with a partial schedule derived from employee requests and
then builds a full schedule that satisfies the prevailing labor laws and company policies.
Solution quality was judged by how closely the days-on and days-off assignments matched
employee requests. Finally, Lusby et al. [88] tackled a ground crew rostering problem
with a column generation-based heuristic for a European airline. Their goal was to create
long-term rosters based on 6 days-on, 3 days-off work patterns.
Table 5.1: Example of three different weekly templates for three workers with the
following shift types: E=early, L=late, X=day off
problem of creating a weekly tour for each member of the workforce based on his or her
template.
An overview of sets and indices used in the formulation is given in Table 2. The
workforce is denoted by W such that each worker w ∈ W is assigned a template p ∈ P,
where p defines the eligible shift types (e.g., early, off, late, combination) for each day
d ∈ D in the week. The set M(d, p) ⊆ M identifies the shift types that are allowed in
template p on day d. A day in template p can either be a mandatory working day, an
optional working day or a day off.
The set of feasible shifts for day d is given by S(d) ⊆ S. On mandatory working days,
an employee must be uniquely assigned to a shift s ∈ S, whereas on optional working days
he may or may not be assigned to a shift, depending on the demand. Each day is divided
into a set of periods T = {1, . . . , T } of equal length (typically, 15 minutes). A shift s ∈ S
in weekly template p has to satisfy the following rules.
S1. Starting and ending time windows: Each shift type m must start within the time
band T shS (m) ⊂ T and must end within the time band T shE .
S2. Overall working time: The overall shift length including breaks must fall within the
interval ΔminS , ΔmaxS .
Multiple breaks are permitted per shift but the actual number must fall between some
lower and upper bound. This allows for maximum flexibility when making the break
assignments. However, the length of each sub-break must also fall between some given
bounds as must the time between them and their total duration. Adopting the nomen-
5.3 Problem description 125
Sets Definition
W Workers, w ∈ W
W(q) Workers with skill q
S Shifts, s ∈ S
S(d) Shifts on day d
S(q, t) Shifts covering demand for skill q in period t
B Break patterns
B(s) Break patterns for shift s
Q Skill levels, q ∈ Q
P Weekly templates, p ∈ P
M Shift types, m ∈ M
M(p) Eligable shift types in template p
M(d, p) Eligable shift types in template p on day d
T Number of planning periods per day, t ∈ T
T shS (m) Shift starting times for the shift type m
T shE Shift ending times
T brS (r) Break starting times for the r-th sub-break
T brE Break ending times of all sub-breaks
T brE (r) Break ending times of the r-th sub-break
D Planning days, d ∈ D
D(p) Planning days in template p
clature introduced by Rekik et al. [106] for fractionable breaks, we impose the following
rules:
B2. Workstretch between first break and shift start: The first break must start within
ΔminBF , ΔmaxBF periods after the shift starts.
B3. Single break duration: Break r ∈ [B min , B max ] has a minimum and maximum dura-
tion of ΔminBD
r and ΔmaxBD
r periods.
B4. Overall break duration: The minimum and maximum overall break duration must
be within the interval ΔminBD , ΔmaxBD .
B5. Workstretch duration: The workstretch duration after the r-th break has to be
within
ΔminBW
r , ΔmaxBW
r periods.
5.3 Problem description 126
B6. Workstretch between last break and shift end: The last break must end within
ΔminBL , ΔmaxBL periods before the shift ends.
Given the parameters in B1 to B6, the range of sub-break r’s possible starting and
ending times can be restricted to the subsets T brS (r) and T brE (r), respectively. In the
following, we define a break pattern b ∈ B as a feasible set of sub-breaks with starting
times and durations such that (B1) to (B6) are satisfied. The subset of feasible break
patterns within a shift s that satisfies B5 and B6 is denoted by B(s). As we shall see
in § 5.4 these break regulations are the the most general and flexible investigated to date.
High flexibility however, is accompanied by high complexity.
An additional attribute of the workforce is the level of skill that each individual brings
to the job, whether he is a baggage handler, driver, ramp agent or other designation.
Skill levels are ordered hierarchically, meaning that a worker at the higher end of the
spectrum can fill in for one at the lower end when needed. The procedure in which workers
are assigned tasks below their skill level should they have idle time in their schedule is
sometimes called downgrading (Bard [22]). Let Q = {q1 , . . . , qn } be the ordered set of
skills, where the relation qk ql means that that a task requiring skill level qk ∈ Q
can be performed by any worker having a skill level of at least ql for l ≥ k. The vector
K = (Kq,t,d )q∈Q,t∈T ,d∈D is used to represent the demand of a task, where each element
Kq,t,d gives the required demand for skill level q in time period t on day d. Each shift
covering demand for skill level q at time t is contained in the set S(q, t).
At the beginning of the planning horizon, each worker w has an accumulated bank
of either overtime (Ow ≥ 0) or undertime (Ow < 0) that must be kept within a target
bandwidth [O − , O + ]. Given a weekly template pw for worker w, when generating a tour,
the following rules must be taken into account.
T1. Tour bandwidth: The length of a tour must be within the tour bandwidth [O − , O + ].
T2. Forward rotation: The start time of shift type m must be nondecreasing from one
day to the next during the week.
T3. Bandwidth: For each shift type, there is a maximum allowed bandwidth of Δbw for
shift starting times.
5.4 Break Assignment Problem 127
T4. Starting times: The number of maximum allowed shift starting times per week for
shift type m is limited to K shift .
The main objective of the problem is to minimize labor costs while covering as much
demand as possible by fixing shift start and end times, days off, and breaks. Each worker
incurs a cost of cwork per period which is assumed to be less or equal than the unit cost of
undercoverage cuc , i.e., cwork ≤ cuc . In determining labor costs, the time that a worker is
not on duty, such as during a break, is not factored into the calculations. Table 5.3 lists
the cost parameters.
Parameter Definition
cwork unit cost for a worker when on duty
cuc unit cost of undercoverage
It is well known that tour scheduling problems are NP-hard (see Lau [82]), which is
one explanation for the lengthy runtime we experienced when trying to solve our first MIP
model (see Appendix §A.5) of the ground handler staffing problem (GHSP) with CPLEX.
In practice, breaks are often set at the beginning of the working day and not beforehand
to better accommodate unforeseen changes in the demand profile. Therefore, to allow for
this level of flexibility, as well as to reduce the difficulty of the problem, we have chosen
to separate the BAP from the tour scheduling problem (see §5.5). In the next section, we
categorize the full range of BAPs and undertake a complexity analysis of each.
Classification Scheme
We use three sets of parameters to classify the BAP:
5.4 Break Assignment Problem 128
• Fixed(X) or variable(V) break length. For BAPs with single or multiple breaks,
each sub-break can either have a fixed length or a lower and upper bound on its
length. Considering fractionable breaks, the length of each is inherently variable but
there is an aggregate break length given which is then split into sub-breaks for the
shift.
In what follows, we classify the various versions of the BAP using the 3-tuple [S, M, F |X, V |T, W ].
Figure 5.1 gives a hierarchical overview of the complexity of the more interesting models
based on the findings given below. Those models associated with the parameter combi-
nations not shown are for the single break case where the workstretch restrictions lead to
simple time windows and are therefore effectively the same problem class.
Figure 5.2 depicts four realizations of break types using the 3-field notation and their
possible positions in a shift. In panels (a)-(c), the gray rectangles define the time windows
in which a break can take place due to work regulations. In panel (d), there are no
predefined break windows as workstretch durations limit the solution space. However,
there is a minimum workstretch of 2 periods before the first break and between the first
and second break, and a minimum workstretch duration of 1 period after the last break.
In all examples, the overall break duration is equal to 4 periods. The overall break length
in (b) is split equally between the first and second break, while in (c), the lengths of the
first and second breaks are variable.
5.4 Break Assignment Problem 129
∨ ∨ ∨
S|V |T > M |V |T > M |V |W
∨
F |V |T
∨
F |V |W <
The variety of possible break assignments provides increased flexibility but at a cost.
This will be confirmed in a theoretical sense by studying the computational complexity of
the different break regulations. Table 5.4 provides an overview of break regulations in the
staff scheduling literature. As one can see, there has been little research on flexible break
regulations despite their positive impact on solution quality (see §5.6).
Complexity Analysis
In the analysis, we assume that a set of shifts S ⊂ S is given such that each s ∈ S is
associated with a unique worker w ∈ W. The objective of the BAP is to assign breaks
5.4 Break Assignment Problem 130
to each shift s without violating the break constraints, i.e., B1 to B6, so that the costs
associated with shift assignments and the uncovered demand are minimized. As mentioned
in § 5.3, each worker incurs a cost of cwork per period which is assumed to be less than or
equal to the unit cost of undercoverage cuc , that is, cwork ≤ cuc ; off duty periods during a
shift do not incur any cost. In the analysis, we work with a set partitioning formulation
for the BAP in which all feasible break patterns B are enumerated. The set of feasible
break patterns for shift s is denoted by B(s). The following parameters and variables are
used in the developments. Parameters
Periods of the shift
0 1 2 3 4 5 6 7 8 9
B1 B2
B1 B2 B1 B2
B1 B2 B1 B2
B1 B2 B1 B2
B1 B2 B1 B2
B1 B2 B1 B2
B1 B1 B2 B1 B2 B1
B1 B1 B2 B1 B2 B1
B1 B1 B2 B1 B2 B1
B1 B1 B2 B1 B2 B1
cwork
s,b = cost for a worker assigned shift s with break pattern b
Variables
5.4 Break Assignment Problem 131
subject to
−
as,b,q,t · zs,b + yq,t
+
− yq,t = max {Dq,t , 0} ∀ q ∈ Q, t ∈ T (111)
s∈S b∈B(s)
zs,b = 1 ∀ s ∈ S (112)
b∈B(s)
The objective function (110) minimizes the sum of labor costs and the cost of uncovered
demand over all periods. When a subset of periods has an initial shortage, i.e., Dq,t < 0, it
might be desirable to assign a larger positive weight than cuc to the corresponding variables
to discourage additional undercoverage. Constraints (111) account for demand reduction
due to the break assignments to the shifts. The first term on the left-hand side reduces the
demand in period t for each shift that includes a break in period t. The next two terms
are complementary variables. The first represents the amount of remaining coverage in
period t after the breaks have been assigned and will be nonnegative if a shortage exists.
The second variable represents the undercoverage in period t after the breaks have been
assigned and is minimized in (110). The right-hand side of (111) is taken to be nonnegative
to avoid penalizing existing undercoverage.
The convexity constraints (112) enforce the requirement that each shift is assigned
exactly one break pattern, and constraints (113) and (114) define the variables. In an
optimal solution at most yt+ or yt− will be positive but never both because we are trying
to minimize the latter. Also, it can be seen that these variables will always be integral in
an optimal solution so there is no need to impose such a restriction.
5.4 Break Assignment Problem 132
Proposition 1. When the break length of BAP{S|X|T} is one period the A-matrix as-
sociated with model (110)–(114) is totally unimodular (TU) implying that the associated
problem is polynomially solvable.
Proof. First, let us assume that we have only one skill level for the workforce and the
more general case in which breaks can be more than one period. Consider shift s and its
corresponding set of feasible break patterns B(s). By examining constraint (111) we see
that each column possesses the consecutive 1’s property. Let A1 ≡ (a1i,j ) be the matrix
associated with the first shift in (111). Such a matrix is TU (Nemhauser and Wolsey [96]).
As an example, consider a shift of 10 periods that requires a break of either 3 or 4 periods
starting in either periods 3, 4 or 5, as shown in Figure 5.3.
⎛ ⎞ ⎛ ⎞
0 0 0 0 0 0 1 −1 0 0 0 0 0 0 0 0 0 0 0 0
⎜0 0 0 0 0 0⎟ ⎜0 0 1 −1 0 0 0 0 0 0 0 0 0 0 ⎟
⎜ ⎟ ⎜ ⎟
⎜1 0 0 1 0 0⎟ ⎜0 0 0 0 1 −1 0 0 0 0 0 0 0 0 ⎟
⎜ ⎟ ⎜ ⎟
⎜1 1 0 1 1 0⎟ ⎜0 0 0 0 0 0 ... ⎟
⎜ ⎟ ⎜ ⎟
1 ⎜1 1 1 1 1 1⎟ ⎜0 0 0 0 0 0 ⎟
ai,j = ⎜ ⎟ ... ⎜ ⎟
⎜0
⎜ 1 1 1 1 1⎟
⎟
⎜0
⎜ 0 0 0 0 0 0 1 −1 0 0 0 0 0⎟⎟
⎜0 0 1 0 1 1⎟ ⎜0 0 0 0 0 0 ... ⎟
⎜ ⎟ ⎜ ⎟
⎜0 0 0 0 0 1⎟ ⎜0 0 0 0 0 0 ⎟
⎜ ⎟ ⎜ ⎟
⎝0 0 0 0 0 0⎠ ⎝0 0 0 0 0 0 0 0 0 0 1 −1 0 0⎠
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 −1
1 1 1 1 1 1 ... 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Figure 5.3: Constraint matrix for BAP{S|X|T } with one skill level.
The row of 1’s below A1 in this figure corresponds to constraint (112); the second
matrix, call it Y , on the right corresponds to the yt+ or yt− variables. Although constraints
(112) destroy the consecutive 1’s property in general, when the break length for each shift
is one period the portion of the A-matrix in (111) associated with each shift has a single
1 in each column. This entry appears in a row in which a break is permissible (this is not
the case shown in Figure 5.3). The remaining row entries in the column are 0. Thus each
column in the full matrix has at most two elements that are either 1 or −1, and, in light of
the special structure of constraints (112), we see that it satisfies the sufficiency condition
for TU. That is, there exits a partition of the set M of rows into two sets M1 and M2 such
each column j containing two nonzero elements satisfies i∈M1 ai,j − i∈M2 ai,j = 0. Note
that the Y -matrix can be written as Y = [I, −I], where I is the |T | × |T | identity matrix
so each column contains only a single nonzero element.
Corollary 1. When the length of each sub-break of BAP{M|X|T } is one period the A-
matrix associated with model (110)–(114) is totally unimodular (TU) implying that the
associated problem is polynomially solvable.
5.4 Break Assignment Problem 133
Proof. Again, let A1 be the matrix associated with the first shift in (111) and let A2
be the matrix associated with constraints (112), also for the first shift. As an example,
Figure 5.4 depicts a portion of the constraint matrix for a shift with 7 periods that requires
two breaks of one period each. For feasibility, the first must start in either period 2 or 3
and the second in either period 5 or 6. As indicated in the figure, when the length of each
sub-break is equal to one period, each column of A1 contains a single entry of 1 in the row
where the sub-break exists with the remaining entries being 0. In a solution, one of the
first two columns and one of the second two columns must be selected.
Now, when adding time windows to regulate sub-break starting times, there is no inter-
dependency between the possible starting times of different sub-breaks, i.e., the starting
time of the i-th sub-break is independent of the starting time of the j-th sub-break for all
i, j ∈ [1, B max ]. Each column of A2 also contains a single entry of 1 or −1 with the other
entries being 0 due to the fact that each column of A1 and A2 corresponds to a single
sub-break. Therefore, as in the proof of Proposition 1, the sufficiency condition for TU
still holds in the case where the sub-break length is one period for each shift.
⎛ ⎞ ⎛ ⎞
0 0 0 0 1 −1 0 0 0 0 0 0 0
⎜1 0 0 0⎟ ⎜0 0 1 −1 0 0 0 0 0⎟
⎜ ⎟ ⎜ ⎟
⎜ 0⎟ ⎜0 ⎟
1 ⎜0 1 0 ⎟ ⎜ 0 0 0 ... ⎟
ai,j = ⎜
⎜0 0 0 0⎟ . . . ⎜
⎟
⎜0 0 0 0 ⎟
⎟
⎜0 0 1 0⎟ ⎜0 0 0 0 ⎟
⎜ ⎟ ⎜ ⎟
⎝0 0 0 1⎠ ⎝0 0 0 0 ⎠
0 0 0 0 0 0 0 0 0 0 0 1 −1
2 1 1 0 0 0 0 0 0 0 0 0 0 0
ai,j = ...
0 0 1 1 0 0 0 0 0 0 0 0 0
Figure 5.4: Constraint matrix for BAP{M|X|T } with two break windows and one skill
level.
Proof. Following the proof of Corollary 1, let A1 be the matrix associated with the first
shift in (111) and let A2 be the matrix associated with constraints (112), also for the first
shift. As an example, Figure 5.5 shows a portion of the constraint matrix for a shift with
5 periods that requires one break. The break must start in either period 2, 3 or 4 of the
shift and lasts for one period. We assume that there are two skill levels q1 and q2 and that
the worker associated with the first shift is scheduled to work a job requiring skill q1 in
the second period and q2 in the third and fourth periods, respectively. In periods 1 and 5,
he is either working a job requiring q1 or q2 but, due to the time window, can not have a
5.4 Break Assignment Problem 134
break. The submatrix above the horizontal line illustrates constraints (111) for q1 and the
lower submatrix the corresponding constraints for q2 . When the length of the sub-break
is equal to one period, each column of A1 contains a single entry of 1 in the row where the
sub-break exists (columns 1 and 2) with the remaining entries being 0. Column 3 shows
that the consecutive 1’s property is lost when a sub-break incorporates more than a single
skill.
Similar to the single skill case, when employing time windows to regulate sub-break
starting times, there is no interdependency between the possible starting times of different
sub-breaks. Therefore, each column of A2 also contains a single entry of 1 or −1 with
the other entries being 0 due to the fact that each column of A1 and A2 corresponds to
a single sub-break. Now again, similar to the proof of Proposition 1, the sufficiency con-
dition for TU still holds in the case where the sub-break length is one period for each shift.
⎛ ⎞ ⎛ ⎞
0 0 0 1 −1 0 0 0 0 0 0 0
⎜1 0 0⎟ ⎜0 0 1 −1 0 0 0 0 0⎟
⎜ ⎟ ⎜ ⎟
⎜0 0 0⎟ ⎜0 0 0 0 ... ⎟
⎜ ⎟ ⎜ ⎟
⎜0 0 0⎟ ⎜0 0 0 0 ⎟
⎜ ⎟ ⎜ ⎟
1 ⎜0 0 0⎟ ⎜0 0 0 0 ⎟
ai,j = ⎜
⎜0
⎟ ... ⎜ ⎟
⎜ 0 0⎟⎟
⎜0
⎜ 0 0 0 ⎟
⎟
⎜0 0 0⎟ ⎜0 0 0 0 ⎟
⎜ ⎟ ⎜ ⎟
⎜0 1 0⎟ ⎜0 0 0 0 ⎟
⎜ ⎟ ⎜ ⎟
⎝0 0 1⎠ ⎝0 0 0 0 ⎠
0 0 0 0 0 0 0 0 0 0 1 −1
2
ai,j = 1 1 1 ... 0 0 0 0 0 0 0 0 0
Figure 5.5: Constraint matrix for BAP{M|X|T } with two skill levels.
Theorem 8. The problem of assigning a single break to each shift to minimize the number
of uncovered periods, that is, BAP{S|X|T}, is strongly NP-hard.
Proof. We will show that an instance of the single machine scheduling problem with release
times and deadlines, which Garey and Johnson [63] state is strongly NP-hard, can be
polynomially transformed into an instance of BAP{S|X|T }.
INSTANCE: Set J of jobs, for each job j ∈ J , a processing time pj ∈ Z+ , a release
time rj ∈ Z+ , and a deadline ej ∈ Z+ .
QUESTION: Is there a single machine schedule for J that satisfies the release time
constraints and meets all the deadlines?
Given an instance of the single machine scheduling problem, we equate a shift with a
job, so S is equivalent to J . For shift s ∈ S, let rs be the period in which the break can
start (release time), es the last period in which the break is allowed (deadline), and ps the
number of periods of the break (processing time). Also, let the surplus of coverage in each
period be 1.
Claim: There exists a feasible assignment of breaks to shifts such that there are no
manpower shortages in any period if and only if there is a feasible schedule of jobs for the
single machine problem.
The condition of no manpower shortage in any period means that no two breaks overlap.
This is equivalent to a schedule on a single machine in which each job is processed between
its release time and deadline without conflicting with any other job. Given that the above
transformation is linear in the number of shifts, and that any candidate solution to the
BAP can be checked for feasibility in polynomial time, the statement of the theorem
follows.
a special case.
Proof. For the BAP{F |V |T } with n distinct time windows, assume that the overall break
length ranges between ΔminBD and ΔmaxBD periods, and that the minimum and maximum
number of sub-breaks are between B min and B max . With each time window [tsr , ter ] , r ∈
{1, ..., n}, we associate a minimum break length of dmin r and a maximum break length
of dr . Accordingly, for each i ∈ {1, ..., B } the i-th sub-break can start in the (i)-
max max
th,...,(n − B min + i)-th time window and the length of the i-th sub-break is between
lbbl min bl max
i = minr∈{i,...,n−B min+i} (dr ) and ubi = maxr∈{i,...,n−B min +i} (dr ) periods.
For the BAP{F |V |W }, we set the range for the overall break length as well as the
minimum and maximum number of sub-breaks equal to those of the BAP{F |V |T }. Fur-
ther, for each sub-break i ∈ {1, ..., B max }, we set the minimum and the maximum break
length equal to lbbl bl
i and ubi , respectively. To proof our statement, it is sufficient to set
the minimum and maximum workstretch after each sub-break equal to 0 and the shift
length, respectively. Based on the assumptions, BAP{F |V |W } includes all the breaks of
the BAP{F |V |T } but not vice versa.
Now, place a cost of M > 0 on each sub-break in the BAP{F |V |W } that is not
feasible to BAP{F |V |T }. The procedure can be done in polynomial time as for each shift,
the overall number of breaks in the BAP{F |V |W } is bounded by i∈{1,...,Bmax} (ubbl i −
lbbl
i ) · ΔmaxS
. Given both models, we claim that the BAP{F|V|T} has a solution with
no uncovered periods if and only if the BAP{F |V |W } has a solution with no uncovered
periods and a cost of 0. First suppose that the BAP{F |V |T } has a solution with no
uncovered periods. Then the same break patterns can be used for the BAP{F |V |W } to
obtain the same solution. This proves the "if" part of the statement. Now suppose that
the optimal solution to the BAP{F |V |W } has a cost greater than 0. By implication,
this solution contains sub-breaks that have a cost M and hence is not feasible to the
BAP{F |V |T }. Therefore, BAP{F |V |T } does not have a solution with uncovered periods.
This proves the "only if" part of the statement.
Now observe that the BAP{F |V |T } does not include the BAP{F |V |W } since the break
windows of two or more consecutive sub-breaks can overlap. Consider a BAP{F |V |W }
with two sub-breaks. Let ΔminBF and ΔmaxBF be the minimum and maximum workstretch
duration before the first sub-break, respectively. Further, let ΔdurB be the minimum
duration of the first sub-break and let ΔminBW be the minimum workstretch duration
between the first and second sub-breaks. When ΔminBF + ΔdurB + ΔminBW < ΔmaxFB , the
break windows of the first and second sub-breaks overlap. In general, in the presence of
workstretch durations, the break window for a particular sub-break can only be derived
after the realization of the other sub-breaks.
5.5 Decomposition Procedure 137
Variables
TShP(qk , q + )
⎛ ⎞
Minimize ⎝ + ⎠
cwork + pq · zw,q,d,t + cuc · yq,d,t (115)
q∈Q(q + ,k) d∈D t∈T w∈W(qk )
subject to
Objective constraints
+
zw,q,d,t + yq,d,t ≥ Kq,d,t ∀ q ∈ Q(q + , k) ∈ D, t ∈ T (116)
w∈W(qk )
ym,w,d,l ∀ w ∈ W(qk ), d ∈ D(pw ), (117)
m∈M(d,pw ) l∈T shS (m):l≤t
− end
yw,d,l = zw,q,d,t t∈T
l∈T shE :l≥t
∀ w ∈ W(qk ), d ∈ D(pw ),
zw,q,d,t ≤ 1 (118)
q∈Q(q + ,k) t∈T
Shift constraints
1Dfix(pw ) (d) ≤ ym,w,d,t ≤ 1 ∀ w ∈ W(qk ), d ∈ D(pw ) (119)
m∈M(d,pw ) t∈T shS (m)
0≤ t · yw,d,t
end
− ∀ w ∈ W(qk ), d ∈ D(pw ) (120)
t∈T shE
t + ΔminS · ym,w,d,t
m∈M(d,pw ) t∈T shS (m)
≤ ΔmaxS
Tour constraints
⎛
O − − Ow ≤ ⎝ t · yw,d,t
end
− ∀ w ∈ W(qk ) (121)
d∈D(pw ) t∈T shE
5.5 Decomposition Procedure 139
⎞
t · ym,w,d,t⎠ ≤ O + − Ow
m∈M(d,pw ) t∈T shS (m)
∀ m ∈ M(d, pw ),
t · (ym,w,d,t − ym,w,d,t ) · ym,w,d,t ≤ 0 w ∈ W(qk ), (122)
t∈T shS (m)
d, d ∈ D(pw ) : d < d
∀ m ∈ M(d, pw ),
t · ym,w,d,t ≥ vm,w · ym,w,d,t w ∈ W(qk ), d ∈ D(pw ), (123)
t ∈ T shS (m)
∀ m ∈ M(d, pw ),
t · ym,w,d,t − vm,w ≤ Δbw (124)
t∈T shS (m) w ∈ W(qk ), d ∈ D(pw )
∀ m ∈ M(pw ),
ww,t · M ≥ ym,w,d,t (125)
d∈D(pw ) w ∈ W(qk ), t ∈ T shS (m)
ww,t ≤ K shifts ∀ w ∈ W(q work ) (126)
!
t∈ T shS (m)
d∈D(pw ),
m∈M(d,pw )
∀ w ∈ W(qk ),
q ∈ Q(q + , k), d ∈ D(pw ),
end
ym,w,d,t, ww,t, yw,d,t , zw,q,d,t ∈ {0, 1} (127)
m ∈ M(d, pw ),
t ∈ T shS (m), t ∈ T shE
vm,w ∈ N ∀ m ∈ M, w ∈ W(qk ) (128)
∀ q ∈ Q(q + , k), d ∈ D,
uc
yq,d,t ≥0 (129)
t∈T
∀ w ∈ W(qk ),
zw,q,d,t ∈ {0, 1} q ∈ Q(q + , k), (130)
d ∈ D, t ∈ T
Objective function The objective function (115) minimizes the sum of labor costs and the
cost of not meeting the demand. When workers with skill level qk are being considered,
demand coverage for skill levels qk > . . . > q1 is penalized with pqk = 0 < . . . < pq1 such
that workers with skill level qk are prevented from covering demand that requires lower
5.5 Decomposition Procedure 140
are covered by workers in W(qk ). For example, consider two time periods t1 and t2 on day
d and two skill levels q1 and q2 with the following demand.
For skill level q2 , assume that two workers are scheduled in t1 and t2 , i.e., the demand for
skill level q2 is completely covered. Hence, the next lower skill level is added, i.e., q + = q1 .
When running TShP(qk , q + ) again, the entire demand for skill level q2 is covered, while one
additional unit of demand is covered by one worker in period t2 for skill level q1 . Finally,
updating the residual demand for skill level q1 gives Kq,d,t1 = 1 and Kq,d,t1 = 0.
The set partitioning formulation (110)–(114) explicitly assigns break patterns to shifts
S(d). If we consider, for example, 400 shifts in which up to 3 sub-breaks are permitted, and
each sub-break can start within a time window of 12 periods and have a duration between
2 and 3, we obtain |B| = 5, 529, 600. This value defines the number of columns (and hence
variables) in the set partitioning formulation. The resultant problem is much too large to
solve in practice. Consequently, we have adopted an implicit modeling approach to the
BAP and investigate three different formulations.
The primary aim of implicit modeling is to reduce the number of decision variables
by avoiding the need to enumerate each possible combination of shift and sub-break se-
quence. This is achieved by modeling the rules for building breaks as constraints. The
implicit formulation associated with the GHSP is given in Appendix A.7. The other two
formulations are based on the shift scheduling work of Rekik et al. [106] who extended the
multiple break models of Aykin [13] and Bechtold and Jacobs [29] to include fractionable
breaks. However, they found that due to the large number of variables still required by
Aykin’s formulation, computational difficulties arose when there is a high degree of break
flexibility. With this in mind, we present an implicit formulation based on Bechtold and
Jacobs [29] that can accommodate significant break flexibility as well as a hierarchical
workforce. Insights on the computation times of the different formulations are provided
in § 5.6.
To help define our model, we introduce the terms break profile and shift profile. Each
break profile β ∈ BP corresponds to a number of sub-breaks denoted by Bβ and their
respective lengths. For example, using minutes as the unit of time, β1 = 15/30/15 and
β2 = 30/15/15 are two break profiles for a fractionable break with an overall length of 60
minutes. A sub-break k ∈ K is defined for each break profile, each position in the break
profile, each possible starting time and each skill level. Notice that we need a unique sub-
break for each skill level as we have to consider the skill of the worker that is taking the
break. In Rekik et al. [106], a shift profile (or a shift in their terminology) j ∈ J is defined
as a unique combination of start time, length, and admissible break profile. Because we
are considering a hierarchical workforce, we have extended the definition of a shift profile
5.5 Decomposition Procedure 143
Sets
J(β,q) = set of shift profiles associated with break profile β and skill q
B(β,r,q) = set of sub-breaks associated with break profile β, position r and skill q
Parameters
lq̂,q,t = number of shifts for workers with skill q̂ covering demand for jobs requring
skill q in period t
dk = length of break k
Variables
Pq̂,q,t = number of workers having skill q̂ who are given a break in period t from a
job requiring skill q
Match shifts with break profiles: From the TShP, we obtain the set of shifts as
well as the skill of the corresponding worker for each day of the planning horizon.
When solving the BAP, we consider workers with the same shift and skill jointly.
Therefore, instead of explicitly assigning each worker’s shift a break profile, we split
the shifts into groups that are then associated with eligible break profiles. Example:
Suppose that 5 workers with skill q2 are assigned a shift from 4 am to 11 am that
is associated with two permissible break profiles β1 =15/15/15 and β2 =15/30. The
workers are considered as a group, e.g., with 2 workers being assigned to β1 and 3
workers to β2 .
5.5 Decomposition Procedure 144
Match sub-breaks with shift profiles: The number of sub-breaks that are eligible
in the r-th position of break profile β is selected by means of forward and backward
constraints. For each break profile, each position within it, and each skill level,
these constraints ensure the feasibility of a transportation problem (to be defined
presently) between the break profiles’ corresponding shift profiles (supply nodes) and
the break profiles’ eligible sub-breaks (demand nodes). Thus, it is not necessary to
explicitly assign sub-breaks to each shift profile.
Assign breaks to shifts: When sub-break k covers period t, the demand coverage
in period t has to be reduced by the number of workers that are given sub-break k.
For each skill q̂, we must assure that the number of sub-breaks associated with skill
q̂ and covering period t does not exceed the number of workers with skill q̂ that are
scheduled to work in period t in the TShP solution. Furthermore, in the context of
downgrading, it is necessary to consider whether workers with skill q̂ are covering
demand requiring lower skill. Accordingly, for each period t and skill q, the number
of sub-breaks of type k covering period t are assigned to demand q for q ≤ q̂ in an
aggregated way such that the solution of TShP is respected. By using aggregation
we do not have to explicitly reduce the demand for a specific skill for each sub-break
and each period the sub-break covers. Example: In period 5, 4 workers with skill q2
are assigned to a job requiring skill q2 and 2 workers are assigned to a job requiring
skill q1 . BAP has to ensure that not more than 4 (2) workers with skill q2 are given
a break in period 5 from a job requiring skill q2 (q1 ). If 3 workers with skill q2
have a break in period 5, their breaks can be assigned aggregately to jobs by either
assigning 0, 1, or 2 breaks to a job requiring skill q1 while assigning 3, 2, or 1 breaks,
respectively, to a job requiring skill q2 .
Before presenting our model, we outline the idea of using forward and backward con-
straints to ensure the feasibility of certain balanced transportation problems that were
5.5 Decomposition Procedure 145
first introduced in Rekik et al. [105] and Çecik and Günlük [40]. We also give a high level
description of the transportation problems included in our models. In all cases, the sum
of the supply equals the sum of the demand.
Given a bipartite graph with a set of arcs A connecting the two sets of nodes N1 and
N2 , with each node i ∈ N1 having supply Oi and each node j ∈ N2 having demand Di , we
wish to determine the flow Yi,j from node i to node j for each (i, j) ∈ A. The constraints
for the corresponding transportation problem T (N1 , N2 ) can be stated as follows.
Yi,j = Oi ∀ i ∈ N1 (131)
j:(i,j)∈A
Yi,j = Dj ∀ i ∈ N2 (132)
i:(i,j)∈A
Under the assumptions that a total order relation ≺ can be defined on set N2 , each
supply node i is connected to a set of consecutive demand nodes Pi , and there exists no
extraordinary overlap, i.e., there exists no two nodes i1 and i2 such that Pi1 ⊂ Pi2 , then
the feasibility of transportation problem (131) – (132) is guaranteed by a set of forward,
backward, and flow balance constraints. Using the following sets
"
N2s = {min(Pi )}
i=N1
"
N2e = {max(Pi )}
i=N1
and letting ns2 = min(N2 ) and ne2 = max(N2 ), the necessary constraints are
Dj ≥ Oi ∀ j ∈ N2e \ {ne2 }
j ∈N2F (j) i∈N1F (j)
Dj ≥ Oi ∀ j ∈ N2s \ {ns2 }
j ∈N2B (j) i∈N1B (j)
5.5 Decomposition Procedure 146
Oi − Dj = 0
i∈N1 j∈N2
To match sub-breaks with shift profiles, a transportation problem for each break profile,
each position within the break profile, and each skill level has to be considered, i.e., a
transportation problem T (J(β,q) , B(β,r,q) ) for each β ∈ BP, r ∈ {1, ..., Bβ } and q ∈ Q. The
supply associated with node j is Sj , whereas the demand for node k is Ek . An arc (j, k)
exists between a shift j ∈ J(β,q) and a sub-break k ∈ B(β,r,q) if break k is eligible in the r-th
break position of shift j. The sub-breaks’ starting times define a total order on set B(β,r,q) .
Finally, we assume no extraordinary overlap between breaks of different shift profiles in
Jβ,q . This is not a limitation for the tour scheduling problem under consideration or for
most practical applications since there exist extensions that allow for extraordinary overlap
by modifying the forward and backward constraints, e.g., see Addou and Soumis [3]. Note
that to adapt the forward and backward constraints presented in Rekik et al. [106] to
respect hierarchical skills, besides associating each j ∈ J and k ∈ K with a specific skill
level, a separate transportation problem has to introduced for each skill level.
To obtain a feasible solution with respect to workstretch durations, the feasibility of
a second set of transportation problems, T (B(β,r,q) , B(β,r+1,q) ), must be assured. Here, the
nodes correspond to breaks and are defined for all β ∈ BP, r ∈ {1, ..., Bβ − 1} and q ∈ Q.
The supply and demand of each node k is Ek . Nodes k1 ∈ B(β,r,q) and k2 ∈ B(β,r+1,q) are
connected if the workstretch duration between their corresponding breaks is within δ minBW
and δ maxBW . Further, based on the break starting times, a totally ordered relationship ≺
on B(β,r,q) is defined which per se excludes extraordinary overlap.
5.5.2.3 Implicit BAP formulation based on the Bechtold and Jacobs model
Our implicit formulation of the BAP is based on the model developed by Bechtold and
Jacobs. It embodies the four components mentioned above along with a set of demand
constraints. The objective here and for the two other formulations in Appendices A.6
and A.7 is to minimize the cost of uncovered periods minus the savings that result when
workers are on their breaks.
5.5 Decomposition Procedure 147
subject to
−
+
Pq̂,q,t + yq,t − yq,t = Dq,d,t ∀ q ∈ Q, t ∈ T (134)
q̂≥q
Sj = hs,q ∀ s ∈ S, q ∈ Q (135)
j∈Js,q
Pq̂,q,t = ρt,k · Ek ∀ q̂ ∈ Q, t ∈ T (136)
q≤q̂ k∈Kq̂
q∈Q (140)
Ek − Ek ≥ 0 ∀ β ∈ BP, r ∈ {1, ..., Bβ − 1} ,
F
k ∈B(β,r+1,q) (k) F
k ∈B(β,r,q) (k)
q ∈ Q, k ∈ B(β,p+1,q)
e
\ k(β,p+1,q
e
(141)
Ek − Ek ≥ 0 ∀ β ∈ BP, r ∈ {1, ..., Bβ − 1} ,
B
k ∈B(β,r+1,q) (k) B
k ∈B(β,r,q) (k)
q ∈ Q, k ∈ B(β,r+1,q)
s
\ k(β,r+1,q
s
(142)
Ek − Ek = 0 ∀ β ∈ BP, r ∈ {1, ..., Bβ − 1} ,
k∈B(β,r+1,q) k∈B(β,r,q)
q∈Q (143)
Pq̂,q,t ∈ Z+ ∀ q̂, q ∈ Q : q ≤ q̂, t ∈ T (144)
Sj , Ek ∈ Z+ ∀ j ∈ J,k ∈ K (145)
5.6 Computational Study 148
Constraints (134) determine the amount of demand for skill level q on day d in period
t that cannot be covered. While Rekik et al. [106] considered a shift scheduling problem,
for the BAP that we are solving, the set of shifts are derived from the TShP and taken
as input. To match shifts with permissible sub-breaks, each shift needs to be associated
with a break profile. In constraints (135), the linking of shifts with break profiles is done
implicitly, i.e., instead of explicitly assigning a break profile to each shift, identical shifts
assigned to workers with the same skill are aggregated based on admissible break profiles.
Constraints (136) ensure that the number of sub-breaks given in period t for workers with
skill q̂ are only distributed among jobs that require at most skill q̂. Note that this is only
possible when each sub-break k is associated with a specific skill. In constraints (137), the
assignment of sub-breaks is bounded by lq̂,q,t such that breaks can only be given when the
underlying jobs are being performed by workers having the specified skill. Again, workers
with skill q̂ who are performing a job that requires skill q in period t are grouped together.
This arrangement guarantees that a feasible solution to the problem of explicitly assigning
sub-breaks to workers can be found in a post-processing step.
The feasibility of the transportation problems for workstretch duration restrictions
between successive sub-breaks is ensured by the forward, backward and flow balance con-
straints given in (138), (139) and (140), respectively. Similarly, constraints (141), (142)
and (143) are respectively the forward, backward and flow balance constraints that ensure
that enough sub-breaks matching the shift profiles are assigned. Variables are defined in
(144) and (145).
there are at least 319 (= 29 × 11 = number of start times multiplied by the number of
shift lengths). Note that each hour is divided in four, 15-minute periods. If on one day,
two shift types are possible, e.g., see Table 5.6 in week 1 on Wednesday, then the number
of feasible shifts doubles.
Table 5.5: Parameter values for the fixed and flexible work templates
We consider from 10 to 300 workers and five skill levels, where it is assumed that
the demand for each level is 20% of the total. The maximum amount of overtime and
undertime per worker is given by O + = O − = 100; the individual amount of overtime
or undertime per worker was randomly assigned from the interval [0,100]. Since under-
coverage in a period indicates missing workers, we assume that the cost per period of
undercoverage is equal to the labor cost per period which is 1.
Table 5.7 presents the settings for the break regulations. The total break length (see
column “Dur tot”) in each break regulation is set to 6 periods. The first sub-break starts
between periods 8 and 24 periods after the shift start (column “FB”). The last break
(column “LB”) for multiple or fractional breaks has to start between 3 and 16 periods
5.6 Computational Study 150
before the shift ends. For all regulations with multiple breaks, 3 sub-breaks have to be
assigned. To guarantee a total break length of 6, in multiple break scenario {M|X|T }
with fixed sub-break length, each sub-break is 2 periods, while in multiple break scenario
{M|V |T } with variable sub-break length, each sub-break takes between 1 and 4 periods
(column “Dur SB”). After the shift starts, the time windows of the second and third
breaks are [26, 29] and [30, 33], respectively (column “TW”). In the two scenarios with
fractional breaks, {F |V |T } and {F |V |W }, 1 to 3 sub-breaks can be assigned to each shift,
which are either based on time windows or workstretch durations. The time windows
for the second and third sub-breaks associated with {F |V |T } are equal to those in the
multiple break regulation case. For fractional break regulation {F |V |T } the workstretch
duration between the successively sub-breaks after the first sub-break is from 3 to 24
periods (column “WS”).
Setting
Break regulation #Breaks Dur tot Dur SB WS TW FB LB
{S|X|T } 1 6 [8, 24]
{M |X|T } 3 6 2 [26, 29], [30, 33] [8, 24]
{M |V |T } 3 6 [1, 4] [26, 29], [30, 33] [8, 24] [3, 16]
{F |V |T } [1, 3] 6 [1, 6] [26, 29], [30, 33] [8, 24] [3, 16]
{F |V |W } [1, 3] 6 [1, 6] [3, 24] [8, 24] [3, 16]
With respect to demand, both low- and high-level scenarios were investigated along
with two different demand profiles: “varying demand” (VD) and “stable demand” (SD).
Figure 5.6 depicts the profiles VD and SD for Monday to Sunday where each day is
divided into 98 periods. The VD high level demand curve represents the true demand
during the course of a week for each qualification of the sponsoring company. The VD
low-level demand curves were derived from this curve by randomly lowering the demand.
Appendix A.8 yields the three stable demand curves for the same days and periods.
5.6 Computational Study 151
600
q5
q4
500 q3
q2
q1
400 q0
Demand
300
200
100
0
0 100 200 300 400 500 600 700
Monday Tuesday Wednesday Thursday Friday Saturday Sunday
600
q5
q4
500 q3
q2
q1
400 q0
Demand
300
200
100
0
0 100 200 300 400 500 600 700
Monday Tuesday Wednesday Thursday Friday Saturday Sunday
To uniquely identify a test instance we use the 4-tuple representation I {wor, pro, dem, temp}
specifying the workforce size wor ∈ {10, . . . , 50, 100, 150, 200, 250, 300, 350, 400}, the de-
mand profile pro ∈ {VD, SD}, the level dem ∈ {low, high}, and the work template in
Table 5.6 temp ∈ {Fix, Flex}.
The analysis is presented in two separate subsections: In §5.6.1, we compare the solu-
tion quality of our MIP-heuristic with solutions obtained with the compact MIP (CMIP)
formulation in Appendix A.5, which integrates the tour scheduling problem and the BAP.
In §5.6.2, we evaluate the “cost” of break flexibility by first generating tours by solving
TShP (115) – (129). In light of those results, we study the different combinations of BAP
formulations and BAP regulations to determine runtime and solution quality.
5.6 Computational Study 152
Table 5.8: Results for the CMIP and the MIP-heuristic for break regulation {S|V |T }
CMIP MIP-heuristic
Instance obj undercov runtime (s) obj undercov runtime (s) GAP*
{10, low, SD, fix} 7, 570 6, 520 15.77 7, 570 6, 520 3.68 0.00
{20, low, SD, fix} 7, 680 5, 055 30.92 7, 680 5, 055 4.45 0.00
{30, low, SD, fix} 8, 035 4, 010 78.81 8, 035 4, 010 8 0.00
{40, low, SD, fix} 8, 695 3, 095 272 8, 750 3, 150 9.42 0.63
{50, low, SD, fix} 9, 805 2, 630 268.53 9, 975 2, 800 9.51 1.7
{65, low, SD, fix} 11, 150 2, 050 55.3 11, 450 2, 360 11.8 2.71
{10, low, SD, flex} 7, 350 6, 033 33.9 7, 350 5, 690 8.82 0.00
{20, low, SD, flex} 7, 350 5, 447 94.78 7, 350 4, 595 6.83 0.00
{30, low, SD, flex} 7, 350 4, 652 1, 147.93 7, 350 3, 620 8.53 0.00
{40, low, SD, flex} 7, 350 3, 857 2, 868.06 7, 350 3, 220 13.45 0.00
{50, low, SD, flex} 7, 350 3, 328 10, 074.84 7, 350 3, 010 12.72 0.00
{65, low, SD, flex} 7, 380 2, 077 14, 074 7, 420 2, 495 57.436 0.54
{10, low, VD, fix} 9, 086 8, 036 2.6 9, 086 8, 036 1.34 0.00
{20, low, VD, fix} 9, 121 6, 496 8.48 9, 141 6, 517 2.14 0.22
{30, low, VD, fix} 9, 283 5, 258 99.49 9, 307 5, 245 5.92 0.26
{40, low, VD, fix} 9, 663 3, 957 748.99 9, 851 5, 599 10.64 1.91
{50, low, VD, fix} 10, 188 3, 013 830.01 10, 486 3, 311 12.58 2.84
{65, low, VD, fix} 11, 234 2, 134 499, 07 11, 671 2, 572 12, 76 3.74
{10, low, VD, flex} 9, 084 7, 857 20.55 9, 089 7, 133 4.93 0.01
{20, low, VD, flex} 9, 084 7, 070 436.42 9, 105 5, 759 11.72 0.23
{30, low, VD, flex} 9, 084 6, 158 2, 243.9 9, 113 4, 740 21.34 0.32
{40, low, VD, flex} 9, 084 5, 028 5, 326.08 9, 147 3, 850 36.08 0.69
{50, low, VD, flex} 9, 084 4, 546 8, 343.92 9, 185 3, 503 87.52 1.10
{65, low, VD, flex} 9, 368 3, 727 18, 000 9, 518 3, 225 614.95 1.58
prove the solution by 2, 455 (= 9, 805 − 7, 350) or 25%. In contrast, comparing instance
{50, low, SD, flex} for break regulations {S|V |T } and {F |V |W }, we see that latter im-
proves the solution by 318 (= 9, 805 −9, 487), which represents 13% (= 100%×318/2, 455)
of the improvement in the previous comparison. The improvement between the two break
regulations becomes more significant when we focus on instances with varying demand.
The difference between instances {50, low, VD, fix} and {50, low, VD, flex} with break reg-
ulation {S|V |T } is 1, 104 (= 10, 188 − 9084) or 10.8%. The comparisons between the two
break regulations {S|V |T } and {F |V |W } for these instances leads to a decrease in the
objective of 404 (= 10, 188 − 9, 784) which is equivalent to 37% of the improvement that
is obtained when flexible rather than fixed work templates are employed.
Our two-step approach is seen to provide high quality solutions in less than 100 sec-
5.6 Computational Study 154
Table 5.9: Results for the CMIP and the MIP-heuristic for break regulation {F |V |W }
CMIP MIP-heuristic
Instance obj undercov runtime (s) obj undercov runtime (s) GAP* GAP
{10, low, SD, fix} 7, 510 6, 460 32.32 7, 510 6, 460 3.56 0.00
{20, low, SD, fix} 7, 590 4, 965 189.32 7, 590 4, 965 4.10 0.00
{30, low, SD, fix} 7, 890 3, 865 1, 076.60 7, 900 3, 875 13.92 0.13
{40, low, SD, fix} 8, 412 2, 813 2, 454.28 8, 550 2, 740 19.55 1.61
{50, low, SD, fix} 9, 487 2, 312 2, 744.08 9, 640 2, 465 22.21 1.59
{65, low, SD, fix} 11, 164 2, 064 29.47 7.52
{10, low, SD, flex} 7, 350 5, 690 203.92 7, 350 5, 690 9.05 0.00
{20, low, SD, flex} 7, 350 4, 595 11.16 0.32
{30, low, SD, flex} 7, 350 3, 620 13.62 0.78
{40, low, SD, flex} 7, 350 3, 220 15.20 0.96
{50, low, SD, flex} 7, 350 3, 010 17.71 1.12
{65, low, SD, flex} 7, 420 2, 495 59.18 0.94
{10, low, VD, fix} 9, 084 8, 034 31.97 9, 086 8, 036 3.54 0.02
{20, low, VD, fix} 9, 108 6, 483 164.98 9, 133 6, 500 4 0.27
{30, low, VD, fix} 9, 247 5, 222 4, 345.21 9, 247 5, 222 13.32 0.43
{40, low, VD, fix} 9, 545 3, 839 7, 938, 34 9, 545 3, 862 14.29 1.37
{50, low, VD, fix} 9, 784 2, 564 10, 800.3 10, 243 3, 068 18.21 4.48
{65, low, VD, fix} 11, 443 2, 343 42.01 9.33
{10, low, VD, flex} 9, 084 7, 580 843.80 9, 084 7, 128 8.72 0.00
{20, low, VD, flex} 9, 087 5, 741 12.20 0.12
{30, low, VD, flex} 9, 093 4, 720 28.30 0.42
{40, low, VD, flex} 9, 128 3, 831 43.16 1.00
{50, low, VD, flex} 9, 160 3, 478 98.51 1.35
{65, low, VD, flex} 10, 367 4, 286 628.68 1.64
onds. Timely computations are critical when there is a frequent need to replan shifts
and breaks due to workforce and demand fluctuations. Moreover, when the demand is
largely uncertain from day to day, the only option is to reset the breaks since shift start
and end times cannot be adjusted during the course of the day or even for the upcoming
day without the likelihood of violating labor laws or incurring overtime costs. In the next
section, break flexibility is explored in more detail.
can serve to reduce undercoverage when the shifts are given. For the variable and stable
demand curves with both low and high demand, we consider the workforce sizes given in
Table 5.10.
Table 5.10: Number of workers considered for the two demand levels
Table 5.11 provides the statistics obtained from Algorithm 2 in the first step of the
MIP-heuristic. Column “time (s)” reports the runtime in seconds. The average number
of workers and the resulting number of shifts per day are shown in column “#worker”
and “#shifts,” respectively. Based on these shifts, the columns under the major heading
“#sub-breaks” report the number of sub-breaks for each break regulation in Table 5.7.
It can be seen that for fixed work templates fewer shifts are generated, and hence there
are fewer sub-breaks for each break regulation compared to the instances that have flex-
ible work templates. For example, for any number of workers associated with instances
{·, high, VD, flex}, there are significantly more sub-breaks generated for any considered
break regulation than for instances {·, high, VD, fix} with the same number workers.
5.6 Computational Study 156
#sub-breaks
Instance time (s) #workers #shifts {S|V |T } {M |X|T } {M |V |T } {F |V |T } {F |V |W }
{10, low, SD, fix} 0.79 4.28 1.1 87.43 82.29 97.71 1, 429.71 4, 278.86
{50, low, SD, fix} 4.25 29.29 3.86 240 308.57 3, 685.71 5, 093.14 11, 460
{100, low, SD, fix} 8.56 58.57 4.71 260.57 336.86 4, 122.86 5, 696.57 12, 303.43
{10, low, SD, flex} 3.4 7.14 1.43 316.29 128.57 1, 285.71 2, 108.57 6, 378
{50, low, SD, flex} 11.45 25 5 468 425.14 4, 251.43 6, 227.14 10, 354.29
{100, low,SD, flex} 1, 552.43 50 7.71 379.71 281.14 2, 811.43 4, 238.57 10, 675.34
{10, low, VD, fix} 1.96 4.28 2.09 104.57 122.57 1, 465.71 2, 027.14 4, 981.71
{50, low, VD, fix} 4.53 29.29 12.14 282 418.29 4, 662.86 6, 428.57 13, 182
{100, low,VD, fix} 9.22 58.57 11.29 281.14 421.71 4, 714.29 6, 498.86 13, 146.86
{10, low, VD, flex} 8.21 7.14 5.29 371.14 250.29 2, 502.86 4, 228.29 10, 798.29
{50, low, VD, flex} 66.15 28.14 26.71 578.57 795.42 7, 954.29 11, 544 16, 317.43
{100, low, VD, flex} 2, 567.69 51.71 20.28 478.29 798 7, 980 11.490 16, 263.43
{200, high, SD, fix} 51.82 117, 14 5.29 253.71 339.43 3, 394.29 5, 374.29 12, 022.29
{250, high, SD, fix} 60.75 146.43 8.71 273.43 397.71 3, 977.14 6, 147.43 12, 830.57
{300, high, SD, fix} 40.6 175.71 9.14 282 424.29 4, 242.86 6, 534 13, 182
{200, high, SD, flex} 2, 102.32 112 19 418 404.57 4, 045.71 6, 167.14 11, 882.57
{250, high, SD, flex} 2, 503.74 125 18.57 408.57 487.71 4, 877.14 7, 311.43 12, 538.29
{300, high, SD, flex} 7, 628.69 150 19.85 436.86 524.57 5, 254.29 7, 518 12, 467
{200, high, VD, fix} 33.15 117.14 11.57 282 400.29 4, 002.86 6, 182.57 13, 182
{250, high, VD, fix} 35.71 164.43 11.28 277.71 423.43 4, 234.29 6, 498.86 13, 006.29
{300, high, VD, fix} 40.50 175.71 11.28 279.43 405.43 4, 054.29 6, 252.86 13, 076, 57
{200, high, VD, flex} 3, 212.99 107.42 24.57 468.86 799.71 7, 997.14 12, 022.29 15, 997.71
{250, high, VD, flex} 4, 590.07 142.86 24.86 452.57 789.43 7, 894.29 11, 478.86 15, 223.71
{300, high, VD, flex} 4, 625.97 152.57 24.71 420.86 833.14 8, 331.43 12, 081.43 16, 368
The results in Table 5.11 reveal that as the workforce increases so does the runtime
of Algorithm 2 when flexible work templates are used. Also, the type of demand curve is
seen to affect runtime; instances with higher fluctuating demand take longer to converge.
The number of shift types depends on the workforce size and on the work template type.
For flexible work templates more individual tours are generated to cover the demand. Of
course, it is no surprise that the greater the flexibility available to generate shifts, the
greater the number shifts and, hence, sub-breaks. Similar to the hypothetical example
in Figure 5.2, the number of sub-breaks increases geometrically with the flexibility of the
break regulations. We also observed that as soon as a distinct number of shifts is used
as a basis for the generation of sub-breaks, increasing the number of shifts beyond that
threshold leads to a decrease in the number of newly generated sub-breaks. For example,
for break regulations {S|V |T } and {F |V |W } the number of newly generated sub-breaks
only increases slightly when 5 or more shifts are used (see Figure 5.7). A similar effect
5.6 Computational Study 157
can be observed for the other three break regulations in Table 5.11. Hence, for any break
regulation there exist a bounded set of shifts leading to a bounded set of all possible
sub-breaks.
5.6 Computational Study 158
(a) {S|V |T }
(b) {F |V |W }
Figure 5.7: Number of sub-breaks generated for {S|V |T } and {F |V |W } as the number of
shifts increases
Tables 5.12 and 5.13 compare the three BAP formulations: Implicit BAP I given in
Section 5.5.2.3, Implicit BAP II given in Appendix A.6, and Implicit BAP III given in
5.6 Computational Study 159
Appendix A.7, for break regulation {S|V |T } and {F |V |W }. Column “comp (s)” reports
the running time of CPLEX in seconds for each BAP formulation summed over the 7
planning days. For Implicit BAP I and II, it is necessary to derive the sets and parameters
accompanying the models, given the set of shifts for each day, e.g., for Implicit BAP
formulation I, we need sub-break set B and parameters hs,q . The time in seconds for all
the pre-processing summed over the 7 planning days is reported in column “pre (s).” The
average number of variables and constraints for each BAP formulation per day is given
in columns “#var” and “#constr,” respectively. If the fields in the table are empty, the
corresponding BAP formulation could not find the optimal solution within the allowed
time limit of 30 minutes (1,800 seconds).
All problem instances with break regulation {S|V |T } could be solved for all of three
BAP formulations (see Table 5.12). Comparing the total of runtime plus pre-processing
time, Implicit BAP I and II slightly outperformed BAP III. The reason may be found
in the increased number of variables in BAP III. However, when considering the results
for the most flexible break regulation {F |V |T } in Table 5.13, Implicit BAP II performed
worse than its other two competitors and is only solvable for small instances with less
than 100 workers and fixed work templates. For a larger workforce, or for flexible work
templates, the large number of sub-breaks (> 10, 000 sub-breaks, see Table 5.11), leads
to more than 500, 000 variables in Implicit BAP formulation II, which makes the problem
intractable. However, not all the instances associated with Implicit BAP III could be
solved either due to the huge number of variables and constraints.
In addition to the above comparisons of the computational tractability of the different
formulations, Table 5.15 highlights the objective function deviation in % of the four BAP
regulations {S|X|T }, {S|V |T }, {M|V |T } and {F |V |T } from the most flexible break reg-
ulation {F |V |W }. While the gaps between break regulations {S|V |T } and {F |V |W } are
rather large with deviations up to 17.61% (see instance {50, low, VD, fix}), break regula-
tions with fractional breaks and time windows show gaps of at most 3.56% (see instance
{100, high,VD, fix}).
The improvements from models with less flexibility to models with more flexibility
are highlighted in Table 5.14. For example, when break regulation {M|V |T } is used,
undercoverage decreases by 4.11%, on average, compared to the results obtained with break
regulation {S|V |T } (see row “Fix and Flex” in Table 5.14 which considers all templates
Table 5.12: Comparison of implicit BAP formulations for break regulation {S|V |T }
{50, low, SD, fix} 1.74 0.07 3, 411.86 3, 204.86 1.63 0.4 3, 237.43 3, 195 5.26 12, 573 2, 040.29
{100, low, SD, fix} 1.97 0.09 3, 433.29 3, 211.71 1.26 0.9 3, 252.86 3, 201 25.26 23, 994.86 3, 973.14
{10, low, SD, flex} 0.67 0.05 3, 485.71 3, 185.43 0.57 0.04 3, 200.86 3, 178.86 0.58 2, 699.14 898.86
{50, low, SD, flex} 1.76 0.18 3, 641 3, 214 1.46 0.03 3, 283 3, 203 1.56 5, 982 1, 511
{100, low,SD, flex} 13.34 0.58 3, 555.43 3, 234.29 10.73 1 3, 345.43 3, 222 3.26 10, 418.57 2, 314
{10, low, VD, fix} 1.47 0.02 2, 821.86 2, 735.43 1.4 0.4 2, 748.86 2, 728.43 0.14 2, 013.43 756
{50, low, VD, fix} 2.18 0.17 3, 462.14 3, 271.14 1.86 0.4 3, 386.57 3253 2, 07 7, 653.43 1, 806
{100, low,VD, fix} 2.31 0.18 3, 460.43 3, 264.29 2.9 0.32 3, 371.14 3, 247 13.26 14, 154.86 3, 036
{10, low, VD, flex} 0.98 0.14 3, 544.43 3, 126.29 1.73 0.02 3, 276.43 3, 201 0.51 2, 826 941.14
{50, low, VD, flex} 1.83 0.63 3, 779.29 3, 385.43 0.34 0.04 3, 332.57 3, 357 2.51 6, 879.86 1, 725.43
{100, low, VD, flex} 1.77 2.19 3, 658.14 3, 267.14 1.07 0.23 3, 440.71 3, 251 4.71 10, 366.29 2, 243.43
{200, high, SD, fix} 1.72 0.23 3, 427 3, 216.29 2.75 0.05 3, 263.14 3, 205 18.97 27, 157.71 5, 496
{250, high, SD, fix} 3.15 0.29 3, 450.14 3, 243.71 2.73 0.06 3, 324.86 3229 19.5 33, 659.14 6, 726
{300, high, SD, fix} 2.55 0.2 3459.14 3, 247.14 2 0.04 3, 332.57 3232 20.96 40, 160.57 7, 956
{200, high, SD, flex} 2.02 0.44 3, 516.29 3, 318.57 1.8 0.08 3, 605 3, 301 10.16 25, 488 5, 571.43
{250, high, SD, flex} 1.55 0.59 3, 569 3, 329.71 0.23 0.27 3, 595.14 3, 298 11.92 26, 324.14 5591.71
{300, high, SD, flex} 1.2 0.16 3, 561, 86 3, 238.57 1.57 1.19 3, 624.71 3, 307 16.96 28, 550.86 5, 658.86
{200, high, VD, fix} 2.96 0.32 3, 461.57 3, 266.57 3.22 0.06 3, 376.29 3, 249 17.34 27, 157.71 5, 496
{250, high, VD, fix} 2.88 0.35 3, 457 3, 264.29 1.38 0.04 3, 371.14 3, 247 22.17 33, 659.14 6, 726
{300, high, VD, fix} 2.2 0.26 3, 458.71 3, 264.29 2.76 0.04 3, 371.14 3, 247 27.76 40, 160.57 7, 956
{200, high, VD, flex} 2.65 0.94 3, 613.86 3, 281.21 1.73 0.17 3, 486.71 3, 265 13.3 25, 488 5, 571.43
{250, high, VD, flex} 2.06 0.24 3, 573.43 3, 234 4.15 1.41 3, 345.43 3, 222 20.03 27, 343.34 6, 432.32
{300, high, VD, flex} 5.02 0.36 3, 596.71 3, 234.86 2.43 0.43 3, 348.71 3, 223 29.03 29.038.32 8, 231.21
160
Table 5.13: Comparison of implicit BAP formulations for break regulation {F |V |W }
{50, low, SD, fix} 14.18 63.43 14, 689.71 4, 096.29 17.95 12, 573.43 2, 040.29
{100, low, SD, fix} 20.28 146.87 15, 546.86 4, 214.57 512.45 516, 442.3 11, 948.29 25.26 23, 994.86 3, 973.14
{10, low, SD, flex} 5.52 2.84 9, 568.86 3, 761.14 1.02 3, 847.71 920.29
{50, low, SD, flex} 11 8.18 13, 602.29 4, 202 3.2 9, 222 1, 786
{100, low,SD, flex} 30.36 8.37 14, 521.71 4, 590.43 50.23 37, 453.23 5, 433.33
{10, low, VD, fix} 5.63 10.16 7, 726.86 3, 311.14 3.19 11.09 52, 421.86 3, 690.43 0.56 2, 823.43 790.29
{50, low, VD, fix} 31.39 749.23 16, 544.29 5, 239.71 52.13 12, 573.43 2, 040.29
{100, low,VD, fix} 43.1 791.62 16, 495.43 5.121.43 125.23 2, 435.46 516, 442.3 11, 948.29 34.5 23, 994.86 3, 504.57
{10, low, VD, flex} 21.78 275.38 14, 050.86 4, 293.43 1.42 4, 143.71 962.57
{50, low, VD, flex} 81.2 1, 401 19, 912.86 7, 032.43 7.6 1, 809.56 38, 201.5
{100, low, VD, flex} 70.445 43.25 19, 756 6, 330.86 18.29 15, 996 2, 399.43
{200, high, SD, fix} 18.93 120.32 15, 274.86 4, 293.43 60.01 46, 837.71 7, 370.29
{250, high, SD, fix} 27.23 363.83 16, 138 4, 766.57
{300, high, SD, fix} 26.24 393.88 16, 496.29 4, 825.71 2, 109.57 69, 680.57 10, 767.43
{200, high, SD, flex} 43.5 1, 182.73 15, 973.43 6, 329.14 157 46, 837.71 7, 370.29
{250, high, SD, flex} 46.10 643.39 16, 074.14 6, 074.86
{300, high, SD, flex} 90.01 295.13 15, 973.43 6, 329.14
{200, high, VD, fix} 33.18 621.77 16, 535.14 5, 160.86
{250, high, VD, fix} 33.62 585.01 16, 354.86 5, 121.43
{300, high, VD, fix} 32.4 598.46 16, 425.14 5, 121.43
{200, high, VD, flex} 91.87 1, 580.92 19, 558.14 6, 628.14
{250, high, VD, flex} 82.06 1, 109.23 18, 782.57 6, 541.29
{300, high, VD, flex} 76.21 815.15 19, 728.29 6, 689
161
5.6 Computational Study 162
in Tables 5.5 and 5.6). If we restrict the benefits of increased break flexibility to instances
with fixed work templates only, then we obtain average improvements of 3.19%, 0.34%,
0.22% and 0.24%, respectively (see Table 5.14 in row “Fix”). Hence, the greatest average
benefits that result from increasing break flexibility are realized for the scenarios associated
with fixed work templates and variable demand.
Benefits (%)
Work template {S|V |T } → {M |V |T } {M |X|T } → {M |V |T } {M |V |T } → {F |V |T } {F |V |T } → {F |V |W }
Fix and Flex 4.11 0.48 0.38 0.42
Flex 0.92 0.13 0.15 0.17
Fix 3.19 0.34 0.22 0.24
One possible explanation for this result stems from the fact that flexible work templates
do a better job at covering demand than fixed work templates in the first step of the
MIP-heuristic. For the high demand scenarios, then, there is likely to be more uncovered
demand when fixed work templates are used so there is more opportunity to take advantage
of break flexibility in the second step.
5.7 Discussion and Conclusions 163
Break regulation
Instance {S|V |T } {M |X|T } {M |V |T } {F |V |T }
{10, low, SD, fix} 0.15 0.07 0.07 0.00
{50, low, SD, fix} 5.44 1.23 0.00 0.00
{100, low, SD, fix} 0.78 0.78 0.70 0.25
{10, low, SD, flex} 0.00 0.00 0.00 0.00
{50, low, SD, flex} 6.02 3.34 0.98 0.97
{100, low, SD, flex} 1.71 0.41 0.20 0.17
{10, low, VD, fix} 17.61 3.02 1.62 0.00
{50, low, VD, fix} 2.85 1.16 0.45 0.14
{100, low,VD, fix} 4.96 3.56 3.04 3.04
{10, low,VD, flex} 1.09 0.12 0.02 0.00
{50, low,VD, flex} 0.06 0.00 0.00 0.00
{100, low,VD, flex} 2.88 1.22 1.2 0.43
{200, high,SD, fix} 13.04 0.99 0.15 0.04
{250, high,SD, fix} 16.68 1.25 0.69 0.31
{300, high,SD, fix} 8.96 0.95 0.19 0.10
{200, high,SD, flex} 11.43 1.32 1.13 0.01
{250, high,SD, flex} 3.37 1.78 1.65 1.23
{300, high,SD, flex} 0.56 0.02 0.02 0.02
{200, high,VD, fix} 9.62 0.37 0.03 0.00
{250, high,VD, fix} 11.39 3.65 2.07 0.67
{300, high,VD, fix} 4.59 2.56 2.27 1.35
{200, high,VD, flex} 0.25 0.20 0.20 0.01
{250, high,VD, flex} 2.11 1.43 1.43 1.02
{300, high,VD, flex} 3.83 1.23 1.02 0.42
analysis showed that all but the simplest of problems are strongly NP-hard. Our compu-
tations confirmed that as break flexibility increases, the corresponding break assignment
problems become exponentially more difficult to solve.
Allowing variability in break length, fractionable breaks, and the use of workstretch
durations in contrast to predefined break time windows was seen to reduce demand under-
coverage and labor cost. The best improvement, though, was obtained by changing from
single to multiple breaks per shift. A higher degree of break flexibility turned out to be
especially valuable when shift regulations are rather rigid. Also, when the demand fluctu-
ates greatly over the day, break flexibility can compensate for inflexible shift regulations
and hence represents an alternative to loosening them up.
Because a compact formulation of the tour scheduling problem could not be solved for
large-scale instances, a MIP-decomposition heuristic was proposed that separates the break
assignments from tour scheduling. The approach led to promising results with respect to
runtimes and solution quality for all instances with up to 300 workers. In contrast, the
compact formulation could only solve those instances with up to 50 workers and little shift
flexibility.
To solve the break assignment problem, three implicit formulations were investigated.
BAP III in Appendix A.7 has the advantage of not requiring any pre- or post-processing
and could solve all instances with up to 100 workers in less than a minute. For all larger
instances with 200 to 300 workers, only the formulation based on Bechtold and Jacobs
[29] led to solution times of less than 30 minutes.
Currently, no procedure exists for solving the integrated problem to optimality in
reasonable time. Its practical relevance offers ample justification for more algorithmic
development. In the future, we plan to explore exact decomposition approaches to tackle
the ThSP and the flexible BAPs in an integrated way. The study of the BAP alone is
also of interest, especially for intraday schedule adjustments. During the course of the
day, shifts cannot in general be adjusted when a the demand profile changes but it may
be possible to reassign the breaks. In this regard, we are now designing a rolling horizon
framework for calibrating the value of flexible breaks in short-term disruption scenarios.
Chapter 6
Conclusion
165
6.1 Summary and conclusions 166
minimizing passengers’ waiting time as well as leveling the utilization of baggage carousels.
To efficiently generate new solutions with respect to different weightings of the objectives,
we developed multi-objective path-relinking. We demonstrated how we implemented the
algorithm at a major European airport where it is in use in order to operate the inbound
baggage handling process. In a case study, we compared the results of the mathematical
model with the solutions of the hybrid heuristic and the solutions provided by the airport.
The proposed algorithm reduces baggage peaks at the baggage carousels by 38% and
waiting times of passengers by 11%. All computational results are based on an extensive
simluation incorporating real world data.
In the second part of this dissertation, we shifted our focus towards ground handling
and the scheduling of ground staff. In chapter 4, we put the focus on cyclic rostering
problems introducing flexible cyclic rostering, a novel approach to schedule personnel in a
cyclic fashion derived from practice and intended to overcome the inflexibility of traditional
cyclic rostering. With M-SCRP, a multi-stage stochastic programming formulation of the
problem was presented. As it turned out that M-SCRP includes an exponential number of
NP-hard problems, we presented 2-SCRP, converting the multi-stage problem into a two-
stage model approximation. To further speed up computation, with R-SCRP, a second
approximation was presented that relates to how shifts are chosen in the second stage of
2-SCRP. All formulations presented can also be applied to traditional cyclic rostering, for
which, to the best of our knowledge, no stochastic approaches exist in literature. Moreover,
we could show that R-SCRP is equivalent to M-SCRP for traditional cyclic rostering.
In a computational study, we compared traditional cyclic rostering with flexible cyclic
rostering testing the different model approximations. Therefore, data from airport ground
handling was used and altered with different variations of demand fluctuation. It turned
out that flexible cyclic rostering could overcome the inflexiblity of cyclic rostering by a
large extend. Considering the undercoverage resulting from the generated staff schedules,
an improvement of up to 24.96% could be achieved. On the other hand, the study also
showed that incorporating stochastic information could significantly increase the quality
of cyclic rosters with improvements of up to 8.1%. Furthermore, results indicated that
R-SCRP is a promising approximation for 2-SCRP with all gaps between both model
formulations being 0.36% or less while average computing times were reduced from more
than 8000 seconds for 2-SCRP to less than 50 seconds for R-SCRP.
Chapter 5 examined the complexity of assigning multiple breaks to shifts in the con-
6.2 Future research 167
text of large-scale tour scheduling. A MIP model was presented that includes shift and
days-off scheduling along with break assignments for a multi-skilled workforce. To achieve
tractability, a two-stage decomposition procedure was proposed that separates the tour
scheduling problem (TShP) from the break assignment problem (BAP). The former MIP
was first solved to determine the shifts and days off for the workforce that minimize labor
and shortages costs over the planning horizon. The results were then used as input to a
second MIP that optimally places the breaks to minimize the costs of working hours and
uncovered periods. Three implicit BAP formulations were investigated. To better un-
derstand the literature and the models previously developed, a 3-field break classification
scheme was introduced. The first field characterizes the number of breaks permitted per
shift, the second specifies whether the length of the breaks is fixed or variable, and the
third limits their position in a shift. A complexity analysis of the resulting 12 BAPs along
with a few special cases was then undertaken. Most were shown to be strongly NP-hard.
Computations were presented for a wide variety of scenarios for both the TShP and the
BAP using data provided by a European airport ground handler company. In all, over 500
instances were investigated using high and low demand fluctuation curves and the vari-
ous break and shift flexibility options. The results indicated that increasing flexibility in
break regulations can make a significant difference in coverage, but the degree depends on
the underlying structure of the demand curve as well as on the types of shifts permitted.
Instances with the most flexible shift and break regulations reduced undercoverage by up
to 16.68% compared to the most common scenarios in which shifts are limited to a single
lunch break.
ning used at an airport. We are currently undertaking a follow-up survey at the same
airport to show the improvement of passengers’ satisfaction following the implementation
of our algorithm. We hope to obtain further practical insight into the benefits of using
OR in baggage handling processes.
In chapter 4, we saw that the value of stochastic information increases when there are
less options to adapt to demand fluctuations at a later stage. Therefore, an integration
of stochastic information in tour scheduling problems seems promising. To further speed
up 2-stage model formulations like 2-SCRP for flexible cyclic rostering, decomposition
approaches can be used as an alternative to the approximation method we proposed.
Thereby, particular attention must be paid to the integrality of the decision variables.
Chapter 5 showed the potential improvements that can be made by exploiting flexible
break regulations. In a rolling horizon framework, we want to further investige how differ-
ent break regulations can be exploited when breaks can be planned dynamically over the
course of a day. Finally, to the best of our knowledge, there exists no solution approach to
solve the tour scheduling problem with complex break regulations like fractionable breaks.
We try to tackle the problem for an anonymous workforce with a branch-and-price algo-
rithm.
Appendix A
Appendix
Minimize f lin(x) = λ · puk · zk,c,t
u
+ (1 − λ) · · · · (1”)
1≤k≤K c∈C t∈T
∀ 1 ≤ k ≤ K, c ∈ C,
u
zk,c,t ∈ {0, 1} (147)
t∈T
169
A.3 Simulation environment 170
to assess the overall satisfaction. Due to the spacious claiming hall at our cooperation
partner, it turned out that only a) and b) influence passengers satisfaction. The first two
rows of Table A.1 show the adjusted-R2 and the root mean squared error between the
given assessment of objectives a), b) and passengers’ true walking distances and waiting
times, respectively. The results reveal a stronger correlation between waiting time and
assessment, than between walking distance and assessment. Moreover, the correlation
between passengers’ overall satisfaction and passengers’ true waiting time is also also
higher than the correlation between passengers’ overall satisfaction and passengers walking
distance (see the second part of Table A.1).
Infeed process During the simulation, the historical expected on-block times are used
for flights which have not arrived at the airport. These expected on-block times are up-
dated during the simulation run with the historical updates for the expected on-block
A.4 Pseudo code 171
Claiming process Once a flight is on-block it take between 3 and 8 minutes until a
passenger can disembark (passengerDisembark). Passenger’s walking speed from varies
between 4 and 7 km/h. For transcontinental flights we additional add an offset to simulate
costumes which takes between 1 and 2 minutes. Together with the distance matrix from
a flight’s parking position to the carousels, event passengerArrival is scheduled. As
soon as the passenger arrives at the baggage carousel he can either pick up his bags, if
the bags have arrived at the carousel, or the passenger has to wait. If the passenger is at
the carousel and the bag arrives, he removes the bag after an offset between 10 and 40
seconds (removeBag). As soon as all bags are picked up by the passenger he leaves the
baggage claim hall (passengerLeave).
Function Description
hcstr cost function in constructive phase
h augmented cost function in improvement phase
Solution Description
xbest best solution found based on function hcstr
x current iteration best solution found based on function hcstr
xls current local search solution
xnext next solution in a neighborhood of solution xls
xlsb current local search iteration best solution
bstart
r,w,d,t = 1, if sub-break r for worker w starts in period t on day d, 0 otherwise
bend
r,w,d,t = 1, if sub-break r for worker w ends in period t on day d, 0 otherwise
blast
w,d,t = 1, if the last sub-break for worker w ends in period t on day d, 0 otherwise
CMIP
minimize cwork · zw,q,d,t + cuc · yq,d,t
uc
(148)
q∈Q d∈D t∈T w∈W
Break regulations
max
B
r,w,d,t ≥
bstart b1,w,d,t · B min ∀ w ∈ W, d ∈ D(pw ) (152)
r=1 t∈T brS (r) t∈T brS (1)
⎛
ΔmaxBF ≥ ⎝ t · bstart
1,w,d,t −
t∈T brS (1)
⎞
t − ΔminBF · ym,w,d,t⎠ ≥ 0 ∀ w ∈ W, d ∈ D(pw ) (153)
m∈M(d,pw ) t∈T shS (m)
ΔmaxBD
r ≥ t · bend
r,w,d,t − t · bstart
r,w,d,t ≥
t∈T brE (r) t∈T brS (r)
ΔminBD
r · bstart
r,w,d,t ∀ w ∈ W, d ∈ D(pw ), 1 ≤ r ≤ B max (154)
t∈T brS (r)
⎛ ⎞
Bpmax
Δ maxBD
≥ ⎝ t· bend − t· bstart ⎠ ≥
r,w,d,t r,w,d,t
r=1 t∈T brE (r) T brS (r)
A.5 Compact mixed integer program 174
ΔminBD · ym,w,d,t ∀ w ∈ W, d ∈ D(pw ) (155)
m∈M(d,pw ) t∈T shS (m)
ΔmaxBW
r ≥ t · bstart
r+1,w,d,t −
brS (r)
t∈Tm
∀ w ∈ W, d ∈ D(pw ),
t · bend
r,w,d,t ≥ Δr
minBW
· bstart
r+1,w,d,t (156)
t∈T brE (r) t∈T brS (r) 1 ≤ r < B max
⎛ ⎞
end
yw,d,t − ΔminBL ≥ ⎝ t · blast
w,d,t
⎠≥
t∈T shE t∈T brE
end
yw,d,t − ΔmaxBL ∀ w ∈ W, d ∈ D (157)
t∈T shE
⎛ ⎞
t · blast ⎝ ⎠
w,d,t ≥ t · bend
r,w,d,t ∀ w ∈ W, d ∈ D, B min ≤ r ≤ B max (158)
t∈T brE t∈T brE (r)
(t − 1) · blast
w,d,t ≤ t · bend
r,w,d,t +
t∈T brE \{0} t∈T brE (r)
r+1,w,d,t · T
bstart ∀ w ∈ W, d ∈ D, B min ≤ r < B max (159)
t∈T brS (r)
(t − 1) · blast
w,d,t ≤ t · bend
B max ,s,t +
t∈T brE \{0} t∈T brE (B max )
⎛ ⎞
⎝1 − ⎠
B max ,w,d,t · T
bstart ∀ w ∈ W, d ∈ D (160)
t∈T brS (B max )
w,d,t ≤ 1 ∀ w ∈ W, d ∈ D
blast (161)
t∈T brE \{0}
r−1,w,d,t ≥
bstart bstart
r,w,d,t ∀ w ∈ W, d ∈ D(pw ), 1 < r ≤ B max (162)
t∈T brS (r−1) t∈T brS (r)
r,w,d,t ≤ 1 ∧
bstart r,w,d,t ≤ 1 ∀ w ∈ W, d ∈ D(pw ), 1 ≤ r ≤ B
bend max
(163)
t∈T brS (r) t∈T brE (r)
max
B max
B
bstart
r,w,d,t = bend
r,w,d,t ∀ w ∈ W, d ∈ D(pw ) (164)
r=1 t∈T brS (r) r=1 t∈T brE (r)
The objective function (148) along with the constraints (149)–(151) are similar to (115)
A.6 Implicit BAP formulation based on Aykin’s approach 175
and (116)–(118), respectively, but now all skill levels are included. Constraints (152)–
(164) describe the break regulations. With respect to B1, for each worker w at least
B min sub-breaks per shift are set in constraints (152), while the minimum and maximum
number of periods from the start of the shift to the first sub-break, as indicated in B2,
are set in constraints (153)). The length of each sub-break, as restricted by B3, and the
overall break length, as restricted by B4, are bounded by constraints (154) and (155),
respectively. The minimal and maximal bandwidth between two sub-breaks, B5, is set
in constraints (156). The distance of the last sub-break to the end of the shift, B6, is
modeled in constraints (157). The decision variables blast
w,t,d , which control the latest ending
time over all sub-breaks assigned to worker w on day d are determined by (158)– (161).
The last set of constraints (162)–(164) define general modeling requirements. Logically,
the r-th sub-break can only be started if its immediate predecessor sub-break r − 1 has
been started [constraints (162)]. Also, the unique starting period of each sub-break is
defined in constraints (163) and, due to constraints (164), a sub-break can only end if it
has been started.
If we consider breaks with time windows in the GHSP, i.e., BAP{·| · |T }, the above
model has to be slightly modified. Let ΔminTW and ΔmaxTW be the minimal and maximal
number of periods of the r-th sub-break, respectively, for r > 1 from the shift start. Then
we replace the two-sided constraints (156) with
ΔmaxTW
r ≥ t · bstart
r,w,d,t − t · ym,w,d,t ΔminTW
r
t∈T brS (r) m∈M(d,pw ) t∈T shS (m)
≥ ΔminTW
r · ym,w,d,t ∀ w ∈ W, d ∈ D(pw ), 1 < r ≤ B max (156’)
m∈M(d,pw )
We make use of the definitions of shift profiles and break profiles in § 5.5.2 and similarly,
define a sub-break k ∈ K for each break profile, each position in the break profile, each
possible starting time, and each skill level. Also, we need a unique sub-break for each skill
level since we have to consider the skill of the worker that is taking the break. Instead of
assigning sub-breaks explicitly to shifts, a variable Xj,k is defined that stores how often
sub-break k ∈ K is assigned to shift profile j ∈ J.
To obtain a feasible solution with regard to workstretch durations, the feasibility of
transportation problems between successive breaks has to be ensured. The following set
is used to constructed the problems.
Based on the break starting times, a totally ordered relationship ≺ on Kj(r) is defined.
Then, a transportation problem T (Kj(r), Kj(r+1) ) from the nodes in Kj(r) to the nodes in
Kj(r+1) can be established for each j ∈ J and each r ∈ 1, .., Bj − 1. Nodes k1 ∈ Kj(r) and
k2 ∈ Kj(r+1) are connected if the workstretch duration between their corresponding breaks
is within the interval [δ minBW , δ maxBW ]. The feasibility of the transportation problem en-
sures that there are enough successor breaks for all sub-breaks k that are assigned to shift
profile j and is guaranteed by a set of forward and backward constraints based on the
principles described in § 5.5.2. Also, because there are no pairs of nodes k1 , k2 ∈ Kj(r)
for which Kksuc
1
⊂ Kksuc
2
, there is no extraordinary overlap.
In the formulation, we make use of the following additional parameters and variables:
Parameters
Variables
A.6 Implicit BAP formulation based on Aykin’s approach 177
subject to
−
+
Pq̂,q,t + yq,t − yq,t = Dq,d,t ∀ q ∈ Q, t ∈ T (168)
q̂≥q
Sj = hs,q ∀ s ∈ S, q ∈ Q (169)
j∈Js,q
Xj,k − Sj = 0 ∀ j ∈ J , r ∈ {1, ..., Bj } (170)
k∈Kj(r)
∀ j ∈ J,
Xj,k − Xj,k ≥ 0 r ∈ {1, ..., Bj − 1} , (173)
k ∈KF (k) k ∈KF (k)
j(r+1) j(r)
k ∈ Kj(r+1)
e
\ kj(r+1)
e
∀ j ∈ J,
Xj,k − Xj,k ≥ 0 r ∈ {1, ..., Bj − 1} , (174)
k ∈KB (k) k ∈KB (k)
j(r+1) j(r)
k ∈ Kj(r+1)
s
\ kj(r+1)
s
Constraints (168) determine the amount of demand for skill level q on day d in period t
that cannot be covered, while constraints (169) ensure that all shifts of type s for workers
with skill q are connected to a shift profile j. Due to constraints (170), the number of
sub-breaks for shift j in each break position r ∈ {1, ..., Bj } corresponds to the number
of shifts of type j. Further, there cannot be more workers with skill q̂ that take a break
from a job requiring skill q in period t then there are workers in the input tour plan with
skill q̂ carrying out a job in period t that requires skill q. This is enforced by (171). In
A.7 Implicit BAP formulation III 178
addition, all breaks taken in period t by workers with skill level q̂ must be distributed
among jobs requiring at most skill q̂. This is enforced by (172). Constraints (173) and
(174) respectively are the forward and backward constraints used to ensure that the total
number of sub-breaks is correct. Equality constraints for the total sub-break supply and
demand are not needed due to constraints (170). Variables are defined in (175) and (176).
Variables
bstart
r,s,t = 1, if the r-th sub-break for shift s starts at time t, 0 otherwise
bend
r,s,t = 1, if the r-th sub-break for shift s ends at time t, 0 otherwise
blast
s,t = 1, if the last sub-break for shift s ends at time t, 0 otherwise
zs,q,t = 1, if period t is a working period for shift s that covers skill level q, 0 otherwise
subject to
−
as,t − yq,t +
+ yq,t = Dq,d,t ∀ q ∈ Q, t ∈ T (178)
s∈S(q,t)
A.7 Implicit BAP formulation III 179
max
B
r,s,t ≥ B
bstart min
∀ s ∈ S (d) (179)
r=1 t∈T brS (r)
⎛ ⎞
ΔminBF ≤ ⎝ t · bstart start ⎠
1,s,t − Ss ≤ ΔmaxBF ∀ s ∈ S (d) (180)
t∈T brS (r)
ΔminBD
r · r,s,t ≤
bstart t · bend
r,s,t ∀ s ∈ S (d), (181)
t∈T brS (r) t∈T brE (r)
− t · bstart
r,s,t ≤ Δr
maxBD
1 ≤ r ≤ B max
t∈T brS (r)
max
⎛ ⎞
B
ΔminBD ≤ ⎝ t · bend
r,s,t − t · bstart
r,s,t
⎠ ∀ s ∈ S (d) (182)
r=1 t∈T brE (r) t∈T brS (r)
≤Δ maxBD
ΔminBW
r · r+1,s,t ≤
bstart t · bstart
r+1,s,t − ∀ s ∈ S (d) (183)
t∈T brS (r+1) t∈T brS (r+1)
t · bend
r,s,t ≤ Δr
maxBW
1 ≤ r ≤ B max − 1
t∈T brE (r)
⎛ ⎞
end
Ss,d − ΔminBL ≥ ⎝ t · blast
s,t
⎠ ≥ S end − ΔmaxBL
s ∀ s ∈ S (d) (184)
t∈T brE
⎛ ⎞
∀ s ∈ S (d),
t · blast ⎝ ⎠
s,t ≥ t · bend
r,s,t (185)
t∈T brE t∈T brE (r) B min ≤ r ≤ B max
(t − 1) · blast
s,t ≤ t · bend
r,s,t + ∀ s ∈ S (d) (186)
t∈T brE t∈T brE (r)
r+1,s,t · Ss,d
bstart B min ≤ r < B max
end
−
∀ q ∈ Q,
+
yq,t , yq,t ≥0 (195)
Ssstart ≤ t ≤ Ssend
Constraints (178)–(195) are equivalent to (152)–(164), but now workers’ shifts S ∗ (d)
for each day d ∈ D are provided by Algorithm 2.
150
q5
q4
q3
q2
q1
100 q0
Demand
50
0
0 100 200 300 400 500 600 700
Monday Tuesday Wednesday Thursday Friday Saturday Sunday
150
q5
q4
q3
q2
q1
100 q0
Demand
50
0
0 100 200 300 400 500 600 700
Monday Tuesday Wednesday Thursday Friday Saturday Sunday
Abbreviations
App. appendix
BAP break assignment problem
BC baggage carousel
BHS baggage handling system
BSM baggage source massage
CCPP check-in counter planning problem
CMIP compact mixed integer program
DP decision problem
EEV expected result of expected value problem
EV expected value problem
EVPI expected value of perfect information
FCFS first come, first serve
FLS fast local search
FSP flight scheduling problem
GASP generic assignment and scheduling problem
GFLS guided fast local search
GHSP ground handler staffing problem
GRASP greedy randomized adaptive search procedure
HGGLS hybridization of greedy randomized adaptive
search procedure with guided fast local search
IBAP implicit break assignment
IBHP inbound baggage handling problem
182
183
LP linear programming
L-IBHP linearized inbound baggage handling problem
MIP mixed integer program
MORP multi-objective path-relinking
M-SCRP multi-stage stochastic cyclic rostering problem
NP non-deterministic polynomial
OBHP outbound baggage handling problem
OR operations research
PP pricing problem
PR path-relinking
RDS ramp direct service
RMSE root mean squared error
RR recourse problem
R-SCRP relaxed stochastic cyclic rostering problem
Sec. section
SGASP simplified generic assignment and scheduling
problem
TIF time indexed formulation
TShP tour scheduling problem
TU totally unimodular
ULD unit load device
VSS value of the stochastic solution
WS wait-and-see solution
2-SCRP two-stage stochastic cyclic rostering problem
Appendix C
Mathematical symbols
General
Sets
R real numbers
Z integer numbers
Z+ non-negative integer numbers
Functions
Operators
∧ logical “and”
∨ logical “or”
184
185
Parameters
F number of jobs/flights
G number of resources
Li,t number of required resources by job i at time t
M number of modes
pi,m,g minimum processing time of job i at resource g
in mode m
ri,m,g resource usage of job i for resource g in mode m
Sies earliest start time for job i
Sils latest start time for job i
Sie end time for job i
T end of planing horizon
Ug capacity of resource g
Us capacity of the central storage system
λ+ general infeed rate
λ− number of passengers or bags that can be
handled per time period
λ+ g infeed rate at infeed station g
186
λ+
i,t number of arriving passengers or bags for flight
i at time t
λ−
i,g,t depletion rate of passengers at time t, if flight i
is assigned to baggage carousel g
Variables
Bi,t number of stored bags for flight i in period t
Ii,g,t number of passengers or bags of job/flight i at
resource g at the end of period t
xi,m,t 1, if processing of job i in mode m starts at the
beginning of period t, and 0 otherwise
zi,g,t number of allocated resources of type g for
job/flight i in period t
Functions
f I,z (Ii,g,t , zi,g,t) cost function for variable Ii,g,t and zi,g,t
f x (xi,g,t ) cost function for variable xi,g,t
g(zi,g,t) in- and outflow of period t resulting from
resource allocation zi,g,t
Parameters
Ai,c arrival time of the first passenger of flight i at
baggage carousel c
Bl number of inbound bags of trip l
Bitot total number of inbound bags of flight i
C number of baggage carousels
dwalk realized walking distance
E number of infeed station
F number of flights with inbound baggage
Kccb conveyor belt capacity of baggage carousel c
Kcdi display capacity of baggage carousel c
L number of trips
Li number of trips for flight i
le0 start dummy trip for infeed station e
leL+1 end dummy trip for infeed station e
Ni maximal number of bags carried by one
passenger of flight i
Pi number of passengers of flight i
pi (n) percentage of passengers of flight i carrying n
188
inbound bags
puk penalty for violating threshold value uk
pcap
c penalty for the capacity violation at baggage
carousel c
pls
i,l penalty for the violation of the latest infeed
restriction for trip l
Siob on block time of flight i
es
Sl,e earliest start time for the infeed of trip l at
infeed station e
ls
Sl,e latest start time for the infeed of trip l at infeed
station e
tfirst
l,e,c,s period when the first bag of trip l arrives on
baggage carousel c, if infeed station e is selected
and the infeed process starts at time s
uk threshold value for the capacities at baggage
carousels
ucap
c utility for the capacity violation of carousel c
uls
i,l utility for the violation of the latest infeed
restriction for trip l
x solution representation
xbest best solution found in the constructive phase
xdec solution for a decrease weight in the
multi-objective path-relinking
xinc solution for a increase weight in the
multi-objective path-relinking
xinit initial solution for the multi-objective
path-relinking
xls current local search solution
xlsb current local search iteration best solution
xnext next solution in the neighborhood of solution xls
xnew new solution in the multi-objective
path-relinking
xi partial solution with i flights assigned in the
189
constructive phase
∗
x optimal solution
Δclaim
i,e,c,s baggage claim duration for flight i, if infeed
station e and baggage carousel c are selected
and the infeed process starts at time s
Δdur
e,c, duration to transfer a bag from infeed station e
to baggage carousel c
Δinf
l infeed duration of trip l
Δlag
l,h,e minimum time lag between trip l and h at
infeed station e
next
Δ duration planned in advanced in a rolling
planning framework
pl
Δ duration to place containers on a baggage tug
Δtime computing time of an optimization algorithm in
a rolling planning framework
Δtrip
i,e duration to drive from flight i’s parking position
to infeed station e
Δwait realized waiting time
λ weight for the utilization
λdec decreased weight for the utilization for the
multi-objective path-relinking
λinc increased weight for the utilization for the
multi-objective path-relinking
λinit initial weight for the utilization for the
multi-objective path-relinking
μw baggage loading rate of workers at an infeed
station
μpi arrival rate of passengers of flight i
Ψwait
l,e,c,s waiting time penalty for passengers of trip l, if
infeed station e and baggage carousel c are
selected and the infeed process starts at time s
Ψwalk
i,c walking distance penalty for passengers of flight
i, if baggage carousel c is selected
190
Variables
ei,c,t 1, if flight i’s claiming period ends on baggage
carousel c at time t, and 0 otherwise
uc,t utilization of baggage carousel c
xl,e,c,s 1, if trip l starts the infeed at s and infeed
station e and baggage carousel c is selected, and
0 otherwise
yl,h,e 1, if trip l is handled before trip h at infeed
station e, and 0 otherwise
Functions
ai,c (t) percentage of passengers arriving at baggage
carousel c in period t
āi,c (t) percentage of newly arriving passengers in
period t
Bi,e,c(t) number of bags for flight i which have been sent
from infeed station e to carousel c up to period t
bl,e,s,t(t) percentage of bags arriving at baggage carousel
c for trip l in period t
f (x) objective function in the inbound baggage
handling problem
g(•) utility function for passengers’ realized waiting
time or walking distance
h(x) augmented cost function
hcstr (x) cost function in the constructive phase
191
Parameters
as,t number of workers per group if shift s covers
period t, 0 otherwise
dmin minimum number of working days per week
allowed
dmax maximum number of working days per week
allowed
192
Variables
ud,t (ω) undercoverage in period t of day d for random
event ω
uw,d,t(ω) undercoverage in period t of day d of week w for
random event ω
vg 1, if at least one weekend shift type is assigned
for group g, 0 otherwise
xp,g,d 1, if shift type p is assigned to group g on day d,
0 otherwise
xs,g,d 1, if shift s is assigned to day d for group g, 0
otherwise
yg,s,d(ω) 1, if shift s is assigned to group g on day d for
193
Functions
E expected value
D(ω) demand realization vector for random event ω
(ω)
D demand on day d in period t for random event ω
d,t
P (D)
propability mass function of D
Parameters
as,b,q,t 1, if break pattern b in shift s covers demand for
skill q in period t, 0 otherwise
Bβ number of sub-breaks of break profile β
Bj number of sub-breaks in shift j
B min minimum number of sub-breaks
195
Variables
as,t 1, if there is a break in shift s at time t, 0
otherwise
bend
r,s,t 1, if the r-th sub-break for shift s ends at time
t, 0 otherwise
bend
r,w,d,t 1 , if break r of worker w ends in period t on
day d, and 0 otherwise
blast
s,t 1, if the last sub-break for shift s ends at time t,
0 otherwise
blast
w,d,t 1, if the last break of worker w ends in period t
on day d, and 0 otherwise
bstart
r,s,t 1, if the r-th sub-break for shift s starts at time
t, 0 otherwise
bstart
r,w,d,t 1, if break r of worker w starts in period t on
day d, and 0 otherwise
Ek number of workers that are given sub-break k
Ow overtime bank of worker w
Pq̂,q,t number of workers having skill q̂ who are given
a break in period t from a job requiring skill q
Sj number of workers assigned to shift profile j ∈ J
ww,t 1, if a shift of worker w starts in period t, 0
otherwise
Xj,k number of workers assigned to shift j that are
given sub-break k
ym,w,d,t 1, if shift of type m for worker w starts in
period t on day d, 0 otherwise
+
yq,d,t shortfall in demand for skill level q in period t
197
on day d
−
yq,t amount of uncovered demand for skill q in
period t after break assignments
+
yq,t amount of excess demand for skill q in period t
after break assignments
end
yw,d,t 1, if shift for worker w ends in period t on day
d, 0 otherwise
zs,b 1, if break pattern b is assigned to shift s, 0
otherwise
zs,q,t 1, if period t is a working period for shift s that
covers skill level q, 0 otherwise
zw,q,d,t 1, if worker w is active during period t on day d
at skill level q, 0 otherwise
Functions
≺ total order relation
Bibliography
[3] I. Addou and F. Soumis. Bechtold-jacobs generalized model for shift scheduling with
extraordinary overlap. Annals of Operations Research, 155(1):177–205, 2007.
[5] H. K. Alfares. Operator staffing and scheduling for an IT-help call centre. European
Journal of Industrial Engineering, 1(4):414–430, 2007.
[6] R. Alvarez-Valdes, E. Cresp, J. Tamarit and F. Villa. GRASP and path relinking
for project scheduling under partially renewable resources. European Journal of
Operational Research, 189:1153 – 1170, 2008.
[8] A. Ascó, J. A. D. Atkin and E. Burke. The airport baggage sorting station alloca-
tion problem. In Proceedings of the 5th Multidisciplinary International Scheduling
Conference, pages 419–444, 2011.
198
BIBLIOGRAPHY 199
[9] A. Ascó, J. Atkin and E. Burke. An analysis of constructive algorithms for the
airport baggage sorting station assignment problem. Journal of Scheduling, pages
1–19, 2013.
[10] E. I. Ásgeirsson. Bridging the gap between self schedules and feasible schedules in
staff scheduling. Annals of Operations Research, pages 1–19, 2012.
[11] N. Ashford, H. Stanton and C. Moore. Airport operations. McGraw Hill (New York),
1997.
[13] T. Aykin. Optimal shift scheduling with multiple break windows. Management
Science, 42(4):591–602, 1996.
[15] E. Bachmat, D. Berend, L. Sapir and S. Skiena. Airplane boarding, disk scheduing
and spacetime geometry. In Proceedings of the Algorithmic Applications in Manag-
ment, pages 192–202, Berlin, 2005.
[16] E. Bachmat, D. Berend, L. Sapir and S. Skiena. Optimal boarding policies for thin
passengers. Advances in Applied Probability, 39(4):1098–1114, 2007.
[20] N. Balakrishnan and R. T. Wong. A network model for the rotating workforce
scheduling problem. Networks, 20(1):25–42, 1990.
BIBLIOGRAPHY 200
[21] W. Barbo. The use of queueing models in design of beggage claim areas at air-
ports. Technical report, Institute of Transportation Studies, University of California,
Berkeley, 1967.
[22] J. F. Bard. Staff scheduling in high volume service facilities with downgrading. IIE
Transaction on Scheduling and Logistics, 36:985–997, 2004.
[23] J. F. Bard. Selecting the appropriate input data set when configuring a permanent
workforce. Computers & Industrial Engineering, 47(4):371–389, 2004.
[24] J. F. Bard and L. Wan. Workforce design with movement restrictions between
workstation groups. Manufacturing & Service Operations Management, 10(1):24–
42, 2008.
[25] J. F. Bard, D. P. Morton and Y. M. Wang. Workforce planning at usps mail pro-
cessing and distribution centers using stochastic optimization. Annals of Operations
Research, 155(1):51–78, 2007.
[28] J. J. Bartholdi III, J. B. Orlin and H. D. Ratliff. Cyclic scheduling via integer
programs with circular ones. Operations Research, 28(5):1074–1085, 1980.
[29] S. Bechtold and L. Jacobs. Implicit modeling of flexible break assignments in optimal
shift scheduling. Management Science, 36:1339–1351, 1990.
[32] G. Bitram and H. Yanasse. Computational complexity of the capacitated lot size
problem. Management Science, 28(10):1174 – 1186, 1982.
[34] J. O. Brunner and J. F. Bard. Flexible weekly tour scheduling for postal service
workers using a branch and price. Journal of Scheduling, 16(1):129–149, 2013.
[35] J. O. Brunner and R. Stolletz. Stabilized branch and price with dynamic parameter
updating for discontinuous tour scheduling. Computers & Operations Research, 44:
137–145, 2014.
[36] G. Bruno and A. Genovese. A mathematical model for the optimization of the
airport check-in service problem. Electronic Notes in Discrete Mathematics, 36:
703–710, 2010.
[38] M. J. Brusco and L. W. Jacobs. Optimal models for meal-break and start-time
flexibility in continuous tour scheduling. Management Science, 46(12):1630–1641,
2000.
[39] G. M. Campbell. A two-stage stochastic program for scheduling and allocating cross-
trained workers. Journal of the Operational Research Society, 62(6):1038–1047, 2011.
[40] T. Çecik and O. Günlük. Reformulating linear programs with transportation con-
straints - with applications to workforce scheduling. Naval Research Logistics, 51
(2):275–296, 2004.
[42] H. Chun. Solving check-in counter constraints with ILOG solver. In Proceedings of
the 1st ILOG Solver and ILOG Schedule Int. Users Meeting, Abbaye des Vaux de
Cernay, France, 1995.
BIBLIOGRAPHY 202
[45] H. Chun and R. Mak. Intelligent resource simulation for an airport check-in counter
allocation system. IEEE Transactions on Systems, MAN, and Cybernetics, Part C:
Applications and Reviews, 29(3):325 – 335, 1999.
[46] C. Chung and T. Sodeinde. Simulataneous service approach for reducing air passen-
ger queue time. Journal of Transportation Engineering, 126(1):85 – 88, 2000.
[47] T. Clausen and D. Pisinger. Dynamic routing of short transfer baggage. Technical
report, DTU Management Engineering, 2010.
[48] A. R. Correia and S. C. Wirasinghe. Level of service analysis for airport baggage
claim with a case study of the calgary international airport. Journal of Advanced
Transportation, 44(2):103 – 112, 2010.
[49] G. B. Dantzig. Letter to the editor-a comment on Edie’s "traffic delays at toll booths".
Journal of the Operations Research Society of America, 2(3):339–341, 1954.
[50] A. de Barros and S. Wirasinghe. Sizing the baggage claim area for the new large
aircraft. ASCE Journal of Transportation Engineering, 130(3):274 – 279, 2004.
[51] R. de Neufville and A. Odoni. Airport Systems: Planning Design and Management.
McGraw-Hill, 2002.
[52] U. Dorndorf, A. Drexl, Y. Nikulin and E. Pesch. Flight gate scheduling: State-of-
the-art and recent developments. Omega, 35(3):326–334, 2007.
[54] A. T. Ernst, H. Jiang, M. Krishnamoorthy and D. Sier. Staff scheduling and roster-
ing: A review of applications, methods and models. European Journal of Operational
Research, 153:3–27, 2004.
BIBLIOGRAPHY 203
[55] O. Faroe, D. Pisinger and M. Zachariasen. Guided local search for the three-
dimensional bin-packing problem. Journal on Computing, 15(3):267–283, 2003.
[56] G. Felici and C. Gentile. A polyhedral approach for the staff rostering problem.
Management Science, 50:381–393, 2004.
[57] R. Felkel. Planning check-in facilities for the future at Frankfurt Airport. Journal
of Airport Management, 2(2):142–152, 2008.
[58] T. Feo and J. Bard. Flight scheduling and maintenance base planning. Management
Science, 35(12):1415 – 1432, 1989.
[62] M. Frey, C. Artigues, R. Kolisch and P. Lopez. Scheduling and planning the out-
bound baggage process at international airports. In Proceedings of the 2010 IEEE
International Conference on Industrial Engineering and Engineering Management,
pages 2129–2133, 2010.
[63] M. Garey and D. Johnson. Computers and Intractability: A Guide to the Theory of
NP-Completeness. Freeman, New York, 1979.
[64] A. Ghobrial, C. F. Daganzo and T. Kazimi. Baggage claim area congestion at air-
ports: An empirical model of mechanized claim device performance. Transportation
Science, 16(2):246–260, May 1982.
[65] G. Gosling. An economic framework for the planning of airport passenger termi-
nals. PhD thesis, Departement of Civil Engineering and Institute of Transportation
Studies, University of California, Barkeley, 1979.
BIBLIOGRAPHY 204
[66] K. Hallenborg and Y. Demazeau. DECIDE: Applying multi-agent design and deci-
sion logic to a baggage handling system. Engineering Environment-Mediated Multi-
Agent Systems, 5049:148–165, 2008.
[67] S. Heinz and D. Pitfield. British Airways’ move to terminal 5 at London Heathrow
Airport: A statistical analysis of transfer baggage performance. Journal of Air
Transport Management, 17(2):101–105, 2011.
[68] J. Herbers. Models and Algorithms for Ground Staff Scheduling on Airports. PhD
thesis, RWTH Aachen, 2005.
[69] R. Horonjeff. Analyses of passenger and baggage flows in airport terminal buildings.
Journal of Aircraft, 6(5):446–451, 1969.
[72] M. Janic. Airport Analysis, Planing and Design: Demand, Capacity and Congestion.
Nova Science Publishers Inc, 2009.
[73] J. Jarell. Self-service kiosks: Museum pieces or here to stay? Jounral of Airport
Management, 2(1):23–29, 2007.
[78] F. Kiermaier, M. Frey and J. F. Bard. The flexible break assignment problem
for large tour scheduling problems with an application to airport ground handlers.
Working paper, 2015.
[79] Y.-H. Kuo, J. Leung and C. Yano. Scheduling of multi-skilled staff across multiple
locations. Production and Operations Management, 23(4):626–644, 2014.
[80] M. Laguna and R. Marti. Grasp and path relinking for 2-layer straight line crossing
minimizationgrasp and path relinking for 2-layer straight line crossing minimization.
Journal on Computing, 11(1):44–52, 1999.
[81] G. Laporte, Y. Nobert and J. Biron. Rotating schedules. European Journal of the,
4(1):24–30, 1980.
[82] H. C. Lau. On the complexity of manpower shift scheduling. Computers & Opera-
tions Research, 23(1):93–102, 1996.
[85] O. Lenior. Airport baggage handling – Where do human factors fit in the challenges
that airports put on a baggage system? Work: A Journal of Prevention, Assessment
and Rehabilitation, 41:5899–5904, 2012.
[91] H. H. Millar and M. Kiragu. Cyclic and non-cyclic scheduling of 12 h shift nurses
by network programming. European Journal of the Operational Research, 104(3):
582–592, 1998.
[92] S. Mirrazavi and H. Beringer. A web-based workforce management system for Sains-
burys Supermarkets Ltd. Annals of Operations Research, 155(1):437–457, 2007.
[93] J. Müller, G. Orak, E. Petkov and S. Schulz. Restructuring of the european ground
handling market after the eu market liberalization. Technical report, School of
Economics, Gap Team Berlin and HUB.
[94] N. Musliu. Heuristic methods for automatic rotating workforce scheduling. Inter-
national Journal of Computational Intelligence Research, 2(4):309–326, 2006.
[96] G. Nemhauser and A. Wolsey. Integer and Combinatorial Optimization. John Wiley
& Sons, New York, 1988.
[97] R. Neufville. The baggage system at Denver: Prospects and lessons. Journal of Air
Transportation Management, 1(4):229–236, 1994.
[98] G. Newell. Application of Queueing Theory, volume 2. Chapman & Hall, 2 Ed.,
1982.
[101] Y. Park and S. Ahn. Optimal assignment for check-in counters based on passenger
arrival behaviour at an airport. Transportation Planning and Technology, 26(5):
397–416, 2003.
[103] H. Piper. Designing principles for decentralized terminals. Airport Forum, 4:39–51,
1974.
[104] H. Purnomo and J. F. Bard. Cyclic preference scheduling for nurses using branch
and price. Naval Research Logistics, 54(2):200–220, 2007.
[105] M. Rekik, J.-F. Cordeau and F. Soumis. Using Benders’ decomposition to implicitly
model tour scheduling. Annals of Operations Research, 128:111–133, 2004.
[106] M. Rekik, J.-F. Cordeau and F. Soumis. Implicit shift scheduling with multiple
breaks and work stretch duration restrictions. Journal of Scheduling, 13:49–75, 2010.
[107] M. Resendel and C. Ribeiro. Grasp with path-relinking: Recent advances and
applications. In T. Ibaraki, K. Nonobe and M. Yagiura, editors, Operations Re-
search/Computer Science Interfaces Series, volume 32, pages 29–63–. Springer US,
2005.
[109] F. Robusté. Analysis of baggage handling operations at airports. PhD thesis, Institute
of Transportation Studdies, University of California, Berkeley, 1988.
[110] F. Robusté and C. Daganzo. Analysis of baggage sorting schemes for containerized
aircraft. Transportation Research Part A. Policy and Practice, 26(1):75–92, 1992.
[112] A. Rong. Monthly tour scheduling models with mixed skills considering weekend off
requirements. Computers & Industrial Engineering, 59(2):334–343, 2010.
BIBLIOGRAPHY 208
[116] J. Steffen. Optimal boarding method for airline passengers. Journal of Air Transport
Management, 14(3):146–150, 2008.
[118] R. Stolletz. Operational workforce planning for check-in counters at airports. Trans-
portation Research Part E: Logistics and Transportation Review, 46(3):414–425,
2010.
[121] J. Tanner. A queuing model for departure baggage handling at airports. Gradu-
ate report, The Institute of Transportation and Traffic Engineering, University of
California, Berkley, 1966.
[125] S. Topaloglu and I. Ozkarahan. An implicit goal programming model for the tour
scheduling problem considering the employee work preferences. Annals of Operations
Research, 128(1-4):135–158, 2004.
[126] V. Tošić. A review of airport passenger terminal operations analysis and modelling.
Transportation Research Part A: Policy and Practice, 26A(1):3–26, 1992.
[128] E. Tsang and C. Voudouris. Fast local search and guided local search and their
application to british teleocom’s workforce scheduling problem. Operations Research
Letters, 20:119–127, 1997.
[130] N. Van Dijk and E. Van der Sluis. Check-in computation and optimization by
simulation and IP in combination. European Journal of Operational Research, 171
(3):1152–1168, 2006.
[131] C. Voudouris. Guided local search for combinatorial optimisation problems. PhD
thesis, Departement of Computer Science, University of Essex, Colchester UK, 1997.
[132] C. Voudouris and E. Tsang. Guided local search and its application to the traveling
sales problem. European Journal of Operational Research, 113:469 – 499, 1999.
[133] H. Williams. Model Building in Mathematical Programming. John Wiley & Sons, 5
Ed., 2013.
[134] S. Yan, C.-H. Tang and M. Chen. A model and a solution algorithm for airport
common use check-in counter assignment. Transportation Research Part A. Policy
and Practice, 38(5):101 – 125, 2004.
[135] S. Yan, C.-H. Tang and C.-H. Chen. Minimizing inconsistencies in airport common-
use check-in counter assignments with a variable number of counters. Journal of Air
Transport Management, 11(2):107–116, 2005.
[136] S. Yan, C.-H. Tang and C.-H. Chen. Reassignment of commen-use check-in counters
following airport incidents. Journal of Operational Research Society, 59(8):1100 –
1108, 2008.
[137] J.-R. Yen, C.-H. Teng and P. Chen. Measuring the level of services at airport
passenger terminals: Comparison of perceived and observed time. Transportation
Research Record: Journal of the Transportation Research Board, 1744(1):17–33, Jan.
2001.
[138] H. Yu and C. Xu. Desing and implementation of the key technologies for baggage
handling control system. In Proceedings of the International Conference on Measur-
ing Technology and Mechatronics Automation, 2010.
[139] X. Zhu and H. D. Sherali. Two-stage workforce planning under demand fluctuations
and uncertainty. Journal of the Operational Research Society, 60(1):94–103, 2009.