Paper 1
Paper 1
PII: S0360-8352(20)30081-4
DOI: https://doi.org/10.1016/j.cie.2020.106347
Reference: CAIE 106347
Please cite this article as: Meng, L., Zhang, C., Ren, Y., Zhang, B., Lv, C., Mixed-integer linear programming
and constraint programming formulations for solving distributed flexible job shop scheduling problem,
Computers & Industrial Engineering (2020), doi: https://doi.org/10.1016/j.cie.2020.106347
This is a PDF file of an article that has undergone enhancements after acceptance, such as the addition of a cover
page and metadata, and formatting for readability, but it is not yet the definitive version of record. This version
will undergo additional copyediting, typesetting and review before it is published in its final form, but we are
providing this version to give early visibility of the article. 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.
bState Key Lab of Digital Manufacturing Equipment and Technology, Huazhong University of Science and
Acknowledgements
This work was supported by Project of International Cooperation and Exchanges NSFC (No.51861165202), the
Key Research and Development Program of Guangdong Province (No. 2019B090921001), and the National
Natural Science Foundation of China (No. 51575211, 51705263, 51805330). We are grateful to the editor and
anonymous referees for their constructive comments to improve this paper.
Mixed-integer linear programming and constraint programming formulations for solving
distributed flexible job shop scheduling problem
Abstract: This paper intends to address the distributed flexible job shop scheduling problem(DFJSP) with
minimizing maximum completion time (makespan). In order to solve this problem, we propose four mixed integer
linear programming (MILP) models as well as a constraint programming (CP) model, among which four MILP
models are formulated based on four different modeling ideas. MILP models are effective in solving small-scaled
problems to optimality. DFJSP is NP-hard, therefore, we propose an efficient constraint programming (CP) model
based on interval decision variables and domain filtering algorithms. Numerical experiments are conducted to
evaluate the performance of the proposed MILP models and CP model. The results show that the sequence-based
MILP model is the most efficient one, and the proposed CP model is effective in finding good quality solutions for
the both the small-sized and large-sized instances. The CP model incomparably outperforms the state-of-the-art
algorithms and obtains new best solutions for 11 benchmark problems. Moreover, the best MILP model and CP
model have proved the optimality of 62 best-known solutions.
Keywords: distributed flexible job shop scheduling problem; mixed integer linear programming; constraint
programming; makespan
1. Introduction
In recent years, with increasingly decentral and global economy, a multi-factory environment becomes more
and more important. Therefore, the production scheduling in multi-factory production environment, referred to as
the distributed scheduling problem, has received more and more concerns (Li, Bai, Duan, Sang & Han et al., 2019;
Pan, Gao, Wang, Liang & Li, 2019; Ruiz, Pan & Naderi, 2019). Among all types of distributed scheduling
problems, the distributed flexible job shop scheduling problem (DFJSP) represents a multi-factory environment, in
which each factory is a flexible job shop (Nouiri, Bekrar, Jemai, Niar & Ammari, 2018; Wu, Liu & Zhao, 2018;
Sun, Lin, Li & Gen, 2019). Each job must be allocated to exactly one factory (De Giovanni & Pezzella, 2010).
Obviously, in DFJSP, three sub-problems must be solved:(1) determining the most suitable factory for each job
(factory selection problem), (2)determining the machine selection of all operations in each factory (machine
selection problem) and (3)determining the operation sequence on each machine in all factories (sequencing
problem). Obviously, DFJSP is a more difficult NP-hard problem than the traditional FJSP with only one factory.
When studying a scheduling problem especially a new one, it is very important to formulate a feasible
mathematical model for it. This is because mathematical models could solve the relatively small-sized problems to
optimality and further help mine the inherent information of the scheduling problem. Moreover, the optimal
solutions can be used as the reference standard to develop approximate methods (Li, Sang, Han, Wang & Gao,
2018). Therefore, in this paper, we formulate four MILP models for solving DFJSP based on four modeling ideas,
namely, sequence-based idea, position- based idea, time-indexed idea and adjacent sequence-based idea.
Due to inherent NP hardness of DFJSP, the MILP model is not effective to solve the relatively large-sized
problems. Since constraint programming (CP) shows good performances on scheduling problem with makespan
objective, we develop a CP formulation to solve DFJSP effectively. CP performs well at exploring feasible
solutions in short computational times and hence allow to find good quality solutions. This is because CP is adapt
at expressing complex relationships in terms of global constraints. Moreover, effective domain filtering algorithms
are used for solving these constraints in CP. Compared to other exact methods such as mathematical programming
(MP), CP requires much less number of decision variables and constraints. The effectiveness of the CP method has
been proven over many combinatorial problems such as parallel machine scheduling (Gedik, Rainwater,
Nachtmann & Pohl, 2016; Gedik, Kalathia, Egilmez & Kirac, 2018), production scheduling (Novara, Novas &
Henning, 2016), and assembly line balancing problems (Bukchin & Raviv, 2018). Moreover, it has been proved
that CP method is effective for solving both small-sized and large-sized problems (Gedik, Rainwater, Nachtmann &
Pohl, 2016; Gedik, Kalathia, Egilmez & Kirac, 2018). Compared with the existing research, the contributions of
this work can be concluded as follows:
(1) To the best of our knowledge, this work is the first attempt to solve DFJSP with exact algorithms namely
MILP model and CP model.
(2) Four different MILP models based on four different modeling ideas are proposed and evaluated. Due to
inherent NP hardness of DFJSP, the MILP models is not effective to solve the relatively large-sized problems. Thus,
a CP model is proposed to solve DFJSP.
(3) The MILP models and CP model are compared with state-of-the-art algorithms for solving DFJSP. The
experimental results show that the MILP models and CP model explore the optimal solutions for 62 benchmark
problem instances, for which the optimal solutions were previously unknown/unproven. The determination of
optimal solution is very meaningful for designing approximate methods.
(4) The CP model is very effective and outperforms all the state-of-the-art algorithms. Moreover, due to the
simplicity of the CP formulation and the ease of using the currently available solver IBM CP Optimizer, CP method
is very suitable for practitioners to implement in practice.
The rest of this paper is organized as follows: Section 2 presents the literature review of DFJSP. Then, in
Section 3, we formulate four MILP models based on different modeling ideas. Section 4 introduces the CP
formulation. Section 5 shows the experimental results. Finally, conclusion and future study are given in Section 6.
2. Literature review
The literature review of this paper is divided into three parts, among which the first one reviews the related
researches about DFJSP, the second one presents the related studies about MILP modeling for scheduling problems
and the last one shows the related studies about constraint programming approach for scheduling problems.
2.3 Literature review about constraint programming(CP) approach for scheduling problems
In recent years, with the advent of robust solvers such as IBM CP Optimizer and Gurobi, constraint
programming has been widely applied to a variety of scheduling problems, which can be attributed to many reasons.
Firstly, compared with MP, CP allows declarative, flexible and compact formulations, which make adding new
constraints to the scheduling much more convenient and straightforward. Especially, CP has competitive advantage
of representing complex constraints such as if-then and nonlinearity without reformulation over MP, which makes
it perform well for finding feasible solutions with good quality. Secondly, most meta-heuristic algorithms include
several optional parameters, and a fine tuning of parameters must be done to get best performance. However, CP
belongs to a category of off-the-rack and does not need much fine tuning. For a practitioner, he only needs to
provide a description of the studied problem (Ham & Cakici, 2016). Thirdly, CP can solve large problems
effectively. It has been proved that CP is very effective in solving many discrete optimization problems.
CP method has been widely used to solve parallel machine scheduling problem. For minimizing the processing
cost of unrelated parallel machine scheduling problem (UPM) with deadlines and release dates, Jain and
Grossmann (2001) proposed a hybrid MILP/CP model based on decomposition method, and compared it with pure
MILP model, pure CP model and combined MILP-CP model. The results showed that the hybrid MILP/CP model
performed very efficiently and outperformed all the other models. Edis and Oguz (2012) proposed a hybrid MP/CP
model for solving UPM with flexible resources. For solving UPM-SDST, Gedik et al. (2018) proposed an effective
CP model, which explored the optimal solutions for 283 benchmark problem instances. With regard to UPM-SDST
with job availability intervals, Gedik et al. (2016) proposed a combined CP/MP model based on logic-based
Benders algorithms to schedule jobs on unrelated parallel machines in a fixed planning horizon. For solving the
UPM with a resource constraint (UPMR), Fleszar and Hindi (2018) proposed a CP model, a MILP model for two-
machine UPMR and a two-stage heuristic based on the hybrid of MILP model and CP model. Experimental results
showed that the hybrid algorithm combining two-stage heuristic and a CP model outperformed the previously
proposed methods and found good solutions for much larger instances.
With regard to other scheduling problems, Ku and Beck (2016) proposed a CP model for solving job shop
scheduling problem (JSP) with minimizing makespan. For solving the same problem, Oliveira et al. (2015)
proposed two different CP models based on different modeling ideas and compared them with MILP model. For
solving FJSP with parallel batch processing machines (FJSP-PBM), Ham and Cakici (2016) developed a CP model
and compared it with MILP models. Novara et al. (2016) developed a CP model for scheduling problems in
multiproduct multistage batch plants. Kelbel and Hanzálek (2011) gave an application of CP in production
scheduling. Bukchin and Raviv (2018) applied the CP method to solve various assembly line balancing problems.
With regard to minimizing total tardiness of multi-level job scheduling in a flexible job shop environment, Na and
Park(Na & Park, 2014) proposed a MILP model and used CP method as a compared algorithm. Öztürk et al. (2015)
studied a problem of balancing and cyclic scheduling of flexible mixed model assembly lines with parallel stations,
and proposed a novel CP model with considering problem specific symmetry breaking constraints. In order to
minimize makespan of flexible job shop scheduling problem with lot streaming and lot sizing of the variable
sublots, Bożek and Werner (2018) proposed a MILP model and a CP model to solve it.
3. MILP models
3.1. Notations
The notations and decision variables used in this paper are given in Table 1.
Table 1 Notations and decision variables
Notations
i, i ' indexes for jobs
n total number of jobs
I set for jobs, where I 1,2, , n
j, j ' index for operations
ni number of operations of job i
n m ax maximum number of operations for all jobs
J i set for the operations of job i , where Ji 1,2, , ni
JJ i set for partial operations of job i ,where Ji 1,2,,ni 1
k,k '
indexes for machines
Oi , j the j-th operation of job i
f index for factory
rf number of factory
F set of factories, where F {1,..., rf }
mf number of machines in factory f
xi, j, f ,k binary constant that is equal to 1if operation O can be assigned to machine k
i, j in factory
f ,otherwise it is equal to 0
pti , j , f ,k processing time for operation O processed by machine k in factory f
i, j
The DFJSP can be described as follows: there are a set of independent jobs I 1,2,, n to be processed in a set
of factories F {1,..., rf } . Each factory stands for a flexible job shop problem (FJSP). Each job i includes ni operations
{Oi ,1 , Oi ,2 ,..., Oi , ni } and has its own processing route. Each operation O i, j can be processed by a predefined subset of
candidate machines in a factory K i, j, f Kf . Moreover, all the operations of the same job must be processed in the
same factory.
Moreover, some assumptions are given as follows:
All the factories, jobs, and machines are available at time zero.
In every factory, a machine can process at most one operation at a time.
For each operation, no preemption is allowed.
All the processing data is deterministic and known in advance.
Each operation is assigned to exactly one eligible factory and one machine of this factory.
For modeling DFJSP more easily, the transportation time Tri, f is included in the processing time of last
operation pti ,n , f ,k . i
The objective in this paper is to minimize makespan by reasonably solving the three subproblems namely
factory selection problem, machine selection problem and sequencing problem. The objective is given as below,
min Cmax
Model 1 is based on sequence-based modeling idea, and it is inspired by the MILP model for FJSP (Roshanaei,
Azab & ElMaraghy, 2013). To solve sequencing problem, Model 1 introduces precedence decision variable Yi, j,i , j , ' '
which determines the precedence relationship between two operations (adjacent or non-adjacent) on the same
machine (sequencing problem). X i , j , f ,k is introduced to determine the machine selection of all operations
(machine selection problem), and Zi, f is introduced to decide the factory selection of all jobs (factory selection
problem).
Z
f F
i, f 1, i I
(1)
Z i, f
kK i , j , f
X i , j , f ,k , i I , j J i , f F
(2)
Bi, j ( pti, j , f ,k Xi, j , f ,k ) Bi, j 1, i I , j JJi
f F kKi , j , f
(3)
Bi , j pti , j , f ,k X i , j , f ,k Bi' , j ' M (3 Yi , j ,i' , j ' X i , j , f ,k X i' , j ' , f ,k )
i I , i ' I , i i ' , j J i , j ' J i' , f F , k K i , j , f K i' , j ' , f (4)
Bi ' , j ' pti ' , j ' , f , k X i ' , j ' , f , k Bi , j M (2 Yi , j ,i ' , j ' X i , j , f , k X i ' , j ' , f , k )
i I , i ' I , i i ' , j J i , j ' J i' , f F , k K i , j , f K i' , j ' , f (5)
Cmax Bi ,ni ( pti ,ni , f ,k X i ,ni , f ,k ), i I
f F kKi ,ni , f
(6)
Bi , j 0, i I , j J i (7)
where, constraint set (1) represents that each job can be assigned to only one factory. Constraint set (2) restricts that
the operations of the same job must be processed in the same factory. In addition, constraint set (2) also restricts
that one operation is assigned to only one machine. Constraint set (3) enforces that the operations of the same job
must follow the predefined processing sequence. Constraint sets (4)-(5) ensure the nonoverlap of the operations
assigned to the same machine. Constraint set (6) defines the makespan. Constraint set (7) defines that the decision
variables are nonnegative.
Model 2 is based on position-based modeling idea, and it is inspired by the MILP model for DJSP (Naderi &
Azab, 2014) and the MILP model for FJSP (Fattahi, Saidi Mehrabad & Jolai, 2007). Model 2 introduces the
position decision variable Xi, j, f ,k , p to determine the machine selection and sequencing problems.
i I j J i
X i , j , f , k , p 1, f F , k K f , p P f , k
(11)
S f , k , p 1 S f , k , p ( pt X i , j , f , k , p ), f F , k K f , p PPf , k
i I j J i
i , j , f ,k
(12)
S f ,k , p Bi, j M (1 X i, j , f ,k , p ), i I , j Ji , f F , k Ki, j , f , p Pf ,k (13)
S f ,k , p Bi, j M (1 X i, j , f ,k , p ), i I , j J , f F , k Ki, j , f , p Pf ,k (14)
C m ax B i , n i ( p t i , n i , f , k X i , n i , f , k , p ), i I (15)
f F k K i , ni , f p P f ,k
S f ,k , p 0, f F , k K f , p Pf ,k (16)
where, constraint sets (8) and (9) do the same as what constraint sets (2) and (3) do respectively. Constraint set (10)
forces that the positions of each machine in each factory must be assigned to operations in sequential order.
Constraint set (11) indicates that each position of each machine in each factory can be allocated at no more than
one operation. Constraint set (12) does the same as what constraint sets (4)-(5) together do and ensures the
nonoverlap of the operations assigned to the same machine. Constraint sets (13)-(14) represent the relationship
between variables S f ,k, p and Bi , j . Constraint set (15) determines the makespan and constraint set (16) defines the
decision variable S f ,k, p .
Model 3 is based on time-indexed modeling idea, and it is inspired by the MILP model for OSP (Matta, 2009)
and the MILP model for HFSP (Schulz, Neufeld & Buscher, 2019). This model introduces two time-indexed binary
decision variables namely Yi, j, f ,k ,t and Ai , j , f ,k ,t to determine machine selection problem and sequencing problem.
For this model, the max planned time tmax should be decided reasonably in advance. This is the number of
decision variables and the number of constraints of Model 3 are heavenly dependent on tmax .
A
kKi ,i , f tT
i , j , f , k ,t Z i , f , i I , j J i , f F
(17)
Bi , j ( pt
f F k K i , j , f t T
i , j , f ,k Ai , j , f , k ,t ) Bi , j 1 , i I , j JJ i
(18)
Y
tT
i , j , f , k ,t A
tT
i , j , f , k ,t pti , j , f , k , i I , j J i , f F , k K i , j , f (19)
Yi, j, f ,k,t Yi, j, f ,k,t1 Ai, j, f ,k,t , i I , j Ji , f F, k Ki, j, f , t {2,..., tmax} (20)
Yi , j , f , k ,1 Ai , j , f , k ,1 , i I , j J i , f F , k K i , j , f (21)
Bi, j Ai, j , f ,k ,t t, i I , j Ji
f F tT kKi , j , f
(22)
Y
iI jJ i
i , j , f , k ,t 1, f F , k K f , t T (23)
C m ax B i , n i ( pt
f F k K i , ni , f t T
i , ni , f , k Ai , n i , f , k , t ), i I
(24)
where, constraint sets (17) and (18) do the same as what constraint sets (2) and (3) do respectively. Constraint set
(19) indicates that if the machine is selected to process a certain operation, the total time taken to machine the
operation must equal to its processing time on the machine. Constraint sets (20)-(21) describe the relationships
among decision variables Yi, j, f ,k ,t and Ai , j , f ,k ,t , and they enforces no interruption for each operation. Constraint set
(22) shows the relationship between Bi , j and Ai, j, f ,k,t . Constraint set (23) ensures that each machine can at most
process one operation at the same time, and constraint set (24) determines the makespan.
Model 4 is based on adjacent sequence-based modeling idea, and it is inspired by the MILP model for DJSP
(Naderi & Azab, 2014) and the MILP model for FJSP (Mousakhani, 2013). This model defines the adjacent
precedence decision variable Yi , j ,i, j , f ,k , which decades the precedence relationship between two adjacent operations
' '
on the same machine. Moreover, a dummy job 0 must be added to aid with defining and identifying the first job to
be processed on a machine.
Yi ' , j ' ,i , j , f , k Z i , f , i I , j J i , f F
(25)
i ' {0 I } j ' J ' k K i ' , j ' , f
i
Y i , j ,i ' , j ' , f , k
Y i ' , j ' ,i , j , f , k
,i {0 I }, j J i , f F , k K i , j , f
(26)
i ' {0 I } j ' J ' i ' {0 I } j ' J '
i i
Y i , j ,i ' , j ' , f , k
1, i {0 I }, j J i , f F , k K i , j , f
(27)
i ' {0 I } j ' J
i'
Bi , j Y pti , j , f ,k Bi , j 1 , i I , j JJi
f F kK ' i' {0I } j ' J '
i ' , j ' ,i , j , f , k (28)
i , j' , f i
Bi , j Bi ' , j '
f F k K i , j , f
(Yi ' , j ' ,i , j , f , k pti ' , j ' , f , k ) M (1 Y
f F k K f
i ' , j ' ,i , j , f , k
), i I , j J i , i ' {0 I }, j ' J i '
(29)
Cmax Bi ,ni (Y pti ,ni , f ,k ), i I
f F kK ' i ' {0 I } j ' J '
i ' , j ' ,i , ni , f , k (30)
i , j' , f i
B0, j 0, j J0
(31)
where, constraint set (25) has the same effect as constraint set (2). Constraint set (26) shows that if an operation is
assigned to a machine in a factory, it has both the successor and predecessor on the same machine. Constraint set
(27) ensures that each operation has at most one succeeding operation. Constraint set (28) does the same as what
constraint set (3) does. Constraint set (29) ensures the nonoverlap of the operations assigned to the same machine.
Constraint set (30) determines the makespan, and constraint set (31) defines that the operations of dummy job begin
at time 0.
Moreover, the makespan Cmax is no less than the sum of maximum machine load of all factories and minimum
transportation time of all jobs from all factories, therefore, the following equation holds,
C m ax m ax { {X i , j , f ,k p t i , j , f , k }} (33)
f F ,kK f i I j J
Cmax max {
f F , kK f
{Y i ' , j ' ,i , j , f , k
pti , j , f ,k }}
(36)
i ' {0 I } j ' J ' iI jJ i
i
Experiments show that by adding the above lower bound can improve the convergence efficiency of the MILP
model, therefore, the final MILP models used to solve DFJSP are coupled with these lower bounds. In detail, the
final Model 1 is coupled with constraint sets (32)-(33), the final Model 2 is coupled with constraint sets (32) and
(34), the final Model 3 is coupled with constraint sets (32) and (35), and the final Model 4 is coupled with
constraint sets (32) and (36).
4. CP model
Constraint programming is an exact solution method and well-known for its strength to find good quality
feasible solutions for large-sized combinatorial optimization problems within reasonable time. In order to convey
information between constraints and variables, CP works by using constraint propagation (filtering) method. Each
global constraint is associated with a propagation algorithm that is used to remove the values of variables from their
domains in order to prevent constraints from being infeasible (Gedik, Rainwater, Nachtmann & Pohl, 2016). In CP,
new decision variables named interval decision variable and sequence decision variable are two popularly used
variables.
An interval variable represents for a time interval, during which a task takes place and whose position in time is
unknown. Moreover, it has several attributes such as start, end and processing times. In this study, we utilize
interval decision variables to represent the start and end time of operations on their corresponding machines. The
interval variables can be optional; that is to say, it can or cannot be present in the final solution schedule. If an
interval variable is present in the final solution, it must be processed and numerical values must be assigned to its
start, end and processing times respectively. If otherwise, then the domain of the interval variable is left empty
(IBM, 2014).
With regard to a sequence decision variable, it represents for an ordering over a set of interval variables. For
example, if a sequence is defined over a set of interval variables {A1, A2, A3, A4}, a sequence solution can
be (A1, A3, A4, A2). Moreover, each interval variable in a sequence is associated with an attribute that reflects one
of its properties or a combination of properties that can be employed for sequencing decisions. To avoid
overlapping, related constraints must be added to the interval variables belonging to the sequence (IBM, 2014).
Here we show the CP model of DFJSP coded in IBM CPLEX Studio IDE 12.7.1. The followings represent the
used parameters, decision variables and related functions in the CP model. As far as we know, there is no
standardization in defining variables, related functions and constraints in the CP community. In different solvers
such as CPLEX, OR Tools and Gecode, features of the same meaning may use different names. Therefore, a CP
model coded in one solver may not be run successfully in another one (Gedik, Kirac, Bennet Milburn & Rainwater,
2017). The following model can further be understood by referring to the appendix, which shows the detailed
CP model code in IBM CPLEX Studio IDE 12.7.1.
Parameters:
opId The step of an operation in all the operations of all jobs.
OpsopId ,i , j It refers to operation Oi, j .
It refers to eligible factories, corresponding machines and processing times of
ModesopId , f ,k , pt operation Oi , j . OpsopId,i, j corresponds to no less than one ModesopId , f ,k , pt with the
same opId due to the flexible factories and machines.
Decision variables:
opsi , j interval object of OpsopId,i, j .
modesopId (optional ) optional interval object of ModesopId , f ,k , pt .
mchsk sequence decision variable, which includes a set of interval variables modesopId
that can be assigned to machine k .
Cmax makespan
Functions:
presenceOf (.) This function returns the presence status(Boolean type) of an interval variable.
If an interval variable is present then 1 is returned; otherwise, 0 is returned.
endOf (.) This function returns the end time of an interval variable if it is present;
otherwise, 0 is returned by default.
This function constrains that if predecessor and successor of an interval
endBeforeStart(.) variable is present, then the successor cannot start before the end of the
predecessor.
alternative(ops, modes) formulates the alternative constraint between interval
alternative(.)
variable ops and optional interval variable modes .
This function is used to constraint the non-overlapping of the intervals present
in a sequence variable. For example, a set of interval variables {a1,..., an} are
noOverlap (.)
present in a sequence. Then, whenever both interval variables ai and aj , i! j ,
ai must end before the start of a j or a j must end before the start of ai .
The four MILP models are compared from two aspects namely size complexity and computational complexity.
With regard to the comparison of size complexity, three norms namely the number of binary variables (NBVs), the
number of continuous variables (NCVs), and the number of constraints (NCs) are used. As to the computational
complexity, comparison norms such as the final solution value (CS), the CPU time and gap value are utilized,
among which the gap value represents the average optimality gap of the obtained solution within timelimit. Gap
can be calculated as |CS–BS|/|CS|%. Thereinto, BS is the obtained lower bound within the timelimit by the MILP
model. Obviously, a solution with the gap value of 0 is optimal. CS is the obtained solution within the timelimit.
The size complexity and computational complexity of the four proposed MILP models for solving 20 instances are
given in Tables 2-3.
5.2. Comparisons of the MILP model and CP model with state-of-the- art algorithms
In this section, we evaluate the performance of the best MILP model, that is Model 1, and CP model. We
compare Model 1 and CP model with three state-of-the-art algorithms for solving DFJSP, namely IGA (De
Giovanni & Pezzella, 2010), GA_JS (Lu, Wu, Tan, Peng & Chen, 2015) and GA_OP (Wu, Lin, Lin & Chen, 2017).
Tables 4-6 show the comparison results of 23 instances of 2-4 factories respectively. In Tables 4-6, the CPU time
(T) of IGA is on a 2.0 GHz Intel Core2 processor with 2.0 GB of RAM memory in C ++ (De Giovanni & Pezzella,
2010). The CPU times of GA_JS and GA_OP are on a 3.0 GHz AMD Athlon (TM) II ×4640 processor with 4.0 GB
of RAM memory in C ++ (Wu, Lin, Lin & Chen, 2017). RPE in Tables 4-6 represents for the relative percent error
of the best makespan (MK) to the lower bound (LB). AV denotes the average makespan of several repetitions. In
Tables 4-6, the solution with "*" denotes that it is better than the current best solution. The solution in bold is the
best one among all algorithms. In Tables 4-5, for CP model, the MK in parentheses corresponds to the T(s) in
parentheses. The MK in parentheses is the earliest good solution that CP model can obtain, and the T(s) in
parentheses is the earliest time for obtaining the earliest good solution. For example, with regard to la06 in Table 4,
CP model can obtain improved solution of 413 with 35.9s, and it can obtain the earliest `improved solution of 420
with 3.8s. Between 3.8s to 35.9s, CP model improves solution of 420 to 413. With regard to la11 in Table 4, CP
model can obtain solution of 545 within 600s, and it can obtain earliest 545 with 12.2s. Between 12.2s to 600s, CP
model cannot improve the solution of 545.
As far as we know, this paper is the first to formulate MILP models for DFJSP and is the first to implement CP
method to DFJSP. For solving DFJSP, we formulate four MILP models based on four different modeling ideas.
Due to the NP-hard characteristic of DFJSP, we proposed a CP model to solve large-sized instances more
effectively. We compare all the MILP models and the CP model with the existing algorithms. Experimental results
show that the sequence-based model is the most efficient for solving DFJSP. Moreover, the CP model outperforms
the state-of-art algorithms. More importantly, the proposed MILP model and CP model improve 11 best known
solutions for the benchmark instances and prove the optimality of 62 best-known solutions. Most importantly, the
MILP model and CP model can always obtain the same solution for all the instances with the same time, and no
repeat is needed. While meta-heuristic algorithms cannot assure the same solution of each repeat even for the
relatively small-sized instances.
As we can see from the comparison results, CP model outperforms all the other existing algorithms in terms of
both solution quality and efficiency. Moreover, due to the simplicity of the CP formulation and the ease of using
the currently available solver IBM CP Optimizer, CP method is very suitable for practitioners to implement and use
in practice.
In the future research, we will extend the four modeling ideas to other distributed scheduling problems and
formulate efficient MILP models for them. The MILP models and CP model proposed in this paper can be easily
modified to solve DFJSP with other objectives such total flowtime and earliness/tardiness. Moreover, we will try to
formulate MILP/CP hybrid model based on decomposition methods such as logic-based benders decomposition
(Gedik, Rainwater, Nachtmann & Pohl, 2016), and further merge the strengths of MILP and CP methods.
Appendix
References:
Bożek, A. & Werner, F. (2018). Flexible job shop scheduling with lot streaming and sublot size optimisation.
International Journal of Production Research, 56(19), 6391-6411.
Brandimarte, P. (1993). Routing and scheduling in a flexible job shop by tabu search. Annals of Operations Research,
41(3), 157-183.
Bukchin, Y. & Raviv, T. (2018). Constraint programming for solving various assembly line balancing problems. Omega,
78, 57-68.
Chan, F. T. S., Chung, S. H. & Chan, P. L. Y. (2006). Application of genetic algorithms with dominant genes in a
distributed scheduling problem in flexible manufacturing systems. International Journal of Production Research, 44(3),
523-543.
Chan, F. T. S., Chung, S. H., Chan, L. Y., Finke, G. & Tiwari, M. K. (2006). Solving distributed FMS scheduling
problems subject to maintenance: Genetic algorithms approach. Robotics and Computer-Integrated Manufacturing, 22(5-
6), 493-504.
Chan, F., Chung, S. & Chan, P. (2005). An adaptive genetic algorithm with dominated genes for distributed scheduling
problems. Expert Systems with Applications, 29(2), 364-371.
Chang, H. & Liu, T. (2017). Optimisation of distributed manufacturing flexible job shop scheduling by using hybrid
genetic algorithms. Journal of Intelligent Manufacturing, 28(8), 1973-1986.
Chung, S. H., Chan, F. T. S. & Chan, H. K. (2009). A modified genetic algorithm approach for scheduling of perfect
maintenance in distributed production scheduling. Engineering Applications of Artificial Intelligence, 22(7), 1005-1014.
De Giovanni, L. & Pezzella, F. (2010). An Improved Genetic Algorithm for the Distributed and Flexible Job-shop
Scheduling problem. European Journal of Operational Research, 200(2), 395-408.
Demir, Y. & Kürşat İşleyen, S. (2013). Evaluation of mathematical models for flexible job-shop scheduling problems.
Applied Mathematical Modelling, 37(3), 977-988.
Edis, E. B. & Oguz, C. (2012). Parallel machine scheduling with flexible resources. Computers & Industrial Engineering,
63(2), 433-447.
Fattahi, P., Saidi Mehrabad, M. & Jolai, F. (2007). Mathematical modeling and heuristic approaches to flexible job shop
scheduling problems. Journal of Intelligent Manufacturing, 18(3), 331-342.
Fleszar, K. & Hindi, K. S. (2018). Algorithms for the unrelated parallel machine scheduling problem with a resource
constraint. European Journal of Operational Research, 271(3), 839-848.
Gedik, R., Kalathia, D., Egilmez, G. & Kirac, E. (2018). A constraint programming approach for solving unrelated
parallel machine scheduling problem. Computers & Industrial Engineering, 121, 139-149.
Gedik, R., Kirac, E., Bennet Milburn, A. & Rainwater, C. (2017). A constraint programming approach for the team
orienteering problem with time windows. Computers & Industrial Engineering, 107, 178-195.
Gedik, R., Rainwater, C., Nachtmann, H. & Pohl, E. A. (2016). Analysis of a parallel machine scheduling problem with
sequence dependent setup times and job availability intervals. European Journal of Operational Research, 251(2), 640-
650.
Gicquel, C., Hege, L., Minoux, M. & van Canneyt, W. (2012). A discrete time exact solution approach for a complex
hybrid flow-shop scheduling problem with limited-wait constraints. Computers & Operations Research, 39(3), 629-636.
Ham, A. M. & Cakici, E. (2016). Flexible job shop scheduling problem with parallel batch processing machines: MIP
and CP approaches. Computers & Industrial Engineering, 102, 160-165.
Huang, Y. J. & Yao, X. F. (2012). Planning and scheduling of multiple flexible-shops based on analytical target
cascading and particle swarm optimization. Journal of Central South University(Science and Technology), 43(01), 151-
158.
IBM. (2014). IBM ILOG CPLEX Optimization Studio 12.6.
Jain, V. & Grossmann, I. E. (2001). Algorithms for Hybrid MILP/CP Models for a Class of Optimization Problems.
INFORMS Journal on Computing, 13(4), 258-276.
Jia, H. Z., Nee, A. Y. C., Fuh, J. Y. H. & Zhang, Y. F. (2003). A modified genetic algorithm for distributed scheduling
problems. Journal of Intelligent Manufacturing, 14(3-4), 351-362.
Jin, L., Tang, Q., Zhang, C., Shao, X. & Tian, G. (2016). More MILP models for integrated process planning and
scheduling. International Journal of Production Research, 54(14), 4387-4402.
Kelbel, J. & Hanzálek, Z. (2011). Solving production scheduling with earliness/tardiness penalties by constraint
programming. Journal of Intelligent Manufacturing, 22(4), 553-562.
Keskinturk, T., Yildirim, M. B. & Barut, M. (2012). An ant colony optimization algorithm for load balancing in parallel
machines with sequence-dependent setup times. Computers & Operations Research, 39(6), 1225-1235.
Ku, W. & Beck, J. C. (2016). Mixed Integer Programming models for job shop scheduling: A computational analysis.
Computers & Operations Research, 73, 165-173.
Li, J., Bai, S., Duan, P., Sang, H., Han, Y. & Zheng, Z. (2019). An improved artificial bee colony algorithm for
addressing distributed flow shop with distance coefficient in a prefabricated system. International Journal of Production
Research, 1-21.
Li, J., Sang, H., Han, Y., Wang, C. & Gao, K. (2018). Efficient multi-objective optimization algorithm for hybrid flow
shop scheduling problems with setup energy consumptions. Journal of Cleaner Production, 181, 584-598.
Lin, C., Lee, I. & Wu, M. (2019). Merits of using chromosome representations and shadow chromosomes in genetic
algorithms for solving scheduling problems. Robotics and Computer-Integrated Manufacturing, 58, 196-207.
Lu, P., Wu, M., Tan, H., Peng, Y. & Chen, C. (2015). A genetic algorithm embedded with a concise chromosome
representation for distributed and flexible job-shop scheduling problems. Journal of Intelligent Manufacturing, 29(1), 19-
34.
Manne, A. S. (1960). On the Job-Shop Scheduling Problem. Operations Research, 8(2), 219-223.
Marzouki, B., Driss, O. B. & Ghédira, K. (2018). Solving Distributed and Flexible Job shop Scheduling Problem using a
Chemical Reaction Optimization metaheuristic. Procedia Computer Science, 126, 1424-1433.
Matta, M. E. (2009). A genetic algorithm for the proportionate multiprocessor open shop. Computers & Operations
Research, 36(9), 2601-2618.
Meng, L., Zhang, C., Shao, X. & Ren, Y. (2019a). MILP models for energy-aware flexible job shop scheduling problem.
Journal of Cleaner Production, 210, 710-723.
Meng, L., Zhang, C., Shao, X., Ren, Y. & Ren, C. (2019b). Mathematical modelling and optimisation of energy-
conscious hybrid flow shop scheduling problem with unrelated parallel machines. International Journal of Production
Research, 4(57), 1119-1145.
Meng, L., Zhang, C., Shao, X., Zhang, B., Ren, Y. & Lin, W. (2019c). More MILP Models for Hybrid Flow Shop
Scheduling Problem and Its Extended Problems. International Journal of Production Research, 1-22.
Meng, L., Zhang, C., Zhang, B. & Ren, Y. (2019d). Mathematical Modeling and Optimization of Energy-Conscious
Flexible Job Shop Scheduling Problem With Worker Flexibility. IEEE Access, 7(1), 68043-68059.
Mousakhani, M. (2013). Sequence-dependent setup time flexible job shop scheduling problem to minimise total tardiness.
International Journal of Production Research, 51(12), 3476-3487.
Na, H. & Park, J. (2014). Multi-level job scheduling in a flexible job shop environment. International Journal of
Production Research, 52(13), 3877-3887.
Naderi, B. & Azab, A. (2014). Modeling and heuristics for scheduling of distributed job shops. Expert Systems with
Applications, 41(17), 7754-7763.
Naderi, B., Fatemi Ghomi, S. M. T., Aminnayeri, M. & Zandieh, M. (2011a). A study on open shop scheduling to
minimise total tardiness. International Journal of Production Research, 49(15), 4657-4678.
Naderi, B., Ghomi, S. M. T. F., Aminnayeri, M. & Zandieh, M. (2011b). Scheduling open shops with parallel machines
to minimize total completion time. Journal of Computational & Applied Mathematics, 235(5), 1275-1287.
Naderi, B., Khalili, M. & Khamseh, A. A. (2013). Mathematical models and a hunting search algorithm for the no-wait
flowshop scheduling with parallel machines. International Journal of Production Research, 52(9), 2667-2681.
Naderi, B., Zandieh, M. & Shirazi, M. A. H. A. (2009). Modeling and scheduling a case of flexible flowshops: Total
weighted tardiness minimization. Computers & Industrial Engineering, 57(4), 1258-1267.
Nouiri, M., Bekrar, A., Jemai, A., Niar, S. & Ammari, A. C. (2018). An effective and distributed particle swarm
optimization algorithm for flexible job-shop scheduling problem. Journal of Intelligent Manufacturing, 29(3), 603-615.
Novara, F. M., Novas, J. M. & Henning, G. P. (2016). A novel constraint programming model for large-scale scheduling
problems in multiproduct multistage batch plants: Limited resources and campaign-based operation. Computers &
Chemical Engineering, 93, 101-117.
Oliveira, R. M. E. S. & Ribeiro, M. S. F. O. (2015). Comparing Mixed & Integer Programming vs. Constraint
Programming by solving Job-Shop Scheduling Problems. Independent Journal of Management & Production, 6(1).
Özgüven, C., Özbakır, L. & Yavuz, Y. (2010). Mathematical models for job-shop scheduling problems with routing and
process plan flexibility. Applied Mathematical Modelling, 34(6), 1539-1548.
Öztürk, C., Tunalı, S., Hnich, B. & Örnek, A. (2015). Cyclic scheduling of flexible mixed model assembly lines with
parallel stations. Journal of Manufacturing Systems, 36, 147-158.
Pan, C. (1997). A study of integer programming formulations for scheduling problems. International Journal of Systems
Science, 28(1), 33-41.
Pan, Q., Gao, L., Wang, L., Liang, J. & Li, X. (2019). Effective heuristics and metaheuristics to minimize total flowtime
for the distributed permutation flowshop problem. Expert Systems with Applications, 124, 309-324.
Ren, Y., Yu, D., Zhang, C., Tian, G., Meng, L. & Zhou, X. (2017). An improved gravitational search algorithm for
profit-oriented partial disassembly line balancing problem. International Journal of Production Research, 55(24), 7302-
7316.
Ren, Y., Meng, L., Zhang, C., Zhao, F., Saif, U., Huang, A., Mendis, G. P. & Sutherland, J. W. (2020). An efficient
metaheuristics for a sequence-dependent disassembly planning. Journal of Cleaner Production, 245, 118644.
Rocha, P. L., Ravetti, M. G., Mateus, G. R. & Pardalos, P. M. (2008). Exact algorithms for a scheduling problem with
unrelated parallel machines and sequence and machine-dependent setup times. Computers & Operations Research, 35(4),
1250-1264.
Roshanaei, V., Azab, A. & ElMaraghy, H. (2013). Mathematical modelling and a meta-heuristic for flexible job shop
scheduling. International Journal of Production Research, 51(20), 6247-6274.
Ruiz, R., Pan, Q. & Naderi, B. (2019). Iterated Greedy methods for the distributed permutation flowshop scheduling
problem. Omega, 83, 213-222.
Ruiz, R., Şerifoğlu, F. S. & Urlings, T. (2008). Modeling realistic hybrid flexible flowshop scheduling problems.
Computers and Operations Research, 35(4), 1151-1175.
Schulz, S., Neufeld, J. S. & Buscher, U. (2019). A multi-objective iterated local search algorithm for comprehensive
energy-aware hybrid flow shop scheduling. Journal of Cleaner Production, 224, 421-434.
Shen, L., Dauzère-Pérès, S. & Neufeld, J. S. (2018). Solving the flexible job shop scheduling problem with sequence-
dependent setup times. European Journal of Operational Research, 265(2), 503-516.
Sun, L., Lin, L., Li, H. & Gen, M. (2019). Large scale flexible scheduling optimization by a distributed evolutionary
algorithm. Computers & Industrial Engineering, 128, 894-904.
Vallada, E. & Ruiz, R. (2011). A genetic algorithm for the unrelated parallel machine scheduling problem with sequence
dependent setup times. European Journal of Operational Research, 211(3), 612-622.
Wagner, H. M. (1959). An integer linear-programming model for machine scheduling. Naval Research Logistics
Quarterly, 6(2), 131-140.
Wu, J. & Chien, C. (2008). Modeling semiconductor testing job scheduling and dynamic testing machine configuration.
Expert Systems with Applications, 35(1-2), 485-496.
Wu, M., Lin, C., Lin, C. & Chen, C. (2017). Effects of different chromosome representations in developing genetic
algorithms to solve DFJS scheduling problems. Computers & Operations Research, 80, 101-112.
Wu, R., Guo, S. S., Li, Y. B. & Wang, L. (2018). An improved artificial bee colony algorithm for distributed and flexible
job-shop scheduling problem. Control and Decision, 1-11.
Wu, X., Liu, X. & Zhao, N. (2018). An improved differential evolution algorithm for solving a distributed assembly
flexible job shop scheduling problem. Memetic Computing, 6, 1-21.
Zhang, B., Pan, Q., Gao, L., Meng, L., Li, X. & Peng, K. (2019). A Three-Stage Multiobjective Approach Based on
Decomposition for an Energy-Efficient Hybrid Flow Shop Scheduling Problem. IEEE Transactions on Systems, Man,
and Cybernetics: Systems, 1-16.
Zhang, L., Tang, Q., Wu, Z. & Wang, F. (2017). Mathematical modeling and evolutionary generation of rule sets for
energy-efficient flexible job shops. Energy, 138, 210-227.
Ziaee, M. (2014). A heuristic algorithm for the distributed and flexible job-shop scheduling problem. The Journal of
Supercomputing, 67(1), 69-83.
Highlights
Four different MILP models based on four different modeling ideas are proposed.
A constraint programming (CP) model is designed.
MILP and CP models prove the optimality of 62 benchmark instances.
CP model obtains new best solutions for 11 benchmark instances.
Credit Author Statement
Leilei Meng: Conceptualization, Methodology, Software, Writing - original draft. Chaoyong Zhang: Supervision,
Writing - review & editing, Funding acquisition. Yaping Ren: Investigation. Biao Zhang: Formal analysis. Chang Lv:
Software.