# Integrating Preventive Maintenance Planning and Production Scheduling under Reentrant Job Shop

Authors: Ruiqiu Li; Huimin Ma
Journal: Mathematical Problems in Engineering
 (2017)

---

## Abstract

This paper focuses on a preventive maintenance plan and production scheduling problem under reentrant Job Shop in semiconductor production. Previous researches discussed production scheduling and preventive maintenance plan independently, especially on reentrant Job Shop. Due to reentrancy, reentrant Job Shop scheduling is more complex than the standard Job Shop which belongs to NP-hard problems. Reentrancy is a typical characteristic of semiconductor production. What is more, the equipment of semiconductor production is very expensive. Equipment failure will affect the normal production plan. It is necessary to maintain it regularly. So, we establish an integrated and optimal mathematical model. In this paper, we use the hybrid particle swarm optimization algorithm to solve the problem for it is highly nonlinear and discrete. The proposed model is evaluated through some simple simulation experiments and the results show that the model works better than the independent decision-making model in terms of minimizing maximum completion time.


---

## Body

## 1. Introduction

In 1993, Kumar [1] proposed the third mode of production, reentrant production, which was different from common Job Shop or Flow Shop when he studied the semiconductor manufacturing process. Reentrancy means that the same job, at various processing stages, may wait for processing before the same device or the workpiece, at different stages of processing, visits the same device repeatedly. This feature makes the process even more intense when different jobs are processed in the same machine, which will undoubtedly make scheduling more difficult. With the rapid development of semiconductor industry, the reentrant Job Shop scheduling problem (RJSP) has gotten more and more attention recently. What is more, semiconductor manufacturing equipment is extremely expensive. In the production process, an indeterminate fault might happen to these machines which will affect normal production planning. To improve the efficiency of the whole production system, equipment maintenance should also be considered at the same time. Combining production scheduling with preventive maintenance is worth discussing on RJSP. We propose an integrated and optimal mathematical model in this paper and use the hybrid particle swarm optimization algorithm to solve the problem. The proposed model is evaluated through simulation experiments and the results show that the model works better than the independent decision-making model in terms of minimizing maximum completion time.RJSP is more complex than JSP because the same job will visit the same machine more than once at different stages. The main solving method is the heuristic algorithm. An approach of artificial neural network is proposed to solve multidecision scheduling problems of semiconductor wafer fabrication [2]. Topaloglu and Kilincli [3] proposed a modified shifting bottleneck heuristic for the reentrant Job Shop scheduling problem with makespan minimization objective. Zoghby et al. [4] built a model for reentrant Job Shop scheduling problem with sequence-dependent setup times and investigated the feasibility conditions for metaheuristic searches. Danping and Lee [5] gave a full picture of the research methodology for the reentrant scheduling problem. Two-level hierarchical production planning based on linear programming was proposed for semiconductor wafer fabrication in [6], which was proved to be better than an existing algorithm by simulation experiments. Gupta and Sivakumar [7] made a review on Job Shop scheduling techniques in semiconductor manufacturing. Mönch et al. [8] discussed a complex Job Shop environment, which contains parallel batching machines, machines with sequence-dependent setup times, and reentrant process flows, and a modified shifting bottleneck heuristic was used to solve this complicated problem.Although many achievements have been made in semiconductor manufacturing production scheduling, they are studied only from the perspective of the production department to optimize production scheduling. They ignore the fact that the semiconductor manufacturing workshop equipment maintenance department arranges a large number of preventive maintenance tasks so that they will affect the equipment production. What is more, the random failure of machines will interrupt production scheduling. It will generate a production scheduling conflict when we discuss production scheduling and equipment maintenance separately. Obviously, the related theoretical study of production scheduling does not reflect the actual status of the reentrant shop job scheduling very well at present.Equipment preventive maintenance is also important to improve production efficiency. Ma et al. [9] built an equipment maintenance scheduling model of semiconductor manufacturing and proposed a method which is called particle swarm optimization algorithm to solve the problem. Mosley et al. [10] compared different dispatching maintenance scheduling policies which can significantly affect system performance by using a discrete event simulation model of a wafer fabrication. Davenport et al. [11] presented a goal programming approach that incorporates both constraint programming and mixed-integer programming solution technologies. Yao et al. [12] proposed a two-level hierarchical modeling framework to solve preventive maintenance scheduling. At the higher level, there is a model for long-term planning, and, at the lower level, there is a model for short-term PM scheduling. Based on the above research, we can see that equipment maintenance can greatly improve production efficiency. However, connected equipment maintenance and production scheduling have more realistic significance.Although joint optimization is rarely studied on semiconductor production, many researches have been carried out in traditional production scheduling and equipment maintenance. Cassady and Kutanoglu [13] proposed an integrated model to solve the problem of production scheduling and equipment maintenance on a single machine. Da and Wang [14] built an integrated model about production scheduling and equipment maintenance under the Flow Shop and proposed a heuristic approach to solve this problem. Da et al. [15] have done some researches on batch scheduling and maintenance under the Flow Shop and established a joint optimization model. Kaihara et al. [16] proposed a new approach, which is based on Lagrangian decomposition coordination, to solve the problem of maintenance scheduling. As for the complex workshop environment such as JSP, studies on joint optimization are very few. It will consider multiobjective optimization measures when optimizing processing sequence and maintenance time at the same time. Some papers are always introducing other objective functions such as system availability in order to reflect the influence of maintenance decision-making on the reliability of the equipment [17–19]. On the whole, the existing research on joint optimization is preliminary; most of the researches focus on basic workshop types and mode of production. They do not consider the reentrancy of complex production workshop.Judging from the current research results, although joint optimization of production and maintenance has aroused more and more attention, studies on solving joint research of reentrant manufacturing production and equipment maintenance operations are very rare. In this paper, we combine production scheduling with preventive maintenance planning and establish an integrated optimization model of scheduling and preventive maintenance with the goal of minimizing completion time.The paper is organized as follows. Section2 is devoted to representing the integrated problem and building a mathematical model. Section 3 describes the process of hybrid particle swarm optimization algorithm. Section 4 presents the simulation results and comparison result. Section 5 discusses the conclusion and future research direction.


## 2. Problem Formulation

Standard JSP contains two subproblems: the machine selection problem and the operation sequencing problem. During the production, each job can only be processed on different machines only once. And each machine can process a job at the same time. The processing diagram is shown as Figure1. The processing sequence on machines is 1→2→3→5. However, RJSP is more complicated and challenging than the standard JSP because it exhibits a reentrant situation, where different operations of the same job can be processed on the same machine. The processing diagram of RJSP is shown as Figure 2. The processing sequence on machines is 1→2→3→4→2→5. The job is processed on machine 2 twice. At the same time, if the machines fail during production, this will affect the whole production plan. So, we develop a joint mathematical optimization model to solve this problem in this paper. The objective of this problem is to minimize the maximal completion time of all the operations.Figure 1
Processing diagram of JSP.Figure 2
Processing diagram of RJSP.


### 2.1. Assumption

RJSP and equipment preventive maintenance planning problem can be represented as follows: there aren machines in a workshop and m different jobs should be processed. It has been arranged which operation will be processed on which machine before production. Different operations of the same job may be processed on the same machine not only once. Each machine may have different abilities. Some hypotheses considered in this paper are summarized as follows:(1)
The processing time for each operation in a particular machine is defined.(2)
A machine can only process one operation at a certain time (resources constraint).(3)
Each job must be processed on one machine at a given time, so jumping the queue is not allowed.(4)
All the jobs have the same probability to be scheduled at the beginning, which means different jobs have the same priority.(5)
Each operation of each job is not allowed to be interrupted in processing time; that is, preventive maintenance operations must be before or after production.(6)
All machines are new at the beginning of the production process.(7)
Each machine recovers as new after the implementation of preventive maintenance.(8)
The time of small repair and machine setup is ignored during the processing.


### 2.2. Definition of Notations

The indices and decision variables used in the model are as follows.Indices
i
,
h: job, i,h=1,…,m, wherem is the total number of jobs.
j
,
k: machine, j,k=1,…,n, wheren is the total number of machines.
l
′: sequence of assigned operation on machine j(1,…,dj).
l
i: reentrance times (li=1,2,…).
O
i
j
l
i: the operation of i job processed li times on machine j.
p
i
j: processing time of Oijli.
s
0
j: the initial age of machinek.
q
j: preventive maintenance time on machine j (if the maintenance interval iswithin the fixed time T′, then qj=θ; if not, qj=θ+αΔt, where Δt is the over time and α is a parameter).
C
i
j
l
i: completion time of operation Oijli.
r
l
′
j: processing time of l′th operation processed on machine j.
t
i
j
l
i: starting time of Oijli.
T
j
l
′: starting time of l′th operation processed on machine j.
s
l
k: the age of machine j starting to process l′th job.Variables
(1)
x
i
j
l
i
l
′
=
1
,
if
O
i
j
l
i
is performed on machine
j
in priority
l
′
0
,
otherwise
y
j
l
′
=
1
,
machine
j
conducts preventive maintenance after finishing
l
′
th procession
0
,
otherwise.


### 2.3. Maintenance Strategies

In the process of production, equipment maintenance is a basic work. Timely maintenance can restore equipment performance, fix the trouble, and effectively prolong the service life of equipment. So, it is one of the most important ways to ensure smooth production. For preventive maintenance, it can be roughly divided into two categories. One is preventive maintenance which is based on machine reliability, and the other is periodic preventive maintenance.For preventive maintenance based on the reliability of the machine, when the reliability of the machine reaches the threshold set, it is time for equipment maintenance. Some scholars suppose the machines will return to the new state after maintenance in their studies. In fact, equipment performance is gradually degraded with decreasing machine age. Under the same maintenance conditions and maintenance time, the equipment degree of maintenance decreases with the increase of the maintenance times. So, it will take less and less time to get the reliability threshold. So, lots of scholars assume that the reliability threshold will reduce after maintenance. Periodic preventive maintenance is the most common method in industrial production. It means that when each machine achieves the maximum maintenance interval, it must be maintained in time. When there is small equipment failure, we assume that the maintenance time is negligible. So, we do not consider the failure rate of the machine. Thus, this article mainly uses the periodic preventive maintenance strategy.In practice, many companies perform PM at a fixed interval. This kind of fixed interval is according to the processing time when starting production. If we calculate time according to processing time, the machines will be maintained excessively because some machines may not process any job during the maintenance cycle. So, we adopt other methods to determine PM intervals. When we calculate time, we focus on the age of the machine. This method is used in many researches [17, 18, 20]. For example, one job is processed on 2 machines and it has 4 operations. The processing time is as Table 1 shows. We assume preliminary maintenance cycle T=15.Table 1
Job processing time on machines for the example.
Machine 1
Machine 2
Job 1
Operation1
10
5
Operation2
5
10If we calculate time according to machine age, each machine just needs only onetime maintenance as depicted in Figure3. However, each machine should be maintained twice if we calculate time according to processing time described in Figure 4. The increasing maintenance times will increase maintenance cost and delay production scheduling. So, the maintenance strategy based on machine age is more reasonable for our study.Figure 3
Maintenance based on machine age.Figure 4
Maintenance based on processing time.


### 2.4. Mathematical Model

#### 2.4.1. Objective

The main goal in this paper is to minimize the makespan (Cmax), which is the cumulative time to complete all operations on all machines with maintenance.(2)Cmax=minimaxjmaxliCijli.


#### 2.4.2. Jobs’ Starting Production Time on Machines

The starting production time of theith job, which is produced on the jth machine li times, is dependent on many factors. They are as follows:(1)
completion time of previous jobs on jth machine:(3)tijli+pijli≤tikli+1∀i,∀li,∀j,k=1,2,…,n.(2)
completion time of the previous operation of the ith job on another machine(4)tijli+pijli≤tij+1li∀i,∀j=1,2,…,n-1.(3)
time for implementing PM. In our model, PM is regarded as perfect, which means the machine will be renewed to an as-good-as-new status. We assume that the initial age of the machines is zero. Then, according to the machines’ age and fixed maintenance cycle, we can decide whether PM should be conducted. Hence, the completion time of the current job can be calculated as follows:(5)Tjl′+pijli∗xijlil′+yjl′∗qj≤Tjl′+1∀i,j,li,∀l′=1,2,…,dj-1Tjl′≤tijli+1-xijlil′∗M∀i,j,li,l′Tjl′+1-xijlil′∗M≥tijli∀i,j,li,l′sl′j=s0j1-yjl′-1+yjl′-1sl′-1j+rl′-1j∑ixijlil′=1∀j,l′.The completion production time of theith job, which is produced on thejth machine li times, is calculated as follows:(6)Cijli=tijli+pijli∀i,j,li.Due to reentrancy, the same kind of job in different stages will wait to be produced on one machine. So, we should decide which one will be produced firstly. The calculation is as follows:(7)tijli+pijli≥thjlhorthjlh+phjlh≥tijli∀i,h,∀li,lh,∀j,k=1,2,…,n.


## 2.1. Assumption

RJSP and equipment preventive maintenance planning problem can be represented as follows: there aren machines in a workshop and m different jobs should be processed. It has been arranged which operation will be processed on which machine before production. Different operations of the same job may be processed on the same machine not only once. Each machine may have different abilities. Some hypotheses considered in this paper are summarized as follows:(1)
The processing time for each operation in a particular machine is defined.(2)
A machine can only process one operation at a certain time (resources constraint).(3)
Each job must be processed on one machine at a given time, so jumping the queue is not allowed.(4)
All the jobs have the same probability to be scheduled at the beginning, which means different jobs have the same priority.(5)
Each operation of each job is not allowed to be interrupted in processing time; that is, preventive maintenance operations must be before or after production.(6)
All machines are new at the beginning of the production process.(7)
Each machine recovers as new after the implementation of preventive maintenance.(8)
The time of small repair and machine setup is ignored during the processing.


## 2.2. Definition of Notations

The indices and decision variables used in the model are as follows.Indices
i
,
h: job, i,h=1,…,m, wherem is the total number of jobs.
j
,
k: machine, j,k=1,…,n, wheren is the total number of machines.
l
′: sequence of assigned operation on machine j(1,…,dj).
l
i: reentrance times (li=1,2,…).
O
i
j
l
i: the operation of i job processed li times on machine j.
p
i
j: processing time of Oijli.
s
0
j: the initial age of machinek.
q
j: preventive maintenance time on machine j (if the maintenance interval iswithin the fixed time T′, then qj=θ; if not, qj=θ+αΔt, where Δt is the over time and α is a parameter).
C
i
j
l
i: completion time of operation Oijli.
r
l
′
j: processing time of l′th operation processed on machine j.
t
i
j
l
i: starting time of Oijli.
T
j
l
′: starting time of l′th operation processed on machine j.
s
l
k: the age of machine j starting to process l′th job.Variables
(1)
x
i
j
l
i
l
′
=
1
,
if
O
i
j
l
i
is performed on machine
j
in priority
l
′
0
,
otherwise
y
j
l
′
=
1
,
machine
j
conducts preventive maintenance after finishing
l
′
th procession
0
,
otherwise.


## 2.3. Maintenance Strategies

In the process of production, equipment maintenance is a basic work. Timely maintenance can restore equipment performance, fix the trouble, and effectively prolong the service life of equipment. So, it is one of the most important ways to ensure smooth production. For preventive maintenance, it can be roughly divided into two categories. One is preventive maintenance which is based on machine reliability, and the other is periodic preventive maintenance.For preventive maintenance based on the reliability of the machine, when the reliability of the machine reaches the threshold set, it is time for equipment maintenance. Some scholars suppose the machines will return to the new state after maintenance in their studies. In fact, equipment performance is gradually degraded with decreasing machine age. Under the same maintenance conditions and maintenance time, the equipment degree of maintenance decreases with the increase of the maintenance times. So, it will take less and less time to get the reliability threshold. So, lots of scholars assume that the reliability threshold will reduce after maintenance. Periodic preventive maintenance is the most common method in industrial production. It means that when each machine achieves the maximum maintenance interval, it must be maintained in time. When there is small equipment failure, we assume that the maintenance time is negligible. So, we do not consider the failure rate of the machine. Thus, this article mainly uses the periodic preventive maintenance strategy.In practice, many companies perform PM at a fixed interval. This kind of fixed interval is according to the processing time when starting production. If we calculate time according to processing time, the machines will be maintained excessively because some machines may not process any job during the maintenance cycle. So, we adopt other methods to determine PM intervals. When we calculate time, we focus on the age of the machine. This method is used in many researches [17, 18, 20]. For example, one job is processed on 2 machines and it has 4 operations. The processing time is as Table 1 shows. We assume preliminary maintenance cycle T=15.Table 1
Job processing time on machines for the example.
Machine 1
Machine 2
Job 1
Operation1
10
5
Operation2
5
10If we calculate time according to machine age, each machine just needs only onetime maintenance as depicted in Figure3. However, each machine should be maintained twice if we calculate time according to processing time described in Figure 4. The increasing maintenance times will increase maintenance cost and delay production scheduling. So, the maintenance strategy based on machine age is more reasonable for our study.Figure 3
Maintenance based on machine age.Figure 4
Maintenance based on processing time.


## 2.4. Mathematical Model

### 2.4.1. Objective

The main goal in this paper is to minimize the makespan (Cmax), which is the cumulative time to complete all operations on all machines with maintenance.(2)Cmax=minimaxjmaxliCijli.


### 2.4.2. Jobs’ Starting Production Time on Machines

The starting production time of theith job, which is produced on the jth machine li times, is dependent on many factors. They are as follows:(1)
completion time of previous jobs on jth machine:(3)tijli+pijli≤tikli+1∀i,∀li,∀j,k=1,2,…,n.(2)
completion time of the previous operation of the ith job on another machine(4)tijli+pijli≤tij+1li∀i,∀j=1,2,…,n-1.(3)
time for implementing PM. In our model, PM is regarded as perfect, which means the machine will be renewed to an as-good-as-new status. We assume that the initial age of the machines is zero. Then, according to the machines’ age and fixed maintenance cycle, we can decide whether PM should be conducted. Hence, the completion time of the current job can be calculated as follows:(5)Tjl′+pijli∗xijlil′+yjl′∗qj≤Tjl′+1∀i,j,li,∀l′=1,2,…,dj-1Tjl′≤tijli+1-xijlil′∗M∀i,j,li,l′Tjl′+1-xijlil′∗M≥tijli∀i,j,li,l′sl′j=s0j1-yjl′-1+yjl′-1sl′-1j+rl′-1j∑ixijlil′=1∀j,l′.The completion production time of theith job, which is produced on thejth machine li times, is calculated as follows:(6)Cijli=tijli+pijli∀i,j,li.Due to reentrancy, the same kind of job in different stages will wait to be produced on one machine. So, we should decide which one will be produced firstly. The calculation is as follows:(7)tijli+pijli≥thjlhorthjlh+phjlh≥tijli∀i,h,∀li,lh,∀j,k=1,2,…,n.


## 2.4.1. Objective

The main goal in this paper is to minimize the makespan (Cmax), which is the cumulative time to complete all operations on all machines with maintenance.(2)Cmax=minimaxjmaxliCijli.


## 2.4.2. Jobs’ Starting Production Time on Machines

The starting production time of theith job, which is produced on the jth machine li times, is dependent on many factors. They are as follows:(1)
completion time of previous jobs on jth machine:(3)tijli+pijli≤tikli+1∀i,∀li,∀j,k=1,2,…,n.(2)
completion time of the previous operation of the ith job on another machine(4)tijli+pijli≤tij+1li∀i,∀j=1,2,…,n-1.(3)
time for implementing PM. In our model, PM is regarded as perfect, which means the machine will be renewed to an as-good-as-new status. We assume that the initial age of the machines is zero. Then, according to the machines’ age and fixed maintenance cycle, we can decide whether PM should be conducted. Hence, the completion time of the current job can be calculated as follows:(5)Tjl′+pijli∗xijlil′+yjl′∗qj≤Tjl′+1∀i,j,li,∀l′=1,2,…,dj-1Tjl′≤tijli+1-xijlil′∗M∀i,j,li,l′Tjl′+1-xijlil′∗M≥tijli∀i,j,li,l′sl′j=s0j1-yjl′-1+yjl′-1sl′-1j+rl′-1j∑ixijlil′=1∀j,l′.The completion production time of theith job, which is produced on thejth machine li times, is calculated as follows:(6)Cijli=tijli+pijli∀i,j,li.Due to reentrancy, the same kind of job in different stages will wait to be produced on one machine. So, we should decide which one will be produced firstly. The calculation is as follows:(7)tijli+pijli≥thjlhorthjlh+phjlh≥tijli∀i,h,∀li,lh,∀j,k=1,2,…,n.


## 3. Hybrid Particle Swarm Optimization Algorithm

### 3.1. Workflow of the Proposed HPSOA

With high nonlinearity and discreteness, the reentrant Job Shop scheduling problem is a strongly NP-hard problem. It is very hard to be solved by traditional optimization methods within an acceptable time. In recent years, many scholars have been committed to using intelligent optimization algorithms to solve this problem, such as genetic algorithm, ant colony algorithm, and particle swarm optimization algorithm. General particle swarm optimization algorithm is to find the optimum value by tracking individual best value and group best value [21]. Although this algorithm is simple and its convergence rate is very fast, it will be trapped in local optimum and cannot jump out with increasing iteration times. Hybrid particle swarm algorithm discards the method of tracking the extreme to update the particle’s location in the traditional particle swarm optimization algorithm. It introduces crossover and mutation in the genetic algorithm. The way of searching the optimal value is to find the best particle after crossing operation and mutation operation. So, the hybrid particle swarm optimization algorithm (HPSOA) [21] is mainly applied to solve the integrated problem in this paper.Workflow of the proposed HPSOA is shown in Figure5. All the details of the proposed HPSOA will be described in the following subsections. The overall procedure of the proposed approach is described as follows.Figure 5
The workflow of HPOSA.Step 1.
Initialize the number of particles, the maximum number of iterations, learning factors, and so on.Step 2.
Initialize the particle’s initial position and velocity and calculate the fitness value.Step 3.
Initialize the particle’s personal best and global best.Step 4.
Calculate the value of inertia weightω and update the particle’s velocity and position.Step 5.
Calculate the fitness value of particles and then sort order according to the fitness value.Step 6.
Improve particles by crossover and mutation operation.Step 7.
Recalculate the fitness value.Step 8.
Obtain updated personal best and global best.Step 9.
If the termination condition is met, output the optimal solution. Otherwise, execute the loop body Steps4 to 8.


### 3.2. Encoding

In our encoding, the particle is composed of two-dimensional vectors. The job sequence in the first dimension decides the job’s processing sequence. The second dimension is a set of random numbers which can decide particles’ velocity and position. The range of those random numbers is [0,1]. It has been arranged which operation of each job will be processed on which machine before production. If job m has N operations, it will generate Nm. For example, if there are 2 jobs, each will have 3 operations. The job sequence is 111222. And generate a set of random numbers ranging from 0 to 1. The primary particle is [1 1 1 2 2 2; 0.8147 0.9058 0.1270 0.9134 0.6324 0.0975]. This set of random numbers is sorted in an ascending order. And the job sequence will change accordingly. The real particle is [2 1 2 1 1 2; 0.0975 0.1270 0.6324 0.8147 0.9058 0.9134]. This means that the first operation of job 2 is processed firstly and then the first operation of job 1 is processed and so on.


### 3.3. Crossover

If the particle has reached the condition of crossover, we choose the particles to cross with the best personal particle and best group particle. The method of crossover is integer crossover. At first, we choose the position of crossover randomly. And then the selected one crosses with the personal best or group best. For example, if we choose the second position and fourth position to cross, the operation will be depicted as follows.Individual2
1
1
1
2
2
0.1576
0.2785
0.5469
0.9575
0.9649
0.9706Best Personal Particle2
2
1
1
2
1
0.1419
0.4218
0.4854
0.8003
0.9157
0.9572New Particle2
2
1
1
2
2
0.1576
0.4218
0.4854
0.8003
0.9649
0.9706After crossing, the amount of processing of some jobs will increase or decrease. In this situation, we will take necessary actions to make sure the amount of processing meets the conditions. In the crossover process, we will choose the best individual to update the particle swarm according to the fitness value.


### 3.4. Mutation

In the mutation operation, two positions are changed with each other in the same individual. At first, we choose the mutation position, position 1 and position 2, and then change the mutual position. We just change the position of the job not the particle’s position. For example, if we change the second position and fourth position, it will be described as follows:2211210.14190.42180.48540.80030.9150.9572After Mutation2
1
1
2
2
1
0.1419
0.4218
0.4854
0.8003
0.915
0.9572


## 3.1. Workflow of the Proposed HPSOA

With high nonlinearity and discreteness, the reentrant Job Shop scheduling problem is a strongly NP-hard problem. It is very hard to be solved by traditional optimization methods within an acceptable time. In recent years, many scholars have been committed to using intelligent optimization algorithms to solve this problem, such as genetic algorithm, ant colony algorithm, and particle swarm optimization algorithm. General particle swarm optimization algorithm is to find the optimum value by tracking individual best value and group best value [21]. Although this algorithm is simple and its convergence rate is very fast, it will be trapped in local optimum and cannot jump out with increasing iteration times. Hybrid particle swarm algorithm discards the method of tracking the extreme to update the particle’s location in the traditional particle swarm optimization algorithm. It introduces crossover and mutation in the genetic algorithm. The way of searching the optimal value is to find the best particle after crossing operation and mutation operation. So, the hybrid particle swarm optimization algorithm (HPSOA) [21] is mainly applied to solve the integrated problem in this paper.Workflow of the proposed HPSOA is shown in Figure5. All the details of the proposed HPSOA will be described in the following subsections. The overall procedure of the proposed approach is described as follows.Figure 5
The workflow of HPOSA.Step 1.
Initialize the number of particles, the maximum number of iterations, learning factors, and so on.Step 2.
Initialize the particle’s initial position and velocity and calculate the fitness value.Step 3.
Initialize the particle’s personal best and global best.Step 4.
Calculate the value of inertia weightω and update the particle’s velocity and position.Step 5.
Calculate the fitness value of particles and then sort order according to the fitness value.Step 6.
Improve particles by crossover and mutation operation.Step 7.
Recalculate the fitness value.Step 8.
Obtain updated personal best and global best.Step 9.
If the termination condition is met, output the optimal solution. Otherwise, execute the loop body Steps4 to 8.


## 3.2. Encoding

In our encoding, the particle is composed of two-dimensional vectors. The job sequence in the first dimension decides the job’s processing sequence. The second dimension is a set of random numbers which can decide particles’ velocity and position. The range of those random numbers is [0,1]. It has been arranged which operation of each job will be processed on which machine before production. If job m has N operations, it will generate Nm. For example, if there are 2 jobs, each will have 3 operations. The job sequence is 111222. And generate a set of random numbers ranging from 0 to 1. The primary particle is [1 1 1 2 2 2; 0.8147 0.9058 0.1270 0.9134 0.6324 0.0975]. This set of random numbers is sorted in an ascending order. And the job sequence will change accordingly. The real particle is [2 1 2 1 1 2; 0.0975 0.1270 0.6324 0.8147 0.9058 0.9134]. This means that the first operation of job 2 is processed firstly and then the first operation of job 1 is processed and so on.


## 3.3. Crossover

If the particle has reached the condition of crossover, we choose the particles to cross with the best personal particle and best group particle. The method of crossover is integer crossover. At first, we choose the position of crossover randomly. And then the selected one crosses with the personal best or group best. For example, if we choose the second position and fourth position to cross, the operation will be depicted as follows.Individual2
1
1
1
2
2
0.1576
0.2785
0.5469
0.9575
0.9649
0.9706Best Personal Particle2
2
1
1
2
1
0.1419
0.4218
0.4854
0.8003
0.9157
0.9572New Particle2
2
1
1
2
2
0.1576
0.4218
0.4854
0.8003
0.9649
0.9706After crossing, the amount of processing of some jobs will increase or decrease. In this situation, we will take necessary actions to make sure the amount of processing meets the conditions. In the crossover process, we will choose the best individual to update the particle swarm according to the fitness value.


## 3.4. Mutation

In the mutation operation, two positions are changed with each other in the same individual. At first, we choose the mutation position, position 1 and position 2, and then change the mutual position. We just change the position of the job not the particle’s position. For example, if we change the second position and fourth position, it will be described as follows:2211210.14190.42180.48540.80030.9150.9572After Mutation2
1
1
2
2
1
0.1419
0.4218
0.4854
0.8003
0.915
0.9572


## 4. Simulation and Discussion

### 4.1. Simulation

In real semiconductor manufacturing scheduling, the production process is very complex. Each job needs to go through hundreds of operations. In order to validate the superiority of joint optimization model and the effectiveness of hybrid particle swarm algorithm, we compare it with the independent decision-making model. In the example, there are 4 jobs that are processed on 5 machines in the system. Some machines will produce the same job more than once. In order to reflect the competition of similar products at different stages on the same machine, we assume that job 1 and job 2 are the same products. Job operation information is depicted in Table2. In the array, the first number presents processing machine and the second number presents processing time.Table 2
Job processing time on each machine (time units).
O
1
O
2
O
3
O
4
O
5
O
6
O
7
O
8
O
9
J
1
(1,20)
(3,10)
(2,39)
(5,24)
(4,33)
(2,17)
(3,26)
(1,22)
(2,19)
J
2
(1,20)
(3,10)
(2,39)
(5,24)
(4,33)
(2,17)
(3,26)
(1,22)
(2,19)
J
3
(1,18)
(2,37)
(3,36)
(4,45)
(2,30)
(3,18)
(4,31)
(1,24)
(5,33)
J
4
(3,21)
(2,33)
(1,40)
(4,35)
(3,15)
(2,34)
(1,18)
(5,25)
(4,37)Maintenance has degraded effect in the whole production process. Kubzin and Strusevich proposed a linear degradation function to calculate PM time [22]. In this example, we also use qj=θ+αΔt to calculate PM time. We suppose α=0.5. In this paper, the hybrid particle swarm optimization algorithm is used to minimize makespan and MATLAB 2010b is used to realize the algorithm. The algorithm parameters are set as follows: the particles’ initial number is 200 and the number of loop iterations is 500. Pc is the crossover probability in gn.(8)Pc=Pcmax-Pcmax-Pcmin×gngnmax.Pcmax equals 1 which is the maximum crossover probability. Pcmin equals 0.5 which is the minimum crossover probability. gnmax which represents the number of generations equals 200. Pm is the mutation probability in gn.(9)Pm=Pmmax-Pmmax-Pmmin×gngnmax.Pmmax equals 0.1 which is the maximum mutation probability. Pmmin equals 0.01 which is the minimum mutation probability.


#### 4.1.1. Integrated Optimization Strategy

By using hybrid particle swarm optimization algorithm, the optimal solution is 392.5. The Gantt chart of integrated optimization model is shown in Figure6. In the figure, the horizontal axis is the time axis, the vertical axis is the machine order, the same color box in the figure represents the same job, and the red box denotes equipment maintenance.Figure 6
The Gantt chart of integrated optimization model.


#### 4.1.2. Independent Decision-Making Strategy

In actual production, the production department is responsible for the production scheduling, and the equipment maintenance department just makes equipment maintenance plan. So, their work is separated. The maintenance department calculates the best maintenance cycle, and the production department calculates the best production scheduling, and then the production department arranges a production plan. In the study, we assume that the production sequence is fixed. And if the machine’s cumulative processing time is more than maintenance cycle, the machine needs to be maintained right now. Used by the same algorithm, the optimal solution is 411.5. Its scheduling Gantt chart is shown in Figure7.Figure 7
The Gantt chart of independent decision-making.


### 4.2. Discussion of Result

Compared with independent decision-making, the result is improved by 4.62%. From the Gantt chart, we also can get that the maintenance time of joint decision-making is less than of independent decision-making. So, this will decrease the maintenance cost in some ways. In order to prove the superiority of the combined optimization model, we simulate a few more complex numerical experiments, and the simulation data can be checked in Supplementary Materials available online athttps://doi.org/10.1155/2017/6758147. The final results are shown in Table 3. On the whole, the joint decision-making model performs better than the independent decision-making model in solving the problem of production scheduling and maintenance plans.Table 3
Comparison of independent decision making and integrated optimization.
Jobs
Machines
Reentrancy times
independent decision making
integrated optimization model
Improvement
4
5
3
411.5
390.5
4.62%
4
5
5
669
646
3.44%
5
7
3
696
650.5
6.54%
5
7
5
920.5
876.5
4.78%


### 4.3. Evaluation of Hybrid Particle Swarm Optimization Algorithm (HPSOA)

Genetic algorithm (GA) is a stochastic search and optimization method which is based on natural selection and genetic mechanism [23]. In recent years, the genetic algorithm had great potential in solving complex optimization problems and it has successful application in the industrial engineering field. In the area of production scheduling, this algorithm is also very important. There are many scholars using this algorithm [24–27].To verify the validity of HPSOA, we make some tests on different examples compared with GA. In the testing, we make comparison with GA which can also be used to solve this problem. And the results indicated that HPSOA is better than GA to solve this problem.At first, we analyze the example of 4 jobs and 5 machines we talked about above. The final result is 403.5 which is worse than HPSOA. Its scheduling Gantt chart is shown in Figure8.Figure 8
Job processing and machine maintenance by GA.The machines’ reentrant times will affect dispatching, so reasonable arrangements for these machines play a big role in improving production efficiency. So, we give two more complex examples to verify the superiority of our method by increasing reentrancy times. One is 5 jobs/7 machines with 3 times reentrancy. The other is 5 jobs/7 machines with 5 times reentrancy. They are all solved using GA and HPSOA. The results are shown in Table4. Although the running speed of HPSOA is slower than GA, the results are better especially with the number of operations and reentrancy times increasing. So, HPSOA is preferable to be used to solve our problems.Table 4
Comparison of GA and HPSOA for complex problems.
Jobs
Machines
Reentrancy times
GA
HPSOA
Improvement
4
5
3
403.5
390.5
3.22%
4
5
5
700.5
646
7.78%
5
7
3
711.5
650.5
8.57%
5
7
5
1065.5
876.5
18.69%


## 4.1. Simulation

In real semiconductor manufacturing scheduling, the production process is very complex. Each job needs to go through hundreds of operations. In order to validate the superiority of joint optimization model and the effectiveness of hybrid particle swarm algorithm, we compare it with the independent decision-making model. In the example, there are 4 jobs that are processed on 5 machines in the system. Some machines will produce the same job more than once. In order to reflect the competition of similar products at different stages on the same machine, we assume that job 1 and job 2 are the same products. Job operation information is depicted in Table2. In the array, the first number presents processing machine and the second number presents processing time.Table 2
Job processing time on each machine (time units).
O
1
O
2
O
3
O
4
O
5
O
6
O
7
O
8
O
9
J
1
(1,20)
(3,10)
(2,39)
(5,24)
(4,33)
(2,17)
(3,26)
(1,22)
(2,19)
J
2
(1,20)
(3,10)
(2,39)
(5,24)
(4,33)
(2,17)
(3,26)
(1,22)
(2,19)
J
3
(1,18)
(2,37)
(3,36)
(4,45)
(2,30)
(3,18)
(4,31)
(1,24)
(5,33)
J
4
(3,21)
(2,33)
(1,40)
(4,35)
(3,15)
(2,34)
(1,18)
(5,25)
(4,37)Maintenance has degraded effect in the whole production process. Kubzin and Strusevich proposed a linear degradation function to calculate PM time [22]. In this example, we also use qj=θ+αΔt to calculate PM time. We suppose α=0.5. In this paper, the hybrid particle swarm optimization algorithm is used to minimize makespan and MATLAB 2010b is used to realize the algorithm. The algorithm parameters are set as follows: the particles’ initial number is 200 and the number of loop iterations is 500. Pc is the crossover probability in gn.(8)Pc=Pcmax-Pcmax-Pcmin×gngnmax.Pcmax equals 1 which is the maximum crossover probability. Pcmin equals 0.5 which is the minimum crossover probability. gnmax which represents the number of generations equals 200. Pm is the mutation probability in gn.(9)Pm=Pmmax-Pmmax-Pmmin×gngnmax.Pmmax equals 0.1 which is the maximum mutation probability. Pmmin equals 0.01 which is the minimum mutation probability.


### 4.1.1. Integrated Optimization Strategy

By using hybrid particle swarm optimization algorithm, the optimal solution is 392.5. The Gantt chart of integrated optimization model is shown in Figure6. In the figure, the horizontal axis is the time axis, the vertical axis is the machine order, the same color box in the figure represents the same job, and the red box denotes equipment maintenance.Figure 6
The Gantt chart of integrated optimization model.


### 4.1.2. Independent Decision-Making Strategy

In actual production, the production department is responsible for the production scheduling, and the equipment maintenance department just makes equipment maintenance plan. So, their work is separated. The maintenance department calculates the best maintenance cycle, and the production department calculates the best production scheduling, and then the production department arranges a production plan. In the study, we assume that the production sequence is fixed. And if the machine’s cumulative processing time is more than maintenance cycle, the machine needs to be maintained right now. Used by the same algorithm, the optimal solution is 411.5. Its scheduling Gantt chart is shown in Figure7.Figure 7
The Gantt chart of independent decision-making.


## 4.1.1. Integrated Optimization Strategy

By using hybrid particle swarm optimization algorithm, the optimal solution is 392.5. The Gantt chart of integrated optimization model is shown in Figure6. In the figure, the horizontal axis is the time axis, the vertical axis is the machine order, the same color box in the figure represents the same job, and the red box denotes equipment maintenance.Figure 6
The Gantt chart of integrated optimization model.


## 4.1.2. Independent Decision-Making Strategy

In actual production, the production department is responsible for the production scheduling, and the equipment maintenance department just makes equipment maintenance plan. So, their work is separated. The maintenance department calculates the best maintenance cycle, and the production department calculates the best production scheduling, and then the production department arranges a production plan. In the study, we assume that the production sequence is fixed. And if the machine’s cumulative processing time is more than maintenance cycle, the machine needs to be maintained right now. Used by the same algorithm, the optimal solution is 411.5. Its scheduling Gantt chart is shown in Figure7.Figure 7
The Gantt chart of independent decision-making.


## 4.2. Discussion of Result

Compared with independent decision-making, the result is improved by 4.62%. From the Gantt chart, we also can get that the maintenance time of joint decision-making is less than of independent decision-making. So, this will decrease the maintenance cost in some ways. In order to prove the superiority of the combined optimization model, we simulate a few more complex numerical experiments, and the simulation data can be checked in Supplementary Materials available online athttps://doi.org/10.1155/2017/6758147. The final results are shown in Table 3. On the whole, the joint decision-making model performs better than the independent decision-making model in solving the problem of production scheduling and maintenance plans.Table 3
Comparison of independent decision making and integrated optimization.
Jobs
Machines
Reentrancy times
independent decision making
integrated optimization model
Improvement
4
5
3
411.5
390.5
4.62%
4
5
5
669
646
3.44%
5
7
3
696
650.5
6.54%
5
7
5
920.5
876.5
4.78%


## 4.3. Evaluation of Hybrid Particle Swarm Optimization Algorithm (HPSOA)

Genetic algorithm (GA) is a stochastic search and optimization method which is based on natural selection and genetic mechanism [23]. In recent years, the genetic algorithm had great potential in solving complex optimization problems and it has successful application in the industrial engineering field. In the area of production scheduling, this algorithm is also very important. There are many scholars using this algorithm [24–27].To verify the validity of HPSOA, we make some tests on different examples compared with GA. In the testing, we make comparison with GA which can also be used to solve this problem. And the results indicated that HPSOA is better than GA to solve this problem.At first, we analyze the example of 4 jobs and 5 machines we talked about above. The final result is 403.5 which is worse than HPSOA. Its scheduling Gantt chart is shown in Figure8.Figure 8
Job processing and machine maintenance by GA.The machines’ reentrant times will affect dispatching, so reasonable arrangements for these machines play a big role in improving production efficiency. So, we give two more complex examples to verify the superiority of our method by increasing reentrancy times. One is 5 jobs/7 machines with 3 times reentrancy. The other is 5 jobs/7 machines with 5 times reentrancy. They are all solved using GA and HPSOA. The results are shown in Table4. Although the running speed of HPSOA is slower than GA, the results are better especially with the number of operations and reentrancy times increasing. So, HPSOA is preferable to be used to solve our problems.Table 4
Comparison of GA and HPSOA for complex problems.
Jobs
Machines
Reentrancy times
GA
HPSOA
Improvement
4
5
3
403.5
390.5
3.22%
4
5
5
700.5
646
7.78%
5
7
3
711.5
650.5
8.57%
5
7
5
1065.5
876.5
18.69%


## 5. Conclusions and Future Research

In actual production, production scheduling and preventive maintenance are closely linked and interactive. In this paper, we build an optimal model of reentrant manufacturing scheduling and equipment maintenance. We adopt fixed maintenance cycle with penalty function strategy and solve the problem effectively by the hybrid particle swarm optimization algorithm. By comparison with GA, this method is preferable to solve the combined optimization problem.We make lots of assumptions to simplify the complex problem for our study. However, they will not exist in practical production. Firstly, equipment failure is difficult to avoid, so the machines’ minor repair time should not be ignored. What is more, equipment age is changeable after maintenance in reality. At last, we focus on only one single objective in the study. However, cost is an important factor to consider which includes production cost, preventive maintenance cost, minimal repair cost for unexpected failures, and tardiness cost. As a consequence, future efforts are still needed to solve this composite problem in reentrant Job Shop production scheduling.



---

*Source: 6758147-2017-03-19.xml*