An ACO-based approach for scheduling task graphs with communication costs

In this paper we introduce a new algorithm for computing near optimal schedules for task graph scheduling problems. In contrast to conventional approaches for solving those scheduling problems, our algorithm is based on the same principles that ants use to find shortest paths between their nest and food sources. Like their natural counterparts, artificial ants cooperate by means of pheromone trails where information about the quality of the possible solution's building blocks is stored. Based on this common communication structure, new solutions emerge by means of cooperative interaction between the ants. In the paper we demonstrate how this basic principle can be adapted to solve scheduling problems. We also evaluated the performance of the proposed ANTLS-algorithm (ant list scheduler) by means of a comprehensive test bench with more than 30,000 test cases. Compared to two conventional and two other nature-inspired approaches it performed very well.

[1]  K. Mani Chandy,et al.  A comparison of list schedules for parallel processing systems , 1974, Commun. ACM.

[2]  James A. McHugh,et al.  Algorithmic Graph Theory , 1986 .

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

[4]  P. Markenscoff,et al.  Computation of tasks modeled by directed acyclic graphs on distributed computer systems: allocation without subtask replication , 1990, IEEE International Symposium on Circuits and Systems.

[5]  Gen-Huey Chen,et al.  A branch-and-bound-with-underestimates algorithm for the task assignment problem with precedence constraint , 1990, Proceedings.,10th International Conference on Distributed Computing Systems.

[6]  Martin T. Hagan,et al.  Mapping Signal Processing Algorithms on Parallel Architectures , 1990, J. Parallel Distributed Comput..

[7]  Nirwan Ansari,et al.  Efficient multiprocessor scheduling based on genetic algorithms , 1990, [Proceedings] IECON '90: 16th Annual Conference of IEEE Industrial Electronics Society.

[8]  Alice C. Parker,et al.  The high-level synthesis of digital systems , 1990, Proc. IEEE.

[9]  Myunghwan Kim,et al.  Optimal Task Assignment in Linear Array Networks , 1992, IEEE Trans. Computers.

[10]  Ashwini K. Nanda,et al.  Scheduling directed task graphs on multiprocessors using simulated annealing , 1992, [1992] Proceedings of the 12th International Conference on Distributed Computing Systems.

[11]  Vipin Kumar,et al.  Isoefficiency: measuring the scalability of parallel algorithms and architectures , 1993, IEEE Parallel & Distributed Technology: Systems & Applications.

[12]  Garrison W. Greenwood,et al.  Scheduling tasks in multiprocessor systems using evolutionary strategies , 1994, Proceedings of the First IEEE Conference on Evolutionary Computation. IEEE World Congress on Computational Intelligence.

[13]  Marco Dorigo,et al.  Ant system: optimization by a colony of cooperating agents , 1996, IEEE Trans. Syst. Man Cybern. Part B.

[14]  Zbigniew Michalewicz,et al.  Genetic Algorithms + Data Structures = Evolution Programs , 1996, Springer Berlin Heidelberg.

[15]  Ishfaq Ahmad,et al.  Efficient Scheduling of Arbitrary TAsk Graphs to Multiprocessors Using a Parallel Genetic Algorithm , 1997, J. Parallel Distributed Comput..

[16]  Luca Maria Gambardella,et al.  Ant colony system: a cooperative learning approach to the traveling salesman problem , 1997, IEEE Trans. Evol. Comput..

[17]  Erol Gelenbe,et al.  Task Assignment and Transaction Clustering Heuristics for Distributed Systems , 1997, Inf. Sci..

[18]  Ishfaq Ahmad,et al.  Benchmarking the task graph scheduling algorithms , 1998, Proceedings of the First Merged International Parallel Processing Symposium and Symposium on Parallel and Distributed Processing.

[19]  Thomas Stützle,et al.  An Ant Approach to the Flow Shop Problem , 1998 .

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

[21]  Tae-Young Choe,et al.  An optimal scheduling algorithm based on task duplication , 2001, Proceedings. Eighth International Conference on Parallel and Distributed Systems. ICPADS 2001.

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

[23]  Kuldip Singh,et al.  An Improved Duplication Strategy for Scheduling Precedence Constrained Graphs in Multiprocessor Systems , 2003, IEEE Trans. Parallel Distributed Syst..

[24]  Thomas Stützle,et al.  The Ant Colony Optimization Metaheuristic: Algorithms, Applications, and Advances , 2003 .

[25]  Christian Blum,et al.  Metaheuristics in combinatorial optimization: Overview and conceptual comparison , 2003, CSUR.

[26]  Wolfram Schiffmann,et al.  Comparison of nature inspired and deterministic scheduling heuristics considering optimal schedules , 2005 .