A Genetic Algorithm and Tabu Search for Multi Objective ... - CiteSeerX

3 downloads 0 Views 404KB Size Report
A Genetic Algorithm and Tabu Search for Multi Objective Flexible Job Shop. Scheduling Problems. Guohui Zhang1, Liang Gao2, Yang Shi2. 1 Zhengzhou ...
A Genetic Algorithm and Tabu Search for Multi Objective Flexible Job Shop Scheduling Problems Guohui Zhang1, Liang Gao2, Yang Shi2 1

Zhengzhou Institute of Aeronautical Industry Management school of management science & engineering Zhengzhou, China, 450015 [email protected]

Abstract—Flexible job shop scheduling problem (FJSP) is an important extension of the classical job shop scheduling problem, where the same operation could be processed on more than one machine. Owing to the high computational complexity, it is quite difficult to achieve an optimal solution with traditional optimization approaches. An improved genetic algorithm combined with tabu search is proposed to solve the multi objective FJSP in this paper. An external memory of non-dominated solutions is adopted to save and update the non-dominated solutions during the optimization process. Benchmark problems are used to evaluate and study the performance of the proposed algorithm. Computational results show that the proposed algorithm is efficient and effective approach for the multi objective FJSP. Keywords-flexible jos shop scheduling; genetic algorithm; tabu search; multi objective

I.

INTRODUCTION

Flexible job shop scheduling problem is very important in both fields of production management and combinatorial optimization. In the real manufacturing systems, an operation could be allocated to a suitable machine from an alternative machines set. It is known as the Flexible Job-shop Scheduling Problem (FJSP). The FJSP is a generalization of the classical job shop scheduling problem (JSP) for flexible manufacturing systems. Each machine may be capable of performing more than one type of operations, i.e., for a given operation, there must exist at least one machine capable of performing it. The problem of scheduling jobs in FJSP could be decomposed into two sub-problems: the routing subproblem, which is assigning each operation to a machine selected out of a set of capable machines and the scheduling sub-problem, which consists of sequencing the assigned operations on all machines in order to obtain a feasible schedule minimizing the predefined objective function. Because of the additional need to determine the assignment of operations to the machines, the computational complexity of FJSP is more than JSP. The general JSP is strongly NPhard, the multi objective FJSP is strongly NP-hard and combinatorial too. In the literature, different approaches have been proposed to solve this problem. Bruker and Schile [1] develop a polynomial graphical algorithm for a two jobs problem. However exact algorithms are not effective for solving FJSP

2

Huazhong University of Science & Technology The State Key Laboratory of Digital Manufacturing Equipment and Technology Wuhan, China, 430074 [email protected]

and for large instances. Many studies have focused on developing heuristic procedures such as dispatching rules, local search and meta-heuristics such as tabu search (TS), simulated annealing (SA), genetic algorithm (GA) and particle swarm optimization (PSO) in recent years for FJSP. Chen et al. [2] used genetic algorithm with new chromosome representation to solve FJSP. Kacem et al. [3] used tasks sequencing list coding scheme and developed an approach by localization (AL) to find promising initial assignment. Xia and Wu [4] proposed a hybrid algorithm combining PSO with SA to solve the multi objective FJSP. Gao et al. [5] also proposed a hybrid algorithm of GA and variable search descent for the FJSP. Pezzella et al. [6] integrate different strategies for generating the initial population, selecting the individuals for reproduction and reproducing new individuals. Zhang [7] applied a hybrid algorithm of PSO and TS as a local search algorithm to solve the multi objective FJSP. In this paper, an improved genetic algorithm combined with tabu search as a local search algorithm is proposed to solve the multi objective FJSP. The hybrid algorithm could keep the balance between the diversification and the intensification during the search process, and counterbalance the shortcomings of single algorithm. An external memory of non-dominated solutions is adopted to save and update the non-dominated solutions during the optimization process. The rest of the paper is organized as follows: the problem description is introduced in section “PROBLEM DESCRIPTION”. Section “GA and TS for MFJSP” presents the proposed efficient search method. In section “HYBRID ALGORITHM FRAMEWORK” presents the framework of the proposed hybrid algorithm. In the last section “COMPUTATIONAL RESULTS”, computational experiments performed with our proposed approach are reported followed by the comparison to other heuristic methods. Some concluding remarks are made in section “CONCLUSIONS”. II.

PROBLEM DESCRIPTION

A. Flexible Job Shop Scheduling Problem The flexible job shop scheduling problem could be formulated as follows. There are a set of N jobs J = { J1 , J 2 ,… J i ,… , J N } and a set of M machines

M = {M 1 , M 2 ,… , M j ,… , M M } . Each job J i consists of a

predetermined sequence of operations. For each operation, there is a set of alternative machines set Mij of performing it. The processing time of an operation Oij on each machine is predefined. Each operation could not be interrupted during its performance. And each machine could perform at most one operation at any time. Hypotheses considered in this paper are summarized as follows: (1) All machines are available at time 0; (2) All jobs are released at time 0; (3) Each machine can process only one operation at a time; (4) Each operation can be processed without interruption on one of a set of available machines; (5) Recirculation occurs when a job could visit a machine more than once; (6) The order of operations for each job is predefined and cannot be modified. According to Kacem et al. [3], If M ij ⊂ M , then it has partial flexibility, it is partial FJSP (P-FJSP). Each operation could be processed on one machine of subset of M. If M ij = M , then it has total flexibility, it is total FJSP (TFJSP). Each operation could be processed on any machine of M. With the same number of machines and jobs, the P-FJSP is more difficult to solve than the T-FJSP [3]. In order to describe the algorithm more easily, we give an illustrative instance of FJSP. In Table 1, there are 2 jobs and 5 machines. In the table, the “-” means that the machine can't execute the corresponding operation, i.e., it does not belong to the subset of compatible machines for that operation. This instance has partial flexibility, it presents a P-FJSP. TABLE I.

Job J1 J2

Operation O11 O12 O21 O22 O23

AN INSTANCE OF FJSP

M1 2 — 3 4 —

M2 6 8 — 6 7

M3 5 — 6 5 11

M4 3 4 — — 5

M5 4 — 5 — 8

B. Multi Objective Optimization A general multi objective optimization problem consists of a number of objectives and is associated with a number of inequality and equality constraints. In a minimization multi objective problem, denote x is a p dimensional vector having p design or decision variables. When no value of x(2) is less than x(1) and at least one value of x(2) is strictly greater than x(1), then we could say that the solution x(1) dominate solution x(2). Otherwise, the solution x(1) and solution x(2) are non-dominated solutions. The optimal solutions to a multi objective optimization problem are non-dominated solutions. Let's consider a bi-objective functions minimization, f1(x) and f2(x). From the figure 1, it could be easily seen that the

solution f(a) dominates the solution f(b). And, the solution f(a) do not dominate the solution f(c).

Figure 1. Relationship among the solutions in the bi-objective problem

In this paper, the considered objective functions are to minimize the following criteria: (1) CM the maximal completion time of machines, i.e., the makespan (2) WM the maximal machine workload, i.e., the maximum working time spent at any machine (3) WT the total workload of machines, which represents the total working time over all machines The conflict between the three objectives is not as serious as in most other multi objective optimization problems. Therefore, in our paper, the three objectives are transformed into a weighted sum. And, the weight of the makespan objective is set a very large weight because it is the most important criterion in practical production environments, the other two objectives heavily depend on it. III.

GA AND TS FOR MFJSP

The advantage of GA with respect to other local search algorithms is due to the fact that more strategies could be adopted together to find good individuals to keep the balance between the diversification and the intensification during the search process. A. Representation of Individuals Better chromosome representation is well designed, no infeasible solutions will be produced after genetic recombination and the algorithm could expect to be more efficient through avoiding the use of a repair mechanism. An efficient representation of the individuals which respects all constraints of FJSP is adopted. Our chromosome representation (called MSOS) has two components: Machine Selection (MS) and Operation Sequence (OS). Machine selection part: An array of integer values is used to present machine selection. The length L is the sum of all operations of all jobs. Each integer value equals to the index of alternative machines set of each operation. For instance, in figure 2, M2 is selected to process operation O12 because the index in the alternative machines set of processing operation O12 is 1. If only one machine could be selected to some operations, the value is 1 in the machine selection array. Operation sequence part: The operation-based representation is used. All operations for a job with the same symbol are defined and then interpret them according to the order of occurrence in the sequence of a given chromosome.

The length is L too. It can avoid creating an infeasible schedule through replacing each operation by the corresponding job index. In Table 1, J1 has two operations O11, O12; J2 has three operations O21, O22, O23. In figure 2, reading the data from left to right and increasing operation index of each job, the operation sequence 2-2-1-1-2 depicted could be translated into a list of ordered operations: O21-O22O11-O12-O23.

Figure 3. The mutation of MS

Operation Sequence Part: If one position in the OS chromosome is to be mutated, then another position is randomly generated in [0, L-1] to exchange with it. According to our chromosome representation, the new individual is a feasible solution all the same. Figure 2. Chromosome representation

B. Crossover The goal of the crossover is to obtain better chromosomes to improve the result. A crossover operation is applied to each pair of the chromosomes to obtain two new chromosomes by exchanging information contained in the current good ones. In this study, two kinds of crossover operator were carried out for both MS and OS respectively. Machine Selection Part: The crossover operator of MS only performs on two machine selection parts. The twopoint crossover operator was adopted. Two unequal integer positions l1 and l2 along the strings are selected uniformly at random between [0, L-1]. Then all integers between positions l1 and l2 are swapped inclusively. For we only changes some elements' value, their preceding constraints are not be changed. Therefore, the individuals after crossover operation are also all feasible. Operation Sequence Part: The coding of OS is based on operation-representation. The each value in the OS is equal to the index of each job. Thus, in this study, an improved Precedence Preserving Order-based crossover (POX) for the operation sequence is adopted. The process of POX is detailed as in [8]. C. Mutation Mutation usually works on a single chromosome and creates another chromosome through alteration of the value of a string position or exchange of the values of two string positions in order to maintain the diversity of population. Because large probability may destroy the well chromosome. Usually, mutation probability is used with small probability. Machine Selection Part: MS mutation operator only changes the assignment property of the chromosomes. One machine is selected from alternative machine set to replace current machine. If the number of alternative machines of some one operation is only one, the value in MS is 1. In Figure 3, if the operation O23 is chosen for mutation, the alternative machine set is M23={M2, M3, M4, M5}, and the corresponding index is {1,2,3,4}. Before mutation, the index of processing O23 is 4 in the alternative machines set (that is the M5). According to the alternative machine set, the value could rang from 1 to 4. Suppose the value is equal to 2 after mutation, then the machine of processing O23 is M3.

D. The tabu search algorithm The convergence speed of simple GA is relatively slow. A good local search method is adopted to improve the quality of individuals of GA before injecting them into the population and strengthen the local search ability. Tabu search is one of the most efficient local search strategies for scheduling problems. It consists of several elements called the specification of a neighborhood structures, the move attributes, the tabu list length, aspiration criterion and stopping rules. In this study, TS is adopted for local search strategy. At the same time, we choose the neighborhood II used in [9]. This neighborhood function is very efficient and very easy to implement. Besides, the operation process of the TS adopted as in [8].

IV.

HYBRID ALGORITHM FRAMEWORK

Tabu Search is inserted to the scheme of genetic algorithm to keep the balance of the diversification and the intensification during the search process. The flowchart of the proposed hybrid algorithm is shown in Figure 4.

Figure 4. The flowchart of the proposed hybrid algorithm

During the operation process, the initialization population is firstly generated by randomly. Then, each individual in the population is evaluated. If the stop criterion is met, the nondominated solution is output. Otherwise, the three objectives of each individual are transferred to a weighted sum, and select individual to crossover by crossover operator. Mutation operator is executed according to probability. Current individual in the population performs local search

using TS. The new population is generated. At the same time, update the solutions in the external memory. The stop criteria is that the max iteration generation is reached. The solution in the external memory is output when the algorithm meets the stop criteria. For the FJSP problem, a number of solutions with different maximal work-loads or total workloads may have the same makespan. From this point of view, when the external memory is updated, we firstly find the solutions with the minimum makespan. Then minimize the maximal workload and the total workload in the presence of the minimum makespan. V.

COMPUTATIONAL RESULTS

In order to evaluate the performance of the proposed algorithm, benchmark problems have tested. The proposed algorithm was implemented in C++ on a Pentium IV running at 1.8 GHz, and the data set from Kacem et al. [3] which includes three test problems. In order to evaluate the efficacy, the test problems were run 5 times consecutively. TABLE II.

THE COMPUTATIONAL RESULTS

Problem n×m

Objective CM

15

16

15

8×8

WM

N/A

N/A

12

79

75

75

10×10

WT CM WM WT

15×10

AL+CGA

PSO+SA

in which the algorithms were first proposed. From the computational results, it could prove that our proposed algorithm is effective. And, the Gantt chart of the problem 15×10 solution is shown in Figure 5. VI.

In this paper, the two traditional meta-heuristic algorithms of GA and TS are combined to solve the multi objective FJSP. TS is executed to improve the ability of the local search. The hybrid algorithm could keep the balance between the diversification and the intensification during the search process. An external memory is adopted to save and update the non-dominated solutions during the optimization process. Benchmark problems are used to evaluate and study the performance of the proposed algorithm. Computational results show that the proposed algorithm is efficient and effective approach for the multi objective FJSP. In the future, design more effective local search strategy is remarkable. ACKNOWLEDGMENT This project is supported by 863 High Technology Plan Foundation of China under Grant No.2006AA04Z131. And we wish to thank the anonymous referees for their constructive and useful comments.

hGA

HGATS

16

14

14

13

12

12

[1]

73

[2]

7 5 45

7 6 44

77 7 5 43

77 7 6 42

CM WM

24 11

12 11

11 11

11 11

WT

91

91

91

91

REFERENCES

[3]

[4]

[5]

[6]

[7] Figure 5. The Gantt chart of Problem 15×10

Table II gives the performance of the proposed method compared with other algorithms. n×m denotes the jobs and machines about the each instance. “AL+CGA” is the algorithm by Kacem et al. [3]. “PSO+SA” is the algorithm by Xia and Wu [4]. “hGA” is the algorithm by Gao et al. [5]. And the “HGATS” is our proposed effective hybrid algorithm of GA and TS. The computational results of the compared algorithms are cited from the original literatures

CONCLUSIONSE

[8]

[9]

P. Brucker and R. Schile, “Job-shop scheduling with multi-purpose machines”, Computing, vol. 45, Dec. 1990, pp. 369–375, doi: 10.1007/BF02238804. H. Chen, J. Ihlow and C. Lehmann, “A genetic algorithm for flexible job-shop scheduling”, Proc. IEEE International conference on Robotics and Automation, Detroit, 1999, pp. 1120-1125, doi: 10.1109/ROBOT.1999.772512. I. Kacem, S. Hammadi, and P. Borne, “Pareto-optimality approach for flexible job-shop scheduling problems: Hybridization of evolutionary algorithms and fuzzy logic”, Mathematics and Computers in Simulation, vol. 60, Sept. 2002, pp. 245-276, doi: 10.1016/S0378-4754 (02) 00019-8. W. Xia and Z. Wu, “An effective hybrid optimization approach for multi-objective flexible job-shop scheduling problem”, Computer & Industrial Engineering, vol, 48, Mar. 2005, pp. 409-425, doi: 10.1016/j.cie.2005.01.018. J. Gao, L. Y. Sun and M. Gen, “A hybrid genetic and variable neighborhood descent algorithm for flexible job shop scheduling problems”, Computer & Operations Research, vol, 35, Sept. 2007, pp. 2892-2907, doi: 10.1016/j.cor.2007.01.001. F. Pezzella, G. Morganti and G. Ciaschetti, “A genetic algorithm for the flexible job-shop scheduling problem”, Computers & Operations Research, vol, 35, Oct. 2008, pp. 3202-3212, doi: 10.1016/j.cor.2007.02.014. G. H. Zhang, X. Y. Shao, P. G. Li and L. Gao, “An effective hybrid particle swarm optimization algorithm for multi-objective flexible job-shop scheduling problem”, Computer & Industrial Engineering, vol, 56, May. 2009, pp. 1309-1318, doi: 10.1016/j.cie.2008.07.021. G. H. Zhang, Y. Shi and L. Gao, “A Genetic Algorithm and Tabu Search for Solving Flexible Job Shop Schedules,” Proc. IEEE Symp. Computational Intelligence and Design (ISCID 08), IEEE Press, Oct. 2008, pp. 369-372, doi: 10.1109/ISCID.2008.202. G. H. Zhang, L. Gao, et al.,“Variable neighborhood genetic algorithm for the flexible job shop scheduling problems,” Proc. Intelligent Robotics and Applications (ICIRA 08), LNCS Press, Oct. 2008, pp. 503-512,doi:10.1007/978-3-540-88518-4-54.