Abstract
Genetic Algorithms (GAs) are stochastic search techniques based on principles of natural selection and recombination that attempt to find optimal solutions in polynomial time by manipulating a population of candidate solutions. GAs have been widely used for job scheduling optimisation in both homogeneous and heterogeneous computing environments. When compared with list scheduling heuristics, GAs can potentially provide better solutions but require much longer processing time and significant experimentation to determine GA parameters. This paper presents a GA for scheduling dependent jobs in grid computing environments. A number of selection and pre-selection criteria for the GA are evaluated with an aim to improve GA performance in job scheduling optimization. A Task Matching with Data scheme is proposed as a GA mutation operator. Furthermore, the effect of the choice of heuristics for seeding the GA is investigated.
Similar content being viewed by others
References
Foster I, Kesselman C (eds) (2004) The grid 2: blueprint for a new computing infrastructure, 2nd edn. Elsevier, San Francisco
Singh G, Kesselman C, Deelman E (2005) Optimizing grid-based workflow execution. J Grid Comput 3(3):201–219
Yu J, Buyya R (2007) Workflow scheduling algorithms for grid computing. Technical report, GRIDS-TR-2007-10, Grid Computing and Distributed Systems Laboratory, The University of Melbourne, Australia
Li M, Baker M (2005) The grid core technologies. Wiley, London
Foster I, Kesselman C, Nick JM, Tuecke S (2002) The physiology of the grid: an open grid services architecture for distributed systems integration. In: Open grid service infrastructure WG, Global grid forum, Edinburgh, July 2002
Foster I, Kesselman C, Tuecke S (2001) The anatomy of the grid: enabling scalable virtual organizations. Int J High Perform Comput Appl 15(3):200–222
Ibarra OH, Kim CE (1977) Heuristic algorithms for scheduling independent tasks on nonidentical processors. J ACM 24(2):280–289
Berman F (1998) High-performance schedulers. In: Foster I, Kesselman C (eds) The grid: blueprint for a future computing infrastructure. Morgan Kaufmann, San Mateo
Topcuoglu H, Hariri S, Wu MY (2002) Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Trans Parallel Distrib Syst 13(3):260–274
Yu J, Buyya R (2006) Scheduling scientific workflow applications with deadline and budget constraints using genetic algorithms. Sci Program 14:217–230
Braun TD, Siegel HJ, Beck N, Boloni LL, Maheswarans M, Reuthert AI, Robertson JP, Theys MD, Yao B, Hensgeno D, Freund RF (2001) A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing system. J Parallel Distrib Comput 61(6):810–837
Yu J, Buyya R (2005) A taxonomy of workflow management systems for grid computing. J Grid Comput 3(3–4):171–200
Kwok Y-K, Ahmad I (1999) Benchmarking and comparison of the task graph scheduling algorithms. J Parallel Distrib Comput 59(3):381–422
Wang L, Siegel HJ, Roychowdhury V, Maciejewski A (1997) Task matching and scheduling in heterogeneous computing environments using a genetic-algorithm-based approach. J Parallel Distrib Comput 47(1):8–22
YarKhan A, Dongarra JJ (2002) Experiments with scheduling using simulated annealing in a grid environment. In: Proceedings of the third international workshop on grid computing (GRID 2002), Baltimore, November 2002. CS Press, New York
Xhafa F, Abraham A (2008) Meta-heuristics for grid scheduling problems. In: Xhafa F, Abraham A (eds) Meta-heuristics for grid scheduling problems. Springer, Berlin
Resende MGC (2002) A greedy randomized adaptive search procedure for job shop scheduling. In: Ribeiro CC, Hansen P (eds) Essays and surveys in metaheuristics. Kluwer Academic, Dordrecht, pp 58–79
Binato S, Hery WJ, Loewenstern DM, Resende MGC (2001) A grasp for job shop scheduling. In: Hansen P, Ribeiro CC (eds) Essays and surveys on metaheuristics. Kluwer Academic, Dordrecht
Binato S, Hery WJ, Loewenstern DM, Resende MGC (2002) A greedy randomized adaptive procedure for job shop scheduling. In: Ribeiro C, Hansen P (eds) Essays and surveys on metaheuristics. Kluwer Academic, Dordrecht, pp 58–79
Falzon G, Li M (2009) Evaluating heuristics for grid workflow scheduling. In: The 5th international conference on natural computation (ICNC’09), Tianjin, China, 14–16 August 2009. IEEE Computer Society, Los Alamitos, pp 227–231
Maheswaran M, Ali S, Siegel HJ, Hensgen D, Freund RF (1999) Dynamic mapping of a class of independent tasks onto heterogeneous computing systems. J Parallel Distrib Comput 59(2):107–131
Casanova H, Legrand A, Zagorodnov D, Berman F (2000) Heuristics for scheduling parameter sweep applications in grid environments. In: Proceedings of the 9th heterogeneous computing workshop (HCW 2000), Cancun, Mexico. IEEE Computer Society, Los Alamitos, pp 349–363
Maheswaran M, Siegel HJ (1998) A dynamic matching and scheduling algorithm for heterogeneous computing systems. In: 7th heterogeneous computing workshop, Orlando, March 1998, pp 57–69
Iverson M, Ozguner F, Follen G (1995) Parallelizing existing applications in distributed heterogeneous environments. In: Proceedings of heterogeneous computing workshop
Alhusaini AH, Prasanna KV, Raghavendra CS (1999) A unified resource scheduling framework for heterogeneous computing environments. In: Proceedings of the eighth heterogeneous computing workshop. IEEE Computer Society, Los Alamitos, pp 156–165
Ilavarasan E, Thambidurai P (2007) Low complexity performance effective task scheduling algorithm for heterogeneous computing environments. J Comput Sci 3(2):94–103
Hou ESH, Ansari N, Ren H (1994) A genetic algorithm for multiprocessor scheduling. IEEE Trans Parallel Distrib Syst 5(2):113–120
Han L, Kendall G (2003) Guided operators for a hyper-heuristic genetic algorithm. In: AI 2003: advances in artificial intelligence, Perth, 3–5 December 2003. Springer, Berlin, pp 807–820
Falzon G, Li M (2010) Enhancing list scheduling heuristics for dependent job scheduling in grid computing environments. J Supercomput (online) http://www.springerlink.com/content/k648983568888u06/?p=52d1f8036bca45ccb91c06682f549c8c&pi=1
Abraham A, Buyya R, Nath B (2000) Nature’s heuristics for scheduling jobs on computational grids. In: The 8th IEEE international conference on advanced computing and communications (ADCOM 2000), Cochin, India, 14–16 December 2000
Rahmani AM, Rezvani M (2009) A novel genetic algorithm for static task scheduling in distributed systems. Int J Comput Theory Eng 1(1):1–6
Pooranian Z, Harounabadi A, Shojafar M, Hedayat N (2011) New hybrid algorithm for task scheduling in grid computing to decrease missed task. In: World academy of science, engineering and technology, vol 55, pp 5–9
Xue X, Gu Y (2010) Global optimization based on hybrid clonal selection genetic algorithm for task scheduling. J Comput Inf Syst 6(1):253–261
Pop F, Dobre C, Cristea V (2009) Genetic algorithm for dag scheduling in grid environments. In: IEEE 5th international conference on intelligent computer communication and processing (ICCP 2009), Cluj-Napoca, pp 299–305
Gao Y, Rong H, Huang JZ (2005) Adaptive grid job scheduling with genetic algorithms. Future Gener Comput Syst 21:151–161
Lim D, Ong Y-S, Jin Y, Sendho B, Lee B-S (2007) Efficient hierarchical parallel genetic algorithms using grid computing. Future Gener Comput Syst 23(4):658–670
Konak A, Coit DW, Smith AE (2006) Multi-objective optimization using genetic algorithms: a tutorial. Reliab Eng Syst Saf 91(9):992–1007
Prabhu S, Kumar N V (2011) Multi-objective optimization based on genetic algorithm in grid scheduling. Int J Adv Res Technol 1(1):54–58
Garg R, Singh AK (2011) Multi-objective optimization to workflow grid scheduling using reference point based evolutionary algorithm. Int J Comput Appl Technol 22(6):44–49
Cantú-Paz E (1998) A survey of parallel genetic algorithms, calculateurs paralleles. Res Syst Rep 10(2):141–171
Jang S-H, Wu X, Taylor V, Mehta G, Vahi K, Deelman E (2004) Using performance prediction to allocate grid resources. GriPhyN technical report 2004-25
Nudd GR, Kerbyson DJ, Papaefstathiou E, Perry SC, Harper JS, Wilcox DV (2000) Pace—a toolset for the performance prediction of parallel and distributed systems. Int J High Perform Comput Appl 14(3):228–251
Jarvis SA, Spooner DP, Keung HNLC, Cao J, Saini S, Nudd GR (2006) Performance prediction and its use in parallel and distributed computing systems. Future Gener Comput Syst 22(7):745–754
Smith W, Foster I, Taylor VE (1998) Predicting application run times using historical information. In: Proceedings of the workshop on job scheduling strategies for parallel processing (IPPS/SPDP’98), London, UK. Springer, Berlin, pp 122–142
Hammond S, Mudalige G, Smith J, Herdman J, Vadgama A, Jarvis SA (2009) Warpp—a toolkit for simulating high-performance parallel scientific codes. In: 2nd ACM international conference on simulation tools and techniques, Rome, Italy, 2–6 March 2009
Holland JH (1975) Adaptation in natural and artificial systems. University of Michigan Press, Ann Arbor
Carretero J, Xhafa F, Abraham A (2005) Genetic algorithm based schedulers for grid computing systems. Int J Innov Comput Inf Control 3(5):1–19
Mitchell M (1998) An introduction to genetic algorithms. MIT Press, London
Page AJ, Naughton TJ (2005) Dynamic task scheduling using genetic algorithms for heterogeneous distributed computing. In: Proceedings of 19th IEEE international parallel and distributed processing symposium, Denver, Colorado, 4–8 April 2005
Alham NK, Li M, Liu Y, Hammoud S (2011) A MapReduce-based distributed SVM algorithm for automatic image annotation. Comput Math Appl 62(7):2801–2811
Li M, Yu B, Qi M (2006) PGGA: a predictable and grouped genetic algorithm for job scheduling. Future Gener Comput Syst 22(5):588–599
Liu Y, Li M, Alham NK, Hammoud S, Ponraj M (2011) Load balancing in MapReduce environments for data intensive applications. In: Proceedings of the eighth international conference on fuzzy systems and knowledge discovery (FSKD), pp 2675–2678
Zhang Q, Cheng L, Boutaba R (2010) Cloud computing: state-of-the-art and research challenges. J Internet Serv Appl 1(1):7–18
Dean J, Ghemawat S (2008) MapReduce: simplified data processing on large clusters. Commun ACM 51(1):107–113
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Falzon, G., Li, M. Enhancing genetic algorithms for dependent job scheduling in grid computing environments. J Supercomput 62, 290–314 (2012). https://doi.org/10.1007/s11227-011-0721-2
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-011-0721-2