Genetic-algorithm-based real-time task scheduling with multiple goals

This paper presents and evaluates a new method for real-time task scheduling in multiprocessor systems. Its objectives are to minimize the number of processors required and the total tardiness of tasks. The minimization is carried out through a multiobjective genetic algorithm (GA), because the problem has non-commensurable and competing objectives to be optimized. The experimental results showed that when compared to five methods used previously, such as list-scheduling algorithms and a specific GA, the performance of our algorithm was comparable or better for 178 out of 180 randomly generated task graphs. Also shown is the impact of the sparsity of a task graph on the performance of our algorithm.

[1]  Anne-Marie Déplanche,et al.  A genetic algorithm for scheduling tasks in a real-time distributed system , 1998, Proceedings. 24th EUROMICRO Conference (Cat. No.98EX204).

[2]  A.-M. Deplanche,et al.  Heuristic techniques for allocating and scheduling communicating periodic tasks in distributed real-time systems , 2000, 2000 IEEE International Workshop on Factory Communication Systems. Proceedings (Cat. No.00TH8531).

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

[4]  Bruno Sadeg,et al.  Scheduling distributed real-time nested transactions , 2005, Eighth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC'05).

[5]  James C. Browne,et al.  General approach to mapping of parallel computations upon multiprocessor architectures , 1988 .

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

[7]  Peter J. Fleming,et al.  Genetic Algorithms for Multiobjective Optimization: FormulationDiscussion and Generalization , 1993, ICGA.

[8]  Mayez A. Al-Mouhamed,et al.  Scheduling optimization through iterative refinement , 1995, J. Syst. Archit..

[9]  Sanjoy K. Baruah,et al.  LSTF: A new scheduling policy for complex real-time tasks in multiple processor systems , 1997, Autom..

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

[11]  John A. Stankovic,et al.  Scheduling Distributed Real-Time Tasks with Minimum Jitter , 2000, IEEE Trans. Computers.

[12]  R. Reynolds,et al.  Optimizing Stochastic and Multiple Fitness Functions , 1995 .

[13]  Joseph Y.-T. Leung,et al.  Minimizing Total Tardiness on One Machine is NP-Hard , 1990, Math. Oper. Res..

[14]  Byung Ro Moon,et al.  Genetic Algorithm and Graph Partitioning , 1996, IEEE Trans. Computers.

[15]  Chengbin Chu,et al.  Parallel machine scheduling to minimize total tardiness , 2002 .

[16]  C. Fonseca,et al.  GENETIC ALGORITHMS FOR MULTI-OBJECTIVE OPTIMIZATION: FORMULATION, DISCUSSION, AND GENERALIZATION , 1993 .

[17]  Alan D. Christiansen,et al.  An empirical study of evolutionary techniques for multiobjective optimization in engineering design , 1996 .

[18]  Paolo Palazzari,et al.  A new method for optimization of allocation and scheduling in real time applications , 1995, Proceedings Seventh Euromicro Workshop on Real-Time Systems.

[19]  T. C. Hu Parallel Sequencing and Assembly Line Problems , 1961 .

[20]  Jan Karel Lenstra,et al.  Complexity of machine scheduling problems , 1975 .

[21]  Lawrence Davis,et al.  Applying Adaptive Algorithms to Epistatic Domains , 1985, IJCAI.

[22]  Peter J. Fleming,et al.  Multiobjective genetic algorithms made easy: selection sharing and mating restriction , 1995 .

[23]  Chung Laung Liu,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[24]  Niraj K. Jha,et al.  MOGAC: a multiobjective genetic algorithm for hardware-software cosynthesis of distributed embedded systems , 1998, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[25]  P. Ramanathan,et al.  A genetic approach for scheduling non-preemptive tasks with precedence and deadline constraints , 1993, [1993] Proceedings of the Twenty-sixth Hawaii International Conference on System Sciences.

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

[27]  Janez Brest,et al.  A performance evaluation of list scheduling heuristics for task graphs without communication costs , 2000, Proceedings 2000. International Workshop on Parallel Processing.

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

[29]  George P. Papavassilopoulos,et al.  Task scheduling on spacecraft by hybrid genetic algorithms , 1999, Proceedings 1999 IEEE International Conference on Robotics and Automation (Cat. No.99CH36288C).

[30]  Joseph Y.-T. Leung,et al.  A new algorithm for scheduling periodic, real-time tasks , 1989, Algorithmica.

[31]  Hans A. Hansson,et al.  The Slack Method: A New Method for Static Allocation of Hard Real-Time Tasks , 1998, Real-Time Systems.

[32]  David Y. Y. Yun,et al.  Simultaneous compression of makespan and number of processors using CRP , 1996, Proceedings of International Conference on Parallel Processing.

[33]  B.E. Wells,et al.  A comparison of heuristics for list schedules using the Box-method and P-method for random digraph generation , 1996, Proceedings of 28th Southeastern Symposium on System Theory.