You are on page 1of 15

Swarm and Evolutionary Computation 50 (2019) 100572

Contents lists available at ScienceDirect

Swarm and Evolutionary Computation


journal homepage: www.elsevier.com/locate/swevo

A three-level particle swarm optimization with variable neighbourhood


search algorithm for the production scheduling problem with
mould maintenance
Xiaoyue Fu a, b, Felix T.S. Chan b, Ben Niu c, *, Nick S.H. Chung b, Ting Qu a
a
School of Electrical and Information Engineering, Jinan University, Guangzhou, China
b
Department of Industrial and Systems Engineering, The Hong Kong Polytechnic University, Kowloon, Hong Kong
c
College of Management, Shenzhen University, Shenzhen, China

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

machine and mould, and a multi-objective integrated optimization Table 1


method with NSGA-II adaption was presented. In addition, to show the Examples of hybrid algorithms.
influence of the mould on production scheduling, an optimization model Hybrid algorithm Source
was built [26], considering setup and mould maintenance, with the
A hybrid of the particle swarm optimization (PSO) with the nawaz- Ref. [38]
objective of minimizing the total weighted tardiness and earliness. enscore-ham (NEH) heuristic, as well as the simulated annealing (SA)
Different maintenance strategies were taken into account and a genetic A combination of the tabu search and the variable neighbourhood search Ref. [39]
algorithm (GA) was used to find the optimal solution. Integrating pro- (VNS/TS)
duction scheduling with mould maintenance is still a key issue for some A mixture of the differential evolution-based algorithm, the variable Ref. [40]
neighbourhood search (VNS) method and the genetic algorithm (GA)
industries, but research on this topic is still limited, and more efficient Collaboration in the genetic algorithm (GA) and the variable Ref. [41]
algorithms for solving such integrated problems need to be developed. neighbourhood search (VNS)
As an intelligent optimization algorithm inspired by the social A hybrid of the genetic algorithm (GA) and the variable neighbourhood Ref. [42]
behaviour of animals, particle swarm optimization (PSO) was firstly search (VNS)
A combination of the discrete particle swarm optimization (DPSO) and Ref. [43]
proposed by Kennedy and Eberhart [27]. Because of attractive features,
the stochastic variable neighbourhood search (SVNS)
such as easy execution, few parameters, and fast convergence, PSO has A mixture of the permutation-based harmony search (PHS) with the Ref. [44]
been applied in a wide variety of optimization problems, including the enhanced basic variable neighbourhood search (EBVNS)
job shop scheduling problem. Recently, more and more researchers have A cooperation of the enhanced variable neighbourhood search (VNS) and Ref. [45]
modified PSO to improve its performance such as the similar particle the artificial neural network (ANN)
The hybrid particle swarm optimization algorithm (PSO) based on the Ref. [46]
swarm optimization algorithm [28], the hybrid particle swarm optimi- variable neighbourhood search (VNS)
zation algorithm [29], and the improved particle swarm optimization A hybrid genetic algorithm with the variable neighbourhood search Ref. [47]
algorithm [30]. Furthermore, the variable neighbourhood search (VNS) (GAVNS)
algorithm was proposed by Mladenovic and Hansen [31], which was an The hybrid evolutionary search (HES) Ref. [48]
effective and simple metaheuristic algorithm based on the systematic
change of neighbourhoods. It can be used for many production sched-
details of the problem could be described as follows: P jobs are distrib-
uling problems, such as the identical parallel machine scheduling prob-
uted on Q injection machines and R injection moulds. Each problem is
lem with two conflicting objectives [32], the flexible job-shop scheduling
denoted as P  Q  R. All jobs, machines and moulds are available for
problem [33], and the identical parallel machine scheduling problem
processing at time zero. A job can only be allocated to a specific mould
[34]. Moreover, some new algorithms based on VNS were also devel-
and a specific mould can be allocated to many different machines but not
oped, such as the hybrid variable neighbourhood search algorithm [35],
all the machines. A specific mould can perform different jobs. Each job
the nested general variable neighbourhood search algorithm [36], and
can only be performed on one machine with one mould at a given time
the multi-start variable neighbourhood descent algorithm [37].
slot. Each machine can only conduct one job with one machine at a given
So far, the genetic algorithm (GA) is the most popular tool to solve the
time slot. Each mould can only carry out one job on one machine at a
integrated problem. However, the convergence rate of GA is slow since
given time slot. The unit operation time of a job is decided by the specific
the mutation of GA is unguided. Moreover, the diversity mechanism
mould being used but not the machine. Each job has its batch size, and
determines the performance of GA. GA tends to converge into local op-
the total operation time of a job is the product of batch size and the unit
tima prematurely if the diversity mechanism does not work properly.
operation time. Each job is operated according to its order quantity
Except for GA, other algorithms such as particle swarm optimization
(batch), which cannot be split, and once a job begins, it should be
(PSO) and variable neighbourhood search algorithm (VNS) are also
finished without interruption. The cumulated operating time of a
popular for these integrated problems. The main advantage of PSO is that
resource is defined as the resource age (not including idle time). In
the convergence rate is rapid, but it is susceptible to premature conver-
practical situations, the earlier the maintenance is conducted, the less
gence, especially when dimensions or decision variables are large. The
maintenance time is needed, so the relationship between maintenance
performance of the VNS depends on the initialization and definition of
time and resource (machine or mould) age can be fitted by a piecewise
the neighbourhood. If these two factors are not determined properly, the
linear function. Because the possibility of mould breakdown is higher
computing cost will be large, and quality of the solution will be influ-
than machine breakdown, the maximum age of the mould is shorter than
enced. Since these algorithms have limitations, more innovative algo-
the maximum age of the machine. Once a resource reaches its maximum
rithms need to be proposed to solve the integrated problem.
age, maintenance must be conducted after completion of the current job.
Hybrid metaheuristics, which combine the advantages of separate
This model only considers perfect maintenance, which means that after
components, have attracted the attention of more and more scholars.
the maintenance, the resource age is reset to zero and the condition of the
Many investigations in using hybrid algorithms in production scheduling
resource is as good as new. We assume that the preventive maintenance
problems have been carried out in the last decade. Different hybrid al-
can prevent all the random breakdowns of the resources. Furthermore,
gorithms were proposed, and some examples are summarized in Table 1.
we assume that the set-up times are sequence-independent and included
Examples of hybrid algorithms.
in processing period, and the quality issue is not considered.
Since these hybrid metaheuristic algorithms employ the key charac-
The objective is to find a good production scheduling and machine
teristics of individual algorithms, they are more efficient compared with
maintenance planning, as well as mould maintenance planning aiming at
a single algorithm. Thus, more and more researchers are using hybrid
minimizing the makespan.
metaheuristic algorithms to address different scheduling problems.
4. Optimization methodology
3. Problem description
The optimization algorithm, named the TLPSO-VNS algorithm, is
The production scheduling with mould maintenance (PS-MM) prob- introduced in this part. The overall algorithm structure is introduced
lem was firstly proposed by Wong, Chan, and Chung [11]. It is a firstly and includes two stages: the stage of swarm initialization and
single-operation scheduling problem with identical parallel machines. In swarm improvement by TLPSO and the stage of swarm intensification via
the practical plastics injection production system, each job has only one VNS. Since encoding and decoding of the particles are critical for the
operation and workshop of the system contains more than one machine. successful application of TLPSO, encoding and decoding of the particles
The processing time for different machines is the same if the injection are introduced before the details of the algorithm.
mould for the job could be installed properly on these machines. The

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

Fig. 1. Framework of the overall algorithm.

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 5. Gantt charts without compulsory maintenance. a: Machine schedule


without compulsory maintenance. b: Mould schedule without compulsory
Figure 3. Gantt charts of the example in Fig. 2a. (a) Machine schedule of the maintenance.
example in Fig. 2a. (b) Mould schedule of the example in Fig. 2a.

the compulsory maintenance time (the maximum maintenance time need


by a resource) should be added when the objective function (makespan)
is calculated. To explain this situation better, an example is given, and the
according Gantt charts are shown in Fig. 5. Gantt charts without
compulsory maintenance and Fig. 6. Gantt charts with compulsory
maintenance. There are 8 jobs, 3 machines and 2 moulds (job 1, 3, 5 are
allocated to mould 1 and job 2, 4,6, 7, 8 are allocated to mould 2) in this
example. The maximum age of machine is 100 units of time and the
maximum age of mould is 90 units of time. Once a resource reaches its
maximum age, a compulsory maintenance must be conducted after
completion of the current job. A scheduling solution after decoding is (5 7
2 1 8 3 6 4 3 2 1 2 3 3 1 2 1 0 0 0 0 1 1 0 0 0 0 1 0 1 0 1) and the according

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

Fig. 7. Flowchart of TLPSO.

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

Fig. 8. Pseudo-code of VNS.

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

Min Avg SD Min Avg SD Min Avg SD

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)

1 20  2  4 TLPSO- 2328 2424 2365 35 535


VNS
HVNS 2391 2691 2471.3 86 168
NGVNS 2453 2535 2492.7 27 41
ABCSPSO 2504 2974 2704 147 139
fk-PSO 2763 3236 2933.7 142 5
SPSO2011 2517 2806 2652.6 92 14.2
2 35  4  6 TLPSO- 2423 2690 2539 82 916
VNS
HVNS 2702 3017 2802 106 869
NGVNS 2555 2876 2702 89 162
ABCSPSO 3029 3827 3545 251 261
fk-PSO 3874 4707 4234.6 316 9
SPSO2011 3273 4216 3872.6 276 26
3 50  7  TLPSO- 2189 2425 2281.7 90 2585
10 VNS
HVNS 2204 2634 2413.8 144 1301
NGVNS 2203 2351 2293 43 314
ABCSPSO 2829 3391 3036.6 169 352
fk-PSO 3695 4157 3893 138 14
SPSO2011 3329 3717 3483.4 121 38
4 70  9  TLPSO- 3672 3816 3700.6 45 3302
12 VNS
HVNS 3772 4477 4095.3 189 1610
NGVNS 3844 4115 3936.4 94 639
ABCSPSO 3905 4336 4128 149 492
fk-PSO 4422 4423 4892 229 16
SPSO2011 4615 5073 4830 143 48
5 80  10  TLPSO- 3200 3355 3279 46 3728
16 VNS
HVNS 3360 4452 3856 301 2103
NGVNS 3593 4361 3924 210 904
ABCSPSO 3634 4028 3866.0 143 542
fk-PSO 4563 5351 5048 229 23
SPSO2011 4617 5022 4787 142 56
6 100  12  TLPSO- 3487 3809 3623.5 94 4626
20 VNS
HVNS 3815 4398 4026.6 197 2560
NGVNS 3744 4428 3906 200 1808
ABCSPSO 3942.0 4762.3 4368.0 250 659
fk-PSO 5523.7 6101.5 6004.7 269 22
SPSO2011 5224.8 6433.5 5729.5 264 67.2

Fig. 10. Time increase trends for the six algorithms.


TLPSO-VNS algorithm needs more time to conduct the deep search in the
three-level PSO as well as VNS to guarantee the quality of the solutions the standard deviation of TLPSO-VNS are better than NGVNS, we can still
compared with other algorithms. consider that TLPSO-VNS is better than NGVNS. Since the TLPSO-VNS
Furthermore, since the running time of the proposed TLPSO-VNS al- consists of three interrelated PSO, the local search ability is greatly
gorithm is longer than other comparation algorithms, to better illustrate improved but it needs more time to conduct deep searching. VNS, as a
the performance of the proposed algorithm, the comparation algorithms good search tool, can produce relative good solutions, however, VNS
are carried out under the same computational time that the proposed needs more time when the size of the problem increases. After hybrid-
TLPSO-VNS algorithm needs for each instance. Each algorithm is run 30 izing TLPSO with VNS, VNS enhances the local search ability of TLPSO
times and the results are given in Table 6. and the solutions produced by TLPSO act as the initial solutions of VNS.
From Table 6, we can see that TLPSO-VNS surpasses VNS variants and The search ability of TLPSO-VNS is greatly improved, but the time
PSO variants for these six instances in terms of the average value, the needed is also longer.
minimum value and the maximum value under the same computational
cost. To deeply analyse the difference between the TLPSO-VNS and the 6. Conclusions
other comparison algorithms, the Wilcoxon signed rank test for these
results is conducted. The Null hypothesis is that there is no median dif- This paper proposes a new hybrid algorithm named the TLPSO-VNS
ference between the two algorithms. The significant level is 0.05. If the P algorithm for the production scheduling with the mould maintenance
value is smaller than 0.05, it means that the Null hypothesis is rejected. (PS-MM) problem, which combines the three-level particle swarm opti-
Otherwise, the Null hypothesis is retained. The results of the Wilcoxon mization (TLPSO) algorithm and variable neighbourhood search (VNS).
signed rank test are shown in Table 7. From Table 7, we can know that Differing from the joint scheduling approach, this integrated problem is
there are no median differences between TLPSO-VNS and PSO variants as divided into three sub-problems: production scheduling problem, ma-
well as HVNS because the according P values are smaller than the sig- chine maintenance problem and mould maintenance problem. Three
nificant level 0.05. For most of the instances, there is no median differ- interrelated PSOs are used in the solution, and is named as three-level
ence between the TLPSO-VNS and NGVNS. However, for instance 35  particle swarm optimization (TLPSO). After obtaining good solutions
4  6 and instance 50  7  10, the medians of TLPSO-VNS and NGVNS from TLPSO, VNS is conducted on all these solutions to enhance the local
are the same with a 95% confidence level. Since the average value and search ability. The best solution is chosen from all the solutions enhanced

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

You might also like