Accepted Manuscript
Discrete and continuous-time formulations for dealing with break periods: preemptive and non-preemptive scheduling Pedro M. Castro , Iiro Harjunkoski , Ignacio E. Grossmann PII: DOI: Reference:
S0377-2217(19)30359-5 https://doi.org/10.1016/j.ejor.2019.04.025 EOR 15777
To appear in:
European Journal of Operational Research
Received date: Accepted date:
31 July 2018 10 April 2019
Please cite this article as: Pedro M. Castro , Iiro Harjunkoski , Ignacio E. Grossmann , Discrete and continuous-time formulations for dealing with break periods: preemptive and non-preemptive scheduling, European Journal of Operational Research (2019), doi: https://doi.org/10.1016/j.ejor.2019.04.025
This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.
ACCEPTED MANUSCRIPT
Discrete and continuous-time formulations for dealing
scheduling
CR IP T
with break periods: preemptive and non-preemptive
Pedro M. Castroa,* , Iiro Harjunkoskib and Ignacio E. Grossmannc
Centro de Matemática Aplicações Fundamentais e Investigação Operacional, Faculdade de Ciências, Universidade de Lisboa, 1749-016 Lisboa, Portugal.
b
AN US
a
ABB Corporate Research,
-
Germany
Center for Advanced Process Decision-Making, Department of Chemical Engineering, Carnegie Mellon University, Pittsburgh, PA 15213, USA
M
c
ED
Abstract
This paper presents new mixed-integer linear programming (MILP) approaches for handling
PT
preemption both in discrete and continuous-time scheduling formulations. Preemption refers to the
CE
capability of interrupting the execution of a task when encountering a pre-defined break period, assuming that the task continues immediately after the end of such time window. We rely on
AC
Generalized Disjunctive Programming to derive the constraints for the continuous-time formulations and on a compact convex hull reformulation to make them computationally efficient. We investigate both the general precedence and multiple time grids representation concepts. Generalization of the discrete-time formulation is simpler, involving a change in the model parameters. Validation and comparison of the mathematical formulations is done through the *
Corresponding author:
[email protected]
1
ACCEPTED MANUSCRIPT solution of sixteen benchmark problems, involving instances with one to four sets of breaks. The results show that the general precedence formulation is computationally more effective for flexible flowshops, being outperformed by the discrete-time approach when considering common rather than machine-dependent breaks. For single stage plants with parallel units, the multiple time grid formulation prevails.
CR IP T
Keywords: Scheduling, Flexible Flowshop, Multiproduct batch plants, Resource-Task Network, Preemption.
This paper is devoted to the memory of Professor Egon Balas, a pioneer and intellectual leader in the areas of integer and disjunctive programming, and who has been a great source of inspiration
AN US
to the authors of this paper. 1. Introduction
Preemptive scheduling has rarely been considered in the context of batch scheduling problems
M
(Pei et al., 2015). In preemptive scheduling, assuming it is operationally feasible, a job may be
ED
interrupted and resumed later, even on a different machine (Shioura et al., 2018), whereas interruptions are not allowed in nonpreemptive scheduling. In this paper, we restrict preemption to
PT
break periods occurring at predefined time windows, representing for instance: preventive maintenance of equipment (planned), night shifts or holiday breaks in plants not operating 24/7,
CE
periods where energy needs to be saved or emissions reduced, or other business reasons related to
AC
Enterprise Resource Planning (ERP). In contrast, the literature typically assumes that preemption can occur anywhere in the time horizon. Note that break periods do not model the stochastic breakdown of a machine when processing jobs, as in Wang and Choi (2012). Instead, they are deterministic, fully occupying the time window, and so it is not necessary for the optimization to decide where to locate the required maintenance within a longer time window, as in Castro et al. (2014) and Mosheiov et al. (2018).
2
ACCEPTED MANUSCRIPT As noted by Kress et al. (2019), preemption can lead to a more efficient use of the production resources, e.g. lower makespan. This can be observed in the simple example of Fig. 1, which considers the execution of 4 jobs in 2 machines in the presence of a 10-min break period starting at time 70. Without the possibility of interrupting jobs (non-preemptive scheduling), it is necessary to delay the start of one job until the end of the break, at time 80. Job 2, the one with the lowest
CR IP T
processing time (in machine M1), is the one selected, leading to an optimal makespan of 110. By allowing preemption, the makespan can be reduced to 85. In the optimal schedule (to the right of Fig. 1), job 4 in machine M2 is chosen to be interrupted, with the last 5 minutes being executed after the break. There are also cases where performance is not improved, as will be illustrated later.
Job J1 in M1=35
(J2,M1)=30
(J3,M1)=35
(J4,M1)=45
(J1,M2)=35
(J2,M2)=40
35
M1
M2
40 (J3,M2)=45
(J4,M2)=40
70 80
30
110
35
35
30
35
0
5
70 80 85
M
0
35
Optimal schedule (preemption)
Break period
Optimal schedule (non-preemption)
Break period
Jobs processing times
AN US
Machines
ED
Fig. 1. Simple example illustrating the benefits of preemption for makespan minimization. Using the notation of Graham et al. (1979), Brucker et al. (2003) identify the single stage parallel
PT
machine scheduling problems for which preemption does not improve the objective value. A key
CE
assumption, aside from being operationally feasible, is that all data are assumed to be integer, so all jobs can be split into as many parts as the value of their processing times. It is thus not surprising
AC
that the authors found that allowing preemption may turn a polynomially solvable problem into a NP-hard one (e.g. when minimizing the sum of penalties for late jobs). Batsyn et al. (2014) propose a Boolean Linear Programming model (an Integer Program with 0-1
variables) for the preemptive single machine scheduling problem with release dates and integer processing times. Each job is divided into unit parts, while the time horizon of interest is divided into slots of size one, in a number that equals the sum of the processing times. In this discrete-time formulation, the binary variables assign each part of a job to exactly one time slot. To cope with the 3
ACCEPTED MANUSCRIPT difficulty of CPLEX to handle problems with 25 jobs, the authors proposed a high-quality heuristic method (optimality gap <0.1% for the problems that could be solved to optimality) capable of handling problems with 5000 jobs in less than one hour. Pei et al. (2015) extend the work of Batsyn et al. (2014) by considering a two-stage supply chain scheduling problem, with a production stage and a single vehicle in the transportation stage. The
CR IP T
first stage features a single batching machine capable of handling multiple jobs in a serial fashion (one batch) up to the given capacity. Each job must be assigned to exactly one batch. The processing of a batch can be interrupted by another batch and resumed later (preemption). Once a batch is finished, it will occupy the machine until the transportation vehicle returns to take it. The exact algorithm to address the problem where the
AN US
authors propose an
jobs are
available at time zero, and a heuristic with the same time complexity to address the case with different release dates.
M
Preemption in the context of a scheduling problem with precedence constraints between activities, also appears in the multi-mode resource constraint project scheduling problem (Peteghem and
ED
Vanhoucke, 2010). The authors propose a genetic algorithm and evaluate the impact of preemption in the quality of the schedule. Using data instances from the PSPLIB, they get average makespan
PT
improvements of about 0.5% for cases with nonrenewable resources, but also obtained runs with
CE
worse solutions. This was justified by the larger project networks that are required when introducing activity preemption.
AC
A closely related problem is the multi-skilled resource investment project scheduling problem
(Javanmard et al., 2017). Different skills are required to accomplish project activities and the limits on investment of renewable resources are considered decision variables. The authors propose two mixed-integer linear programming (MILP) formulations. In the first, the assigned level of skills was considered fixed, while in the second, the levels could be altered after preemption. Not surprisingly, the second model led to a lower total cost. Two meta-heuristic algorithms were also proposed, with
4
ACCEPTED MANUSCRIPT the genetic algorithm outperforming its particle swarm optimization counterpart. They were first validated using PSPLIB instances with up to 30 activities, leading to average optimality gaps below 0.04% (compared to the optimal solutions from the MILP models), and then used to tackle the instances with 90 activities in roughly 1000 CPUs. Preemption is just one of many aspects that may be encountered when facing a real-life
CR IP T
scheduling problem. The multitude and complexity of scheduling problems is increasing, and with the growing size and scope it is important to enable various collaboration schemes (Harjunkoski et al., 2014). As different types of methods may need to collaborate, also stemming from various industries and companies, it is important to have a common basis for exchanging information
AN US
(Harjunkoski, 2016). This is currently strongly driven by the digitalization activities such as Industry 4.0 that promote crossing the traditional solution boundaries. The ISA-95 standard (ANSI/ISA-95.00.03-2005) can support the collaboration and integration of methods by offering a
M
neutral and uniform data structure and can be flexibly extended to meet future challenges and requirements.
ED
Apart from standardized data-interfaces, another challenge is how to effectively solve the increasing growing number of heterogenous scheduling problems. The current work was driven by
PT
the search for a truly generic scheduling formulation for process plants. Previous work with the
CE
Resource-Task Network (RTN) discrete-time formulation of Pantelides (1994) have led us to choose this approach as a basis for further development. Reasons for this decision include: (i)
AC
uniform treatment of different types of resources (e.g. equipment, materials, utilities, manpower, etc.); (ii) modeling paradigm easily understood by business stakeholders (e.g. Wassick and Ferrio (2011) from the Dow Chemical Company); (iii) it is a flexible approach, easily modified when new information becomes available; (iv) the discrete-time model is better at finding good solutions in short computational time, a requirement for a successful commercial software.
5
In this paper, we extend the RTN discrete-time formulation to preemptive tasks, not restricting processing times to integer values. We also develop new constraints for handling preemption with continuous-time formulations, enabling a comparison between the two types of time representation. We do this for the short-term scheduling problem of a flexible flowshop and its single-stage special case. In a flexible flowshop (Fig. 2), each order needs to go through the same sequence of stages
to choose from. Processing times release
and due dates
CR IP T
to reach the condition of final product, and on each stage, there is a set of parallel machines
are known parameters, and orders may be subject to given
. The objective function is to minimize the makespan, similarly to Lee et
AN US
al. (2019), as seen in Eq. (1).
(1)
B
M22
… MK2
M23
M1
M4
A
ED
M12
MK1
M
M11
M21
M2 M3
M5
M6
A
M7
B
PT
Fig. 2. A flexible (b) flowshop with two parallel machines on first and last stages ( Multi-stage (c) the Multi-purpose , ), and three machines on the second stage ( ).
CE
The rest of the paper is organized as follows. In section 2, we briefly review three formulations from the literature that can solve the short-term scheduling problem of a flexible flowshop, or the single stage simplification of it, for time horizons without break periods. Two of them rely on a
AC
e
ACCEPTED MANUSCRIPT
continuous representation of time, while the third is a discrete-time formulation. In section 3, the mixed-integer linear programming formulations are extended for dealing with break periods, considering both preemptive and non-preemptive scheduling. Compared to the more frequent nonpreemptive mode of operation, we show that interrupting a task over a break period is the same as extending its duration past the nominal, non-preemptive value. For the continuous-time formulations, disjunctions (Balas, 1979; Raman and Grossmann, 1994) are used to enforce bounds 6
ACCEPTED MANUSCRIPT on the starting and ending timing variables, bounds that depend on the relative position of the task with respect to the break period. For the discrete-time formulation, the starting time is known implicitly from the slot assignment variables, and since the location of all time slots in the grid is known a priori, one just needs to consider starting-time dependent duration parameters to account for preemption. The computational experiments are part of section 4. We analyze separately the
CR IP T
results for the multistage and single stage instances, to better highlight that the best approach varies with the plant topology. Finally, the conclusions are presented in section 5. 2. Scheduling formulations for time horizons without break periods
AN US
In this section, we briefly review three well-known scheduling formulations from the literature that can tackle the flexible flowshop topology (further details can be found in Harjunkoski et al., 2014). The first is the general precedence formulation of Méndez and Cerdá (2002), which can easily be adapted to flexible jobshops. The second, also relies on a continuous-time representation,
M
but uses the concept of multiple time grids, also known as unit-specific event-based models
ED
(Floudas and Lin, 2005). The formulation developed by Castro and Grossmann (2005) has a similar performance to the one by Méndez and Cerdá (2002) but it is not as intuitive. However, it can be
PT
orders of magnitude faster when considering single stage plants with parallel units, as reported by Castro and Grossmann (2006; 2012) and shown later in section 4.2. We thus restrict the discussion
CE
of the multiple time grid formulation to such topology, which is a special case of a flexible
AC
flowshop. Third, we consider the Resource-Task Network (RTN) discrete-time formulation of Pantelides (1994), which can also be used in the presence of multipurpose equipment and other shared resources. 2.1. General precedence continuous-time formulation The general precedence formulation uses two sets of binary variables and two sets of continuous variables. Let
if order
is assigned to machine
of stage
and let
if order
7
ACCEPTED MANUSCRIPT globally precedes order
in stage . Continuous variables
and
represent the start and
ending times of order in stage . Equation (2) states that exactly one machine execution of order
in stage . The processing time in stage
is assigned to the
is computed by Eq. (3). Equations
(4)-(5) guarantee that orders allocated to the same machine cannot overlap. They can be viewed as super big-M constraints, involving three different binary variables, which are known to yield poor
CR IP T
linear relaxations. The advantage of the general precedence formulation is that relating the execution of an order in consecutive stages is much simpler. Equation (6) states that the start time of order
in stage
must be greater than its ending time in stage , while Eqs. (7)-(8) deal with
the release and due date constraints.
AN US
∑ ∑ (
(4)
)
(5)
ED
(6)
PT
(7) (8)
represents the upper bound on the ending time of execution of order
in stage
CE
Parameter
(3)
)
M
(
(2)
(check later Eq. (31)), playing the role of the big-M parameter. Equation (9) states that the
AC
makespan must be greater than the maximum of the last-stage ( ) finishing times. The tightening constraint in Eq. (10) then states that the makespan must be greater than the sum of the processing times of all orders executed in machine
(second term on the left-hand side) plus the minimum
processing time over all stages before and after
(Castro and Grossmann, 2005). (9)
∑
∑
∑
(10) 8
ACCEPTED MANUSCRIPT 2.2. Multiple time grid formulation for the special case of single stage plants For the special case of single stage plants, index formulation with and
is not needed. We consider a multiple time grid
grids, one for every unit, comprising an equal number of time slots
. Let
be continuous variables representing the starting and ending times of slot
in unit
, respectively. According to Fig. 3, these are bounded between zero and the time horizon
must be greater than the ending time of slot
CR IP T
Equation (11) states that the starting time of slot
.
Now, let continuous variable
AN US
, while the makespan is the maximum, over all units, of last-slot ending times, as seen in Eq. (12).
hold the duration of slot in unit
(11) (12)
, as can be seen in Eq. (13).
To compute the slot duration, we need to know which order is assigned to it. The exclusive disjunction in Eq. (14) states that there can be at most one order assigned to the slot. If it is order ), then the slot processing time
must match the order processing time
M
(
ED
time must be greater than the release date
, the start
and the end time must be lower than the due date
(recall illustration in Fig. 3). If no orders are assigned to the slot (
), then its processing
PT
time is equal to zero and the timing constraints are relaxed. Equation (15) eliminates symmetry by is
CE
moving idle slots to the right of active slots, while Eq. (16) then ensures that every order
AC
assigned to exactly one slot.
9
ACCEPTED MANUSCRIPT slot
slot
|T|
CR IP T
Time slot
Time window for execution of order
⋁
M
AN US
Fig. 3. Multiple time grid formulation for single stage plants. Each order must be assigned a unit and exactly one time slot must be chosen. The time window for execution is the interval between its release and due date .
⋁
]
PT
ED
[
[
] (14) (15)
⋁⋁
(16)
AC
CE
(13)
The reformulation of the logic propositions in Eqs. (14)-(16) leads to the Eqs. (17)-(19), which
involve only binary variables. ∑
(17) (18)
∑ ∑
(19)
10
ACCEPTED MANUSCRIPT The sharp/compact hull reformulation of the constraints inside the disjunction in Eq. (14) generates Eqs. (20)-(22), which involve both binary and continuous variables. ∑
(20) (21)
∑
(22)
CR IP T
∑
2.3. RTN discrete-time formulation
The Resource-Task Network (RTN) process representation introduced by Pantelides (1994) was proposed to unify the treatment of production resources, i.e. equipment, material states, utilities,
AN US
manpower, etc. Bearing in mind that it can handle more complex topologies, we now describe how it can be used for flexible flowshops.
Let task be linked to the execution of order in unit
of stage . In discrete-time formulations, (Harjunkoski et
M
the time horizon of interest is typically divided into uniform time slots of duration
al., 2014). To keep the model tractable, it is often needed to approximate the processing times
(in
ED
minutes or hours) to multiples of . More specifically, we compute the duration of task (in number
PT
of time slots in the grid) by rounding up, i.e. As can be seen in Fig. 4, task
⌉.
affects three different resources. Resource
, consumed at the
immediately after the end of the previous stage
CE
beginning, represents the material state of order (
⌈
). Resource
, produced at the end, represents the material state of the stage. Resource
AC
represents the equipment unit, which is temporarily hidden from other competing tasks while the task is being executed (5 time slots). It is thus consumed at the beginning and produced at the end. Structural parameters
, hold the amount of resource
consumed (-) and produced (+) at a time
relative to the start of the task. Since material states and equipment units can be considered as unitary resources, we have for the example in Fig. 4:
and
.
11
ACCEPTED MANUSCRIPT Resource (equipment unit)
Resource (consumed)
Resource (produced)
Task (execution of order in unit and stage ) Duration= 5 time slots
CR IP T
Fig. 4. Structural parameters of the RTN formulation for a flexible flowshop.
The structural parameters multiply the decision variables in the excess resource balances given in Eq. (23), where binary variable
holds the time slots when task can start, restricting the domain of variables
AN US
subset
indicates that task starts to be executed at slot . Note that . Subsets
are generated using the information of the release, due dates and minimum processing times in previous and subsequent stages, following the logic of Eq. (10). The excess resource balances relate the availability of resource
(e.g. nonnegative continuous variable
(or the initial availability
) with the
), plus the amount produced by all tasks finishing at
M
amount at
at time
ED
minus the amount consumed by all tasks starting at . ∑ ∑
include the tasks belonging to order and stage . Eq. (24) states that every order
PT
Let subset
(23)
∑
∑
( 4)
be a parameter indicating the starting time of slot
AC
Let
CE
needs to be executed exactly once on every stage.
(in minutes or hours). The
makespan must then be greater than the ending time of all last-stage tasks (
𝐿), as seen in Eq.
(25).
∑
𝐿
( )
Compared to the continuous-time formulations, one can see that the modeling challenge has switched from developing the constraints to generating the parameters of the RTN representation.
12
ACCEPTED MANUSCRIPT 3. Dealing with breaks in scheduling We now propose novel constraints to handle preemption in continuous and discrete-time formulations considering the models briefly described in the previous section, which are representative of those that can be found in the literature. Nevertheless, we have left out continuoustime formulations with a single reference grid, also known as global event based (Floudas and Lin,
problems (Castro and Grossmann, 2005; 2006).
CR IP T
2005). This is because such formulations have been shown to perform poorly in flexible flowshop
Preemption is restricted to break periods occurring at predefined time windows of the scheduling
machine
are machine dependent, with subset
holding the break periods of
AN US
horizon . Break periods
that occur during interval
. The goal is to make the most of the available
time by allowing part of the processing task to be executed before the break and the remaining part after the break. Note that all parts are executed on the same machine.
M
For the continuous-time formulations, we will show that non-preemption is actually a special case that can be enforced by fixing a subset of the binary variables to zero. We start by the general
ED
precedence formulation, for which there are already starting and ending time variables for the
PT
orders in the different stages, making it easier to develop the preemption constraints. In contrast, for the multiple time grid formulation, the start and end times are known only implicitly, from the
CE
timing of event points that compose the grid of each equipment unit and from the assignments of orders to units.
AC
For the discrete-time formulation, break periods help to reduce the model size, more so for the
non-preemptive case. The changes required for a general model occur mostly at the level of model p
f c
io
h
p
o
h
k’
i
i
.
3.1. Preemption with a general precedence formulation Let variable
represent the extended duration of order
in machine
due to break
(all
continuous variables are assumed non-negative). If the optimization decides to split the task, the 13
ACCEPTED MANUSCRIPT extended duration will match the duration of the break period, Fig. 5. Otherwise,
, as seen in
will be equal to zero. Equation (26) is valid in both cases and computes
the total duration of order
in stage
as the sum of the nominal processing time (computed by
multiplying the machine-dependent processing times by the corresponding assignment variable and ) plus the length of all break periods that the task crosses. ∑
(26)
CR IP T
∑
AN US
adding over
Break period
Fig. 5. In preemptive scheduling, it is possible to extend the duration of execution of order machine so that the task starts before and ends after a break period.
in machine
completes execution before the start of break period
ED
order
M
Let the three alternative decisions in Fig. 5 be identified through binary variables: ;
in
, if , if the task
starts before the break, is preempted during the break and continues execution after the break;
PT
, if it starts after the end of break period
. In the disjunction (Balas, 1979; Raman and
CE
Grossmann, 1994) in Eq. (27), each decision is associated to three sets of constraints involving the continuous variables
,
and
AC
the timing variables are for every stage
. Such three alternatives are, however, not enough. Since rather than for every machine, we need to include the
option that order is not assigned to machine
, i.e.
. In such case (fourth term in Eq. (27))
the extended duration is equal to zero, and the bounds on timing variables
and
are the
same as if there were no breaks.
14
ACCEPTED MANUSCRIPT
⋁ [
]
⋁ [
]
[
]
⋁
In Eq. (27), parameters
]
,
,
and
CR IP T
[
(27)
represent the lower (superscript 𝐿) and upper
bounds ( ) on the starting and ending times of tasks, and are computed through Eqs. (28)-(31). To , we sum over all previous stages
units belonging to set
, the minimum processing time over the parallel
AN US
compute
and add it to the release time . For
, the formula is similar, but we
include the minimum processing time of current stage . For the upper bounds, the processing times
∑
ED
∑
CE
(28) (29) (30)
PT
∑ ∑
.
M
are subtracted from the due time
(31)
The logic proposition implicit in the exclusive disjunction in Eq. (27) is translated into Eq. (32). It
AC
states that if order is assigned to machine to every break period
, then we must pick exactly one location with respect
. Otherwise, all binary variables will be equal to zero. (32)
For the three rows of constraints inside the disjunctive terms in Eq. (27), we use the hull relaxation reformulation (Balas, 1985; Raman and Grossmann, 1994). It involves defining new sets of disaggregated variables that, for this specific case involving constraints with a single variable,
15
ACCEPTED MANUSCRIPT can be eliminated to avoid increasing the problem size. The resulting sharp/compact formulation (Jeroslow and Lowe, 1984; Castro and Grossmann, 2012) can be seen in Eqs. (33)-(37). (
)
(33) (34)
CR IP T
(35) (36) (37)
In summary, the general precedence formulation consisting of Eqs. (1)-(2), (4)-(9), (26) and (28)-
AN US
(38) can handle preemption over breaks. Compared to Eq. (10), Eq. (38) adds the extended duration to the nominal processing time of order in machine ∑(
)
∑
)
(∑
)
(38)
M
(∑
.
In contrast, most scheduling models assume a non-preemptive mode of operation when facing a
ED
break, meaning that a task can either be completely executed before the start of the break, or begin only after the end of the break. These two possibilities can be formulated as an exclusive
PT
disjunction, as can be seen in Fig. 6 (Castro et al., 2014). For the preemptive model given above,
CE
non-preemption can be handled simply by setting
AC
Eq. (33) implies
, which from
.
⋁ Break period
Break period
Fig. 6. In non-preemptive scheduling, the execution of order in machine or start after a break.
can either end before
16
ACCEPTED MANUSCRIPT 3.2. Preemption with a multiple time grid formulation The main difference of the multiple time grid formulation compared to its general precedence continuous-time counterpart, is that its variables and constraints for handling break periods no longer feature the order index . As an example, the extended duration variable is now
,
which appears as an additional term on the right-hand side of Eq. (39) that replaces Eq. (13). While
CR IP T
the equality can also be used, preliminary tests have shown a worse computational performance. ∑
towards the end of the time horizon
will have an order assigned to, but there may be idle slots (
; recall Eq. (15)), or even, in extreme
cases, no orders assigned to the unit (
AN US
Typically, most time slots of unit
(39)
). As a consequence, the bounds
associated to each decision in Eq. (40) will be weaker compared to Eq. (27). Since an order needs to fit in a time slot (Fig. 3), the three alternatives illustrated in Fig. 5 now reflect the location of slot
⋁ ]
M ⋁
[
]
[
]
PT
[
.
ED
with respect to break period
(40)
AC
CE
The hull reformulation of Eq. (40) leads to Eqs. (41)-(44).
(
(
(41) )
(42) (
)
)
(43) (
Again, non-preemption over break periods can be enforced by setting
)
(44) .
17
ACCEPTED MANUSCRIPT 3.3. Preemption with a discrete-time formulation In a discrete-time formulation, break periods help to reduce the model size by decreasing the number of slots where task can start (subset
), thus restricting the domain of variables
example, consider a task spanning over
time slots executed in the vicinity of a four-interval
,
). Note that we are assuming that parameters
represent the slots where break
of unit
and
starts and production can resume, respectively (they
CR IP T
break (
. As an
can be converted in similar manner to the processing times, by rounding down/up, as described in
Earliest start
1
2
3
4
5
6
Latest start
1
2
3
4
5
6
AN US
section 2.3).
7
8
9
10
11
12
13
14
7
8
9
10
11
12
13
14
ED
M
Fig. 7. In non-preemptive scheduling, there is a significant reduction in the domain for task execution before the break, when considering a discrete-time formulation. In non-preemptive scheduling, the domain for task execution is reduced by more than half
PT
compared to the absence of the break, to
, as seen in Fig. 7.
The domain for task execution is larger when allowing for preemption. As can be seen in Fig. 8,
CE
the task can now also start at
. One aspect to consider is that its duration will be longer
AC
than if it is started earlier. In other words, one can no longer refer to the task duration without specifying the starting time slot. Thus, the duration parameter gains a time index: ̅ . For the three alternatives shown in Fig. 8, the duration ranges between the nominal value ( ̅
), to 9 and
11 slots, when facing one and two break periods, respectively.
18
1
2
3
4
5
6
7
8
9
10
11
12
13
14
1
2
3
4
5
6
7
8
9
10
11
12
13
14
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
CR IP T
Three alternatives
ACCEPTED MANUSCRIPT
Fig. 8. In preemptive scheduling, domain reduction for task execution is limited to the break periods while task duration varies with the starting time slot. Similarly, the structural parameters of the RTN formulation gain a time index when allowing for , with the duration parameter
the durations illustrated in Fig. 8 of
,
being the largest value of . Recalling Fig. 4,
AN US
preemption:
and
time units for starting the task
,
and
,
,
and
,
and
,
ED
M
in slots 1, 5 and 7, respectively, lead to the following non-zero parameters:
,
;
; . and preemptive tasks when
PT
The generalized constraint for handling both non-preemptive tasks
dealing with breaks, is given in Eq. (45). Note that the differences occur at the level of parameter
CE
indices, and so it is straightforward to include more terms to cope with other topologies (one can
AC
use as starting point the RTN excess resource balances in Harjunkoski et al. (2014) and Castro et al. (2018)).
∑ ∑
∑ ∑
(45)
For non-preemptive tasks, the definition of the makespan in Eq. (46) replaces Eq. (25). ∑
̅
𝐿
(4 )
19
ACCEPTED MANUSCRIPT It should also be emphasized that other discrete-time formulations (e.g. Velez et al., 2017) can be extended in a similar way. 3.3.1. Extended formulation for single stage plants The most successful discrete-time scheduling model in Process Systems Engineering uses the
CR IP T
State-Task Network (STN) process representation (Kondili et al., 1993) instead of the RTN. Here, we are interested in the equipment allocation constraint tightened by Shah et al. (1993), which prevents tasks competing for the same unit to overlap in time. It is one of three constraints needed for single stage plants (the others are Eqs. (24) and (46)). Extending an equivalent of such constraint
parameters (from ∑
∑
AN US
(see derivation in Castro et al., 2018) for preemptive tasks, requires a simple change in the duration to ̅ ), leading to Eq. (47), where subset
̅
.
(47)
M
4. Computational results
includes the tasks linked to unit
ED
The mixed-integer linear programming models were implemented in GAMS 24.9.2 and solved with CPLEX 12.7.1 running in parallel deterministic mode using up to eight threads. We have used
PT
default settings except for the termination criteria, a relative optimality tolerance of 10-6 or a maximum wall time limit of 3600 CPUs. The hardware consisted of a Windows 10, 64-bit desktop
CE
with an Intel i7-4790 (3.6 GHz) processor and 8 GB of RAM.
AC
Two different sets of benchmark instances are considered. The first set is based on a real-life scheduling problem from a steel plant (Castro et al., 2013), a flexible flowshop with
=4 stages,
each with two units in parallel. To make the comparison easier between the discrete and continuoustime formulations, we have: (i) relaxed the no interruption constraint in the continuous casting stage (the last) between heats belonging to the same group; (ii) slightly changed the last-stage durations so that the parallel units of a stage are equivalent. The problem involves 24 orders to schedule over one day, all released at time zero. There are however maximum transfer times between consecutive 20
ACCEPTED MANUSCRIPT stages, which can be enforced by Eq. (48), with the
values being 240, 240 and 120 min, for
=1, 2 and 3, respectively. Since all processing times are a multiple of five minutes (check Table 1), we set
=5 in the discrete-time formulation to match the accuracy of the continuous-time
formulation.
Table 1. Processing times
CR IP T
(48) (min) for flexible flowshop problem.
Order/Stage 35 45 20 45 25 25 25 45 45 30 30 30
50 60 55 60 70 75 75 60 70 70 50 60
AN US
75 80 80 95 85 85 85 95 95 95 80 80
M
80 85 85 90 85 85 80 80 80 80 80 80
ED
For the flexible flowshop instances, we first consider machine-dependent break periods and then
PT
common breaks for all units. The parameters defining the start of the machine-dependent breaks are given in Table 2, and were generated assuming the existence of a single operator to perform the
CE
preventive maintenance, which goes to all first-stage units in sequence before moving to the next stages and cycling when finished (this is inspired by a real-life constraint described in Castro et al.
AC
(2014)). The duration of a break period is the same for all machines and is computed by Eq. (49). Alternatively, the common break periods, which allow for important simplifications in the mathematical formulations, are given in Table 3 (subscript
was dropped to distinguish between
the two cases). Note that instances of growing complexity were generated by taking into account a subset of orders, the first up to
, and break periods. (49)
21
ACCEPTED MANUSCRIPT Table 2. Start of break periods,
(min), for flexible flowshop problem.
Break 360 385 410 435 460 485 510 535
560 605 650 695 740 785 830 875
CR IP T
120 150 180 210 240 270 300 330
Table 3. Location of common break periods (min) for flexible flowshop problem. Break
AN US
250 280 450 475 700 745
The second set of instances deals with a single stage batch plant comprising
=5 units in =25
M
parallel. The main data for Ex1-Ex4 is taken from Castro and Grossmann (2006) and involve
(Ex1-2) to 30 orders. The new information concerns the location of the break periods, which are
ED
now unit dependent. Since these instances can be solved in a few seconds, and to test the limits of
PT
the models, we have increased the number of orders by 5 per instance until reaching 60 in Ex10. There are at least three instances for each example, featuring
=1 to 3 or 4 break periods. The
CE
full set of data is provided as Supplementary Material, with the discrete-time formulation requiring
AC
=1 to be accurate.
4.1. Flexible flowshop instances We start the analysis by looking at the results in Table 4 for the flexible flowshop instances and
the non-preemptive mode of operation. The first thing to note is that the general precedence formulation can only solve the smallest instance to optimality while the discrete-time formulation can do a bit better in this respect, managing instances with up to
=12 orders and the 16-order
instance with 3 break periods. On the other hand, the discrete-time model fails to find a feasible 22
ACCEPTED MANUSCRIPT solution for one of the largest instances and returns just 10 best solutions (identified in bold in the MIP columns of Table 4) vs. 11 by the general precedence model. Despite the inability to close the optimality gap, due to the presence of the super big-M constraints in Eqs. (4) and (5), the general precedence model can find some of the best solutions rather quickly (check TTB column).
16
20
PT
24
AN US
12
M
10
1 2 1 2 1 2 1 2 3 1 2 3 1 2 3
Discrete-time formulation General precedence formulation BV LP MIP CPUs CPUs TTB MIP LP BV 14216 431.38 40.3 53.9 1.03 580 485 304 580 13168 449.38 14.8 3600 0.44 650 485 432 650 17600 485.85 85.7 3600 5.31 660 575 420 660 16256 513.19 65.6 3600 6.97 730 575 580 730 20984 539.36 1117 3600 117 745 665 552 745 19344 572.44 243 3600 16 815 815 665 744 27932 628.66 945 3600 3600 3577 915 835 864 25736 667.95 3600 3600 3437 980 835 1120 970 23028 694.45 670 3600 1354 1075 835 1376 1050 34800 714.92 1140 3600 3600 84 1105 1010 1240 32032 759.57 1280 3600 3600 3553 1170 1010 1560 28624 794.58 3600 3600 1239 1255 1010 1880 1215 41928 792.76 no solution 3600 3600 2365 1285 1170 1680 38640 840.5 1440 3600 3600 1049 1370 1170 2064 34584 881.73 3600 3600 3397 1430 1170 2448 1385
ED
8
CR IP T
Table 4. Results for flexible flowshop instances and non-preemptive scheduling (BV= binary variables, LP= makespan of linear relaxation (min), MIP= makespan (min), TTB= time to bestfound solution (CPUs), optimal or best-known solutions in bold, maximum computational time in italic).
A more interesting observation concerns the opposite behavior of the success rate with an
CE
increasing number of breaks. The problem becomes easier to solve by the discrete-time formulation
AC
due to the reduced domain for task execution, which is reflected in the lower number of binary variables and is more significant for non-preemptive scheduling (recall section 3.3 and compare to Table 5). The success rate also increases with decreasing binaries for the general precedence formulation, since more breaks now mean more binary variables. Table 5. Results for flexible flowshop instances and preemptive scheduling.
8
1
Discrete-time formulation General precedence formulation BV LP MIP CPUs CPUs TTB MIP LP BV 14944 408.44 525 19.7 3600 1.67 525 485 368 23
ACCEPTED MANUSCRIPT
12 16
20
24
14624 18544 18144 22144 21664 29488 28848 27696 36768 35968 34528 44256 43296 41568
420.04 458.13 471.88 509.79 524.01 595.08 612.25 629.58 684.14 702.02 724.80 762.31 781.32 808.33
585 610 640 705 730 910 910 975 1205 1360 1325 1435 1435 1440
38.5 93.7 158 275 516 3600 3600 3600 3600 3600 3600 3600 3600 3600
3600 3600 3600 3600 3600 3600 3600 3600 3600 3600 3600 3600 3600 3600
2.28 467 243 413 535 3562 680 3506 385 834 3456 3247 3491 191
585 610 640 705 730 875 915 980 1075 1090 1140 1240 1255 1305
485 575 575 665 665 835 835 835 1010 1010 1010 1170 1170 1170
560 500 740 648 936 992 1376 1760 1400 1880 2360 1872 2448 3024
CR IP T
10
2 1 2 1 2 1 2 3 1 2 3 1 2 3
For preemptive scheduling, the general precedence formulation can find 13 best solutions vs. 8
AN US
(compare bold values in Table 5). The overall better performance can be explained by the number of binary variables, which is one order of magnitude smaller, and the tighter LP relaxation. Note, however, that contrary to the discrete-time formulation, the LP relaxation does not change with the
M
number of breaks neither with the preemption mode. While this could indicate that the extra term in Eq. (38) compared to Eq. (10) is not important, it did provide significant speedups when
ED
considering smaller instances than those in Table 5.
PT
For instances with up to 12 orders, preemption allows to reduce the makespan by 8.4% on average and increasing the number of breaks from
=1 to 2 degrades the makespan. These two
CE
observations are no longer valid for the larger instances because of the suboptimal solutions from =20 and
=1 is 65 min
shorter than its preemptive counterpart, and the non-preemptive solutions for
=20 and 24 for
AC
the MILP solver. As an example, the non-preemptive solution for
=3 are significantly better than those for
=2. Note that this will not occur if both problems
are solved to optimality since the preemptive formulation is a relaxation of the other. 4.1.1. The case of common breaks It is now worth to consider the case of common breaks for all units, which allows for important simplifications in the RTN discrete-time formulation. For the current flexible flowshop with two 24
ACCEPTED MANUSCRIPT identical parallel units, the unit-dependent breaks were the only feature forcing the distinction between the execution of order in units
and
of stage
(with
and
).
We can thus cut by half the number of tasks, with task now being related to the execution of order in stage
instead of
as in Fig. 4. The aggregation of tasks over parallel units is
accompanied by an aggregation of identical units, meaning that the two unary resources of stage ; check Fig. 2) with initial availability
availability of two (
=1 are replaced by a resource
CR IP T
(
with an
=2). This still makes it possible to process two orders in parallel, while
considerably reducing symmetry.
AN US
Table 6 presents the results for the discrete-time formulation when considering common break periods. It also includes rows for no breaks (
=0) to better evaluate the impact of breaks on
computational performance. We can see that adding breaks keeps the computational time in the same order of magnitude, and that is easy to predict the preventive makespan from the solution for =1, 2 or 3 break periods, i.e. ∑
M
=0. One just needs to add 30, 55 and 100 min for
ED
, check values in Table 3. In other words, to generate the preemptive schedule from the schedule with no breaks, one just needs to delay the end of the tasks executed around the break
PT
periods for the duration of the break. On the other hand, it is difficult to predict the increase in makespan from preemptive to non-preemptive scheduling. There are two cases (
=20,
=1, 2)
CE
for which it is possible to cope with the reduced domain for task execution by changing the
AC
production sequence (check Fig. 9 for =16,
=2), as well as instances with minor (e.g. 5 min in
=1) and major degradation in makespan (e.g. 85 min in
=12,
=3, very close to
the total duration of breaks, 100 min). Table 6. Results for flexible flowshop problem and discrete-time formulation with common breaks.
8
0 1 2
Preemptive scheduling Non-preemptive scheduling BV LP MIP CPUs CPUs MIP LP BV 7664 371.44 485 10.6 7472 393.97 515 10.2 6.62 520 395.91 7114 7312 400.19 540 10.1 8.31 550 404.76 6590 25
ACCEPTED MANUSCRIPT
12
16
20
24
9512 9272 9072 11360 11072 10832 10400 15128 14744 14424 13848 18864 18384 17984 17264 22704 22128 21648 20784
426.38 451.62 463.66 477.81 504.66 519.74 525.50 562.90 590.47 608.12 624.66 647.82 677.82 695.88 717.52 725.41 753.18 772.10 797.49
575 605 630 665 695 720 765 835 865 890 935 1010 1040 1065 1115 1310 1210 1235 1285
32.4 40.0 53.4 123 84.2 145 133 572 285 1087 488 1142 1399 770 3600 3600 3600 3600 3600
27.2 7.81
615 675
467.26 493.87
8820 8148
56.6 16.4 14.3
710 770 850
523.16 10526 558.23 9706 572.72 8694
190 83.2 91.4
870 905 985
597.07 14010 634.88 12912 669.69 11558
1150 1192 690
1040 682.10 17462 1065 709.23 16078 1150 749.31 14374
3600 934 3600
1220 757.67 21026 1225 781.91 19382 1310 829.27 17354
CR IP T
0 1 2 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3
AN US
10
For the continuous-time formulation, the simplifications that can be made for adapting to common breaks are the following. One can substitute machine index
with stage index
in the
M
variables required for dealing with breaks and replace Eq. (27) with Eq. (50). Then, if we assume
ED
that the makespan occurs after the end of the last break period, we can further tighten Eq. (38) into Eq. (51), where the last term on the left-hand side includes the total duration of break periods. M11
PT
M11 M12
M21
CE
M21
M12
M22 M31 M32
AC
M41
M22 M31 M32 M41
M42
0
200
M42 400
600 Time (min)
800
1000
0
200
400
600 Time (min)
800
1000
Fig. 9. Optimal solutions for flexible flowshop problem with 20 orders and 2 common break points. The makespan (1065 min) for preemptive scheduling (on the left) does not deteriorate when switching to non-preemptive mode (on the right).
26
ACCEPTED MANUSCRIPT
⋁ [
]
⋁ [
]
[
]
(50) ∑
∑
∑
CR IP T
∑
(51)
Comparing Table 7 with Table 4 and Table 5, one can see that the smaller preemptive instances (up to
=12) can now be solved to optimality. For the specific problem data, Eq. (51) seems to
lead to a formulation with zero integrality gap (note that the results for the LP column in Table 7
AN US
match those of the MIP column in Table 6 for the proven optimal solutions). However, CPLEX found it difficult to guide the search in the right direction for the larger instances, failing to find the presumed optimum in all but one instance (
=20,
=2) and often terminating with close to one
M
million open nodes. In contrast, the integrality gap for the non-preemptive instances is greater than zero, leading to only two proven optimal solutions and seven other instances for which we know the
ED
returned solution is the optimum (from the results of the discrete-time formulation in Table 6).
PT
Table 7. Results for flexible flowshop problem and general precedence formulation with common breaks.
CE
0 1 2 0 1 2 0 1 2 3 0 1 2 3
AC
8
Preemptive scheduling Non-preemptive scheduling BV LP MIP CPUs CPUs MIP LP BV 176 485 485 0.29 272 515 515 0.93 2.84 520 515 240 368 540 540 1.97 18.2 550 540 304 260 575 575 0.97 380 605 605 7.97 3600 615 605 340 500 630 630 2.94 3600 675 630 420 360 665 665 496 504 695 695 14.3 3600 710 695 456 648 720 720 112 3600 770 720 552 792 765 765 826 3600 850 765 648 608 835 840 3600 800 865 870 3600 3600 870 865 736 992 890 900 3600 3600 910 890 864 1184 935 950 3600 3600 985 935 992
10
12
16
27
ACCEPTED MANUSCRIPT 20
24
0 1 2 3 0 1 2 3
920 1160 1400 1640 1296 1584 1872 2160
1010 1040 1065 1110 1170 1200 1225 1270
1020 1060 1065 1115 1180 1210 1255 1280
3600 3600 3316 3600 3600 3600 3600 3600
3600 3600 3600
1105 1040 1080 1070 1065 1240 1165 1110 1400
3600 3600 3600
1235 1200 1488 1235 1225 1680 1370 1270 1872
CR IP T
Overall, the discrete-time formulation outperforms its continuous-time counterpart for the scenario of common breaks, being able to solve 12 preemptive instances to optimality vs. 8 (
) with the difference being much larger for the nonpreemptive case (14 vs. 2).
AN US
4.2. Single-stage instances
The results for solving the single stage instances with the discrete-time formulation, featuring order due dates and unit-specific breaks, can be found in Table 8. Compared to the flexible flowshop instances, there is now a more profound difference in computational performance between
M
the two modes of operation. The non-preemptive mode is often one or two orders of magnitude
ED
faster and, when it is not possible to solve the instance in one hour, the success rate with respect to finding the optimal solution is higher. Note that all instances with
=3 can be solved to
PT
optimality and the number of suboptimal solutions is 5 vs. 14 when considering preemption. It is a
columns).
CE
consequence of the major reduction in problem size achieved by each break period (compare BV
AC
The single stage instances can be tackled by the general precedence formulation presented in section 3.1 after making
=1. However, as can be seen in Table 9, none of the four smallest
instances can be solved to proven global optimality for the cases of no breaks and preemptive scheduling. For the latter, CPLEX fails to find the optimal solution most of the times. The results for non-preemptive scheduling are slightly better. Contrary to previous behavior, computational performance improves with the increase in the number of breaks, despite the major increase in binary variables. Still, the general precedence formulation is clearly dominated by its multiple time 28
ACCEPTED MANUSCRIPT grid counterpart, which is the reason why fewer instances are considered. Compared to Table 10,
AC
CE
PT
ED
M
AN US
CR IP T
notice the weaker LP relaxation and the larger impact in problem size per added break period.
29
ACCEPTED MANUSCRIPT Table 8. Results for single-stage instances and discrete-time formulation.
30
EX5
35
EX6
40
EX7
45
EX8
50
EX9
55
AC
EX10
CR IP T
EX4
AN US
30
M
EX3
ED
25
CE
EX2
0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 4 0 1 2 3 4
PT
Instance EX1 25
Preemptive scheduling Non-preemptive scheduling BV LP MIP CPUs CPUs MIP LP BV 13548 139.86 188 18.7 12709 147.72 198 22.2 9.48 215 161.77 10349 12021 153.50 208 366 2.31 244 208.98 6555 11428 159.00 215 33.5 1.20 268 243.14 4350 13273 146.10 197 19.1 12434 155.98 207 16.4 10.5 224 171.89 10025 11748 166.41 219 20.3 1.95 247 219.00 6169 11156 172 227 16.3 1.09 266 246.81 4017 18063 125.24 178 3600 16146 136.53 195 3600 16.9 196 142.27 13541 14261 151.62 206 35.5 4.51 227 190.74 9281 13432 156.25 214 27.9 2.26 257 206.92 6923 16753 175.39 220 3600 15751 172.38 232 3600 8.53 242 189.05 12607 14987 178.77 238 2454 2.14 274 244.17 7909 14547 186.48 240 33.2 1.39 289 289 5206 25329 167.61 253 3600 24330 176.77 264 3600 3600 279 188.57 21695 23190 185.27 271 3600 9.28 294 225.88 15005 21858 196.40 281 3600 5.49 319 274.32 9867 30453 166.7 237 3600 29451 170.75 244 3600 3600 250 173.08 26982 28217 176.90 252 3600 3511 267 195.45 20526 26740 182.17 260 3600 54.8 291 215.82 14995 37497 161.66 256 3600 36178 169.64 267 3600 3600 276 176.13 32730 34710 176.41 275 3600 3600 286 188.77 24605 32905 182.39 285 3600 53.8 303 210.48 18020 40885 183.07 289 3600 39429 193.69 298 3600 3600 302 198.11 35818 37836 200.99 304 3600 3600 313 212.85 27185 35979 210.74 313 3600 96.8 326 243.13 20087 54749 186.43 311 3600 53171 195.27 321 3600 3600 327 202.06 49260 51330 202.00 327 3600 3600 333 217.76 38825 48931 210.00 341 3600 831 348 239.73 29427 46495 220.26 347 3600 17.3 372 292.93 21444 60714 180.78 313 3600 58866 189.27 324 3600 3600 328 195.03 54576 56854 195.69 330 3600 3600 332 208.96 44054 54205 206.9 338 3600 672 346 245.01 34275 51617 223.95 352 3600 3035 367 281.42 26303
60
30
ACCEPTED MANUSCRIPT Table 9. Results for subset of single-stage instances and general precedence formulation.
25
EX3
30
EX4
30
0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3
CR IP T
EX2
BV 425 800 1175 1550 425 800 1175 1550 585 1035 1485 1935 585 1035 1485 1935
Non-preemptive scheduling CPUs CPUs TTB MIP LP BV 3600 3600 3600 609 215 165.62 675 3600 920 26.7 244 165.62 925 3600 19.8 5.77 268 165.62 1175 3600 3600 3600 12.9 224 174.76 675 3600 9.12 5.13 247 174.76 925 3600 6.33 2.16 266 174.76 1175 3600 3600 3600 2626 196 160.99 885 3600 3600 1559 228 160.99 1185 3600 3600 710 257 160.99 1485 3600 3600 3600 1136 242 201.86 885 3600 3600 75.2 274 201.86 1185 3600 464 8.94 289 201.86 1485
AN US
Instance EX1 25
Preemptive scheduling LP MIP TTB 165.27 188 124 165.62 198 1718 165.62 208 1945 165.62 216 1582 174.28 197 19.4 174.76 209 27.8 174.76 220 948 174.76 234 310 160.84 178 33.4 160.99 195 3304 160.99 212 3269 160.99 230 3454 201.55 220 42.0 201.86 235 25.2 201.86 240 1084 201.86 245 2491
While the discrete-time formulation performs reasonably well for the single stage instances, it is
M
not as fast as the multiple time grid formulation. As can be seen in Table 10, all but six instances =4). By
optimality, we mean that the solutions obtained using the number of slots listed in the
columns
ED
can be solved to optimality, with just one being a non-preemptive instance (EX10 for
+1, which is the standard heuristic procedure for time-grid based
PT
were confirmed for
formulations (Harjunkoski et al., 2014). Notice that the LP relaxation for a particular example
CE
varies with the number of slots but not with the number of break periods. Since both the makespan and problem size increase with the number of breaks, it is not surprising to observe an increase in
AC
computational time. The values of
in Table 10 indicate the maximum number of orders allocated to a unit.
Dividing the number of orders in the instance ( bound on the value of
) by the number of units (
=5) yields a lower
that achieves feasibility, which for the given data is always an integer
number. It corresponds to a balanced distribution of orders over units, which is enough to ensure optimality in many cases (e.g., EX2 and EX7 for preemptive scheduling). Interestingly, the optimal
31
ACCEPTED MANUSCRIPT value of
is often not the same for the two operating modes, an indication of the major changes
required in order-unit assignment. As an illustration, we show in Fig. 10 the best-found/optimal schedules for EX8 with
=3.
Table 10. Results for single-stage instances and multiple time grid formulation.
EX6
EX7
40
45
50
AC
EX8
35
EX9
EX10
55
60
CPUs
Non-preemptive scheduling MIP LP BV
CR IP T
CPUs 0.62 2.56 10.0 13.3 1.14 1.23 2.17 3.87 2.21 1.57 2.34 13.4 2.32 12.1 4.14 28.6 0.82 3.40 10.6 34.7 13.5 26.0 8.08 98.5 2.71 5.28 14.7 61.1 49.1 41.5 139 3600 35.4 181 47.2 511 3600 93.9 723 3600 3600 3600
3.68 4.20 5.91
215 244 268
173.99 173.99 173.99
840 900 960
6 6 6
3.78 1.99 6.22
224 247 266
183.05 183.05 183.05
840 900 960
6 6 6
AN US
EX5
30
M
EX4
30
5 6 6 6 5 5 5 5 7 6 6 7 7 7 6 7 7 7 8 8 9 9 8 9 9 9 9 9 11 11 11 11 12 13 12 12 12 13 13 13 13 13
ED
EX3
25
0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 4 0 1 2 3 4
Preemptive scheduling BV LP MIP 650 187 188 870 173.99 198 960 173.99 208 1050 173.99 215 650 196 197 725 196 207 800 196 219 875 196 227 1085 166.32 178 1020 180 195 1110 180 206 1400 166.32 214 1085 206.99 220 1190 206.99 232 1110 224.08 238 1400 206.99 240 1260 250.53 253 1365 250.53 264 1680 245.91 271 1800 245.91 281 1845 226.98 235 1980 226.98 244 1880 233.46 252 2250 226.98 260 2070 253.95 256 2205 253.95 266 2340 253.95 273 2475 253.95 283 2805 281.80 286 2970 281.80 296 3135 281.80 303 3300 281.80 311 3360 302.65 308 3835 302.29 318 3720 302.65 324 3900 302.65 334 4080 302.65 346 3965 305.94 309 4160 305.94 319 4355 305.94 327 4550 305.94 335 4745 305.94 348
PT
EX2
25
CE
Instance EX1
1.46 8.99 3.14
196 227 257
180 166.32 180
990 1225 1110
6 7 6
7.89 6.99 13.0
242 274 289
206.99 206.99 206.99
1155 1225 1295
7 7 7
36.9 6.38 8.73
279 294 319
245.91 245.91 245.91
1520 1600 1680
8 8 8
18.7 36.8 31.6
250 267 291
226.98 226.98 226.98
1935 2025 2115
9 9 9
8.33 5.97 33.2
275 286 303
253.95 253.95 251.36
2160 2250 2600
9 9 10
92.8 24.1 103
300 313 326
281.80 287.48 281.80
2915 2750 3135
11 10 11
622 344 139 187
325 333 348 372
302.65 302.65 302.65 302.65
3480 3600 3720 3840
12 12 12 12
376 203 323 3600
324 330 346 367
308.55 305.94 305.94 305.94
3780 4225 4355 4485
12 13 13 13
32
AC
CE
PT
ED
M
AN US
CR IP T
ACCEPTED MANUSCRIPT
33
ACCEPTED MANUSCRIPT
22
3
M2
11
15
35
42
28
M3
M4
19
M5
1
0
2
8
7
40
20
48
27
31
36
50
25
38
39
4
44
12
49
100
50
33
14
32
17
18
24
23
10
30
37
150 Time
21
9
26
41
29
6
200
M1
43
M2
47
5
46
13
250
16
300
3
35
17
11
M4
0
15
36
19
6
50
20
25
37
27
40
1
M5
38
8
28
M3
45
34
22
39
44
31
5
4
7
100
10
150 Time
42
24
23
32
14
2
48
21
12
50
33
200
45
47
41
46
13
43
30
9
29
18
16
26
34
250
49
300
CR IP T
M1
Fig. 10. Optimal solutions for single stage problem, instance with 50 orders and 3 break points (preemptive schedule on the left, makespan=311; non-preemptive schedule on the right, makespan=326). 5. Conclusions
AN US
For cases where it is operationally feasible, taking advantage of the possibility of production tasks being interrupted when facing a break is important since it can improve equipment utilization and reduce the makespan. This paper has expanded the scope of scheduling formulations by showing
M
how to handle preemptive tasks in a computationally efficient way. Both discrete and continuoustime formulations were considered, the latter relying on the concept of general precedence or
ED
multiple time grids.
PT
Events occurring at specific points in time, like breaks, release and due dates, are valuable information that can be used in a preprocessing step to reduce the domain of the binary variables of
CE
a discrete-time formulation. Preemption makes the duration of the task dependent on its starting time, a constraint that can be reflected in the model parameters, which gain one index. This is a very
AC
minor difference compared to the standard formulation for non-preemptive tasks. Coping with break periods in continuous-time formulations, on the other hand, is associated to
new sets of binary variables and constraints, which typically make the optimization problem more difficult to solve. We have seen that these can be separated from the model part that handles the assignment of orders to units and sequencing of orders allocated to a unit, either explicitly for the general precedence formulation, or implicitly for multiple time grids. Non-preemptive tasks need to
34
ACCEPTED MANUSCRIPT finish before the start of a break or start after its end, leading to two new sets of binary variables. Preemptive tasks have the additional possibility of being interrupted during the break. Through the solution of a set of benchmark instances, we have found that the best formulation for a problem depends on the plant topology. The general precedence continuous-time formulation was found better for flexible flowshops with machine-dependent breaks. However, when dealing with
CR IP T
common breaks, the discrete-time formulation became faster, despite featuring an integrality gap greater than zero (unlike its continuous-time counterpart for preemptive scheduling) and generating MILPs that are one order of magnitude larger in size. It is primarily because continuous-time formulations cannot avoid using big-M constraints, either due to the sequencing of orders in a unit,
AN US
as with the general precedence model used for comparison, or due to the transfer from one stage to the next, like in multiple time grid formulations. Benefiting from a sharp/compact hull reformulation of the disjunctions used to derive the model, the multiple time grid formulation
M
solved faster the single stage instances with parallel units.
Overall, accounting for breaks in a scheduling problem keeps the computational time in the same
ED
order of magnitude.
PT
Acknowledgments
This work was supported by Fundação para a Ciência e Tecnologia (projects IF/00781/2013 and
CE
UID/MAT/04561/2019) and ABB Corporate Research.
AC
Nomenclature Sets/Indices
= break periods = break periods of machine = task = subset of tasks corresponding to the execution of order in stage = subset of tasks linked to machine = order = stage 35
ACCEPTED MANUSCRIPT 𝐿 = subset of tasks linked to last-stage processing = machine or unit = machines belonging to stage = resource = time slot = subset of time slots where task can start = relative time index Parameters
PT
ED
M
AN US
CR IP T
= starting time of break for machine = ending time of break for machine = due time of order = release time of order = time horizon = last stage of flexible flowshop = processing time of order in machine = initial availability of resource = starting time of time slot (e.g. in hours) = lower bound in finishing time of execution for order in stage = upper bound in finishing time of execution for order in stage = maximum transfer time of an order from stage to stage +1 = lower bound in starting time of execution for order in stage = upper bound in starting time of execution for order in stage = duration of every slot in the discrete-time grid (e.g. in hours) = amount of resource consumed/produced by non-preemptive task at a time relative to the start of the task = amount of resource consumed/produced by preemptive task started at slot , at a time relative to the start of the task = duration of non-preemptive task in number of time intervals in the discrete-time grid ̅ = duration of preemptive task when started at slot (in number of time intervals)
CE
Variables
AC
= makespan (sole variable being minimized in the objective function) = binary variable indicating that task starts execution at slot = extended processing time of order in stage due to common break = extended processing time of order in machine due to break = extended duration of slot in time grid of machine due to break = duration of slot in time grid of machine = excess amount of resource at the start of time slot = finishing time of execution for order in stage = finishing time of slot belonging to the time grid of machine = starting time of execution for order in stage = starting time of slot belonging to the time grid of machine = binary variable indicating that order is processed in machine = binary variable indicating that order is processed in slot of machine 36
ACCEPTED MANUSCRIPT
CR IP T
= binary variable indicating slot of machine has no order assigned to = binary variable indicating that order globally precedes order in stage (meaningful only if both orders are assigned to the same machine) = binary variable indicating that order starts execution in stage after common break = binary variable indicating that order ends execution in stage before common break = binary variable indicating that order in stage is interrupted during common break = binary variable indicating that order starts execution after break of machine = binary variable indicating that order ends execution before break of machine = binary variable indicating that order is interrupted during break of machine = binary variable indicating that slot of machine starts after break = binary variable indicating that slot of machine ends before break = binary variable indicating that slot of machine contains break
References
AN US
ANSI/ISA-95.00. 03-2005, 2005. Enterprise-Control System Integration. Part 3: Activity Models of Manufacturing Operations Management. ISA—The Instrumentation, Systems, and Automation Society, ResearchTriangle Park, NC.
M
Balas, E., 1979. Disjunctive programming. Annals of Discrete Mathematics 5, 3-51. Balas E., 1985. Disjunctive programming and a hierarchy of relaxations for discrete optimization
ED
problems. SIAM J. Algebraic Discrete Methods 6(3), 466-486. Batsyn, M., Goldengorin, B., Pardalos, P.M., Sukhov, P., 2014. Online heuristic for the
PT
preemptive single machine scheduling problem of minimizing the total weighted completion time. Optimization Methods & Software 29, 955-963.
CE
Brucker, P., Heitmann, S., Hurink, J., 2003. How useful are preemptive schedules? Operations Research Letters 31, 129-136.
AC
Castro, P.M., Grossmann, I.E., 2005. New Continuous-Time MILP Model for the Short-Term
Scheduling of Multistage Batch Plants. Ind. Eng. Chem. Res. 44, 9175-9190. Castro, P.M., Grossmann, I.E., 2006. An efficient MILP model for the short-term scheduling of
single stage batch plants. Comput. Chem. Eng. 30, 1003-1018. Castro, P.M., Grossmann, I.E., 2012. Generalized Disjunctive Programming as a Systematic Modeling Framework to Derive Scheduling Formulations. Ind. Eng. Chem. Res. 51, 5781-5792.
37
ACCEPTED MANUSCRIPT Castro, P.M., Grossmann, I.E., Veldhuizen, P., Esplin, D., 2014. Optimal Maintenance Scheduling of a Gas Engine Power Plant using Generalized Disjunctive Programming, AIChE J. 60, 2083-2097. Castro, P.M., Grossmann, I.E., Zhang, Q., 2018. Expanding scope and computational challenges in process scheduling. Comput. Chem. Eng. 114, 14-42. Castro, P.M., Sun, L., Harjunkoski, I., 2013. Resource-Task Network Formulations for Industrial
CR IP T
Demand Side Management of a Steel Plant. Ind. Eng. Chem. Res. 52, 13046-13058.
Floudas, C.A., Lin, X., 2005. Mixed Integer Linear Programming in Process Scheduling: Modeling, Algorithms, and Applications. Annals of Operations Research 139, 131-162.
Graham, R.L., Lawler, E.L., Lenstra, J.K, Rinnooy Kan, 1979. Optimization and Approximation
AN US
in Deterministic Sequencing and Scheduling: a Survey. Ann. Discrete Math. 5, 287-326.
Harjunkoski, I., 2016. Deploying scheduling solutions in an industrial environment. Comput. Chem. Eng. 91, 127–135.
Harjunkoski, I., Maravelias, C., Bongers, P., Castro, P.M., Engell, S., Grossmann, I.E., Hooker,
M
J., Méndez, C., Sand, G., Wassick, J., 2014. Scope for industrial applications of production
ED
scheduling models and solution methods. Comput. Chem. Eng. 62, 161–193. Javanmard, S., Afshar-Nadjafi, B., Niaki, S.T.A., 2017. Preemptive Multi-Skilled Resource
PT
Investment Project Scheduling Problem: Mathematical Modelling and Solution Approaches. Comput. Chem. Eng. 96, 55-68.
CE
Jeroslow, R.G., Lowe, J.K., 1984. Modelling with integer variables. Math. Programming Studies 22, North-Holland, Amsterdam, pp 167-184.
AC
Kondili, E., Pantelides, C.C., Sargent, R.W.H., 1993. A General Algorithm for Short-Term
Scheduling of Batch Operations – 1. MILP formulation. Comput. Chem. Eng. 17, 211-227. Kress, D., Dornseifer, J., Jaehn, F., 2019. An Exact Solution Approach for Scheduling
Cooperative Gantry Cranes. European Journal of Operational Research 273, 82-101. Lee, K., Zheng, F., Pinedo, M.L., 2019. Online Scheduling of Ordered Flow Shops. European Journal of Operational Research 272, 50-60.
38
ACCEPTED MANUSCRIPT .
.
.
. An MILP framework for short-term scheduling of single-stage
batch plants with limited discrete resources. In J. Grievink, & J. van Schijndel (Eds.), Computeraided chemical engineering (Vol. 10) (p. 721). Amsterdam, The Netherlands: Elsevier. Mosheiov, G., Sarig, A., Strusevich, V.A., Mosheiff, J., 2018. Two-Machine Flow Shop and Open Shop Scheduling Problems with a Single Maintenance Window. European Journal of Operational Research 271, 388-400.
CR IP T
Pantelides, C.C., 1994. Unified Frameworks for the Optimal Process Planning and Scheduling. In Proceedings of the Second Conference on Foundations of Computer Aided Operations; Cache Publications: New York, pp 253.
Pei, J., Fan, W., Pardalos, P.M., Liu, X., Goldengorin, B., Yang, S., 2015. Preemptive Scheduling
AN US
in Two-Stage Supply Chain to Minimize the Makespan. Optimization Methods & Software 30, 727747.
Peteghem, V.V., Vanhoucke, M., 2010. A Genetic Algorithm for the Preemptive and NonPreemptive Multi-Mode Resource-Constrained Project Scheduling Problem. European Journal of
M
Operational Research 201, 409-418.
Raman, R., Grossmann, I.E., 1994. Modeling and computational techniques for logic based
ED
integer programming. Comput. Chem. Eng. 18, 563-578. Shah, N., Pantelides, C.C., Sargent, R.W.H., 1993. A General Algorithm for Short-Term
PT
Scheduling of Batch Operations – 2. Computational Issues. Comput. Chem. Eng. 17, 229-244. Shioura, A., Shakhlevich, N.V., Strusevich, V.A., 2018. Preemptive Models of Scheduling with
CE
Controllable Processing Times and of Scheduling with Imprecise Computations: A Review of
AC
Solution Approaches. European Journal of Operational Research 266, 795-818. Velez, S., Dong, Y., Maravelias, C.T., 2017. Changeover Formulations for Discrete-Time Mixed-
Integer Programming Scheduling Models. European Journal of Operational Research 260, 949-963. Wang, K., Choi, S.H., 2012. A Decomposition-based Approach to Flexible Flow Shop Scheduling under Machine Breakdown. International Journal of Production Research 50, 215-234. Wassick, J.M., Ferrio, J., 2011. Extending the resource task network for industrial applications. Comput. Chem. Eng. 35(10), 2124-2140.
39