Heterogeneous computing scheduling with evolutionary algorithms

This work presents sequential and parallel evolutionary algorithms (EAs) applied to the scheduling problem in heterogeneous computing environments, a NP-hard problem with capital relevance in distributed computing. These methods have been specifically designed to provide accurate and efficient solutions by using simple operators that allow them to be later extended for solving realistic problem instances arising in distributed heterogeneous computing (HC) and grid systems. The EAs were codified over MALLBA, a general-purpose library for combinatorial optimization. Efficient numerical results are reported in the experimental analysis performed on well-known problem instances. The comparative study of scheduling methods shows that the parallel versions of the implemented evolutionary algorithms are able to achieve high problem solving efficacy, outperforming traditional scheduling heuristics and also improving over previous results already reported in the related literature.

[1]  Kuo-Chi Lin,et al.  An incremental genetic algorithm approach to multiprocessor scheduling , 2004, IEEE Transactions on Parallel and Distributed Systems.

[2]  Hesham H. Ali,et al.  Task scheduling in parallel and distributed systems , 1994, Prentice Hall series in innovative technology.

[3]  Enrique Alba,et al.  MALLBA: A Library of Skeletons for Combinatorial Optimisation (Research Note) , 2002, Euro-Par.

[4]  Howard Jay Siegel,et al.  Task execution time modeling for heterogeneous computing systems , 2000, Proceedings 9th Heterogeneous Computing Workshop (HCW 2000) (Cat. No.PR00556).

[5]  Martin Grajcar Strengths and weaknesses of genetic list scheduling for heterogeneous systems , 2001, Proceedings Second International Conference on Application of Concurrency to System Design.

[6]  Fatos Xhafa,et al.  Tuning Struggle Strategy in Genetic Algorithms for Scheduling in Computational Grids , 2008, 2008 7th Computer Information Systems and Industrial Management Applications.

[7]  Nostrand Reinhold,et al.  the utility of using the genetic algorithm approach on the problem of Davis, L. (1991), Handbook of Genetic Algorithms. Van Nostrand Reinhold, New York. , 1991 .

[8]  Francine Berman,et al.  Grid Computing: Making the Global Infrastructure a Reality , 2003 .

[9]  Anthony A. Maciejewski,et al.  Task Matching and Scheduling in Heterogenous Computing Environments Using a Genetic-Algorithm-Based Approach , 1997, J. Parallel Distributed Comput..

[10]  John Levine,et al.  A hybrid ant algorithm for scheduling independent jobs in heterogeneous computing environments , 2004 .

[11]  David S. Johnson,et al.  Computers and In stractability: A Guide to the Theory of NP-Completeness. W. H Freeman, San Fran , 1979 .

[12]  Enrique Alba,et al.  Efficient Batch Job Scheduling in Grids using Cellular Memetic Algorithms , 2007, IPDPS.

[13]  Arif Ghafoor,et al.  Estimation of Execution times on Heterogeneous Supercomputer Architectures , 1993, 1993 International Conference on Parallel Processing - ICPP'93.

[14]  Anthony A. Maciejewski,et al.  Static resource allocation for heterogeneous computing environments with tasks having dependencies, priorities, deadlines, and multiple versions , 2008, J. Parallel Distributed Comput..

[15]  Rajkumar Buyya,et al.  Nature's heuristics for scheduling jobs on Computational Grids , 2000 .

[16]  David E. Goldberg,et al.  Genetic Algorithms in Search Optimization and Machine Learning , 1988 .

[17]  Joseph Y.-T. Leung,et al.  Handbook of Scheduling: Algorithms, Models, and Performance Analysis , 2004 .

[18]  Larry J. Eshelman,et al.  The CHC Adaptive Search Algorithm: How to Have Safe Search When Engaging in Nontraditional Genetic Recombination , 1990, FOGA.

[19]  Zhongzhi Shi,et al.  A revisit of fast greedy heuristics for mapping a class of independent tasks onto heterogeneous computing systems , 2007, J. Parallel Distributed Comput..

[20]  Fatos Xhafa,et al.  Parallel Memetic Algorithms for Independent Job Scheduling in Computational Grids , 2008, Recent Advances in Evolutionary Computation for Combinatorial Optimization.

[21]  Albert Y. Zomaya,et al.  Observations on Using Genetic Algorithms for Dynamic Load-Balancing , 2001, IEEE Trans. Parallel Distributed Syst..

[22]  Fatos Xhafa,et al.  Genetic algorithm based schedulers for grid computing systems , 2007 .

[23]  Ishfaq Ahmad,et al.  Efficient Scheduling of Arbitrary TAsk Graphs to Multiprocessors Using a Parallel Genetic Algorithm , 1997, J. Parallel Distributed Comput..

[24]  Enrique Alba,et al.  Parallel Metaheuristics: A New Class of Algorithms , 2005 .

[25]  Fatos Xhafa,et al.  The effects of two replacement strategies on a genetic algorithm for scheduling jobs on computational grids , 2006, SAC.

[26]  Martin Grajcar Genetic list scheduling algorithm for scheduling and allocation on a loosely coupled heterogeneous multiprocessor system , 1999, DAC '99.

[27]  Oscar H. Ibarra,et al.  Heuristic Algorithms for Scheduling Independent Tasks on Nonidentical Processors , 1977, JACM.

[28]  Enrique Alba,et al.  Design and evaluation of tabu search method for job scheduling in distributed environments , 2008, 2008 IEEE International Symposium on Parallel and Distributed Processing.

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

[30]  Ladislau Bölöni,et al.  A Comparison of Eleven Static Heuristics for Mapping a Class of Independent Tasks onto Heterogeneous Distributed Computing Systems , 2001, J. Parallel Distributed Comput..

[31]  A. A. Maciejewski,et al.  Heterogeneous Computing , 2002 .

[32]  Hui Li,et al.  Predicting job start times on clusters , 2004, IEEE International Symposium on Cluster Computing and the Grid, 2004. CCGrid 2004..

[33]  Gurdeep S. Hura,et al.  Non-evolutionary algorithm for scheduling dependent tasks in distributed heterogeneous computing environments , 2005, J. Parallel Distributed Comput..

[34]  Fatos Xhafa,et al.  A Hybrid Evolutionary Heuristic for Job Scheduling on Computational Grids , 2007 .

[35]  Enrique Alba,et al.  Parallelism and evolutionary algorithms , 2002, IEEE Trans. Evol. Comput..

[36]  Jeffrey M. Jaffe,et al.  Algorithms for Scheduling Tasks on Unrelated Processors , 1981, JACM.

[37]  Zbigniew Michalewicz,et al.  Handbook of Evolutionary Computation , 1997 .