Sie sind auf Seite 1von 20

J Sched

DOI 10.1007/s10951-017-0544-y

An implicit model for multi-activity shift scheduling problems


Sana Dahmen1 · Monia Rekik1 · François Soumis2

© Springer Science+Business Media, LLC 2017

Abstract We consider a multi-activity shift scheduling 1 Introduction


problem where the objective is to construct anonymous
multi-activity shifts that respect union rules, satisfy the Many studies have shown that effective personnel planning
demand and minimize workforce costs. An implicit approach is crucial for companies and can yield substantial cost sav-
using adapted forward and backward constraints is proposed ings (see Bergh et al. 2013, for example, for a recent review
that integrates both the shift construction and the activ- on personnel scheduling). This paper addresses the shift
ity assignment problems. Our computational study shows scheduling problem in multi-activity contexts. Given a set of
that using the branch-and-bound procedure of CPLEX 12.6 union agreements, our goal is to construct feasible shifts and
on the proposed implicit model yields optimal solutions simultaneously assign activities to them so that the demand
in relatively short times for environments including up to for each activity at each period of the planning horizon is
2970 millions of explicit shifts. Our implicit model is com- satisfied with minimum costs.
pared to the grammar-based implicit model proposed by Côté Intensive research has been conducted in the last 50 years
et al. (Manag Sci 57(1):151–163, 2011b) on a large set of on shift scheduling problems mostly for single-activity con-
instances. The results prove that both implicit models have texts. The multi-activity context clearly complicates the
their strengths and weaknesses and are more or less efficient problem. Shifts are no longer defined by their start times
depending on the scheduling environment. and lengths only, but also by the activities performed within
the work periods. Moreover, the allocation of activities to
Keywords Shift scheduling · Multi-activity context · shifts is generally constrained by a number of restrictions
Implicit modelling · Integer programming on the minimum and maximum activity lengths, employees’
qualifications, etc.
The problem addressed in this paper aims at constructing
anonymous multi-activity shifts. In other words, we do not
specify which employee will be assigned to a given shift. Our
B Monia Rekik objective is to construct generic shifts with allocated activi-
monia.rekik@cirrelt.ca ties. Shifts will be assigned to the employees in a second step.
Sana Dahmen The problem addressed here is faced by companies where the
sana.dahmen@cirrelt.ca activity assignment task is governed by rules internal to the
François Soumis shifts rather than employees’ preferences or qualifications.
francois.soumis@gerad.ca This could be the case for example for air-traffic control
1
agencies or police stations where a number of activities are
Operations and Decision Systems Department, Laval
stressful and exhausting and must be limited within shifts.
University and CIRRELT, 2325 rue de la Terrasse,
Quebec G1V 0A6, Canada In the last decade, a few papers handled the multi-activity
2 context. The majority of the reported studies assume that
Département de Mathématiques et de Génie Industriel, École
Polytechnique de Montréal and GERAD, C.P. 6079, Succ. shifts starting and ending times are already fixed and focus
Centre-Ville, Montreal H3C 3A7, Canada rather on the activity assignment problem. To the best of

123
J Sched

our knowledge, the sole modelling approach that integrates considered by Côté et al. (2011) and to which their grammar-
shift construction and activity assignment problems uses or is based model was applied. The obtained results show that our
inspired by constraint programming techniques and context- implicit model outperforms the model of Côté et al. (2011)
free grammars. (We give more details on these papers in the for the set of instances we generate in terms of computing
literature review section.) times, the number of instances solved to optimality and near-
In this paper, we propose an implicit modelling approach optimality (CPLEX gap ≤ 1%) within 1 h, and the quality of
that constructs multi-activity shifts in an integrated way. This feasible solutions obtained within 1 h when no model finds
approach exploits the results already established in implicit an optimal solution. Conversely, our model is outperformed
modelling for single-activity contexts and underlines their by the model of Côté et al. (2011) on their set of instances.
high interest for multi-activity shift scheduling problems. The remainder of the paper is organized as follows. The
Rekik et al. (2004) and Cezik and Günlük (2004) prove that a next section recalls the main works on implicit modelling
number of scheduling constraints could be satisfied through for single-activity shift scheduling and reports recent papers
ensuring the feasibility of particular transportation problems. in multi-activity contexts. Section 3 defines the scheduling
They further show that when these transportation problems problem addressed in this paper. In section 4, we present
possess a particular structure, their feasibility is guaranteed our implicit model and prove its correctness. In section 5,
by a relatively small number of constraints similar to the well- we evaluate the computational performance of the proposed
known forward and backward constraints initially introduced implicit model for the sets of instances we generate. Section
by Bechtold and Jacobs (1990) to model break placement 6 compares our implicit model to the grammar-based implicit
flexibility. When compared to the grammar-based modelling model of Côté et al. (2011). Section 7 recalls the main results
approach, our approach has the advantage of easily integrat- and opens on future research avenues.
ing complex horizontal constraints on shift composition. This
could be the case for example in scheduling contexts where
the number of different activities worked before or after a 2 Literature review
break or where the number of worked periods (not neces-
sarily consecutive) assigned to a stressful activity before a Two well-known approaches have already been proposed for
break must be limited. Our approach can also easily handle modelling shift scheduling problems in single-activity con-
complex labour cost structures. This could be the case for texts: explicit and implicit approaches. The explicit approach
example when the labour cost is a piecewise linear function defines shifts explicitly by specifying their starting and end-
that depends on the periods of work assigned to a stressful ing times and possibly the number, duration and position of
activity before a break. all the breaks. A generalized set-covering model is then used
In this paper, we prove that multi-activity shift schedul- to select the optimal set of explicit shifts that minimizes the
ing problems can be implicitly modelled by adequate forward workforce cost and fills the labour demand (Dantzig 1954).
and backward constraints defined on a series of transportation Many researchers have already established that, for highly
problems. Our computational study shows that our implicit flexible work environments, defining a decision variable for
model performs very well even for large instances including each feasible shift leads to large-sized problems that are
more than 2,970 millions of explicit shifts. The originality intractable in practice. Column generation techniques and
of our approach is in the definition of decision variables and heuristic methods could then be used to solve the problem
transportation problems. The number of forward and back- (Ernst et al. 2004).
ward constraints is indeed independent of the number of The implicit approach avoids a complete definition of
activities considered, which makes the model still tractable shifts by implicitly modelling some form of flexibility.
even for large instances. Our experimental study also investi- Bechtold and Jacobs (1990) were the first to consider the
gates the impact of limiting the number of different activities well-known forward and backward constraints to implicitly
performed within a shift on workforce costs and on the model model break placement flexibility for single-activity shift
performances. In fact, considering such constraints yields scheduling problems. Break placement flexibility enables a
good-quality and likeable schedules, but this could be at the break to start within a time window rather than at a fixed time
expense of workforce costs. Our results show that, for the within the shift. Hence, instead of defining a variable for each
instances considered, almost no impact on workforce costs shift–break combination, Bechtold and Jacobs (1990) define
is caused by these restrictions when soundly defined. two types of variables: (1) shift variables for each possible
We also compare our implicit model to the grammar-based combination of shift starting time, shift length and break win-
implicit model recently proposed by Côté et al. (2011) on dow, and (2) break variables for each period at which a break
two large sets of instances: (1) the instances we generate in can start. The set of forward and backward constraints they
this paper that are better fit to the scheduling environment propose ensures an eligible break for each shift in the asso-
for which our model was developed and (2) the instances ciated break window but without specifying the break actual

123
J Sched

starting time. Complete shift schedules are constructed a pos- the same cost per working period, the same restrictions on
teriori using a break allocation algorithm. minimum and maximum shift length, the same break dura-
Bechtold and Jacobs (1996) later proved that their implicit tion and the same restrictions on the minimum and maximum
model is equivalent, under integrality requirement, to the gen- pre- and post-break work stretch durations are grouped in a
eralized set-covering formulation of Dantzig (1954) under same type. For each type of shift, one defines shift starting
the assumptions that break windows are composed of con- time, shift finishing time and break starting time variables. A
tiguous periods for which there is no extraordinary overlap. set of constraints matching shift starting time and shift finish-
They define extraordinary overlap as the situation where there ing time variables limit the minimum and maximum length
exist two shifts such that the break window for one shift for each shift type. Another set of constraints including shift
begins strictly earlier and ends strictly later than the break starting time and break variables ensure the minimum and
window for the other shift. maximum pre-break work stretch durations for each shift
Rekik et al. (2004) go beyond this work and show that type. Similar constraints involving shift finishing time and
the forward and backward constraints used by Bechtold and break variables are used to impose the minimum and maxi-
Jacobs (1990) are in fact particular Benders cuts that can be mum duration of post-break work stretch durations.
generated from a Benders reformulation of a transportation It clearly appears that implicit modelling of single-activity
problem assigning breaks to shifts. Based on this, they also shift scheduling problems has received a great attention from
prove that the LP relaxations of the formulation of Aykin the OR community in the last decades. A number of impor-
(1996) and that of Bechtold and Jacobs (1990) for the shift tant results have been established, but not fully exploited
scheduling problem with a single break are equivalent and for multi-activity problems. Indeed, the approaches that
both formulations yield the same integrality gap. Cezik and have been reported in the literature for multi-activity shift
Günlük (2004) used similar transportation problems to model scheduling problems either solve the problem sequentially
some personnel scheduling problems and reached similar by first constructing generic shifts then assigning activities
conclusions on the origin of forward and backward con- to selected ones (Lequy et al. 2012) or consider the problem
straints. Their proof is based on the use of the max-flow in an integrated way using techniques from constraint pro-
min-cut theorem. gramming (Demassey et al. 2005; Quimper and Rousseau
The proof established by Rekik et al. (2004) suggests 2010; Côté et al. 2011, 2013) or column generation-based
that any operating condition that can be modelled with a approaches (Restrepo et al. 2012).
transportation problem defined on a bipartite graph with a Lequy et al. (2012) consider the multi-activity assignment
particular structure could be implicitly modelled by adapted problem where the work shifts (including breaks) are fixed
forward and backward constraints. Later, Rekik et al. (2010) and already assigned to the employees. They propose three
use this result to extend forward and backward constraints formulations for this problem: an integer multi-commodity
to model fractionable breaks and pre- and post-break work network flow model with side constraints, an integer pro-
stretch duration restrictions. Fractionable break is a new flex- gramming model without special structure, and a column
ibility form introduced by the authors. It offers the possibility generation model. They present and compare a number of
to only fix the total duration of the break that must be received mathematical programming-based heuristics through a large
by a shift. The way this break duration is divided and dis- set of generated instances. The reported results show that
patched on different intervals of the shift is optimized. Work small-sized instances can be solved to optimality using a
stretch duration restrictions impose limits on the minimum commercial MIP solver. For large-sized instances, the col-
and maximum periods of consecutive work within a shift that umn generation heuristic combined with a rolling horizon
are permitted before and after each break. procedure produced the best results. Later, Restrepo et al.
Implicit modelling was also adopted to handle flexibil- (2012) propose a column generation-based approach to solve
ity on shift starting times and shift lengths. Moondra (1976) the anonymous multi-activity shift scheduling problem. The
was the first to implicitly represent shifts. Two types of shifts master problem is an explicit model, and the auxiliary prob-
were considered: full-time shifts with a fixed length and part- lem is a shortest path problem with resource constraints. The
time shifts with a variable length. The length of the part-time authors test their approach on a real-life application from
shift was represented implicitly by considering shift start- a parking lot operator for security staff and cashiers in the
ing time and shift finishing time variables and using a set of city of Bogotá. Their approach allows the company to com-
constraints to impose limits on the shift duration. Thompson pare several scenarios to improve their staffing policies. The
(1995) combined the work of Moondra (1976) to implic- authors conclude that when the length of the discretization
itly represent shifts and the work of Bechtold and Jacobs period increases, the size of the auxiliary problem limits the
(1990) to implicitly represent break placement. Each shift is performance of their approach.
assumed to receive at most one break with some restrictions Demassey et al. (2005) solve the shift construction and
on pre- and post-break work stretch durations. Shifts having the activity assignment problems simultaneously. The prob-

123
J Sched

lem is formulated with a classical generalized set-covering In this paper, we propose an implicit model that adapts the
model. The linear relaxation of the model is solved by a well-known forward and backward constraints traditionally
column generation procedure, and a constraint satisfaction used in single-activity contexts to the multi-activity prob-
model is used to generate the schedules to be added to lem. We theoretically prove in Section 4 that the problem
the master problem at each iteration. In the same context, possesses the necessary ingredients for the use of forward
Quimper and Rousseau (2010) use regular languages and and backward constraints. In Section 5, we show the merits
context-free grammars to model scheduling rules for shift of our implicit model and we discuss the strengths and weak-
composition. Large neighbourhood search heuristic methods nesses of our approach by comparing it to the grammar-based
are proposed, where neighbourhood operators are based on approach of Côté et al. (2011).
expanded automaton and context-free grammars.
Côté et al. (2007) propose an IP model based on a reg-
ular language to formulate the work constraints defining a 3 Problem definition
shift. Côté et al. (2011) later extend this work and propose an
IP model that uses context-free grammars to describe work We consider a continuous multi-activity operating environ-
regulations for personalized shift scheduling problems. The ment where companies operate 24 h a day, 7 days a week. The
model employs assignment variables that describe all fea- planning horizon is divided into periods of equal length. We
sible shifts for each employee. Côté et al. (2013) recently denote by I the set of all these periods and by A the set of
developed a branch-and-price algorithm to solve a personal- activities to be performed. We assume to know in advance the
ized multi-activity shift scheduling problem. The restricted number da,i of employees required for each activity a ∈ A
master problem is a set-covering model. The concept of MIP and each period i ∈ I . The workforce is assumed homo-
grammar constraints is used to formulate the pricing sub- geneous which means that all the employees are qualified to
problems associated with employees. work any activity a ∈ A. Our objective is to construct feasible
Recently, Dahmen and Rekik (2015) consider a continu- multi-activity shifts to satisfy the demand while minimizing
ous personnel scheduling problem in multi-day multi-activity the total workforce cost. We assume that all worked hours
work environments with heterogeneous workforce. It is cost the same. Hence, our objective function reduces to min-
assumed that days-off schedules associated with employ- imizing the total number of worked hours.
ees are known and the objective is to construct and assign Shifts must be defined with respect to a set T of pre-
multi-activity shifts to employees on their work day in a way specified shift types fixed by the organization. A shift type
that minimizes under-staffing and over-staffing with respect t ∈ T is defined by: (1) a set of start times St , (2) mini-
to budget restrictions on total workforce cost and horizontal mum and maximum shift lengths L min t and L max
t , (3) a meal
constraints on weekly workforce load. The problem is formu- break with a fixed length L Bt , (4) minimum and maximum
lated as a set-covering explicit model and solved with a hybrid pre-break work stretch L AMtmin and L AMtmax , and (5) min-
heuristic combining tabu search techniques and the exact imum and maximum post-break work stretch L P Mtmin and
branch and bound of CPLEX. The authors prove, through L P Mtmax . Observe that the set of start times St does not
a large set of experiments, that their heuristic gives near- need to be composed of consecutive periods. We also con-
optimal solutions in relatively short computing times. sider single-break shifts for which the length of the break
To the best of our knowledge, Côté et al. (2011) were the is fixed for a specific type, but the break placement varies
first to use an implicit modelling technique to model multi- within an interval deriving from pre- and post-break work
activity shift scheduling problems where all employees are lengths.
assumed identical. The proposed modelling approach uses The assignment of an activity a ∈ A to a shift is con-
context-free grammars to represent the constraints defining strained by some restrictions on the minimum and maximum
feasible shifts. The reported results show that the pro- activity lengths, denoted, respectively, L amin and L amax . These
posed approach solves large instances including up to 10 restrictions limit the number of consecutive periods assigned
activities in relatively short times. Later, Salvagnin et al. to an activity within the shift. The minimum activity length
(2012) propose a hybrid MIP/CP scheme based on orbital restriction is a way to avoid productivity losses for organiza-
shrinking (Fischetti and Liberti 2012). Work regulations are tions. It also prevents wasting time caused by a large number
captured by formal languages except for cardinality con- of transitions between activities within the shift. The maxi-
straints. Although the grammar-based model of Côté et al. mum activity length restriction is relevant when the activity is
(2011) outperforms the orbital-based model of Salvagnin stressful and requires an important physical or mental effort.
et al. (2012) for the set of instances considered, the decompo- In the rest of the paper, we will use the following termi-
sition approach is a promising alternative when the grammar nology and notation. To each shift type t ∈ T we define a
is not a viable option due to specific cardinality constraints. set J t including all explicit feasible empty shifts of type t.
These shifts are called empty since no activities are assigned

123
J Sched


(D) : minimize Wq (1)
q∈Q

s.t. δq,a,i Wq ≥ da,i ∀ a ∈ A, i ∈ I (2)
q∈Q
Wq ≥ 0 and integer ∀ q ∈ Q, (3)
(a)

where δq,a,i is a constant parameter that takes the value 1 if


activity a is executed in period i of shift q, and 0, otherwise.
Clearly, when the set Q of admissible explicit multi-activity
shifts is large, model D becomes very difficult to solve to
optimality. In the following, we propose an implicit model
to handle such complex working environments.
(b)

Fig. 1 Example 1

4 The implicit model


to them. The set of all explicit feasible empty shifts is denoted
This section gives a formal description of the implicit model
J , where J = ∪t∈T J t .
we propose. We start by defining the decision variables.
An admissible empty shift ( j ∈ J ) to which activities
are assigned within the corresponding work periods is called
a multi-activity shift. To be feasible, a multi-activity shift 4.1 Decision variables
must be allocated activities in a way ensuring that minimum
and maximum activity length restrictions are respected. We Two types of decision variables are considered: pre-break
denote by Q tj the set of all admissible multi-activity explicit variables (X ) and post-break variables (Y ). More precisely,
shifts corresponding to an empty shift j ∈ J t . Observe that a pre-break integer variable X vt is defined for each multi-
the set of all these multi-activity shifts have the same start activity pre-break profile v that is admissible for shift type
time, the same length and the same break placement. They t. It represents the number of employees receiving pre-break
differ only by the sequences of activities they are assigned profile v. A pre-break profile v is a sequence of activities
within the work periods. The set of all multi-activity shifts is with specified starting times and lengths. To be admissible
denoted by Q, where Q = ∪t∈T ∪ j∈J t Q tj . for a shift type t, a pre-break profile must have: (1) a starting
time sv within the set of admissible start times St of shift
type t, (2) a total length L v that respects the minimum and
Example 1 Consider a 1-day planning horizon divided into
maximum pre-break work stretch durations of shift type t,
periods of 60 min. Consider a shift type t with the fol-
i.e. L AMtmin ≤ L v ≤ L AMtmax , and (3) each activity a in
lowing parameters: St = {8}, L min = 7, L max = 8,
t t the profile v must cover a number of successive periods that
L Bt = 1, L AMt min = 3, L AMt max = 4, L P Mtmin = 2,
respect the minimum and maximum activity length restric-
and L P Mtmax = 3. Assume also that the company activi-
tions L amin and L amax .
ties are of two types: a1 and a2 . The assignment of activities
Similarly, a post-break integer variable Y pt is defined
to shifts must respect the minimum and maximum activity
for each admissible multi-activity post-break profile p that
lengths given by: L amin = L amin = 2 and L amax = L amax = 3.
1 2 1 2 is admissible for shift type t. It represents the number of
In this case, there exist three feasible explicit empty shifts
employees receiving post-break profile p. A post-break pro-
as depicted in Fig. 1a. To determine the set of multi-activity
file p is a sequence of activities with specified starting times
explicit shifts, one have to fill work periods of empty shifts
and lengths. To be admissible for a shift type t, a post-break
with the appropriate activities with respect to the restrictions
profile must have: (1) an admissible start time s p for shift
on the minimum and maximum lengths of each activity. Fig-
type t, (2) a total length L p that respects the minimum
ure 1b shows three of such explicit multi-activity shifts.
and maximum post-break work stretch of shift type t, i.e.
L P Mtmin ≤ L p ≤ L P Mtmax , and (3) each activity a in
An explicit approach would define an integer decision the profile must cover a number of successive periods that
variable Wq for each feasible explicit multi-activity shift respect the minimum and maximum activity length restric-
q ∈ Q, where Wq represents the number of employees tions L amin and L amax . Observe that unlike pre-break profiles
receiving shift q. A generalized set-covering model can then for which starting times are straightforwardly determined by
be formulated as follows: the set St , the start time of a post-break profile must addition-

123
J Sched

ally take into account the break length, and the restrictions next that such linking reduces to ensure the feasibility of
on minimum and maximum pre-break work lengths. some transportation problems.
In Example 1, the pre-break profile starting at 8H 00, First, we propose to partition the set of pre-break pro-
having a length of 3 h and composed of activity a1 is an files Q AM t , t ∈ T (respectively, the set of post-break
admissible pre-break profile for shift type t. An example of profiles Q P M t ) into subsets Q AM t (s, l) (respectively,
admissible post-break profile could be the profile starting at Q P M t (s, l)) so that Q AM t (s, l) (respectively, Q P M t (s, l))
13H 00, having a length of 3 h and composed of activity a2 . includes all the pre-break profiles that have the same start
By introducing the concept of pre-break and post-break time s and the same length l. Observe that two profiles
profiles, we are clearly reducing the number of decision vari- belonging to the same subset Q AM t (s, l) (or Q P M t (s, l))
ables when compared to explicit model D. Indeed, instead of differ only by the sequence of activities they cover. We
enumerating all explicit shifts with all the possible activi- denote by J AM t the set of all different pairs (s, l) obtained
ties assignments, we are enumerating pieces of shifts (pre- from set Q AM t and by J P M t the set of all different pairs
and post-break profiles). The idea is then to link pre-break (s, l) obtained from set Q P M t . In other words, J AM t
profiles with post-break profiles conveniently with adequate (respectively, J P M t ) includes all the starting time–length
constraints to ensure that explicit multi-activity shifts can be combinations associated with the pre-break (respectively, the
constructed a posteriori (that is, in a post-processing phase post-break) profiles that are admissible for shift type t.
after the implicit model is solved). In Example 1, consider the two pre-break profiles v1 and v2
In the following, we denote Q AM t , respectively, Q P M t , such that v1 starts at 8H 00, has a length of 3 and is assigned
the set of multi-activity pre-break, respectively, post-break, activity a1 for all its periods, and v2 starts at 8H 00, has a
profiles admissible for shift type t. length of 3 and is assigned activity a2 for all its periods. The
starting time–length couple (8, 3) is an element of J AM t and
Q AM t (8, 3) = {v1 , v2 }. Indeed, in Example 1, J AM t =
4.2 Model constraints
{(8, 3), (8, 4)} and J P M t = {(12, 3), (13, 2), (13, 3)}.
For each shift type t, we define a transportation problem
As defined, decision variables X and Y have the advan-
T P t on the bipartite network G t = (J AM t ∪ J P M t , At ),
tage to explicitly satisfy a number of complex restrictions
where At is the set of arcs. The supply, denoted  Obt , of a
of the problem addressed (minimum and maximum activity
node b in J AM is computed as: Ob =
t t t
v∈Q AM t (b) X v .
lengths, for example). Only two sets of constraints remain to t t
Similarly, the demand D f of a node f in J P M is given by
be considered: the demand constraints and the linking con- 
straints between pre- and post-break profiles variables. D tf = p∈Q P M t ( f ) Y pt . An arc (b, f ) exists between a node
b = (sb , lb ) ∈ J AM t and a node f = (s f , l f ) ∈ J P M t if:
(1) s f = sb +lb +L Bt , and (2) L min
t ≤ lb +L Bt +l f ≤ L max t .
4.2.1 Demand constraints Hence, a post-break profile p in Q P M t ( f ) is linked to a pre-
break profile v in Q AM t (b) if: (1) it starts when v ends and
Recall that for each activity a ∈ A and for each period i the employee has taken its break, and (2) the length of the shift
in the planning horizon I , one must ensure that the number obtained by merging v and p is admissible for shift type t.
of employees performing activity a during period i is equal Clearly, any feasible explicit multi-activity shift q ∈ Q
at least to a minimum required number da,i . Consider two of type t is a feasible assignment of a post-break profile to a
binary parameters δv,a,i and δ p,a,i , where δv,a,i = 1 (respec- pre-break profile within G t . Inversely, any feasible solution
tively, δ p,a,i = 1) if the pre-break profile v (respectively, to transportation problem T P t yields a feasible multi-activity
the post-break profile p) covers activity a during period i, shift. Hence, ensuring the feasibility of transportation prob-
and δv,a,i = 0 (respectively, δ p,a,i = 0), otherwise. Demand lem T P t implies considering implicitly all the feasible shifts
constraints can thus be formulated as follows: of type t.
⎛ ⎞ Figure 2 displays the transportation problem associated
  
⎝ δv,a,i X vt + δ p,a,i Y pt ⎠ ≥ da,i , with shift type t for Example 1. Observe that we depict within
t∈T v∈Q AM t p∈Q P M t
each node (either a demand or a supply node) the correspond-
∀a ∈ A, ∀i ∈ I. ing multi-activity pre- or post-break profiles.

4.2.2 Linking constraints 4.3 Particular structure of transportation problems


T Pt
These constraints aim at linking pre-break and post-break
profile variables, thus guaranteeing that feasible explicit Rekik et al. (2004) prove that, in some particular cases, the
multi-activity shifts can be derived a posteriori. We prove feasibility of a transportation problem can be ensured by a

123
J Sched

Proof Consider a node b = (s, l) ∈ J AM t . Denote by


J P M t (b) the subset of nodes (⊆ J P M t ) connected to b
and ordered in an ascending order with respect to the total
order relation ≺. Denote by f k = (s
, l
)k = (sk
, lk
) the k th
element in J P M t (b) and by n the number of elements in
J P M t (b). To prove that J P M t (b) is composed of a set of
consecutive nodes in J P M t , we prove next that any node f¯
in J P M t such that f 1 ≺ f¯ and f¯ ≺ f n belongs to J P M t (b).
Let f¯ = (s¯
, l¯
) be such a node.
Observe that all the nodes in J P M t (b) have the same start
time s
= s + l + L Bt . Moreover, f 1 = (s
, l
)1 ≺ f¯ implies
that (s1
< s¯
) or (s1
= s¯
and l1
< l¯
). Similarly, f¯ ≺ (s
, l
)n
Fig. 2 Transportation problem for Example 1 implies that (s¯
< sn
) or (sn
= s¯
and l¯
< ln
). However,
s1
= sn
= s
; then, only the second cases apply. In other
words, (s1
= s¯
and l1
< l¯
) and (sn
= s¯
and l¯
< ln
). This
relatively small set of constraints, namely the forward and implies that s¯
= s + l + L Bt , and l1
< l¯
< ln
.
backward constraints and an equality constraint between total Given that (s
, l
)1 and (s
, l
)n are within set J P M t ( j),
supply and total demand. In the following, we briefly recall we have that:L min ≤ l + L Bt + l1
≤ L max and L min ≤
t t t
the results they established. We refer the reader to their paper

l + L Bt + ln ≤ L t . max
for more details. Hence, l + L Bt + l¯
> l + L Bt + l1
and l + L Bt + l¯
<
Consider a transportation problem, T P(N1 , N2 ), defined l + L Bt + ln
. This implies that l + L Bt + l¯
> L min and
t
on a bipartite network G = (N1 ∪ N2 , A), where N1 is the l + L Bt + l¯
< L max .
t
set of supply nodes, N2 is the set of demand nodes, and A In conclusion, node f¯ = (s¯
, l¯
) is such that s¯
= s + l +
is the set of arcs connecting supply nodes to demand nodes. L Bt and L min ≤ l + L Bt + l¯
≤ L max . Then, f¯ is in
t t
Rekik et al. (2004) prove that if the transportation problem J P M (b).
t

T P(N1 , N2 ) satisfies the two following conditions:
In the following, we denote by J P M t (b) the set of suc-
• Condition 1: A total order relation can be defined on the cessive nodes connected to node b ∈ J AM t on the graph
set of demand nodes, and according to this order, each G t = (J AM t ∪ J P M t , At ).
supply node i ∈ N1 is connected to a set of consecutive
Proposition 2 Consider a transportation problem T P t ,
demand nodes (denoted Pi ) in N2 ,
t ∈ T defined on the bipartite graph G t = (J AM t ∪
• Condition 2: There exist no supply nodes i 1 and i 2 in N1
J P M t , At ) as described in Section 4.2.2. If b1 and b2
such that Pi1 ⊂ Pi2 ,
are two nodes in J AM t , then either min(J P M t (b1 )) ≺
min(J P M t (b2 )) and max(J P M t (b1 )) ≺ max(J P M t (b2 ))
then the feasibility of T P(N1 , N2 ) is ensured by forward and or min(J P M t (b2 )) ≺ min(J P M t (b1 )) and max(J P M t
backward constraints and an equality constraint between total (b2 )) ≺ max(J P M t (b1 )) .
supply and total demand. We refer the reader to Rekik et al.
(2004) for a detailed description of the structure of forward Proof Consider two distinct nodes b1 = (s1 , l1 ) and b2 =
and backward constraints for general transportation prob- (s2 , l2 ) in J AM t . Assume, without loss of generality, that
lems. In the following, we prove that transportation problems s1 + l1 < s2 + l2 (case 1) or s1 + l1 = s2 + l2 and l1 < l2
T P t , t ∈ T satisfy conditions 1 and 2. (case 2).
First, let us define a total order relations ≺ on the set of As already established in the proof of Proposition 1, the
nodes J P M t as follows: a node f 1 = (s1 , l1 ) ∈ J P M t is demand nodes in J P M t associated with a supply node in
less than a node f 2 = (s2 , l2 ) ∈ J P M t (denoted f 1 ≺ f 2 ) if J AM t have the same start time. More precisely, the start time
s1 < s2 or s1 = s2 and l1 < l2 . In what follows, we assume of all the nodes in J P M t (b1 ) is equal to s1
= s1 + l1 + L Bt
that the nodes of J P M t are sorted in an ascending order with and the start time of all the nodes in J P M t (b2 ) is equal to
respect to the total order ≺. s2
= s2 + l2 + L Bt . Hence, if s1 + l1 < s2 + l2 (case 1), we
have s1
< s2
and thus min(J P M t (b1 )) ≺ min(J P M t (b2 )))
Proposition 1 Consider a transportation problem T P t , and max(J P M t (b1 )) ≺ max(J P M t (b2 ))).
t ∈ T defined on the bipartite network G t = (J AM t ∪ For case 2, we have s1 + l1 = s2 + l2 and l1 < l2 . In
J P M t , At ) as described in Section 4.2.2. Any node in J AM t this case, s1
= s1 + l1 + L Bt = s2 + l2 + L Bt = s2
.
is connected to a set of consecutive nodes in J P M t . In other words, the nodes in J P M t (b1 ) and J P M t (b2 )
all start at the same time. Besides, a node f˜ = (s˜
, l˜
) in

123
J Sched

J P M t (b1 ) is such that L min


t ≤ l1 + L Bt + l˜
≤ L max
t which ∀ f ∈ J P M t,end \ { f t,end }, ∀t ∈ T (4)
 
implies that (L t − l1 − L Bt ) ≤ l˜
≤ (L max
min
t − l 1 − L Bt ). D tf
≥ Obt ,
Hence, min(J P M t (b1 )) is the node with a length equal to
f
∈J P M t,B ( f ) b∈J AM t,F ( f )
(L min
t − l1 − L Bt ), and max(J P M t (b1 )) is the node with a
length equal to (L max − l1 − L Bt ). Similarly, the length cor- ∀ f ∈ J PM t,star t
\{f
t,star t
}, ∀t ∈ T. (5)
t
responding to node min(J P M t (b2 )) is (L min t − l2 − L Bt ),
Next, we illustrate how forward and backward constraints
and the length corresponding to node max(J P M t (b2 )) is
are formulated for the transportation problem shown Fig. 2.
(L max − l2 − L Bt ). Since l1 < l2 , (L min − l1 − L Bt ) >
t t In this example, J P M t1 ,star t = { f 1 , f 2 } and J P M t1 ,end =
(L t −l2 −L Bt ) and (L max
min −l 1 −L Bt ) > (L max −l −L B ),
2 t
t t { f 1 , f 3 }. The feasibility of transportation problem T P t is
which implies that min(J P M (b2 )) ≺ min(J P M t (b1 )) and
t
ensured by the three following constraints:
max(J P M t (b2 )) ≺ max(J P M t (b1 )).

Corollary 1 Consider a transportation problem T P t , t ∈ T D tf1 ≥ Obt 1 (6)
defined on the bipartite graph G t = (J AM t ∪ J P M t , At ) D tf2 + D tf3 ≥ Obt 2 (7)
as described in Section 4.2.2. There exist no nodes b1 and
b2 in J AM t such that min(J P M t (b1 )) ≺ min(J P M t (b2 )) Obt 1 + Obt 2 = D tf1 + D tf2 + D tf3 . (8)
and max(J P M t (b2 )) ≺ max(J P M t (b1 )).
Constraint (6) is the forward constraint associated with
Proof Given two nodes b1 = (s1 , l1 ) and b2 = (s2 , l2 ) demand node f 1 . Constraint (7) is the backward constraint
in J AM t , one can attribute, without loss of generality, associated with demand node f 2 . Constraint (8) is the equal-
the index b1 to the node such that s1 + l1 < s2 + l2 or ity constraint between the total supply and the total demand.
s1 + l1 = s2 + l2 and l1 < l2 . Based on Proposition 2, Recently, Rekik et al. (2010) proposed a general refor-
min(J P M t (b2 )) ≺ min(J P M t (b1 ))) and max(J P M t (b2 )) mulation of forward and backward constraints that consid-
≺ max(J P M t (b1 )).
erably reduces the density of the constraint matrix without
Proposition 1 and Corollary 1 prove that transportation increasing the number of constraints when compared to
problems T P t , t ∈ T , satisfy conditions 1 and 2 implying the classic forward and backward formulation. They show,
that they possess the particular structure established by Rekik through computational experiments, that their new formula-
et al. (2004). Hence, the feasibility of these problems can tion results in a considerable improvement in model density
be ensured by a set of appropriate forward and backward and solution time. In this paper, we consider their new refor-
constraints. The next section gives a formal description of mulation. We illustrate the main idea for forward constraints.
these constraints. We refer the reader to Rekik et al. (2010) for more details.
The authors first observed that forward constraints can be
4.4 Forward and backward constraints written in an increasing order with respect to the elements
in J P M t,end \ { f t,end }. They propose to introduce a slack
For each shift type t, we consider the following sets: variable Z f for each forward constraint written for an ele-
ment f ∈ J P M t,end \ { f t,end }. They prove that the forward
J P M t,star t = ∪b∈J AM t {min(J P M t (b))} constraint associated with the immediate successor f + of f
J P M t,end = ∪b∈J AM t {max(J P M t (b))} in J P M t,end \ { f t,end } can be written as follows:
 
J P M t,B ( f ) ={ f
∈ J P M t / f  f
}, ∀ f ∈ J P M t,star t D tf
− Obt + Z f = Z f + .
J P M t,F ( f ) ={ f
∈ J P M t / f
 f }, ∀ f ∈ J P M t,end f
∈J P M t,F ( f + ) b∈J AM t,F ( f + )
\J P M t,F ( f ) \J AM t,F ( f )
J AM t,B ( f ) ={b ∈ J AM t /J P M t (b) ⊆ J P M t,B ( f )},
∀ f ∈ J P M t,star t In the remainder of this section, we present our formula-
tion of the multi-activity shift scheduling problem.
J AM t,F ( f ) ={b ∈ J AM t /J P M t (b) ⊆ J P M t,F ( f )},
∀ f ∈ J P M t,end . 4.5 Mathematical model

Let also f t,star t = min(J P M t ) and f t,end = max The multi-activity shift scheduling problem can be modelled
(J P M t ). Forward and backward constraints are, respec- using formulation P as follows:
tively, given by inequalities (4) and (5) as follows (Rekik
et al. 2004): ⎛ ⎞
    
D tf
≥ Obt , (P) : minimize ⎝ L v X vt + L p Y pt ⎠ (9)
f
∈J P M t,F ( f ) b∈J AM t,F ( f ) t∈T v∈Q AM t p∈Q P M t

123
J Sched

subject to 5 Computational performance of model P


⎛ ⎞
  
⎝ δv,a,i X vt + δ p,a,i Y pt ⎠ ≥ da,i , The objective of this section is to assess the performance of
t∈T v∈Q AM t p∈Q P M t our implicit model through a large set of instances.
∀a ∈ A, ∀i ∈ I (10)
    5.1 Problem tests
Y pt ≥ X vt ,
f
∈J P M t,F ( f ) p∈Q P M t ( f
) b∈J AM t,F ( f ) v∈Q AM t (b) We work on 540 hypothetical instances that we generate over
∀ f ∈ J PM \{f t,end t,end
}, ∀t ∈ T (11) a 24-h planning horizon. These instances are divided into nine
    data sets. Each data set is defined by the length of the dis-
Yp ≥
t
X vt , cretization period (Per = 60, 30 and 15 min) and the number
f
∈J P M t,B ( f ) p∈Q P M t ( f
) b∈J AM t,B ( f ) v∈Q AM t (b) of activities (|A| = 3, 6 and 9). Each data set includes 60
∀ f ∈ J PM t,star t
\{f
t,star t
}, ∀t ∈ T (12) instances obtained by generating five demand profiles and
    12 data subsets. These subsets result from varying: (1) the
X vt = Y pt , ∀t ∈T (13)
level of flexibility of admissible activity lengths (Flex = 1
b∈J AM t v∈Q AM t (b) f ∈J P M t p∈Q P M t ( f )
and 2), (2) the number of shift types (|T | = 1 and 2) and (3)
X v , Y p ≥ 0 and integer ∀v ∈ Q AM t , p ∈ Q P M t ,t ∈ T.
t t
(14) the shift start times (Vs = 1, 2 and 3). The parameter Flex
depends on the restrictions imposed on minimum and max-
Objective function (9) minimizes the total duration of imum activity lengths, with a value of two yielding a larger
worked hours. Constraints (10) are the demand constraints. number of admissible pre- and post-break profiles. Two com-
Constraints (11) and (12) are, respectively, the forward t , Lt
binations of (L min max , L B ) are considered: (6h, 7h, 1h)
t
and backward constraints associated with transportation and (8h, 10h, 2h). When the number of shift types is set to
problems T P t , t ∈ T . Constraints (13) are the equality con- one, we consider the first combination. When it is equal to
straints between the total supply and the total demand for two, we consider both combinations. Shifts can start every
transportation problems T P t . Finally, constraints (14) define one, two or three periods depending on the value of Vs . For
the nature of the decision variables. Observe that for con- all instances, we fix the minimum (respectively, maximum)
straints (11), (12) and (13) we simply replace the offer and pre- and post-break lengths to 1 h (respectively, 4 h). When
the supply values O and D (used in Section 4.4) by their presenting our results, a data set is written as “Per.|A|” and
expressions in terms of the decision variables X and Y . a data subset is written as “Flex.|T |.Vs ”.
To give an idea on the size of our generated instances,
4.6 Post-processing phase
Table 7 in Appendix reports the average, minimum and max-
imum number of explicit shifts for each data set. Observe
Once model P is solved, explicit shifts are easily obtained by
that our scheduling environments include a large number of
solving a series of transportation problems B t , t ∈ T , defined
alternative shifts exceeding six billions for some instances.
as follows. Let N1t and N2t be the sets of pre- and post-break
∗ ∗ Obviously, an explicit approach as described by model D
profiles associated with non-null optimal values X vt and Y pt
would yield intractable models.
resulting from solving model P. For each pre-break profile
v ∈ N1t and each post-break profile p ∈ N2t that can be
5.2 Model size
matched with v, we define an assignment variable Z v, t
p that
represents the number of shifts obtained by assigning v to
Table 1 reports the number of variables and constraints of
p. Let N1t ( p) be the set of pre-break profiles that are admis-
model P. As one can see, the number of variables increases
sible for p, and let N2t (v) be the set of post-break profiles
with the number of activities and the flexibility on activity
admissible for v. Transportation problems B t , t ∈ T , are
lengths and shift types. This was expected since multi-
then formulated as:
activity pre- and post-break profiles are enumerated based
(B t ) : minimize 0 on possible start and end times and admissible activity com-
subject to binations.
 However, the number of constraints is quite the same when
t∗
p = X v , ∀v ∈ N1
t t
Z v, the number of activities increases (and all other parame-
p∈N2t (v) ters are fixed). This is one of the greatest advantages of our
 ∗
model. As explained in Section 4.4, forward and backward
p = Y p , ∀ p ∈ N2
t t t
Z v,
v∈N1t ( p)
constraints are defined on transportation problems where a
supply (respectively, a demand) node gathers all the pre-
p ≥ 0 and integer ∀ v ∈ N1 , p ∈ N2 .
t t t
Z v, break (respectively, post-break) multi-activity profiles that

123
J Sched

Table 1 Model size for the generated instances


Subset “Flex.|T |.Vs ” Data set “Per.|A|”
60.3 60.6 60.9 30.3 30.6 30.9 15.3 15.6 15.9

Number of variables
1.1.3 431 2303 7535 1482 8197 26,580 6041 38,164 129,511
1.1.2 548 2850 9180 1750 9522 30,656 6995 43,515 147,029
1.1.1 789 3967 12,625 2467 12,981 41,403 9678 58,440 196,242
1.2.3 845 4269 13,693 3192 16,771 53,538 12,946 77,466 259,450
1.2.2 1170 5800 18,418 3787 19,417 61,549 15,099 88,312 294,375
1.2.1 1690 8052 25,284 5392 26,487 83,130 21,190 118,942 393,542
2.1.3 1343 13,647 58,847 5544 51,979 204,138 29,598 282,116 1,048,918
2.1.2 1685 16,544 70,341 6493 59,838 233,765 33,829 319,779 1,186,487
2.1.1 2375 22,681 95,767 8904 80,573 313,458 45,522 425,918 1,577,274
2.2.3 2541 24,669 105,085 11,494 104,233 406,248 60,450 562,752 2,082,958
2.2.2 3483 33,078 139,699 13,395 119,613 464,527 69,071 637,588 2,356,341
2.2.1 4892 45,286 190,302 18,392 161,105 623,598 93,284 850,568 3,138,116
Number of constraints
1.1.3 109 155 182 253 346 398 657 894 1090
1.1.2 122 168 195 294 387 439 802 1039 1235
1.1.1 159 205 232 415 508 560 1235 1472 1668
1.2.3 172 218 245 476 569 621 1426 1663 1859
1.2.2 217 263 290 606 699 751 1908 2145 2341
1.2.1 327 373 400 992 1085 1137 3350 3587 3783
2.1.3 109 158 193 253 351 421 657 899 1113
2.1.2 122 172 206 294 394 462 802 1046 1258
2.1.1 159 209 243 415 515 583 1235 1479 1691
2.2.3 172 222 256 476 576 644 1426 1670 1882
2.2.2 217 267 301 606 706 774 1908 2152 2364
2.2.1 327 377 411 992 1092 1160 3350 3594 3806

have the same start and end times. Hence, for a given shift ity within 3 h. If there are instances that are not solved to
type, the transportation problem size remains the same when optimality within the time limit, we report between paren-
the number of activities is replicated. Another great advan- theses the number of instances solved. When no number is
tage of our model is the low density of the constraint matrix. reported, it means that all the five instances of the data subset
Indeed, for all instances, this density is on average equal to were solved. Finally, a dash (‘–’) indicates that no instance
1.45% and rarely exceeds 3%. This is due in part to the use of was solved to optimality within 3 h.
reformulated forward and backward constraints as proposed As depicted in Table 2, 495 instances (over the 540 con-
by Rekik et al. (2010). sidered) were solved to optimality within 3 h. More precisely,
356 instances were solved in less than 60 s, 63 instances
required more than 1 min but less than 5 min, and only nine
5.3 Solution time instances needed more than 1 h. A good computational per-
formance is observed for the majority of the instances with
All the problems were solved with the branch-and-bound a discretization period of 30 and 60 min. This performance
procedure embedded in CPLEX 12.6 with its default param- clearly degrades when a 15-min discretization period is con-
eters. A time limit of 3 h was considered. Tests were run on sidered and the number of activities is set to 6 or 9.
a computer with two processors (each one being an Intel When analysing the information on the branching pro-
Xeon CPU X5650 clocked at 2.66 GHz), 72 GB of RAM cess for the instances solved to optimality, we observed
and 64-bit. that: (1) optimal integer solutions were identified at the root
Table 2 reports the average time needed to solve the node for 59% of the instances, (2) the size of the branching
instances of each data subset that were solved to optimal-

123
J Sched

Table 2 Solution times (in seconds) for the instances solved to optimality with model P within 3 h
Subset “Flex.|T |.Vs ” Data set “Per.|A|”
60.3 60.6 60.9 30.3 30.6 30.9 15.3 15.6 15.9

1.1.3 0.18 0.50 0.43 0.14 2.67 2.41 2.14 32.93 545.65 (4)
1.1.2 0.10 0.34 1.04 0.13 0.83 5.26 1.33 112.71 523.11
1.1.1 0.07 0.35 1.55 0.23 1.63 11.20 5.29 187.82 870.22
1.2.3 0.16 0.78 2.36 1.36 5.97 59.01 25.26 901.00 3155.71 (3)
1.2.2 0.39 0.62 2.14 0.79 1.70 70.34 14.84 2093.70 2336.40 (4)
1.2.1 0.45 0.86 1.95 0.93 13.97 239.10 54.60 1661.45 4363.37
2.1.3 0.34 1.47 3.86 1.55 41.74 342.71 27.24 362.57 (3) 3975.73 (3)
2.1.2 0.36 1.58 6.49 0.56 25.31 162.54 12.90 365.64 (3) 6504.04 (1)
2.1.1 0.69 2.11 32.28 0.65 48.93 528.37 248.96 568.13 (4) _
2.2.3 1.38 5.22 30.00 1.50 189.93 1014.37 199.14 10696.90 (1) _
2.2.2 0.31 2.79 56.13 0.74 21.57 424.54 377.04 3604.59 (1) _
2.2.1 0.32 4.00 107.53 0.95 53.53 2496.13 522.69 2450.24 (3) _

Table 3 Solution quality for the instances unsolved to optimality within 3 h


Subset “Flex.|T |.Vs ” Data set “Per.|A|” = 15.6 Data set “Per.|A|” = 15.9
Nb Inst. unsolved CPLEX gap (%) Nb Inst. unsolved CPLEX gap (%)
Av. Min. Max. Av. Min. Max.

1.1.3 0 – – – 1 0.06 0.06 0.06


1.2.3 0 – – – 2 0.06 0.04 0.08
1.2.2 0 – – – 1 0.58 0.58 0.58
2.1.3 2 1.25 0.04 2.46 2 1.18 0.78 1.58
2.1.2 2 1.04 0.04 2.04 4 0.87 0.30 2.06
2.1.1 1 0.10 0.10 0.10 5 2.77 0.92 5.20
2.2.3 4 0.32 0.04 0.93 5 2.31 1.40 3.63
2.2.2 4 1.24 0.07 2.35 5 2.99 1.15 6.04
2.2.1 2 0.47 0.10 0.85 5 2.59 1.20 3.77

tree remains relatively small, on average, when branching 5.4 Impact of restricting the number of activities
is required, and (3) the LP gap, computed as the difference
in percentage between the optimal integer and LP objective In practice, shifts including more than three or four differ-
values, is null for 52% of the instances and is very small for ent activities are undesirable because they are likely to yield
the remaining ones (0.103%, on average). These observa- a loss in productivity. Thus, we consider a new scheduling
tions could explain the excellent performance of the proposed constraint where the number of different activities worked at
implicit model for a large number of instances. pre-break and post-break profiles must be lower than or equal
For the 45 instances that were not solved to optimality to pre-fixed values denoted N Aam and N A pm , respectively.
within the time limit of 3 h, feasible solutions were obtained Observe that this restriction does not limit the number of
for all these instances, but CPLEX ran out of memory dur- transitions between activities, but rather considers the iden-
ing the branching process. Table 3 depicts the quality of tity of the activity. This section investigates the impact of
these feasible solutions. The first column reports the num- imposing such restrictions on workforce costs and model P
ber of unsolved instances for each subset. The following performance. In our experimental study, we consider the case
three columns give the average, the minimum and maxi- where N Aam = N A pm = 2, implying that no more than two
mum CPLEX gaps obtained for these instances. Overall, the different activities can be assigned to pre- and post-break
CPLEX gap is ≤ 1% for 20 instances. It is relatively small profiles. Let P r be the model generated to handle this new
on average for the remaining instances and equals 6.04% in constraint. When compared to model P, model P r restricts
the worst case. the set of pre- and post-break profiles resulting in a smaller

123
J Sched

number of decision variables: 29% less variables, on average,


in this case. CPU(P r )<CPU(P)
CPU(P r )>CPU(P)

Number of instances
In order to assess the impact of the activity restrictions 216
on workforce costs, we first consider the 495 instances that
were solved to optimality for the original problem P within 163
the time limit of 3 h. We observe that model P r yields the
same workforce cost for 493 instances. For two instances, P r
runs out of memory before locating or proving solution opti-
mality, but the average deviation with regard to the optimal
cost is negligible (0.05 % and 0.24%, respectively). When 44
considering the 45 instances that were not solved to opti- 15 18 19
mality by model P, imposing restrictions on the number of 3 2 2 2 5 1 1 1

[0,1[

[1,5[

[5,10[

[10,30[

[30,60[

[60,120[

[120,180[
activities enables solving 19 more instances. For the 26 that
were not solved to optimality by any model, the quality of
the feasible solutions improved for 21 instances and slightly
degraded for five instances with model P r .
Next, we analyse the impact of the activity restrictions on CPU time gaps |CPU(P)-CPU(G)| (in minutes)
model P performance in terms of solution times. We examine
the 492 instances that are solved to optimality by both mod- Fig. 3 Solution time gaps for the instances solved within 3 h by P and
els within 3 h and that yield the same workforce cost. Figure Pr
3 shows the number of instances for which the difference in
CPU times (|CPU(P r ) − CPU(P)|) lies within a given time processors (each one being an Intel Xeon CPU X5650
interval when either model P r requires less time than model clocked at 2.66 GHz), 72 GB of RAM and 64-bit.
P (CPU(P r ) < CPU(P)), or not (CPU(P r ) > CPU(P)).
Seven time intervals are considered. (Interval bounds are 6.1 Dahmen set
given in minutes.) The results in Fig. 3 show that models
P and P r need nearly the same computing time for 379 The grammar-based formulation of Côté et al. (2011) is
instances (a solution time gap less than 1 min). When the adapted to the Dahmen set for the two cases: (1) when no
solution time gap becomes significant (more than 5 min), P r restrictions on the number of activities are imposed, the
is solved faster than P most of the time. Note that the decrease resulting model is denoted G, and (2) when such restrictions
in computing times resulting from imposing restrictions on are imposed (N Aam = N A pm = 2), the resulting model
the number of different activities assigned to pre- and post- is denoted G r . Details on how formulations G and G r are
break profiles is more important for large instances (instances obtained are given in Appendix.
with a small discretization period and a large number of activ-
ities). 6.1.1 Dahmen set with no restrictions

Table 8 in Appendix gives the number of variables and con-


6 Comparison with the implicit grammar-based straints of model G. (Table 1 gives the same information for
formulation of Côté et al. (2011) model P.) Clearly, model P uses a larger number of vari-
ables and less constraints than model G. This was expected
The objective of this section is to compare the computa- since: (1) model P enumerates all pre- and post-break multi-
tional performance of our implicit model using forward and activity profiles, and (2) the number of constraints in model
backward constraints with the implicit grammar-based model G depends on the number of symbols and productions in the
proposed by Côté et al. (2011). Two work environments are Chomsky normal form of the grammar and increases with
considered, based on single and multiple breaks. The first the complexity of the work environment.
environment corresponds to the instances described in Sec- To compare the models’ performances, we first examine
tion 5.1, referred to as Dahmen set. The second environment the 506 instances for which both models identify optimal or
corresponds to the instances considered by Côté et al. (2011), 1%-optimal solutions within 1 h. Figure 4 shows the num-
referred to as Côté set. All models are solved with CPLEX ber of instances for which the difference in CPU times
12.6 with a time limit of 1 h and a CPLEX gap limit equal to (|CPU(P) − CPU(G)|) lies within a given time interval (in
1%. In the following, a solution is said to be ‘1%-optimal’ both cases: CPU(P) < CPU(G) and CPU(P) > CPU(G)).
if it is not proven optimal and the CPLEX gap is ≤ 1%, and Table 9 in Appendix gives more details on the solution times
‘feasible’ otherwise. Tests are run on a computer with two needed by each model.

123
J Sched

288
CPU(P)<CPU(G)

55.7
6.0
P
CPU(P)>CPU(G)









P, G Fea. (Z P > Z G )
Number of instances

Gap (%)

12.4
5.9
G









Nb. Inst.
127

0
0

1
0
0
0
0
0
0

0
1
17 27 16 13 7
5 3 3

39.1
64.2
17.6

70.8
37.2
44.6
1.9
2.6
G



P, G Fea. (Z P < Z G )
Gap (%)
[0,1[ [1,5[ [5,10[ [10,30[ [30,60[

42.3
1.9
4.0
2.1

1.8
1.6

3.7
4.1
CPU time gaps |CPU(P)-CPU(G)| (in minutes)



Nb. Inst.
Fig. 4 Solution time gaps for the 506 instances in Dahmen set solved
by P and G within 1% of optimality

2
4
0
0
2
0
1
1

5
4
4
Gap (%)
The results reported in Fig. 4 show that model P requires

2.5
2.0
2.0
P
less time than model G for the majority of the instances (326








Table 4 Performances of models P and G for the 34 instances in the Dahmen set unsolved by at least one model
instances out of 506). Although the difference in computing
CPU (s.)
P Fea. & G 1%-Opt.

3,601.0
times remains negligible for 88% of these instances (less

200.3
113.0
than 1 min), it exceeds 10 min for 16 instances. For the 180
G








instances where model G requires less time, the difference
in computing time exceeds 10 min for 10 instances.
Nb. Inst.

Table 4 shows the comparison of the performances of mod-


els P and G for the 34 instances for which at least one model
1
1
1
0

0
0
0
0

0
0
0
fails in identifying optimal or 1%-optimal solutions within
Gap (%)

1 h. Four cases are depicted: (1) model P finds an optimal or

38.9
42.3
a 1%-optimal solution but not model G, (2) model G finds
1.7

2.4
G






an optimal or a 1%-optimal solution but not model P, (3)
both models fail in identifying optimal or 1%-optimal solu-
CPU (s.)
P 1%-Opt. & G Fea.

1,392.8

2,657.2
3,176.1
3,500.8
tions and the best feasible objective function value obtained
by model P (Z P ) is better than that obtained with model G
P






(Z G ), and (4) both models fail in identifying optimal or 1%-
Nb. Inst.

optimal solutions and Z P > Z G . For each case, we report


the number of instances, the average computing time to find
0
0
0
1
0
2
2
1
0
0
0

optimal or 1%-optimal solutions and the average CPLEX gap


for feasible solutions.
Subset “Flex.|T |.Vs ”

The results in Table 4 show that model P outperforms


model G in terms of the number of instances for which
optimal or 1%-optimal solutions are obtained within 1 h. Fur-
thermore, in the three instances where P fails to produce
2.1.3
2.1.2
2.2.2
2.2.1
1.2.2
2.1.3
2.1.2
2.1.1
2.2.3
2.2.2
2.2.1

optimal or 1%-optimal solutions, whereas G does, good fea-


sible solutions are obtained with a CPLEX gap of 2.5% for the
worst case. Conversely, model G results in bad-quality solu-
Data set “Per.|A|”

tions (a CPLEX gap that exceeds 38%) for three instances


over the six solved by P within 1% of optimality. When
both models fail to identify optimal or 1%-optimal solutions,
model P results in better feasible solutions than model G in
15.6
15.6
15.6
15.6
15.9
15.9
15.9
15.9
15.9
15.9
15.9

almost all the cases (23 out of 25 instances). Most of the

123
J Sched

266 CPU(P r )<CPU(Gr )


CPU(P r )>CPU(Gr )
Number of instances

73.0
40.3
58.0
69.0
7.9

3.3
Gr





P r , G r Fea. (Z P r < Z G r )
Gap (%)
142

1.9

1.1

1.7
1.6
2.5
2.6
Pr





38

Nb. Inst.
5 11 5 14 6 0
1

0
2
0
1
0
0
3
2
4
3
0
0
[0,1[ [1,5[ [5,10[ [10,30[ [30,60[
r r
Computing time gap |CPU(P )-CPU(G )| (minutes)

Gap (%)

1.3
Fig. 5 Solution time gaps for the instances in Dahmen set solved by

Pr












P r and G r within 1% of optimality

CPU (s.)
P r Fea. & G r 1%-Opt.
feasible solutions identified by P are of good quality with a

1706.0
CPLEX gap ranging between 1.6% and 4.1%. This was not

Gr











the case for model G which results in good-quality solutions
(a CPLEX gap lower than 5%) for only two instances.

Nb. Inst.
Table 5 Performances of models P r and G r for the instances in the Dahmen set unsolved by at least one model

6.1.2 Dahmen set with restrictions

0
0
1
0
0
0
0
0
0
0
0
0
We consider now the scheduling environment described in
Section 5.4 where N Aam = 2 and N A pm = 2. The impact
Gap (%)

of these restrictions on the grammar-based model size is


15.4
15.8
35.4
31.4
19.7
45.0
73.0
74.4
66.4
53.5
3.3
4.6
Gr

the opposite of what we observed for our implicit model.


In fact, the number of variables and constraints for model G r
with respect to G grows, sometimes drastically (doubled and
CPU (s.)

tripled). This was expected since additional productions are


P r 1%-Opt. & G r Fea.

1967.3
2064.6

2036.4
2598.9
2846.6
3629.6
275.5
241.9
348.5
986.3

971.7
767.1
needed to take into account the restriction on the number of
Pr

activities, resulting in large-sized directed graphs.


We do the same analysis as in Section 6.1.1 to compare
models P r and G r . We first examine the 493 instances for
Nb. Inst.

which both models identify optimal or 1%-optimal solutions


2
2
5
5
2
3
1
within 1 h. Figure 5 shows the number of instances for which 2
1
3
2
3

the difference in CPU times (|C PU (P r ) − C PU (G r )|)


lies within a given time interval when either CPU(P r ) <
Subset “Flex.|T |.Vs ”

CPU(G r ) or CPU(P r ) > CPU(G r ). Observe that for five


instances, C PU (P r ) = C PU (G r ). Table 10 in Appendix
gives more details on the solution times. The results in Fig. 5
clearly show that model P r outperforms model G r for almost
all instances.
2.1.3
2.1.1
2.2.3
2.2.2
2.2.1
1.2.2
2.1.3
2.1.2
2.1.1
2.2.3
2.2.2
2.2.1

As in Table 4, Table 5 displays the performances of mod-


els P r and G r for the instances that are not solved within 1%
of optimality by at least one model. As one can see, model
Data set “Per.|A|”

P r outperforms model G r in terms of the number of opti-


mal or 1%-optimal solutions found, the computing time to
identify such solutions and the quality of feasible solutions.
Indeed, over the 43 instances that were not solved within
15.6
15.6
15.6
15.6
15.6
15.9
15.9
15.9
15.9
15.9
15.9
15.9

1% of optimality by both models, model P r finds an opti-

123
J Sched

Table 6 Performances of
|A| P, G 1%-Opt. G 1%-Opt. & P Fea.
models P and G for the
instances in Côté set Nb. Inst. CPU (sec.) Nb. Inst. CPU (sec.) CPLEX gap (%)
Model P Model G Model G Model P

1 10 3.77 6.96 0 – –
2 10 304.99 22.36 0 – –
3 10 274.59 35.96 0 – –
4 10 1142.84 25.87 0 – –
5 8 1017.49 16.69 2 38.27 6.53
6 5 744.63 22.31 5 125.17 5.39
7 3 1285.68 3.92 7 108.24 19.74
8 4 329.84 5.50 6 40.93 7.76
9 3 159.43 9.20 7 88.47 10.01
10 1 2704.89 33.81 9 165.63 14.01
A cell appearing in bold implies that the corresponding model requires less CPU time than the other

mal or a 1%-optimal solution for 31 instances versus only Côté et al. (2011) by generating all variables and forcing
one instance for model G r . For these instances, the feasible those covering periods with no demand to take null values.
solutions obtained with model G r are mostly of bad qual- The number of such explicit shifts ranges between 405 and
ity with a CPLEX gap ranging between 15.4% and 74.4%. 730,488,422. Hence, the complexity of the instances in the
However, the CPLEX gap equals 1.3% for the feasible solu- Côté set is comparable to the complexity of the instances in
tion obtained with model P r on the instance that G r is the the Dahmen set.
only one to solve to optimality or within 1% of optimality. To adapt our implicit model to the Côté set, we enumerate
Finally, for the 15 instances that were not solved to opti- all break patterns: ‘r ’, ‘rrl’, ‘rlr ’ and ‘lrr ’, where ‘r ’ and
mality or within 1% of optimality by any model, model P r ‘l’ are the 15-min rest and the lunch breaks, respectively. A
always finds a better feasible solution than G r with a CPLEX transportation problem is defined for each break pattern in
gap ranging from 1.1% to 2.6% versus a CPLEX gap for G r which the middle break splits the shift into pre- and post-
varying between 3.3% and 73%. break profiles. Table 11, in Appendix, reports the average
number of variables, constraints and constraint-matrix den-
sity for each model. It appears from Table 11 that model G
6.2 Côté set requires less variables than model P for instances where the
number of activities exceeds four. For all instances, however,
Côté et al. (2011) consider a 1-day planning horizon divided the number of constraints in model P is lower than in model
into periods of 15 min. The scheduling environment includes G, but its density is always larger.
two shift types: short and regular. Shifts can start at any Model G produced optimal or 1%-optimal solutions on
period and must finish during the day. Two types of breaks all the 100 instances within the time limit of 1 h. Model
are considered: 15-min rest breaks and 1-h lunch breaks. A P was unable to do so on 36 of these instances. Table 6
short shift must include one 15-min break, while a regular displays the number of instances that were solved to opti-
shift must include one lunch break and two 15-min breaks. mality or within 1% of optimality by both models within
The minimum length of all activities is 1 h, and no maxi- 1 h and the average CPU time needed by each model (under
mum length is imposed. The transition between activities is the columns “P, G 1%-Opt.”). A cell in bold implies that
allowed only after breaks. No work should be scheduled for the corresponding model requires less CPU time on average.
specific activity–period combinations when the correspond- Table 6 also gives information on the instances for which
ing demand is zero. The Côté set includes 10 problem settings model P failed to identify optimal or 1%-optimal solutions
that differ by the number of activities (|A| = 1, 2, . . . , 10). (under the columns G 1%-Opt. & P Fea.). It reports the CPU
Each problem setting includes 10 instances in which only the time needed by model G to find the optimal or 1%-optimal
labour requirements vary. solutions and the CPLEX gap associated with the feasible
To give an idea on the size of the instances in the Côté set, solutions obtained with model P.
we compute the number of explicit shifts that do not cover One can observe from Table 6 that model G clearly out-
periods with no demand. This is due to the restriction in Côté performs model P on 49 instances among those solved
set that no work period must be defined on a period having to optimality or within 1% of optimality by both models.
a demand of zero. This restriction is handled differently in

123
J Sched

Indeed, the difference in computing times is less than 1 min the number of activities assigned to pre- and post-break
for 20 instances, and exceeds 5 min for 19 instances and profiles is considered. However, the model of Côté et al.
30 min for eight instances. Model P requires less time for 15 (2011) clearly outperforms our model for the Côté set of
instances, but the difference in CPU times is always lower instances.
than 1 min. Model P was unable to identify optimal or 1%- A limitation of our model is the exhaustive enumeration
optimal solutions within the 1-h time limit for 36 instances. of all possible pre-break and post-break profiles. However,
The quality of feasible solutions output by model P is rel- such an exhaustive enumeration has the advantage of eas-
atively poor with a CPLEX gap ranging from 5.39% to ily handling a number of complex rules that may govern the
19.74%. profiles admissibility. Some of these rules may even limit
In conclusion, both implicit models have their strengths the number of decision variables, thus accelerating the prob-
and weaknesses and are more or less efficient for some lem resolution. One can, for example, impose a maximum
scheduling environments. On the one hand, the forward– cumulative duration in performing a specific activity before
backward-based model does not perform very well when the or after the lunch break. This can be straightforwardly han-
number of pre- and post-break profiles is relatively large. dled by our model, but not by the grammar-based one. As
This may happen, for example, when there are no restric- opposed to the grammar-based model of Côté et al. (2011),
tions on activity lengths (as for the Côté set). On the other our model can also easily support complex cost structures
hand, the grammar-based model shows bad performances where the unit labour cost per period is a step function of the
when complex rules governing pre- and post-break profiles cumulative number of periods (not necessarily consecutive
definition must be handled, that is, when additional rules on periods) spent in performing an activity before or after the
the sequences defining the admissible words of the grammar lunch break . This can be the case for a strenuous activity
must be considered (as for the Dahmen set with restrictions). where the longer an employee performs the activity without
taking a break, the higher is its cost.
Finally, our proposed model could be used to solve
7 Conclusion multiple-day scheduling problems in discontinuous operat-
ing environments (i.e. environments in which shifts are not
This paper proposes an implicit formulation to model com- permitted to overlap on two consecutive days). In case of
plex multi-activity shift scheduling problems using adapted continuous environments, one could adapt the heuristic solu-
forward and backward constraints. Our experimental results tion approach proposed by Rekik et al. (2008) and divide the
show that the proposed model could solve problems includ- planning horizon into time windows such that the scheduling
ing up to 2,970 millions of explicit shifts within reasonable problem associated with each time window can be solved by
times. the proposed implicit model in relatively short computing
The proposed implicit model is flexible and can easily han- times.
dle complex constraints on activity assignment. We consider
a new scheduling constraint where the number of differ- Acknowledgements This work was supported by the Fonds de
Recherche Nature et Technologie du Québec (FRNTQ) through its new
ent activities worked at pre-break and post-break profiles researchers start-up grant. This support is gratefully acknowledged. The
must be limited, and study the impact of such restrictions authors thank Louis Martin Rousseau, Marie-Claude Côté and Maria
on workforce cost and on the computational performance Isabel Restrepo for providing their benchmark and their source code,
of our model. The results show that these restrictions are in thus allowing a comparison with their grammar-based approach.
general beneficial at all levels.
Our implicit model is compared to the grammar-based
model of Côté et al. (2011) for two large sets of instances: Appendix A: The grammar used to adapt the Côté
(1) the instances we generate in this paper that better et al. (2011) model to instances in the Dahmen set
fit the scheduling environment for which our model was
proposed and (2) the instances considered by Côté et al. All the grammars used are presented in accordance with the
(2011) to which their grammar-based model was applied. notations adopted by Côté et al. (2011). For clarity, they
The results show that our implicit model outperforms the are not stated in Chomsky normal form. For each produc-
model of Côté et al. (2011) on our set of instances in tion P,‘→ S,[min,max] ’ restricts the subsequences generated to
terms of computing times, number of instances for which have a position belonging to the set of periods S and a span
optimal and 1%-optimal solutions are obtained within 1 h, between min and max periods. When S or [min, max] are
and quality of the feasible solutions when the CPLEX not specified for a production, there are no restrictions on
gap is greater than 1%. Our results show that the perfor- its position or span, respectively. The grammar used for the
mance of the grammar-based model of Côté et al. (2011) Dahmen set with no restrictions on the number of activities,
is much worse when our new scheduling constraint on denoted G, is defined as follows:

123
J Sched

G = ( = ((a j ) j∈J ={1,2,...,|A|} , b, r ), ∀t ∈ T, ∀ j, k ∈ J : j = k


N = (S, R, (Q t , Pt , Wt , Bt )t∈T , (J j , T j , A j ) j∈J , P, S) Pt →[L AM min ,L AM max ] J j T j,k
t t
∀t ∈ T, ∀ j, k ∈ J : j = k Wt →[L P M min ,L P M max ] J j T j,k
t t
S →{0},[96,96] R Q t |Q t R|R Q t R
T j,k → Jk Tk, j |Jk .
Q t → St ,[L min ,L max ] Pt Bt Wt
t t

Bt → b L Bt , R → Rr |r
Pt →[L AM min ,L AM max ] J j T j ,Wt →[L P M min ,L P M max ] J j T j Appendix B: Additional results for Section 6
t t t t

Pt →[L AM min ,L AM max ] J j , Wt →[L P M min ,L P M max ] J j


a j ,t a j ,t a j ,t a j ,t

J j →[L amin ,L amax ] A j , T j → Jk Tk |Jk , A j → A j a j |a j ,


Table 7 Average, minimum and maximum number of explicit shifts
where L AMamin
j ,t
= max{L AMtmin , L amin
j
} for the generated instances

L AMamax
j ,t
= min{L AMtmax , L amax
j
} Data Set “Per.|A|” Av. Min. Max.

L P Mamin
j ,t
= max{L P Mtmin , L amin
j
} 60.3 18,495 1408 63,384
60.6 1,627,399 46,656 5,468,544
L P Mamax
j ,t
= min{L P Mtmax , L amax
j
}.
60.9 28,210,776 497,664 93,479,832
When restrictions on the number of activities are consid- 30.3 122,518 6896 420,192
ered (that is, N Aam , N A pm = 2), some of the productions 30.6 10,022,877 246,784 33,454,656
above defining G are changed as follows: 30.9 149,751,558 2,650,608 493,623,072
15.3 1,547,392 56,096 5,276,736
G = ( = ((a j ) j∈J ={1,2,...,|A|} , b, r ), N = (S, R,
r 15.6 137,174,576 2,519,296 454,798,464
(Q t , Pt , Wt , Bt )t∈T , (J j , A j ) j∈J , (T j,k ) j,k∈J : j=k , P, S) 15.9 1,876,731,120 29,770,272 6,156,755,136

123
J Sched

Table 8 Number of variables


Subset Data set “Per.|A|”
and constraints of model G for
the Dahmen set with no “Flex.|T |.Vs ” 60.3 60.6 60.9 30.3 30.6 30.9 15.3 15.6 15.9
restrictions on the number of
activities Number of variables
1.1.3 1494 3383 5950 5372 11,747 19,961 21,140 47,359 79,013
1.1.2 1697 3792 6577 5881 12,783 21,516 23,050 51,116 84,394
1.1.1 2086 4535 7706 7144 15,175 24,990 28,378 61,217 98,536
1.2.3 2021 4342 7311 7742 16,375 26,542 31,448 68,988 109,528
1.2.2 2445 5164 8522 8664 18,096 28,965 35,222 76,069 119,300
1.2.1 3140 6421 10,326 11,022 22,382 34,938 45,718 95,403 145,648
2.1.3 2182 5759 11,236 8411 21,231 40,481 37,209 92,399 173,921
2.1.2 2482 6372 12,256 9283 22,969 43,329 40,626 98,760 183,796
2.1.1 3034 7459 14,024 11,223 26,559 48,867 49,540 114,505 207,094
2.2.3 2924 7072 13,158 12,308 28,269 50,854 56,828 127,746 225,394
2.2.2 3546 8258 15,002 13,802 30,938 54,840 63,337 139,095 242,003
2.2.1 4528 10,029 17,670 17,450 37,288 64,098 80,982 169,055 284,752
Number of constraints
1.1.3 1217 1982 2709 4223 6679 8991 15,463 24,117 32,182
1.1.2 1325 2124 2881 4466 6970 9329 16,071 24,781 32,917
1.1.1 1508 2335 3127 4961 7566 10,035 17,557 26,544 34,995
1.2.3 1470 2245 2983 5339 7837 10,197 19,711 28,445 36,616
1.2.2 1663 2464 3227 5718 8248 10,639 20,744 29,538 37,778
1.2.1 1953 2780 3572 6505 9110 11,579 23,149 32,136 40,587
2.1.3 1373 2218 3063 4851 7647 10,443 18,049 28,111 38,173
2.1.2 1490 2370 3250 5114 7976 10,838 18,687 28,865 39,043
2.1.1 1670 2589 3508 5606 8584 11,562 20,131 30,620 41,109
2.2.3 1625 2481 3337 5964 8811 11,658 22,261 32,419 42,577
2.2.2 1824 2710 3596 6356 9246 12,136 23,316 33,574 43,832
2.2.1 2115 3034 3953 7150 10,128 13,106 25,723 36,212 46,701
A cell appears in bold when model G needs less variables or constraints than model P

Table 9 Computational
Subset Data set “Per.|A|”
performance of models P and G
for the instances in Dahmen set “Flex.|T |.Vs ” 60.3 60.6 60.9 30.3 30.6 30.9 15.3 15.6 15.9
with no restrictions solved to
optimality within an hour Average solution time for model P (in seconds)
1.1.3 0.45 0.66 0.71 0.55 1.41 2.13 1.90 20.81 253.59
1.1.2 0.39 1.02 0.99 0.45 0.99 4.84 1.36 24.88 118.91
1.1.1 0.46 0.65 1.71 0.56 1.37 4.98 3.69 42.37 118.58
1.2.3 0.59 0.77 1.31 0.69 2.70 9.48 5.70 261.56 311.91
1.2.2 0.56 0.72 1.63 0.73 1.93 5.19 6.50 690.93 1085.51 (4)
1.2.1 0.76 0.92 1.92 0.72 2.74 7.45 6.59 100.89 470.33
2.1.3 0.48 1.17 2.81 1.03 10.50 196.41 6.82 218.77 (4) 2186.72 (2)
2.1.2 0.76 1.27 3.91 0.75 4.50 51.98 9.58 230.49 (4) 3682.39 (1)
2.1.1 1.05 1.59 11.95 0.89 9.69 365.76 11.52 645.00 –
2.2.3 1.63 1.57 14.75 1.42 116.12 862.72 14.95 1383.20 –
2.2.2 0.57 2.37 7.12 1.00 7.18 200.68 156.29 2394.46 (2) –
2.2.1 0.63 2.57 89.15 1.30 11.99 928.20 246.58 1983.99 (4) –
Average solution time for model G (in seconds)
1.1.3 1.22 1.32 1.94 1.80 2.15 4.66 3.73 35.11 184.23
1.1.2 0.77 0.90 1.96 0.73 2.62 5.18 3.44 52.27 139.35

123
J Sched

Table 9 continued
Subset Data set “Per.|A|”
“Flex.|T |.Vs ” 60.3 60.6 60.9 30.3 30.6 30.9 15.3 15.6 15.9

1.1.1 1.19 1.66 1.77 1.31 3.01 6.39 4.62 88.53 204.84
1.2.3 1.01 2.02 1.60 1.94 4.88 7.51 5.69 89.35 235.28
1.2.2 1.27 2.03 2.48 1.50 3.25 5.06 6.13 547.62 1610.00 (4)
1.2.1 1.62 2.67 2.30 2.11 4.36 6.07 6.67 219.05 822.42
2.1.3 0.91 1.89 1.55 1.89 5.27 20.36 6.89 1398.83 (4) 3049.09 (2)
2.1.2 0.75 1.65 2.10 2.28 5.37 13.48 19.36 573.66 (4) 3150.16 (1)
2.1.1 1.28 1.76 3.13 2.38 6.47 9.44 31.53 626.52 –
2.2.3 1.56 1.94 2.25 2.27 23.00 73.56 27.58 1375.61 –
2.2.2 1.35 2.09 2.78 2.56 4.43 6.51 135.70 2402.22 (2) –
2.2.1 1.90 2.41 3.04 2.60 5.66 7.75 176.94 1931.17 (4) –
Table 9 reports the average solution times in seconds for the instances that were solved to optimality by models
P and G within 1 h. These averages are computed over the five instances of each data subset. When not all
the five instances of a data subset are solved to optimality, we report in parentheses the number of instances
solved
A cell appearing in bold implies that the corresponding model requires less CPU time than the other

Table 10 Computational
Subset Data set “Per.|A|”
performance of models P r and
G r for the instances in Dahmen “Flex.|T |.Vs ” 60.3 60.6 60.9 30.3 30.6 30.9 15.3 15.6 15.9
set solved to optimality by both
models within an hour Average CPU for forward–backward-based model P r (seconds)
1.1.3 0.39 0.63 0.70 0.49 1.48 1.80 1.65 40.44 54.16
1.1.2 0.40 0.68 0.76 0.45 0.90 1.83 1.28 41.31 196.65
1.1.1 0.40 0.71 0.95 0.55 1.19 4.20 2.66 29.45 104.60
1.2.3 0.46 0.77 1.32 0.77 2.37 6.31 3.96 220.35 417.93
1.2.2 0.47 0.80 1.31 0.67 1.60 2.69 4.90 753.28 761.47 (2)
1.2.1 0.61 0.83 1.39 0.71 1.68 4.39 4.85 61.62 273.69
2.1.3 0.38 0.65 1.06 0.89 2.45 27.26 4.17 82.92 (4) –
2.1.2 0.59 0.74 2.04 0.72 3.58 21.20 5.38 262.80 –
2.1.1 0.63 1.32 2.15 0.99 6.50 39.66 9.77 253.21 (2) –
2.2.3 0.76 1.15 1.74 1.26 7.34 141.06 20.54 542.38 (2) –
2.2.2 0.52 1.24 1.94 1.24 2.88 31.95 119.54 – –
2.2.1 0.57 1.84 7.81 1.69 4.54 18.36 55.05 1461.49 (3) –
Average CPU for grammar-based model Gr (seconds)
1.1.3 0.44 0.61 0.65 0.54 1.53 2.57 1.91 56.32 469.22
1.1.2 0.38 0.56 0.71 0.48 1.59 2.95 1.98 32.76 448.58
1.1.1 0.41 1.01 1.05 0.58 1.75 4.56 2.59 101.77 585.35
1.2.3 0.43 0.96 1.38 0.72 2.33 4.55 2.90 62.91 464.28
1.2.2 0.48 0.74 1.16 0.65 2.14 3.79 3.89 853.70 1974.07 (2)
1.2.1 0.48 1.02 1.38 0.81 2.70 4.98 3.89 138.46 1020.89
2.1.3 0.48 0.84 1.30 0.94 3.96 43.64 7.95 760.05 (4) –
2.1.2 0.45 0.85 1.43 0.95 4.15 53.71 5.70 1774.39 –
2.1.1 0.76 1.29 4.80 1.26 12.53 74.25 11.86 2068.55 (2) –
2.2.3 0.71 1.23 1.99 1.39 77.93 336.52 69.56 1198.47 (2) –
2.2.2 0.68 1.33 2.80 1.19 5.29 120.17 160.81 – –
2.2.1 0.55 1.48 4.15 1.65 6.78 26.88 201.08 3076.69 (3) –
Table 10 reports the average solution times in seconds for the instances that were solved to optimality by
models P r and G r within 1 h. These averages are computed over the five instances of each data subset. When
not all the five instances of a data subset are solved to optimality, we report in parentheses the number of
instances solved

123
J Sched

Table 11 Model size of P and


|A| Number of variables Number of constraints Density (%)
G for the Côté set
Model P Model G Model P Model G Model P Model G

1 5906 68,200 737 16,277 2.29 0.02


2 18,997 71,465 1074 18,131 1.70 0.02
3 48,888 74,734 1501 19,987 1.28 0.01
4 88,743 78,013 1702 21,845 1.09 0.01
5 171,973 81,300 2020 23,707 0.95 0.01
6 270,636 84,591 2271 25,569 0.85 0.01
7 413,536 87,898 2410 27,437 0.81 0.01
8 460,445 91,148 2418 29,286 0.80 0.01
9 542,106 94,387 2453 31,132 0.78 0.01
10 769,382 97,712 2738 33,006 0.71 0.01
A cell appearing in bold implies that the corresponding model requires less variables and constraints or has a
lower density than the other

References Ernst, A. T., Jiang, H., Krishnamoorthy, M., & Sier, D. (2004). Staff
scheduling and rostering: A review of applications, methods and
Aykin, T. (1996). Optimal shift scheduling with multiple break win- models. European Journal of Operational Research, 153(1), 3–27.
dows. Management Science, 42(4), 591–602. Fischetti, M., Liberti, L. (2012). Orbital shrinking. In Combinatorial
Bechtold, S. E., & Jacobs, L. W. (1990). Implicit modeling of flexi- optimization (pp. 48–58). New York, NY: Cambridge University
ble break assignments in optimal shift scheduling. Management Press.
Science, 36(11), 1339–1351. Lequy, Q., Bouchard, M., Desaulniers, G., Soumis, F., & Tachefine,
Bechtold, S. E., & Jacobs, L. W. (1996). The equivalence of general set- B. (2012). Assigning multiple activities to work shifts. Journal of
covering and implicit integer programming formulations for shift Scheduling, 15(2), 239–251.
scheduling. Naval Research Logistics (NRL), 43(2), 233–249. Moondra, S. L. (1976). An lp model for work force scheduling for
Cezik, T., & Günlük, O. (2004). Reformulating linear programs with banks. Journal of Bank Research, 7(4), 299–301.
transportation constraints with applications to workforce schedul- Quimper, C. G., & Rousseau, L. M. (2010). A large neighbourhood
ing. Naval Research Logistics (NRL), 51(2), 275–296. search approach to the multi-activity shift scheduling problem.
Côté, M. C., Gendron, B., Rousseau, L. M. (2007). Modeling the regu- Journal of Heuristics, 16(3), 373–392.
lar constraint with integer programming. In Integration of AI and Rekik, M., Cordeau, J. F., & Soumis, F. (2004). Using Benders decom-
OR techniques in constraint programming for combinatorial opti- position to implicitly model tour scheduling. Annals of Operations
mization problems (pp. 29–43). Berlin/Heidelberg: Springer. Research, 128(1), 111–133.
Côté, M. C., Gendron, B., Quimper, C. G., & Rousseau, L. M. (2011a). Rekik, M., Cordeau, J. F., & Soumis, F. (2008). Solution approaches
Formal languages for integer programming modeling of shift to large shift scheduling problems. RAIRO-Operations Research,
scheduling problems. Constraints, 16(1), 54–76. 42(2), 229–258.
Côté, M. C., Gendron, B., & Rousseau, L. M. (2011b). Grammar-based Rekik, M., Cordeau, J. F., & Soumis, F. (2010). Implicit shift schedul-
integer programming models for multiactivity shift scheduling. ing with multiple breaks and work stretch duration restrictions.
Management Science, 57(1), 151–163. Journal of Scheduling, 13(1), 49–75.
Côté, M. C., Gendron, B., & Rousseau, L. M. (2013). Grammar-based Restrepo, M. I., Lozano, L., & Medaglia, A. L. (2012). Constrained
column generation for personalized multi-activity shift scheduling. network-based column generation for the multi-activity shift
INFORMS Journal on Computing, 25(3), 461–474. scheduling problem. International Journal of Production Eco-
Dahmen, S., & Rekik, M. (2015). Solving multi-activity multi-day shift nomics, 140(1), 466–472.
scheduling problems with a hybrid heuristic. Journal of Schedul- Salvagnin, D., Walsh, T. (2012). A hybrid MIP/CP approach for multi-
ing, 18, 207–223. activity shift scheduling. In M. Milano (Ed.), Proceedings of the
Dantzig, G. B. (1954). Letter to the editor-a comment on Edie’s traffic 18th international conference on principles and practice of con-
delays at toll booths. Journal of the Operations Research Society straint programming, CP 2012, Québec City, QC, Canada, October
of America, 2(3), 339–341. 8–12, 2012 (pp. 633–646). Berlin/Heidelberg: Springer.
Demassey, S., Pesant, G., Rousseau, L. M. (2005). Constraint pro- Thompson, G. M. (1995). Improved implicit optimal modeling of the
gramming based column generation for employee timetabling. labor shift scheduling problem. Management Science, 41(4), 595–
In Second international conference, CPAIOR 2005, May 2005, 607.
Prague, Czech Republic. Lecture Notes in Computer Science (Vol. Van den Bergh, J., Beliën, J., De Bruecker, P., Demeulemeester, E., &
3524, pp. 140–154). Berlin/Heidelberg: Springer. De Boeck, L. (2013). Personnel scheduling: A literature review.
European Journal of Operational Research, 226(3), 367–385.

123