Multi-heuristic dynamic task allocation using genetic algorithms in a heterogeneous distributed system

We present a multi-heuristic evolutionary task allocation algorithm to dynamically map tasks to processors in a heterogeneous distributed system. It utilizes a genetic algorithm, combined with eight common heuristics, in an effort to minimize the total execution time. It operates on batches of unmapped tasks and can preemptively remap tasks to processors. The algorithm has been implemented on a Java distributed system and evaluated with a set of six problems from the areas of bioinformatics, biomedical engineering, computer science and cryptography. Experiments using up to 150 heterogeneous processors show that the algorithm achieves better efficiency than other state-of-the-art heuristic algorithms.

[1]  C. D. Gelatt,et al.  Optimization by Simulated Annealing , 1983, Science.

[2]  Ishfaq Ahmad,et al.  Benchmarking and Comparison of the Task Graph Scheduling Algorithms , 1999, J. Parallel Distributed Comput..

[3]  Albert Y. Zomaya,et al.  An Introduction to Genetic-Based Scheduling in Parallel-Processor Systems , 2001 .

[4]  Vwani P. Roychowdhury,et al.  Computing with heterogeneous parallel machines: advantages and challenges , 1996, Proceedings Second International Symposium on Parallel Architectures, Algorithms, and Networks (I-SPAN'96).

[5]  Nirwan Ansari,et al.  A Genetic Algorithm for Multiprocessor Scheduling , 1994, IEEE Trans. Parallel Distributed Syst..

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

[7]  Andrew J. Page,et al.  Dynamic task scheduling using genetic algorithms for heterogeneous distributed computing , 2005, 19th IEEE International Parallel and Distributed Processing Symposium.

[8]  Thomas J Naughton,et al.  Low memory distributed reconstruction of large digital holograms. , 2008, Optics express.

[9]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .

[10]  Yu-Kwong Kwok,et al.  Mapping Tasks onto Distributed Heterogeneous Computing Systems Using a Genetic Algorithm Approach , 2000 .

[11]  Albert Y. Zomaya,et al.  A Framework for Reinforcement-Based Scheduling in Parallel Processor Systems , 1998, IEEE Trans. Parallel Distributed Syst..

[12]  John Waldron,et al.  Distributed Java Platform with Programmable MIMD Capabilities , 2002, FIDJI.

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

[14]  Albert Y. Zomaya,et al.  Genetic Scheduling for Parallel Processor Systems: Comparative Studies and Performance Issues , 1999, IEEE Trans. Parallel Distributed Syst..

[15]  Jing-Jang Hwang,et al.  Multiprocessor scheduling with interprocessor communication delays , 1988 .

[16]  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..

[17]  Hironori Kasahara,et al.  Practical multiprocessor scheduling algorithms for efficient parallel processing , 1985, Systems and Computers in Japan.

[18]  R. F. Freund,et al.  Dynamic Mapping of a Class of Independent Tasks onto Heterogeneous Computing Systems , 1999, J. Parallel Distributed Comput..

[19]  Thomas M. Keane,et al.  Distributed Monte Carlo simulation of light transportation in tissue , 2006, Proceedings 20th IEEE International Parallel & Distributed Processing Symposium.

[20]  Taher El Gamal A public key cryptosystem and a signature scheme based on discrete logarithms , 1984, IEEE Trans. Inf. Theory.

[21]  Thomas M. Keane,et al.  DSEARCH: sensitive database searching using distributed computing , 2005, Bioinform..

[22]  Ron Shonkwiler,et al.  Parallel Genetic Algorithms , 1993, ICGA.

[23]  John J. Grefenstette,et al.  Proceedings of the Second International Conference on Genetic Algorithms on Genetic algorithms and their application , 1987 .

[24]  Thomas M. Keane,et al.  DPRml: distributed phylogeny reconstruction by maximum likelihood , 2005, Bioinform..

[25]  Ishfaq Ahmad,et al.  Dynamic Critical-Path Scheduling: An Effective Technique for Allocating Task Graphs to Multiprocessors , 1996, IEEE Trans. Parallel Distributed Syst..

[26]  Albert Y. Zomaya,et al.  Solutions to Parallel and Distributed Computing Problems , 2001 .

[27]  Ishfaq Ahmad,et al.  Scheduling Parallel Programs Using Genetic Algorithms , 2000 .

[28]  D. J. Smith,et al.  A Study of Permutation Crossover Operators on the Traveling Salesman Problem , 1987, ICGA.

[29]  Hironori Kasahara,et al.  Practical Multiprocessor Scheduling Algorithms for Efficient Parallel Processing , 1984, IEEE Transactions on Computers.

[30]  Albert Y. Zomaya Parallel and Distributed Computing Handbook , 1995 .

[31]  Fred W. Glover,et al.  Future paths for integer programming and links to artificial intelligence , 1986, Comput. Oper. Res..