Mixed-Integer Linear Programming and Constraint Programming Formulations For Solving Distributed Flexible Job Shop Scheduling Problem
Mixed-Integer Linear Programming and Constraint Programming Formulations For Solving Distributed Flexible Job Shop Scheduling Problem
a
School of Computer Science, Liaocheng University, Liaocheng 252059, China
b
State Key Lab of Digital Manufacturing Equipment and Technology, Huazhong University of Science and Technology, Wuhan 430074,China
c
School of Intelligent Systems Science and Engineering, Jinan University (Zhuhai Campus), Zhuhai 519070, China
Keywords: This paper intends to address the distributed flexible job shop scheduling problem (DFJSP) with minimizing
Distributed flexible job shop scheduling maximum completion time (makespan). In order to solve this problem, we propose four mixed integer linear
problem programming (MILP) models as well as a constraint programming (CP) model, among which four MILP models
Mixed integer linear programming are formulated based on four different modeling ideas. MILP models are effective in solving small-scaled pro-
Constraint programming
blems to optimality. DFJSP is NP-hard, therefore, we propose an efficient constraint programming (CP) model
Makespan
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.
⁎
Corresponding author.
E-mail address: [email protected] (C. Zhang).
https://doi.org/10.1016/j.cie.2020.106347
Received 5 September 2019; Received in revised form 22 December 2019; Accepted 7 February 2020
Available online 11 February 2020
0360-8352/ © 2020 Published by Elsevier Ltd.
L. Meng, et al. Computers & Industrial Engineering 142 (2020) 106347
scheduling (Novara, Novas, & Henning, 2016), and assembly line bal- (2010) developed an improved genetic algorithm (IGA), in which the
ancing problems (Bukchin & Raviv, 2018). Moreover, it has been chromosome representation, referred to as SGP, models only two DFJSP
proved that CP method is effective for solving both small-sized and decisions (namely assignment problem and sequencing problem) and
large-sized problems (Gedik et al., 2016, 2018). Compared with the the routing problem is determined by a heuristic rule. Moreover, a new
existing research, the contributions of this work can be concluded as local search method based on critical factory was proposed, and it was
follows: further implemented in references (Lu, Wu, Tan, Peng, & Chen, 2015;
Wu, Lin, Lin, & Chen, 2017). Lu et al. (2015) proposed a GA embedded
(1) To the best of our knowledge, this work is the first attempt to solve with a concise chromosome representation (GA_JS), in which the
DFJSP with exact algorithms namely MILP model and CP model. chromosome representation, referred to as SJS, presents DFJSP solu-
(2) Four different MILP models based on four different modeling ideas tions only by job sequences. The three sub-problems were determined
are proposed and evaluated. Due to inherent NP hardness of DFJSP, by three heuristic rules in the decoding process. Chang and Liu (2017)
the MILP models is not effective to solve the relatively large-sized developed a hybrid genetic algorithm (HGA), in which the chromosome
problems. Thus, a CP model is proposed to solve DFJSP. representation, referred to as SCL, can explicitly decide all the three
(3) The MILP models and CP model are compared with state-of-the-art sub-problems. In SCL encoding, each gene is a float number, the integer
algorithms for solving DFJSP. The experimental results show that part and decimal part of which represent the operation sequence and
the MILP models and CP model explore the optimal solutions for 62 the machine-factory respectively. Wu et al. (2017) analysed the existing
benchmark problem instances, for which the optimal solutions were chromosome representations and decoding methods, and proposed a
previously unknown/unproven. The determination of optimal so- GA with a chromosome representation (called SOP), in which only the
lution is very meaningful for designing approximate methods. sequencing problem is decided. The other two DJFSP sub-problems
(4) The CP model is very effective and outperforms all the state-of-the- were determined by two heuristic rules in the decoding respectively.
art algorithms. Moreover, due to the simplicity of the CP formula- More recently, Lin, Lee, and Wu (2019) proposed two incomplete
tion and the ease of using the currently available solver IBM CP chromosome representations (SG1 and SG2) and four GAs for solving
Optimizer, CP method is very suitable for practitioners to imple- DFJSP with considering machine maintenance. Moreover, an effective
ment in practice. methodology for generating new chromosomes (called shadow chro-
mosomes) from good quality solutions was proposed to improve the
The rest of this paper is organized as follows: Section 2 presents the performance of the proposed GAs. The experimental results showed
literature review of DFJSP. Then, in Section 3, we formulate four MILP that the GA with SG2 encoding scheme and the method for generating
models based on different modeling ideas. Section 4 introduces the CP shadow chromosomes outperformed the other three GAs and two ex-
formulation. Section 5 shows the experimental results. Finally, con- isting state-of-the-art algorithms.
clusion and future study are given in Section 6. Ziaee (2014) proposed a fast-constructive heuristic algorithm for
solving DFJSP. The computational results showed that the heuristic was
2. Literature review more computationally efficient than IGA, while the latter outperformed
the former in terms of best solution. Wu, Guo, Li, and Wang (2018)
The literature review of this paper is divided into three parts, among proposed an improved differential evolution simulated annealing al-
which the first one reviews the related researches about DFJSP, the gorithm to solve DFJSP with minimizing the earliness/tardiness and the
second one presents the related studies about MILP modeling for total cost simultaneously. Other meta-heuristic algorithms such as
scheduling problems and the last one shows the related studies about chemical reaction optimization (CRO) algorithm (Marzouki, Driss, &
constraint programming approach for scheduling problems. Ghédira, 2018), artificial bee colony algorithm (ABC) (Wu et al., 2018),
and particle swarm optimization (PSO) algorithm (Huang & Yao, 2012)
2.1. Literature review about DFJSP have been also tried to solve DFJSP.
Obviously, existing research about DFJSP mainly focuses on meta-
In order to minimize makespan of distributed job shop scheduling heuristic and heuristic algorithms, especially GA. They are approximate
problem (DJSP), Jia, Nee, Fuh, and Zhang (2003) proposed a modified methods and cannot guarantee the optimal solutions even for small-
genetic algorithm (MGA), in which the encoding of chromosome was sized problems. Moreover, the performances of meta-heuristic algo-
designed straightforward based on classic job-shop problems without rithms depend heavily on encoding and decoding rules. For a meta-
considering the machine flexibility. For dealing with DJSP, Naderi and heuristic algorithm, different encoding and decoding rules will show
Azab (2014) proposed two different MILP models on the basis of se- great difference on performance. If they are not well designed, the
quence-based and position-based modeling ideas at the first time. The meta-heuristic algorithms may perform very poorly. Therefore, exact
two MILP models could solve small-sized problems to optimality with algorithms and other easily implemented algorithms are worthy of re-
using CPLEX, and the results showed the sequence-based MILP model search. In this paper, we propose to use two exact methods namely
was effective for solving DJSP (Naderi & Azab, 2014). MILP method and CP method to solve DFJSP, and explore their ad-
As far as we know, Chan, Chung, and Chan (2005) firstly in- vantages and disadvantages for dealing with DFJSP with minimizing
vestigated the DFJSP. A genetic algorithm with dominant genes makespan.
(GADG) was proposed to solve DFJSP. In addition, a new chromosome
encoding (called SCH) was proposed, where genes specify all the 2.2. Literature review about MILP modeling of scheduling problems
scheduling information namely job, operation, machine and factory.
Thus, the encoding can determine all the three sub-problems of DFJSP. In recent years, with the rapid development of computer perfor-
Besides, in GADG, one crossover operator, two mutation operators, mance as well as the advent of several efficient optimization softwares
elitist strategy, and similarity checking were designed contrapuntally. (e.g., CPLEX and GUROBI), an increasing number of research has been
Then, Chan, Chung, Chan, Finke, and Tiwari (2006), Chan, Chung, and paying attention to MILP modeling for scheduling problems (Ren et al.,
Chan (2006) extended the proposed GADG to solve the DFJSP with 2020, 2017). The MILP models used for scheduling problems can be
considering machine maintenance. Moreover, based on GADG, Chung, classified into four major categories. These categories are position-
Chan, and Chan (2009) proposed a modified GADG with an improved based modeling idea (Wagner, 1959), sequence-based modeling idea
local search method to decide the job sequence and machine main- (Manne, 1960), time-indexed modeling idea (Brandimarte, 1993) and
tenance. adjacent sequence-based modeling idea (Mousakhani, 2013). The main
For optimizing makespan of DFJSP, De Giovanni and Pezzella difference between these models lies in the definition of the variables
2
L. Meng, et al. Computers & Industrial Engineering 142 (2020) 106347
used to determine the sequencing problem. Position-based modeling (2011) proposed four MILP models for open shop scheduling to mini-
method divides a machine into several processing positions according mize total tardiness. For dealing with DJSP, Naderi and Azab (2014)
to the time sequence, and introduces variables for deciding whether an proposed two MILP models based on position-based and adjacent se-
operation is assigned to a position of a machine. With regard to se- quence-based modeling methods respectively. Besides, Naderi, Khalili,
quence-based modeling idea, it defines decision variables that de- and Khamseh (2013) proposed two MILP models for no-wait flowshop
termine the precedence relationship between two different operations scheduling with parallel machines on the basis of sequence-based and
(adjacent or non-adjacent) on the same machine. Time-indexed mod- adjacent sequence-based ideas respectively. Based on sequence-based
eling idea divides the total processing time into processing periods and position-based ideas, Rocha, Ravetti, Mateus, and Pardalos (2008)
according to a certain time interval, and binary decision variables that developed two MILP models to solve UPM-SDST. Based on time-indexed
determine whether a certain time period on one machine is used to and adjacent sequence-based modeling methods, Matta (2009) pro-
process some operation are introduced. The adjacent sequence-based posed two MILP models for flexible open shop problem. Based on the
modeling idea introduces the decision variables that determine the four modeling ideas, Meng, Zhang, Shao, Zhang, et al. (2019) for-
precedence relationship between two adjacent operations on the same mulated several new MILP models for HFSP-UPM and its extended
machine. problems with considering sequence-dependent setup times, no-wait
Based on sequence-based modeling idea, a MILP model was firstly and blocking constraints.
proposed by Özgüven, Özbakır, and Yavuz (2010) for FJSP, and then Based on different modeling ideas, different decision variables and
improved MILP models were developed in reference (Roshanaei, Azab, constraints will be introduced. The performance of mathematical model
& ElMaraghy, 2013). Demir and Kürşat İşleyen (2013) compared the is mainly determined by the numbers of binary decision variables,
MILP model proposed by Özgüven et al. (2010) with four non-linear constraints and continuous decision variables (Jin, Tang, Zhang, Shao,
models. The experimental results showed that the linear model out- & Tian, 2016; Naderi & Azab, 2014; Pan, 1997). Therefore, the per-
performed the four non-linear models. Also based on sequence-based formances of MILP models based on different modeling ideas may differ
idea, Shen, Dauzère-Pérès, and Neufeld (2018) developed a MILP model greatly.
for solving FJSP with sequence-dependent setup times (SDST), and
Naderi, Ghomi, Aminnayeri, and Zandieh (2011) proposed a MILP 2.3. Literature review about constraint programming (CP) approach for
model for solving flexible open shop scheduling problem. scheduling problems
On the basis of position-based modeling idea, Fattahi, Saidi
Mehrabad, and Jolai (2007) established a MILP model for FJSP with In recent years, with the advent of robust solvers such as IBM CP
minimizing makespan for the first time, in which two binary decision Optimizer and Gurobi, constraint programming has been widely ap-
variables were used. Then, an improved MILP model with only one plied to a variety of scheduling problems, which can be attributed to
binary decision variable and less constraints was proposed (Roshanaei many reasons. Firstly, compared with MP, CP allows declarative, flex-
et al., 2013). Zhang, Tang, Wu, and Wang (2017) proposed a MILP for ible and compact formulations, which make adding new constraints to
FJSP with minimizing energy consumption, and Meng, Zhang, Shao, the scheduling much more convenient and straightforward. Especially,
and Ren (2019) proposed six more efficient MILP models. For solving CP has competitive advantage of representing complex constraints such
hybrid flow shop scheduling problem with unrelated parallel machines as if-then and nonlinearity without reformulation over MP, which
(HFSP-UPM) with minimizing energy consumption, Meng, Zhang, Shao, makes it perform well for finding feasible solutions with good quality.
Ren, and Ren (2019) formulated five MILP models with different de- Secondly, most meta-heuristic algorithms include several optional
cision variables. In order to solve multi-objective HFSP-UPM with si- parameters, and a fine tuning of parameters must be done to get best
multaneously minimizing makespan and energy consumption, Zhang performance. However, CP belongs to a category of off-the-rack and
et al. (2019) proposed a multi-objective MILP model based on weight does not need much fine tuning. For a practitioner, he only needs to
coefficient method. Taking worker flexibility into consideration, Meng, provide a description of the studied problem (Ham & Cakici, 2016).
Zhang, Zhang, and Ren (2019) formulated two MILP models based on Thirdly, CP can solve large problems effectively. It has been proved that
different modeling ideas. CP is very effective in solving many discrete optimization problems.
Based on time-indexed modeling method, Wu and Chien (2008) CP method has been widely used to solve parallel machine sche-
formulated a MILP model for semiconductor final test scheduling pro- duling problem. For minimizing the processing cost of unrelated par-
blem, which is an extension of classical FJSP with considering machine- allel machine scheduling problem (UPM) with deadlines and release
dependent setup times and other limited resource constraints. Also dates, Jain and Grossmann (2001) proposed a hybrid MILP/CP model
based on this idea, Gicquel, Hege, Minoux, and van Canneyt (2012) based on decomposition method, and compared it with pure MILP
proposed a MILP for HFSP with limited-wait constraints. model, pure CP model and combined MILP-CP model. The results
Based on adjacent sequence-based modeling method, Mousakhani showed that the hybrid MILP/CP model performed very efficiently and
(2013) proposed a MILP model for FJSP with minimizing total tardi- outperformed all the other models. Edis and Oguz (2012) proposed a
ness. Also based on this idea, Vallada and Ruiz (2011) developed a hybrid MP/CP model for solving UPM with flexible resources. For sol-
MILP model for unrelated parallel machine scheduling problem with ving UPM-SDST, Gedik et al. (2018) proposed an effective CP model,
sequence dependent setup times (UPM-SDST) with minimizing make- which explored the optimal solutions for 283 benchmark problem in-
span, Naderi, Zandieh, and Shirazi (2009) proposed a MILP model for stances. With regard to UPM-SDST with job availability intervals, Gedik
solving HFSP with total weighted tardiness minimization, Keskinturk, et al. (2016) proposed a combined CP/MP model based on logic-based
Yildirim, and Barut (2012) developed a MILP model for UPM-SDST with Benders algorithms to schedule jobs on unrelated parallel machines in a
optimizing load balancing, and Ruiz, Şerifoğlu, and Urlings (2008) fixed planning horizon. For solving the UPM with a resource constraint
proposed a MILP model for solving realistic HFSP with some jobs (UPMR), Fleszar and Hindi (2018) proposed a CP model, a MILP model
skipping stages. for two-machine UPMR and a two-stage heuristic based on the hybrid of
Based on position-based, sequence-based and time-indexed mod- MILP model and CP model. Experimental results showed that the hybrid
eling methods, Pan (1997) proposed different mathematical models of algorithm combining two-stage heuristic and a CP model outperformed
job shop scheduling problem (JSP) and flow shop scheduling problem the previously proposed methods and found good solutions for much
(FSP). Also based on these three modeling ideas, Demir and Kürşat larger instances.
İşleyen (2013) analyzed and compared different (linear and non-linear) With regard to other scheduling problems, Ku and Beck (2016)
mathematical models of flexible job shop (FJSP). Similarly, based on proposed a CP model for solving job shop scheduling problem (JSP)
these three ideas, Naderi, Fatemi Ghomi, Aminnayeri, and Zandieh with minimizing makespan. For solving the same problem, Oliveira and
3
L. Meng, et al. Computers & Industrial Engineering 142 (2020) 106347
Ribeiro (2015) proposed two different CP models based on different included in Model 1.
modeling ideas and compared them with MILP model. For solving FJSP
with parallel batch processing machines (FJSP-PBM), Ham and Cakici 3.3.2. Constraint sets
(2016) developed a CP model and compared it with MILP models. In Model 1, the following constraint sets (1)–(7) are needed.
Novara et al. (2016) developed a CP model for scheduling problems in
multiproduct multistage batch plants. Kelbel and Hanzálek (2011) gave Zi, f = 1, i I
an application of CP in production scheduling. Bukchin and Raviv f F (1)
(2018) applied the CP method to solve various assembly line balancing
Zi, f = Xi, j, f , k , i I, j Ji , f F
problems. With regard to minimizing total tardiness of multi-level job k K i, j , f (2)
scheduling in a flexible job shop environment, Na and Park (2014)
proposed a MILP model and used CP method as a compared algorithm. Bi, j + (pti, j, f , k Xi, j, f , k ) Bi, j + 1, i I, j JJi
Öztürk, Tunalı, Hnich, and Örnek (2015) studied a problem of balan- f F k Ki, j, f (3)
cing and cyclic scheduling of flexible mixed model assembly lines with
parallel stations, and proposed a novel CP model with considering Bi, j + pti, j, f , k Xi, j, f , k Bi , j + M (3 Yi, j, i , j Xi, j, f , k Xi , j , f , k )
problem specific symmetry breaking constraints. In order to minimize i I, i I, i < i , j Ji , j Ji , f F, k K i, j , f Ki ,j ,f (4)
makespan of flexible job shop scheduling problem with lot streaming
and lot sizing of the variable sublots, Bożek and Werner (2018) pro- Bi , j + pti , j , f , k Xi , j , f , k Bi, j + M (2 + Yi, j, i , j Xi, j, f , k Xi , j , f , k )
posed a MILP model and a CP model to solve it.
i I, i I, i < i , j Ji , j Ji , f F , k Ki, j, f Ki , j ,f (5)
• All the factories, jobs, and machines are available at time zero.
by the MILP model for DJSP (Naderi & Azab, 2014) and the MILP model
4
L. Meng, et al. Computers & Industrial Engineering 142 (2020) 106347
Table 1
Notations and decision variables.
Notations
Sf , k, p Bi, j + M (1 Xi, j, f , k, p), i I, j J, f F, k K i, j , f , p Pf , k operation. Constraint set (12) does the same as what constraint sets
(14) (4)–(5) together do and ensures the nonoverlap of the operations as-
signed to the same machine. Constraint sets (13)–(14) represent the
Cmax Bi, ni + (pti,n , f ,k Xi,n ,f ,k,p),
i i i I relationship between variables Sf , k, p and Bi, j . Constraint set (15) de-
f F k Ki, ni, f p Pf , k (15) termines the makespan and constraint set (16) defines the decision
variable Sf , k, p .
Sf , k, p 0, f F, k Kf , p Pf , k (16)
where constraint sets (8) and (9) do the same as what constraint sets (2) 3.5. Model 3 (time-indexed model)
and (3) do respectively. Constraint set (10) forces that the positions of
each machine in each factory must be assigned to operations in se- Model 3 is based on time-indexed modeling idea, and it is inspired
quential order. Constraint set (11) indicates that each position of each by the MILP model for OSP (Matta, 2009) and the MILP model for HFSP
machine in each factory can be allocated at no more than one (Schulz, Neufeld, & Buscher, 2019). This model introduces two time-
5
L. Meng, et al. Computers & Industrial Engineering 142 (2020) 106347
indexed binary decision variables namely Yi, j, f , k, t and Ai, j, f , k, t to de- Yi, j, i , j , f , k = Yi , j , i, j, f , k , i {0 I }, j Ji , f F, k
termine machine selection problem and sequencing problem. For this i {0 I } j Ji i {0 I } j Ji
model, the max planned time t max should be decided reasonably in K i, j , f (26)
advance. This is the number of decision variables and the number of
constraints of Model 3 are heavenly dependent on t max . Yi, j, i , j , f , k 1, i {0 I }, j Ji , f F, k K i, j , f
i {0 I } j Ji (27)
3.5.1. Decision variable
Bi, j + Yi , j , i, j, f , k pti, j, f , k Bi, j + 1, i I, j JJi
Five decision variables namely Yi, j, f , k, t , Zi, f , Ai, j, f , k, t , Bi, j and Cmax are
f F k Ki ,j , f i {0 I } j Ji
needed in Model 3.
(28)
3.5.2. Constraint sets Bi, j Bi , j + (Yi ,j , i,j, f ,k pti ,j ,f ,k) M 1 ( Yi , j , i, j, f , k
Constraint sets (1) and (17)–(23) are needed in Model 3. f F k K i, j , f f F k Kf
6
L. Meng, et al. Computers & Industrial Engineering 142 (2020) 106347
remove the values of variables from their domains in order to prevent endBeforeStart (opsi, j, opsi, j + 1): i I, j {1, ...,ni 1} (39)
constraints from being infeasible (Gedik et al., 2016). In CP, new de-
cision variables named interval decision variable and sequence decision presenceOf (modesopId2) × f2
variable are two popularly used variables. k2 Ki, j, f2
An interval variable represents for a time interval, during which a = presenceOf (modesopId1) × f1
task takes place and whose position in time is unknown. Moreover, it k1 Ki, j , f1
has several attributes such as start, end and processing times. In this : Oi, j opId1, Oi, j opId2, i I, j Ji , j Ji , f1 F , f2 F (40)
study, we utilize interval decision variables to represent the start and
end time of operations on their corresponding machines. The interval Cmax endOf (modesopId ): i I , Oi, ni opId, f F (41)
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 where constraint set (37) ensures that each operation is assigned to
solution, it must be processed and numerical values must be assigned to exactly one factory and one of its eligible machines. In detail, the
its start, end and processing times respectively. If otherwise, then the function alternative (.) is used to ensure that just one of the optional
domain of the interval variable is left empty (IBM, 2014). interval variables ModesopId, f , k, pt with the same opId will be present in
With regard to a sequence decision variable, it represents for an the final scheduling solution. Constraint set (38) assures the non-
ordering over a set of interval variables. For example, if a sequence is overlapping of the operations assigned to the same machine. To be
defined over a set of interval variables {A1, A2, A3, A4}, a sequence specific, the function noOverlap (.) enforces that all the optional interval
solution can be (A1, A3, A4, A2). Moreover, each interval variable in a variables ModesopId, f , k, pt associated with sequence variable mchsk do not
sequence is associated with an attribute that reflects one of its prop- overlap with each other. Constraint set (39) forces the precedence re-
erties or a combination of properties that can be employed for se- lation between the operations of the same job. Constraint set (40) en-
quencing decisions. To avoid overlapping, related constraints must be sures that the operations of the same job must be assigned to the same
added to the interval variables belonging to the sequence (IBM, 2014). factory. Constraint set (41) states that the makespan is no less than the
Here we show the CP model of DFJSP coded in IBM CPLEX Studio sum of the completion of each job and its corresponding transportation
IDE 12.7.1. The followings represent the used parameters, decision time.
variables and related functions in the CP model. As far as we know,
there is no standardization in defining variables, related functions and 5. Experimental results
constraints in the CP community. In different solvers such as CPLEX, OR
Tools and Gecode, features of the same meaning may use different This section evaluates the performance of the four MILP models and
names. Therefore, a CP model coded in one solver may not be run CP model. To compare the four MILP models, 20 instances adapted
successfully in another one (Gedik, Kirac, Bennet Milburn, & Rainwater, from MFJS01-10 (Fattahi et al., 2007) and MK01-MK10 (Brandimarte,
2017). The following model can further be understood by referring 1993) are used. Each one of the 20 instances has been obtained by
to the appendix, which shows the detailed CP model code in IBM supposing that all the factories share the same characteristics and by
CPLEX Studio IDE 12.7.1. replicating the data describing the related flexible job shop for each
factory. Cases with only two factories are considered. Moreover, to
compare the best MILP model, the CP model with state-of-the-art al-
Parameters: gorithms for solving DFJSP, three experiments involving 23 instances
The step of an operation in all the operations of all jobs.
(rdata) with 2–4 factories from reference (De Giovanni & Pezzella,
opId
OpsopId, i,j It refers to operation Oi,j . 2010) are conducted. All the MILP models and CP model are coded in
ModesopId, f , k, pt It refers to eligible factories, corresponding machines and OPL language of IBM CPLEX Studio IDE 12.7.1 on a desktop Dell Vostro
processing times of operation Oi,j . OpsopId, i,j corresponds to no 3900 with 3.20 GHz Intel Corei5-4460 Duo processor and 8 GB of RAM
less than one ModesopId, f , k, pt with the same opId due to the memory. The MILP models and CP model are solved by IBM CPLEX
flexible factories and machines. Solver and IBM CP Solver respectively.
Decision variables: The default method of IBM CPLEX Solver for solving MILP is the
opsi,j interval object of OpsopId, i,j . branch-and-cut method, which is the combination of cutting plane and
modesopId (optional) optional interval object of ModesopId, f , k, pt . branch-and-bound methods. The default method of IBM CP Solver for
mchsk sequence decision variable, which includes a set of interval solving CP model works by using constraint propagation (filtering)
variables modesopId that can be assigned to machine k .
method. The timelimit of all the MILP models and CP model for all
Cmax makespan
instances are set to 600 s. The RelativeOptimalityTolerance and
Functions: OptimalityTolerance of MILP and CP models is set to 0 to guarantee to
This function returns the presence status(Boolean type) of an
presenceOf (.)
obtain optimal solution. For CP model, the RestartFailLimit parameter is
interval variable. If an interval variable is present then 1 is
returned; otherwise, 0 is returned. an important factor, which determines when the search in the CP tree
endOf (.) This function returns the end time of an interval variable if it is needs to be restarted (Gedik et al., 2018). By try and trail, we set Re-
present; otherwise, 0 is returned by default. startFailLimit to 1000.
endBeforeStart (.) This function constrains that if predecessor and successor of an
interval variable is present, then the successor cannot start
before the end of the predecessor. 5.1. Comparisons of different MILP models
alternative (.) alternative (ops, modes ) formulates the alternative constraint
between interval variable ops and optional interval variable The four MILP models are compared from two aspects namely size
modes . complexity and computational complexity. With regard to the com-
This function is used to constraint the non-overlapping of the
noOverlap (.)
parison of size complexity, three norms namely the number of binary
intervals present in a sequence variable. For example, a set of
interval variables {a1, ...,an} are present in a sequence. Then,
variables (NBVs), the number of continuous variables (NCVs), and the
whenever both interval variables ai and aj , i! = j , ai must end number of constraints (NCs) are used. As to the computational com-
before the start of aj or aj must end before the start of ai . plexity, comparison norms such as the final solution value (CS), the
CPU time and gap value are utilized, among which the gap value re-
alternative (opsi, j , modesopId ): Oi . j opId, i I, j Ji (37) presents the average optimality gap of the obtained solution within
timelimit. Gap can be calculated as |CS − BS|/|CS|%. Thereinto, BS is
noOverlap (mchsk ): k K (38) the obtained lower bound within the timelimit by the MILP model.
7
L. Meng, et al. Computers & Industrial Engineering 142 (2020) 106347
Table 2
Size complexity of the four proposed MILP models.
Inst. Model 1 Model 2 Model 3 Model 4
NBVs NCs NCVs NBVs NCs NCVs NBVs NCs NCVs NBVs NCs NCVs
Table 3
Computational complexity of the four proposed MILP models.
Inst. LB Model 1 Model 2 Model 3 Model 4
MFJS01 403 403 0.06 0 403 0.34 0 410 – 600 – 403 0.14 0
MFJS02 396 396 0.03 0 396 0.66 0 400 – 600 – 396 0.17 0
MFJS03 396 396 0.16 0 396 7.15 0 400 – 600 – 396 0.66 0
MFJS04 496 496 0.25 0 496 7.58 0 500 – 600 – 496 0.56 0
MFJS05 414 414 0.22 0 414 10.30 0 420 – 600 – 414 0.38 0
MFJS06 614 614 0.19 0 614 10.45 0 620 – 600 – 614 0.89 0
MFJS07 764 764 0.55 0 764 144.36 0 770 – 600 – 764 56.18 0
MFJS08 764 764 0.44 0 764 167.03 0 770 – 600 – 764 4.57 0
MFJS09 764 764 3.68 0 789* 600 3.17 770 – 600 – 764 111.31 0
MFJS10 944 944 4.10 0 1222* 600 22.75 950 – 600 – 944 180.26 0
MK01 22 24 8.97 0 60 600 63.33 30 24 388.83 0 29 600 24.13
MK02 18 19 162.60 0 – 600 – 20 19 485.85 0 – 600 –
MK03 63 105* 600 2.86 – 600 – 110 – 600 – – 600 –
MK04 35 39 513.57 0 – 600 – 40 – 600 – 199 600 81.91
MK05 59 93* 600 7.53 – 600 – 100 – 600 – – 600 –
MK06 33 67* 600 46.27 – 600 – 70 – 600 – – 600 –
MK07 44 75* 600 8.00 – 600 – 80 – 600 – – 600 –
MK08 162 278* 600 5.76 – 600 – 300 – 600 – – 600 –
MK09 130 379* 600 59.90 – 600 – 400 – 600 – – 600 –
MK10 113 503* 600 77.53 – 600 – 550 – 600 – – 600 –
Mean – – –
Obviously, a solution with the gap value of 0 is optimal. CS is the ob- for sequencing in other models. Model 3 is based on the time-indexed
tained solution within the timelimit. The size complexity and compu- modeling idea, and Yi, j, f , k, t and Ai, j, f , k, t are directly proportional to the
tational complexity of the four proposed MILP models for solving 20 time horizon and instance size, especially the latter. For example, al-
instances are given in Tables 2 and 3. though the size of MK01 is much bigger than MFJS01, the NBVs of the
former is much less than the latter. This is because the time horizon of
MFJS01 is 410, which is much bigger than 30 of MK01.
5.1.1. Size complexity comparison With regard to NCs, Model 1 is the least one for MFJS01-02, MK04
As shown in Table 2, Model 1 has much less NBVs than the other and MK08-09. Model 4 has the least NCs for MFJS03- MFJS10, MK01-
models and Model 3 has much more NBVs than the other models. MFJS03, MK05- MFJS07 and MK10. Like NBVs, the NCs of Model 3
Moreover, the order of the least to most of NBVs is Model 1, Model 2, depends most on the time horizon. Model 3 has the most NCs with
Model 4 and Model 3. This is because Model 1 is based on sequence- regard to instances namely MFJS01- MFJS10 and MK05- MK10 with
based modeling idea, which defines the precedence decision variable relatively large time horizon.
Yi, j, i , j (i < i ) with much less binary variables than the decision variables
8
L. Meng, et al. Computers & Industrial Engineering 142 (2020) 106347
When it comes to NCVs, Model 1 and Model 3 have the least NCVs. et al., 2017). Tables 4–6 show the comparison results of 23 instances of
This is because they only have two continuous decision variables 2–4 factories respectively. In Tables 4–6, the CPU time (T) of IGA is on a
namely Bi, j and Cmax . Model 2 needs the most NCVs because it possesses 2.0 GHz Intel Core2 processor with 2.0 GB of RAM memory in C ++
three continuous decision variables namely Sf , k, p , Bi, j and Cmax . (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 et al., 2017). RPE in Tables 4–6 represents
5.1.2. Computational complexity comparison
for the relative percent error of the best makespan (MK) to the lower
Table 3 shows the computational complexity of the four proposed
bound (LB). AV denotes the average makespan of several repetitions. In
MILP models. As can be seen from Table 3, Model 1 performs best in
Tables 4–6, the solution with “*” denotes that it is better than the
terms of CS, CPU time and gap value, which can attribute to its least
current best solution. The solution in bold is the best one among all
NBVs. This is because NBVs is the most important influencing factor for
algorithms. In Tables 4–5, for CP model, the MK in parentheses corre-
MILP models. In detail, Model 1 can solve 13 instances out of 20 to
sponds to the T(s) in parentheses. The MK in parentheses is the earliest
optimality with gap = 0. Model 2 can solve 8 small instances namely
good solution that CP model can obtain, and the T(s) in parentheses is
MFJS01-08 to optimality with gap = 0 within 600 s. With regard to
the earliest time for obtaining the earliest good solution. For example,
MFJS09-MFJS10 and MK01, Model 2 can only obtain feasible solutions
with regard to la06 in Table 4, CP model can obtain improved solution
within 600 s. For MK02-MK10, no feasible solutions can be obtained by
of 413 with 35.9 s, and it can obtain the earliest ‘improved solution of
Model 2. For Model 3, it cannot find any feasible solutions for small
420 with 3.8 s. Between 3.8 s and 35.9 s, CP model improves solution of
instances namely MFJS01- MFJS10. This is because these instances are
420 to 413. With regard to la11 in Table 4, CP model can obtain so-
with big time horizon, and the NBVs and NCs are very big for Model 3.
lution of 545 within 600 s, and it can obtain earliest 545 with 12.2 s.
Model 3 can solve relatively large-sized instances namely MK01-MK02
Between 12.2 s and 600 s, CP model cannot improve the solution of
to optimality and outperforms Model 2 and Model 4, which can be
545.
attributed to the small time horizon of MK01- MK02. For Model 4, it can
solve MFJS01-MFJS10 to optimality within 600 s, and obtain feasible
solution 29 for MK01, 199 for MK04 within 600 s. For MK02-MK03 and
5.2.1. Comparison of MILP model with the state-of-the- art algorithms
MK05-MK10, no feasible solution can be found by Model 4. In terms of
Tables 4–6 show the results of the best MILP Model 1 for all the 23
CS, CPU time and gap value, Model 4 performs better than Model 2.
instances. In Table 4, for la01-la05, la16-la20 mt06 and mt10, Model 1
This may be because Model 4 has smaller NCs and NCVs than Model 2.
could obtain the best (optimal) solution more efficiently than all the
Above all, Model 1 outperforms Models 2–4 in terms of CS, Time
meta-heuristic algorithms. For la10, Model 1 can obtain the optimal
and Gap, and it is most suitable for solving DFJSP. Model 4 outperforms
solution of 443 with 27.6 s, which is smaller than that of IGA and bigger
Model 2. The performance of Model 3 is hugely dependent on the time
than that of GA_JS and GA_OP. For la06, Model 1 can obtain very good
horizon of the problem.
solution of 418, which is better than 445 of IGA, 421 of GA_JS and 424
of GA_OP. For la07, in terms of MK, Model 1 performs better than IGA
5.2. Comparisons of the MILP model and CP model with state-of-the- art and GA_JS, and performs the same with GA_OP. For la09, Model 1
algorithms obtains the solution of 449, which is better than 469 for IGA, but worse
than 447 for GA_JS and 444 for GA_OP. For other instances namely
In this section, we evaluate the performance of the best MILP model, la11-la15 and mt20, the comparison results are obviously shown in
that is Model 1, and CP model. We compare Model 1 and CP model with Table 4.
three state-of-the-art algorithms for solving DFJSP, namely IGA (De For the instances with 3 factories in Table 5, in terms of MK, Model
Giovanni & Pezzella, 2010), GA_JS (Lu et al., 2015) and GA_OP (Wu 1 performs no worse than all the existing algorithms for all the instances
Table 4
Comparison results of 2-factory DFJSP.
Inst. LB IGA GA_JS GA_OP CP model Model 1
MK AV T(s) RPE MK AV T(s) RPE MK AV T(s) RPE MK T(s) RPE MK T(s) RPE
la01 413 413 413 12 0 413 413 7.1 0 413 413 4.7 0 413 0.1 0 413 3.2 0
la02 394 394 394 11.2 0 394 394 6.6 0 394 394 4.7 0 394 0.1 0 394 1.3 0
la03 349 349 349 10.8 0 349 349 7 0 349 349 5.2 0 349 0.1 0 349 4.9 0
la04 369 369 369 11.4 0 369 369 6.4 0 369 369 5 0 369 0.1 0 369 1.0 0
la05 380 380 380 8 0 380 380 6.6 0 380 380 5 0 380 0.1 0 380 0.9 0
la06 413 445 449.6 45.8 7.7 421 435.8 25.8 1.9 424 432.7 23.9 2.7 413*(420*) 35.9(3.8) 0(1.7) 418* 600 1.2
la07 376 412 419.2 50.2 9.6 396 408.5 26.3 5.3 390 403.6 24.6 3.7 386*(389*) 177.2(25.2) 2.7(3.5) 390 600 3.7
la08 369 420 427.8 53.8 13.8 406 417.4 26.4 10 397 411.7 23.7 7.6 391*(396*) 82.8(11.9) 6.0(7.3) 399 600 8.1
la09 382 469 474.6 45.2 22.8 447 459 27 17 444 455.7 24.1 16.2 436*(443*) 351.5(10.4) 14.1(16.0) 449 600 17.5
la10 443 445 448.6 45 0.5 443 444.1 24.9 0 443 443.2 21.9 0 443 0.1 0 443 27.6 0
la11 413 570 571.6 126 38 548 557.1 64.6 32.7 541 549.9 62.5 31 545(5 4 5) 600(12.2) 32.0 567 600 37.3
la12 408 504 508 116 23.5 483 492.5 65.5 18.4 474 482.3 63.9 16.2 469*(473*) 600(35.8) 15.0(15.9) 485 600 18.9
la13 382 542 552.2 125.4 41.9 530 538.4 66.1 38.7 529 538.1 62.3 38.5 525*(528*) 600(26.6) 37.4(38.2) 545 600 42.7
la14 443 570 576 122.2 28.7 545 557.3 63.3 23 544 553.7 63 22.8 542*(5 4 4) 600(12.9) 22.3(22.8) 545 600 23.0
la15 378 584 588.8 119.6 54.5 554 568.7 63.6 46.6 554 566.6 63.1 46.6 555(5 5 5) 600(42.6) 46.8(46.8) 577 600 52.6
la16 717 717 717 140.2 0 717 717 53.3 0 717 717 47.8 0 717 0.1 0 717 1.9 0
la17 646 646 646 112.6 0 646 646 52 0 646 646 48.7 0 646 0.1 0 646 1.9 0
la18 663 663 663 132.4 0 663 663 53.9 0 663 663 48.7 0 663 0.1 0 663 2.7 0
la19 617 617 617.2 147.2 0 617 622.1 58.4 0 617 617.5 57.9 0 617 0.3 0 617 5.8 0
la20 756 756 756 99.8 0 756 756 53.9 0 756 756 48.3 0 756 0.2 0 756 2.4 0
mt06 47 47 47 2 0 47 47 3.4 0 47 47 2.4 0 47 0.1 0 47 0.1 0
mt10 655 655 655 173 0 655 655 54 0 655 655 49.6 0 655 0.1 0 655 2.4 0
mt20 387 560 566 121.2 44.7 530 547.7 59.5 37 525 534.4 61.4 35.7 523*(523*) 600(39.6) 35.1(35.1) 533 600 37.7
Ave. 79.6 12.4 38.1 10.0 35.8 9.6 184.7(9.7) 9.2(9.5) 263.3 10.6
9
L. Meng, et al. Computers & Industrial Engineering 142 (2020) 106347
Table 5
Comparison results of 3-factory DFJSP.
Inst. LB IGA GA_JS GA_OP CP model Model 1
MK AV T(s) RPE MK AV T(s) RPE MK AV T(s) RPE MK T(s) RPE MK T(s) RPE
la01 413 413 413 4.6 0 413 413 4.5 0 413 413 3 0 413 0.1 0 413 0.9 0
la02 394 394 394 3.6 0 394 394 4.4 0 394 394 3 0 394 0.1 0 394 0.6 0
la03 349 349 349 3.8 0 349 349 4.6 0 349 349 3.1 0 349 0.1 0 349 0.7 0
la04 369 369 369 3.8 0 369 369 4.4 0 369 369 3 0 369 0.1 0 369 1.0 0
la05 380 380 380 2.6 0 380 380 4.4 0 380 380 2.9 0 380 0.1 0 380 0.5 0
la06 413 413 413 17.4 0 413 413 10.3 0 413 413 7.9 0 413 0.1 0 413 11.3 0
la07 376 376 376 18.2 0 376 376 11.2 0 376 376 9.1 0 376 0.1 0 376 10.5 0
la08 369 369 369 19.6 0 369 369 10.6 0 369 369 8.7 0 369 0.2 0 369 23.1 0
la09 382 382 387.4 17.8 0 382 382 12.8 0 382 382 11 0 382 0.6 0 382 26.0 0
la10 443 443 443 17 0 443 443 10.7 0 443 443 8.4 0 443 0.1 0 443 4.1 0
la11 413 425 436.8 50.6 2.9 413 419.3 31.2 0 413 418 28.9 0 413 1.5 0 413 86.7 0
la12 408 408 408 44.6 0 408 408 23.5 0 408 408 22.1 0 408 0.2 0 408 45.8 0
la13 382 419 430.2 45.8 9.7 396 407.6 31.9 3.7 395 408.4 29.6 3.4 382* 3.4 0 390* 600 2.1
la14 443 443 448.8 48.8 0 443 443 23.5 0 443 443 23.1 0 443 5.4 0 443 106.7 0
la15 378 451 456 42.2 19.3 413 423.7 32.6 9.3 417 430 30.5 10.3 388*(415*) 600(2.3) 2.6(9.8) 416* 600 10.1
la16 717 717 717 36 0 717 717 26.4 0 717 717 21.1 0 717 0.2 0 717 2.1 0
la17 646 646 646 31.6 0 646 646 25.1 0 646 646 21.1 0 646 0.1 0 646 1.7 0
la18 663 663 663 36.8 0 663 663 26.1 0 663 663 20.6 0 663 0.2 0 663 2.7 0
la19 617 617 617 62.4 0 617 617 25.8 0 617 617 20.2 0 617 0.3 0 617 4.3 0
la20 756 756 756 34.2 0 756 756 25.2 0 756 756 20.8 0 756 0.2 0 756 3.2 0
mt06 47 47 47 1 0 47 47 2.7 0 47 47 1.8 0 47 0.1 0 47 0.1 0
mt10 655 655 655 50 0 655 655 25.8 0 655 655 21.8 0 655 0.1 0 655 2.8 0
mt20 387 439 442.6 48.2 13.4 407 415.8 33 5.2 397 412.7 29.5 2.6 387* 7.5 0 399 600 3.1
Ave. 27.9 2.0 17.9 0.8 15.3 0.7
except for mt20. For la13, Model 1 outperforms IGA, GA_JS, and 5.2.2. Comparison of CP model with the state-of-the- art algorithms
GA_OP, and obtains the best solution of 390 within 600 s. For mt20, As can be seen in Tables 4–6, except for la11 and la15, CP model can
Model 1 outperforms IGA and GA_JS, and obtains relatively good so- obtain no worse MK and RPE for all instances than IGA, GA_JS and
lution of 399 within 600 s. For la15, Model 1 obtains the best solution GA_OP. For the difficult instances, namely la06-la09, la12- la14 and
of 416. For the instances with 4 factories in Table 6, Model 1 can ef- mt20 with two factories in Table 4, CP model improves the best solu-
ficiently obtain the best and optimal solutions for all instances. tion. For la06, CP model can obtain good solution of 420 with very
Above all, although the MILP model is time-consuming for some short time of 3.8 s and the optimal solution of 413 with 35.9 s. For la07,
large-sized and hard instances, it can efficiently obtains the best or the CP model can obtain good solution of 389 with 25.2 s and the optimal
optimal solutions for small-sized and easy instances. More importantly, solution of 386 with 177.2 s. For la08, CP model can quickly obtain the
Model 1 can always obtain the same solution for all the instances with good solution of 396 with 11.9 s and the optimal solution of 391 with
the same time, and no repetitious solving is needed. 82.8 s. With regard to la09, CP model can archive good solution of 443
Table 6
Comparison results of 4-factory DFJSP.
Inst. LB IGA GA_JS GA_OP CP model Model 1
MK AV T(s) RPE MK AV T(s) RPE MK AV T(s) RPE MK T(s) RPE MK T(s) RPE
la01 413 413 413 1.8 0 413 413 4.4 0 413 413 2.4 0 413 0.1 0 413 0.4 0
la02 394 394 394 1.8 0 394 394 4.3 0 394 394 2.4 0 394 0.1 0 394 0.5 0
la03 349 349 349 2.2 0 349 349 4.4 0 349 349 2.4 0 349 0.1 0 349 0.6 0
la04 369 369 369 2 0 369 369 4.3 0 369 369 2.4 0 369 0.1 0 369 0.7 0
la05 380 380 380 1 0 380 380 4.4 0 380 380 2.4 0 380 0.1 0 380 0.7 0
la06 413 413 413 9 0 413 413 7.9 0 413 413 5.5 0 413 0.1 0 413 7.0 0
la07 376 376 376 9.6 0 376 376 8.3 0 376 376 5.7 0 376 0.2 0 376 4.0 0
la08 369 369 369 12.6 0 369 369 8.2 0 369 369 5.7 0 369 0.2 0 369 6.1 0
la09 382 382 382 11.6 0 382 382 8.4 0 382 382 5.7 0 382 0.2 0 382 13.2 0
la10 443 443 443 7.8 0 443 443 7.9 0 443 443 5.4 0 443 0.1 0 443 5.8 0
la11 413 413 413 29.6 0 413 413 15.7 0 413 413 13.4 0 413 0.3 0 413 38.7 0
la12 408 408 408 26.6 0 408 408 15.9 0 408 408 11.9 0 408 0.2 0 408 38.6 0
la13 382 382 382 27.6 0 382 382 17.6 0 382 382 15.6 0 382 0.3 0 382 18.9 0
la14 443 443 443 29.8 0 443 443 15.2 0 443 443 12.2 0 443 0.2 0 443 42.4 0
la15 378 378 397 28.8 5.0 378 381.9 20.3 0 378 385.8 17.9 0 378 0.8 0 378 104.2 0
la16 717 717 717 20.2 0 717 717 16.2 0 717 717 12.4 0 717 0.2 0 717 3.2 0
la17 646 646 646 16.4 0 646 646 15.2 0 646 646 12.2 0 646 0.1 0 646 2.9 0
la18 663 663 663 24.4 0 663 663 17.3 0 663 663 12.6 0 663 0.1 0 663 2.9 0
la19 617 617 617 33 0 617 617 16.1 0 617 617 11.3 0 617 0.2 0 617 2.6 0
la20 756 756 756 18 0 756 756 15.4 0 756 756 11.8 0 756 0.1 0 756 2.8 0
mt06 47 47 47 0.2 0 47 47 2.4 0 47 47 1.7 0 47 0.2 0 47 0.2 0
mt10 655 655 655 31.2 0 655 655 17.1 0 655 655 13.3 0 655 0.1 0 655 2.6 0
mt20 387 387 388.4 27 0 387 387 17.1 0 387 387 15.7 0 387 0.2 0 387 67.3 0
Ave. 16.2 0.2 11.5 0 8.8 0 0.2 0 15.9 0
10
L. Meng, et al. Computers & Industrial Engineering 142 (2020) 106347
with 10.4 s; moreover, optimal solution of 436 are obtained with state-of-art algorithms. More importantly, the proposed MILP model
351.5 s. For la11, CP model can obtain the second-best solution of 545 and CP model improve 11 best known solutions for the benchmark
with short time of 12.2 s. For la12, CP model obtains improved solution instances and prove the optimality of 62 best-known solutions. Most
of 473 with 35.8 s. Moreover, much better solution of 469 is archived importantly, the MILP model and CP model can always obtain the same
by running CP model with 600.0 s. For la13, CP model effectively ob- solution for all the instances with the same time, and no repeat is
tains improved solution of 528 with 26.6 s and much better solution of needed. While meta-heuristic algorithms cannot assure the same solu-
525 with 600.0 s. For la14, CP model obtains the current best solution tion of each repeat even for the relatively small-sized instances.
of 544 with 12.9 s and improved solution of 542 within 600.0 s. For As we can see from the comparison results, CP model outperforms
la15, CP model can obtain very good solution of 555 with 42.6 s. For all the other existing algorithms in terms of both solution quality and
other easy instances, CP model can solve them to optimality more ef- efficiency. Moreover, due to the simplicity of the CP formulation and
ficiently than the IGA, GA_JS and GA_OP. the ease of using the currently available solver IBM CP Optimizer, CP
When it comes to the instances with 3 and 4 factories, CP model also method is very suitable for practitioners to implement and use in
ranks first for all instances in terms of MK and RPE for all instances. For practice.
the instances with 3 factories in Table 5, CP model can solve 22 out of In the future research, we will extend the four modeling ideas to
23 instances to optimality efficiently. For the difficult instance la15, CP other distributed scheduling problems and formulate efficient MILP
model obtains much better solution of 415 and 388 with 2.3 s and models for them. The MILP models and CP model proposed in this paper
600.0 s respectively. For all the 23 instances with 4 factories in Table 6, can be easily modified to solve DFJSP with other objectives such total
CP model solves them to optimality much more efficiently with mean flowtime and earliness/tardiness. Moreover, we will try to formulate
time of 0.2 s than all the other algorithms. MILP/CP hybrid model based on decomposition methods such as logic-
In summary, CP model improves 11 best known solutions for the based benders decomposition (Gedik et al., 2016), and further merge
benchmark instances and proves the optimality of 62 best-known so- the strengths of MILP and CP methods.
lutions. Obviously, CP outperforms all the other algorithms. Moreover,
the same as MILP model, CP model can always obtain the same solution CRediT authorship contribution statement
for all the instances with the same time, and no repetitious solving is
needed. While meta-heuristic algorithms cannot assure the same solu- Leilei Meng: Conceptualization, Methodology, Software, Writing -
tion of each repeat even for the relatively small-sized instances. original draft. Chaoyong Zhang: Supervision, Writing - review &
editing, Funding acquisition. Yaping Ren: Investigation. Biao Zhang:
6. Conclusions and future study Formal analysis. Chang Lv: Software.
As far as we know, this paper is the first to formulate MILP models Acknowledgements
for DFJSP and is the first to implement CP method to DFJSP. For solving
DFJSP, we formulate four MILP models based on four different mod- This work was supported by Project of International Cooperation
eling ideas. Due to the NP-hard characteristic of DFJSP, we proposed a and Exchanges NSFC (No. 51861165202), the Key Research and
CP model to solve large-sized instances more effectively. We compare Development Program of Guangdong Province (No. 2019B090921001),
all the MILP models and the CP model with the existing algorithms. and the National Natural Science Foundation of China (No. 51575211,
Experimental results show that the sequence-based model is the most 51705263, 51805330). We are grateful to the editor and anonymous
efficient for solving DFJSP. Moreover, the CP model outperforms the referees for their constructive comments to improve this paper.
Appendix A
using CP;
int nbJobs = …;
int nbMchs = …;
int nbFactor = …;
range Jobs = 1..nbJobs;
range Mchs = 1..nbMchs;
range Factors = 1..nbFactor;
tuple Operation {
int opId; // The step of an operation in all the operations of all jobs.
int jobId; // Job id
int pos; // Position in job
};
tuple Mode {
int opId; // The step of an operation in all the operations of all jobs.
int fId; // Factory id
int mch; // Machine
int pt; // Processing time
};
{Operation} Ops = …;
{Mode} Modes = …;
// Position of last operation of job j
int jlast[j in Jobs] = max(o in Ops: o.jobId==j) o.pos;
dvar interval ops [Ops];
dvar interval modes[md in Modes] optional size md.pt;
dvar sequence mchs[m in Mchs] in all(md in Modes: md.mch == m) modes[md];
dexpr int makespan;
execute {
cp.param.TimeLimit = 600;
11
L. Meng, et al. Computers & Industrial Engineering 142 (2020) 106347
cp.param.RestartFailLimit = 1000;
cp.param.RelativeOptimalityTolerance = 0;
cp.param.OptimalityTolerance = 0;
}
minimize makespan;
subject to {
forall (o in Ops)
alternative(ops[o], all(md in Modes: md.opId==o. opId &&md.fId < =nbFactor) modes[md]);
forall (m in Mchs)
noOverlap(mchs[m]);
forall (j in Jobs, o1 in Ops, o2 in Ops: o1.jobId==j && o2.jobId==j && o2.pos==1 + o1.pos)
endBeforeStart(ops[o1],ops[o2]);
forall(j in Jobs, o1 in Ops, o2 in Ops: o1.jobId==j&& o2.jobId==j&& o2.pos==o1.pos + 1)
sum(md1 in Modes:o1.id==md1.opId)presenceOf(modes[md1])*md1.fId
==
sum(md2 in Modes:o2.id==md2.opId)presenceOf(modes[md2])*md2.fId;
makespan > =max(j in Jobs, o in Ops: o.pos==jlast[j]) endOf(ops[o]);
}
execute {
writeln(“makespan ”,makespan);
for (var m in Modes)
{
if (modes[m].present)
writeln(m.opId+“ ” + m.fId + “ ” + m.mch + “ ” + modes[m].start + “ ” + modes[m].end);
}
}
References 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
Bożek, A., & Werner, F. (2018). Flexible job shop scheduling with lot streaming and sublot processing machines: MIP and CP approaches. Computers & Industrial Engineering, 102,
size optimisation. International Journal of Production Research, 56(19), 6391–6411. 160–165.
Brandimarte, P. (1993). Routing and scheduling in a flexible job shop by tabu search. Huang, Y. J., & Yao, X. F. (2012). Planning and scheduling of multiple flexible-shops
Annals of Operations Research, 41(3), 157–183. based on analytical target cascading and particle swarm optimization. Journal of
Bukchin, Y., & Raviv, T. (2018). Constraint programming for solving various assembly Central South University(Science and Technology), 43(01), 151–158.
line balancing problems. Omega, 78, 57–68. IBM (2014). IBM ILOG CPLEX Optimization Studio 12.6.
Chan, F. T. S., Chung, S. H., & Chan, P. L. Y. (2006). Application of genetic algorithms Jain, V., & Grossmann, I. E. (2001). Algorithms for hybrid MILP/CP models for a class of
with dominant genes in a distributed scheduling problem in flexible manufacturing optimization problems. INFORMS Journal on Computing, 13(4), 258–276.
systems. International Journal of Production Research, 44(3), 523–543. Jia, H. Z., Nee, A. Y. C., Fuh, J. Y. H., & Zhang, Y. F. (2003). A modified genetic algorithm
Chan, F. T. S., Chung, S. H., Chan, L. Y., Finke, G., & Tiwari, M. K. (2006). Solving for distributed scheduling problems. Journal of Intelligent Manufacturing, 14(3–4),
distributed FMS scheduling problems subject to maintenance: Genetic algorithms 351–362.
approach. Robotics and Computer-Integrated Manufacturing, 22(5–6), 493–504. Jin, L., Tang, Q., Zhang, C., Shao, X., & Tian, G. (2016). More MILP models for integrated
Chan, F., Chung, S., & Chan, P. (2005). An adaptive genetic algorithm with dominated process planning and scheduling. International Journal of Production Research, 54(14),
genes for distributed scheduling problems. Expert Systems with Applications, 29(2), 4387–4402.
364–371. Kelbel, J., & Hanzálek, Z. (2011). Solving production scheduling with earliness/tardiness
Chang, H., & Liu, T. (2017). Optimisation of distributed manufacturing flexible job shop penalties by constraint programming. Journal of Intelligent Manufacturing, 22(4),
scheduling by using hybrid genetic algorithms. Journal of Intelligent Manufacturing, 553–562.
28(8), 1973–1986. Keskinturk, T., Yildirim, M. B., & Barut, M. (2012). An ant colony optimization algorithm
Chung, S. H., Chan, F. T. S., & Chan, H. K. (2009). A modified genetic algorithm approach for load balancing in parallel machines with sequence-dependent setup times.
for scheduling of perfect maintenance in distributed production scheduling. Computers & Operations Research, 39(6), 1225–1235.
Engineering Applications of Artificial Intelligence, 22(7), 1005–1014. Ku, W., & Beck, J. C. (2016). Mixed Integer Programming models for job shop scheduling:
De Giovanni, L., & Pezzella, F. (2010). An Improved Genetic Algorithm for the Distributed A computational analysis. Computers & Operations Research, 73, 165–173.
and Flexible Job-shop Scheduling problem. European Journal of Operational Research, Li, J., Bai, S., Duan, P., Sang, H., Han, Y., & Zheng, Z. (2019). An improved artificial bee
200(2), 395–408. colony algorithm for addressing distributed flow shop with distance coefficient in a
Demir, Y., & Kürşat İşleyen, S. (2013). Evaluation of mathematical models for flexible job- prefabricated system. International Journal of Production Research, 1–21.
shop scheduling problems. Applied Mathematical Modelling, 37(3), 977–988. Li, J., Sang, H., Han, Y., Wang, C., & Gao, K. (2018). Efficient multi-objective optimization
Edis, E. B., & Oguz, C. (2012). Parallel machine scheduling with flexible resources. algorithm for hybrid flow shop scheduling problems with setup energy consumptions.
Computers & Industrial Engineering, 63(2), 433–447. Journal of Cleaner Production, 181, 584–598.
Fattahi, P., Saidi Mehrabad, M., & Jolai, F. (2007). Mathematical modeling and heuristic Lin, C., Lee, I., & Wu, M. (2019). Merits of using chromosome representations and shadow
approaches to flexible job shop scheduling problems. Journal of Intelligent chromosomes in genetic algorithms for solving scheduling problems. Robotics and
Manufacturing, 18(3), 331–342. Computer-Integrated Manufacturing, 58, 196–207.
Fleszar, K., & Hindi, K. S. (2018). Algorithms for the unrelated parallel machine sche- Lu, P., Wu, M., Tan, H., Peng, Y., & Chen, C. (2015). A genetic algorithm embedded with a
duling problem with a resource constraint. European Journal of Operational Research, concise chromosome representation for distributed and flexible job-shop scheduling
271(3), 839–848. problems. Journal of Intelligent Manufacturing, 29(1), 19–34.
Gedik, R., Kalathia, D., Egilmez, G., & Kirac, E. (2018). A constraint programming ap- Manne, A. S. (1960). On the Job-Shop Scheduling Problem. Operations Research, 8(2),
proach for solving unrelated parallel machine scheduling problem. Computers & 219–223.
Industrial Engineering, 121, 139–149. Marzouki, B., Driss, O. B., & Ghédira, K. (2018). Solving distributed and flexible job shop
Gedik, R., Kirac, E., Bennet Milburn, A., & Rainwater, C. (2017). A constraint program- scheduling problem using a chemical reaction optimization metaheuristic. Procedia
ming approach for the team orienteering problem with time windows. Computers & Computer Science, 126, 1424–1433.
Industrial Engineering, 107, 178–195. Matta, M. E. (2009). A genetic algorithm for the proportionate multiprocessor open shop.
Gedik, R., Rainwater, C., Nachtmann, H., & Pohl, E. A. (2016). Analysis of a parallel Computers & Operations Research, 36(9), 2601–2618.
machine scheduling problem with sequence dependent setup times and job avail- Meng, L., Zhang, C., Shao, X., & Ren, Y. (2019a). MILP models for energy-aware flexible
ability intervals. European Journal of Operational Research, 251(2), 640–650. job shop scheduling problem. Journal of Cleaner Production, 210, 710–723.
Gicquel, C., Hege, L., Minoux, M., & van Canneyt, W. (2012). A discrete time exact Meng, L., Zhang, C., Shao, X., Ren, Y., & Ren, C. (2019b). Mathematical modelling and
12
L. Meng, et al. Computers & Industrial Engineering 142 (2020) 106347
optimisation of energy-conscious hybrid flow shop scheduling problem with un- Ren, Y., Yu, D., Zhang, C., Tian, G., Meng, L., & Zhou, X. (2017). An improved gravita-
related parallel machines. International Journal of Production Research, 4(57), tional search algorithm for profit-oriented partial disassembly line balancing pro-
1119–1145. blem. International Journal of Production Research, 55(24), 7302–7316.
Meng, L., Zhang, C., Shao, X., Zhang, B., Ren, Y., & Lin, W. (2019c). More MILP models for Ren, Y., Meng, L., Zhang, C., Zhao, F., Saif, U., Huang, A., ... Sutherland, J. W. (2020). An
hybrid flow shop scheduling problem and its extended problems. International Journal efficient metaheuristics for a sequence-dependent disassembly planning. Journal of
of Production Research, 1–22. Cleaner Production, 245, 118644.
Meng, L., Zhang, C., Zhang, B., & Ren, Y. (2019d). Mathematical modeling and optimi- Rocha, P. L., Ravetti, M. G., Mateus, G. R., & Pardalos, P. M. (2008). Exact algorithms for
zation of energy-conscious flexible job shop scheduling problem with worker flex- a scheduling problem with unrelated parallel machines and sequence and machine-
ibility. IEEE Access, 7(1), 68043–68059. dependent setup times. Computers & Operations Research, 35(4), 1250–1264.
Mousakhani, M. (2013). Sequence-dependent setup time flexible job shop scheduling Roshanaei, V., Azab, A., & ElMaraghy, H. (2013). Mathematical modelling and a meta-
problem to minimise total tardiness. International Journal of Production Research, heuristic for flexible job shop scheduling. International Journal of Production Research,
51(12), 3476–3487. 51(20), 6247–6274.
Na, H., & Park, J. (2014). Multi-level job scheduling in a flexible job shop environment. Ruiz, R., Pan, Q., & Naderi, B. (2019). Iterated Greedy methods for the distributed per-
International Journal of Production Research, 52(13), 3877–3887. mutation flowshop scheduling problem. Omega, 83, 213–222.
Naderi, B., & Azab, A. (2014). Modeling and heuristics for scheduling of distributed job Ruiz, R., Şerifoğlu, F. S., & Urlings, T. (2008). Modeling realistic hybrid flexible flowshop
shops. Expert Systems with Applications, 41(17), 7754–7763. scheduling problems. Computers and Operations Research, 35(4), 1151–1175.
Naderi, B., Fatemi Ghomi, S. M. T., Aminnayeri, M., & Zandieh, M. (2011a). A study on Schulz, S., Neufeld, J. S., & Buscher, U. (2019). A multi-objective iterated local search
open shop scheduling to minimise total tardiness. International Journal of Production algorithm for comprehensive energy-aware hybrid flow shop scheduling. Journal of
Research, 49(15), 4657–4678. Cleaner Production, 224, 421–434.
Naderi, B., Ghomi, S. M. T. F., Aminnayeri, M., & Zandieh, M. (2011b). Scheduling open Shen, L., Dauzère-Pérès, S., & Neufeld, J. S. (2018). Solving the flexible job shop sche-
shops with parallel machines to minimize total completion time. Journal of duling problem with sequence-dependent setup times. European Journal of Operational
Computational & Applied Mathematics, 235(5), 1275–1287. Research, 265(2), 503–516.
Naderi, B., Khalili, M., & Khamseh, A. A. (2013). Mathematical models and a hunting Sun, L., Lin, L., Li, H., & Gen, M. (2019). Large scale flexible scheduling optimization by a
search algorithm for the no-wait flowshop scheduling with parallel machines. distributed evolutionary algorithm. Computers & Industrial Engineering, 128, 894–904.
International Journal of Production Research, 52(9), 2667–2681. Vallada, E., & Ruiz, R. (2011). A genetic algorithm for the unrelated parallel machine
Naderi, B., Zandieh, M., & Shirazi, M. A. H. A. (2009). Modeling and scheduling a case of scheduling problem with sequence dependent setup times. European Journal of
flexible flowshops: Total weighted tardiness minimization. Computers & Industrial Operational Research, 211(3), 612–622.
Engineering, 57(4), 1258–1267. Wagner, H. M. (1959). An integer linear-programming model for machine scheduling.
Nouiri, M., Bekrar, A., Jemai, A., Niar, S., & Ammari, A. C. (2018). An effective and Naval Research Logistics Quarterly, 6(2), 131–140.
distributed particle swarm optimization algorithm for flexible job-shop scheduling Wu, J., & Chien, C. (2008). Modeling semiconductor testing job scheduling and dynamic
problem. Journal of Intelligent Manufacturing, 29(3), 603–615. testing machine configuration. Expert Systems with Applications, 35(1–2), 485–496.
Novara, F. M., Novas, J. M., & Henning, G. P. (2016). A novel constraint programming Wu, M., Lin, C., Lin, C., & Chen, C. (2017). Effects of different chromosome representa-
model for large-scale scheduling problems in multiproduct multistage batch plants: tions in developing genetic algorithms to solve DFJS scheduling problems. Computers
Limited resources and campaign-based operation. Computers & Chemical Engineering, & Operations Research, 80, 101–112.
93, 101–117. Wu, R., Guo, S. S., Li, Y. B., & Wang, L. (2018). An improved artificial bee colony algo-
Oliveira, R. M. E. S., & Ribeiro, M. S. F. O. (2015). Comparing mixed & integer pro- rithm for distributed and flexible job-shop scheduling problem. Control and Decision,
gramming vs. constraint programming by solving job-shop scheduling problems. 1–11.
Independent Journal of Management & Production, 6(1). Wu, X., Liu, X., & Zhao, N. (2018). An improved differential evolution algorithm for
Özgüven, C., Özbakır, L., & Yavuz, Y. (2010). Mathematical models for job-shop sche- solving a distributed assembly flexible job shop scheduling problem. Memetic
duling problems with routing and process plan flexibility. Applied Mathematical Computing, 6, 1–21.
Modelling, 34(6), 1539–1548. Zhang, B., Pan, Q., Gao, L., Meng, L., Li, X., & Peng, K. (2019). A three-stage multi-
Öztürk, C., Tunalı, S., Hnich, B., & Örnek, A. (2015). Cyclic scheduling of flexible mixed objective approach based on decomposition for an energy-efficient hybrid flow shop
model assembly lines with parallel stations. Journal of Manufacturing Systems, 36, scheduling problem. IEEE Transactions on Systems, Man, and Cybernetics: Systems,
147–158. 1–16.
Pan, C. (1997). A study of integer programming formulations for scheduling problems. Zhang, L., Tang, Q., Wu, Z., & Wang, F. (2017). Mathematical modeling and evolutionary
International Journal of Systems Science, 28(1), 33–41. generation of rule sets for energy-efficient flexible job shops. Energy, 138, 210–227.
Pan, Q., Gao, L., Wang, L., Liang, J., & Li, X. (2019). Effective heuristics and metaheur- Ziaee, M. (2014). A heuristic algorithm for the distributed and flexible job-shop sche-
istics to minimize total flowtime for the distributed permutation flowshop problem. duling problem. The Journal of Supercomputing, 67(1), 69–83.
Expert Systems with Applications, 124, 309–324.
13