TRIBES Optimization Algorithm Applied to the Flexible Job Shop Scheduling Problem

TRIBES Optimization Algorithm Applied to the Flexible Job Shop Scheduling Problem

TRIBES Optimization Algorithm Applied to the Flexible Job Shop Scheduling Problem S.Mekni, B.Fayech Châar M.Ksouri National School of Engineers of Tun...

402KB Sizes 0 Downloads 52 Views

TRIBES Optimization Algorithm Applied to the Flexible Job Shop Scheduling Problem S.Mekni, B.Fayech Châar M.Ksouri National School of Engineers of Tunis, Tunisia. (msouadpop@ yahoo.fr, [email protected], [email protected]) Abstract: To avoid the user to tune the parameters, a lot of effort in metaheuristics have been put to propose “adaptive” algorithms. For such algorithms, we have only to define the problem and the stopping criterion. This paper presents a new attempt involving the use of TRIBES, which is an autonomous adaptive search heuristic, for the well-known flexible job shop scheduling problem with the objective of minimizing the makespan or the total duration of schedule. TRIBES, a metaphor for different sized groups of people moving in an unknown area/region, looking for a “good” place, is a parameter-free Particle Swarm Optimization (PSO) algorithm that does not need any parameter tuning (swarm size, sociometry, …). Numerical results highlight the effectiveness of the proposed algorithm and show that TRIBES in which a local search engine has been included is promising for solving combinatorial optimization problems, which are of significant importance in the manufacturing sector. Keywords: Intelligent manufacturing systems, scheduling algorithms, problem, particle Swarm optimization, TRIBES.

1. INTRODUCTION Particle swarm paradigm is now well-known as an effective and interesting approach to function optimization. Since its creation in 1995 Kennedy et al (1995), the particle swarm optimization (PSO) has gained rapid popularity as a technique to facilitate single and multi-objective optimization. PSO proved to be an efficient method for many global optimization problems and, in some cases, it does not suffer from the difficulties experienced by other evolutionary computation. Evolutionary algorithms use selection and recombination to replace less-fit individuals by combinations of traits found in high performing ones; members of a particle swarm persist over time, retaining their identities and improving by imitation and through interactions with their neighbors Mendes (2004) . Known for its efficiency, PSO, as other metheuristics, shows the drawback of compromising too many parameters to be tuned. The user must specify numerical coefficients, swarm size, neighborhood size and topology. According to the values given to these parameters, the performance of the algorithm fluctuates. So, for each problem, you must find the parameter set which gives the best performance of the algorithm. Recently, numerous research activities have been devoted to adaptive PSO versions. Many variants have already been designed but the complete adaptive and autonomous version that does not require any parameter at all and which is referred to as TRIBES, has been defined in Clerc (2003)Clerc (2005). TRIBES is a parameter-free PSO that adapts the number of particles and the details of topology based on performance feedback of the swarm. TRIBES has

flexible job shop scheduling

received growing interests from researchers in different application areas such as thresholding segmentation of medical images and the design of electronic components Cooren (2008), electromagnetic optimization Coelho (2009), flow shop scheduling Onwubolu (2004), the optimization of milling operations Onwubolu (2005) and molecular docking Chen et al (2006). However different papers addressing flexible job shop scheduling by means of PSO could be identified Xia et al (2005)Liu et al (2007)Mekni et al (2008), to the best of author’s knowledge, there is no applications of TRIBES to flexible job scheduling problem. In this paper, PSO and TRIBES are outlined. Each of the key elements of TRIBES is described in some details in the subsequent sections. TRIBES methodology in which a local search engine has been included is tested on the well-known flexible job shop scheduling problem with the objective of minimizing the makespan. After exposing numerical results that demonstrate the applicability and the effectiveness of TRIBES, a summary of the current work with future directions is presented in the final section. 2. FLEXIBLE JOB SHOP SCHEDULING PROBLEM The problem of flexible job shop scheduling (FJSSP) belongs to the NP-hard family. It presents two difficulties . The first one is the assignment of each operation to a machine, and the second one is the scheduling of this set of operations in order to optimize our criteria. The result of a scheduling algorithm must be a schedule that contains the

start times and allocation of resources to each operation. The data, constraints and objective of our problem are as follows:



To go towards the best neighbor

This compromise is formalized by equations (1) and (2).

2.1Data →



M

represents a set of

called M k (k = 1,..., m) , each Wk







has a Workload called

represents a set of n jobs. A job is called





(1)





(2)



x i (t + 1) = x i (t ) + v i (t + 1) →



v i (t )



p i (t )

, each job has a linear sequence of

operations.

represents the operation number j of the job number i . The realization of each operation requires a machine

time

pi , j ,k

Mk

. The starting time of

ending time is

t fi , j

and a processing Oi , j

is

ti , j

:velocity of particle i at iteration t



Oi , j Oi , j



v i (t + 1) = c1 ×v i (t ) + c 2 × ( p i (t ) − x i (t )) + c 3 × ( p g (t ) − x i (t ))

with

ji (i = 1,...n)



Mk

A machine is

.

N

ni

m machines.

:best previous position of particle iteration t

i

at





x i (t )

:position of particle i at iteration t



and the



. •

Constraints

p g (t )

:best neighbor of particle i at iteration t

c1 , c 2 , c 3

:positive random numbers. These numbers are social-confidents coefficients

Fig.1 shows the general flowchart of PSO. •

Machines are independent of one another.



A machine can be unavailable during the scheduling (case of machine breakdown).



Jobs are independent of one another.



In our work, we suppose that: each job ji can start at the date t = 0 and the total number of operations to perform is greater than the number of machines.

The criterion considered here is to minimize the makespan Cmax

Cmax = max (max( t fi , j ))

1≤i ≤n , . To measure the quality of found solutions, we use the lower bound proposed in Dupas (2004) BCr = max(¦ min( p i , j , k )) k i j which is

3. PARTICLE SWARM OPTIMIZATION (PSO) Fig. 1.The flowchart of PSO The PSO is a population based search algorithm developed by Kennedy and Eberhart in 1995 Kennedy et al (1995) inspired by social behavior of bird flocking or fish schooling. Unlike Genetic Algorithms (GA), PSO has no evolution operators such as crossover and mutation. In PSO, the population is initialized randomly and the potential solutions called particles fly through the search space with velocities which are dynamically adjusted according to their historical behaviors. In PSO, each particle is influenced by both the best solution that it has discovered so far and the best particle in its neighbors (local variant of PSO) or in the entire population (global variant of PSO). At each time step, the behavior of a given particle is a compromise between three possible choices: •

To follow its own way



To go towards its best previous position

Although PSO is still new in evolutionary computation field, it has been applied to a plethora of problems in science and engineering. The number of papers where PSO is applied to scheduling has increased over the past few years. The relevant machine scheduling literature can be organized into two main approaches. The first approach is based on redefining the standard operators of classical PSO, allowing the algorithm to function in a discrete domain. Secondly, the scheduling problem may be converted into a continuous problem which can be solved easily by means of continuous optimization algorithm. PSO has been applied successfully to various flow shop and job shop scheduling problems Grobler (2008). Known for their efficiency, metaheuristics show the drawback of comprising too many parameters to be tuned. Such a drawback incites researchers to propose adaptive algorithms that do not require parameters tuning.

4. FUNDAMENTALS OF TRIBES In TRIBES, the swarm is divided into parts called tribes. At the beginning, the swarm is composed of only one tribe containing only one particle. According to behaviors of tribes, particles are added or removed and according to performances of particles, their strategies of displacement are adapted. The swarm in TRIBES evolves through two kinds of adaptations: • Structural adaptations • Behavioral adaptations Structural adaptation rules describe when a particle is added or removed and when a particle becomes the informer of another particle; whereas behavioral adaptation rules indicate how particles update their positions Cooren et al (2008). The basic elements of TRIBES algorithm are summarized as follows: 4.1 Tribes A tribe is just a sub-swarm, a metaphor for different sized groups of birds moving around an unknown environment, looking for a “good” place Clerc (2003). A tribe represents a fully connected subgraph of the overall swarm topology. Any particle belongs to one and only one tribe. The informers of a particle (i-group) are itself, all the particles in its tribe and any particles of other tribes to which it is connected. All links are symmetrical. Fig.2 illustrates tribal relationships. Tribe b Tribe a

Intra-tribal communication Inter-tribal communication

Tribe c

Tribe d Fig.2. Tribal relationships

4.2 Structural adaptations The particle is labeled “good” if its performance was improved during the last iteration. Otherwise, it is labeled “bad”. Besides, we can determine the particle having the least good performance within a tribe and call it the “worst” (relative to its tribe). Similarly, we can determine the best particle relative to a tribe. The tribes themselves also receive the labels “good” or “bad”, depending on the number of good particles in the tribe. A tribe containing Np particles is “good” only if ( B >= ( Np / 2) ) where B is the number of good particles in the tribe. Otherwise, the tribe is “bad”. Good tribes, because they are doing well and presumably do not need as many particles, will remove their weakest

member. When this occurs, any external links to the particle to be deleted are reallocated to the best performer in the tribe. If a good tribe contains only one particle, the tribe itself is removed only if its particle’s best external informer has a better performance than itself. In the case of deletion of the whole tribe, all external links are reallocated to the best external informer of the particle to be deleted. Bad tribes, on the other hand, presumably need more information, so each bad tribe generates one particle, randomly and uniformly within the initialization space, and forms a link between the new particle and the best particle within the tribe. The set of all new particles generated during on structural adaptation step forms a new tribe. Structural adaptation occurs once at the beginning of the algorithm and then periodically as it progresses. In fact, some time (iterations) are necessary 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 a (NL / 2) number of iterations. 4.3 Behavioral adaptations

In contrast with standard PSO algorithms, particles do not have explicit associated velocities: their positions are updated according to history only: a particle adopts a moving strategy that depends on its recent past. For example, if it has just improved its position twice in succession, it is considered “excellent” and it is probably not necessary for it to go too far from the area where it is. Therefore, for excellent particles, we will use a strategy that is indeed partly a random one, but not too much: the simple pivot method. On the three other cases (where particles do not improve their positions twice in succession), we will add more randomness, with the noisy pivot method. In the simple pivot method, two positions are used: the best position p of a given particle P and the best position q of its informer Q . Then two hyper-spheres of radius

p − q are created around p and q and 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 q . In order to obtain such a behavior, two weights w 1 and w 2 proportional to the relative fitness of P and Q are generated and the new position is obtained by w 1 h p + w 2 hq , where h p and hq are two randomly generated points in the hyper-spheres surrounding p and q , respectively Coelho (2009). The second strategy which is the noisy pivot method begins exactly like the previous one. Only, after having determined the new position, it is again modified using a random noise in such a way that exploration beyond the hyper-spheres becomes possible. The confinement of the particle inside the search space is done as in classical PSO, except that there is no velocity to update. If a component of the position tends to go out of the

acceptable values, it is then simply brought back to the nearest acceptable one. 5. TRIBES FOR FJSSP 4.4 Brief description of the algorithm 5.1 Particle representation One of the key issues when designing the TRIBES algorithm lies on its solution representation which directly affects its feasibility and performance. In this paper, an operation-based representation is used. For the ( n jobs, m machines, O operations) FJSSP, each particle contains 2 × O number of dimension and has a continuous set of values for its dimension which represents particle’s position. The Smallest Position Value, the SPV rule Tasgetiren et al (2004), Tasgetiren et al (2007) is used to find the permutation of operations. Figure 4 illustrates the solution representation of a particle corresponding to (3 jobs, 5 machines, 8 operations) FJSSP described in Table I. Job 1 has 3 operations, Job 2 has 3 operations and Job 3 has 2 operations.

Table 1. Processing time of operations (instance1) M1

M2

M3

M4

O1,1

1

9

3

7

M5 5

O1,2

3

5

2

6

4

O1,3

6

7

1

4

3

O2,1

1

4

5

3

8

O2,2

2

8

4

9

3

O2,3

9

5

1

2

4

O3,1

1

8

9

3

2

O3,2

5

9

2

4

3

Fig.3. The flow chart of TRIBES Figure 4. The mapping between particle and FJSSP

To summarize, the TRIBES algorithm, presented in Fig.3, consists of following steps: • Step1 (initialization of the swarm): at the beginning, the swarm is composed of only one particle which belongs to the tribe number one. •

Step2 (Evaluation of each particle): calculate the fitness of each particle.



Step3 (Swarm moves): adapt the displacement strategies (simple pivot, noisy pivot) of each particle according to its quality.



Step4 (Adaptation scheme): apply the previously described structural adaptation rules after every (NL / 2) iterations (where NL is the number of links in the swarm).



Step5 (Stopping criterion): usually, the stopping criterion is a maximum number of objective function evaluations or a maximum number of iterations. If the stopping criterion is not met, go to Step2.

The first and second half of the first row of Figure 4 represent operations as a repetition of jobs. For (1,1,1) (O1 ,1 ,O1 ,2 ,O1 ,3 ) example represents ,(2,2,2)represents (O 2 ,1 ,O 2 ,2 ,O 2 ,3 ) , and so on. The second row of Figure 4 represents particle’s position or the rational solution. Each dimension for the first half of this row maps one operation and each dimension of the second half of this row maps one machine. The smallest component of the particle’s position in the first half of the second row of Figure 4 is -8 which J corresponds to job 1, thus 1 is scheduled first. The second smallest component of the particle’s position is -5,2 which J corresponds to job 2, therefore 2 is the second job in ordering, etc. The second half of the second row of Figure 4 [ 0, m ] that indicates contains a random number in the interval after being rounded to its nearest integer number, the machine to which an operation is assigned during the course of TRIBES. The first half of the third row of Figure 4 indicates the sequence of jobs in the ordering and the second

half indicates the corresponding machines. The first half of the last row of Figure 4 indicates operations and the second half indicates starting times. In conclusion, the particle itself presents a discrete solution as shown in the third and last row O, J of Figure 4: First, the operation 1 1 of job 1 is executed by M1 O , J M1 t =1 at t = 0 , then 2 1 of job 2 is executed by at , and so on. 5.2 TRIBES for combinatorial problems Theoretically, because of the use of hyper-spheres, application of moving strategies is restricted to search spaces which have a distance defined on them. For combinatorial problems, we need to consider each dimension independently. We can define a strategy that is inspired by classical PSO, but using independent Gaussian distributions. For each dimension d, the new value of the position component is computed as follows:

nature is varied enough according to the performance of resources, their flexibility and the number of the precedence constraints. So, cases of parallel machine problems, where all machines have the same performance, have been also tested. We also studied total and partial flexibility cases when machines presented variable performances. As results to the simulations, the found solutions are generally of a good quality. It is noted while comparing them with the existing approaches in the literature and also while comparing obtained values of the criterion with the computed lower bounds. To illustrate the effectiveness and performance of the approach proposed in this paper, we choose to present a solution (see Fig.5) to the instance 1 presented in Table 1 and solutions in the literature (Table 2) of instance 2 (8J,8M,27O) described in Table 3.

­v d = x (t )d − x (t − 1)d ° °δ i = p i ,d − x (t )d °δ g = p g ,d − x (t )d (3) ® ° §v d + gauss _ rand (δ i , δ i 2 ) + · ° x (t + 1) = x (t ) + χ ¨ ¸ d d ° ¨ gauss _ rand δ g , δ g 2 ¸ © ¹ ¯

(

)

Where

­φ = 2 0,97225 ° (4) ® 2 °¯ χ = 1 φ − 1 + φ − 2φ

(

)

Where the rand_gauss(m,s) function generates a number under the normal distribution with a mean m and a standard deviation s Clerc (2003). In the original TRIBES, no local search is needed since the particle position, which is a real form, is adequate to obtain very good solution quality, but for combinatorial problems, a local search engine is needed. For flexible job shop scheduling problem, in the hope to improve the solution quality, local search strategies are carefully included in some segments of the TRIBES procedure in order to be effective. Local search engine is inserted in the following positions Onwubolu (2004): after initialization, when swarm moves, during adaptation, when there is no enough improvement, and before every new iteration after adaptation. 6. NUMERICAL RESULTS TRIBES, is an autonomous optimization approach that does not need any parameters at all, except of course, the ones defining the problem. In the work reported in this paper, TRIBES has been implemented using C++ language and runs on Intel Pentium ®M personal computer. Different instances of the present problem have been chosen to test TRIBES algorithm, in order to ensure certain diversity. These instances present a number of operations between 8 and 56 (the number of jobs is between 3 and 15) and a number of resources between 4 and 10 machines. The studied problem

Fig.5.Solution of instance 1 2

0

2



2 

0

2

0

2



2

2

2

2

0

2

0 0



2

0

2

0

2 

2

2 

2 2

2 2

2 2 2











Fig.6.Solution of instance 2 Table 2.Solutions in literature Instance 1

Instance 2

BCr (lower bound)

4

12

Cmax in Our work

5

14

Cmax in kacem (2003)

5

15



Table 3. Processing time of operations (instance 2) M1

M2

M3

M4

M5

M6

M7

M8

O1,1

5

3

5

3

3

0

10

9

O1,2

10

0

5

8

3

9

9

6

O1,3

0

10

0

5

6

2

4

5

O2,1

5

7

3

9

8

0

9

0

O2,2

0

8

5

2

6

7

10

9

O2,3

0

10

0

5

6

4

1

7

O2,4

10

8

9

6

4

7

0

0

O3,1

10

0

0

7

6

5

2

4

O3,2

0

10

6

4

8

9

10

0

O3,3

1

4

5

6

0

10

0

7

O4,1

3

1

6

5

9

7

8

4

O4,2

12

11

9

O4,3

4

6

O5,1

3

6

O5,2

10

0

7

4

9

8

6

0

O5,3

0

9

8

7

4

2

7

0

O5,4

11

9

0

6

7

5

3

6

O6,1

6

7

1

4

6

9

0

10

O6,2

11

0

9

9

9

7

6

4

O6,3

10

5

9

10

11

0

10

0

O7,1

5

4

2

6

7

0

10

0

O7,2

0

9

0

9

11

9

10

5

O7,3

0

8

9

3

8

6

0

10

O8,1

2

8

5

9

0

4

0

10

O8,2

7

4

7

8

9

0

10

0

O8,3

9

9

0

8

5

6

7

1

O8,4

9

0

3

7

1

5

8

0

7 2 7

8

10

5

6

10

3

9

5

7

8

9

0

10

0

7. CONCLUSIONS The present study proposes a new global optimization algorithm TRIBES for solving the flexible job shop scheduling problem. The main highlighting features in TRIBES are: It does not require tuning and it adapts the number of particles and the topology of particle neighborhoods based on the performance of the swarm. Comparing results from the present autonomous optimization heuristic, TRIBES, and some results reported in Kacem (2003), demonstrates that the present approach is very encouraging. Ongoing research involves the application of TRIBES to complex multi-objective scheduling problems. REFERENCES Chen. K,Li. T, and Cao. T.(2006). Tribes-PSO: A novel global optimization algorithm and its application in molecular docking, Chemometrics Intell.Lab.Syst., vol.82, n°1-2, pp.248-259. Clerc. M.(2003). TRIBES. Un exemple d’optimisation par essaim particulaire sans parameters de contrôle, OEP’03, October 2, Paris, France. Clerc.M.(2005). L’optimsation par essaims particulaires, versions paramètriques et adaptatives. Edition Hermès, Lavoisier.

Coelho. L.D.S, and Alotto. P.(2009). Tribes optimization algorithm applied to the Loney’s Solenoid, IEEE Transactions on Magnetics., vol. 45, n°3. Cooren.Y.(2008). Perfectionnement d’un algorithme adaptatif d’optimisation par essaim particulaire. Applications en génie médical et en électronique. Thesis, Paris 12 University. Cooren. Y, Clerc. M, and Siarry. P. (2008). Optimisation par essaim particulaire améliorée par hybridation avec un algorithme à estimation de distribution, e-STA, volume 5, n°1, pp. 21-27. Dupas. R.(2004). Amelioration de performances des systèmes de production : apport des algorithmes évolutionnistes aux problèmes d’ordonnancement cycliques et flexibles, Habilitation, Artois university. Grobler. J.(2008). Particle swarm optimization and differential evolution for multi-objective multiple machine scheduling, Master of engineering, Pretoria university. Kacem. I.(2003). Ordonnancement multicritère des jobsshops flexibles:formulation, bornes inférieures et approche évolutionniste cooperative, thesis University of Lille France. Kennedy.J, and Eberhart R.C.(1995). Particle swarm optimization, IEEE International Conference on Neural Networks (Perth, Australia), IEEE Service Center, Piscataway, NJ, pp. 1942–1948. Liu. H, Abraham. A, Grosan. C, and Li. N.(2007). A novel variable neighborhood particle swarm optimization for multi-objective flexible job shop scheduling problems, ICDIM’07, Lyon, France. Mekni. S., Fayech. B. Chaâr, and Ksouri. M. (2008). A novel particle swarm optimization approach for multi-objective flexible job shop scheduling problem, ICINCO’08, International Conference on Informatics in Control, Automation and Robotics, pp.225-230. Mendes. R.(2004). Population topologies and their influence in particle swarm performance. Thesis, Minho university, Portugal, (April 21). Onwubolu. G.C.(2004). Tribes application to the flow shop scheduling, in New Optimization techniques in Engineering, G.C.Ownubolu and B.V.Babu, Eds. Berlin, Germany:Springer-Verlag,pp.515-535. Onwubolu. G.C.(2005). Optimization of milling operations for the selection of cutting conditions using Tribes, Proc.IMechE Vol.219 PartB:J.Engineering Manufacture, pp.761-771. Tasgetiren. M.F.,Sevkli. M,Liang. Y.C, and Gencyilmaz. G.(2004). Particle swarm optimization algorithm for single machine total tardiness problem, IEEE. Tasgetiren. M. F, Sevkli. M., Liang. Y.C, and Yenisey. M.M.(2006). Particle swarm optimization and differential evolution algorithms for job shop scheduling problem, International Journal of Operational Research, vol.3, n°2, pp.120-135. Xia. W, and Wu. Z. (2005). An effective hybrid optimization approach for multi-objective flexible job shop scheduling problems, Computers and Industrial Engineering, 48:pp.409-425.