Next Article in Journal
Mechanical Response of Carbon Nanotube Bundle to Lateral Compression
Previous Article in Journal
The Effects of Doping on the Electronic Characteristics and Adsorption Behavior of Silicon Polyprismanes
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Comprehensive Review of Evolutionary Algorithms for Multiprocessor DAG Scheduling

by
Eduardo C. da Silva
and
Paulo H. R. Gabriel
*
Faculty of Computer Science, Federal University of Uberlândia, Uberlândia, MG 38408-100, Brazil
*
Author to whom correspondence should be addressed.
Computation 2020, 8(2), 26; https://doi.org/10.3390/computation8020026
Submission received: 18 March 2020 / Revised: 1 April 2020 / Accepted: 2 April 2020 / Published: 10 April 2020

Abstract

:
The multiprocessor task scheduling problem has received considerable attention over the last three decades. In this context, a wide range of studies focuses on the design of evolutionary algorithms. These papers deal with many topics, such as task characteristics, environmental heterogeneity, and optimization criteria. To classify the academic production in this research field, we present here a systematic literature review for the directed acyclic graph (DAG) scheduling, that is, when tasks are modeled through a directed acyclic graph. Based on the survey of 56 works, we provide a panorama about the last 30 years of research in this field. From the analyzes of the selected studies, we found a diversity of application domains and mapped their main contributions.

1. Introduction

The multiprocessor task scheduling problem (MTSP) consists of mapping a task graph onto a target platform [1]. In this model, the graph represents the parallel application, that is, vertices denote computational tasks and edges model precedence constraints between tasks. The objective is to find a mapping of tasks over processors in order to optimize some performance criteria [2].
Formally, tasks and their respective relations are modeled using a directed acyclic graph (DAG), G = ( T , E , w ) , where the (finite) set T = { t 1 , , t n } represents the tasks (vertices), and set E (edges) represents precedence constraints between tasks, that is, ( t i , t j ) E if and only if t j depends on the execution of t i . Moreover, the weight function w : T N * gives the number of processing instructions required by each task [1]. A task t i may send (communicate) data to a successor task t j ; this situation is represented by weights on the DAG edges, indicate the communication cost. When the same processor executes both tasks, this cost is negligible. Figure 1a [3] illustrates a DAG with n = 8 tasks and its execution costs (for instance, t 1 / 3 means that task t 1 has a cost of 3 million of processing instructions). In this same graph, edges represent a precedence relationship, and its weights are the communication costs.
The computational environment consists of a set P = { p 1 , , p m } of widely interconnected processors. In a homogeneous environment, all processors have the same processing capacity (given in millions of instructions per second—MIPS). On the other hand, in heterogeneous environments, the computational cost of each task may vary depending on the processor where it is attributed. Finally, a solution to the MTSP can be evaluated in several ways: execution time of application, resource utilization, and others. Figure 1b [3] shows a scheduling solution, represented as a Gantt Chart for two identical processors. In this solution, tasks { t 1 , t 3 , t 4 , t 7 } are allocated over processor p 1 and { t 2 , t 5 , t 6 , t 8 } over processor p 2 . In this example, the execution time of the application consists of 12-time units.
Similar to many optimization problems in the real world, the search for the optimal MTSP solution has a high computational complexity [1,2] and cannot be solved promptly by brute force techniques. One of the most investigated approaches to this type of problem is the use of techniques that, in many cases, discover a set of potential solutions, from which one can find the global optimum or an approximate solution to that problem. In this context, evolutionary algorithms (EAs) have been investigated as a search method due to their flexibility to solve complex optimization problems.
EAs [4] can be adapted to various types of problems. Inspired by the evolutionary paradigm, these techniques work with the evolution of several solutions (population) simultaneously, ensuring a significant advantage when compared to other techniques. There are several studies involving EAs applied to the scheduling problem, and this number increases every year. For this reason, it is necessary to systematically organize these works in order to summarize their main characteristics, understand contributions, authors, and institutions that maintain relevant publications. With such information, it is possible to identify domains that may receive attention to additional research in the future.
One way to investigate a significant amount of studies, and synthesize their contributions, is through a Systematic Literature Review (SLR) [5,6]. SLR consists of a rigorous procedure to select and analyze works that fit a research question without following a bias on the part of the researchers. Moreover, the results of SLR may be replicated and extended as needed.
This paper proposes the application of SLR techniques to find a collection of works that proposes EAs to MTSP. In this way, we present a comprehensive survey of these works through a meta-analytic approach, examining authors, institutions, and other aspects. We organize works considering task characteristics, computational environments, and optimization criteria. This survey covers an interval of 30 years (from 1990 to 2019) of research papers; thus, we also map the historical evolution of studies in this scientific field. Our investigation considered four digital libraries that index computing studies; after the three stages of papers analysis, we created a collection composed of 56 studies (This paper is an extension of previous work by the same authors [3]. The original work focused only on journal articles and was limited to studies based on genetic algorithms. Moreover, that study was less rigorous in terms of inclusion and exclusion criteria and considered works until 2018.). The next section of this paper details our research protocol, presenting research questions, search key, and inclusion/exclusion criteria. Afterward, Section 3 presents the collection of 56 papers and provides a meta-analysis of them. Finally, we draw our concluding remarks (Section 4) and expose the references list.

2. Research Protocol

According to Kitchenham [5], the Systematic Literature Review (SLR) is a process of interpreting and evaluating relevant studies related to a research question, topic, or phenomenon. Consequently, we consider the SLR as an outstanding tool for aggregating experiences from a collection of different works [7]. The execution of an SLR follows some formal steps, named research protocol: (i) limit the research question; (ii) compose a search key; (iii) choose the databases; (iv) establish the inclusion/exclusion criteria; and (v) report the stages of the review.
The first step of an SLR consists of limiting the scope of the research. In the context of this paper, we are interested in mapping the last three decades of EAs applied to the MTSP. Moreover, we desire to characterize the application scenarios of such algorithms, that is, we intend to record which authors are dealing with which particularities of this problem (e.g., presence of communication among tasks, processors heterogeneity, and others).
Having this scope in mind, and concerning the SLR protocol, we formulated the main research question (referred to as MQ), as follows:
MQ: “Between the years 1990 to 2019, what are the central studies on evolutionary algorithms applied to the multiprocessor task scheduling problem?”
In addition to the direction of MQ, it is necessary to prepare other questions (called secondary questions—SQ) to expand the collection with relevant information. These questions are necessary to guide the research process, providing directions to select relevant works. In this paper, we considered nine secondary questions, enumerated here:
SQ.01: 
What is the period with the most significant amount of research papers?
SQ.02: 
What are the computational environments considered in these studies?
SQ.03: 
How do these studies deal with the cost of communication?
SQ.04: 
What are the main optimization criteria considered by the studies?
SQ.05: 
Which of these papers has the highest number of citations?
SQ.06: 
Which regions of the planet have the highest number of authors?
SQ.07: 
What are the most used expressions in abstracts and keywords?
For survey works corresponding to the questions above, we drew up a search key and applied it to the search mechanisms of the digital databases. For this, we eliminated corresponding keywords and combined different subjects using the logical operators OR and AND, respectively. Since the search key influences the behavior of the search engine, it is necessary to build it verifying each employed term. Table 1 presents the search key constructed in this study.
In our research, we considered “evolutionary” and “genetic” algorithms as synonymous. Indeed, several authors do not provide a proper distinction between both terms; for this reason, we opted to maintain both expressions and filter results (according to De Jong [4], EAs are a class of algorithms and genetic algorithms are techniques from such class). We also regarded the words “graph”, “workflow” and “DAG” in conjunction, as suggested by Robert [1]. Besides, we included both “parallel” and “multiprocessor” terms.
Finally, the search key includes the expressions “representation”, “encoding”, “genetic operators”, and “objective function”. All of these are specific for the context of evolutionary algorithms, and we considered them in order to select papers that provide details about algorithm design.
After preparing the search key, it is necessary to select some digital databases. Such databases must contain search engines that reproduce the semantics of the key to find related works. Table 2 shows the bases used in this study. It is necessary to highlight that intended to consider the ACM Digital Library (https://dl.acm.org/); however, its search engine did not reflect the main aspects contained in the search key, resulting in unsatisfactory outcomes when compared to the other databases.
Although the search key encompasses several terms related to research questions, the amount of selected works on digital databases can be pervasive. Thus, the protocol used in the SLR must define some inclusion and exclusion criteria that reflect the format and desired aspects of the investigation. The criteria adopted in this protocol are:
  • Papers must deal with MTSP in its static version and without the use of release times and deadlines (in other words, all information related to the problem is known before scheduling and the execution time is not limited);
  • The research papers must deal with MTSP using EAs solutions, that is, EAs are the focus of the study;
  • Selected studies cannot combine EAs with other meta-heuristics;
  • All the papers must be in the language;
  • Papers must be available for consultation on Internet platforms.
Based on all the rules defined here, we performed the following steps, named search phase, as required by the SLR protocol (we documented each SLR execution phase using annotations and spreadsheets—thus, we may extend this survey or adapt it to answer other research questions.):
  • Search in search engines: We perform the search step and collected all resulting works for future analysis;
  • Results filtering: we discarded works that did not meet the inclusion/exclusion criteria;
  • Manual search: we carried out a new survey of works by looking at the bibliographic references of the first pre-surveyed collection. We also submitted these new studies to the inclusion/exclusion criteria.

3. Analysis of the Collection

This section presents the collection of works recovered with the SLR. Each part answers one or more secondary questions presented in our SLR protocol. Thus, in Section 3.1, we answer the SQ.01; Section 3.2 deals with SQ.02 and SQ.03; Section 3.3 answers SQ.04, and Section 3.4 SQ.05. Section 3.5 and Section 3.6 are related to SQ.06 and SQ.07, respectively. Finally, we present a summary in Section 3.7, answering our main research question (MQ).

3.1. Collection and Publication Timeline

This SLR is part of a more comprehensive research project [3,8]. For this reason, we collected the data into separated moments. The first collection took place in April 2018 and returned 430 works distributed as follows:
  • Google Scholar: 237 works;
  • Elsevier-Science Direct: 157 works;
  • Portal de Periódicos Capes: 34 works;
  • IEEE Xplore Digital Library: 2 works.
However, we observe a total of 50 works duplicated, that is, they appeared in two or more databases; consequently, after deleting duplicates, our research returned 380 papers. From this collection, we selected 120 papers based on information from their abstracts. Afterward, we applied the inclusion/exclusion criteria (second phase of SLR protocol) and reduced the number of selected papers to 36. Finally, in the third phase, we analyzed the section “References” of such papers, selecting more 27 new works; therefore, our first collection had 63 papers.
In order to extend our research and include new articles, covering the years 2018 and 2019, we repeated all those steps, performing a new search. We found 84 new results, but only five of them attempted to the inclusion/exclusion criteria; thus, we generated a final collection of 68 works (this new survey was conducted on February 12, 2020.). Before proceeding with the analysis, we opted to follow an additional exclusion criterion—remove works without the Digital Object Identifier (https://www.doi.org/) (DOI). We took this decision to allow the recovery of detailed information about selected works; after this last step, we eliminated 12 papers, obtained a collection with 56 works.
Table 3 presents all the works that compose our collection in chronological order. When two or more papers were published in the same year, we organize them in alphabetical order. In this table, we also present how the work was published, that is, if it is a journal article (“Jour”) or a conference paper (“Conf”); in this last case, the publication year refers to the publication date of the conference proceedings.
Note that only one paper was published in 1990 [9], and, after this, two others appeared in 1994 [11,13]. Closing the collection, three papers were published in 2019 [60,62,64]. In all, 31 papers (≈55%) were published in journals. Based on Table 3, Figure 2 presents the timeline of publications. Answering the first secondary research question (SQ.01), the period between 2011 and 2012 is the interval with the most significant number of publications.
Another essential characteristic to be highlighted is that our research only returned works based on genetic algorithms, which means that our search key, together with our exclusion criteria, eliminates works that design other evolutionary techniques. This situation was expected since we consider keywords “genetic” and “evolutionary”; moreover, EAs tends to appear with other meta-heuristics, violating our inclusion/exclusion criteria.

3.2. Environments and Communication Cost

As already mentioned, MTSP can present variations in its multiprocessor system. In this context, papers of our collection deal with two primary environments: (i) homogeneous processors, that is, the execution time of a task does not vary depending on where it is executed; and (ii) heterogeneous processors. There are some papers that present solutions for both scenarios as well as papers that model communication costs. Table 4 lists all the works from the collection organized according to their environments.
As observed, most of the works (29 in total) pay attention to the homogeneous environment, that is, when all the processors have the same processing capacity. Besides, 24 papers are related to the heterogeneous environment, and four works [27,28,43,49] deal with both scenarios. Azghadi et al. [53] did not provide sufficient information about where their algorithm is applied; we believe, based on information presented in the publication, that they also considered both.
Based on Table 4, the chart in Figure 3 distributes publications on a timeline (in this chart, we did not consider Azghadi et al. [53].), responding to the SQ.02. In addition to the significant growth between 2010 and 2011, the heterogeneous scenario is also common in the latest studies. This situation may be related to the popularity of MTSP in the Infrastructure as a Service (IaaS) paradigm, that is, virtual machines adjusted by frequency controls.
We also analyzed the publications considering the use of the communication cost, that is, when DAG edges have weights. In this scenario, a task sends data (in bytes) to another, which imposes an additional delay in the execution (without communication, the successor task only waits for the execution of its predecessor). Responding to SQ.03, it is possible to observe that most works employ this scenario (about 80 % ), representing the most substantial volume of publications. Table 5 lists these works.

3.3. Optimization Criteria

There are several ways to measure the performance of an MTSP solution. Such measurement is responsible for driving the search process in an evolutionary algorithm. In practice, the quality of a solution is employed in the design of fitness functions that must be optimized. Table 6 lists all the metrics found in the collection in order to respond to the SQ.04.
The most widely used metric is the makespan (sometimes referred to as scheduling length), which is present in the vast majority of the works surveyed (55 in total). This metric corresponds to the time instant when all the tasks have finished processing (in Figure 1, for example, the makespan value is equated to 12-time units). Besides makespan, the literature in this area also considered other metrics related to the execution time, that is, flowtime [10,34,58,61] and communication cost [17,64].
Another popular metric is the load balancing [12,17,44,59], which consists of the equitable distribution of tasks over processors. This metric is directed related to better resource utilization: if all the processors are overloaded, it is necessary more investments in the computational infrastructure.
It is also possible to observe the increase, in recent years, in the number of works that consider metrics focused on sustainability [36,48,50,56,60,62]. These works deal with issues related to the temperature and the energy consumption of computers (processors). Sustainability metrics are related to the popularization of distributed systems, mainly because of the adoption of computational clouds. Another recently adopted metric is the financial cost [64], which is related to scenarios that employ IaaS platforms (the performance of virtual machines depends on the frequency values contracted by the client).
All these performance metrics are related to optimization criteria. Most of them (makespan, financial cost, energy consumption, flowtime, temperature, number of processors, and communication cost) must be minimized. On the other hand, system reliability, load balancing, and parallelism are used to design maximization objective functions.
It is essential to highlight that several works consider two or more of these optimization criteria in conjunction. Indeed, 19 papers related to makespan also consider at least one of the other metrics. In most of these cases, works consider a weighted sum to combine these objectives; however, there is also multiobjective evolutionary approaches, based on the concept of Pareto’s front [14,36,50,60,61,62,64]. Finally, only Aguilar and Gelenbe [17] do not directly consider the minimization of makespan, having their focus on load balancing and communication cost.

3.4. Number of Citations

In this study, we also computed the number of citations in the work collection, answering the secondary question SQ.05. The chart in Figure 4 classifies the ten most cited publications considering the number of citations returned by the Google Scholar platform. We observe that the most referred publication [13] appeared in more than 900 related works. In fact, the work by Hou et al. [13] is considered one of the most important in this research field, presenting ideas that were extended by several works. Another prominent work is due to Wang et al. [25], with about 500 citations.
Additionally, we related which publication vehicles are preferred. The Journal of Parallel and Distributed Computing published a total of six works [12,16,19,25,44,60], followed by the IEEE Transactions on Parallel and Distributed Systems, with five works [13,31,35,43,50]. After them, Information Sciences [17,40] and Microprocessors and Microsystems [29,45] published two papers each; the other two works appeared in the same conference, the IEEE International Conference on High-Performance Computing and Communication, in 2012 [24,32].

3.5. Researchers Affiliations

The collection of works also allowed the extraction of information regarding the authors and their respective nationalities. In this context, “nationality” reflects the researcher’s country of affiliation; therefore, it does not necessarily represent his country of origin. We identified 145 distinct researchers in 21 countries, responding to question SQ.06.
Figure 5 presents an infographic distributing researchers from their affiliation countries. The countries with the most considerable number of researchers are India and the United States, both with 26 researchers each, followed by China, having 18. Brazil, Singapore, and Turkey have one researcher each.

3.6. Word Frequency Rank

Finally, in order to identify the main terms adopted in publications, this study also extracted the primary expressions used in abstracts and keywords. In Figure 6a, we quantify the most common keywords found. We also isolate the common expressions found in the abstracts, as presented in Figure 6b.
In both charts, we linked singular expressions to their respective plural versions. Moreover, this survey responds to the question SQ.07. The identification of the primary expressions can help in the use of terms more related to researches in this field, consequently helping indexing mechanisms and the search process.

3.7. Summary

In this survey, we perform a meta-analysis and answered seven secondary questions (enumerated in Section 2). As a result, it is possible to respond to the main question (MQ) of this study, that is, what are the central works in this research field.
Here we listed the ten most cited works presented in our collection. In order to summarize our answers, Table 7 related some information about these works: reference (“Ref.”), title, publication vehicle, and publication year. We also present the characteristics of the environments, that is, if the work deals with a homogeneous or a heterogeneous scenario, with or without communication costs (“CC”). Finally, we provide the Scientific Journal Rankings (SJR), retrieved on March 13, 2020.
From these works, seven deal with homogeneous environments [12,13,17,19,25,31,35], two with heterogeneous [22,40], and only one with both environments [43]. Additionally, Hou et al. [13], Zomaya et al. [35], and Wang et al. [22] do not model communication costs. All these works, except Aguilar and Gelenbe [17], consider makespan as primarily optimization metric. Besides, Omara and Arafa [12] and Wang et al. [22] also take into account load balancing and system reliability, respectively, as a secondary metric, and Aguilar and Gelenbe [17] employ load balancing and communication cost (none of them, however, design a multiobjective algorithm). At long last, all these works were published in journals.

4. Conclusions and Future Research

This paper has reported the results of a systematic literature review (SLR) on evolutionary algorithms for the multiprocessor task scheduling problem. Based on four databases, we generated a collection of 56 papers published in journals or presented in conferences between the years of 1990 and 2019, that is, we covered three decades of studies.
From this collection, we presented an overview of general characteristics from the selected works and, consequently, from this research field. We observed that homogeneous computational environments are still the most common, with 29 published works (about 52 % of the collection). Moreover, more than 80 % of selected works deal with communication costs. All the papers except one look for the minimization of makespan, sometimes in conjunction with other optimization criteria.
In this survey, we focus on genetic algorithms; this means that we did not cover other evolutionary approaches (such as differential evolution, estimation of distribution algorithms, memetic algorithms, swarm intelligence, and others). We took this decision to limit our research to the most common evolutionary technique.
Finally, from this collection, we can now extract a large volume of information about the structure of GAs. For example, it is possible to analyze details about solution encoding (i.e., chromosome), genetic operators (mutation and crossover), as well as mechanisms to deal with variability and convergence. Further studies may include an experimental evaluation of these design decisions.
Regarding the proposed framework for this SLR, it can be extended in future works to grant other scheduling problems (for example, considering independent tasks) or solving methods.

Author Contributions

E.C.d.S. and P.H.R.G. contributed equally to this paper. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by FAPEMIG (Minas Gerais Research Foundation), Brazil, grant number APQ-03081-18. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of FAPEMIG.

Acknowledgments

The authors would like to thank the support of the Post-graduation Program in Computer Sciences from the Federal University of Uberlandia (PPGCO/UFU). We are also in debt with FAPEMIG for the master’s scholarship.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
DOIDigital Object Identifier
EAEvolutionary algorithm
GAGenetic algorithm
IaaSInfrastructure as a Service
MTSPMultiprocessor task scheduling problem
SJRScientific Journal Rankings
SLRSystematic literature review

References

  1. Robert, Y. Task graph scheduling. In Encyclopedia of Parallel Computing; Padua, D., Ed.; Springer: Boston, MA, USA, 2011; pp. 2013–2025. [Google Scholar]
  2. Afrati, F.; Papadimitriou, C.H.; Papageorgiou, G. Scheduling dags to minimize time and communication. In VLSI Algorithms and Architectures; Reif, J.H., Ed.; Springer: New York, NY, USA, 1988; Volume 319, pp. 134–138. [Google Scholar]
  3. Silva, E.C.; Gabriel, P.H.R. Algoritmos genéticos e escalonamento de tarefas em multiprocessadores: Uma revisão sistemática da literatura. In Anais do Encontro Nacional de Inteligência Artificial e Computacional (ENIAC); Bianchi, R.A.C., Rios, R.A., Eds.; Sociedade Brasileira de Computação—SBC: Porto Alegre, RS, Brasil, 2020; pp. 250–261. [Google Scholar]
  4. De Jong, K. Evolutionary Computation: A Unified Approach; The MIT Press: Cambridge, MA, USA, 2006; p. 268. [Google Scholar]
  5. Kitchenham, B.A. Procedures for Performing Systematic Reviews; Technical Report TR/SE-0401; Department of Computer Science, Keele University: Keele, UK, 2004. [Google Scholar]
  6. Levy, Y.; Ellis, T.J. A Systems Approach to Conduct an Effective Literature Review in Support of Information Systems Research. Informing Sci. Int. J. Emerg. Transdiscipl. 2006, 9, 181–212. [Google Scholar] [CrossRef] [Green Version]
  7. Budgen, D.; Brereton, P. Performing systematic literature reviews in software engineering. Proceedings of the 28th International Conference on Software Engineering—ICSE ’06, Shanghai, China, 20–28 May 2006; pp. 1051–1052. [Google Scholar]
  8. Silva, E.C. Representações de Algoritmos Genéticos para o Problema de Escalonamento Estático de Tarefas em Multiprocessadores. Mather’s Thesis, Universidade Federal de Uberlândia, Uberlândia, MG, Brazil, 2020. [Google Scholar]
  9. Hou, E.S.H.; Hong, R.; Ansari, N. Efficient multiprocessor scheduling based on genetic algorithms. Proceedings of the 16th Annual Conference of IEEE Industrial Electronics Society, Pacific Grove, CA, USA, 27–30 November 1990; pp. 1239–1243. [Google Scholar]
  10. Kaur, K.; Chhabra, A.; Singh, G. Modified Genetic Algorithm for Task Scheduling in Homogeneous Parallel System Using Heuristics. Int. J. Soft Comput. 2010, 5, 42–51. [Google Scholar] [CrossRef] [Green Version]
  11. Benten, M.S.T.; Sait, S.M. Genetic scheduling of task graphs. Int. J. Electron. 1994, 77, 401–415. [Google Scholar] [CrossRef]
  12. Omara, F.A.; Arafa, M.M. Genetic algorithms for task scheduling problem. J. Parallel Distrib. Comput. 2010, 70, 13–22. [Google Scholar] [CrossRef]
  13. Hou, E.S.H.; Ansari, N.; Ren, H. A genetic algorithm for multiprocessor scheduling. IEEE Trans. Parallel Distrib. Syst. 1994, 5, 113–120. [Google Scholar] [CrossRef]
  14. Chitra, P.; Venkatesh, P.; Rajaram, R. Comparison of evolutionary computation algorithms for solving bi-objective task scheduling problem on heterogeneous distributed computing systems. Sadhana 2011, 36, 167–180. [Google Scholar] [CrossRef]
  15. Wang, P.C.; Korfhage, W. Process scheduling using genetic algorithms. In Proceedings of the Seventh IEEE Symposium on Parallel and Distributed Processing, San Antonio, TX, USA, 25–28 October 1995; pp. 638–641. [Google Scholar]
  16. Daoud, M.I.; Kharma, N. A hybrid heuristic–genetic algorithm for task scheduling in heterogeneous processor networks. J. Parallel Distrib. Comput. 2011, 71, 1518–1531. [Google Scholar] [CrossRef]
  17. Aguilar, J.; Gelenbe, E. Task assignment and transaction clustering heuristics for distributed systems. Inf. Sci. 1997, 97, 199–219. [Google Scholar] [CrossRef]
  18. Kang, Y.; Zhang, Z.; Chen, P. An activity-based genetic algorithm approach to multiprocessor scheduling. In Proceedings of the Seventh International Conference on Natural Computation, Shanghai, China, 26–28 July 2011; Volume 2, pp. 1048–1052. [Google Scholar]
  19. Kwok, Y.K.; Ahmad, I. Efficient scheduling of arbitrary task graphs to multiprocessors using a parallel genetic algorithm. J. Parallel Distrib. Comput. 1997, 47, 58–77. [Google Scholar] [CrossRef] [Green Version]
  20. Sathappan, O.L.; Chitra, P.; Venkatesh, P.; Prabhu, M. Modified genetic algorithm for multiobjective task scheduling on heterogeneous computing system. Int. J. Inf. Technol. Commun. Converg. 2011, 1, 146–158. [Google Scholar] [CrossRef]
  21. Tsuchiya, T.; Osada, T.; Kikuno, T. A new heuristic algorithm based on GAs for multiprocessor scheduling with task duplication. In Proceedings of the 3rd International Conference on Algorithms and Architectures for Parallel Processing, Melbourne, Australia, 10–12 December 1997; pp. 295–308. [Google Scholar]
  22. Wang, X.; Yeo, C.S.; Buyya, R.; Su, J. Optimizing the makespan and reliability for workflow applications with reputation and a look-ahead genetic algorithm. Future Gener. Comput. Syst. 2011, 27, 1124–1134. [Google Scholar] [CrossRef] [Green Version]
  23. Tsujimura, Y.; Gen, M. Genetic algorithms for solving multiprocessor scheduling problems. In Proceedings of the Asia-Pacific Conference on Simulated Evolution and Learning, Taejon, Korea, 9–12 November 1996; pp. 106–115. [Google Scholar]
  24. Ahmad, S.G.; Munir, E.U.; Nisar, W. PEGA: A Performance Effective Genetic Algorithm for Task Scheduling in Heterogeneous Systems. In Proceedings of the 2012 IEEE 14th International Conference on High Performance Computing and Communication & 2012 IEEE 9th International Conference on Embedded Software and Systems, Liverpool, UK, 25–27 June 2012; pp. 1082–1087. [Google Scholar]
  25. Wang, L.; Siegel, H.J.; Roychowdhury, V.P.; Maciejewski, A.A. Task Matching and Scheduling in Heterogeneous Computing Environments Using a Genetic-Algorithm-Based Approach. J. Parallel Distrib. Comput. 1997, 47, 8–22. [Google Scholar] [CrossRef] [Green Version]
  26. Kaur, R.; Singh, G. Genetic algorithm solution for scheduling jobs in multiprocessor environment. In Proceedings of the 2012 Annual IEEE India Conference (INDICON), Kochi, India, 7–9 December 2012; pp. 968–973. [Google Scholar]
  27. Woo, S.H.; Yang, S.B.; Kim, S.D.; Han, T.D. Task scheduling in distributed computing systems with a genetic algorithm. In Proceedings of the High Performance Computing on the Information Superhighway, Seoul, Korea, 28 April–2 May 1997; pp. 301–305. [Google Scholar]
  28. Panwar, P.; Lal, A.K.; Singh, J. A Genetic Algorithm Based Technique for Efficient Scheduling of Tasks on Multiprocessor System. In Proceedings of the International Conference on Soft Computing for Problem Solving (SocProS 2011), Roorkee, India, 20–22 December 2012; Volume 131, pp. 911–919. [Google Scholar]
  29. Tsuchiya, T.; Osada, T.; Kikuno, T. Genetics-based multiprocessor scheduling using task duplication. Microprocess. Microsyst. 1998, 22, 197–207. [Google Scholar] [CrossRef]
  30. Singh, J.; Singh, G. Improved task scheduling on parallel system using genetic algorithm. Int. J. Comput. Appl. 2012, 39, 17–22. [Google Scholar] [CrossRef]
  31. Corrêa, R.C.; Ferreira, A.; Rebreyend, P. Scheduling multiprocessor tasks with genetic algorithms. IEEE Trans. Parallel Distrib. Syst. 1999, 10, 825–837. [Google Scholar] [CrossRef] [Green Version]
  32. Xu, Y.; Li, K.; Khac, T.T.; Qiu, M. A Multiple Priority Queueing Genetic Algorithm for Task Scheduling on Heterogeneous Computing Systems. In Proceedings of the 2012 IEEE 14th International Conference on High Performance Computing and Communication & 2012 IEEE 9th International Conference on Embedded Software and Systems, Liverpool, UK, 25–27 June 2012; pp. 639–646. [Google Scholar]
  33. Jezic, G.; Kostelac, R.; Lovrek, I.; Sinkovic, V. Scheduling Tasks with Non-negligible Intertask Communication onto Multiprocessors by using Genetic Algorithms. In Artificial Neural Nets and Genetic Algorithms; Dobnikar, A., Steele, N.C., Pearson, D.W., Albrecht, R.F., Eds.; Springer: Vienna, Austria, 1999; pp. 196–201. [Google Scholar]
  34. Dhingra, S.; Gupta, S.B. Genetic algorithm parameters optimization for bi-criteria multiprocessor task scheduling using design of experiments. Int. J. Comput. Control Quantum Inf. Eng. 2013, 8, 661–667. [Google Scholar] [CrossRef]
  35. Zomaya, A.Y.; Ward, C.; Macey, B. Genetic scheduling for parallel processor systems: comparative studies and performance issues. IEEE Trans. Parallel Distrib. Syst. 1999, 10, 795–812. [Google Scholar] [CrossRef] [Green Version]
  36. Guzek, M.; Pecero, J.E.; Dorronsoro, B.; Bouvry, P. Multi-objective evolutionary algorithms for energy-aware scheduling on distributed computing systems. Appl. Soft Comput. 2014, 24, 432–446. [Google Scholar] [CrossRef]
  37. Liu, D.; Li, Y.; Yu, M. A genetic algorithm for task scheduling in network computing environment. In Proceedings of the Fifth International Conference on Algorithms and Architectures for Parallel Processing, Beijing, China, 23–25 October 2002; pp. 126–129. [Google Scholar]
  38. Singh, K.; Pillai, A.S. Schedule length optimization by elite-genetic algorithm using rank based selection for multiprocessor systems. In Proceedings of the International Conference on Embedded Systems, Paris, France, 20–22 August 2014; pp. 86–91. [Google Scholar]
  39. Topcuoglu, H.; Sevilmis, C. Task Scheduling with Conflicting Objectives. In Advances in Information Systems; Yakhno, T., Ed.; Springer: Berlin/Heidelberg, Germany, 2002; pp. 346–355. [Google Scholar]
  40. Xu, Y.; Li, K.; Hu, J.; Li, K. A genetic algorithm for task scheduling on heterogeneous computing systems using multiple priority queues. Inf. Sci. 2014, 270, 255–287. [Google Scholar] [CrossRef]
  41. Zhong, Y.W.; Yang, J.G. A genetic algorithm for tasks scheduling in parallel multiprocessor systems. In Proceedings of the 2003 International Conference on Machine Learning and Cybernetics (IEEE Cat. No.03EX693), Xi’an, China, 2–5 November 2003; Volume 3, pp. 1785–1790. [Google Scholar]
  42. Hassan, M.A.; Kacem, I.; Martin, S.; Osman, I.M. Genetic algorithms for job scheduling in cloud computing. Stud. Inform. Control 2015, 24, 387–400. [Google Scholar] [CrossRef] [Green Version]
  43. Wu, A.S.; Yu, H.; Jin, S.; Lin, K.C.; Schiavone, G. An incremental genetic algorithm approach to multiprocessor scheduling. IEEE Trans. Parallel Distrib. Syst. 2004, 15, 824–834. [Google Scholar] [CrossRef]
  44. Ahmad, S.G.; Liew, C.S.; Munir, E.U.; Ang, T.F.; Khan, S.U. A hybrid genetic algorithm for optimization of scheduling workflow applications in heterogeneous computing systems. J. Parallel Distrib. Comput. 2016, 87, 80–90. [Google Scholar] [CrossRef]
  45. Yao, W.; You, J.; Li, B. Main sequences genetic scheduling for multiprocessor systems using task duplication. Microprocess. Microsyst. 2004, 28, 85–94. [Google Scholar] [CrossRef]
  46. Amirjanov, A.; Sobolev, K. Scheduling of directed acyclic graphs by a genetic algorithm with a repairing mechanism. Concurr. Comput. Pract. Exp. 2016, 29, e3954. [Google Scholar] [CrossRef]
  47. Demiroz, B.; Topcuoglu, H.R. Static Task Scheduling with a Unified Objective on Time and Resource Domains. Comput. J. 2006, 49, 731–743. [Google Scholar] [CrossRef]
  48. Morady, R.; Dal, D. A multi-population based parallel genetic algorithm for multiprocessor task scheduling with Communication Costs. In Proceedings of the 2016 IEEE Symposium on Computers and Communication (ISCC), Messina, Italy, 27–30 June 2016; pp. 766–772. [Google Scholar]
  49. Jelodar, M.S.; Fakhraie, S.N.; Montazeri, F.; Fakhraie, S.M.; Ahmadabadi, M.N. A Representation for Genetic-Algorithm-Based Multiprocessor Task Scheduling. In Proceedings of the 2006 IEEE International Conference on Evolutionary Computation, Vancouver, BC, Canada, 16–21 July 2006; pp. 340–347. [Google Scholar]
  50. Sheikh, H.F.; Ahmad, I.; Fan, D. An Evolutionary Technique for Performance-Energy-Temperature Optimized Scheduling of Parallel Tasks on Multi-Core Processors. IEEE Trans. Parallel Distrib. Syst. 2016, 27, 668–681. [Google Scholar] [CrossRef]
  51. Ramachandra, G.; Elmaghraby, S.E. Sequencing precedence-related jobs on two machines to minimize the weighted completion time. Int. J. Prod. Econ. 2006, 100, 44–58. [Google Scholar] [CrossRef]
  52. Akbari, M.; Rashidi, H.; Alizadeh, S.H. An enhanced genetic algorithm with new operators for task scheduling in heterogeneous computing systems. Eng. Appl. Artif. Intell. 2017, 61, 35–46. [Google Scholar] [CrossRef]
  53. Azghadi, M.R.; Bonyadi, M.R.; Hashemi, S.; Moghadam, M.E. A Hybrid Multiprocessor Task Scheduling Method Based on Immune Genetic Algorithm. In Proceedings of the Fifth International ICST Conference on Heterogeneous Networking for Quality Reliability Security and Robustness, Hong Kong, China, 28–31 July 2008. [Google Scholar]
  54. Gandhi, T.; Nitin; Alam, T. Quantum genetic algorithm with rotation angle refinement for dependent task scheduling on distributed systems. In Proceedings of the 2017 Tenth International Conference on Contemporary Computing (IC3), Noida, India, 10–12 August 2017. [Google Scholar]
  55. Hwang, R.; Gen, M.; Katayama, H. A comparison of multiprocessor task scheduling algorithms with communication costs. Comput. Oper. Res. 2008, 35, 976–993. [Google Scholar] [CrossRef]
  56. Pillai, A.S.; Singh, K.; Saravanan, V.; Anpalagan, A.; Woungang, I.; Barolli, L. A genetic algorithm-based method for optimizing the energy consumption and performance of multiprocessor systems. Soft Comput. 2017, 22, 3271–3285. [Google Scholar] [CrossRef]
  57. Bonyadi, M.R.; Moghaddam, M.E. A Bipartite Genetic Algorithm for Multi-processor Task Scheduling. Int. J. Parallel Program. 2009, 37, 462–487. [Google Scholar] [CrossRef]
  58. Saad, A.; Kafafy, A.; Abd-El-Raof, O.; El-Hefnawy, N. A GRASP-Genetic Metaheuristic Applied on Multi-Processor Task Scheduling Systems. In Proceedings of the 2018 13th International Conference on Computer Engineering and Systems (ICCES), Cairo, Egypt, 18–19 December 2018; pp. 109–115. [Google Scholar]
  59. Pop, F.; Dobre, C.; Cristea, V. Genetic algorithm for DAG scheduling in Grid environments. In Proceedings of the 2009 IEEE 5th International Conference on Intelligent Computer Communication and Processing, Cluj-Napoca, Romania, 27–29 August 2009; pp. 299–305. [Google Scholar]
  60. Ahmad, I.; Sheikh, H.F. A multi-staged niched evolutionary approach for allocating parallel tasks with joint optimization of performance, energy, and temperature. J. Parallel Distrib. Comput. 2019, 134, 65–74. [Google Scholar] [CrossRef]
  61. Chitra, P.; Revathi, S.; Venkatesh, P.; Rajaram, R. Evolutionary algorithmic approaches for solving three objectives task scheduling problem on heterogeneous systems. In Proceedings of the 2nd International Advance Computing Conference, Patiala, India, 19–20 February 2010; pp. 38–43. [Google Scholar]
  62. Sheikh, H.F.; Ahmad, I.; Arshad, S.A. Performance, Energy, and Temperature Enabled Task Scheduling using Evolutionary Techniques. Sustain. Comput. Inform. Syst. 2019, 22, 272–286. [Google Scholar] [CrossRef]
  63. Gupta, S.; Kumar, V.; Agarwal, G. Task Scheduling in Multiprocessor System Using Genetic Algorithm. In Proceedings of the 2010 Second International Conference on Machine Learning and Computing, Bangalore, India, 9–11 February 2010; pp. 267–271. [Google Scholar]
  64. Wangsom, P.; Lavangnananda, K.; Bouvry, P. Multi-Objective Scientific-Workflow Scheduling With Data Movement Awareness in Cloud. IEEE Access 2019, 7, 177063–177081. [Google Scholar] [CrossRef]
Figure 1. An multiprocessor task scheduling problem (MTSP) instance, adapted from Reference [3], with eight tasks and two processors. In this figure, cc represents the communication cost; for instance, t6 waits two seconds to start its execution because task t3 is sending a message throw network.
Figure 1. An multiprocessor task scheduling problem (MTSP) instance, adapted from Reference [3], with eight tasks and two processors. In this figure, cc represents the communication cost; for instance, t6 waits two seconds to start its execution because task t3 is sending a message throw network.
Computation 08 00026 g001
Figure 2. Timeline of publications.
Figure 2. Timeline of publications.
Computation 08 00026 g002
Figure 3. Timeline of the computational environment.
Figure 3. Timeline of the computational environment.
Computation 08 00026 g003
Figure 4. Most cited works according to the Google Citation Rank.
Figure 4. Most cited works according to the Google Citation Rank.
Computation 08 00026 g004
Figure 5. Distribution of researchers around the world.
Figure 5. Distribution of researchers around the world.
Computation 08 00026 g005
Figure 6. Most used expressions in keywords (a) and abstracts (b).
Figure 6. Most used expressions in keywords (a) and abstracts (b).
Computation 08 00026 g006
Table 1. Combinations used to compose the search key.
Table 1. Combinations used to compose the search key.
(“evolutionary algorithmORgenetic algorithm”) AND
task schedulingAND
(parallel OR multiprocessor) AND
(“directed acyclic graphOR DAG OR workflow) AND
(representation OR encoding) AND
genetic operatorsAND
objective function
Table 2. Databases used in the search.
Table 2. Databases used in the search.
DatabaseURL
Google Scholarscholar.google.com
IEEE Xplore Digital Libraryieeexplore.ieee.org
Elsevier-Science Directsciencedirect.com
Portal de Periódicos Capesperiodicos.capes.gov.br
Table 3. Summary of the collection in chronological order. We employ the ID along this paper to referee the works.
Table 3. Summary of the collection in chronological order. We employ the ID along this paper to referee the works.
IDReferenceYearTypeIDReferenceYearType
1Hou et al. [9]1990Conf29Kaur et al. [10]2010Jour
2Benten and Sait [11]1994Jour30Omara and Arafa [12]2010Jour
3Hou et al. [13]1994Jour31Chitra et al. [14]2011Conf
4Wang and Korfhage [15]1995Conf32Daoud and Kharma [16]2011Jour
5Aguilar and Gelenbe [17]1997Jour33Kang et al. [18]2011Conf
6Kwok and Ahmad [19]1997Conf34Sathappan et al. [20]2011Jour
7Tsuchiya et al. [21]1997Conf35Wang et al. [22]2011Jour
8Tsujimura and Gen [23]1997Conf36Ahmad et al. [24]2012Conf
9Wang et al. [25]1997Jour37Kaur and Singh [26]2012Conf
10Woo et al. [27]1997Conf38Panwar et al. [28]2012Conf
11Tsuchiya et al. [29]1998Jour39Singh and Singh [30]2012Jour
12Correa et al. [31]1999Jour40Xu et al. [32]2012Conf
13Jezic et al. [33]1999Conf41Dhingra and Gupta [34]2013Jour
14Zomaya et al. [35]1999Jour42Guzek et al. [36]2014Jour
15Liu et al. [37]2002Conf43Singh and Pillai [38]2014Conf
16Topcuoglu and Sevilmis [39]2002Conf44Xu et al. [40]2014Jour
17Zhong and Yang [41]2003Conf45Hassan et al. [42]2015Jour
18Wu et al. [43]2004Jour46Ahmad et al. [44]2016Jour
19Yao et al. [45]2004Jour47Amirjanov and Sobolev [46]2016Jour
20Demiroz and Topcuoglu [47]2006Jour48Morady and Dal [48]2016Conf
21Jelodar et al. [49]2006Conf49Sheikh et al. [50]2016Jour
22Ramachandra and Elmaghraby [51]2006Jour50Akbari et al. [52]2017Jour
23Azghadi et al. [53]2008Conf51Gandhi et al. [54]2017Conf
24Hwang et al. [55]2008Jour52Pillai et al. [56]2017Jour
25Bonyadi and Moghaddam [57]2009Jour53Saad et al. [58]2018Conf
26Pop et al. [59]2009Conf54Ahmad and Sheikh [60]2019Jour
27Chitra et al. [61]2010Conf55Sheikh et al. [62]2019Jour
28Gupta et al. [63]2010Conf56Wangsom et al. [64]2019Jour
Table 4. Computational environment.
Table 4. Computational environment.
EnvironmentWorks IDTotal
Homogeneous1, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 17, 19, 22, 24, 25, 29, 30, 37, 41, 43, 47, 48, 49, 52, 53, 5529
Heterogeneous9, 15, 16, 20, 26, 27, 28, 31, 32, 33, 34, 35, 36, 39, 40, 42, 44, 45, 46, 50, 51, 54, 5624
Both10, 18, 21, 384
Unspecified231
Table 5. Presence of communication costs.
Table 5. Presence of communication costs.
CommunicationWorks ID
No1, 3, 8, 14, 15, 22, 28, 35, 43, 45, 52
YesAll the others.
Table 6. Performance metrics for the MTSP.
Table 6. Performance metrics for the MTSP.
MetricWorks ID
MakespanAll the works, except 5
Energy consumption42, 49, 52, 54, 55
Load balancing5, 26, 30, 46
System reliability27, 31, 34, 35
Flowtime27, 29, 53
Communication cost5, 56
Number of processors16, 20
System temperature48, 55
Parallelism50
Financial cost56
Table 7. Characteristics of the ten most cited works.
Table 7. Characteristics of the ten most cited works.
RefTitlePublished inYearEnvironmentCC?SJR
[13]A genetic algorithm for multiprocessor schedulingIEEE Transactions on Parallel and Distributed Systems1994HomogeneousNo 0.88
[25]Task Matching and Scheduling in Heterogeneous Computing Environments Using a Genetic-Algorithm-Based ApproachJournal of Parallel and distributed Computing1997HomogeneousYes 0.42
[43]An incremental genetic algorithm approach to multiprocessor schedulingIEEE Transactions on Parallel and Distributed Systems2004BothYes 0.88
[31]Scheduling multiprocessor tasks with genetic algorithmsIEEE Transactions on Parallel and Distributed Systems1999HomogeneousYes 0.88
[12]Genetic algorithms for task scheduling problemJournal of Parallel and distributed Computing2010HomogeneousYes 0.42
[35]Genetic scheduling for parallel processor systems: comparative studies and performance issuesIEEE Transactions on Parallel and Distributed Systems1999HomogeneousNo 0.88
[19]Efficient scheduling of arbitrary task graphs to multiprocessors using a parallel genetic algorithmJournal of Parallel and distributed Computing1997HomogeneousYes 0.42
[40]A genetic algorithm for task scheduling on heterogeneous computing systems using multiple priority queuesInformation Sciences2014HeterogeneousYes 1.62
[22]Optimizing the makespan and reliability for workflow applications with reputation and a look-ahead genetic algorithmFuture Generation Computer Systems2011HeterogeneousNo 0.84
[17]Task assignment and transaction clustering heuristics for distributed systemsInformation Sciences1997HomogeneousYes 1.62

Share and Cite

MDPI and ACS Style

da Silva, E.C.; Gabriel, P.H.R. A Comprehensive Review of Evolutionary Algorithms for Multiprocessor DAG Scheduling. Computation 2020, 8, 26. https://doi.org/10.3390/computation8020026

AMA Style

da Silva EC, Gabriel PHR. A Comprehensive Review of Evolutionary Algorithms for Multiprocessor DAG Scheduling. Computation. 2020; 8(2):26. https://doi.org/10.3390/computation8020026

Chicago/Turabian Style

da Silva, Eduardo C., and Paulo H. R. Gabriel. 2020. "A Comprehensive Review of Evolutionary Algorithms for Multiprocessor DAG Scheduling" Computation 8, no. 2: 26. https://doi.org/10.3390/computation8020026

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop