A hybrid genetic algorithm with Lamarckian individual learning for tasks scheduling

Efficient application scheduling is critical for achieving high performance in parallel multiprocessor systems. The tasks scheduling problem is NP-hard in general. In order to obtain optimal or suboptimal solutions, a large number of scheduling heuristics have been presented in the literature. The most studied heuristics are based on list heuristics. In recent years, genetic algorithm (GA), as a power tool to achieve global optimal, has been successfully used in this field. This paper presents a new hybrid genetic algorithm to solve the tasks scheduling problem both for homogeneous and heterogeneous computing systems. It uses genetic algorithm to evolve tasks dispatching priority queue, and uses a list scheduling to decode the queue into a schedule. In order to remedy the GA's weakness in fine-tuning, this paper uses neighborhood search method to improve the fitness of the individuals of each generation, based on Lamarckian theory in the evolution. The simulation results comparing with two genetic algorithms and two list algorithms, both from the literature, show that this new GA produces encouraging results in terms of qualify of solution and time complexity.

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

[2]  Hesham El-Rewini,et al.  Scheduling Parallel Program Tasks onto Arbitrary Target Machines , 1990, J. Parallel Distributed Comput..

[3]  Jian-Gang Yang,et al.  A genetic algorithm for tasks scheduling in parallel multiprocessor systems , 2003, Proceedings of the 2003 International Conference on Machine Learning and Cybernetics (IEEE Cat. No.03EX693).

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

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

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

[7]  Ladislau Bölöni,et al.  A comparison study of static mapping heuristics for a class of meta-tasks on heterogeneous computing systems , 1999, Proceedings. Eighth Heterogeneous Computing Workshop (HCW'99).

[8]  Afonso Ferreira,et al.  Scheduling Multiprocessor Tasks with Genetic Algorithms , 1999, IEEE Trans. Parallel Distributed Syst..

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

[10]  Salim Hariri,et al.  Performance-Effective and Low-Complexity Task Scheduling for Heterogeneous Computing , 2002, IEEE Trans. Parallel Distributed Syst..

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