Applied Mathematical Sciences, Vol. 9, 2015, no. 24, 1175-1187 HIKARI Ltd, www.m-hikari.com http://dx.doi.org/10.12988/ams.2015.4121041 A Discrete Particle Swarm Optimization with Combined Priority Dispatching Rules for Hybrid Flow Shop Scheduling Problem Hanna Zini Laboratory of Mathematics, Computer Science and Applications University Mohammed V, Faculty of Sciences-Rabat P.O. Box 1014, Morocco Souad ElBernoussi Laboratory of Mathematics, Computer Science and Applications University Mohammed V, Faculty of Sciences-Rabat P.O. Box 1014, Morocco Copyright c 2015 Hanna Zini and Souad ElBernoussi. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Abstract In this paper, an algorithm based on particle swarm optimization is proposed, for hybrid flow shop scheduling problem, to minimize the makespan. First an effective new approach using two decisions based on parallel priority dispatching rules is applied. Next we develop an hybridizing DPSO, that presents new components to updating velocity and position using genetic operators, with an adaptive neighborhood procedure based on insert-interchange mutation. The performance of the proposed algorithm was tested on benchmark problems of Carlier and Néron [8]. Keywords: Hybrid flow shop problem, Particle swarm optimization, Dispatching rules, Local search, Genetic operators
1176 Hanna Zini and Souad ElBernoussi 1 Introduction The hybrid flow shop scheduling problem (HFS) can be defined by a set of n jobs to be scheduled through s stages in series. Each stage j (j = 1, 2,..., s) has m j identical parallel machines. The job i (i = 1, 2,..., n) requires a processing time p ij at stage j, and has to be processed without preemption by exactly one machine at each stage. The objective is to find a schedule of jobs, that minimizes the makespan. Many researches in the literature have been attempted to solve the hybrid flow shop, using several approaches such as exact methods, heuristic and metaheuristic. Branch and bound is the exact method widely used to solve the HFS. Carlier and Néron [8] proposed a branch and bound method based on m-machines problems. Néron et al. [5] presented an enhanced branch and bound procedure based on energetic reasoning and global operations. Fattahi et al. [16] applied a branch and bound algorithm to hybrid flow shop scheduling problem with setup time and assembly operations. Gupta [9], and Gupta et al. [10] developed efficient heuristic algorithms for the special case when the second stage contains only one machine. Oğuz et al. [3] proposed heuristic algorithms for two-stage hybrid flow shop with multiprocessor tasks. Kahraman et al. [2] presented an effective parallel greedy algorithm to solve HFS with multiprocessor tasks. Recently, several metaheuristcs have been described to solve the HFS. Bożejko et al. [22] presented a parallel tabu search (TS) to solve large size problem instances of HFS. Şerifoğlu and Ulusoy [6], Engin et al. [14] developed divers approaches based on genetic algorithms (GA) for hybrid flow shop with multiprocessor task problems. Alaykýran [11] used ant colony optimization for HFS. Chung et al. [4] introduced an approach hybridizing particle swarm optimization with bottleneck heuristic. Quan-Ke Pan and Ling Wang [17] proposed an hybrid discrete particle swarm optimization for the no-idle permutation flow shop scheduling problem. Marichelvam et al. [12] proposed an improved cuckoo algorithm to minimize the maximum completion time. Qun Niu et al. [19,20] presented two algorithms inspired by the natural immune system (QIA), with the objectives to minimize the makespan and the mean flow time. Engin and Döyen [15], Chung and Liao [21] proposed new approaches based on artificial immune system for HFS. In this paper, we will present a discrete particle swarm algorithm incorporated mutation-based local search, that operates by the use of compound neighborhood structures. Due to her importance in solution method, the objective function will be calculated by a new heuristic, that consist to combine parallel priority dispatching rules to assigning jobs to machines at each stage. The rest of this paper is structured as follows: In section 2 we describe the proposed method for solving HFS, first we present the suggested discrete
Discrete particle swarm optimization 1177 PSO algorithm, and their components including the mutation operator and the crossover operators. Later we introduce the local search based on mutation moves. Then a new heuristic is proposed for the calculation of makespan. Section 3 is preserved to experiments results and numerical comparisons. The last section is dedicated to conclusions and perspectives. 2 Solution method 2.1 Particle Swarm Optimization Algorithm Particle Swarm Optimization (PSO), is an evolutionary biologically inspired algorithm, based on the behaviors and intelligence of swarms. It was originally developed by Kennedy [7]. PSO is initialized by a population of particles randomly chosen (individuals or solutions), and the processing of research is carried out by updating the individuals of population. In the standard PSO algorithm, A particle s status on the space search is represented by its position and velocity. In the d-dimensional search space, The position and the velocity of ith particle is represented by the vectors, X i = (x i1, x i2,..., x id ) and V i = (v i1, v i2,..., v id ) respectively. Denote the best position of the ith particle (P best) as P b i = (pb i1, pb i2,..., pb id ), and the best position of the swarm (Gbest) as P b g = (pb g1, pb g2,..., pb gd ). The velocity and the position of each particle are calculated as follow: V i (k + 1) = ωv i (k) + c 1 r 1 (P b i X i (k)) + c 2 r 2 (P b g X i (k)) (1) X i (k + 1) = X i (k) + V i (k + 1) (2) Where c 1 and c 2 are nonnegative constants called acceleration coefficients, ω is the inertia coefficient which is a constant in the interval [0, 1], r 1 and r 2 are two random numbers uniformly generated in the interval [0, 1]. 2.2 Particle updating Since a solution of the problem is represented by a permutation of n jobs (1, 2,...n), the position of the particle can be updated according the following equation [18]: X t i = c 2 F 3 (c 1 F 2 (ω F 1 (X t 1 i ), P t 1 i ), G t 1 ) (3) Note that X t i is the position of the particle, P t i is its personal best position, and G t is the best position of the whole particles in the swarm. The updated equation consists of three components: The first component A t i =ω F 1 (X t 1 i ) represents the velocity of the particle, and F 1 is the mutation operator with the probability of ω.
1178 Hanna Zini and Souad ElBernoussi The second component B t i= c 1 F 2 (A t i, P t 1 i ) represents the cognition part of the particle, and F 2 is the crossover operator with the probability of c 1. The third component X t i=c 2 F 3 (B t i, G t 1 ) corresponds to the social part of the particle, F 3 is the crossover operator with the probability of c 2. In addition, we add a new term to equation (3), that represents the best neighbor found by the neighborhood structures [1]. The particle will be updating as follows: X t i = c 3 F 4 (c 2 F 3 (c 1 F 2 (ω F 1 (X t 1 i ), P t 1 i ), G t 1 )) (4) The operator F 4 corresponds to the local search applied to the particle with the probability of c 3. 2.3 Mutation Operator In the proposed algorithm the inverse mutation is used, it works as follows: Two positions are randomly selected in the sequence. The portion between these two positions is inverted. 2.4 Crossover operators Two crossover operators are used: Uniform crossover. A random binary mask with the same size of the parents is generated. The (0) of the mask define the positions preserved to the first parent, and the (1) of the mask corresponds to the positions preserved to the second parent. The illustration of the uniform crossover is given in Figure 1. Right corner crossover. Firstly proposed in [18], this operator starts by choosing randomly two positions from the first parent. The block determined by the two point is moved to the right corner of the offspring. Complete the remaining jobs from the second parent. 2.5 mutation-based Local search In our paper, we propose a mutation-based local search referring to the well known NEH method [13]. The proposed local search starts from an initial solution, and attempts to improve the present solution by generating compound neighborhood structures. More formally, two neighborhoods are defined, the insert neighborhood and the interchange neighborhood. The insert neighborhood is created by insert moves, that consist to remove the job currently in
Discrete particle swarm optimization 1179 Figure 1: Illustration of uniform Crossover position i and insert it into another position j. The interchange neighborhood uses pairwise interchange moves, that interchange two random positions in the job sequence to obtain a new mutated sequence. The procedure operates by extending the both neighborhoods Consecutively, by exploring the insert neighborhood first, then the interchange neighborhood. This approach combines two local search structures, with the aim to explore effectively the solution space and improve the convergence. The following is the pseudo code of the mutation-based local search: Mutation-based Local Search Pseudo Code Input: π 0 the initial solution. Output: π the best solution found so far. 1. π π 0 2. Repeat Until a given stopping criterion is met. 3. π = insert LS(π 0 ), the local search based on insert neighborhood. 4. π = interchange LS(π ), the local search based on interchange neighborhood. 5. If π is better than π, then π π. End if 6. π 0 π 2.6 Makespan heuristic We consider an effective heuristic to calculate the makespan (Cmax), characterized by the use of two decision methods based on priority dispatching rules, including FIFO (First In First Out), LPT (Longest Processing Time) and SPT
1180 Hanna Zini and Souad ElBernoussi (Shortest Processing Time). The proposed heuristic combines the classical list scheduling, wherein the jobs are assigned at the first available machine according FIFO rule, and a modified list scheduling that uses three parallel priority dispatching rules: FIFO, FIFO+LPT and FIFO+SPT, and then adopts at each stage the rule that generates the sequence giving a smallest completion time. The heuristic makes a choice between the two scheduling lists described above and selects the one that gives a minimum value of makespan. 2.7 The proposed algorithm Our proposed approach incorporates discrete PSO, mutation-based local search and the makespan heuristic. The DPSO assures the diversification and a large exploration of the solution space. However the local search is employed to more intensify the search and improve the convergence. In order to increase the quality of solution evaluation, the makespan heuristic takes advantage of two decision methods at a time. We summarize the steps of the proposed algorithm as follow: Step1: Generate an initial population randomly. Step2: Evaluate the particles using the heuristic in section 2.6. Step3: Find P best and Gbest. Step4: Update the particles using equation (4). Step5: Evaluate the particles in the swarm. Step6: Find P best and Gbest. Step7: Stop if the stopping criterion is met, otherwise return to step 4. 3 Experiment results 3.1 Benchmark scheme The performance of the proposed algorithm was tested on benchmark problems of Carlier and Néron [8], that are largely used in the literature [11,15,19,21]. The benchmark problems consist of 77 instances, divided into 53 easy problems and 24 hard problems [5]. The machine configuration plays an essential role on complexity of problems. There are four machine configurations a, b, c and d which correspond to the bottleneck stage. The following is the meaning of the letters of machine configuration [11]:
Discrete particle swarm optimization 1181 a: There is one machine at the middle stage (bottleneck), and three machines at the other stages. b: There is one machine at the first stage (bottleneck), and three machines at the other stages. c: There are two machines at the middle stage (bottleneck), and three machines at the other stages. d: There are three machines at each stage (no bottleneck stage). For example, the notation j10c5b3 means 10 jobs, 5 stages and the letter b defines the machine configuration, where there are three machines at each stage except the first stage which is bottleneck with only one machine. The letters j and c are the abbreviations of job and stage respectively. 3.2 Numerical results In our computational experiments, we consider the 24 hard problems [5]. The comparison was performed using four algorithms: the Immunoglobulin-based Artificial Immune System algorithm (IAIS) [21], the ant colony optimization (ACO) [11], the Artificial Immune System algorithm (AIS) [15], and the Quantum-inspired Immune Algorithm (QIA) [19]. The computing environment of all the algorithms is dissimilar. For this reason, the comparison is made on the basis of the solution quality, evaluated by the percentage deviation between the solution and the lower bound (LB) which is defined as below: best Cmax LB %deviation = (5) LB The algorithm was limited with 1600s [8], or until the lower bound was attained. If the lower bound was not found within the limited time, the search was stopped and the best solution was accepted as the final solution. The proposed algorithm was implemented in Matlab 7.6 and was run ten times to obtain the best Cmax value. Note that for the four compared algorithms, IAIS [21], ACO [11] and AIS [15] are also limited their run time on 1600s. However QIA [19] was run a fixed number of iterations. For all considered algorithms, the numerical results were obtained from their original papers. With reference to the computing environment, the IAIS algorithm [21] was programmed in C++, the ACO [11] was implemented using Microsoft Visual Basic, the algorithm AIS [15] was coded in Excel Macros, and QIA [19] was coded in Matlab. There are four essential parameters in our hybrid method, the Population size P s, the probability of mutation ω, the crossover probabilities c 1 and c 2 and the local search probability c 3. We implemented our algorithm with P s = 20 and c 1 = c 2 = 0.8 described in [17]. For ω and c 3, a parametric study was established with the set of values {0.1, 0.2,..., 0.9}. Three problems j10c5c1,
1182 Hanna Zini and Souad ElBernoussi j10c5d1 and j15c5c5 are considered from benchmark problems. For each parameter value, 20 tests were carried out. Figures 2 and 3 illustrate for each parameter, the number of times the lower bound (LB) was attained. We were used the parameters with high number of times LB was attained, thus ω = 0.4 and c 3 = 0.4. Figure 2: Parameter ω Figure 3: Parameter c 3 The numerical comparisons of DPSO algorithm, IAIS, ACO, AIS and QIA are given in table 2, where columns represent the makespan (Cmax) in seconds, the lower bound (LB) and the percentage of deviation between the lower
Discrete particle swarm optimization 1183 bound (LB) and (Cmax) described in equation (5). DPSO can solve 18 problems of 24 hard problems, that represent (75%), while IAIS and AIS solve 16 problems (66.7%). ACO can solve 12 problems of the 18 problems. In table 1, we provided the performance of DPSO algorithm among the other compared algorithms, where the first column represents the percentage of solved problems (% solved problems) and the second column gives the average percentage deviation of the 24 hard problems (% deviation). The third column gives the number of problems considered among the 24 hard problems (number of pbs). Problem % solved problems % deviation number of pbs DPSO 75 2.85 24 IAIS 66.7 3.02 24 QIA 0.0 5.04 12 ACO 66.7 4.10 18 AIS 66.7 3.13 24 Table 1: The performance of DPSO algorithm 4 Conclusions and perspectives This paper has been examined the hybrid flow shop problem, with the objective to minimize the makespan. We have proposed a DPSO algorithm to solve the problem. The proposed DPSO has been used mutation operator and crossover operators to update the positions of the particles in the swarm. The developed DPSO incorporates the mutation-based local search, which combines two local search strategies based on the insert neighborhood and the interchange neighborhood. In order to improve the performance of the evaluation, the makespan heuristic introduced in our DPSO algorithm combines two decision methods based on priority dispatching rules. The performance of the proposed DPSO has been tested on Carlier and Néron [8] benchmark problems, and compared to four different algorithms from the literature. The computational results performs the efficiency of our algorithm. Future works may consider other scheduling problems, such as hybrid flow shop with various objectives. Acknowledgements. The authors would like to express their gratitude to Jacques Carlier and Emmanuel Néron for their benchmark problems.
1184 Hanna Zini and Souad ElBernoussi Problem Cmax (Best makespan value) LB of Cmax % deviation DPSO IAIS QIA ACO AIS DPSO IAIS QIA ACO AIS j10c5c1 68 68 69 68 68 68 0 0 1.47 0 0 j10c5c2 74 74 76 76 74 74 0 0 2.70 2.70 0 j10c5c3 71 72 74 72 72 71 0 1.41 4.23 1.41 1.41 j10c5c4 66 66 75 66 66 66 0 0 13.64 0 0 j10c5c5 78 78 79 78 78 78 0 0 1.28 0 0 j10c5c6 69 69 72 69 69 69 0 0 4.35 0 0 j10c5d1 66 66 69-66 66 0 0 4.55-0 j10c5d2 73 74 76-73 73 0 1.37 4.11-0 j10c5d3 64 64 68-64 64 0 0 6.25-0 j10c5d4 70 70 75-70 70 0 0 7.14-0 j10c5d5 66 66 71-66 66 0 0 7.58-0 j10c5d6 62 62 64-62 62 0 0 3.23-0 j15c5c1 85 85-85 85 85 0 0-0 0 j15c5c2 90 90-90 91 90 0 0-0 1.11 j15c5c3 87 87-87 87 87 0 0-0 0 j15c5c4 89 89-89 89 89 0 0-0 0 j15c5c5 74 74-73 74 73 1.37 1.37-0 1.37 j15c5c6 91 91-91 91 91 0 0-0 0 j15c5d1 167 167-167 167 167 0 0-0 0 j15c5d2 84 84-86 84 82 2.44 2.44-4.88 2.44 j15c5d3 82 82-83 83 77 6.49 7.73-7.79 7.79 j15c5d4 84 84-84 84 61 37.70 37.70-37.70 37.70 j15c5d5 79 79-80 80 67 17.91 17.99-19.40 19.40 j15c5d6 81 81-79 82 79 2.53 2.53-0 3.80 Table 2: Computational results of the algorithms on hard benchmark problems
Discrete particle swarm optimization 1185 References [1] B. Bochenek, P. Foryś, Structural optimization for post-buckling behavior using particle swarms, Struct Multidisc Optim, 32 (2006), 521-531. http://dx.doi.org/10.1007/s00158-006-0044-8 [2] C. Kahraman, O. Engin, İ. Kaya, R.E. Öztürk, Multiprocessor task scheduling in multistage hybrid flow-shops: A parallel greedy algorithm approach, Applied Soft Computing, 10 (2010), 1293-1300. http://dx.doi.org/10.1016/j.asoc.2010.03.008 [3] C. Oğuz, M. F. Ercan, T. C. Edwin Cheng, Y. F. Fung, Heuristic algorithms for multiprocessor task scheduling in a two-stage hybrid flowshop, European Journal of Operational Research, 149 (2003), 390-403. http://dx.doi.org/10.1016/s0377-2217(02)00766-x [4] C. J. Liao, E. Tjandradjaja, T. P. Chung, An approach using particle swarm optimization and bottleneck heuristic to solve hybrid flow shop scheduling problem, Applied Soft Computing, 12 (2012), 1755-1764. http://dx.doi.org/10.1016/j.asoc.2012.01.011 [5] E. Néron, P. Baptiste, J. N. D. Gupta, Solving hybrid flow shop problem using energetic reasoning and global operations, Omega, 29 (2001), 501-511. http://dx.doi.org/10.1016/s0305-0483(01)00040-8 [6] F.S. Şerifoğlu, G. Ulusoy, Multiprocessor task scheduling in multistage hybrid flow-shops: a genetic algorithm approach, Journal of the Operational Research Society, 55 (2004), 504-512. http://dx.doi.org/10.1057/palgrave.jors.2601716 [7] J. Kennedy, R. Eberhart, Particle Swarm Optimization, Proceedings of IEEE International Conference on Neural Network, Piscataway, NY, (1995), 1942-1948. http://dx.doi.org/10.1109/icnn.1995.488968 [8] J. Carlier, E. Néron, An exact method for solving the multiprocessor flowshop, RAIRO-Operations Research, 34 (2000), 1-25. http://dx.doi.org/10.1051/ro:2000103 [9] J. N. D. Gupta, Two-Stage, Hybrid Flowshop Scheduling Problem, The Journal of the Operational Research Society,39 (1988), 359-364. http://dx.doi.org/10.1057/palgrave.jors.0390404 [10] J. N. D. Gupta, A. M. A. Hariri, C. N. Potts, Scheduling a two-stage hybrid flow shop with parallel machines at the first stage, Annals of Operations Research, 69 (1997), 171-191. http://dx.doi.org/10.1023/a:1018976827443
1186 Hanna Zini and Souad ElBernoussi [11] K. Alaykýran, O. Engin, A. Döyen, Using ant colony optimization to solve hybrid flow shop scheduling problems, em Int J Adv Manuf Technol, 35 (2007), 541-550. http://dx.doi.org/10.1007/s00170-007-1048-2 [12] M. K. Marichelvam, T. Prabaharan, X. S. Yang, Improved cuckoo search algorithm for hybrid flow shop scheduling problems to minimize makespan, Applied Soft Computing, 19 (2014), 93-101. http://dx.doi.org/10.1016/j.asoc.2014.02.005 [13] M. Nawaz, E. E Enscore Jr, I. HAM, A Heuristic Algorithm for the m-machine, n-job Flow-shop Sequencing Problem, OMEGA International Journal of Management Science, 11 (1983), 91-95. http://dx.doi.org/10.1016/0305-0483(83)90088-9 [14] O. Engin, G. Ceran, M.K. Yilmaz, An efficient genetic algorithm for hybrid flow shop scheduling with multiprocessor task problems, Applied Soft Computing, 11 (2011), 3056-3065. http://dx.doi.org/10.1016/j.asoc.2010.12.006 [15] O. Engin, A. Döyen, A new approach to solve hybrid flow shop scheduling problems by artificial immune system, Future Generation Computer Systems, 20 (2004), 1083-1095. http://dx.doi.org/10.1016/j.future.2004.03.014 [16] P. Fattahi, S.M.H Hosseini, F. Jolai, R. Tavakkoli-Moghaddam, A branch and bound algorithm for hybrid flow shop scheduling problem with setup time and assembly operations, Applied Mathematical Modelling, 38 (2014), 119-134. http://dx.doi.org/10.1016/j.apm.2013.06.005 [17] Q-K. Pan, L. Wang, No-idle permutation flow shop scheduling based on a hybrid discrete particle swarm optimization algorithm, Int J Adv Manuf Technol, 39 (2008), 796-807. http://dx.doi.org/10.1007/s00170-007-1252-0 [18] Q-K. Pan, M. F. Tasgetirenc, Y.C. Liang, A discrete particle swarm optimization algorithm for the no-wait flowshop scheduling problem, Computers and Operations Research, 35 (2008), 2807-2839. http://dx.doi.org/10.1016/j.cor.2006.12.030 [19] Q. Niu, T. Zhou, S. Ma, A Quantum-Inspired Immune Algorithm for Hybrid Flow Shop with Makespan Criterion, Journal of Universal Computer Science, 15 (2009), 765-785.
Discrete particle swarm optimization 1187 [20] Q. Niu, T. Zhou, M. Fei, B. Wang, An efficient quantum immune algorithm to minimize mean flow time for hybrid flow shop problems, Mathematics and Computers in Simulation, 84 (2012), 1-25. http://dx.doi.org/10.1016/j.matcom.2011.02.014 [21] T. P. Chung, C. J. Liao, An immunoglobulin-based artificial immune system for solving the hybrid flow shop problem, Applied Soft Computing, 13 (2013), 3729-3736. http://dx.doi.org/10.1016/j.asoc.2013.03.006 [22] W. Bożejko, J. Pempera, C. Smutnicki, Parallel tabu search algorithm for the hybrid flow shop problem, Computers and Industrial Engineering, 65 (2013), 466-474. http://dx.doi.org/10.1016/j.cie.2013.04.007 Received: January 3, 2015; Published: February 11, 2015