 Research
 Open Access
Multiobjective flexible jobshop scheduling problem using modified discrete particle swarm optimization
 Song Huang^{1}Email author,
 Na Tian^{1},
 Yan Wang^{1}Email author and
 Zhicheng Ji^{1, 2}
 Received: 5 May 2016
 Accepted: 11 August 2016
 Published: 30 August 2016
Abstract
Taking resource allocation into account, flexible job shop problem (FJSP) is a class of complex scheduling problem in manufacturing system. In order to utilize the machine resources rationally, multiobjective particle swarm optimization (MOPSO) integrating with variable neighborhood search is introduced to address FJSP efficiently. Firstly, the assignment rules (AL) and dispatching rules (DR) are provided to initialize the population. And then special discrete operators are designed to produce new individuals and earliest completion machine (ECM) is adopted in the disturbance operator to escape the optima. Secondly, personalbest archives (cognitive memories) and globalbest archive (social memory), which are updated by the predefined nondominated archive update strategy, are simultaneously designed to preserve nondominated individuals and select personalbest positions and the globalbest position. Finally, three neighborhoods are provided to search the neighborhoods of globalbest archive for enhancing local search ability. The proposed algorithm is evaluated by using Kacem instances and Brdata instances, and a comparison with other approaches shows the effectiveness of the proposed algorithm for FJSP.
Keywords
 Flexible job shop scheduling
 Particle swarm optimization
 Variable neighborhood search
 Nondominated archive update strategy
Background
Production planning and scheduling problems arise in many production manufacturing systems. Scheduling problems have been investigated for several decades and various dispatching rules are proposed to optimize scheduling problems. Up to present, many different principles are presented to select and discover effective ways from a number of candidate dispatching rules (Geiger et al. 2006; Tay and Ho 2008; Pickardt et al. 2010; MouelhiChibani and Pierreval 2010; Heger et al. 2016). Geiger et al. (2006) employed a fast learning model with automatically selecting dispatching rules for single machine environments. Tay and Ho (2008) used genetic programming to combine and construct dispatching rules for multiobjective flexible jobshop problems. Pickardt et al. (2010) developed a coupling genetic programming to evolve and produce dispatching rules under varied conditions. Heger et al. (2016) proposed a way to dynamically determine parameter settings of dispatching rules on the previous state. MouelhiChibani and Pierreval (2010) adopted a trained neural networks (NN) to dynamically determine the dispatching rules in realtime flexible manufacturing systems. Some other techniques or approaches, such as shifting bottleneck (Wenqi and Aihua 2004), branch and bound (Della Croce et al. 2002; Artigues and Feillet 2008) were also applied to solve simple scheduling problems in the early researches.
FJSP is more close to the realistic situation and frequently used in flexible manufacturing systems. During the past decades, many researchers have a fastgrowing interest on FJSP and amount of written works have been published. However, no satisfactory algorithm presently is available for solving the problem to optimality in expected time. In recent years, most researchers have recognized that probabilistic search method is an attractive alternative to solve this constrained optimization problem. Genetic Algorithm (GA) had emerged as one of the most important method to solve discrete optimization problems and many variants of GA were developed to solve FJSP in the published literatures (Cwiek and Nalepa 2014; Li and Chen 2014; Moghadam et al. 2014; Wang et al. 2014; Zhang et al. 2011). A fast GA with a combination of active schedule constructive crossover (ASCX) and generalized order crossover (GOX) was proposed to solve FJSP by Cwiek and Nalepa (2014). In addition, highlow fit selection scheme was developed to enhance the search ability. Li and Chen (2014) presented an improved GA with two level coding, working sequence coding and machine distribution coding. Crossover and mutation operators were welldesigned and neighborhood structure was defined to minimize makespan for FJSP. Aiming at makespan of FJSP, Moghadam et al. (2014) presented GA to create active schedule, which used an Operation orderbased Global Selection (OGS) to generate highquality initial population and introduced crossover operator with precedence preserving orderbased crossover (POX) and uniform crossover. Then intelligent mutation operator was introduced to GA. To minimize makespan criterion of FJSP, a hybrid GA with modified coding scheme was presented by Wang et al. (2014). In the hybrid GA, a novel machine assignment strategy was proposed in the initial phase and an improvement strategy was performed when current best solution had not been improved. To minimize the makespan, welldesigned representation, global selection and local selection for highquality initial population, crossover and mutation operators in GA were all developed (Zhang et al. 2011).
Tabu Search (TS) and Particle Swarm Optimization (PSO) had also been investigated to optimize the FJSP (Shao et al. 2013; Jia and Hu 2014; Kamble et al. 2015). Pathrelinking TS with neighborhood search and backjump tracking was presented by Jia and Hu (2014). In details, pathrelinking technique to generate improved solutions and dimensionoriented intensification search to find better solutions around extreme solutions were introduced. Kamble et al. (2015) presented a hybrid multiobjective PSO and simulated annealing (SA) algorithm to solve fiveobjective FJSP. Rescheduling strategy was applied to overcome the machine breakdown and then Pareto front and crowding distance were introduced to handle fiveobjective problems. Identifying an approximation of the Pareto front of FJSP, Shao et al. (2013) developed a hybrid discrete PSO and SA and a novel displacement strategy was embedded to the proposed algorithm. Also, Pareto ranking and crowding distance method were adopted to deal with multiobjective problems.
Other optimization algorithms, such as firefly algorithm (FA) (Karthikeyan et al. 2014), harmony search algorithm (HS) (Yuan et al. 2013; Gao et al. 2014), biogeographybased optimization (BBO) (Rahmati and Zandieh 2012), differential evolution algorithm (DE) (Balaraju et al. 2014), evolutionary algorithm (EA) (Chiang and Lin 2013) and immune algorithm (IA) (Xue et al. 2014) have been used to solve FJSP in recent years. By defining the presentation of attractiveness, the distance and movement of FA, a hybrid discrete FA incorporating local search with neighborhood structures was presented by Karthikeyan et al. (2014) to minimize the makespan, the critical workload and the total workload. In the Yuan’s work (2013), a discrete hybrid harmony search (HHS) embedding a local search procedure, which provided a neighborhood structure based on common critical operations to enhance the local search, was developed to optimize the makespan. Paretobased grouping discrete harmony search algorithm (PGDHS) was proposed to optimize the makespan and the mean of earliness and tardiness (Gao et al. 2014). Several new heuristics scheme were firstly designed to the initialization of harmony memory. In addition, multiple strategies and local search were proposed to improve the performance of this algorithm.
This paper proposes a welldesigned MOPSO algorithm to optimize threeobjective FJSP (the makespan, the total workload and the critical machine workload). Firstly, the AL and DR methods from other works are applied to initialize the population. Then an extended position update formula with twovector discrete operators is designed and the discrete operator f _{2} is applied to share the information of personalbest positions and globalbest position. Then disturbance operator f _{3} is to explore other space. In details, f _{2} is applied to cross the current position with the personalbest position with a probability, or the current position with the globalbest position with the other probability. Secondly, personalbest archives and globalbest archive updated by predefined nondominated archive update strategy are developed to obtain highquality and highdiversity positions, and the personalbest position is selected from the corresponding personalbest archive and the globalbest position is selected from the globalbest archive. Finally, variable neighborhood search is introduced to exploit the globalbest archive.
The organization of the rest is as follows: “Problem formulation ” section briefly describes the problem formulation of FJSP. In “The MOPSO algorithm” section, a brief introduction of basic PSO is given, and then the details of MOPSO algorithm are presented. The simulation in comparison with other algorithms and parameter analysis are shown in “The simulation experiments” section. Finally, “Conclusions” section concludes this paper.
Problem formulation
Flexible jobshop scheduling problem
For FJSP, each operation can be assigned to one machine from a set of available machines and then sequenced under precedence constraint. There are a set of n jobs J = {J _{1}, J _{2}, …, J _{ k }, …, J _{ n }} to be processed on a set of m machines, M = {M _{1}, M _{2}, …, M _{ k },…, M _{ m }}. Each job consists of n _{ i } operations, \(O_{i} = \{ O_{i1} \ldots ,O_{i2} , \ldots ,O_{ij} , \ldots O_{{in_{i} }} \}\), where O _{ ij } and n _{ i } respectively denote the jth operation of job i and the number of operations for job i. The machine processing the operation O _{ ij } is denoted as M _{ k } from a given available machines called M _{ ij }, where M _{ ij } denote the set of available machines for the operation O _{ ij } and M _{ ij } ⊂ M. Partial flexibility and total flexibility are two kinds of FJSP. The former means that the available machines M _{ ij } processing on the operation O _{ ij } are a subset of M, and the latter means that the available machines M _{ ij } processing on the operation O _{ ij } includes all machines of M. Also, p _{ ijk } denotes the executing time of operation O _{ ij } on the machine M _{ k }.
 1.
C _{M}: Makespan or maximal completion time of machines.
 2.
W _{T}: Total workload of machines, which is the total working time of all machines.
 3.
W _{M}: Critical machine workload, which is the biggest workload among the machines.
Encoding and decoding
Encoding a scheduling as a twovector representation, which includes operation sequence vector and machine assignment vector, is an effective way to represent the decision of FJSP. In details, operation sequence vector is a decision of all operations’ order, and machine assignment vector is a decision of the assigned machines of all operations. Direct and indirect encoding scheme are two types of encoding methods for operation sequence representation. Operationbased representation is an effective indirect encoding method for operation sequence vector, which can absolutely meet the constraints and is able to encode a feasible schedule (Gen et al. 1994). Thus, the operationbased encoding scheme is adopted to represent operation sequence vector. In this encoding scheme, the length of each vector equals to the total number of all operations. The number denotes the corresponding job and the kth occurrence of the number refers to the kth operation of this job. For the machine assignment vector, the numbers represent the machines assigned to the operations with the ascending job number successively.
Processing times for threejob, threemachine instance
Processing time  

M _{1}  M _{2}  M _{3}  
J _{1}  O _{11}  5  3  – 
O _{12}  –  1  2  
O _{13}  3  1  –  
J _{2}  O _{21}  1  –  4 
O _{22}  –  5  4  
O _{23}  5  –  6  
J _{3}  O _{31}  –  6  3 
O _{32}  5  4  5 
A semiactive schedule often occurs in decoding a schedule and results in the increasing of makespan. An active schedule can avoid the weakness. Local left shift and global left shift are designed to decode a schedule to a active one (Li et al. 2010). In this paper, a leftshift function proposed by Li et al. (2010) is applied to decode a semiactive schedule into an active schedule. After applying the leftshift function to the semiactive schedule, the schedule can be decoded as an active schedule.
The MOPSO algorithm
In this section, we developed an effective MOPSO algorithm and the details of the proposed algorithm is described as follows: “Initialization” section describes population initialization and “The details of MOPSO algorithm” section presents the extended position update formula in discrete PSO. Then variable neighborhood search is developed in “Variable neighborhood search” section. Furthermore, nondominated archive update strategy of personalbest archives and globalbest archive, and the selection method of the personalbest position and the globalbest position are introduced in “Personalbest positions and globalbest position” section. Finally, the stop criterion and the flowchart of the proposed algorithm are described in “Stop criterion ” section.
Initialization
Appropriate initial methods can provide enough diversity and highquality individuals to the population. For FJSP, the initialization includes initializing machine assignment and initializing operation sequence. The hybridization of assignment rules (AL) and dispatching rules (DR) from other researchers are proved to be extremely efficient initializing methods for the FJSP (Kacem et al. 2002a; Bagheri et al. 2010; Defersha and Chen 2010; Li et al. 2010). To obtain more promising individuals, the initial population in our study is generated by three AL methods (20 % by GPT, 20 % by LPT, and 60 % by the random rule) proposed by Kacem et al. (2002a) and DR method (Random rule) proposed by Pezzella et al. (2008).
The details of MOPSO algorithm
Discrete PSO
The details of f _{1}, f _{2} and f _{3}
As the discrete operator f _{2} is not applied to all individuals, the function of f _{1} is keeping the individuals unchanged with the probability ω and otherwise, perturbation operator f _{3} is applied to the individuals. Then f _{2} is used to obtain useful information from the personalbest positions with the probability c _{1} and globalbest position with the probability c _{2}.
Discrete operator f _{ 2 } The operator f _{2} is implemented on the operation sequence vector and the machine assignment vector successively. IPOX is implemented on the operation sequence vector and MPX is implemented on the machine assignment vector.

Step 1: Select the operation sequence vectors of the parents F_{1} and F_{2}, and all the jobs are randomly divided into two set J_{1} and J_{2}.

Step 2: Copy the elements of F_{1} that are included in J_{1} to S_{1} in the same position and copy the elements of F_{2} that are included in J_{1} to S_{2} in the same position.

Step 3: Copy the elements of F_{2} that are included in J_{2} to S_{1} in the same order and copy the elements of F_{1} that are included in J_{2} to S_{2} in the same order.

Step 1: Select the machine assignment vectors of the parents F_{1} and F_{2}.

Step 2: Generate a decision vector H with random integers 0 and 1, which has the same length with the machine assignment vector.

Step 3: Find the places which are equal to 1 in H, and then copy the machine assignment number in these places of F_{1} and F_{2} to S_{2} and S_{1}.

Step 4: Copy machine numbers of the rest places in F_{1} and F_{2} to S_{1} and S_{2}.
Perturbation operator f _{ 3 } In order to avoid premature convergence, the perturbation operator f _{3} is adopted. Earliest completion machine (ECM) is an efficient method to assign an operation to a machine (Lin 2015). It can complete the operation with the earliest completion time but it needs expensive time consumption. Consequently, we apply the ECM rule with a small probability c _{3}. The ECM rule (f _{3}) works as follows: Calculate complete time of each operation in all machines by the order in operation sequence vector, and then find the machine with shortest time and assign the operation to the machine.
Variable neighborhood search
Disjunctive graph can also represent a feasible schedule. In the disjunctive graph, the longest path in the disjunctive graph is the critical path and the critical operations are these operations on the critical path. The maximal sequence of joint public critical operations (which are belong to all the critical paths) processed on the same machine is defined as public critical block. Only changing the critical paths can reduce the makespan and neighborhoods based on public critical block theory can significantly reduce the search scope. Therefore, three neighborhood structures based on public critical block are defined in variable neighborhood search. Two neighborhoods of machine moves (NH_{1} and NH_{2}) are generated on the critical operation and one neighborhood of operation moves (NH_{3}) is generated on public critical block. The details of three neighborhoods are as follows:
NH _{ 1 } Find these machines M _{s} with the maximal makespan and then randomly select a machine M _{ k } from M _{s}. Randomly select an public critical operation O _{ ij } on the machine M _{ k }. From the candidate machine set M _{ ij }, randomly select another machine M’_{ k } different from the current one M _{ k } for the selected operation O _{ ij }. Then randomly select an insert point, which meets precedence constraints of the same job, from the chosen machine M’_{ k } and insert the operation in this point.
NH _{ 2 } Randomly select an public critical operation O _{ ij } with more than one candidate machines and sort the candidate machines of O _{ ij } by the processing time in ascending order. Then randomly select another machine M’_{ k }, which is different from the current one M _{ k }, from the front half candidate machines. Then assign the machine M’_{ k } to the operation O _{ ij }.
The pseudocode of variable neighborhood search is given in Algorithm 1.
where K is the number of the neighborhood types and K equals to 3. s″ ≻ s indicates that s″ dominates s.
The pseudocode of local search is given in Algorithm 2. where N _{S} is the searching size of the neighborhoods and N _{S} is set to 20 empirically.
Personalbest positions and globalbest position
The personalbest archives and globalbest archive
In this section, each individual has a personalbest archive to preserve nondominated individuals’ positions obtained by its history search and the globalbest archive is used to preserve nondominated individuals’ positions obtained by the population. To obtain highquality and highdiversity solutions, a selective strategy of nondominated individuals’ positions should be developed to update the globalbest archive and the personalbest archive. Many selection mechanisms, such as NSGAII (Deb et al. 2002), MOEA/D (Li and Zhang 2009), and SPEA2 (Zitzler et al. 2002) have already been used to sort the nondominated individuals. Weighted sum approach can combine all the objectives into a single objective to represent relative superiority of individuals, and this method can change the impacts of each criterion via adjusting the weights to solve the multiobjective problems. In our study, a novel weighted sum approach is presented as a criterion to update the personalbest archives and globalbest archive.
The update procedure is as follows: For particle i, suppose the maximal size of its personalbest archive is N _{p}. Add the personalbest archive and particle i to form a new archive Ω, and then select N _{p} nondominated particles from Ω by nondominated archive updating strategy. The globalbest archive is updated as follows: Suppose the maximal size of globalbest archive is N _{a}. Add the current globalbest archive and the nondominated particles of the current population to form a new archive Ω’, and then select N _{a} nondominated particles from Ω’ by nondominated archive update strategy. Here N _{p}, N _{a} is empirically set to 5 and 15. The nondominated archive update strategy is implemented as follows:
Nondominated archive update strategy
Randomly generate three numbers w _{1}, w _{2}, w _{3} in [0 1] and the weights are able to add some random impacts on the objectives. Then three coefficients (here is the 10, 1, 10^{−1}), which represents the real impacts of three objectives, are multiplied by these weights. Suppose the archive is Ω and its limited size is N _{a}. The pseudocode of the nondominated archive update strategy integrating weighted sum approach is as follows:
Stop criterion
The simulation experiments
Parameter settings and results
Four Kacem instances and ten Brdata instances (Brandimarte 1993; Kacem et al. 2002b) are used to evaluate the performance of our algorithm and several published algorithms are applied to compared with the proposed algorithm. The proposed algorithm is implemented in Matlab 7.1 on Lenovo PC with 4G RAM and 3.4G Intel (R) Core(TM) i33240 CPU. In order to obtain reliable results, our algorithm is run ten times on the same instance. The parameters are chosen experimentally to get a better satisfactory solution. The population size N is set as 100. The maximal generation number Iter _{max} is set as 300. ω is set as 0.98. c _{1} and c _{2} are set as 0.6, 0.4. c _{3} is set as 0.02.
Test on the Kacem instances
Results of the four Kacem instances
Kacem (m × n)  4 × 5  8 × 8  10 × 10  15 × 10  

Objective  C _{M}  W _{T}  W _{M}  C _{M}  W _{T}  W _{M}  C _{M}  W _{T}  W _{M}  C _{M}  W _{T}  W _{M} 
HTSA  11  32  10  14  77  12  7  43  5  11  91  11 
12  32  8  15  75  12  7  42  6  11  93  10  
AIA  N/A  14  77  12  7  43  5  11  93  11  
12  32  8  14  77  12  7  42  6  11  91  11  
N/A  15  76  12  8  42  5  11  93  10  
MOGA  11  32  10  15  81  11  8  42  5  11  91  11 
12  32  8  15  75  12  7  42  6  12  95  10  
11  34  9  16  73  13  8  41  7  11  98  10  
PDABC  11  32  10  14  77  12  8  41  7  12  91  11 
12  32  8  15  75  12  7  43  5  11  93  11  
13  33  7  16  73  13  8  42  5  N/A  
N/A  N/A  N/A  N/A  
SEA  N/A  14  77  12  N/A  N/A  
N/A  15  75  12  N/A  N/A  
N/A  16  73  13  N/A  N/A  
N/A  16  77  11  N/A  N/A  
MOPSO  11  32  10  16  73  13  8  41  7  11  91  11 
13  33  7  14  77  12  8  42  5  11  93  10  
12  32  8  16  77  11  7  43  5  N/A  
N/A  15  75  12  7  42  6  N/A 
The number of nondominated solutions for four Kacem instances
Kacem (m × n)  HTSA  AIA  MOGA  PDABC  SEA  MOPSO  

4 × 5  2  N/A  1  3  3  4  3 
8 × 8  2  1  2  3  3  4  4 
10 × 10  2  1  2  3  3  4  4 
15 × 10  2  1  2  3  2  2  2 
Test on the Brdata instances
The second category of 10 instances is from Brandimarte (Brdata instances) ranging from 10 jobs × 6 machines to 20 jobs × 15 machines and they are generated by a uniform distribution between given limits. Xing’s algorithm (Xing et al. 2009), MOGA (Wang et al. 2010), HTSA (Li et al. 2010), HSFLA (Li et al. 2012) and AIA (Bagheri et al. 2010) are used to compare with MOPSO algorithm. The data of compared algorithm are from the published paper (Li et al. 2010, 2012).
Results of the ten Brdata instances
Name  MOGA  HTSA  HSFLA  AIA  MOPSO  

MK01  
C _{M}  42  40  40  40  40  40 
W _{T}  162  169  167  165  171  167 
W _{M}  42  36  36  37  36  36 
MK02  
C _{M}  28  26  26  26  26  26 
W _{T}  155  151  151  152  154  151 
W _{M}  28  26  26  26  26  26 
MK03  
C _{M}  204  204  204  204  204  204 
W _{T}  852  855  852  852  1207  852 
W _{M}  204  199  204  204  204  204 
MK04  
C _{M}  68  66  61  62  60  61 
W _{T}  352  345  366  364  403  382 
W _{M}  67  63  61  61  60  60 
MK05  
C _{M}  177  173  172  173  173  173 
W _{T}  702  683  687  685  686  683 
W _{M}  177  173  172  173  173  173 
MK06  
C _{M}  75  62  65  64  63  62 
W _{T}  431  424  398  403  470  424 
W _{M}  67  55  62  55  56  55 
MK07  
C _{M}  150  139  140  141  140  139 
W _{T}  717  693  695  696  695  693 
W _{M}  150  139  140  141  140  139 
MK08  
C _{M}  523  523  523  523  523  523 
W _{T}  2524  2524  2524  2524  2524  2524 
W _{M}  523  515  523  523  523  523 
MK09  
C _{M}  311  311  310  311  312  310 
W _{T}  2374  2290  2294  2275  2591  2514 
W _{M}  299  299  301  299  306  299 
MK10  
C _{M}  227  214  214  215  214  214 
W _{T}  1989  2082  2053  1957  2121  2082 
W _{M}  221  204  210  198  206  204 
Results of the ten Brdata instances
Name  SEA  TSPCB  MOPSO  

C _{M}  C _{M}  Av(CPU)  C _{M}  Imp _{1} %  Imp _{2} %  Av(C _{M})  Std(C _{M})  Av(CPU)  
MK01  40  40  2.8  40  0  0  40.00  0  10.22 
MK02  26  26  19.31  26  0  0  26.40  0.52  30.35 
MK03  204  204  0.89  204  0  0  204.00  0  20.07 
MK04  61  62  40.82  61  0  +1.61  62.35  0.47  58.22 
MK05  173  172  20.23  173  0  −0.58  173.75  0.81  27.04 
MK06  65  65  27.18  62  +4.62  +4.62  62.34  0.36  75.22 
MK07  140  140  35.29  139  0  +0.71  139.30  0.46  52.51 
MK08  523  523  4.65  523  0  0  523.75  0.68  45.20 
MK09  311  310  70.38  310  +0.32  0  312.60  1.53  104.42 
MK10  255  214  89.83  214  +16.08  0  214.55  0.65  156.73 
where C _{M} ^{com} and C _{M} ^{pro} are the best makespan obtained by compared algorithm and obtained by our proposed algorithm respectively. imp% is the percentage of the improvement to the compared algorithm.
As PSO can memorize each particle’s experience and the population’s experience, PSO for multiobjective problem can track and memorize nondominated solutions encountered by each particle (self experience) and the population (social experience), and a collaborative guiding way of self experience and social experience can balance exploration and exploitation and contribute to prevent premature. In our paper, the advantage of MOPSO is having many cognitive memories (no other algorithms have such memories) and a social memory to keep the diversity of nondominated solutions and balance local search and global search. Then it is convenient for social memory to do a further research. This search mechanism can effectively avoid the premature and improve the solutions. It is verified by that the proposed algorithm obtains highquality and more better solutions for most of Kacem instances and Brdata instances.
Parameter sensitivity analysis
The factor level of parameters
Parameters  Value range  Factor level  

1  2  3  4  
N  50–200  50  100  150  200 
ω  0.90–0.98  0.9  0.94  0.96  0.98 
(c _{1}, c _{2})  0.2–0.8  (0.2, 0.8)  (0.4, 0.6)  (0.6, 0.4)  (0.8, 0.2) 
c _{3}  0.001  0.001  0.01  0.05  0.1 
The orthogonal table of designed experiments
Experiment number  Factor level  Av(C _{M})  

N  ω  (c _{1}, c _{2})  c _{3}  
1  1  1  3  4  28.8 
2  1  2  4  3  29.4 
3  1  3  2  1  28.2 
4  1  4  1  2  27.8 
5  2  1  2  4  29.2 
6  2  2  3  1  28.8 
7  2  3  4  2  29.0 
8  2  4  1  3  28.8 
9  3  1  1  1  28.4 
10  3  2  2  2  28.8 
11  3  3  3  3  28.8 
12  3  4  4  4  28.6 
13  4  1  3  2  27.6 
14  4  2  1  4  28.6 
15  4  3  4  1  29.0 
16  4  4  2  3  28.8 
The Delta of each parameter
Factor  N  ω  (c _{1}, c _{2})  c _{3} 

1  28.55  28.50  28.40  28.60 
2  28.95  28.90  28.75  28.30 
3  28.65  28.75  28.50  28.65 
4  28.50  28.50  29.00  28.80 
Delta  0.45  0.40  0.60  0.5 
Conclusions
In this paper, a multiobjective FJSP with three criteria is investigated to meet the requirements in manufacturing system and MOPSO algorithm is developed to address this problem. In MOPSO algorithm, a discrete version of PSO employing special discrete operators is proposed, and personalbest archives and globalbest archive, which is updated by nondominated archive update strategy and is respectively used to select personalbest positions and globalbest position, are developed to preserve nondominated positions. Cognitive memories and social memory can keep the diversity of nondominated solutions and balance local search and global search. Additionally, variable neighborhood search integrating three neighborhoods on the globalbest archive is applied to improve the exploiting capability. MOPSO algorithm is evaluated on Kacem instances and Brdata instances, and compared with some published algorithms. Computational experiments demonstrate that the MOPSO algorithm have a better comprehensive performance than other algorithms to solve multiobjective FJSP.
Research work should be continued in the future and it includes the followings: Firstly, the theory of multiobjective optimization should be developed to support the study of multiobjective FJSP. Secondly, the FJSP model also should be developed or rebuilt to meet the dynamic and varied environment and requirements. Finally, more efficient algorithm or strategy should be studied for solving the difficult FJSP problem.
Declarations
Authors’ contributions
SH carried out the study, collected data, designed the experiments, implemented the simulation, analyzed data and wrote the main manuscript. NT provided substantive intellectual contributions and supplementary information to this study, participated in the design of the study and revised the manuscript for the content. YW gave conceptual advice and technical support, and helped to prepare the manuscript. ZJ participated in literature research, gave some suggestions of the study and made the general supervision of the research. All authors read and approved the final manuscript.
Acknowledgements
This work is supported by the National Natural Science Foundation of China under Grant No: 61572238, by the National Hightech Research and Development Projects of China under Grant No: 2014AA041505, by the Provincial Outstanding Youth Foundation of Jiangsu Province under Grant No: BK20160001.
Competing interests
The authors declared that they have no competing interests.
Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
Authors’ Affiliations
References
 Artigues C, Feillet D (2008) A branch and bound method for the jobshop problem with sequencedependent setup times. Ann Oper Res 159(1):135–159View ArticleGoogle Scholar
 Bagheri A, Zandieh M, Mahdavi I, Yazdani M (2010) An artificial immune algorithm for the flexible jobshop scheduling problem. Future Gener Comput Syst 26(4):533–541View ArticleGoogle Scholar
 Balaraju G, Venkatesh S, Reddy BSP (2014) Multiobjective flexible job shop scheduling using hybrid differential evolution algorithm. Int J Internet Manuf Serv 3(3):226–243Google Scholar
 Brandimarte P (1993) Routing and scheduling in a flexible job shop by tabu search. Ann Oper Res 41(3):157–183View ArticleGoogle Scholar
 Chiang TC, Lin HJ (2013) A simple and effective evolutionary algorithm for multiobjective flexible job shop scheduling. Int J Prod Econ 141(1):87–98View ArticleGoogle Scholar
 Cwiek M, Nalepa J (2014) A fast genetic algorithm for the flexible job shop scheduling problem[C]. Proceedings of the 2014 conference companion on Genetic and evolutionary computation companion. ACM. pp. 1449–1450Google Scholar
 Deb K, Pratap A, Agarwal S, Meyarivan TAMT (2002) A fast and elitist multiobjective genetic algorithm: NSGAII. IEEE Trans Evol Comput 6(2):182–197View ArticleGoogle Scholar
 Defersha FM, Chen M (2010) A parallel genetic algorithm for a flexible jobshop scheduling problem with sequence dependent setups. Int J Adv Manuf Technol 49(1–4):263–279View ArticleGoogle Scholar
 Della Croce F, Ghirardi M, Tadei R (2002) An improved branchandbound algorithm for the two machine total completion time flow shop problem. Eur J Oper Res 139(2):293–301View ArticleGoogle Scholar
 Gao KZ, Suganthan PN, Pan QK et al (2014) Paretobased grouping discrete harmony search algorithm for multiobjective flexible job shop scheduling[J]. Inf Sci 289(1):76–90View ArticleGoogle Scholar
 Geiger CD, Uzsoy R, Aytuğ H (2006) Rapid modeling and discovery of priority dispatching rules: An autonomous learning approach. J Sched 9(1):7–34View ArticleGoogle Scholar
 Gen M, Tsujimura Y, Kubota E (1994). Solving jobshop scheduling problems by genetic algorithm. IEEE international conference on systems, man, and cybernetics, humans, information and technology, vol 2. pp. 1577–1582Google Scholar
 Heger J, Branke J, Hildebrandt T, et al. (2016) Dynamic adjustment of dispatching rule parameters in flow shops with sequencedependent setup times. Int J Prod Res 1–13Google Scholar
 Jia S, Hu ZH (2014) Pathrelinking Tabu search for the multiobjective flexible job shop scheduling problem. Comput Oper Res 47:11–26View ArticleGoogle Scholar
 Kacem I, Hammadi S, Borne P (2002a) Approach by localization and multiobjective evolutionary optimization for flexible jobshop scheduling problems. IEEE Trans Syst Man Cybern Part C Appl Rev 32(1):1–13View ArticleGoogle Scholar
 Kacem I, Hammadi S, Borne P (2002b) Paretooptimality approach for flexible jobshop scheduling problems: hybridization of evolutionary algorithms and fuzzy logic. Math Comput Simul 60(3):245–276View ArticleGoogle Scholar
 Kamble SV, Mane SU, Umbarkar AJ (2015) Hybrid multiobjective particle swarm optimization for flexible job shop scheduling problem. Int J Intell Syst Appl 7(4):54Google Scholar
 Karthikeyan S, Asokan P, Nickolas S (2014) A hybrid discrete firefly algorithm for multiobjective flexible job shop scheduling problem with limited resource constraints. Int J Adv Manuf Technol 72(9–12):1567–1579View ArticleGoogle Scholar
 Li Y, Chen Y (2014) An improved genetic algorithm of Bilevel coding for flexible job shop scheduling problems. J Netw 9(7):1783–1789Google Scholar
 Li H, Zhang Q (2009) Multiobjective optimization problems with complicated Pareto sets, MOEA/D and NSGAII. IEEE Trans Evol Comput 13(2):284–302View ArticleGoogle Scholar
 Li JQ, Pan QK, Liang YC (2010) An effective hybrid tabu search algorithm for multiobjective flexible jobshop scheduling problems. Comput Indust Eng 59(4):647–662View ArticleGoogle Scholar
 Li JQ, Pan QK, Suganthan PN et al (2011a) A hybrid tabu search algorithm with an efficient neighborhood structure for the flexible job shop scheduling problem. Int J Adv Manuf Technol 52(5–8):683–697View ArticleGoogle Scholar
 Li JQ, Pan QK, Gao KZ (2011b) Paretobased discrete artificial bee colony algorithm for multiobjective flexible job shop scheduling problems. Int J Adv Manuf Technol 55(9–12):1159–1169View ArticleGoogle Scholar
 Li J, Pan Q, Xie S (2012) An effective shuffled frogleaping algorithm for multiobjective flexible job shop scheduling problems[J]. Appl Math Comput 218(18):9353–9371Google Scholar
 Lin J (2015) A hybrid biogeographybased optimization for the fuzzy flexible job shop scheduling problem[J]. KnowlBased Syst 78:59–74View ArticleGoogle Scholar
 Moghadam AM, Wong KY, Piroozfard H (2014) An efficient genetic algorithm for flexible jobshop scheduling problem. IEEE international conference on industrial engineering and engineering management. pp. 1409–1413Google Scholar
 MouelhiChibani W, Pierreval H (2010) Training a neural network to select dispatching rules in real time. Comput Indus Eng 58(2):249–256View ArticleGoogle Scholar
 Pezzella F, Morganti G, Ciaschetti G (2008) A genetic algorithm for the flexible jobshop scheduling problem. Comput Oper Res 35(10):3202–3212View ArticleGoogle Scholar
 Pickardt C, Branke J, Hildebrandt T et al. (2010) Generating dispatching rules for semiconductor manufacturing to minimize weighted tardiness. Proceedings of the 2010 Winter Simulation Conference. IEEE. 2504–2515Google Scholar
 Rahmati SHA, Zandieh M (2012) A new biogeographybased optimization (BBO) algorithm for the flexible job shop scheduling problem. Int J Adv Manuf Technol 58(9–12):1115–1129View ArticleGoogle Scholar
 Shao X, Liu W, Liu Q, Zhang C (2013) Hybrid discrete particle swarm optimization for multiobjective flexible jobshop scheduling problem. Int J Adv Manuf Technol 67(9–12):2885–2901View ArticleGoogle Scholar
 Tay JC, Ho NB (2008) Evolving dispatching rules using genetic programming for solving multiobjective flexible jobshop problems. Comput Indus Eng 54(3):453–473View ArticleGoogle Scholar
 Wang X, Gao L, Zhang C, Shao X (2010) A multiobjective genetic algorithm based on immune and entropy principle for flexible jobshop scheduling problem. Int J Adv Manuf Technol 51(5–8):757–767View ArticleGoogle Scholar
 Wang SX, Zhang CY, Jin LL (2014) A hybrid genetic algorithm for flexible jobshop scheduling problem. Adv Mater Res 889:1179–1184View ArticleGoogle Scholar
 Wenqi H, Aihua Y (2004) An improved shifting bottleneck procedure for the job shop scheduling problem. Comput Oper Res 31(12):2093–2110View ArticleGoogle Scholar
 Xing LN, Chen YW, Yang KW (2009) An efficient search method for multiobjective flexible job shop scheduling problems. J Intell Manuf 20(3):283–293View ArticleGoogle Scholar
 Xing LN, Chen YW, Wang P, Zhao QS, Xiong J (2010) A knowledgebased ant colony optimization for flexible job shop scheduling problems. Appl Soft Comput 10(3):888–896View ArticleGoogle Scholar
 Yuan Y, Xu H, Yang J (2013) A hybrid harmony search algorithm for the flexible job shop scheduling problem. Appl Soft Comput 13(7):3259–3272View ArticleGoogle Scholar
 Zhang C, Li P, Rao Y, Li S (2005) A new hybrid GA/SA algorithm for the job shop scheduling problem. Evolutionary Computation in Combinatorial Optimization. Springer, Berlin, Heidelberg, pp 246–259View ArticleGoogle Scholar
 Zhang CY, Rao YQ, Li PG, Shao XY (2007) Bilevel genetic algorithm for the flexible jobshop scheduling problem. Chin J Mech Eng 43(4):119–124View ArticleGoogle Scholar
 Zhang G, Gao L, Shi Y (2011) An effective genetic algorithm for the flexible jobshop scheduling problem. Expert Syst Appl 38(4):3563–3573View ArticleGoogle Scholar
 Zitzler E, Laumanns M, Thiele L (2002) Spea2: improving the strength pareto evolutionary algorithm for multiobjective optimization. In: Evolutionary methods for design optimisation and control. CIMNE, Barcelona, Spain, pp 95–100Google Scholar
 Xue H, Zhang P, Wei S, Yang L (2014) An improved immune algorithm for multiobjective flexible jobshop scheduling. J Netw 9(10):2843–2850Google Scholar