Abstract
This article investigates the assignment of tasks with interdependencies in a heterogeneous multiprocessor environment; specific to this problem, task execution time varies depending on the nature of the tasks as well as with the processing element assigned. The solution to this heterogeneous multiprocessor scheduling problem involves the optimization of complete task assignments and processing order between the assigned processors to arrive at a minimum makespan, subject to a precedence constraint. To solve an NP-hard combinatorial optimization problem, as is typified by this problem, this paper presents a hybrid evolutionary algorithm that incorporates two local search heuristics, which exploit the intrinsic structure of the solution, as well as through the use of specialized genetic operators to promote exploration of the search space. The effectiveness and contribution of the proposed features are subsequently validated on a set of benchmark problems characterized by different degrees of communication times, task, and processor heterogeneities. Preliminary results from simulations demonstrate the effectiveness of the proposed algorithm in finding useful schedule sets based on the set of new benchmark problems.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Ahmad I, Kwok YK (1998) Optimal and near-optimal allocation of precedence-constrained tasks to parallel processors: defying the high complexity using effective search techniques. In: Proceedings of 1998 international conference on parallel processing, pp 423–431
Ahmad I, Kwok YK (1998) On exploiting task duplication in parallel program scheduling. IEEE Trans Parallel Distrib Syst 9(9): 872–892
Baskiyar S, Dickinson C (2005) Scheduling directed a-cyclic task graphs on a bounded set of heterogeneous processors using task duplication. J Parallel Distrib Comput 65(8): 911–921
Blickle T, Teich J, Thiele L (1996) System level synthesis using evolutionary algorithms, TIK-Report, Nr. 16
Braun TD, Siegel HJ, Beck N, Boloni LL, Maheswaran M, Reuther AI, Robertson JP, Theys MD, Yao B, Hensgen D, Freund RF (2001) A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing systems. J Parallel Distrib Comput 61(6): 810–837
Burke EK, Cowling P, De Causmaecker P (2001) A memetic approach to the nurse rostering problem. Appl Intell 15(3): 199–214
Coll PE, Ribeiro CC, de Sousa CC (2002) Test instances for scheduling unrelated processors under precedence constraints. http://www-di.inf.pucrio.br/celso/grupo/readme.ps
Correa RC, Ferreira A, Rebreyend P (1999) Scheduling multiprocessor tasks with genetic algorithms. IEEE Trans Parallel Distrib Syst 10(8): 825–837
Davidovic T, Crainic TG (2003) New benchmarks for static task scheduling on homogenous multiprocessor systems with communication delays, Publication CRT, 2003-04, Centre de Recherche sur les Transports, Universite de Montreal, pp 123–136
Davis L (1991) Handbook of genetic algorithms. Van Nostrand Reinhold, London
Dhodi MK, Hielscher EH, Storer RH, Bhasker J (1995) Datapath synthesis using a problem space genetic algorithm. IEEE Trans CAD 14(8): 934–944
Eiben AE, Smith JE (2003) Introduction to evolutionary computing. Springer, New York
El-Rewini H, Lewis TG, Ali HH (1994) Task scheduling in parallel and distributed systems. Prentice Hall, Englewood Cliffs
Franca PM, Mendes A, Moscato P (2001) A memetic algorithm for the total tardiness single machine scheduling problem. Eur J Oper Res 132(1): 224–242
Garey MR, Johnson DS (1979) Computers and intractability, a guide to the theory of NP-completeness. W.H. Freeman and Co., San Francisco
Hall NG, Posner ME (2001) Generating experimental data for computational testing with machine scheduling applications. Oper Res 49: 854–865
Hou ES, Ansari N, Ren H (1994) A genetic algorithm for multiprocessor scheduling. IEEE Trans Parallel Distrib Syst 5(2): 113–120
Ishibuchi H, Yoshida T, Murata T (2003) Balance between genetic search and local search in memetic algorithms for multiobjective permutation flowshop scheduling. IEEE Trans Evol Comput 7(2): 204–223
Kasahara H, Narita S (1984) Practical multiprocessor scheduling algorithms for efficient parallel processing. IEEE Trans Comput 33(11): 1023–1029
Kruatrachue B, Lewis TG (1987) Duplication scheduling heuristic, a new precedence task scheduler for parallel systems, Technical Report 87-60-3, Oregon State University
Kwok Y, Ahmad I (1997) Efficient scheduling of arbitrary task graphs to multiprocessors using a parallel genetic algorithm. J Parallel Distrib Comput 47(1): 58–77
Kwok Y, Ahmad I (1999) Static scheduling algorithms for allocating directed task graphs to multiprocessors. ACM Comput Surv 31(4): 406–471
Lewis TG, El-Rewini H (1992) Introduction to parallel computing. Prentice Hall, New York
Lim D, Ong YS, Jin Y, Sendhoff B, Lee BS (2007) Efficient hierarchical parallel genetic algorithm using grid computing. In: Future generation computer systems: the international journal of grid computing: theory, methods and applications, pp 658–670
Macey BS, Zomaya AY (1998) A performance evaluation of CP list scheduling heuristics for communication intensive task graphs. In: Proceedings of the joint 12th international parallel processing symposium and ninth symposium on parallel and distributed programming, pp 538–541
Merz P, Freisleben B (2000) Fitness landscape analysis and memetic algorithms for the quadratic assignment problem. IEEE Trans Evol Comput 4(4): 337–352
Ong YS, Keane AJ (2004) Meta-Lamarckian learning in memetic algorithms. IEEE Trans Evol Comput 8(2): 99–110
Ong YS, Lim MH, Zhu N, Wong KW (2006) Classification of adaptive memetic algorithms: a comparative study. IEEE Trans Syst Man Cybern B 36(1): 141–152
Papadimitriou C, Yannakakis M (1990) Toward an architecture independent analysis of parallel algorithms. SIAM J Comput 19: 322–328
Ritchie G, Levine J (2004) A hybrid ant algorithm for scheduling independent jobs in heterogeneous computing environments. In: Proceedings of the 23rd workshop of the UK planning and scheduling special interest group
Tang J, Lim MH, Ong YS (2007) Diversity-adaptive parallel memetic algorithm for solving large scale combinatorial optimization problems. Soft Comput 7(9): 873–888
Tsuchiya T, Osada T, Kikuno T (1998) Genetic-based multiprocessor scheduling using task duplication. Microprocessors Microsyst 22: 197–207
Wu AS, Yu H, Jin S, Lin KC, Schiavone G (2004) An incremental genetic algorithm approach to multiprocessor scheduling. IEEE Trans Parallel Distrib Syst 15(9): 824–834
Zhou Z, Ong YS, Lim MH, Lee BS (2007) Memetic algorithm using multi-surrogates for computationally expensive optimization problems. Soft Comput 11(10): 957–972
Zhong YW, Yang JG, Qi HN (2004) A hybrid genetic algorithm for task scheduling in heterogeneous computing systems. In: Proceedings of the third international conference on machine learning and cybernetics, pp 2463–2468
Zomaya AY, Ward C, Macey B (1999) Genetic scheduling for parallel processor systems: comparative studies and performance issues. IEEE Trans Parallel Distrib Syst 10(8): 795–812
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Goh, C.K., Teoh, E.J. & Tan, K.C. A hybrid evolutionary approach for heterogeneous multiprocessor scheduling. Soft Comput 13, 833–846 (2009). https://doi.org/10.1007/s00500-008-0356-2
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00500-008-0356-2