Professional Documents
Culture Documents
ORG
97
1 INTRODUCTION
HE FJSP is one of the hardest combinatorial optimization problems in the field of scheduling. It belongs to the NP-Hard family [1]. The FJSP presents two difficulties. The first one is to assign each operation to a machine, and the second one is to schedule these operations in order to make a predefined objective minimal. During the past two decades, the FJSP captured the interests of many researchers. One of the first papers about FJSP was proposed by Brucker and Schlie [2]. They used a polynomial algorithm for solving this problem with two jobs. To solve the realistic case with more than two jobs, many approaches in the literature have been proposed. Brandimarte [3] solved the FJSP with tabu search algorithm (TS). Dauzre-Prs and Paulli [4] defined a new model and used a TS algorithm. Mastrolilli and Gambardella [5] improved Dauzre-Prs TS techniques. Kacem et al [6][7] presented a genetic algorithm (GA) for monoobjective and multi-objective FJSP. Zhang and Gen [8] developed a multistage operation-based GA. Recently, particle swarm optimization (PSO), a population-based metaheuristic, has been attempted for solving FJSP. Xia and Wu [9] proposed an approach hybridizing particle swarm optimization and simulated annealing (SA). PSO is used to assign operations on machines and SA is used to schedule operations on each machine. Liu et al [10] solved the multi-objective FJSP with minimum makespan and flowtime by means of a variable neighbourhood PSO algorithm, which employed a variable neighbourhoudbased local search mechanism to improve the exploitation ability of the swarm. Jia et al [11] employed a chaotic local search around the gbest particle in PSO for solving FJSP.
Jia et al [12] proposed another approach using a fullyinformed pareto-based PSO algorithm to minimize the makespan and maximum lateness in a flexible job shop environment. In this paper, we aim to overcome the difficulty of parameter tuning present in all metaheuristics by proposing an adaptive algorithm for FJSP. The adaptive algorithm named TRIBES is a parameter-free PSO that does not require any parameter tuning (swarm size, sociometry). TRIBES like PSO, is a computational method mimicking the behavior of flying birds and their means of information exchange. The key elements of TRIBES, the most important issues in designing the algorithm and applying it to the wellknown FJSP, the performance results and a summary of the current work with future directions can be found in the following sections.
2 PROBLEM DESCRIPTION
The problem consists in performing a set of n jobs J= {J1, J2,, Jn} on a set of m machines M={M1, M2,,Mm} .Each machine can process only one operation at a time. Each job Ji has a linear sequence of ni operations {Oi,1, Oi,2,, Oi,ni}. There are precedence constraints among the operations of the same job. Nonetheless, there are no precedence constraints among the operations of different jobs. The realization of each operation Oi,j (the operation j of job i) requires a machine Mk and a processing time pi,j,k. Job preemption and job splitting are not allowed. The starting time of Oi,j is ti,j and the ending time is tfi,j. We can associate a table TFJSP of processing times to each flexible job shop scheduling problem such that TFJSP= {pi,j,k integer0, 1in; 1jni; 1km}. An exemple is presented in Table 1. In literature the FJSP can be classified into two sub-problems: the Total FJSP (T-FJSP) and the partial FJSP (P-FJSP). In T-FJSP, each operation can be processed on any machine of M whereas, in P-FJSP, each operation can be processed on one machine of subset of M. In our paper, the two kinds of FJSP are considered and
S. Mekni is with the National Engineering School of Tunis, Tunisia.Email: msouadpop@ yahoo.fr. B. Fayech Char is the National Engineering School of Tunis, Tunisia.Email: besma.fayechchaar@insat.rnu.tn. M. Ksouri is with the National Engineering School of Tunis, Tunisia. Email: Mekki.Ksouri@insat.rnu.tn.
JOURNAL OF COMPUTING, VOLUME 3, ISSUE 6, JUNE 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/ WWW.JOURNALOFCOMPUTING.ORG
98
the objective is to find a schedule having a minimum makespan (or, the minimum time of the whole operations), denoted by Cmax=max1in(max1jni(tfi,j)). Moreover, we shall assume that the total number of operations to perform is greater than the number of machines, each job can start at time 0, breakdowns are not considered and machines are available at time 0. Now that the problem has been suitably described, the next step is to select an appropriate solution strategy. The selection of a suitable solution strategy should, in most cases driven by the complexity of the problem at hand. Next sections focuse on the technique chosen to solve the FJSP to minimize the makespan. TABLE 1 EXAMPLE OF A TFJSP
stants, called cognitive and social parameters and (r1, r2) are random numbers uniformaly distributed in [0,1]. Fig.1 illustrates the move of the particle and Fig.2 provides the pseudocode of PSO.
M2 9 5 7 4 8 5 8 9
M3 3 2 1 5 4 1 9 2
M4 7 6 4 3 9 2 3 4
M5 5 4 3 8 3 4 2 3
(N:swarm size;f :fitness) Begin Random initialization of positions and velocities of each particle For each particle i ,pi=xi While stopping criteria not met do For i=1 N faire Update the particle position and velocity according to equations (1) and (2) Evaluation of positions If f(xi)< f(pi) pi=xi If f(pi)< f(gi) gi=pi End for End while
Fig.2. Pseudocode of PSO
The number of PSO research papers increases exponentially each year, and as the algorithm is refined, several variants of PSO have been defined. TRIBES is new variant of PSO. TRIBES is a parameter-free PSO algorithm that avoid the user to tune the algorithm-specific parameters. This self adaptive algorithm is specifically useful for minimizing the computational effort associated with the optimization of control parameters.
4 TRIBES
4.1 Description
Although metaheuristics are efficient, they suffer from a large number of algorithm-specific parameters which need to be optimized separately for each instance and problem type. To address this issue, a number of selfadaptive algorithms are developed. TRIBES, a metaphor for different sized groups of people moving in an unknown area or region, looking for a good place, is a parameter-free PSO which is defined in 2003 by clerc
JOURNAL OF COMPUTING, VOLUME 3, ISSUE 6, JUNE 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/ WWW.JOURNALOFCOMPUTING.ORG
99
([14], [15]). TRIBES adapts the number of particles and the details of topology according to performance feedback of the swarm. The swarm in TRIBES is composed of subswarms called tribes. At the beginning, the swarm contains only one tribe containing one particle. Through generations the swarm in TRIBES evolves by structural and behavioral adaptations. Structural adaptation determines how particles are added or removed based on the behaviors of tribes and behavioral adaptation indicates how particles update their positions.
Structural adaptation should not occur after each iteration. It takes place at the beginning of the algorithm and then periodically as it progresses. In fact, some time (iterations) are indispensable for information to propagate through the whole swarm. If after one structural adaptation the number of links in the swarm is NL, the next structural adaptation will occur after (NL/2) number of iterations. The algorithm of Fig.5 outlined Structural adaptation rules [16]. tribeNB is the number of tribes in the swarm. test=0 For i=1 tribeNb do If tribe[i].status=bad Generate a particle at random test =1 End if If tribe[i].status=good Delete the worst particle of tribe[i] If tribe[i].size=1 tribeNb=tribeNb-1 redirect information links towards the best informer else redirect information links towards the best particle of the tribe end if end if end for if test=1 tribeNb=tribeNb+1 aggregate generated particles in a new tribe establish links between the best particles of the different tribes end if calculate NL (NL:number of links in the swarm)
Fig.5. Structural adaptation algorithm
JOURNAL OF COMPUTING, VOLUME 3, ISSUE 6, JUNE 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/ WWW.JOURNALOFCOMPUTING.ORG
100
of its best informer. Then two hyper-spheres of radius |pg| are created around p and g. The new position is generated inside the intersection of the two hyper-spheres. In such way the newly generated point is most likely to be nearer to the best between p and g. In order to obtain such a behavior, two weights w1 and w2 proportional to the relative fitness of the considered particle and its best informer are generated and the new position is obtained by w1.hp+w2.hg, where hp and hg are two randomly generated points in the hyper-spheres surrounding p and g, respectively [17]. The noisy pivot method begins exactly like the simple pivot strategy. After having determined the new position it is again modified by adding a random noise. Confinement in TRIBES is done as in classical PSO. In fact, if a component of the position of a particle tends to go out of the search space, it is then simply brought back to nearest acceptable values. To summarize, the TRIBES flowchart is available in [18] and the TRIBES algorithm is presented in the following figure (Fig.6): pi:best position of particle i; gi:best informer of particle i; n:number of iterations done until the last structural adaptation; NL number of links Random initialization of the initial particle x0 P0= g0=x0 Evaluate the objective function While stopping criteria not met do Determine the status of each particle Choose the moving strategy Update positions Evaluate each particle Update pi and gi If ( !(n < NL/2)) Determine the status of each tribe Structural adaptation (see Fig.5) Calculate NL End if End While
Fig.6. TRIBES Algorithm
(Fig.8, Fig.9) represent operations as a repetition of operations. For example (1,1,1) represents (O1,1,O1,2,O1,3), (2,2,2) represents (O2,1,O2,2,O2,3) and so on. The second row of the particle represents particles position or the rational solution. Each dimension of the first half of the 2nd row maps one operation and each of the second half maps one machine. At this step, we use the Smallest Position Value (SPV) rule [19] to find the permutation of jobs. The smallest component of the particles position in the 2nd row of Fig.8 is -2.1 which corresponds to job number 3, thus J3 (or the first operation of J3) is scheduled first. The second smallest component of the particles position is -2 which corresponds to job number 1, therefore J1 (or the first operation of J1) is the second, etc. The 2nd row of Fig.9 contains a random number in the interval [0,m] that indicates after being rounded to its nearest integer, the machine to which an operation is assigned during the course of TRIBES. The 3rd row of Fig.8 indicates the sequence of jobs in the ordering and the 3rd row of Fig.9 indicates the corresponding machines. Finally, the last row of Fig.8 indicates operations in the order and last row of Fig.9 indicates starting times. Repitition of jobs:J1J1J2J3J3 position Sequence of Jobs Sequence of operations
Fig.7. Particle representation
J1 0.6 J3 O31
J1 -2 J1 O11
J1 6 J1 O12
J2 2 J2 O21
J2 6.6 J3 O32
J2 3 J2 O22
J3 2.5 J1 O13
J3 -2.1 J2 O23
J1 4 M5 t=0
J1 0.5 M1 t=0
J1 2 M3 t=1
J2 0.6 M1 t=1
J2 4 M5 t=2
J2 0.9 M1 t=2
J3 3 M3 t=3
J3 2 M3 t=4
JOURNAL OF COMPUTING, VOLUME 3, ISSUE 6, JUNE 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/ WWW.JOURNALOFCOMPUTING.ORG
101
(n:number of jobs; Nt: total number of operations; pi,j,k:processing time of operation Oi,j performed on Mk;ti,j:starting time of Oi,j;tfi,j: ending time of Oi,j; VJ[i]: ending time of the last operation scheduled of job Ji; VM[k]: ending time of the last operation performed on machine Mk; VJ={0};VM={0};we treat operations in the same order of their appearance in the solution Begin For indice=1 Nt k=indice of machine that executes Oi,j max=maximum(VJ[i],VM[k]) ti,j=max tfi,j=max+pi,j,k VJ[i]=VM[k]= tfi,j End for
Fig.10. Determination of operations starting times Fig.11. Gantt Diagram
o o 1st Step:t12 o t12=max{VJ[1],VM[3]}=max{1,0}=1,tf12= 1+2=3, o VJ={3,0,2}, o VM={1,0,3,0,2}, 1st Step:t21 o t21=max{VJ[2],VM[1]}=max{0,1}=1,tf21= 1+1=2, o VJ={3,2,2}, o VM={2,0,3,0,2}, 1st Step:t32 o t32=max{VJ[3],VM[5]}=max{2,2}=2,tf32= 2+3=5, o VJ={3,2,5}, o VM={2,0,3,0,5}, 1st Step:t22 o t22=max{VJ[2],VM[1]}=max{2,2}=2,tf22= 2+2=4, o VJ={3,4,5}, o VM={4,0,3,0,5}, 1st Step:t13 o t13=max{VJ[1],VM[3]}=max{3,3}=3,tf13= 3+1=4, o VJ={4,4,5}, o VM={4,0,4,0,5}, 1st Step:t23 o t23=max{VJ[2],VM[3]}=max{4,4}=4,tf23= 4+1=5, o VJ={4,5,5}, o VM={4,0,5,0,5} The obtained schedule is described in the Gantt Diagram as shown in Fig.11.
6 RESULTS
This section described the computational tests which are used to evaluate the effectiveness and efficiency of the proposed TRIBES. Our algorithm has been implemented in C language and runs on a PC Intel Core i3 CPU
JOURNAL OF COMPUTING, VOLUME 3, ISSUE 6, JUNE 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/ WWW.JOURNALOFCOMPUTING.ORG
102
M370@2.40GHz 909 MHz, 1.85GB of RAM. Different instances of the present problem have been chosen to test TRIBES algorithm. These instances are taken from [21] and are divided into two categories: small size flexible job shop scheduling problems (SFJS1:10), and medium and large size flexible job shop scheduling problems (MFJS1:6). The number of jobs ranges from 2 to 8, the number of machines ranges from 2 to 7, the number of operations for each job ranges from 2 to 3, and the number of operations for all jobs ranges from 4 to 24. In table 2, the problem names are listed in the first column, the second and third columns refer to the number of jobs and machines respectively.In table 3, a comparison of our approach and four approaches, namely HSA/SA, HAS/TS, HTS/TS and HTS/SA algorithms, proposed by Fattahi et al [21] is given (H: Hierarchical approach, SA: Simulated annealing and TS: Tabu search). TABLE2 INSTANCES OF FATTAHI
Problem HSA/SA HSA/TS HTS/TS HTS/SA Our approach SFJS1 SFJS2 SFJS3 SFJS4 SFJS5 SFJS6 SFJS7 SFJS8 SFJS9 SFJS10 MFJS1 MFJS2 MFJS3 MFJS4 MFJS5 MFJS6 66 107 221 355 119 320 397 253 210 516 479 495 553 656 650 762 66 107 221 355 119 320 397 253 210 516 491 482 538 650 662 785 66 107 221 355 119 320 397 253 210 516 469 482 533 634 625 717 66 107 221 355 119 320 397 253 210 516 469 468 538 618 625 730 66 107 221 355 119 320 397 253 210 516 468 448 468 554 519 634
Problem n jobs m machines SFJS1 SFJS2 SFJS3 SFJS4 SFJS5 SFJS6 SFJS7 SFJS8 SFJS9 SFJS10 MFJS1 MFJS2 MFJS3 MFJS4 MFJS5 MFJS6 2 2 3 3 3 3 3 3 3 4 5 5 6 7 7 8 2 2 2 2 2 3 5 4 3 5 6 7 7 7 7 7
M 2 : 2,1 : 0 53O1,2 : 53 148O2,2 : 148 221 O M 1 : 1,1 : 0 43O3,1 : 43 168O3,2 : 168 211 O
Fig.14. Scheduling obtained for problem SFJS3
Results shown in table 3 confirm that the present TRIBES algorithm obtain equal or better results in comparison with the above-mentionned algorithms. Optimal scheduleing obtained from 30 runs of our TRIBES algorithm for many Fattahi instances are presented in Fig.12, Fig.13, Fig.14, Fig.15, Fig.16, Fig.17, Fig.18, Fig.19, Fig.20, Fig.21, Fig.22, Fig.23, Fig.24, Fig.25, Fig.26 and Fig.27.
M 2 : 2,1 : 0 120O1,1 : 120 183O2,2 : 183 335 O M 1 : 3,1 : 0 125O3,2 : 125 268O1,2 : 268 355 O
Fig.15. Scheduling obtained for problem SFJS4
JOURNAL OF COMPUTING, VOLUME 3, ISSUE 6, JUNE 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/ WWW.JOURNALOFCOMPUTING.ORG
103
M 3 2,3 : 180 250 1,3 : 250 310 O O O M 2 3,1 : 0 60 M 1 2,1 : 0 30 O 3,2 : 60 230 3,3 : 230 320 O O 2,2 : 30 180 1,1 : 180 197 1,2 : 197 237 O O O
M 4 2,2 : 30 85 2,3 : 85 163 3,3 : 163 253 O O O O M 3 1,3 : 92 252 O M 2 3,1 : 0 62 O M 1 2,1 : 0 30 1,2 : 62 92 3,2 : 92 162 O O 1,1 : 30 47 O
JOURNAL OF COMPUTING, VOLUME 3, ISSUE 6, JUNE 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/ WWW.JOURNALOFCOMPUTING.ORG
104
CONCLUSION
Although limited, the computational tests performed have been sufficient to draw some conclusions. Our approach based on the autonomous optimization heuristic TRIBES, which adapts the number of particles and the topology of particles neighborhoods based on swarm performance, provides relevant solutions for the minimization of makespan in the flexible job shop scheduling problem. Our approach is very competitive to the state-of-the-art methods in the literature since it
JOURNAL OF COMPUTING, VOLUME 3, ISSUE 6, JUNE 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/ WWW.JOURNALOFCOMPUTING.ORG
105
does not require tuning and it is able to find the optimal and best-known solutions on the instances studied. About future research direction, we should pay more attention to the multiobjective optimization. Instead of minimizing only makespan, we should consider another objective that reflects realistic cases.
[18]
[19]
REFERENCES
[1] M. Sakarovitch, Optimisation Combinatoire. Mthodes mathmatiques et algorithmiques. Hermann, Editeurs des sciences et des arts, Paris, 1984. P. Brucker and R. Schlie, Job Shop Scheduling with multipurpose machines, J. Computation, vol. 45, no. 4, pp. 369-375, 1990. P. Brandimarte, Routing and Scheduling in a Flexible Job Shop Scheduling by Tabu Search, Annals of Operations Research, vol. 22, pp. 158-183, 1993. S. Dauzre-Prs and J. Paulli, An Integrated Approach for Modeling and Solving the General Multiprocessor Job Shop Scheduling Problem using Tabu Search, Annals of Operations Research, vol. 70, no. 3, pp. 281-306, 1997. M. Mastrolilli and L.M. Gambardella, Effective Neighborhood Functions for the Flexible Job Shop Problem, J. Scheduling, vol. 3, no. 1, pp. 3-20, 2000. I. Kacem, S.Hammadi and P. Borne, Approach by Localization and Multi-Objective Evolutionary Optimization for Flexible Job Shop Scheduling Problems," IEEE Trans. Systems, Man and Cybernetics, vol. 32, no. 1, pp. 1-13, 2002. I. Kacem, S.Hammadi and P. Borne, Pareto-Optimality Approach for Flexible Job Shop Problems: Hybridization of Evolutionary Algorithms and Fuzzy Logic, Mathematics and Computers in simulation, vol. 60, pp. 245-276, 2002. H-P. Zhang and M. Gen, Multisatge-based Genetic Algorithm for Flexible Job Shop Scheduling Problem,J.Complexity International, vol. 11, pp 223-232, 2005. W. Xia and Z. Wu, An Effective Hybrid Optimization Approach for Multi-Objective Flexible Job-Shop Scheduling Problems, J.Computers and Industrial Engineering vol. 48, pp 409-425, 2005. H. Liu, A. Abraham and C.Grosan,A novel Variable Neighborhood Particle Swarm Optimization for Multi-Objective Flexible Job Shop Scheduling Problems, Proc.Second International Conference on Digital Information Management, pp 138-145, 2007. Z. Jia, H. Chen and J. Tang,An Improved Particle Swarm Optimization for Multi-Objective Flexible Job Shop Scheduling Problem, IEEE International Conference on Grey Systems and Intelligent Services, pp 1587-1592, 2007. Z. Jia, H. Chen and J. Tang,A New Multi-Objective FullyInformed Particle Swarm Algorithm for Flexible Job Shop Scheduling Problems, International Conference on Computational Intelligence and Security Workshops, pp 191-194, 2007. J. Kennedy and R.C. Eberhart,Particle Swarm Optimization, IEEE International Conference on Neural Networks (Perth, Australia), IEEE Service Center, Piscataway, NJ, pp 1942-1948, 1995. M. Clerc, TRIBES. Un exemple doptimisation par essaim particulaire sans paramtres de contrle, OEP03, October, Paris, France, 2003. M. Clerc, Loptimisation par essaims particulaires, versions paramtriques et adaptatives. Edition Herms, Lavoisier, 2005. Y. Cooren, Perfectionnement dun Algorithme Adaptatif dOptimisation par Essaim Particulaire. Applications en Gnie mdical et en lectronique, PhD dissertation, Paris 12 Val de Marne Univ., 2008. L.D.S. Coelho and P. Alotto, "Tribes Optimization Algorithm
[20]
[2]
[21]
[3]
Applied to the Loneys Solenoid," IEEE Trans. On Magnetics, vol. 45, no. 3, 2009. S. Mekni, B. Fayech Char and M. Ksouri,TRIBES Application to the Flexible Job Scheduling Problem, 10th IFAC Workshop on Intelligent Manufacturing Systems, Lisbon, Portugal, 1-2 July, 2010. M.F. Tasgetiren, M. Sevkli, Y.C. Liang and M.M. Yenisey,Particle Swarm Optimization and Differential Evolution Algorithms for Job Shop Scheduling Problem, International Journal of Operational Research vol. 3, no. 2 pp 120-135, 2006. G.C. Onwubolu,TRIBES Application to the Flow Shop Scheduling,New Optimization techniques in Engineering, G.C.Onwubolu and B.V. Babu, Eds, Berlin, Germany: Springer Verlag, pp 515-535, 2004. P. Fattahi, M. Saidi Mehrabad and F.Jolai,Mathematical Modeling and Heuristic Approaches to Flexible Job Shop Scheduling Problems, Journal of Intelligent Manufacturing vol. 18, no. 3, pp 331342, 2007.
[4]
[5]
S. Mekni received the diploma of Engineer in Computer Science from the Faculty of Science of Tunis (Tunisia) in 2003 and the Master degree in Automatic and Signal Processing from the National Engineering School of Tunis (Tunisia) in 2005. She is currently pursuing the Ph.D.degree in Electrical engineering at the National Engineering School of Tunis. Her research interests include production scheduling, genetic algorithms, particle swarm optimization, multiobjective optimization and artificial intelligence. B. Faych Char received the diploma of Engineer in Industrial Engineering from the National Engineering School of Tunis (Tunisia) in 1999, the D.E.A degree and the Ph.D degree in Automatics and Industrial Computing from the University of Lille (France), in 2000, 2003, respectively. Currently, she is a teacher assistant in the Higher School of Sciences and Techniques of Tunis (Tunisia). Her research interests include scheduling, genetic algorithms, transportation systems, multiagent systems and decision-support systems. M. Ksouri received the Maitrise in Physics from the Faculty of Science of Tunis (Tunisia) in 1971, the dipoma of Engineer from the Higher School of Electricity of Paris (France) in 1973, and the Engineering Doctorate, then the Ph.D degree from the University of P.and M. Curie (Paris), in 1975 and 1977, respectively. In 1977, he joined the Department of Electrical Engineering at Higher School of Sciences and Techniques of Tunis (Tunisia), where he contributed to the initiation of the graduate program in automatic control. Since 1990, he is professor of Electrical Engineering at the National Engineering School of Tunis (Tunisia), where he created the Research Unit ACS (Analysis and Control of Systems). His research interests include robust control, fuzzy control, GPC and computer-controlled Systems.
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15] [16]
[17]