A Particle Swarm Optimization to Minimize Makespan for a Four-stage Multiprocessor Open Shop with Dynamic Job Release Time

This paper considers the scheduling problem observed in chip sorting operation of LED manufacturing , where each lot (job) with release time have four operations to be processed on a set of processing stages without predetermined necessary route. Each stage has one and more identical sorting machines. The sorting machines scheduling problem can be treated as a four-stage multi-processor open shop problem with dynamic job release, and the objective is minimizing the ma-kespan in the paper. This problem is formulated into a mixed integer programming (MIP) model and empirically shows its computational intractability. Due to the computational intractability, a particle swarm optimization (PSO) algorithm is proposed. A series of computational experiments are conducted to evaluate the performance of the proposed PSO in comparison with exact solution on various small-size problem instances. The results show that the PSO algorithm could finds most optimal or better solutions in one second.


Introduction
LED manufacturing consists of hundreds of process steps, generally, these processes can be divided into two main phases: front-end and back-end.In Front-end phase is to produce LED wafer where the process is similar to semiconductor wafer fabrication, and back-end includes wafer polishing, epiwafer scribing, chip probing, chip sorting and finally each chip then go to assemble into different products such as lamp, SMD or other display equipment according to its application.This paper focuses on chip sorting operation which is performed in sorting machines.The purpose of the sorting machine is to separate diodes form the epiwafer and transport those to the corresponding bin frames according to identified grades for the next process of package [1] [2].The sorting machine can classify at most 32 grades for each epiwafer, and a total of 128 grades is used to classify each chip.Therefore, each epiwafer have four operations to be processed on sorting machines without pre-specified obligatory route.Additionally, in real world, there is at least one sorting machine in each operation (or stage) and all lot (job) do not arrive for be processing in a time.The investigated sorting machine scheduling problem in LED manufacturing can be treated as a type of multiprocessor open shop scheduling problem with job release time and the objective to improve production efficiency, that is, to minimize the maximum of the completion times of all jobs, i.e., the minimization of the makespan, which, to the best of our knowledge, has not been studied by many researchers.The unique objective and constraints even increase complexity of the problem, which makes a complete mathematical model and an efficient solution necessary.
The multiprocessor open shop scheduling problem (MOSP) consists of n jobs with s operations to be processed on s processing stages in any sequence.Each stage has a number of parallel identical machines.Each operation of job j requires jk p for being processed on any of the parallel machines in one and only one stage k ( 1, 2,..., ) k s = without preemption.The MOSP problem is extended version of open shop problem.Some special cases of MOSP problem have been investigated by other researchers.For example, a special case of the MOSP is proportionate multiprocessor open shop scheduling problem (PMOSP) in which the processing time is not job-dependent, that is, each operation in k stage requires the same processing k p time.The PMOSP is en- countered in auto-repair and washing, maintenance workshops, final inspection operations and diagnostic test of hospital health care [3].Matta [3] [4] is the first to address the PMOSP in the literature and she proposed two mixed integer programming models to solve the problem with the objective of minimizing the makespan.With the complexity of the problem, a genetic algorithm (GA) was also proposed to obtain efficient solutions in a reasonable time.Tamer [5] applied tabu search (TS) for the PMOSP with minimizing the makespan.
Another special case of MOSP is the open shop scheduling problem (OSSP) which has been attracted by many researchers and most of the published work considers the OSSP with the objective of minimizing the makespan.Brucker et al. [6] developed a branch-and-bound algorithm using disjunctive graph model for the OSSP problem with makespan objective, and then Gueret et al. [7] addressed improving technique for the branch-andbound algorithm proposed by Brucker et al and examined it on benchmark problems of Taillard [8].Liaw [9] developed a hybrid genetic algorithm (HGA) where TS algorithm is used for local improvement to solve OSSP with the objective of minimizing the makespan.
Unlike the open shop problem under certain objectives that has attracted considerable attention; MPOS problem has been very limited with only a few studies to date.Shiang et al. [1] is the first to model the LED sorting system as MPOS problem and applied Arena simulation model with five dispatching plans individually to solve it.Naderi et al. [10] constructed a mixed integer programming (MIP) model to solve MPOS problem with minimizing total completion time.They also proposed a memetic algorithm with simulated algorithm (SA) to obtain efficient algorithm in a reasonable time.According to the survey work of Ellur and Ramasamy [11], a variety of the open shop problem with different objective function has been considered in the literature, however, less interest to develop a particle swarm optimization (PSO) algorithm to solve MOSP problem is apparent in the literature when compared to other scheduling problems.Therefore, in this paper we formulate the LED sorting machine scheduling problem as a mixed integer programming model to specify the problem and to obtain optimal solutions as benchmarks, furthermore, we propose a PSO algorithm.To examine the performance of the proposed PSO, the solutions obtained by the PSO is compared with ones obtained by MIP model.

Mixed Integer Programming Model (MIP)
The LED sorting machine scheduling problem in this paper can be denoted by [12].Each job should be processed only once by one machine in each stage without pre-determined route.After the four stages being finished for job j, a completion time of job j is recorded as j C .This paper attempts to find an optimal schedule to minimize the completion time when all jobs are finished, i.e., max 1 ( ) To obtain an optimal solution constructing a MIP model is traditional and intuitional methodology, and it is also nature way to specify explicitly and precisely the characteristics of problem.( 1) 2

Notation
1 (1 ) (1 ) The objective (1) is to minimize the makespan.Constraints (2) specify that the precedence relationship between stages for processing job j.Constraints (3) ensure that each job scheduled only once to be processed by one machine at each stage.Constraints (4) are used to calculate the completion time for each j at stage k.Constraints (5) define that the completion time of job j.Constraints (6) specify that the precedence relationship between two stages (k and l) for processing job j and ensure that stage k is either preceded by stage l or succeed by stage l for processing job j.Constraints (7) specify that two jobs must have precedence relationship if the two jobs (i and j) are processed on the same machine for each stage, and ensure that job i must be either preceded by job j or succeeded by job j if the two jobs are processed on the same machine for each stage.Constraints (8) and (9) define the relationship of two jobs (i and j) being processing on the same machine at stage k and ensure that the completion time of job j has to be greater than or equal to the completion time of job i. Constraints (10) define that the completion times of two jobs (i and j) which are processed on the same machine at stage k.Constraints (11) specify that the makesapn.

Particle Swarm Optimization (PSO)
As a majority of combinational optimization problem like scheduling problems is difficult to obtain optimal solutions, some meta-heuristic algorithms such as simulated algorithm (SA), genetic algorithm (GA) and particle swarm optimization (PSO) are proposed for those tough problems.PSO was developed by Kennedy and Eberhart [13] for optimization of continuous non-linear functions, and then extended to solve discrete or combinational optimization problems including scheduling problems.Inspired by the motion of a flock of birds searching for food, the search process of PSO is a constructive cooperation between particles as opposed to survival of the fittest approach used in GAs.
However, similar to other evolutionary algorithms, PSO algorithm also starts with a population of initial solutions called particles.Each particle is located at position with its velocity.In the PSO, each particle is measured by the fitness value that defines the quality of solution.Furthermore, the position of each particle is adjusted to move toward a better feasible solution for the problem based on its own best movement experience and that of all other members until a stopping criterion is satisfied.The proposed PSO for the Step 1: Generate initial particles randomly Suppose there are n jobs to be scheduled through four stages without pre-deterministic sequence and each dimension is represented as a job in π -Dimensional space where π is equal to 4 n × .Consequently, each particle i at iteration t is defined as , ,..., where t ij x represents the continuous position value of the ith particle with respect to the jth operation in tth ite- ration.In this representation, the rank order value is used to form an operation permutation.In this paper, the fifty initial particles are generated.
Step 2: Give an initial position and velocity In this PSO, the initial position and velocity for each particle is randomly generated according to the two equations Step 3: Fitness of particles Fitness value plays an important role to adjust the movement for each particle from the current position value to the next one at iteration t.In this study, the fitness value of a particle is defined by the makespan.For each given particle, we use a decode procedure to construct a complete schedule according to each particle from step 1 and obtain the fitness, i.e. to obtain makespan for each particle.The decode procedure includes three steps as follows: Step 3.1 Generate a string with 4 n × number between [0,1] randomly Step 3.2 Apply rank order value (ROV) method to produce a list Step 3.3 Use the following equations to generate an operation permutation for the list.
To explain the decode procedure to obtain makespan for each particle; an example is given as shown in Table 1 and Table 2.If (0.859, 0.600, 0.022, 0.393, 0.800, 0.326, 0.963, 0.984, 0.751, 0.149, 0.403, 0.065, 0.842, 0.097, 0.429, 0.138, 0.439, 0.602, 0.970, 0.339) of a string is generated randomly, and then (3, 12,   O }, and based on the operation permutation and non-delay concept, the 30 of makespan can be obtained. Step 4: Particle movement In the PSO, each particle is designed to move toward its own best position (pbest), and the best position of the whole swarm (gbest) by velocity updating mechanism.Several velocity equations have been developed in the literature.This paper uses the standard formula ( ) ( ) where w is the inertia weight used to control exploration and exploitation.A higher value of w prevents particles from getting trapped into local optimal.Meanwhile, a smaller value of w forces them to exploit under the same search area.Constants 1 c and 2 c are respectively called cognitive and social parameters, which determine whether particles prefer to move closer to the pbest or gbest positions, while 1 r and 2 r are uniform random numbers between 0 and 1.Once the velocity t ij v of each particle is updated for iteration t, each particle's new position is generated by x − is the position of the particle i at the previous iteration.In this paper, 1 c and 2 c are set to 2, and w is equal to 1.
Step 5: Stopping criterion For a PSO, this paper use time limit to terminate the PSO procedure.When execution time of the proposed PSO is greater than or equal to 1 second, terminate the PSO and print out the final best schedule, otherwise go to Step 3.

Result
For testing performance of the proposed PSO, random test problem instance are generated.This test problem can be formally as follows: a set of n (n = 5, 10, 15, 20) jobs to be processed in a 4 stage multiprocessor open shop where the number of machines in each stage is generated are generated from a uniform distribution between 1 and 3.The processing time ( jk p ) are generated from the uniform distribution in the ranges [1,20], and the release time ( j r ) from uniform distribution between 0 and 50.For each problem, 20 instances are generated, totally 80 instances are generated.IBM ILOG CPLEX Optimization Studio Version 12.5 is used to test the effectiveness of proposed MIP model, and PSO is coded in C++ gcc version 4.8.4,all tests are conducted on a LINUX (Ubuntu 14.04LTS) with Intel Xeon E5-1630 3.7 GHz (12GB RAM).
Five independent replications of a PSO run for each test instance, and the best solution is obtained as the resulting performance measure values.For MIP model, all optimal solutions can be obtained within 3600 CPU time (in seconds) for the problems with five jobs, while for other problems the solutions are not sure for optimal solved within 3600 CPU time.Table 3 provides results for MIP and PSO.The columns under "Av.C max " give the average C max value over 20 instances.The other columns under "#best" denote the number of time each method finds the optimal or the best solutions.From Table 3, it is obvious that PSO and MIP are equivalent when comparing the average C max values, however, PSO finds slightly better solutions for larger problems (n = 20), furthermore, the average CPU time consumed by MIP significantly increases incredibly as the problem size increases, it is expected that the solutions of the problems that are larger than 20 jobs could not be obtained in 3600 CPU times (in seconds).

Conclusion
The main contributions of this paper is the formulation of the LED sorting operations into a 4-stage multiprocessor open shop problems with job release time and proposes the PSO algorithm.Based on the results of an experiment, the proposed PSO has successfully obtain the optimal or best solutions for problems with up to 20 jobs in 1 second.The results demonstrate that the proposed PSO is outstanding, and additionally the PSO algorithm should be very promising for actual problems in the real world environment.To further examine the performance of the PSO, a valid and effective lower bound for the problem is needed for future research, additionally; developing different meta-heuristic algorithms is also an attractive research direction.
problem is addressed as follows.
: 1 if job j is processed at stage k before than stage l and 0 otherwise, n: number of jobs s: number of stages k m : Number of machines at each stage k, 1, 2,..., k s = j r : release time of job j, 1, 2,..., j n = jk p : processing time of job j at stage k jkl X

Table 2 .
The number of machine in each stage.

Table 3 .
The results obtained by MIP and PSO.