Genetic algorithms for task scheduling problem

The scheduling and mapping of the precedence-constrained task graph to processors is considered to be the most crucial NP-complete problem in parallel and distributed computing systems. Several genetic algorithmshave beendeveloped to solve this problem.A common feature inmost of themhas been the use of chromosomal representation for a schedule. However, these algorithms aremonolithic, as they attempt to scan the entire solution space without considering how to reduce the complexity of the optimization process. In this paper, two genetic algorithms have been developed and implemented. Our developed algorithms are genetic algorithms with some heuristic principles that have been added to improve the performance. According to the first developed genetic algorithm, two fitness functions have been applied one after the other. The first fitness function is concerned with minimizing the total execution time (schedule length), and the second one is concerned with the load balance satisfaction. The second developed genetic algorithm is based on a task duplication technique to overcome the communication overhead. Our proposed algorithms have been implemented and evaluated using benchmarks. According to the evolved results, it has been found that our algorithms always outperform the traditional algorithms. © 2009 Elsevier Inc. All rights reserved.

[1]  Lothar Thiele,et al.  A Mathematical Analysis of Tournament Selection , 1995, ICGA.

[2]  Daniel Gajski,et al.  Hypertool: A Programming Aid for Message-Passing Systems , 1990, IEEE Trans. Parallel Distributed Syst..

[3]  Thomas Bäck,et al.  Evolutionary computation: comments on the history and current state , 1997, IEEE Trans. Evol. Comput..

[4]  Tatsuhiro Tsuchiya,et al.  Genetics-based multiprocessor scheduling using task duplication , 1998, Microprocess. Microsystems.

[5]  Shahid Ali,et al.  Scheduling and allocation in high-level synthesis using genetic algorithm , 1994 .

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

[7]  Sanguthevar Rajasekaran,et al.  Online Scheduling of Dynamic Trees , 1995, Parallel Process. Lett..

[8]  Pascal Bouvry,et al.  Efficient Solutions for Mapping Parallel Programs , 1995, Euro-Par.

[9]  Arjan J. C. van Gemund,et al.  Low-Cost Task Scheduling for Distributed-Memory Machines , 2002, IEEE Trans. Parallel Distributed Syst..

[10]  Tarek A. El-Ghazawi,et al.  A Parallel Genetic Algorithm for Task Mapping on Parallel Machines , 1999, IPPS/SPDP Workshops.

[11]  Ishfaq Ahmad,et al.  A New Approach to Scheduling Parallel Programs Using Task Duplication , 1994, 1994 Internatonal Conference on Parallel Processing Vol. 2.

[12]  Sadiq M. Sait,et al.  GSA: scheduling and allocation using genetic algorithm , 1994, EURO-DAC '94.

[13]  Edward A. Lee,et al.  A Compile-Time Scheduling Heuristic for Interconnection-Constrained Heterogeneous Processor Architectures , 1993, IEEE Trans. Parallel Distributed Syst..

[14]  R. K. Shyamasundar,et al.  Introduction to algorithms , 1996 .

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

[16]  Y.-K. Kwok,et al.  Static scheduling algorithms for allocating directed task graphs to multiprocessors , 1999, CSUR.

[17]  Lalit M. Patnaik,et al.  Adaptive probabilities of crossover and mutation in genetic algorithms , 1994, IEEE Trans. Syst. Man Cybern..

[18]  John B. Shoven,et al.  I , Edinburgh Medical and Surgical Journal.

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

[20]  Ishfaq Ahmad,et al.  High-performance algorithms of compile-time scheduling of parallel processors , 1997 .

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

[22]  Imtiaz Ahmad,et al.  Task assignment using a problem-space genetic algorithm , 1995, Concurr. Pract. Exp..

[23]  Michael Allen,et al.  Parallel programming: techniques and applications using networked workstations and parallel computers , 1998 .

[24]  Traian Muntean,et al.  A New Approach for the Mapping Problem: A Parallel Genetic Algorithm , 1991 .

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

[26]  David Mark Levine,et al.  A parallel genetic algorithm for the set partitioning problem , 1995 .

[27]  Amin Allam,et al.  An Efficient Tasks Scheduling Algorithm for Distributed Memory Machines with Communication Delays , 2005 .

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

[29]  Selim G. Akl Parallel computation: models and methods , 1997 .