A combinatorial particle swarm optimisation
- 格式:pdf
- 大小:284.67 KB
- 文档页数:13
A combinatorial particle swarm optimisation for solving permutation flowshop problemsBassem Jarboui a ,Saber Ibrahim a ,Patrick Siarryb,*,Abdelwaheb RebaicaFSEGS,route de l’ae´roport km 4,Sfax 3018Tunisie bLiSSi,universite´de Paris 12,61avenue du Ge ´ne ´ral de Gaulle,94010Cre ´teil,France cISAAS,route de l’ae´roport km 4,B.P.N °101,Sfax 3018Tunisie Received 12April 2007;received in revised form 6September 2007;accepted 7September 2007Available online 19September 2007AbstractThe m -machine permutation flowshop problem PFSP with the objectives of minimizing the makespan and the total flowtime is a common scheduling problem,which is known to be NP-complete in the strong sense,when m P 3.This work proposes a new algorithm for solving the permutation FSP,namely combinatorial Particle Swarm Optimization .Further-more,we incorporate in this heuristic an improvement procedure based on the simulated annealing approach.The pro-posed algorithm was applied to well-known benchmark problems and compared with several competing metaheuristics.Ó2007Elsevier Ltd.All rights reserved.Keywords:Particle swarm optimization;Combinatorial particle swarm optimization;Permutation flowshop problem;Makespan;Flowtime1.IntroductionThe permutation flowshop scheduling problem (PFSP)consists in scheduling a set of n jobs on m machines in the same technological order,such that each job is processed on machine 1in the first place,machine 2in the second place,...,and machine m in the last place;the processing time of job i on machine j is denoted p ij .The objective is to find a sequence (schedule)in which these n jobs should be processed on each of the m machines such that a given criterion be optimized.The most common criteria are the makespan minimization and the total flowtime minimization.The PFSP has been extensively investigated by the research community.The PFSP has been proved to be NP-complete in the strong sense when m P 3(Garey,Johnson,&Sethi,1976).Few exact algorithms have been developed so far for solving the PSFP.These methods include the branch-and-bound algorithms (Lomnicki,1965;Brown &Lomnicki,1966;McMahon &Burton,1967)for makespan minimization criterion and (Ignall &Schrage,1965;Bansal,1977;Van de Velde,1990;Chung,Flynn,&Kirca,2002)for total flowtime minimization.A major constraint of the above techniques is that0360-8352/$-see front matter Ó2007Elsevier Ltd.All rights reserved.doi:10.1016/j.cie.2007.09.006*Corresponding author.E-mail addresses:Bassem-jarboui@yahoo.fr (B.Jarboui),saber.ibrahim@ (S.Ibrahim),siarry@univ-paris12.fr (P.Siarry),abdelwaheb.rebai@fsegs.rnu.tn (A.Rebai).Available online at Computers &Industrial Engineering 54(2008)526–538B.Jarboui et al./Computers&Industrial Engineering54(2008)526–538527 there is a limit for the size of the problem that can be solved in a reasonable time.Therefore,the only feasible way to solve large PFSP instances is to apply heuristic algorithms,which mayfind high quality solutions in short computation time.Several such algorithms have been proposed to minimize the makespan and total flowtime criteria,they can be classified into the following categories:(i)construction methods(Johnson, 1954;Palmer,1965;Campbell,Dudek,&Smith,1970;Gupta,1972;Nawaz,Enscore,&Ham,1983;Liu& Reeves,2001);(ii)improvement heuristics(Dannenbring,1977;Ho&Chang,1991;Suliman,2000;Widmer &Hertz,1989;Rajendran,1993;Ho,1995;Wang,Chu,&Proth,1997;Woo&Yim,1998);(iii)metaheuris-tics,which include algorithms like simulated annealing(Osman&Potts,1989;Ogbu&Smith,1990;Ishibuchi, Misaki,&Tanaka,1995);tabu search(Taillard,1990;Nowicki&Smutnicki,1996;Ben-Daya&Al-Fawzan, 1998);genetic algorithms(Reeves,1995;Murata,Ishibuchi,&Tanaka,1996;Ruiz,Maroto,&Alcaraz,2006); ant colony algorithms(Rajendran&Ziegler,2004,2005);and particle swarm optimization(Tasgetiren,Liang, Sevkli,&Gencyilmaz,2007;Liao,Tseng,&Luarn,2007).Particle swarm optimization(PSO),first proposed by Kennedy and Eberhart(1995),is one of the most recent and hopeful evolutionary metaheuristics,which is inspired by adaptation of a natural system based on the metaphor of social communication and interaction.Originally PSO was focused on solving nonlinear programming and nonlinear constrained optimization problems comprising of continuous variables.The chal-lenge has been to employ the algorithm to combinatorial problems,thus new PSO variants have been devel-oped for solving combinatorial optimization problems,such as single machine total weighted tardiness problems(Tasgetiren et al.,2004);PFSP(Tasgetiren et al.,2007;Liao et al.,2007)and task assignment prob-lem(Salman,Ahmed,&Almadani,2002).In this paper we propose a novel PSO approach for solving combinatorial optimization problems.The problem of permutationflowshop scheduling with the objective of minimizing the makespan and totalflow-time criteria has been investigated.A set of benchmarkflowshop scheduling problems taken from Taillard (1993)were used for experimental simulation.The remainder of this paper is organized as follows.Section 2introduces the PFSP.Then in Section3,we present the details of the PSO algorithm,Section4introduces our CPSO algorithm.In Section5,we adapt CPSO algorithm to solve the PFSP.Next in Section6,we pro-pose our hybrid CPSO algorithm(H-CPSO).Section7provides the computational results evaluation of the solutions obtained by the two algorithms while comparing with the continuous version of PSO proposed by Tasgetiren et al.(2007),the composite heuristic of Liu and Reeves(2001)and the two ant colony algo-rithms of Rajendran and Ziegler(2004)andfinally,concluding remarks and future issues are mentioned in Section8.2.Formulation of the permutationflowshop problemIn a typical staticflowshop,a set of n jobs are simultaneously available for being processed on a set of m ma-chines.Without loss of generality,we assume that all jobs are available for processing at time zero.Each job j, j2J={1,2,...,n},passes through the machines1,2,..,m in that order and requires an uninterrupted processing time p jk on machine k,k=1,2,.,m.Each machine may process the n jobs in any order.If all machines process the n jobs in exactly the same order,the schedule is called a permutation schedule.The permutationflowshop scheduling problem(PFSP)treated in this paper is often designated by the sym-bols n/m/P/Obj,where n jobs have to be processed on m machines in the same order.P indicates that only permutation schedules are considered,where the order in which the jobs are processed is identical for all machines.Hence a schedule is uniquely represented by a permutation of jobs.Obj describes the performance measure by which the schedule is to be evaluated,i.e.the objective function.For example,n/m/P/C max is the problem of minimizing the makespan C max,and n/m/P/F is the problem of minimizing totalflowtime F.The scheduling objective is to minimize the makespan and theflowtime criteria.It is worth noticing that,in this case,a job sequence uniquely determines a permutation schedule since unforced machine idleness is unde-sirable.It is assumed that a job may be processed by at most one machine and a machine may process at most one job at any point of time.Let[i]denote the index of the i th job in a schedule.Then,job[i]cannot start on machine k before it is completed on machine kÀ1,or before job[i-1]is completed on machine k.Let C jk denote the completion time of job j on machine k.Then,C[i]k is the completion time of the job sched-uled in the i th position on machine k.C[i],k is computed as:C ½i ;k ¼p ½i ;k þmax C ½i ;k À1;C ½i À1 ;k ÈÉ;where i ¼2;3:::n ;and k ¼2;3:::m :So,the makespan is equal to C max =C [n ],mThe flowtime is then computed by the following formula:F ¼Xn i ¼1C ½i ;m :3.The particle swarm optimization algorithmPSO is one of the nature-inspired metaheuristics.The first PSO model was introduced by Kennedy andEberhart (1995).The main idea in PSO is to simulate social systems such as fish schooling and birds flocking.Similarly to evolutionary computation techniques,PSO uses a set of particles,representing potential solu-tions to the problem under consideration.The swarm consists of m particles;each particle has a position X i ={x i 1,x i 2,...,x in },a velocity V i ={v i 1,v i 2,...,v in },where i =1,2,...m and moves through a n -dimensional search space.According to the global variant of the PSO algorithm,each particle moves towards its best pre-vious position and towards the best particle g in the swarm.Let us denote the best previously visited position of the i -th particle that gives the best fitness value as P i ={p i 1,p i 2,...,p in },and the best previously visited posi-tion of the swarm that gives the best fitness as G ={G 1,G 2,...,G n }.The change of position of each particle from one iteration to another can be computed according the dis-tance between the current position and its previous best position and the distance between the current position and the best position of the swarm.Then the updating of velocity and particle position can be obtained by using the two following equations:v t ij ¼v t À1ij þc 1r 1ðp t À1ij Àx t À1ij Þþc 2r 2ðG t À1j Àx t À1ij Þð1Þx t ij ¼x t À1ij þv t ijð2Þwhere t =1,2,....,T max denote the iteration number,c 1is the cognition learning factor,c 2is the social learning factor and r 1and r 2are random numbers uniformly distributed in [0,1].Thus,the particle flies through potential solutions towards P t i and G t in a navigated way while still exploring new areas by the stochastic mechanism to escape from local optima.Since there was no actual mechanism for controlling the velocity of a particle,it was necessary to impose a maximum value V max on it.If the velocity exceeded this threshold,it was set equal to V max ,which controls the maximum travel distance at each iteration to avoid this particle flying past good solutions.The PSO algorithm is terminated with a maximal number of generations or the best particle position of the entire swarm cannot be improved further after a sufficiently large number of generations.The aforementioned problem was addressed by incorporating a weight parameter for the previous veloc-ity of the particle.Thus,in the latest versions of the PSO,Eqs.(2)and (3)are changed into the following ones:v t ij ¼v ðx v t À1ij þc 1r 1ðp t À1ij Àx t À1ij Þþc 2r 2ðG t À1j Àx t À1ij ÞÞð3Þx t ij ¼x t À1ij þv t ijð4Þwhere x is called inertia weight and is employed to control the impact of the previous history of velocities on the current one.Accordingly,the parameter x regulates the trade-offbetween the global and local exploration abilities of the swarm.A large inertia weight facilitates global exploration,while a small one tends to facilitate local exploration.A suitable value for the inertia weight x usually provides balance between global and local exploration abilities and consequently results in a reduction of the number of iterations required to locate the optimum solution.v is a constriction factor used to limit velocity.The PSO algorithm has shown its robustness and efficacy in solving function value optimization problems in real number spaces;only a few researches have been conducted for extending PSO to combinatorial opti-mization problems under a binary form.528 B.Jarboui et al./Computers &Industrial Engineering 54(2008)526–5384.Proposed combinatorial PSO(CPSO)In this paper,we propose an extension of PSO algorithm to solve the combinatorial optimization problem with integer binatorial PSO essentially differs from the original(or continuous)PSO in some characteristics.4.1.Definition of a particleLet us denote by Y ti ¼y ti1;y ti2;...;y tinÈÉthe n-dimensional vector associated to the solutionX ti ¼x ti1;x ti2;...;x tinÈÉtaking a value in{À1,0,1}according to the state of solution of the i th particle atiteration t.Y t i is a dummy variable used to permit the transition from the combinatorial state to the continuous stateand vice versa.y t ij ¼1if x tij¼G tjÀ1if x tij¼p tijÀ1or1randomly ifðx tij¼G tj¼p tijÞ0otherwise8>>><>>>:ð5Þ4.2.VelocityLet d1¼À1Ày tÀ1ij be the distance between x tÀ1ijand the best solution obtained by the i th particle.Let d2¼1Ày tÀ1ij be the distance between the current solution x tÀ1ijand the best solution obtained in theswarm.The update equation for the velocity term used in the CPSO is then:v t ij ¼w:v tÀ1ijþr1:c1:d1þr2:c2:d2ð6Þv t ij ¼w:v tÀ1ijþr1:c1ðÀ1Ày tÀ1ijÞþr2:c2ð1Ày tÀ1ijÞð7ÞWith this function the variation of the velocity v tij depends on the result of y tÀ1ij.If x tÀ1ij ¼G tÀ1j,then y tÀ1ij¼1.Thereafter,d2turns to‘‘0’’,and d1receives‘‘À2’’,which is going to impose tothe velocity to move in the negative sense.If x tÀ1ij ¼p tÀ1ij,then y tÀ1ij¼À1.Thereafter,d2turns to‘‘2’’,and d1receives‘‘0’’,thus imposing to the velocityto move in the positive sense.In the case x tÀ1ij ¼G tÀ1jand x tÀ1ij¼p tÀ1ij;y tÀ1ijturns to‘‘o’’,d2is equal to‘‘1’’and d1is equal to‘‘-1’’,thereafterthe parameters r1,r2,c1and c2will determine the sense of the variation of the velocity.In the case x tÀ1ij ¼p tÀ1ijand x tÀ1ij¼G tÀ1j,y tÀ1ijtakes a value in{À1,1},thus imposing to the velocity to move inthe inverse sense of the sign of y tij.4.3.Construction of a particle solutionThe update of the solution is computed within y tij:k t ij ¼y tÀ1ijþv tijð8ÞThe value of y tijis adjusted with the following function:y t ij ¼1if k tij>aÀ1if k tij<Àa0otherwise8><>:ð9ÞThe new solution is then:B.Jarboui et al./Computers&Industrial Engineering54(2008)526–538529x t ij ¼G tÀ1jif y tij¼1p tÀ1ijif y tij¼À1a random number otherwise8><>:ð10ÞThe choice previously achieved for the affectation of a random value in{-1,1}for y tÀ1ij ,in the case of equalitybetween x tÀ1ij ;p tÀ1ijand G tÀ1j,might insure that the variable y tijtakes a value0,and permit to change the value ofvariable x tij .We define a parameter a as parameter for intensification and diversification.For a small value of a;x tij takesone of the two values p tÀ1ij or G tÀ1j(intensification).In the opposite case,we impose to the algorithm to assign anull value to the y tij ,which induces to choose another value different from p tÀ1ijand G tÀ1j(diversification).The parameters c1and c2are two parameters relative to the importance of the solution p tÀ1ij and G tÀ1jfor thegeneration of the new solution X ti.They also have a role in the intensification of the research.5.CPSO for solving PFSP5.1.Solution representationA natural representation is the permutation of n jobs where the j th number in the permutation denotes the job located on position j.In our implementation,we have used this representation scheme.Each particle i isrepresented by an n-dimensional vector X ti ¼x ti1;x ti2;...;x tinÈÉ,where each dimension corresponds to one posi-tion.x tij denotes the affected job to position j in the particle i at instant t.Let X ti¼5;6;2;4;1;3f g be the asso-ciated solution to the i th particle,in the t th iteration.x ti3¼2means that job‘‘2’’is scheduled at position‘‘3’’inthe i th particle at t th iteration.5.2.Initial solutionFor theflowtime criterion,we randomly generated the initial population.To evaluate the makespan crite-rion,we used the NEH heuristic proposed by Nawaz et al.(1983).While this heuristic allows unique initial solution,we developed a new variant of NEH,called PNEH,which is based on a probabilistic process.We illustrate in what follows the NEH approach and the modification which leads to the PNEH.The NEH algorithm is based on the idea that jobs with high processing times on all the machines should be scheduled as early as possible.Thus,jobs are sorted in non increasing order of their total processing time requirements.Thefinal sequence is built in a constructive way,adding a new job at each step andfinding the best partial solution.NEH is divided into four simple steps:pute total processing times for job j using the following formula:p j ¼X mk¼1pj;k;j¼1;...;n2.Sort the n jobs in non increasing order according to their total processing times p j.3.Take thefirst two jobs and evaluate the two possible schedules containing them.The sequence with betterobjective function value is taken for further consideration.4.Take every remaining job in the list given in Step2andfind the best schedule by placing it at all possiblepositions in the sequence of jobs that are already scheduled.To make this procedure as being a probabilistic algorithm,we have introduced a probability into step2 which is mathematically written as follows:Pr j¼pj ÀÁk P nj¼1pjÀÁSo,in step2,we rearrange the n jobs according to their probability Pr j.530 B.Jarboui et al./Computers&Industrial Engineering54(2008)526–5385.3.Creation of a new solutionAfter the determination of the new vector y t ij ,we ought to obtain a feasible solution indicating a job sequence.Fig.1shows our algorithm structure used to succeed this task.X t i designates the i th particle associated solution.According to the value of y t ij ,we will try to find the posi-tion of job r ,from the solution X t i ,and which corresponds to G t À1j and p t À1ij respectively if y t ij ¼1or y t ij ¼À1.If r P j ,we perform a permutation between the two jobs scheduled in positions r and j ,else,we are facing a con-tradictory case that requires the presence of the same job in two different positions and so we choose randomly one of them.If y t ij ¼0,we try to find the first job in position r with an index larger or equal to j and which isdifferent to both G t À1j and p t À1ij (it is clear that this operation does not require more than 3computational times).When j =n À1,we can face the case that no job can satisfy the previous condition and thereafter,r receives ;.To preserve the linearity of the algorithm,we define the position vector ps t i that presents the position of jobs in the solution X t i .Given a solution X t i ¼3;1;4;2;6;5f g ,ps t i ¼f 2;4;1;3;6;5g .So if y t ij ¼À1,it suffices that we see the position of job G t À1j in the sequence through the intermediary of ps t i ðG t À1j Þ.As an example,if y t i 2¼1and G t 2¼3,the position of the 3rd job in the sequence is equal to ps t i ð3Þ¼1.6.Hybrid algorithm for solving PFSP (H-CPSO)In this section,we will present a hybrid algorithm for solving PFSP.The basic idea is to add to the CPSO algorithm an improvement phase,which will be presented by simulated annealing algorithm (SA),in order to obtain good quality solutions.Tasgetiren et al.(2007)proposed to apply a local search procedure based on VNS method to the global best solution G t at each iteration.The drawback is to preserve the same starting solution during several iterations which can limit the capacity of exploration in the algorithm.Our proposal is to apply the SA on the set of solutions that can be considered as good.This objective can be achieved by using a threshold acceptance which is a function of the fitness of the global best solution.Given a fitness function f ,we accept only solutions that have a function value less than (1+d )·f (G t ).6.1.Simulated annealing algorithmSA algorithm is a good tool for solving hard optimization problems.It was first proposed by Kirkpa-trick,Gelatt,and Vecchi (1983)based on the physical annealing process of solids.SA can be viewed as a process which,given a neighbourhood structure,attempts to move from the current solution x current to one of its neighbours x 0.The new solution will be accepted as the current one if its objective function value f (x 0)is less than that of the current solution f (x current )(for minimization problems).Otherwise,the neigh-bour x 0will be accepted with a probability P =e À(D /T );where D =f (x 0)Àf (x current )and T is the current temperature.Generally,SA starts with a high temperature,which is further decreased in each iteration.Fig.1.New solution generation.B.Jarboui et al./Computers &Industrial Engineering 54(2008)526–538531To achieve a reduction of computation time,we choose a small constant temperature in order to focus the search process on the intensification phase.Two neighbourhood structures are used in the proposed SA algorithm.On one hand,the permutation cri-terion,denoted by permute (x current ;i ;j ),possesses the task of permuting the two jobs scheduled in position i and j in the current solution.In the other hand,the insertion criterion comes to put the job scheduled in position i in position j ,which is denoted by insert (x current ;i ;j ).Fig.2describes the implemented simulated annealing algorithm.7.Implementation and experimental resultsThe algorithm is coded by C++programming language.All experiments with CPSO were run in Windows XP on desktop PC with Intel Pentium IV,3.2GHz processors.Results are obtained after five replications for each instance.In what follows,we will illustrate different results obtained by our algorithms minimizing makespan and flowtime criteria and compare them with some competing algorithms.7.1.Tests evaluation with respect to the makespan criterionThe experiments were conducted on the benchmark problems proposed by Taillard (1993),with m =5,10,20and n =20,50,100,200.There were 10instances for each problem size and 110problem instances in all.The problem instances and their best upper bounds can be downloaded from http://ina.eivd.ch/collab-orateurs/etd/.The solution quality was measured with the average relative percentage deviation in makespan D avg with respect to the best known solutions,provided by Taillard.D avg ¼X R i ¼1Heu i ÀBest solBest sol Â100 0R ;where Heu i is the solution given by any of the R replications of the considered algorithms and in this caseBest sol is the best known solutions.7.1.1.Performance of CPSO algorithmWe used the same implementation conditions of Tasgetiren (2007),i.e.the same population size (n ·2),we used also a random procedure to generate the initial solution in our first CPSO algorithm and we considered 500generations as a stopping criterion.Fig.2.Simulated annealing procedure.532 B.Jarboui et al./Computers &Industrial Engineering 54(2008)526–538B.Jarboui et al./Computers&Industrial Engineering54(2008)526–538533 Table1Performance comparison of PSOspv and CPSO on Taillard’s benchmarks with respect to makespan criterionProblems PSO spv CPSOD avg D avg t avg 20·5 1.75 1.050.05 20·10 3.25 2.420.12 20·20 2.82 1.990.19 50·5 1.140.900.26 50·10 5.29 4.850.74 50·207.21 6.40 1.15 100·50.630.740.68 100·10 3.27 2.94 2.13 100·208.257.11 4.39 200·10 2.47 2.177.50 200·208.05 6.8916.42 Average 4.01 3.40 3.06 t avg:time in seconds per run.Wefixed the parameters c1=0.6,c2=0.4and w=0.95.We alsofixed parameter a at the value q/n to limit the diversification,especially in the large size instances.From the best got results,the parameter q wasfixed at a value of7.Table1summarizes both the results obtained by Tasgetiren et al.(2007)with their PSO algorithm based on the smallest position value rule(PSO spv)and our CPSO algorithm.The performance of CPSO is better than that of PSO spv in all instances except the class100·5.The CPSO algo-rithm was able tofind results on overall average‘‘3.40’’better than the one obtained by PSO spv algorithm‘‘4.01’’.7.1.2.Performance of CPSO-PNEH algorithmWe now evaluate the proposed CPSO initialized by PNEH and denoted by CPSO-PNEH.An experiment was conducted to make a comparison with the genetic algorithm(GA)of Reeves(1995).Both algorithms have been coded in the same programming language C++and are tested on the same com-puter with Intel Pentium IV,3.2GHz.The parameters used in CPSO-PNEH are as follows:c1=0.2,c2=0.8,w=0.7,a=7/n and the population size isfixed at200.The parameter k used in the PNEH algorithm isfixed at3.In order to have a suitable comparison,we used the same number of evaluations,which isfixed at5000·n and each problem was tested for10trials in both algorithms.A summary of the results is displayed in Table2.We see from this table that the CPSO-PNEH algorithm dominates the GA for all problems.Regarding the CPU time requirement,the average time to reach the best solution of the CPSO algorithm was shorter than that of the GA for the instances from20·5to100·5, except for50·20.However,CPSO was computationally more expensive than GA for large size instances (200·20;200·10;100·20;100·10).7.1.3.Performance of H-CPSO algorithmThe performance of the H-CPSO was compared with that of PSO vns from Tasgetiren et al.(2007).The parameters used in our implementation were c1=0.8,c2=0.2,w=0.75and a=putational time is another evaluation criterion;its maximal value wasfixed at250seconds for the 20·5,20·10,20·20,50·5,50·10and50·20instances and at500seconds for the remaining instances sizes.We set the value of the parameter d related to the improvement phase at0.02and the parameter k used in the PNEH algorithm at3.The stopping criterion of SA algorithm is defined as the maximal number of iter-ations without improvement and isfixed to10·n2.Wefixed the temperature which can assure to every solu-tion having the minimal deviation a probability of0.5to be accepted.We suppose that the minimal deviation is equal to1,then T=À1/log(0.5).534 B.Jarboui et al./Computers&Industrial Engineering54(2008)526–538Table2Performance comparison of GA of Reeves and H-CPSO on Taillard’s benchmarks with respect to makespan criterionProblems GA CPSOD avg t avg D avg t avg 20·50.650.180.350.04 20·10 1.870.33 1.200.14 20·20 1.340.410.960.22 50·50.280.700.090.06 50·10 2.76 1.84 2.55 1.75 50·20 4.04 2.50 3.84 4.73 100·50.19 2.720.040.67 100·10 1.19 5.41 1.029.16 100·20 3.3411.08 3.0729.03 200·100.6136.720.5948.47 200·20 3.3958.84 3.15183.13 Average 1.7910.980.5948.47 t avg:time in seconds per run.According to Table3,the performance of H-CPSO and PSO vns are almost identical in terms of the average values.We can see that results obtained by our algorithm are more efficient than the ones yielded by PSO vns in instances with sizes less than50·20and100·20,but they are less effective in the rest of instances.7.2.Tests evaluation with respect to totalflowtime criterionIn this section,we evaluate the effectiveness of H-CPSO algorithm to solve PFSP with minimization of flowtime criterion.The performance of the H-CPSO has been compared with other metaheuristics:the PSO vns from Tasgetiren et al.(2007),the composite heuristic(BES(LR))from Liu and Reeves(2001)and the two ant colony algorithms(PACO and M-MMAS)from Rajendran and Ziegler(2005).The experiments were conducted on the benchmark problems given by Taillard(1993),with m=5,10,20 and n=20,50,100.There were10instances for each problem size and90problem instances in all.Parameters of H-CPSO arefixed in the same way as used in the makespan context,except d,that wasfixed at0.05and the maximal computational time,that wasfixed at n·m·0.4seconds.In Tables4–6,we give a comparison between our H-CPSO algorithm and the best results obtained by BES(LR),PACO,M-MMAS and PSO vns with respect to the totalflowtime criterion after5replications.Val-Table3Performance comparison of PSO vns and H-CPSO on Taillard’s benchmarks with respect to makespan criterionProblems PSO vns H-CPSOD avg D avg t avg 20·50.030.000.85 20·100.020.017.72 20·200.050.0218.77 50·50.000.0031.86 50·100.570.4977.98 50·20 1.360.96145.60 100·50.000.0222.53 100·100.180.26229.66 100·20 1.45 1.28372.00 200·100.180.40315.06 200·20 1.35 1.55480.28 Average0.470.45162.49 t avg:time in seconds per run.。