A particle swarm optimization approach for permutation ﬂow shop scheduling problem

– Flow shop scheduling problem (FSSP) is a combinatorial optimization problem. This work, with the objective of optimizing the makespan of an FSSP uses a particle swarm optimization (PSO) approach. The problems are tested on Taillard’s benchmark problems. The results of Nawaz, Encore and Ham (NEH) heuristic are initialized to the PSO to direct the search into a quality space. Variable neighbourhood search (VNS) is employed to overcome the early convergence of the PSO and helps in global search. The results are compared with standalone PSO, traditional heuristics and the Taillard’s upper bounds. Five problem set are taken from Taillard’s benchmark problems and are solved for various problem sizes. Thus a total of 35 problems are solved. The experimental results show that the solution quality of FSSP can be improved if the search is directed in a quality space based on the proposed PSO approach (PSO-NEH-VNS).


Introduction
Scheduling is the allocation of resources (e.g., machines) to tasks (e.g., jobs) in order to ensure the completion these tasks in a reasonable amount of time. In a flow shop, the technological constraints demand that the jobs pass between the machines in the same order; i.e., If J 1 must be processed on machine M k before machine M i then the same is true for all jobs. A permutation schedule is one on which each machine processes the jobs in the same order; i.e., if on machine M 1 job J i is processed before J k , then the same is true for all machines [1]. The objective is to find a sequence of jobs that minimizes the makespan. i.e., time required to complete all the jobs. This problem is found to be NP-hard [2].
The complexity of the flow shop scheduling problem renders exact solution methods impractical for instances of more than a few jobs and/or machines. This is the main reason for the various heuristic methods proposed in the literature.
The heuristics can be divided into either constructive heuristics or improvement heuristics, the former are heuristics that build a feasible schedule from scratch and the latter are heuristics that try to improve a previously generated schedule by normally applying some form of specific problem knowledge.
The objective of this work is to find a permutation of jobs that minimizes the makespan. The present study explores the further improvement in the solution quality, if the population in the improvement phase is provided with better initial solutions. The work describes the percentage improvement that the proposed method is able to obtain when compared with some of existing heuristics due to the improvisation in the search space of PSO. This approach can be considered as the significant contribution of this study. This work aims at directing the search space of PSO into certain quality. Then, VNS is employed to make the solution jump out of the local optima. This approach is termed as PSO-NEH-VNS heuristic. The solution thus obtained is compared with the results obtained using the PSO and the upper bounds of Taillard's [3] benchmark problems. The approach proves that results approach the optimum faster when the search space is nearer to the optimum.
The rest of the paper is organized as follows. Section 2 discusses the literature survey. The methodology is presented in Section 3. The results and discussions are made in Section 4. Conclusions and future scope is given in the Section 5.
2 Literature survey

Heuristics
Many constructive heuristic approaches have been proposed in the literature. Johnson's algorithm is the earliest known heuristic for the permutation flow shop problems.
The two machine flow shop problem with the objective of minimizing makespan is also known as Johnson's [4] problems. An optimal sequence is found by following a heuristics of finding the minimum machining time and allotting the job to the machine in a preferential order is adopted.
Contrary to constructive heuristics, improvement heuristics start from an already built schedule and try to improve it by some given procedure. Many improvement heuristic approaches also have been proposed in the research [19][20][21].

Particle swarm optimization
Duda [22] evaluates a particle swarm optimization with variable neighbourhood search against a standalone VNS algorithm. The results of the conducted experiments indicate that hybridization of a meta-heuristic with a local search algorithms may not always bring additional performance benefit. Ali and Fawaz [23] address the flow shop scheduling problem with respect a due date-based performance measure, i.e., maximum lateness. Lian et al. [24] propose a novel particle swarm optimization algorithm to minimize the makespan of a flow shop.
Kuo et al. [25] propose a flow shop scheduling algorithm based on hybrid particle swarm optimization model. Liu et al. [26] propose a hybrid particle swarm optimization for flow shop scheduling with stochastic processing time. Chen [27] proposes an improved particle swarm optimization technique for flow shop scheduling. Sha and Lin [28] propose a PSO model for multi-objective flow shop scheduling. Zhang et al. [29] provide a hybrid alternate two phases particle swarm algorithm for flow shop scheduling problems. Deb [30] discusses about the evolutionary approaches used in solving the multi-objective optimization problems.

Methodology
The objective of the work is to minimize the makespan of the flow shop scheduling problems. This is attempted by developing a PSO approach. Five problem sets are taken from ''Taillard'' [2] benchmark problem and are solved for various sizes. A total of 35 problems are solved.
The results of PSO-NEH-VNS is compared with the upper bound (UB) of Taillard's benchmark and also compared with the results of CDS, NEH, PSO, PSO-NEH, and PSO-VNS.
The Taillards benchmark problem is first solved using NEH heuristics and a sequence is obtained. The PSO requires a population of sequences to be initialized. In this problem, the PSO is initialized with fifteen randomly generated populations. The sequence that is obtained by NEH heuristic is initialized as one of the initial population. This PSO is referred to as PSO initialized with NEH (PSO-NEH). This initialization is made with the hope that the search space is nearer to optimal solution. The results obtained by the PSO-NEH are further improved with the VNS. The VNS prevents the early convergence of PSO and jump out of local optima. This approach is termed as PSO-NEH-VNS. Hansen et al. [31] state that Variable neighbourhood search (VNS) is a meta-heuristic, or a framework for building heuristics, based upon systematic changes of neighbourhoods both in descent phase, to find a local minimum, and in perturbation phase to emerge from the corresponding valley.

PSO algorithm for FSSP
Particle swarm optimization (PSO), inspired by the motion of a flock of birds searching for food, was developed by Kennedy and Eberhart [32] for optimization of continuous nonlinear functions. To find the optimal solution each bird called a particle adjusts its searching direction according to two factors, its own best previous experience (pbest) and the best experience of all other members (gbest). The system is initialized with a population of random solutions and searches for optima by updating generations. In PSO potential solutions called particles, fly through the problem space by following the current optimum particles. PSO simulates the behaviors of bird flocking. In PSO each single solution is a ''bird'' in the search space. We call it ''particles''. All the particles have fitness value and velocities which direct the flying of the particles. The particles fly through the problem space by following the current optimum particles. Each particle is updated by following two ''best'' values. The first value is the best solution it has achieved so far known as ''pbest''. Second value is the best value obtained so far by any particle is the population called ''gbest''. After finding the two best values the particle updates its velocity and position with the following equations where, V[] = particle velocity, present [] = current particle solution, pbest [] = best solution among each particle, gbest [] = best among defined as before, w = inertia weights 0.8, c1 and c2 are learning factors. Usually c1 = c2 = 2. This equation specifies that the velocity of a particle is determined by the previous velocity of the particle. Each particle moves to a new position according to the following equation.
The out line of a PSO algorithm is as follows: Step 1: (Initialization): randomly generate initial particles, Step 2: (Fitness): evaluate the fitness of each particle in the population, Step 3: (Update): calculate the velocity of each particle by the equation, Step 4: (Construction): for each particle, moves to the next position according to the equation (2), Step 5: (Termination): stop the algorithm if a specified stopping criterion is satisfied; return to Step 2 otherwise.

Results and discussions
The objective of this work is to build a PSO model to solve the flow shop scheduling problems for minimizing the makespan; Five problem set are taken from Taillard benchmark problem and are solved. The problems are 20 jobs, 5, 10 and 20 machines; 50 jobs, 5, 10 and and 20 machines and 100 jobs, 5 machines. Table 1 shows the results of the five instances of 20 · 5, 20 · 10 and 20 · 20 problems that are solved using the various methods.
The proposed PSO-NEH-VNS clearly gives better results than other methods such as CDS, NEH, PSO, PSO-NEH, and PSO-VNS. This is possible because the search space of PSO-NEH-VNS is in the area of superior solution. The search space of PSO is initialized with the results of NEH heuristic; this ensures that the solution space is of certain quality. The VNS helps in the solution of PSO jumping out of the local optima. Thus, the interchange of VNS has helped the PSO to come out of the pre convergence.
In smaller size problems the average difference in makespan between Upper bound and PSO-NEH-VNS is less and this difference increases with increasing number of machines. Average difference in makespan between PSO-NEH-VNS and UB for 20 Job 5 machines is 12.6, 20 Job 10 machines is 21 and 20 Job 20 machines is 32. Table 2 shows the makespan of 50 jobs and 5, 10 and 20 machines problem size. The proposed PSO-NEH-VNS clearly give better results than other methods. The makespan obtained by PSO-NEH-VNS is nearly equal (within 5%) to the upper bound of the Taillard's benchmark problems and in some cases it is equal to the upper bound. (For 50 · 5, SL No. 1). Similar    Table 3. For the 100 jobs problem as well the proposed PSO-NEH-VNS method gives better results when compared with other methods. In certain instances (for 100 · 5, SL No. 1), the PSO-NEH-VNS is able to give the makespan values equivalent to the upper bound of the Taillard's benchmark problems.
Consistently, the PSO-NEH-VNS is giving better results than the other methods taken for comparison. Hence, it can be stated that with a better search space provided for the PSO, the PSO with the help of VNS is able to avoid early convergence. It can also be inferred that the search is able to converge faster because of the initial quality of the search space.
In order to compare computational time required, various approaches are coded in matlab and run on a 3 G B RAM, 2.19 GHz, Dual Core system with Windows XP operating system. The CPU time for various size problems are shown in Table 4.
It can be observed that computational time for PSO NEH VNS approach is slightly lesser than PSO VNS for larger problem sizes. Table 5 shows the percentage improvement of results of PSO VNS NEH for a 20 job problem size, when compared with other methods used in this work.
It can be observed that PSO do better than PSO-VNS. PSO when initialized with the results of NEH does better than both PSO and PSO-VNS algorithms. The VNS takes the PSO to early convergence. But when the same solution is initialized with quality solution space, obtained from the constructive heuristic (NEH), it is able to perform better.   in one instance (20 · 10) it is able to provide better result. This indicates the PSO-NEH-VNS model is worth exploring. Though the results show the proposed heuristic performs better than certain PSO models, the percentage deviation from the optimum still persists. VNS has an inherent characteristic that is not taking the results to the optimum. But, the objective of the work is to prove that if the initial solution space is provided with quality solutions, the PSO can be used for obtaining faster results.

Conclusions
A particle swarm optimization algorithm named PSO-NEH-VNS is used to solve the FSSP with the objective of minimizing makespan. The research shows that the PSO initialized with a better solution space obtained from the constructive heuristic (NEH), has the ability to provide solutions that are better than some of the existing heuristics and takes the solution to early convergence of results. The results show that the percentage deviation of the makespan increases with the increasing machine, proving that the complexity of the flow shop problems depends on the increasing machine size. The results also show that the percentage deviation of the makespan with respect to the increasing job is not significant.