A Bipartite Genetic Algorithm for Multi-processor Task Scheduling

Until now, several methods have been presented to optimally solve the multiprocessor task scheduling problem that is an NP-hard one. In this paper, a genetic-based algorithm has been presented to solve this problem with better results in comparison with related methods. The proposed method is a bipartite algorithm in a way that each part is based on different genetic schemes, such as genome presentation and genetic operators. In the first part, it uses a genetic method to find an adequate sequence of tasks and in the second one, it finds the best match processors. To evaluate the proposed method, we applied it on several benchmarks and the results were compared with well known algorithms. The experimental results were satisfactory and in most cases the presented method had a better makespan with at least 10% less iterations compared to related works.

[1]  Mayez A. Al-Mouhamed,et al.  Lower Bound on the Number of Processors and Time for Scheduling Precedence Graphs with Communication Costs , 1990, IEEE Trans. Software Eng..

[2]  Imtiaz Ahmad,et al.  Multiprocessor Scheduling in a Genetic Paradigm , 1996, Parallel Comput..

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

[4]  Sied Mehdi Fakhraie,et al.  Evolutionary Multiprocessor Task Scheduling , 2006, International Symposium on Parallel Computing in Electrical Engineering (PARELEC'06).

[5]  Albert Mo Kim Cheng,et al.  Applying Ant Colony Optimization to the partitioned scheduling problem for heterogeneous multiprocessors , 2005, SIGBED Rev..

[6]  Babak Hamidzadeh,et al.  Dynamic Task Scheduling Using Online Optimization , 2000, IEEE Trans. Parallel Distributed Syst..

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

[8]  Frank D. Anger,et al.  Scheduling Precedence Graphs in Systems with Interprocessor Communication Times , 1989, SIAM J. Comput..

[9]  Majid Nili Ahmadabadi,et al.  A Representation for Genetic-Algorithm-Based Multiprocessor Task Scheduling , 2006, 2006 IEEE International Conference on Evolutionary Computation.

[10]  Frode Eika Sandnes,et al.  Static multiprocessor task graph scheduling in the genetic paradigm: a comparison of genotype representations, research report no. 98-25 , 1998 .

[11]  M.K. Dhodhi,et al.  A multiprocessor scheduling scheme using problem-space genetic algorithms , 1995, Proceedings of 1995 IEEE International Conference on Evolutionary Computation.

[12]  David J. Lilja,et al.  Designing Multiprocessor Scheduling Algorithms Using a Distributed Genetic Algorithm System , 1997 .

[13]  Sivarama P. Dandamudi,et al.  An Efficient Adaptive Scheduling Scheme for Distributed Memory Multicomputers , 2001, IEEE Trans. Parallel Distributed Syst..

[14]  M. Musnjak,et al.  Using a set of elite individuals in a genetic algorithm , 2004, 26th International Conference on Information Technology Interfaces, 2004..

[15]  Mitsuo Gen,et al.  A comparison of multiprocessor task scheduling algorithms with communication costs , 2008, Comput. Oper. Res..

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

[17]  Willard Korfhage,et al.  Process scheduling using genetic algorithms , 1995, Proceedings.Seventh IEEE Symposium on Parallel and Distributed Processing.

[18]  A. E. Eiben,et al.  Introduction to Evolutionary Computing , 2003, Natural Computing Series.

[19]  Yi-Hsuan Lee,et al.  A Modified Genetic Algorithm for Task Scheduling in Multiprocessor Systems , 2003 .

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

[21]  Sanjay R. Sutar,et al.  Task Scheduling For Multiprocessor Systems Using Memetic Algorithms , 2006 .

[22]  M.F. Ercan A Hybrid Particle Swarm Optimization Approach for Scheduling Flow-Shops with Multiprocessor Tasks , 2008, 2008 International Conference on Information Science and Security (ICISS 2008).

[23]  Jesús Labarta,et al.  Performance-driven processor allocation , 2000, IEEE Transactions on Parallel and Distributed Systems.

[24]  Yves Sorel,et al.  A rapid heuristic for scheduling non-preemptive dependent periodic tasks onto multiprocessor , 2007, ISCA PDCS.

[25]  Laurence T. Yang,et al.  Hybrid genetic algorithms for scheduling partially ordered tasks in a multi-processor environment , 1999, Proceedings Sixth International Conference on Real-Time Computing Systems and Applications. RTCSA'99 (Cat. No.PR00306).

[26]  Martijn Meijer,et al.  Scheduling parallel processes using genetic algorithms , 2004 .

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

[28]  Mostafa Rahimi Azghadi,et al.  A hybrid multiprocessor task scheduling method based on immune genetic algorithm , 2008, QShine '08.

[29]  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).

[30]  Albert Y. Zomaya,et al.  Multiprocessor scheduling using mean-field annealing , 1998, Future Gener. Comput. Syst..

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

[32]  S. N. Sivanandam,et al.  Multiprocessor Scheduling Using Hybrid Particle Swarm Optimization with Dynamically Varying Inertia , 2007, Int. J. Comput. Sci. Appl..

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

[34]  Ceyda Oguz,et al.  A genetic algorithm for multilayer multiprocessor task scheduling , 2004, 2004 IEEE Region 10 Conference TENCON 2004..

[35]  Tao Yang,et al.  DSC: Scheduling Parallel Tasks on an Unbounded Number of Processors , 1994, IEEE Trans. Parallel Distributed Syst..

[36]  Shuvra S. Bhattacharyya,et al.  A Modular Genetic Algorithm for Scheduling Task Graphs , 2003 .

[37]  Graham Ritchie,et al.  Static Multi-processor Scheduling with Ant Colony Optimisation & Local Search , 2003 .

[38]  Ishfaq Ahmad,et al.  Optimal task assignment in heterogeneous distributed computing systems , 1998, IEEE Concurr..

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

[40]  Charles E. Taylor Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence. Complex Adaptive Systems.John H. Holland , 1994 .

[41]  Nimal Nissanke,et al.  Probabilistic performance analysis in multiprocessor scheduling , 2002 .

[42]  Jari Nurmi,et al.  A Genetic Algorithm for Scheduling Tasks onto Dynamically Reconfigurable Hardware , 2007, 2007 IEEE International Symposium on Circuits and Systems.

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

[44]  Ishfaq Ahmad,et al.  On Exploiting Task Duplication in Parallel Program Scheduling , 1998, IEEE Trans. Parallel Distributed Syst..

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

[46]  Roman Nossal-Tüyeni,et al.  An evolutionary approach to multiprocessor scheduling of dependent tasks , 1998, Future Gener. Comput. Syst..