Professional Documents
Culture Documents
A R T I C L E I N F O A B S T R A C T
Keywords: To improve the reliability of production systems in the plastics industry, researchers are now taking mould
Production scheduling maintenance into consideration, besides machine maintenance, in the production scheduling problem. Different
Machine maintenance strategies and approaches have been proposed to solve the production scheduling with mould maintenance (PS-
Mould maintenance
MM) problem. However, it remains a challenge to provide a satisfactory solution. In this research, a new hybrid
Three-level particle swarm optimization
Variable neighbourhood search
metaheuristic algorithm (TLPSO-VNS algorithm) is proposed, which is a combination of the three-level particle
swarm optimization (TLPSO) algorithm devised in this study and variable neighbourhood search (VNS). Differing
from the joint scheduling strategies used in existing research, this study divides the integrated problem into three
sub-problems and solves them through three interrelated PSOs named TLPSO. Then, the solutions obtained by
TLPSO are enhanced by VNS. The key characteristics of TLPSO and VNS are employed simultaneously to achieve
superior solutions in solving the addressed optimization problem. In the proposed hybrid algorithm, the TLPSO
performs a global search whereas the VNS has a local search role. These two techniques complement each other to
enhance the search diversification and intensification. Numerical experiments on a variety of simulated scenarios
show the efficiency and effectiveness of the proposed algorithm by comparing it with other algorithms.
1. Introduction guarantee a high machine utilization rate [4]. Many good algorithms are
proposed for the scheduling problem [5–8]. In most research studies on
Because of the special merits of plastics such as high strength, low production scheduling, it is postulated that machines are always avail-
price, light weight, and user-friendliness, plastics materials find extensive able throughout the whole production planning stage. However, in actual
utilization in many industries and daily life [1]. Moreover, the plastics situations, this assumption may not be reasonable, because failure may
industry greatly contributes to the economy of many countries, such as occur at any time, making some machines unavailable for job processing
the United States, through providing employment to a large number of [9]. So, machine maintenance planning is essential, and can enhance the
people, and is regarded as the third largest manufacturing industry in the reliability of the system. To maximize the system productivity, mainte-
country [2]. The main process of converting plastics into products is by nance planning and production scheduling must be considered together,
injection moulding, which needs both an injection machine and an in- and be given the same importance level [10]. More and more scholars are
jection mould. Since consumer demand for plastic products is reflected paying attention to production scheduling with the machine mainte-
by the overall growth of plastics sales [2], more methods are being nance problem, and different models which integrate production
explored to improve the resource efficiency of the production process scheduling with machine maintenance planning have been built to
under new visions for the future, for example, the “smart factory” [3]. optimize productivity by harmonizing both activities. However, only the
Furthermore, to realize production objectives and avoid production machine maintenance is considered in traditional production scheduling
bottlenecks, production scheduling is planned in advance. A good pro- with the resource maintenance problem and research on production
duction scheduling can ensure the efficient use of labour resources and scheduling with the mould maintenance problem is very limited. The
* Corresponding author.
E-mail address: drniuben@gmail.com (B. Niu).
https://doi.org/10.1016/j.swevo.2019.100572
Received 25 November 2018; Received in revised form 31 August 2019; Accepted 2 September 2019
Available online 7 September 2019
2210-6502/© 2019 Published by Elsevier B.V.
X. Fu et al. Swarm and Evolutionary Computation 50 (2019) 100572
injection mould is also a significant component in the plastics industry the total weighted tardiness, an integrated model [13] was proposed
and the breakdowns caused by factors related to mould are even more which determines production scheduling and preventive maintenance
than breakdowns caused by factors related to machine [11]. The plastics planning decisions simultaneously, and numerical experiments showed
manufacturer needs to consider the condition of the mould to guarantee a the effectiveness of this integration. In addition, another integrated
good production efficiency. So the integrated problem with mould model [14] was proposed which harmonized single-machine scheduling
maintenance consideration should be given more attention. decisions and preventive maintenance planning decisions aiming at
Recently, a model [11] was built to integrate production scheduling minimizing the total expected weighted completion time of the job, and
with mould maintenance. Time-dependent deteriorating maintenance they pointed out that integrated production scheduling with the pre-
schemes for the machine and mould were used, and a joint scheduling ventive maintenance planning problem is a meaningful research area.
strategy was proposed. This strategy decided production scheduling, Furthermore, the two-stage assembly flow shop problem with preventive
machine maintenance, and mould maintenance simultaneously to mini- maintenance activities and machine breakdowns was investigated [15]
mize the overall makespan. The genetic algorithm (GA) approach was to minimize the makespan, and two meta-heuristic algorithms were
used to solve this problem. However, the maintenance planning found proposed. Moreover, two new models [16] were proposed to formulate
may not be the most appropriate one for the production scheduling, the flexible job shop scheduling problem with machine unavailability
when production scheduling and resource maintenance planning are constraints due to preventive maintenance, and a new efficient hybrid
decided concurrently, since the local search ability of the genetic algo- algorithm named “Dual-Ants Colony” was developed to minimize the
rithm (GA) is limited. The mismatch between production scheduling and makespan. All these studies show that it is worthwhile to conduct
resource maintenance is underestimated, which may result in the low research on the problem of integrating production scheduling and
production efficiency. In addition, more efficient algorithms need to be maintenance planning.
found to improve the quality of the solutions. Different machine maintenance strategies and the effects on pro-
To overcome the shortcomings of previous research and improve the duction scheduling are also explored by scholars. Different machine
overall production efficiency, this study proposes a problem decompo- preventive maintenance policies regarding flowshop problems aiming at
sition mechanism to deal with the production scheduling with the mould maximizing the availability of machines were studied [17]. And a simple
maintenance (PS-MM) problem, and presents an effective and efficient criterion was proposed to schedule different maintenance operations
hybrid metaheuristic algorithm: the TLPSO-VNS algorithm, which with the production sequence and showed the importance of the inte-
innovatively combines three-level particle swarm optimization (TLPSO) gration. Furthermore, Aghezzaf and Najid [18] examined integrating the
and variable neighbourhood search (VNS). Firstly, this integrated prob- production and preventive maintenance problem in a system which was
lem is divided into a basic production scheduling problem, a machine made up of parallel failure-prone production lines. They assumed that
maintenance problem and a mould maintenance problem. To minimize minimal repair would be conducted when a production line breaks down
the overall makespan, the production scheduling problem is considered and perfect preventive maintenance is conducted periodically, with the
first. The corresponding machine maintenance planning is decided after period decided by the decision maker. Then, different models were built,
the production scheduling is determined. Once the production sched- depending on different maintenance policies. To minimize the overall
uling and machine maintenance are confirmed, the corresponding mould makespan, Chung et al. [19] proposed a double tier genetic algorithm
maintenance is determined. Every sub-problem is solved by one single approach for multi-factory production networks, which scheduled per-
particle swarm optimization (PSO) algorithm and these three PSOs are fect and imperfect maintenance on machines at the same time in order to
interrelated. Once good solutions are obtained by the three-level PSO keep the system reliability at an acceptable level. In addition, a
(TLPSO), variable neighbourhood search (VNS) is applied to these solu- parallel-machine scheduling problem [20] was explored where periodic
tions to conduct the local search. Seven types of neighbourhoods are maintenance cycles of the machines were machine-dependent but not the
designed, and they are changed systematically. The best solution is same. Recently, uncertainty was also considered in the integrated prob-
chosen as the final solution when all the processes finish. The proposed lem. Wang and Liu [21] studied an optimization problem which inte-
TLPSO-VNS algorithm is robust and can find high-quality solutions by grated production scheduling and preventive maintenance in a
effectively exchanging search intensification and diversification. To our two-machine flow shop, aiming to minimize the makespan. Time to
knowledge, this algorithm is the first algorithm to hybridize TLPSO with failure of each machine was assumed to be subjected to a Weibull
VNS to solve the integrated problem, building on the advantages of these probability distribution and four heuristics based on genetic algorithm
two individual metaheuristic components and overcoming the inherent (GA) were proposed. Furthermore, Abdelrahim and Vizvari [22]
limitations. considered the case in which random failures occurred on a single ma-
The reminder of this paper is organized as follows: Section 2 is a re- chine in the integrated problem. It was assumed that the probability of
view of the literature on this topic, which provides an understanding of machine failure is an increasing function of the age and the length of the
the previous research in this area, as well as providing a rationale for the time interval, and they only considered perfect maintenance. Consider-
choice of the topic in the present study. Section 3 restates the production ation of different maintenance strategies and uncertainty makes the in-
scheduling with mould maintenance (PS-MM) problem. Section 4 pro- tegrated model more complicated but more in line with the actual
poses the TLPSO-VNS algorithm. Section 5 presents the computational situation.
results acquired and shows the superiority of the TLPSO-VNS algorithm. However, in the plastics industry, the mould is also an important
Section 6 provides the conclusions and suggestions for further research. element that guarantees normal production, and needs to be considered.
A model was built [11] to integrate production scheduling with mould
2. Literature review maintenance and a joint scheduling strategy was proposed to minimize
the overall makespan under the assumption that the maintenance
Manufacturers are forced to improve their efficiency because of the schemes are time-dependent. Besides, the more complicated case was
growing expectation of customers and the fierce competition in the considered [23] in which there were multiple resources and maintenance
market. As one of the most vital elements in many industries, mainte- tasks in the integrated problem, and it was proven that the proposed
nance planning has an explicit effect on the improvement of the overall jointly scheduling method can reduce the makespan significantly.
production performance [12]. Traditionally, production scheduling and Furthermore, a new integrated problem [24] was studied in which each
preventive maintenance planning decisions are made independently job contained multiple operations with multiple moulds. In addition,
although they are interdependent. Nowadays, more and more re- Wang and Liu [25] investigated a multi-objective parallel machine
searchers are trying to consider the interdependency and explore more scheduling problem with flexible preventive maintenance on the ma-
efficient methods to optimize different production targets. To minimize chine and mould, aiming to minimize the makespan and unavailability of
2
X. Fu et al. Swarm and Evolutionary Computation 50 (2019) 100572
3
X. Fu et al. Swarm and Evolutionary Computation 50 (2019) 100572
4.1. Overall algorithm description level PSO focuses on the problem of mould maintenance (OM), so the
particle in the third level PSO also includes information on the mould
For this integrated scheduling problem, we divide it into three sub- maintenance (OM) besides information on the job sequence (J), the
problems: the production scheduling problem, the machine maintenance corresponding machine sequence (M) and machine maintenance (AM).
problem and the mould maintenance problem. There are many potential The particle in the third level PSO is named as the JMAMOM-Particle
production scheduling solutions and for every specific production with dimension 4 P. In the evolution process of TLPSO, the values of
scheduling solution, there are many potential machine maintenance so- these particles’ positions vary in the real number space. To decode the
lutions and mould maintenance solutions. The first level PSO contributes particles’ position into a suitable scheduling solution for this problem,
to finding some good production scheduling solutions. Then the second random key representation [49] and the smallest position value (SPV)
level PSO can help every specific production scheduling solution to find a rule [50] are used. After decoding, the values of the J parameters are
good machine maintenance solution. Once the production scheduling integers between 1 and P (P is the number of jobs); values of M param-
and machine maintenance solutions are confirmed, the third level PSO eters are integers between 1 and Q (Q is the number of machines); The
helps to find a good mould maintenance solution for every specific pro- AM parameter is the maintenance decision on the machine, with value
duction scheduling solution with specific machine maintenance. 0 or 1; The OM parameter is the maintenance decision on the mould, with
Compared with the joint scheduling strategy, this decomposition mech- value 0 or 1; The corresponding resource is maintained after finishing the
anism improves the precision of the search. Once some good scheduling job if the relevant AM or OM is denoted as 1, otherwise they are denoted
solutions are obtained from TLPSO, VNS is used to enhance these solu- as 0.
tions. For these solutions, seven kinds of neighbours are designed to Fig. 2. Encoding and decoding of a series of particles in TLPSO shows
conduct the local search. The best solution is reserved when the VNS a series of JM-Particle, JMAM-Particle, JMAMOM-Particle examples
ends. Fig. 1. Framework of the overall algorithm shows the process of the before and after decoding. There are 5 jobs, 3 machines and 2 moulds in
problem analysis and the design of the overall algorithm. this example. Mould 1 can be used to produce Jobs 1, 3, 5 and Mould 2
can be used to produce Jobs 2, 4. From Fig. 2c, we can see that the value
4.2. Encoding and decoding of the particles in the three-level PSO (TLPSO) of the job sequence (J) in the original position of the JMAM-particle is
(1.2 0.25 0.1 0.8 1.8), and it is transferred into (3 2 4 1 5) by random key
In the three-level PSO (TLPSO), the first level PSO only considers the representation [49] and the smallest position value (SPV) rule [50]. We
problem of production scheduling. So, the particle in the first level PSO rank the sequence (1.2 0.25 0.1 0.8 1.8) according to the ascending order
only includes information on the job sequence (J) and the corresponding and obtain (0.1 0.25 0.8 1.2 1.8). Since the number 0.1 is in the third
machine sequence (M). The particle in the first level PSO is named as the position of the original sequence, we decode it into 3. Since the number
JM-Particle with dimension 2 P (P is the number of jobs). The second 0.25 is in the second position of the original sequence, we decode it into
level PSO focuses on the problem of machine maintenance (AM), so the 2. By this rule, the original positions can be decoded into a suitable
particle in the second level PSO also contains information on machine scheduling solution (3 2 4 1 5). The value of the corresponding machine
maintenance (AM) apart from information on the job sequence (J) and sequence (M) in the original position of the JMAM-particle is (0.3 1.2 0.8
corresponding machine sequence (M). The particle in the second level 1.5 0.5). We divide the interval [0.3 1.5] (0.3 is the minimum and 1.5 is
PSO is named as the JMAM-Particle, with dimension 3 P. The third the maximum among all the numbers) into 3 intervals, [0.3 0.7), [0.7
4
X. Fu et al. Swarm and Evolutionary Computation 50 (2019) 100572
Figure 2. Encoding and decoding of a series of particles in TLPSO. (a) Encoding and decoding of JM- particle. (b) Encoding and decoding of JMAM-particle. (c)
Encoding and decoding of JMAMOM-particle.
1.1) and [1.1 1.5] (there are 3 machines in this example). Since 0.3 and mould on machine 1 will also be maintained. Job 2 is allocated to ma-
0.5 are in the first interval, after decoding, the value in the relevant chine 3, but machine 3 will not be maintained since the corresponding
position is 1. Since 0.8 is in the second interval after decoding, the value AM parameter is 0 and the injection mould on machine 3 will not be
in the relevant position is 2. Since 1.2 and 1.5 are in the third interval maintained because the corresponding OM parameter is 0.
after decoding, the value in the relevant position is 3. So, the corre- To illustrate the influence of the preventive maintenance on the value
sponding machine sequence (M) can be transferred into (1 3 2 3 1). The of the objective function, the Gantt charts of the example in Fig. 2a
value of the corresponding machine maintenance sequence (AM) in the (without resource maintenance consideration) and the Gantt charts of the
original position of the JMAM-particle is (0.8 0.2 0.4 1 0.5) and we divide example in Fig. 2c (with resource maintenance consideration) are shown
the interval [0.2 1] (0.2 is the minimum and 1 is the maximum among all in Fig. 3 and Fig. 4. In the Gantt charts, MT means maintenance. The
the numbers) into 2 intervals, [0.2 0.6) and [0.6 1]. Since 0.8 and 1 are in numbers in the brackets are the processing time that each job needs and
the interval [0.6 1], after decoding, the value in the relevant position is 1. the maintenance time that the resource needs. Since the beginning time
Since 0.2, 0.4 and 0.5 are in the interval [0.2 0.6), after decoding, the of a job is decided by the available time of the machine and the mould
value in the relevant position is 0. So, corresponding machine mainte- that the job uses, we can see that the job 1 is delayed because of the
nance sequence (AM) can be transferred into (1 0 0 1 0). A similar maintenance on mould 1, and the job 5 is delayed because of the main-
transfer method can be applied to mould maintenance (OM). After tenance on machine 1. However, the maintenance on machine 3 after job
decoding, it can be known that job 3 is distributed on machine 1 and 1, the maintenance on mould 1 after job 5 and the maintenance on mould
machine 1 will be maintained after job 3 is finished, and the injection 2 after job 4 have no influence on the objective because all the jobs are
5
X. Fu et al. Swarm and Evolutionary Computation 50 (2019) 100572
Figure 4. Gantt charts of the example in Fig. 2c. (a) Machine schedule of the
example in Fig. 2c. (b) Mould schedule of the example in Fig. 2c.
finished. Also, we know that the makespan is changed from 125 units of
time to 180 units of time because of the machine maintenance and mould
maintenance.
In our assumption, the maintenance must be conducted after
completion of the current job once a resource reaches its maximum age.
There is the possibility that the scheduling solution does not show the
according compulsory maintenance on the resource. Under this situation, Figure 6. Gantt charts with compulsory maintenance. a: Machine schedule with
compulsory maintenance. b: Mould schedule with compulsory maintenance.
6
X. Fu et al. Swarm and Evolutionary Computation 50 (2019) 100572
Gantt chart is shown in Fig. 5. From Fig. 5, we can know that the age of Step2b: Pass every JMAM-Particle one by one to the third level
mould 2 is over 90 units of time after the job 8. So, a compulsory PSO. In the third level PSO, Step2b(i)-Step2b(v) will be con-
maintenance (50 units of time) must be conducted after the job 8, and the ducted until the stopping condition is reached, and the best
Gantt charts in Fig. 5 need to be modified as the Gantt charts in Fig. 6. JMAMOM-Particle will be recorded.
The compulsory preventive maintenance is added after the job 8 and the 3rd level PSO
overall makespan is improved from 175 units of time to 225 units of time Step2b(i): Initialization. For each JMAM-Particle, initialize a
because of the compulsory preventive maintenance. population of JMAMOM-Particles with 4 P dimensions. The first
3 P dimensions of the JMAMOM-Particles are all the same as its
related JMAM-Particle. The last P dimensions of the JMAM-
4.3. Swarm initialization and swarm improvement through three-level PSO
Particles are produced randomly in [0, 1]. A population of ve-
locities are produced, and the first 3 P dimensions of these ve-
The TLPSO algorithm consists of three levels, referred to as the first
locities are zero, and the last P dimensions of velocities are
level PSO, the second level PSO and the third level PSO. The first level
produced randomly in [0, 1].
PSO solves the production scheduling problem, which is the master
Step2b(ii): Fitness. Use random key representation and the
problem. The JM-particle in the first level PSO stores the information on
smallest position value (SPV) rule to transfer the continuous po-
the job sequence and the corresponding machine sequence. Firstly, the
sition vector of the JMAMOM-Particle into a suitable scheduling
JM-particle, acting as input data, will be passed to the second level PSO
solution, and then measure the fitness (makespan) of each
individually. In the second level PSO, each JM-particle will get a series of
JMAMOM-Particle in the population and find the local best so-
JMAM-particles which have the same information on job sequence and
lution for all JMAMOM-Particles and the global best solution.
corresponding machine sequence but different information on machine
Step2b(iii): Update the velocity and position of each JMAMOM-
maintenance. Secondly, each JMAM-particle will be passed into the third
particle. The velocity is updated according to Equation. 1 and
level PSO to obtain a series of JMAMOM-particles which contain the
then the position is updated according to Equation. 2. Finally, the
same information on job sequence, corresponding machine sequence,
inertia factor W is updated according to Equation. 3, where, Xij ðr3 Þ
and machine maintenance, but different information on mould mainte-
nance. Thirdly, the best JMAMOM-particle for each JMAM-particle ob- Xij ðr3 þ 1Þ, and Vij ðr3 Þ, Vij ðr3 þ1Þ are the positions and velocities
th
tained from the third level PSO will be sent back to the second level PSO. of the jth dimension of the particle i at the r th 3 and ðr3 þ 1Þ iter-
After the evolution process of the second level PSO, the best JMAM- ation. Without loss of generality, we restrict the velocity in [-1, 1].
particle corresponding to the best JMAMOM-particle obtained from the Pij ðr3 Þ is the best position of the jth dimension of the particle i at r th
3
third level PSO will be delivered back to the first level PSO. The best iteration. Pgj ðr3 Þ is the best position of the jth dimension of all the
JMAM-particle from the second level PSO with its corresponding best particles at the r th 3 iteration, and W is the inertia weight. Wmax is
JMAMOM-particle from the third level PSO for each JM-particle will be the maximum inertia weight and Wmin is the minimum inertia
recorded at each iteration of the first level PSO. When the iteration weight. C1 is the particle acceleration coefficient and C2 is the
process of the first level PSO finishes, all the JM-particles positions, and population acceleration coefficient. R1 and R2 are random
the scheduling solution of corresponding best JMAMOM-particles are numbers between 0 and 1.
recorded. The TLPSO algorithm ends. The details can be described as Step2b(iv): Fitness. Again, use random key representation and the
follows: smallest position value (SPV) rule to transfer the continuous po-
sition vector of the particles into a suitable scheduling solution
Start: the batch size of each job, the corresponding mould of each job, and measure the fitness (makespan) of each JMAMOM-Particle
the available machines for each job and the unit operation time of and update the optimal value of each JMAMOM-particle. P1ibest
each job are the input data for TLPSO. is the best value for the JMAMOM-particle i during the iteration
process, and P1ri 3 is the current fitness of particle i. If P1ri 3 < P1ibest ,
Vij ðr3 þ 1Þ ¼ W Vij ðr3 Þ þ C1 R1 ðPij ðr3 Þ Xij ðr3 ÞÞ
(1) then set P1ibest ¼ P1ri 3 , update Pij ðr3 Þ; otherwise, retain P1ibest and
þC2 R2 ðPgj ðr3 Þ Xij ðr3 ÞÞ
Pij ðr3 Þ. Update the optimal value of the population. Define g1best as
Xij ðr3 þ 1Þ ¼ Xij ðr3 Þ þ Vij ðr3 þ 1Þ (2) the best value of the particle population, and
g1best ¼ minðP1ibest Þ; ði ¼ 1; 2; ⋯P1enum3 Þ (enum3 is the number of
Wmax Wmin the popular size in the third level PSO). If g1rbest 3
< g1best , set
W ¼ Wmax r3 (3) r3
g1best ¼ g1best , update Pgj ðr3 Þ; otherwise, g1best and Pgj ðr3 Þ retain.
r3max
Step2b(v): Termination. Set r3 ¼ r3 þ 1, and check the condition
that if r3 r3max , then go to Step2b(iii), start a new iteration;
1st level PSO otherwise, terminate the third level PSO and calculate the mini-
Step 1: Initialization. Initialize a population of JM-Particles with mum fitness for the JMAMOM-particles. The minimum fitness,
random positions and velocities in [0, 1] and the dimension is 2 corresponding to the best JMAMOM-particle and corresponding
P (P is the number of jobs). best scheduling solution are recorded.
Step 2: Pass each JM-Particle one by one to the second level PSO. Step 2c: The best JMAMOM-particle and minimum fitness for each
In the second level PSO, Step 2a- Step 2g will be conducted until JMAM-particle obtained from the third level PSO are delivered to
the stopping condition is reached, and the best JMAM- Particle the second level PSO.
with its corresponding best JMAMOM-Particle will be recorded. Step 2d: Fitness. The fitness of each JMAM-particle is the fitness of
2nd level PSO the corresponding best JMAMOM-particle. Then, find the local
Step2a: Initialization. For every JM-Particle, initialize a popula- best solution for all JMAM- particles and the global best solution.
tion of JMAM-Particles with 3 P dimensions. The first 2 P di- Step 2e: Update the velocity and position of each JMAM-particle.
mensions of JMAM-Particles are all the same as its related JM- The velocity is updated according to Equation. 1 and then the
particle. The last P dimensions of the JMAM-Particles are pro- position is updated according to Equation. 2. Finally, the inertia
duced randomly in [0, 1]. A population of velocities are produced factor W is updated according to Equation. 3. The parameters
randomly, and the first 2 P dimensions of these velocities are have the same meaning and only need to change r3 into r2 to
zero, and the last P dimensions of the velocities are produced represent the second level iteration.
randomly in [0, 1].
7
X. Fu et al. Swarm and Evolutionary Computation 50 (2019) 100572
Step 2f: Fitness. To get the fitness of each new JMAM-particle, each JM-particle. Pibest is the best value for JM-particle i during the
again pass every JMAM-Particle one by one to the third level iteration process and Pri 1 is the current fitness of JM-particle i. If
PSO, repeat the process from Step2b-Step2c. Then, update the Pri 1 < Pibest , then set Pibest ¼ Pri 1 , update Pij ðr1 Þ; otherwise, retain
optimal value of each JMAM-particle. P2ibest is the best value for Pibest and Pij ðr1 Þ. Update the optimal value of the population.
JMAM-particle i during the iteration process and P2ri 2 is the cur- Define gbest as the best value of the particle population, and
rent fitness of JMAM-particle i. If P2ri 2 < P2ibest , then set P2ibest ¼ gbest ¼ minðPibest Þ; ði ¼ 1; 2; ⋯Penum1 Þ (enum1 is the number of the
P2ri 2 , update Pij ðr2 Þ; otherwise, P2ibest and Pij ðr2 Þ retain. Update the popular size in the first level PSO). If g rbest 1
< gbest , set gbest ¼ g rbest
1
,
optimal value of the population. Define g2best as the best value of update Pgj ðr1 Þ ; otherwise, retain gbest and Pgj ðr1 Þ.
the particle population, and g2best ¼ minðP2ibest Þ; Step 7: Termination. Set r1 ¼ r1 þ 1 and check the condition that
ði ¼ 1; 2; ⋯P2enum2 Þ (enum2 is the number of the popular size in the if r1 r1max , then go to Step 5, and start a new iteration.; other-
second level PSO). If g2rbest 2
< g2best , set g2best ¼ g2rbest 2
, update wise, terminate the first level PSO and calculate the best value for
Pgj ðr2 Þ; otherwise, retain g2best and Pgj ðr2 Þ. each JM-particle i and the best scheduling solution of JMAMOM-
Step 2g: Termination. Set r2 ¼ r2 þ 1, and check the condition that particle for each JM-particle i is recorded.
if r2 r2max , then go to Step 2e, and start a new iteration.; End: the best scheduling solution (JMAMOM-particle) for each
otherwise, terminate the second level PSO and calculate the JM-Particle is recorded.
minimum fitness for the JMAM-particles, which is the fitness of
each JM-particle. Fig. 7 shows the flowchart of TLPSO. In this flowchart, an example of
Step 3: The best JMAM-particle (with its corresponding best 5 jobs and 3 machines is given to illustrate the process of TLPSO. The
JMAMOM-particle obtained from the third level PSO) and the swarm size is assumed to be 3 for all these three level PSOs. Firstly, in the
minimum fitness for each JM-particle obtained from the second first level PSO, the positions of 3 JM-particles are randomly generated,
level PSO are delivered to the first level PSO. such as (0.1 0.8 0.17 0.2 0.4 0.3 0.8 0.9 0.3 0.6); (0.25 0.3 0.6 0.8 0.7 0.5
Step 4: Fitness. Measure the fitness of each JM-particle in the 0.9 0.1 0.4 0.5); (0.9 0.54 0.1 0.4 0.6 0.8 0.1 0.5 0.7 0.1) and the ve-
population and find the local best solution for all JM-particles and locities are also produced randomly. The dimension of these positions
the global best solution. and velocities is 10. Then, each of these JM-particles will be passed to the
Step 5: Update the velocity and position of each JM-particle. The second level PSO to determine the machine maintenance. The first JM-
velocity is updated according to Equation. 1, and then the position particle is taken as an example. The positions of 3 JMAM-particles with
is updated according to Equation. 2. Finally, the inertia factor W is dimensions of 15 are randomly generated, such as (0.1 0.8 0.17 0.2 0.4
updated according to Equation. 3. The parameters have the same 0.3 0.8 0.9 0.3 0.6 0.5 0.3 0.35 0.6 0.8); (0.1 0.8 0.17 0.2 0.4 0.3 0.8 0.9
meanings and only need to change r3 into r1 to represent the first 0.3 0.6 0.4 0.6 0.1 0.2 0.9); (0.1 0.8 0.17 0.2 0.4 0.3 0.8 0.9 0.3 0.6 0.6
level iteration.
0.7 0.2 0.7 0.1). The first 10 dimensions of these three JMAM-particles
Step 6: Fitness. To get the fitness of each new JM-particle, again
are the same as its related JM-particle. Three velocities are generated.
pass each JM-Particle one by one to the second level PSO, repeat
Since in the second level PSO, we only focus on the machine maintenance
the process from Step 2-Step 3. Then, update the optimal value of
and the production scheduling is not changed, the first 10 dimensions of
8
X. Fu et al. Swarm and Evolutionary Computation 50 (2019) 100572
these velocities are zero. The remaining 5 dimensions of velocities are scheduling solution (5 2 3 1 4 3 1 3 1 2 1 1 0 1 0 0 1 0 1 1) is changed
generated randomly. These JMAM-particles are passed into the third
into (5 2 3 1 4 3 1 3 1 2 1 0 0 1 0 0 1 0 1 1) with the third neigh-
level PSO one by one. The first JMAM-particle is taken as an example. In
bourhood search.
the third level PSO, the positions of three JMAMOM-particles are
3. The fourth neighbourhood search is to insert the ðm þ 2 PÞth
generated randomly, such as (0.1 0.8 0.17 0.2 0.4 0.3 0.8 0.9 0.3 0.6 0.5
dimension of the scheduling solution to the ðn þ 2 PÞth dimension
0.3 0.35 0.6 0.8 0.4 0.3 0.6 0.1 0.9); (0.1 0.8 0.17 0.2 0.4 0.3 0.8 0.9 0.3
(change the machine maintenance from job m to job n), which is
0.6 0.5 0.3 0.35 0.6 0.8 0.7 0.2 0.4 0.6 0.5); (0.1 0.8 0.17 0.2 0.4 0.3 0.8 abbreviated as InsertðU; m þ 2 P; n þ 2 PÞ. Assuming m ¼ 2; n ¼
0.9 0.3 0.6 0.5 0.3 0.35 0.6 0.8 0.5 0.6 0.2 0.1 0.8). The first 15 di- 4, an original scheduling solution (5 2 3 1 4 3 1 3 1 2 1 1 0 1 0 0 1 0 1
mensions of these three JMAMOM-particles are the same as its related 1) is changed into (5 2 3 1 4 3 1 3 1 2 1 0 1 1 0 0 1 0 1 1) with the
JMAM- particle. Three velocities are produced randomly. The first 15
fourth neighbourhood search.
dimensions of these velocities are zero and the remaining 5 dimensions of
4. The fifth neighbourhood search is to exchange the mth dimension of
velocities are generated randomly. With random key representation [49]
the scheduling solution with the nth dimension (change the job
and the smallest position value (SPV) rule [50] described in Section 4.2,
sequence of job m and job n), which is abbreviated as ExchangeðU; m;
the positions of the JMAMOM-particles are decoded into suitable
scheduling solutions. The fitness value (makespan) of each nÞ. Assuming m ¼ 2;n ¼ 4, an original scheduling solution (5 2 3 1 4 3
JMAMOM-particle can be calculated. The progress of simple PSO is 1 3 1 2 1 1 0 1 0 0 1 0 1 1) is changed into (5 1 3 2 4 3 1 3 1 2 1 1 0 1
conducted until the stopping condition is met and the best 0 0 1 0 1 1) with the fifth neighbourhood search.
JMAMOM-particle (0.1 0.8 0.17 0.2 0.4 0.3 0.8 0.9 0.3 0.6 0.5 0.3 0.35 5. The sixth neighbourhood search is to insert the mth dimension of the
0.6 0.8 0.4 0.2 0.5 0.7 0.1) for the first JMAM-particle can be found. scheduling solution to the nth dimension (change the job sequence
Then, the second and the third JMAM-particles will be passed into the from job m to job n ), which is abbreviated as InsertðU;m;nÞ. Assuming
third level PSO, and the simple PSO will be carried out again. Through m ¼ 2;n ¼ 4, an original scheduling solution (5 2 3 1 4 3 1 3 1 2 1 1
the third level PSO, the best JMAMOM-particle and the fitness value 0 1 0 0 1 0 1 1) is changed into (5 3 1 2 4 3 1 3 1 2 1 1 0 1 0 0 1 0 1 1)
(makespan) for each JMAM-particle are obtained and returned to the with the sixth neighbourhood search.
second level PSO. The second level PSO is then conducted until the best 6. The seventh neighbourhood search is to change the ðm þ PÞth
JMAM-particle (0.1 0.8 0.17 0.2 0.4 0.3 0.8 0.9 0.3 0.6 0.7 0.3 0.9 0.6 dimension to an available number (change machine of job m to
0.2) and the related best JMAMOM-particle (0.1 0.8 0.17 0.2 0.4 0.3 0.8 another available machine), which is abbreviated as
0.9 0.3 0.6 0.7 0.3 0.9 0.6 0.2 0.4 0.6 0.7 0.3 0.1) are found for the first ChangemachineðU;mÞ. Assuming m ¼ 2;n ¼ 4, an original scheduling
JM-particle. Using the same process, we can find the best JMAM-particle solution (5 2 3 1 4 3 1 3 1 2 1 1 0 1 0 0 1 0 1 1) is changed into (5 2 3 1
and the best JMAMOM-particle for the other two JM-particles. Then the
4 3 2 3 1 2 1 1 0 1 0 0 1 0 1 1) with the seventh neighbourhood search.
basic progress of the first level PSO is conducted until the stopping
condition is met. Finally, three best scheduling solutions for the
JM-particles are recorded, namely, (5 2 3 1 4 3 1 3 1 2 1 1 0 1 0 0 1 0 1 1); The pseudo-code of the local search is given in Fig. 8. After all the
(3 4 5 2 1 3 2 1 3 1 1 0 1 0 0 1 0 1 0 0); (4 1 3 2 5 2 3 1 3 1 1 0 1 0 1 1 0 1 1 solutions are finished in the processing of VNS, the solution with the
0). minimum fitness is chosen as the final solution.
The process of the VNS is given as follows:
4.4. Intensification phase via VNS
Step 1. Set Loop ¼ 0 and get the solution U.
Step 2. Shaking. Generate a solution S randomly from the first
For a good algorithm, the balance of the generic search and local
neighbourhood of solution U.
search is important. This hybrid algorithm adopts variable neighbour-
Step 3. Set Count ¼ 0, when Count 6, conduct Step 3a.
hood search (VNS) to enhance its local search ability. Through TLPSO,
Step 3a. Local Search. Apply the according local search method
some good scheduling solutions can be obtained, and VNS is used to
with solution S and get a new solution S1 .
enhance these solutions. Seven kinds of neighbourhoods are designed to
Step 3b. Move or not. If the new solution S1 is better than the
make it more suitable for this integrated problem. Specifically, m and n
solution S, then use S1 to replace S and continue the search with
are random integers in [1, P] (P is the number of jobs) and m is smaller
the first neighbourhood, otherwise, set Count ¼ Count þ 1 and
than n. U is a scheduling solution obtained from TLPSO. The definitions
conduct step 3a.
of these seven neighbourhoods are given as follows:
Step 4. Set Loop ¼ Loop þ 1. when Loop P ðP 1Þ, conduct step 3.
The first neighbourhood search is to change the ðm þ 3 PÞth
If the solution S is better than the solution U, replace U with S.
dimension of the scheduling solution from 0 to 1 or from 1 to 0 (change
the mould maintenance of job m), which is abbreviated as ChangeðU;m þ
5. Numerical experiments
3 PÞ. Assuming m ¼ 2;n ¼ 4, an original scheduling solution (5 2 3 1 4
3 1 3 1 2 1 1 0 1 0 0 1 0 1 1) is changed into (5 2 3 1 4 3 1 3 1 2 1 1 0 1 The main objective of the numerical experiments is to test the opti-
0 0 0 0 1 1) with the first neighbourhood search. mization performance of the proposed TLPSO-VNS algorithm. For a fair
comparison, the maintenance scheme of the resources and three datasets
1. The second neighbourhood search is to insert the ðm þ 3 PÞth generated by Wong, Chan, and Chung [11] are adopted. The sizes of
dimension of the scheduling solution to the ðn þ 3 PÞth dimension these three problems are (30 3 5), (40 6 10) and (60 9 15).
(change the mould maintenance from job m to job n), which is The quality of the solutions produced by the proposed TLPSO-VNS al-
abbreviated as InsertðU;m þ 3 P;n þ 3 PÞ. Assuming m ¼ 2;n ¼ gorithm will be verified by comparing the results obtained by GADG
4, an original scheduling solution (5 2 3 1 4 3 1 3 1 2 1 1 0 1 0 0 1 0 1 (Strategy 4) [11] and results generated by adapted NSGA-II [25].
Furthermore, some recent VNS variants (hybrid variable neighbourhood
1) is changed into (5 2 3 1 4 3 1 3 1 2 1 1 0 1 0 0 0 1 1 1) with the
search (HVNS) algorithm [35], the nested general variable neighbour-
second neighbourhood search.
hood (NGVNS) algorithm [36] and PSO variants (particle swarm opti-
2. The third neighbourhood search is to change the ðm þ 2 PÞth
mization and artificial bee colony hybrid algorithm (ABCSPSO) [53],
dimension of the scheduling solution from 0 to 1 or from 1 to
self-adaptive heterogeneous particle swarm optimization (fk-PSO) [54],
0 (change the machine maintenance of job m), which is abbreviated
standard particle swarm optimization 2011 (SPSO) [55]) proposed in the
as ChangeðU; m þ 2 PÞ. Assuming m ¼ 2; n ¼ 4, an original
9
X. Fu et al. Swarm and Evolutionary Computation 50 (2019) 100572
CEC0 2013 competitions are used as the comparison algorithms to further maximum number of generation are decided. Then, the key algorithm
illustrate the performance of the TLPSO-VNS algorithm. Six random in- parameters are fixed, and we try different parameters combinations
stances with different sizes are used as the benchmarks and the Wilcoxon related to PSO and find the best parameters combination.
test is used to analysis the significance difference of the results. The production scheduling problem is the master problem and the
Numerical experiments are implemented in the Matlab environment machine maintenance problem, as well as mould maintenance problem,
and the statistical tests are conducted by the IBM SPSS software on a has a similar influence on the makespan. Without loss of generality, we
personal computer with Intel (R) Core (TM) i7-6700 CPU 3.40 GHz CPU. set the max iteration of the second level PSO as equivalent to the max
iteration of the third level PSO and the max iteration of the first level PSO
is the double value of max iteration of the second level PSO. According to
5.1. Parameters tuning
Mladenovic and Hansen [31], the max iteration of VNS is set as
P ðP 1Þ (P is the number of jobs), which is sufficient to obtain a steady
There are two kinds of parameters. One kind is the key algorithm
solution for the largest problem. The swarm size of the three PSOs in the
parameters, including the swarm size and the maximum number of
different levels are the same. W is initially set as 0.9 and reduced linearly
generations. The other kind is the parameters related to simple PSO,
to 0.4. The values of C1 and C2 are equal to 2. This parameters combi-
including inertia weight W, particle acceleration coefficient C1 and
nation related to PSO is the most often used in the literature. In the
population acceleration coefficient C2 . At first, the parameters related to
preliminary testing on key algorithm parameters, we test different
PSO are fixed. We use the parameters combination recommended by
combinations of parameters with swarm size ¼ {5, 10, 15} and max
Eberhart and Shi [51], which are also the most widely used parameters
iteration of first level PSO ¼ {500, 1000, 1500} for medium-sized
combination related to PSO in the literature. The swarm size and the
10
X. Fu et al. Swarm and Evolutionary Computation 50 (2019) 100572
instance (40 6 10) generated by Wong, Chan, and Chung [11] 30 related parameters have little influence on the results. Finally, we use the
times. There are 9 combinations in total. Table 2 shows the different most widely used parameters combination recommended by Eberhart
parameters combinations, the corresponding average results and the time and Shi [51] to solve this problem. In our random test, the average value
needed for each run. From Table 2, we can see that the swarm size has and the standard deviation are the minimum compared with other pa-
great influence on the time needed for each run. When the swarm size rameters combinations. However, other parameters combination can also
increases 2 times (from 5 to 10), the time needed for each run increases produce good results for this problem.
by more than 5 times. When the swarm size increases 3 times (from 5 to
15), the time needed for each run increases by more than 10 times. The 5.2. Comparison with results in the literature
max iteration of the first level PSO has little influence on the time and the
average result. A bigger max iteration does not always mean better re- The maintenance scheme of resources and three datasets with
sults. To keep a balance between the quality of results and the time different sizes generated by Wong, Chan, and Chung [11] are adopted.
needed for each run, we choose the parameter combination{10, 1000}. The comparison results are shown in Table 4.
To find a good combination for the parameters related to PSO, we set According to Table 4, the average makespans for the three instances
the swarm size as 10, the max iteration of the first level PSO as 1000, the obtained by TLPSO-VNS are 2251.6, 2492.6, 2431.5 units of time.
max iteration of the second level PSO as 500 and the max iteration of the Compared with the results generated by GADG, the improvement is be-
third level PSO as 500, based on the preliminary testing. We compare the tween 9% and 10.6%. Compared with the results by NSGA-II, the
most widely used parameters combination [51] with the other four PSO improvement is between 0.19% and 6%. Moreover, the improvement
models, namely social only model (there is no cognitive component, increases as the problem size increases. It can be concluded that TLPSO-
C1 ¼ 0) [27]; cognition only model (there is no social acceleration, C2 ¼ VNS can provide better solutions than GADG and NSGA-II when the size
0) [27]; time-varying acceleration coefficient model (C1 starts with a of the problem increases. The minimum solutions of these three instances
high value than C2 and decreases while the social acceleration starts with obtained by the TLPSO-VNS algorithm are 2177.3, 2422, 2378.5 units of
a lower value and linearly increases) [55]; Clerc’s constriction method time. Compared with results by GADG, the improvement is between 1.6%
[51]. The maintenance scheme of resources and the medium-sized and 6%. Compared with results by GADG, the improvement is between
instance (40 6 10) generated by Wong, Chan, and Chung [11] is 0.7% and 5.2%. The TLPSO-VNS can get better minimum solutions than
used, and we test each parameters combination 30 times. The results are GADG and NSGA-II, except for the minimum result for the instance (30
shown in Table 3. In Table 3, we can see that there is little difference 3 5). But the gap between the minimum results obtained by TLPSO-
between these parameters combinations, which means that the PSO VNS and NSGA-II is quite small, only 0.7%. Furthermore, the TLPSO-
VNS algorithm is more robust than GADG and NSGA-II because that
Table 2 the standard deviations of the TLPSO-VNS algorithm are smaller for all
Different key algorithm parameters combinations and its influence on results. these three instances with different sizes. The production scheduling for
No Swarm size Max iteration of first level PSO Average result Time(s) the optimal results of the first instance is shown in Fig. 9. Gantt chart of
instance 1 (30 3 5). Specifically, MT means maintenance and the
1 5 500 2554 345
2 5 1000 2526 388 numbers in the boxes are the sequence of jobs.
3 5 1500 2515 427
4 10 500 2546.3 1590
5.3. Comparison with recent VNS variants and PSO variants
5 10 1000 2492.6 1704
6 10 1500 2526.7 2254
7 15 500 2526 4010 In this section, the proposed TLPSO-VNS is compared with recent VNS
8 15 1000 2427.8 4988 variants (HVNS [35] and NGVNS [36]) and PSO variants in CEC0 2013
9 15 1500 2546.1 5708 (ABCSPSO [52], fk-PSO [53], and SPSO2011 [54]).
Six random instances with different sizes are used to test the perfor-
Table 3 mance of the proposed TLPSO-VNS. Based on the recommendation of
The influence of parameters related to PSO on results. Wong, Chan, and Chung [11], the parameters of the six random instances
are set as follows: the operation time of the moulds is produced randomly
No Parameters in PSO Swarm Max iteration of average Std
model size first level PSO between 30 and 55 units of time; the batch size of the jobs is produced
randomly between 2 and 6 units. 30 times is carried out for each algo-
1 Wmax ¼ 0.9, Wmin ¼ 0.4 10 1000 2492.6 58.7
C1 ¼ 2, C2 ¼ 2
rithm to measure the deviation of the solutions obtained. The mainte-
2 Wmax ¼ 0.9, Wmin ¼ 0.4 10 1000 2497.5 64 nance scheme of the resources generated by Wong, Chan, and Chung [11]
C1 ¼ 0, C2 ¼ 2 is adopted. For a fair comparison, algorithm parameters of the VNS
3 Wmax ¼ 0.9, Wmin ¼ 0.4 10 1000 2583.3 77 variants including neighbourhoods definition and the maximum number
C1 ¼ 0, C2 ¼ 0
of iteration are the same as the proposed TLPSO-VNS and algorithm
4 Wmax ¼ 0.9, Wmin ¼ 0.4 10 1000 2538.6 12
C1max ¼ 2.5, C1min ¼ 0.5 parameters of the PSO variants, including the parameters related to PSO,
C2max ¼ 2.5, C2min ¼ 0.5 the population size and the maximum number of generations of these
5 W ¼ 0.729, 10 1000 2525.7 39 three algorithms are the same as the proposed TLPSO-VNS. The com-
C1 ¼ 1.49445, parison results are listed in Table 5.
C2 ¼ 1.49445
From Table 5, we can know that when the iteration and the
Table 4
Comparison with results in the literature.
30 3 5 40 6 10 60 9 15
Results by GADG 2250 2475 107 2576 2757 144 2417 2721 183
Results by NSGA-II 2160.7 2255.9 78.6 2490 2591.7 68.6 2508 2586.3 60.1
Results by TLPSO-VNS 2177.3 2251.6 45.5 2422 2492.6 58.7 2378.5 2431.5 27.3
Result improvement (compared with GADG) 3.2% 9% 6% 9.6% 1.6% 10.6%
Result improvement (compared with NSGA-II) 0.7% 0.19% 2.7% 3.8% 5.2% 6%
11
X. Fu et al. Swarm and Evolutionary Computation 50 (2019) 100572
Figure 9. Gantt charts of instance 1 (30 3 5). (a) Machine schedule for instance 1(30 3 5). (b) Mould schedule for instance 1 (30 3 5).
parameters are the same, the proposed TLPSO-VNS algorithm has better time increase trends of these six algorithms for these six instances are
performance than both VNS variants and PSO variants in terms of the shown in Fig. 10.
minimum, maximum, average results and the standard deviation for the From Fig. 10, we can know that as the scale of the problem increases,
six instances. Overall, the performance of VNS variants is better than the the CPU time of the proposed TLPSO-VNS algorithm increases a lot, but
performance of PSO variants. However, the proposed TLPSO-VNS algo- the increment for the other five comparation algorithms is not so
rithm also needs more time than all the comparation algorithms. The obvious. The main reason is that as the scale of the problem increases, the
12
X. Fu et al. Swarm and Evolutionary Computation 50 (2019) 100572
Table 5
Comparison results with other algorithms under the same iteration.
No Size Algorithm Min Max Avg SD Time
(s)
13
X. Fu et al. Swarm and Evolutionary Computation 50 (2019) 100572
Table 6 by VNS. This is the first algorithm to hybrid TLPSO with VNS to solve the
Comparison results with other algorithms under the same computational cost. production scheduling with mould maintenance (PS-MM) problem,
No Size Algorithm Min Max Avg SD aiming at minimizing the overall makespan. The optimization reliability
of TLPSO-VNS is tested in numerical experiments based on data from the
1 20 2 4 TLPSO-VNS 2328 2424 2365 35
HVNS 2341 2513 2429.2 50 literature and other data generated randomly. The results show that the
NGVNS 2324 2434 2396.1 39 proposed TLPSO-VNS algorithm is effective in generating solutions with
ABCSPSO 2395 2812 2607.7 131 good quality in acceptable computation time. It is also shown that the
fk-PSO 2630 3081 2866.9 151 problem decomposition mechanism employed in TLPSO works well in
SPSO2011 2383 2718 2571.7 103
2 35 4 6 TLPSO-VNS 2423 2690 2539 82
this integrated problem, and VNS is efficient in enhancing the local
HVNS 2526 2749 2661 60 search ability of this hybrid algorithm. Furthermore, the proposed
NGVNS 2387 2850 2611 126 TLPSO-VNS algorithm is shown to surpass VNS variants and PSO variants
ABCSPSO 3112 3651 3380.5 208 in the CEC0 2013 competition when solving this integrated problem.
fk-PSO 3914 4654 4407.5 233
This proposed TLPSO-VNS algorithm is mainly designed for the
SPSO2011 3373 4073 3636.8 204
3 50 7 10 TLPSO-VNS 2189 2425 2281.7 90 scheduling problem integrating production scheduling and resources
HVNS 2264 2450 2385 64 maintenance scheduling simultaneously. The application over plastic
NGVNS 2205 2547 2383 126 manufacturing is only a special case of this kind of problem. For other
ABCSPSO 2600 2942 2807 106 discrete integrated problems, the problem decomposition mechanism
fk-PSO 3554 4101 3854.7 193
SPSO2011 3086 3322 3219 76
and redesigns the structure of the basic algorithm are also applicable.
4 70 9 12 TLPSO-VNS 3672 3816 3700.6 45 Moreover, the algorithm hybridization method which combines TLPSO
HVNS 3672 4138 3863.6 162 and VNS that are used in the proposed algorithm is also instructive and
NGVNS 3672 4016 3847.6 104 meaningful.
ABCSPSO 3726 4368 4050 238
However, since this algorithm contains many steps, the time needed
fk-PSO 4798 5418 5053.5 183
SPSO2011 4241 5063 4531 257 to produce good solutions increases a lot when the scale of the problem
5 80 10 16 TLPSO-VNS 3200 3355 3279 46 increases. More strategies will be added to the algorithm to reduce the
HVNS 3469 3784 3606 116 search repetition, thus improving the efficiency of this hybrid algorithm.
NGVNS 3225 3933 3586 229 In addition, the algorithm will be modified to be appropriate for pro-
ABCSPSO 3549 4398 3784.8 244
duction scheduling with mould maintenance problem with multiple ob-
fk-PSO 4723 5427 5174 252
SPSO2011 4347 4883 4639.5 167 jectives in the future.
6 100 12 20 TLPSO-VNS 3487 3809 3623.5 94
HVNS 3626 4118 3857.9 135 Conflicts of interest
NGVNS 3400 4014 3775 181
ABCSPSO 3838 4904 4290.7 296
fk-PSO 5198 6852 6339 346 None.
SPSO2011 5886 4914 5421.6 281
Acknowledgements
The work described in this paper was supported by The Natural Sci-
Table 7
Wilcoxon signed rank Test between TLPSO-VNS and other comparison
ence Foundation of China (Grant No. 71971143, 71471158, 71571120);
algorithms. a grant from the Research Grants Council of the Hong Kong Special
Administrative Region, China (Project No. PolyU 15201414); a grant
No Size Algorithm comparison P value
from the Research Committee of The Hong Kong Polytechnic University
1 20 2 4 TLPSO-VNS VS HVNS 0.022 under student account code RUKH; Project of Guangdong Province
TLPSO-VNS VS NGVNS 0.008
Higher Vocational Colleges & Schools Pearl River Scholar Funded
TLPSO-VNS VS ABCSPSO 0.007
TLPSO-VNS VS fk-PSO 0.005 Scheme 2016.
TLPSO-VNS VS SPSO2011 0.007
2 35 4 6 TLPSO-VNS VS HVNS 0.022 Appendix A. Supplementary data
TLPSO-VNS VS NGVNS 0.139
TLPSO-VNS VS ABCSPSO 0.005
TLPSO-VNS VS fk-PSO 0.005 Supplementary data to this article can be found online at https://
TLPSO-VNS VS SPSO2011 0.007 doi.org/10.1016/j.swevo.2019.100570.
3 50 7 10 TLPSO-VNS VS HVNS 0.032
TLPSO-VNS VS NGVNS 0.075
TLPSO-VNS VS ABCSPSO 0.005
References
TLPSO-VNS VS fk-PSO 0.005
TLPSO-VNS VS SPSO2011 0.005 [1] K. Shameem, K. Choudhari, A. Bankapur, S. Kulkarni, V. Unnikrishnan, S. George,
4 70 9 12 TLPSO-VNS VS HVNS 0.007 V. Kartha, C. Santhosh, A hybrid LIBS–Raman system combined with chemometrics:
an efficient tool for plastic identification and sorting, Anal. Bioanal. Chem. 409 (13)
TLPSO-VNS VS NGVNS 0.015
(2017) 3299–3308, https://doi.org/10.1007/s00216-017-0268-z.
TLPSO-VNS VS ABCSPSO 0.005
[2] E. Lokensgard, Industrial Plastics : Theory and Applications, sixth ed.ed., Cengage
TLPSO-VNS VS fk-PSO 0.005
Learning, Boston, MA, 2017.
TLPSO-VNS VS SPSO2011 0.005 [3] R. Dangel, Injection Moulds for Beginners, Hanser Publishers, Munich, 2016.
5 80 10 16 TLPSO-VNS VS HVNS 0.005 [4] P. Christopher, Production Scheduling, Collins, 2006.
TLPSO-VNS VS NGVNS 0.005 [5] K. Gao, Y. Zhang, R. Su, F. Yang, P.N. Suganthan, M. Zhou, Solving traffic signal
TLPSO-VNS VS ABCSPSO 0.005 scheduling problems in heterogeneous traffic network by using meta-heuristics,
TLPSO-VNS VS fk-PSO 0.005 IEEE Trans. Intell. Transp. Syst. (2018) 1–11, https://doi.org/10.1109/
TLPSO-VNS VS SPSO2011 0.005 TITS.2018.2873790.
6 100 12 20 TLPSO-VNS VS HVNS 0.007 [6] K. Gao, F. Yang, M. Zhou, Q. Pan, P.N. Suganthan, Flexible job-shop rescheduling
TLPSO-VNS VS NGVNS 0.047 for new job insertion by using discrete Jaya algorithm, IEEE Trans. Cybern. 49 (5)
TLPSO-VNS VS ABCSPSO 0.005 (2019) 1944–1955, https://doi.org/10.1109/TCYB.2018.2817240.
TLPSO-VNS VS fk-PSO 0.005 [7] K.Z. Gao, P.N. Suganthan, Q.K. Pan, T.J. Chua, T.X. Cai, C.S. Chong, Discrete
TLPSO-VNS VS SPSO2011 0.005 harmony search algorithm for flexible job shop scheduling problem with multiple
objectives, J. Intell. Manuf. 27 (2) (2016) 363–374, https://doi.org/10.1007/
s10845-014-0869-8.
14
X. Fu et al. Swarm and Evolutionary Computation 50 (2019) 100572
[8] K. Gao, Y. Zhang, A. Sadollah, A. Lentzakis, R. Su, Jaya, harmony search and water [32] Y.C. Liang, C.Y. Tien, Variable neighborhood search for drilling operation
cycle algorithms for solving large-scale real-life urban traffic light scheduling scheduling in PCB industries, in: Lecture Notes in Computer Science (Including
problem, Swarm Evol. Comput. 37 (2017) 58–72, https://doi.org/10.1016/ Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in
j.swevo.2017.05.002. Bioinformatics), vol. 6838, 2011, pp. 55–62, https://doi.org/10.1007/978-3-642-
[9] M. Rajkumar, P. Asokan, V. Vamsikrishna, A GRASP algorithm for flexible job-shop 24728-6_8.
scheduling with maintenance constraints, Int. J. Prod. Res. 48 (22) (2010) [33] A. Bagheri, M. Zandieh, Bi-criteria flexible job-shop scheduling with sequence-
6821–6836, https://doi.org/10.1080/00207540903308969. dependent setup times-variable neighborhood search approach, J. Manuf. Syst. 30
[10] A. Berrichi, F. Yalaoui, L. Amodeo, M. Mezghiche, Bi-objective ant colony (1) (2011) 8–15, https://doi.org/10.1016/j.jmsy.2011.02.004.
optimization approach to optimize production and maintenance scheduling, [34] S. Bathrinath, S.S. Sankar, S.G. Ponnambalam, I.J. Leno, VNS-based heuristic for
Comput. Oper. Res. 37 (9) (2010) 1584–1596, https://doi.org/10.1016/ identical parallel machine scheduling problem, in: L. Suresh, S. Dash, B. Panigrahi
j.cor.2009.11.017. (Eds.), Artificial Intelligence and Evolutionary Algorithms in Engineering Systems.
[11] C.S. Wong, F.T.S. Chan, S.H. Chung, A genetic algorithm approach for production Advances in Intelligent Systems and Computing, vol. 324, 2015, pp. 693–699,
scheduling with mould maintenance consideration, Int. J. Prod. Res. 50 (20) (2012) https://doi.org/10.1007/978-81-322-2126-5_74.
5683–5697, https://doi.org/10.1080/00207543.2011.613868. [35] B. Zhang, Q.K. Pan, L. Gao, X.L. Zhang, A hybrid variable neighborhood search
[12] H.U. Guner, R.B. Chinnam, A. Murat, Simulation platform for anticipative plant- algorithm for the hot rolling batch scheduling problem in compact strip production,
level maintenance decision support system, Int. J. Prod. Res. 54 (6) (2016) Comput. Ind. Eng. 116 (2018) 22–36, https://doi.org/10.1016/j.cie.2017.12.013.
1785–1803, https://doi.org/10.1080/00207543.2015.1064179. [36] R. Todosijevic, R. Benmansour, S. Hanafi, N. Mladenovic, A. Artiba, Nested general
[13] C.R. Cassady, E. Kutanoglu, Minimizing job tardiness using integrated preventive variable neighborhood search for the periodic maintenance problem, Eur. J. Oper.
maintenance planning and production scheduling, IIE Trans. 35 (6) (2003) Res. 252 (2) (2016) 385–396, https://doi.org/10.1016/j.ejor.2016.01.014.
503–513, https://doi.org/10.1080/07408170390187951. [37] K. Peng, Q.K. Pan, L. Gao, X. Li, S. Das, B. Zhang, A multi-start variable
[14] C.R. Cassady, E. Kutanoglu, Integrating preventive maintenance planning and neighbourhood descent algorithm for hybrid flowshop rescheduling, Swarm Evol.
production scheduling for a single machine, IEEE Trans. Reliab. 54 (2) (2005) Comput. 45 (2019) 92–112, doi.org/10.1016/j.swevo.2019.01.002.
304–309, https://doi.org/10.1109/tr.2005.845967. [38] B. Liu, L. Wang, Y.H. Jin, An effective hybrid particle swarm optimization for no-
[15] H. Seidgar, M. Zandieh, H. Fazlollahtabar, I. Mahdavi, Simulated imperialist wait flow shop scheduling, Int. J. Adv. Manuf. Technol. 31 (9–10) (2007)
competitive algorithm in two-stage assembly flow shop with machine breakdowns 1001–1011, https://doi.org/10.1007/s00170-005-0277-5.
and preventive maintenance, Proc. Inst. Mech. Eng. Part B J. Eng. Manuf. 230 (5) [39] C.J. Liao, C.C. Cheng, A variable neighborhood search for minimizing single
(2016) 934–953, https://doi.org/10.1177/0954405414563554. machine weighted earliness and tardiness with common due date, Comput. Ind.
[16] F. El Khoukhi, J. Boukachour, A.E. Alaoui, The “Dual-Ants Colony”: a novel hybrid Eng. 52 (4) (2007) 404–413, https://doi.org/10.1016/j.cie.2007.01.004.
approach for the flexible job shop scheduling problem with preventive [40] G.I. Zobolas, C.D. Tarantilis, G. Ioannou, A hybrid evolutionary algorithm for the
maintenance, Comput. Ind. Eng. 106 (2017) 236–255, https://doi.org/10.1016/ job shop scheduling problem, J. Oper. Res. Soc. 60 (2) (2009) 221–235, https://
j.cie.2016.10.019. doi.org/10.1057/palgrave.jors.2602534.
[17] R. Ruiz, J.C. Garcia-Diaz, C. Maroto, Considering scheduling and preventive [41] J. Behnamian, S. Ghomi, Hybrid flowshop scheduling with machine and resource-
maintenance in the flowshop sequencing problem, Comput. Oper. Res. 34 (11) dependent processing times, Appl. Math. Model. 35 (3) (2011) 1107–1123, https://
(2007) 3314–3330, https://doi.org/10.1016/j.cor.2005.12.007. doi.org/10.1016/j.apm.2010.07.057.
[18] E.H. Aghezzaf, N.M. Najid, Integrated production planning and preventive [42] L. Vanneschi, R. Henriques, M. Castelli, Multi-objective genetic algorithm with
maintenance in deteriorating production systems, Inf. Sci. 178 (17) (2008) variable neighbourhood search for the electoral redistricting problem, Swarm Evol.
3382–3392, https://doi.org/10.1016/j.ins.2008.05.007. Comput. 36 (2017) 37–51. https://doi.org/10.1016/j.swevo.2017.04.003.
[19] S.H. Chung, H.C.W. Lau, G.T.S. Ho, W.H. Ip, Optimization of system reliability in [43] X.P. Wang, L.X. Tang, A discrete particle swarm optimization algorithm with self-
multi-factory production networks by maintenance approach, Expert Syst. Appl. 36 adaptive diversity control for the permutation flowshop problem with blocking,
(6) (2009) 10188–10196, https://doi.org/10.1016/j.eswa.2008.12.014. Appl. Soft Comput. 12 (2) (2012) 652–662, https://doi.org/10.1016/
[20] G. Li, M.Q. Liu, S.P. Sethi, D.H. Xu, Parallel-machine scheduling with machine- j.asoc.2011.09.021.
dependent maintenance periodic recycles, Int. J. Prod. Econ. 186 (2017) 1–7, [44] L. Liu, H. Zhou, Hybridization of harmony search with variable neighborhood
https://doi.org/10.1016/j.ijpe.2017.01.014. search for restrictive single-machine earliness/tardiness problem, Inf. Sci. 226
[21] S.J. Wang, M. Liu, Two-machine flow shop scheduling integrated with preventive (2013) 68–92, https://doi.org/10.1016/j.ins.2012.11.007.
maintenance planning, Int. J. Syst. Sci. 47 (3) (2016) 672–690, https://doi.org/ [45] H. Mokhtari, A two-stage no-wait job shop scheduling problem by using a neuro-
10.1080/00207721.2014.900137. evolutionary variable neighborhood search, Int. J. Adv. Manuf. Technol. 74 (9–12)
[22] E.H. Abdelrahim, B. Vizvari, Simultaneous scheduling of production and preventive (2014) 1595–1610, https://doi.org/10.1007/s00170-014-6086-y.
maintenance on a single machine, Arabian J. Sci. Eng. 42 (7) (2017) 2867–2883, [46] L. Gao, X.Y. Li, X.Y. Wen, C. Lu, F. Wen, A hybrid algorithm based on a new
https://doi.org/10.1007/s13369-016-2290-4. neighborhood structure evaluation method for job shop scheduling problem,
[23] C.S. Wong, F.T.S. Chan, S.H. Chung, A joint production scheduling approach Comput. Ind. Eng. 88 (2015) 417–429, https://doi.org/10.1016/j.cie.2015.08.002.
considering multiple resources and preventive maintenance tasks, Int. J. Prod. Res. [47] H. Xia, X.Y. Li, L. Gao, A hybrid genetic algorithm with variable neighborhood
51 (3) (2013) 883–896, https://doi.org/10.1080/00207543.2012.677070. search for dynamic integrated process planning and scheduling, Comput. Ind. Eng.
[24] C.S. Wong, F.T.S. Chan, S.H. Chung, Decision-making on multi-mould maintenance 102 (2016) 99–112, https://doi.org/10.1016/j.cie.2016.10.015.
in production scheduling, Int. J. Prod. Res. 52 (19) (2014) 5640–5655, https:// [48] Y. Jin, J.K. Hao, Hybrid evolutionary search for the minimum sum coloring problem
doi.org/10.1080/00207543.2014.900200. of graphs, Inf. Sci. 352–353 (2016) 15–34, https://doi.org/10.1016/
[25] S.J. Wang, M. Liu, Multi-objective optimization of parallel machine scheduling j.ins.2016.02.051.
integrated with multi-resources preventive maintenance planning, J. Manuf. Syst. [49] J.C. Bean, Genetic algorithms and random keys for sequencing and optimization,
37 (2015) 182–192, https://doi.org/10.1016/j.jmsy. 2015.07.002. ORSA J. Comput. 6 (2) (1994) 154–160, https://doi.org/10.1287/ijoc.6.2.154.
[26] L. Shen, H.B. Yang, S. Gao, J. Fang, Production scheduling with mould maintenance [50] M.F. Tasgetiren, Y.C. Liang, M. Sevkli, G. Gencyilmaz, A particle swarm
in flow shop, in: Proceedings of the 2016 4th International Conference on Sensors, optimization algorithm for makespan and total flowtime minimization in the
Mechatronics and Automation, 2016, pp. 730–733, https://doi.org/10.2991/icsma- permutation flowshop sequencing problem, Eur. J. Oper. Res. 177 (3) (2007)
16.2016.126. 1930–1947, https://doi.org/10.1016/j.ejor.2005.12.024.
[27] J. Kennedy, R. Eberhart, Particle swarm optimization, in: Proceedings of 1995 IEEE [51] R.C. Eberhart, Y. Shi, Comparing inertia weights and constriction factors in particle
International Conference on Neural Networks, vol. 4, 1995, pp. 1942–1948, swarm optimization, in: Proceedings of the 2000 Congress on Evolutionary
https://doi.org/10.1109/ICNN.1995.488968. Computation, 2000, pp. 4–88, https://doi.org/10.1109/CEC.2000.870279.
[28] Z.G. Lian, X.S. Gu, B. Jiao, A similar particle swarm optimization algorithm for [52] M. El-Abd, Testing a particle swarm optimization and artificial bee colony hybrid
permutation flowshop scheduling to minimize makespan, Appl. Math. Comput. 175 algorithm on the CEC13 benchmarks, in: 2013 IEEE Congress on Evolutionary
(1) (2006) 773–785, https://doi.org/10.1016/j.amc.2005.07.042. Computation, 2013, pp. 2215–2220, https://doi.org/10.1109/CEC.2013.6557832.
[29] C.C. Wu, J.Y. Chen, W.C. Lin, K. Lai, S.C. Liu, P.W. Yu, A two-stage three-machine [53] F. Nepomuceno, A. Engelbrecht, A self-adaptive heterogeneous pso for real-
assembly flow shop scheduling with learning consideration to minimize the parameter optimization, in: 2013 IEEE Congress on Evolutionary Computation,
flowtime by six hybrids of particle swarm optimization, Swarm Evol. Comput. 41 2013, pp. 361–368, https://doi.org/10.1109/CEC.2013.6557592.
(2018) 97–110, https://doi.org/10.1016/j.swevo.2018.01.012. [54] M. Zambrano-Bigiarini, M. Clerc, R. Rojas, Standard particle swarm optimisation
[30] L.X. Tang, X.P. Wang, An improved particle swarm optimization algorithm for the 2011 at CEC-2013: a baseline for future PSO improvements, in: 2013 IEEE Congress
hybrid flowshop scheduling to minimize total weighted completion time in process on Evolutionary Computation, 2013, pp. 2337–2344, https://doi.org/10.1109/
industry, IEEE Trans. Control Syst. Technol. 18 (6) (2010) 1303–1314, https:// CEC.2013.6557848.
doi.org/10.1109/tcst.2009.2036718. [55] A. Ratnaweera, S.K. Halgamuge, H.C. Watson, Self-organizing hierarchical particle
[31] N. Mladenovic, P. Hansen, Variable neighborhood search, Comput. Oper. Res. 24 swarm optimizer with time-varying acceleration coefficients, IEEE Trans. Evol.
(11) (1997) 1097–1100, https://doi.org/10.1016/S0305-0548(97)00031-2. Comput. 8 (3) (2004) 240–255, https://doi.org/10.1109/TEVC.2004.826071.
15