Skip to main content

Advertisement

Log in

An efficient ACO-based algorithm for scheduling tasks onto dynamically reconfigurable hardware using TSP-likened construction graph

  • Published:
Applied Intelligence Aims and scope Submit manuscript

Abstract

Any complex application can be realized as a graph of dependent tasks, and scheduling these tasks onto a limited number of computational resources while satisfying their dependencies is a well-known NP-complete optimization problem. For microprocessor systems, several algorithms have been proposed that can efficiently find suboptimal schedules. A solution for dynamically reconfigurable hardware (DRHW), however, is more complicated, as the time and complexity of reconfiguration has to be scheduled as well. The reconfiguration overhead in these systems is significant, and quickly becomes a crucial factor in real-world applications. In this paper, a meta-heuristic method known as Feasibility Assured TSP-likened Scheduling (FATS) is proposed in which the scheduling problem is translated into a construction graph, similar to Travelling Sales Person (TSP) problem, such that it would be able to benefit from the advantages of Ant Colony Optimization (ACO) algorithm. Moreover, by exploiting such a construction graph, precedence constraints and system limitations are satisfied beforehand, the feasibility of solutions is assured, while avoiding the costly solution repair operations. To demonstrate the performance of the proposed method, it was tested on several synthetic and real-world benchmark task graphs and the results were compared with a selection of classic and state-of-the-art algorithms. A comprehensive set of experiments was performed to evaluate the method in terms of efficiency, execution time, scalability and reliability. In brief, the results of experiments on benchmarks showed that on average FATS outperforms HPSO-GA and BGA by 8.4 % and 12.2 % respectively in terms of the quality of the solutions, and its run-time is far less than the state-of-the-art algorithms. Also, on synthetic graphs the makespan improvements of the solutions generated by FATS and GA over the List scheduler are on average 11.2 % and 6.8 % better respectively; and from the execution-time point of view, our method is 27.37 % faster than GA. Moreover, the results confirm that the proposed method is scalable for large task graphs and its reliability is superior to other compared algorithms.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24
Fig. 25
Fig. 26
Fig. 27

Similar content being viewed by others

References

  1. Bandyopadhyay S, Bhattacharya R (2013) Solving multi-objective parallel machine scheduling problem by a modified NSGA-II. Appl Math Model 37(10):6718–6729

    Article  MathSciNet  Google Scholar 

  2. Bonyadi MR, EbrahimiMoghaddam M (2009) A bipartite genetic algorithm for multi-processor task scheduling. Int J Parallel Prog 37(5):462–487

    Article  MATH  Google Scholar 

  3. Cadi E, Ait A et al (2015) Mathematical programming models for scheduling in a CPU/FPGA architecture with heterogeneous communication delays. J Intell Manuf:1–12

  4. Charitopoulos G, Koidis I, Papadimitriou K, Pnevmatikatos D (2015) Hardware Task Scheduling for Partially Reconfigurable FPGAs. In: Applied Reconfigurable Computing. Springer International Publishing, pp 487–498

  5. Correa R, Ferreira A, Rebreyend P (1999) Scheduling multiprocessor tasks with genetic algorithms. IEEE Trans Parallel Distrib Syst 10(8):825–837

    Article  Google Scholar 

  6. Deng Y, Zhang Z, Chan FTS, Chen Y, Zhang Y (2011) Finding shortest path on networks with fuzzy parameters. Int J Eng Intell Syst Electr Eng Commun 19(4):183–190

    Google Scholar 

  7. Dorigo M (1992) Optimization, Learning and Natural Algorithms. Italie, Ph.D thesis, Politecnico di Milano

    Google Scholar 

  8. Dorigo M, Birattari M, Stützle T (2006) Ant Colony Optimization: Artificial Ants as a Computational Intelligence Technique. IEEE Comput Intell Mag 1(4):28–39

    Article  Google Scholar 

  9. Ferrandi F, Lanzi PL, Pilato C, Sciuto D, Tumeo A (2013) Ant Colony Optimization for mapping, scheduling and placing in reconfigurable systems. In: Adaptive Hardware and Systems (AHS), NASA/ESA Conference, pp 47–54

  10. Ferrandi F, Pilato C, Sciuto D, Tumeo A (2010) Mapping and scheduling of parallel C applications with ant colony optimization onto heterogeneous reconfigurable MPSocs. In: Design Automation Conference (ASP-DAC), 15th Asia and South Pacific, pp 799–804

  11. Gerasoulis A, Yang T (1994) Performance bounds for columnblock partitioning of parallel Gaussian-elimination and gauss-Jordan methods. Appl Numer Math 16:283–297

    Article  MathSciNet  MATH  Google Scholar 

  12. Gharsellaoui H, Hasni H, Ahmed SB (2014) A genetic based scheduling approach of real-time reconfigurable embedded systems. In: Proceedings of the conference companion on Genetic and evolutionary computation companion, pp 993–998

  13. Houshmand M, Soleymanpour E, Salmai H, Amerian M, Deldari H (2010) Efficient Scheduling of Task Graphs to Multiprocessors Using a Combination of Modified Simulated Annealing and List Based Scheduling. In: Proceedings of the International Symposium on Intelligent Information Technology and Security Informatics, pp 350–354

  14. Janakiraman N, Kumar PN (2014) A Novel Hardware/Software Partitioning Technique for System-on-Chip in Dynamic Partial Reconfiguration Using Genetic Algorithm. In: Proceedings of the Second International Conference on Soft Computing for Problem Solving, pp 83–91

  15. Janakiraman N, Kumar PN (2014) Multi-objective module partitioning design for dynamic and partial reconfigurable system-on-chip using genetic algorithm. J Syst Archit 60 (1):119–139

    Article  Google Scholar 

  16. Kaur K, Chhabra A, Singh G (2010b) Modified genetic algorithm for task scheduling in homogeneous parallel system using heuristics. Int J Soft Comput 5(2):42–51

  17. Kumar N, Vidyarthi DP (2015) A novel hybrid PSO–GA meta-heuristic for scheduling of DAG with communication on multiprocessor systems. Engineering with Computers. pp 1–13

  18. Lee JS, Yang SB (2012) An improved pathfinding under multiple exits with SOA in a double-layered MANET. Int J Comput Syst Sci Eng 27(2):149–165

    MathSciNet  Google Scholar 

  19. Li SG, Feng FJ, Hu HJ, Wang C, Qi D (2014) Hardware/Software Partitioning algorithm based on genetic algorithm. J Comput 9(6):1309–1315

    Google Scholar 

  20. Li L, Sun J, Li W, Lv Z, Guan F (2015) Hardware/Software Partitioning based on hybrid genetic and tabu search in the dynamically reconfigurable system. Int J Control Autom 8(1):29–36

    Article  Google Scholar 

  21. Mokhtari H (2015) A nature inspired intelligent water drops evolutionary algorithm for parallel processor scheduling with rejection. Appl Soft Comput 26:166–179

    Article  Google Scholar 

  22. Mollajafari M, Shahhoseini HS (2011) A Repair-less Genetic Algorithm for Scheduling Tasks onto Dynamically Reconfigurable Hardwar. Int Rev Comput Softw 6(2):206–212

    Google Scholar 

  23. Orsila H, Kangas T, Salminen E, Hamalainen TD (2009) Parameterizing Simulated Annealing for Distributing Task Graphs on Multiprocessor SoCs. In: Proceedings of the international conference on System-on-chip, pp 19–26

  24. Orsila H, Salminen E, Hamalainen T (2013) Recommendations for using Simulated Annealing in task mapping. Des Autom Embed Syst 17(1):53–85

    Article  Google Scholar 

  25. Pan Z, Wells B (2008) Hardware supported task scheduling on dynamically reconfigurable SoC architectures. IEEE Trans Very Large Scale Integr (VLSI) Syst 16(11):1465–1474

    Article  Google Scholar 

  26. Pencheva T, Angelova M, Atanassova V, Roeva O (2015) Intercriteria analysis of genetic algorithm parameters in parameter identification. Notes Intuitionistic Fuzzy Sets 21(2):99–110

    Google Scholar 

  27. Qu Y, Soininen JP, Nurmi J (2006) A parallel configuration model for reducing the run-time reconfiguration overhead. In: Proceedings of the conference on Design, automation and test, pp 965–969

  28. Qu Y, Soininen JP, Nurmi J (2007) A Genetic Algorithm for Scheduling Tasks onto Dynamically Reconfigurable Hardware. In: Proceedings of the IEEE International Symposium on Circuits and Systems, pp 161–164

  29. Sharma A, Singh N, Hans A, Kumar K (2014) Review of task scheduling algorithms using genetic approach. In: Proceedings of the Computational Intelligence on Power, Energy and Controls with their impact on Humanity (CIPECH), pp 169–172

  30. Shiyuan J, Guy S, Damla T (2008) A performance study of multiprocessor task scheduling algorithms. J Supercomput 43:77–97

    Article  Google Scholar 

  31. Shriya S et al (2015) Directed Search-based PSO Algorithm and Its Application to Scheduling Independent Task in Multiprocessor Environment. In: Proceedings of the 4th International Conference on Frontiers in Intelligent Computing: Theory and Applications (FICTA). Springer, India, pp 23–31

  32. Victoire TAA, Muralikrishnan N (2011) A PSO based novel algorithm for economic dispatch problem. Int J Eng Intell Syst Electr Eng Commun 19(1):53–60

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Morteza Mollajafari.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Mollajafari, M., Shahhoseini, H.S. An efficient ACO-based algorithm for scheduling tasks onto dynamically reconfigurable hardware using TSP-likened construction graph. Appl Intell 45, 695–712 (2016). https://doi.org/10.1007/s10489-016-0782-2

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10489-016-0782-2

Keywords

Navigation