International Journal of Industrial Engineering & Production Research (2010) pp.97-104 Int September 2010, Volume 21, Number 2 International Journal of Industrial Engineering & Production Research ISSN: 2008-4889 http://IJIEPR.iust.ac.ir/ http ://IJIEPR A Mathematical Programming Model for Flow Shop Scheduling Problems for Considering Just in Time Production R. Ramezanian, M.B. Aryanezhad & M. Heydari* R. Ramezanian: MSc in Department of Industrial Engineering, Iran University of Science and Technology. M.B. Ariyanezhad: Professor in Department of Industrial Engineering, Iran University of Science and Technology. M. Heydari: Assistant Professor in Department of Industrial Engineering, Iran University of Science and Technology. KEYWORDS Flow Shop Scheduling, Bypass, Mathematical Programming, Meta-heuristic Algorithm ABSTRACT In this paper, we consider a flow shop scheduling problem with bypass consideration for minimizing the sum of earliness and tardiness costs. We propose a new mathematical modeling to formulate this problem. There are several constraints which are involved in our modeling such as the due date of jobs, the job ready times, the earliness and the tardiness cost of jobs, and so on. We apply adapted genetic algorithm based on bypass consideration to solve the problem. The basic parameters of this meta-heuristic are briefly discussed in this paper. Also a computational experiment is conducted to evaluate the performance of the implemented methods. The implemented algorithm can be used to solve large scale flow shop scheduling problem with bypass effectively. © 2010 IUST Publication, IJIEPR, Vol. 21, No. 2, All Rights Reserved. 1. Introduction Production scheduling is a decision-making process in the operation class. It can be defined as the allocation of available production resources to carry out certain tasks in an efficient way. Such a frequently occurring scheduling problem is difficult to solve due to its complex nature. This paper is primarily concerned with industrial scheduling problems, where one has to sequence the jobs on each resource over time. In a flow shop environment, a set of jobs must be processed on a number of sequential machines, processing routes of all jobs are the same, that is the operations of any job are processed in the same order, whereas a flow shop with bypass model, a generalization of the ordinary flow shop model, is Corresponding author. M. Heydari
[email protected] [email protected] Paper first received May. 17. 2009 ,and in revised form Oct. 27. 2010. Email:
[email protected] more realistic, and it assumes that at least one job does not visit one machine. Moreover, a machine can process at most one job at a time and a job can be processed by at most one machine at a time. Preemption of processing is not allowed. The problem consists of sequencing the jobs to the each machine so that some optimality criteria are minimized. Since flow shop as well as job shop problems with few exceptions have been proved to be NP-hard [1], heuristic procedures are the most suitable ones for their solution, especially for large-size instances. Several approaches and models are proposed to solve the scheduling problem, namely the discrete variable mathematical programming, simulation techniques and the network analysis. Johnson [2] was the first to propose a method to solve the scheduling problem in a flow shop production environment for a single criterion context. His algorithm has been utilized by other researchers, including, for instance, Palmer [3], Campbell et al. [4], Gupta [5], Gupta et al. [6] and Tadei et al. [7]. Flow shop scheduling with the makespan objective has been investigated for instance, Cij . 0 otherwise. [10]. then on machine 2. Some jobs may not process on some machines so the processing time of them on that machines are zero (missing operations).. Simons [8]. . For instance. One machine can process at most one job at a time. Hj(Ej). where some jobs do not require processing on the some machines. [9]. M. and so on. Each job is processed on at most one machine at a time. Problem Description In the flow shop scheduling problem (FSSP) there are m machines in series. [14]. Lauff and Werner [12]. we are not the first who observed the phenomenon of "bypass". as observed by Leisten and Kolbe [13].3. each machine can process at most one job and each job can be processed on at most one machine. 0} Tj: Tardiness of job j Yihj: A binary variable that is equal to 1 if job j is processed immediately after job h when processing on machine i. Huq et al. Heydari A Mathematical Programming Model for Flow … Job descriptions are known in advance. [11].. Every single job has to be processed on each machine. The fact that the computational complexity of a more general problem (admitting missing operations) may be much harder than that of the corresponding problem without missing operations was the subject of some previous papers known in the literature. 3-2. Mathematical Formulation 3-1. βj(Tj) is as follow. Machine is available at all times. Actually. Decision Variables Sij : Starting time of job j on machine i Cij : Completion time of job j on machine i Ej= max {dj . The objective is to minimize the maximum completion time. M: A large constant (M→∞) 3. No more than one operation of the same job can be executed at a time. The FSSP with bypass can be described as follows: Each of n jobs from set J={1. The processing times are independent of the sequence and are given. and the tardiness cost. The objective is to minimize the sum of earliness and tardiness costs. All programming parameters are deterministic and there is no randomness. Flow shop scheduling with the sum of earliness and tardiness costs objective has been investigated for instance. 2.. Jobs have no associated priority values. Glass et al. The earliness cost could represent the inventory cost for early finished stocks.2.. A job has some operations that each of them is to be performed on a specified machine. jobs are available for processing at a stage immediately after completing processing at the previous stage. Ramezanian. We consider the scheduling of n jobs in a m machine flow shop. Operation Oij corresponds to the processing of job j on machine i during an uninterrupted processing time tij (processing time tij can be zero). Jobs are allowed to wait between two stages. Zobolas et al.. 0 otherwise. or makespan.m). Any breakdowns and scheduled maintenance are not allowed. Setup times for the operations are sequenceindependent and are included in processing times. [14] considers the no-wait scheduling of n jobs in a two-machine flow shop. At any time. All jobs have to follow the same route i. Parameters n: Number of jobs m: Number of machines i: Machine index j. and the storage is unlimited. 0} Ej: Earliness of job j Tj= max { Cij – dj . Job j ∈ J has a sequence of lj operations through a subset m machines (jobs may have zero processing time on some machines) and a given due date dj.B. There is only one of each type of machine. n} will be sequenced through m machines (i=1. they have to be processed first on machine 1.98 R.. General Assumption All n jobs to schedule are independent and are not available for processing at time zero. once started on a machine. continues in processing until it is completed. and the tardiness cost could represent the penalty cost for the late delivery. bulbul et al.h: Job index tij: Processing time of job j on machine i Rj: Release date of job j dj: Due date of job j Hj: Holding (earliness) of job j per time unit βj: Shortage (tardiness) cost of job j per time unit δij: A binary parameter that is equal to 1 if job j is not processed on machine i. where some jobs require processing on the first machine only. The flow shop scheduling problem with bypass consideration can be interpreted as a generalization of the classical flow shop model which is more realistic and assumes at least one job does not visit one machine.. The mathematical model for minimizing of the earliness cost. There is no precedence constraint among the jobs. 3.. Glass et al. (bypass).e.. Just in time concept for the scheduling environment can be provided by considering minimization of the sum of earliness and tardiness costs as the objective function. 2. Aryanezhad & M. Preemption and splitting of any particular job is not allowed: a job. There is no travel time between stages. j 9 10 11 12 13 14 h =1 The optimum sequence of jobs on machines for minimizing the sum of earliness and tardiness costs is shown in Fig. j. its completion time is the same as completion time on previous machine). h The objective function (1) considers the minimization of the earliness cost and the tardiness cost and the considered objective function provides just in time production in manufacturing systems.B.. The constraint set (13) insures that the job finishing times on the first machine to be after job release times (if job j does not require processing on the first machine. j = 1. the completion time of jobs do not necessarily determine on the last machine. ∀i. 1 Processing times and other data Machine 1 2 7 0 0 3 1 1 3 R 2 4 3 d 14 8 6 H 3 2 4 β 2 3 3 1 2 3 5 3 1 n j=1 Yihj ≤ (1 − δih ) M. ∀ j C1 j ≥ R j ..... ∀i. ∀i.. Job 2 and 3 do not require processing on the machine 2 and they can process on machine 3 right after their process completed on machine 1. ∀ j Yijh = {0. ∀ i. Processing time of each job on each machine and other data is given in table 1.. C1j=Rj. h Yihj ≤ 1. Ramezanian. ∀j C ij = δ ijC (i−1) j + (1 − δ ij )(Sij + t ij ). Heydari A Mathematical Programming Model for Flow … 99 min z = ∑ n j=1 (H j E j + β j T j ) 1 C mj + E j − Tj = d j . The constraint sets (6-11) determine sequence of jobs for any machine. but in our model the completion time of each job –that may occur on any machine – transferred on the last machine by considering a δij. Yihj ≤ 1 − Yijh .. i = 2.. δ23=0) but our model considers a virtual completion time for them on this machine (see the constraint set 3).. n 2 3 S(i+1) j ≥ Cij . n 4 Sij ≥ (Cih − (1 − Yihj )M)(1 − δij ). M. m − 1. The constraint set (5) forces to start the processing of each job only when its precedent job has been completed on the same machine. (14) is logical constraint. Consider a flow shop scheduling problem with bypass consideration with three jobs and three machines. 1.. Fig. j = 1. ∀i. j. m. h 5 ∑ ∑ n j=1 Yijj =0. Aryanezhad & M. i = 1.. The constraint set (12) bounds the job starting times to be after job release times in the system..R.1}. ∀i 6 The constraint set (4) forces to start the processing of each job only when it has been completed on the precedent machine. It must be noticed that when there is the bypass condition. 1 Gant chart of sequence vector on machines (objective function = 15) Although job 2 and 3 do not require processing on the machine 2 (δ22=1. The constraint set (3) corresponds to the computation of the completion time of job (if job j is not processed on machine i. Tab. ∀i 8 Job ∑ ∑ n j=1 n Yihj ≤ 1. ∀i. The constraint set (2) determines earliness and tardiness of each job.. . h 7 n j=1 ∑ ∑ n h =1 n Y (1 − δij ) j=1 ihj ≤ ∑ (1 − δij ) − 1. j. h S1 j ≥ R j . Heydari A Mathematical Programming Model for Flow … 4. Produce a proto-child by copying the substring of job sequence into the corresponding positions. Consider a flow shop scheduling with missing operation problem with 5 jobs and 3 machines (see table 2). M. This mechanism just copies the chosen chromosomes to the next generation. Design of Genes In this paper. chromosomes are chosen randomly for crossover and mutation. Offspring of crossover should represent solutions that combine substructures of their parental solutions.2. each gene is job and the chromosome is job sequence vector on machines. The overall structure of our GA can be described as follows: 1. 5. Step 2. Fitness evaluation: The sum of earliness and tardiness cost is computed for each chromosome in the current generation.2. Initial population: The initial chromosomes are obtained by a Random dispatching rule for sequencing. Each chromosome represents a solution for the problem. The enhanced order crossover expanded from the classical order crossover [16] works as follows: Step1. a virtual priority is assigned that its processing time on the machine is zero. 6. The GA’s structure and parameter setting affect its performance. Based on bypass consideration GA is adapted to consider operation with zero processing time on some machines. Aryanezhad & M. Ramezanian. The resulted sequence of jobs contains the jobs that the proto-child needs. delete the jobs which are in the substring from ith machine of the second parent. and the order in which they appear in the chromosome describes the sequence of Jobs. Tab. where each gene represents a feature of the problem. together with the corresponding schedule. The priorities on machines are generated randomly. named parent 1 and parent 2. New individuals are generated until a fixed maximum number of individuals is reached. Offspring generation: The new generation is obtained by changing the sequencing of operations (reproduction. Step 2. Selection: In any iteration. 2 Processing time data Machine 1 2 1 2 3 4 5 2 0 4 0 1 0 1 2 0 2 3 1 2 1 5 0 Job The job sequence for this example represented in fig. Coding: The genes of the chromosomes describe the jobs. These rules preserve feasibility of new individuals. Stop criterion: Fixed number of generations is reached.100 R. 2.2. 4. Step 3.1. 4.2. Starting with the first position from ith machine of parent 2.2. The GA was proposed by Holland (1975) [15] to encode the factors of a problem by chromosomes. 2 Illustration of the job sequence vector on machines 4. enhanced order crossover and mutation).B. Otherwise. It means that if a job does not be processed on a machine. At first it is supposed that all jobs have a priority on each machine. the algorithm iterates again steps 3–5. Crossover Crossover operator recombines two chromosomes to generate a number of children. Do the following steps for the same machine in selected chromosomes (parent 1 and parent 2): Step 1. Randomly select a subsection of job sequence for ith machine from parent 1. Following is the presented our proposed genetic algorithm. are given as output.2.2. . Place the remaining jobs into the empty positions of the proto-child from left to right according 4. Reproduction The best chromosomes which have a lower fitness function are chosen. the algorithm ends and the best chromosome. The Genetic Algorithm Genetic algorithms have been proven to be powerful techniques for constrained optimization and combinatorial optimization problems. The Genetic Operators 4.1.2. 3. Randomly choose two chromosomes. 2 can be translated into a list of ordered jobs below: Machine I : j 2 f j1 f j 5 f j 3 f j 4 Machine II : j 4 f j1 f j 2 f j 5 f j 3 Machine III : j 3 f j 2 f j 4 f j 5 f j1 Priority (k) job Sequence on machine 1: V1(k) job Sequence on machine 2: V2(k) job Sequence on machine 3: V3(k) 1 2 4 3 2 1 1 2 3 5 2 4 4 3 5 5 5 4 3 1 *Highlight jobs on a machine have zero processing time Fig. Step 4. If the stop criterion is satisfied. 3 and fig. Step 2.022 0. when considered in the general case.46 34 35 36 37 41 49 50 41 2.2.083 12 (hours)** Tardiness of job j Tj= max { Cij – dj . a number of random instances were generated with the following characteristics: 1. n=5.36 2. size =50 (Time: Second) Prob.59 67 68 69 70 45 45 46 49 2. To test the efficiency of the modified genetic algorithm for considering bypass assumption. Holding (earliness) and shortage (tardiness) costs for each job at each stage are chosen randomly from U(15).54 2. the results by using the genetic algorithm is presented in table (4-6). When the size of problem is small both genetic algorithm and LINGO can solve it in a short time. Fitness Function The fitness function is the same as the objective function which defined in section 3. Heydari A Mathematical Programming Model for Flow … 101 to the order of the sequence in the ith machine of second parent. 0} Tj: Hj: Holding cost of job j per time unit βj: Shortage cost of job j per time unit n Fitness Function : ∑ j =1 ( H j E j + β jT j ) Note that the earliness cost could represent the inventory cost for early finished stocks.62 .67 2. Randomly choose two priorities from ith machine of selected chromosome in step 1. there is not a benchmark for the FSSP with bypass. 5.067 1.50 2.R.Cij .1. 4. It is obvious while the problem size is increasing. Release date for each job is chosen randomly from U(0-10). FF Time Prob. Due date for each job is chosen randomly from U(15-30). the adapted GA has the ability to reach stable solutions.67 2.49 2. Replace selected jobs with each other [17. Iteration=100.046 LINGO FF 6 2 3 2 8 18 12 43 69 Time (min) 0.2.027 0. The flow shop scheduling problem.3. 4. Aryanezhad & M.53 2. Ej: Earliness of job j Ej= max {dj . Do the Following steps for the same machine in selected chromosome: Step 2.18].51 2. the efficiency of the genetic algorithm decreases as demonstrated in table 4 and table 5.B. M. Tab.022 0. Population size=50) FF * Time (min) 6 2 3 7 8 18 12 43 40 0.028 0. and the tardiness cost could represent the penalty specified in the contract for the late delivery. Even for problems as small as n = m = 5. 4.022 0. * FF: Fitness function (Sum of the earliness and tardiness costs) * * This problem is interrupted 5.023 0. FF Time Prob.3. the number of As demonstrated in table 3. 0} possible schedules is so large that a direct enumeration is economically impossible. The comparison for small size problems between LINGO and genetic algorithm is shown in table 3. The proposed mathematical model for FSSP with bypass is solved by genetic algorithm as well as LINGO 8. 4. 1 2 3 4 5 6 7 8 9 m 2 3 3 3 4 4 5 5 5 n 5 3 4 5 3 4 2 3 5 GA (Iteration=100. FF Time 1 2 3 4 46 41 41 46 2. Ramezanian. Randomly choose one chromosome.017 0. In the proposed genetic algorithm the lower fitness function is desired. 3. gives (n!)m possible schedules. Step 2. According to fig.017 0.417 0. the adapted genetic algorithm has the ability to reach the optimal solution for small-sized problems. Dimensions of the problem are between (m×n) = (3×3) and (m×n) = (30×30) 2.017 0.032 0. However.44 2. 4. The genetic algorithm was coded with MATLAB R2007(b) and all tests were conducted on a Pentium_IV PC at 3 GHz with 1. Tab. Mutation Our mutation mechanism works as follows: Step 1. The implemented genetic algorithm can efficiently solve the problem in a considerably short time.800 0.510 0. Numerical example for 5 machines and 5 jobs m=5.0GB of RAM. Computational Results In the scheduling literature. Processing time for each job on each machine is chosen randomly from U(0-5). Pop. For large scale problems. Comparison results of GA and LINGO Prob.0. 3. as the size of problem increases the computation time of LINGO increased exponentially.083 0. 103 Range (FF) 479 Mean (Time) 24.72 25.77 24.V.58 2. 5.62 2.61 2.98 24. 3.40 2.40 2.44 2.36 2.45 2. n=5.49 2.23 2.36 2.29 2.35 2.59 2.44 24.93 22.40 2. 11 12 13 14 15 16 17 18 19 20 FF 1443 1666 1256 1501 1212 1210 1232 1403 1645 1380 Time 24.16 22.43 2.757 0.53 2.53 2.55 2. FF Time 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 Min (FF) 41 45 45 45 50 41 45 41 41 49 41 46 46 45 41 41 50 49 45 41 41 49 50 46 41 41 41 45 45 45 Max (FF) 50 2.634 0.V.74 24.62 2.46 2.55 2.39 2. Line chart of table 4 (sum of earliness and tardiness costs) Elapsed time to solve several large-sized problems by proposed GA is given in table 5.09 25.480 0. Iteration=100.50 2. Tab.56 2.47 2.681 1.59 2.076 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 41 45 45 50 41 41 49 46 45 49 45 49 45 45 41 41 41 41 41 49 41 41 46 49 49 50 50 50 49 2.02 22.62 22.53 2.47 2.46 24.52 2. 1 2 3 4 5 6 7 8 9 10 FF 1338 1452 1332 1625 1341 1287 1241 1592 1587 1231 Time 24.53 24.56 2. Ramezanian.36 2. FF Time Prob.60 24.658 0.411 0.30 2.765 0.56 C.32 25.411 2.43 2.68 2.033 0. Numerical example for 10 machines and 10 jobs m=10.64 2.50 22.67 2.56 24. Aryanezhad & M.35 2.50 2.60 2. Line chart of table 4 (Sum of earliness and tardiness costs) .43 2.87 Prob. 1 2 3 4 5 6 7 8 9 10 11 12 m 4 4 4 5 5 5 6 6 8 8 10 10 n 10 15 20 10 15 20 10 15 10 15 10 15 Time (min) 0.77 24.52 2.81 Prob. 4.53 2.44 2.43 2.43 2.52 2.102 R.58 2.72 25.50 2.53 2.47 2.83 24.40 2.40 Mean (FF) 45.38 2.20 24. 5.48 2.32 2.33 24.59 2. Pop.082 Fig. 21 22 23 24 25 26 27 28 29 30 FF 1187 1262 1517 1417 1400 1307 1357 1507 1584 1374 Time 24.55 2.B.44 24.28 2. (FF) 0.95 24.35 2.47 Mean (Time) 2. (FF) 0. Population size=100) Range (FF) 9 Prob.513 0.66 24.25 2.51 2.55 2.04 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 46 41 46 45 41 45 41 41 49 46 49 41 50 49 45 49 45 41 50 50 45 49 41 41 49 41 46 46 49 StDev (FF) 3. size =50 (Time: Second) A Mathematical Programming Model for Flow … Tab.60 2.47 2.42 2.50 2. Heydari m=5.38 2. Iteration=100. Numerical examples of large-sized problem GA (Iteration=100.61 2.49 2.59 2.44 2.63 2. M.60 2. FF Time Prob.2 StDev (FF) 144.61 2.25 24.1 C.58 2.49 2.393 Fig.762 1.49 Min (FF) 1187 Max (FF) 1666 Mean (FF) 1396.56 2.49 2.90 24.327 0.46 2.32 2.70 Prob.47 2.43 2.92 24. Population size =100 (Time: Second) Prob.69 2.48 2. n=10. 323–338. Line chart of elapsed time (Table 5) If we increase the number of machines whilst the number of jobs is fixed. J. [11] Bulbul.801 2. Vol. "Employee Scheduling and Makespan Minimization in a Flow Shop with Multiprocessor work Stations: a Case Study.R. 1954. M. C. 51(3). Croce. "A Heuristic Algorithm for the n-Job. pp. 5).. Vol.489 Further research can be done to use other metaheuristics algorithms such as simulated annealing (SA).I. Fig. pp. 61–68. J.409 0. 2004. and Intermediate Inventory Holding Costs." International Journal Of Production Economics.877 3. Tardiness... [3] Palmer. P. Ioannou. This means that.. 1978. C." Management Science. Cortesi. Vol." Omega. 2004. M... [5] Gupta. "Optimal Scheduling in a Multistage Flowshop. Sahni... 1249 – 1267. H. 1965. 101–107. 1992.. Vol." Operations Research. J. 26. If we increase the number of jobs whilst the number of machine is fixed. solving time according to proposed GA increases piecewise linearly (see fig. "Minimizing Makespan in Permutation Flow Shop Scheduling Problems using a Hybrid Metaheuristic Algorithm. K. Gupta. 16. Aryanezhad & M.. D. 1970. "Flow Shop Scheduling with Earliness. tabu search (TS). Martin. the solution should be improved by applying for instance TS or SA before applying the selection criterion of GA.. [10] Zobolas.D. J.N. . Hybrid algorithms should be developed by using a local search algorithm within a GA. 407-445. R. Vol. Line chart of elapsed time for fix 10 jobs (Table 5) 6. 121–129. Fig. Vol. 49. pp.D. Kaminsky.. 1.. Vol. pp. We proposed genetic algorithm to solve this problem with medium and large size. "Optimal Two and Three Sage Production Schedules with Set-up Time Included. pp... 215–225. "Sequencing Jobs Through a Multistage Process in the Minimum Total Time: A Quick Method of Obtaining a Near Optimum. "Flow Shop and Job Shop Scheduling: Complexity and Approximation. Cutright.S." Naval Research Logistics." Naval Research Logistics Quarterly. 20.R. [4] Campbell. S. 36. Neppall." AIIE Transactions. F..799 1. 6. 1972. C.N. 1998. G." Operation Research Quarterly. R. References [1] Gonzalez. 69. Vol.. G. [2] Johnson. M. 5. we presented a mathematical formulation model for minimizing sum of the earliness and tardiness costs in flow shop scheduling problem with bypass consideration (some jobs may not process on some machines) which is often occurring in shop environment of real world. Vol.D.D. V. 13 14 15 16 17 18 m 10 10 20 20 20 30 n 20 30 10 20 30 30 Time (min) 1.. [9] Huq. m-Machine Sequencing Problem. solving time according to proposed GA increases piecewise linearly (see fig. [8] Simons. pp. 2009. 4.. K. 32. [7] Tadei. [6] Gupta. "Heuristics in Flow Shop Scheduling with Sequence Dependent Setup Times. Werner. T.B.. Dudek. pp.N. 238– 243. pp. "Minimizing Total Flow Time in a Two-Machine Flow-Shop Problem with Minimum Makespan. S. F. Vol. Tarantilis. 6). Ramezanian. 2001. 630–637. after generating an offspring. 77–85. Population size=100) Prob. "Minimising Makespan in the Two-Machine Flow-Shop with Release Times. Computational experiments have been performed to demonstrate that the proposed GA is efficient and flexible. pp. Conclusions In this paper. pp. F. vol..242 1.." Omega.. 16." Computers & Operations Research. Heydari A Mathematical Programming Model for Flow … 103 GA (Iteration=100. ant colony optimization (ACO). 36–52.V.D." Journal of the Operational Research Society. Smith. pp.. Yano. Gen. Werner. Aryanezhad & M. 149–162. R.B. Heydari A Mathematical Programming Model for Flow … [12] Lauff. pp. pp. 53. M. 36(9).." Computers & Industrial Engineering. [14] Glass. 1975. Kolbe. New York: Wiley... C.. Vol... "Two-Machine No-Wait Flow Shop Scheduling with Missing Operations. 24(4).N. Genetic algorithms & engineering design. V.." International Journal of Production Research." In Proceeding of the 16th international conference on computer and industrial engineering. M. Adaptation in natural and artificial systems.. 576–579. 1994. pp. L. Japan. Vol. 911-924. [17] Gao. Tsujimura.. Ann Arbor: University of Michigan Press. [18] Gen.A. 1998. 2007. F." Computers and Operations Research. [16] Gen. 31(3). Cheng.. Potts. 2004. M. Gupta. M. 1997. Sun.N. X. [15] Holland. Vol. "Solving Job-Shop Scheduling Problem Using Genetic Algorithms. R. Ashikaga. "On the Complexity and Some Properties of Multi-Stage Scheduling Problems with Earliness and Tardiness Penalties.H.. Kubota..." Mathematics of Operations Research. Zhao. J. M. "A Note on Scheduling Jobs with Missing Operations in Permutation flow Shops. Vol. 1999.D. pp.. Y. E. pp. 317-345. J. Ramezanian. [13] Leisten.. C. .104 R.. J.. "A Hybrid of Genetic Algorithm and Bottleneck Shifting for Multiobjective Flexible Job Shop Scheduling Problems. 2627-2630.