Scaling Populations of a Genetic Algorithm for Job Shop Scheduling Problems Using MapReduce

Inspired by Darwinian evolution, a genetic algorithm (GA) approach is one popular heuristic method for solving hard problems such as the Job Shop Scheduling Problem (JSSP), which is one of the hardest problems lacking efficient exact solutions today. It is intuitive that the population size of a GA may greatly affect the quality of the solution, but it is unclear what are the effects of having population sizes that are significantly greater than typical experiments. The emergence of MapReduce, a framework running on a cluster of computers that aims to provide large-scale data processing, offers great opportunities to investigate this issue. In this paper, a GA is implemented to scale the population using MapReduce. Experiments are conducted on a large cluster, and population sizes up to 10^7 are inspected. It is shown that larger population sizes not only tend to yield better solutions, but also require fewer generations. Therefore, it is clear that when dealing with a hard problem such as JSSP, an existing GA can be improved by massively scaling up populations with MapReduce, so that the solution can be parallelized and completed in reasonable time.

[1]  E. Nowicki,et al.  A Fast Taboo Search Algorithm for the Job Shop Problem , 1996 .

[2]  Xavier Llorà,et al.  Scaling Genetic Algorithms Using MapReduce , 2009, 2009 Ninth International Conference on Intelligent Systems Design and Applications.

[3]  Tom White,et al.  Hadoop: The Definitive Guide , 2009 .

[4]  S. Luke,et al.  A Comparison of Crossover and Mutation in Genetic Programming , 1997 .

[5]  Geoffrey C. Fox,et al.  Twister: a runtime for iterative MapReduce , 2010, HPDC '10.

[6]  John R. Koza,et al.  Genetic programming - on the programming of computers by means of natural selection , 1993, Complex adaptive systems.

[7]  John E. Beasley,et al.  OR-Library: Distributing Test Problems by Electronic Mail , 1990 .

[8]  C. V. Ramamoorthy,et al.  On the Flow-Shop Sequencing Problem with No Wait in Process † , 1972 .

[9]  Rajkumar Buyya,et al.  MRPGA: An Extension of MapReduce for Parallelizing Genetic Algorithms , 2008, 2008 IEEE Fourth International Conference on eScience.

[10]  Lawrence. Davis,et al.  Handbook Of Genetic Algorithms , 1990 .

[11]  Christian Bierwirth,et al.  On Permutation Representations for Scheduling Problems , 1996, PPSN.

[12]  Ehl Emile Aarts,et al.  Simulated annealing and Boltzmann machines , 2003 .

[13]  Sanjay Ghemawat,et al.  MapReduce: a flexible data processing tool , 2010, CACM.

[14]  E. Alba,et al.  Metaheuristic Procedures for Training Neutral Networks , 2006 .

[15]  Hyung Rim Choi,et al.  A hybrid genetic algorithm for the job shop scheduling problems , 2003, Comput. Ind. Eng..

[16]  Mauricio G. C. Resende,et al.  Discrete Optimization A hybrid genetic algorithm for the job shop scheduling problem , 2005 .

[17]  Carsten Witt,et al.  Population size versus runtime of a simple evolutionary algorithm , 2008, Theor. Comput. Sci..

[18]  R. Storer,et al.  New search spaces for sequencing problems with application to job shop scheduling , 1992 .

[19]  G. Thompson,et al.  Algorithms for Solving Production-Scheduling Problems , 1960 .

[20]  Mitsuo Gen,et al.  A tutorial survey of job-shop scheduling problems using genetic algorithms—I: representation , 1996 .

[21]  Thomas Jansen,et al.  UNIVERSITY OF DORTMUND REIHE COMPUTATIONAL INTELLIGENCE COLLABORATIVE RESEARCH CENTER 531 Design and Management of Complex Technical Processes and Systems by means of Computational Intelligence Methods Upper and Lower Bounds for Randomized Search Heuristics in Black-Box Optimization , 2004 .