Abstract: To meet the ever increasing demand of computing capacity and to cater towards collaborative engineering grid systems have emerged as the effective solution. Scheduling on such systems play a very critical role to ensure that the available resources are assigned and used optimally. Scheduling on grid has been proven to be an NP hard problem owing to the heterogeneity of the participating resources and dynamicity of the grid system. GA has gained popularity among the researchers for scheduling problems on the grid systems being a part of the evolutionary computing based on Darwin’s theory of survival of the fittest. The proposed work presents a design and eventual analysis of a scheduling strategy using GA that schedules the job with the objective of minimizing the turnaround time of the job. This is done ensuring the resource assignment as per the job’s requirement while considering the precedence and communication cost constraints. The work explores the use of Roulette wheel and Rank selection method as the selection methods while varying other parameters to study the model under various conditions.
Keywords’ Computational Grid, Genetic Algorithm (GA), DAG, Job Scheduling, Turnaround Time (TAT)
The term Grid first proposed by Foster and Kesselman in 1998 [1, 2]. Grid Computing is a new technology that has gained attention during the last few years as the need for computational capacity has increased enormously some of the examples being scientific research, drug discovery, DNA analysis, earthquake, flood and analysis of protein structure. Grid computing can be realized in various forms viz. computational grid, data grid, bio grid, campus grid, infrastructure grid or a combination of some of these forms with a focus on various aspects depending on its type. A computational grid is the one which focuses on job scheduling and execution while meeting the scheduling objective(s) varying from turnaround time, reliability, throughput to many other Quality of Service (QoS) parameters. The Computational Grid is realized as a large scale, heterogeneous collection of systems/nodes that are globally distributed across the globe connected by heterogeneous networks like LAN or WAN using appropriate interfaces like Alchemi, Globus and BONIC etc. The resulting structure behaves like a huge supercomputer which helps in solving large scale problems within reasonable time. In grid system the nodes are dynamic in nature as they may join or leave the system at any moment of time because of weak network connections or the autonomy exercised by the user. Therefore, mapping of computational needs of tasks within the available resources is a crucial task to achieve efficiency and maximum use of available resources. Scheduling is the way processes are assigned to run on different resources according to their need and is defined as the problem of allocating T number of tasks on M machines in |M||T| ways with the total no. of running states being |T| . This can, in turn, vary with the no. of nodes and the number of tasks. The management of available resources and the assignment of tasks to them have to be governed by the scheduling strategy. The jobs are scheduled in such a manner so that optimal solution can be obtained in a reasonable time. The grid systems being heterogeneous in nature, the middleware should first discover the available resources. The unwanted resources not suiting the job’s requirements are then filtered away with the job considered for scheduling on the remaining ones. Scheduling in Grid system has been established to be an NP hard problem . Therefore, soft computing techniques find the immediate application for scheduling the job on this heterogeneous and dynamic structure. Genetic Algorithm (GA) is one such evolutionary technique which is popular among the researchers owing to its simplicity and effective results. GA works on the basis of finding the best solution in a population and then refining the results over generations till we get the satisfactory solution. Thus, selection of the appropriate chromosomes in the given population and the rate at which the population is mutated becomes very important. Roulette wheel selection and Rank selection methods are applied in this work to study the behavior of the scheduling model under various test conditions.
II. RELATED WORK
Scheduling in the grid being NP hard problem cannot be solved by the polynomial time algorithms. Therefore, meta-heuristic methods are used to obtain the solutions . Further, these algorithms avoid error caused due to their own operation while searching for the solutions. There are many heuristic methods reported for job scheduling in the computational grid. Yarkhan and Dongarra used Simulated Annealing and finds that it avoid local minima and have better execution time as compared to ad-hoc greedy scheduling [6, 7]. In Tabu Search the local search procedure keeps track of the search area already tracked so as to avoid repetition and hence avoid local optima [6,7]. Xhafa and Carretero reports the use of GA and after generating initial population by LJFR-SJFR find better results than other heuristics like Min-Min . Local Search proposed by Ritchie and Levine, when used for dynamic and static scheduling shows improved results and give best known makespan for the benchmark problem . In recent years even Ant Colony Optimization (ACO) has been used in scheduling in the Grid environment . It shows that in case of ACO, better resources have higher probability of getting selected however this decreases the overall performance. Ritchie and Levine combined ACO algorithm with Tabu Search for scheduling problem in order to better makespan . J. Yu and R. Buyya uses List scheduling by using priority that are assigned to the tasks and provide a better schedule at a much lower processing time [13, 14, 15]. Cluster algorithms assigned the grouped task to the same cluster and are used when abundant resources are there with the duplication based algorithm having higher computation complexity [10, 11, 12]. Geoffrey Falzon and Maozhen Li  used GA for dependent task scheduling. They used a crossover technique which changes the order of genes in offspring according to the second chromosome. Later they find that rank based scheduling gives better scheduling solution. V. D. Martino and M. Mililotti used GA to solve the scheduling problem to maximize the throughput . Jose et. al. uses hybrid GA for job shop scheduling problem their aim was to improve total time for scheduling . C. Grosan, A. Abraham, and B. Helvik proposed multiobjective evolutionary algorithm which uses evolutionary computation and theoretical framework of multi-criteria decision making i.e. Pareto dominance method . Y. H. Lee, S. Lu, R. S. Chang proposed a Hierarchical Load Balancing Algorithm (HLBA) for grid environment. It balances the system load according to threshold values and minimizes the makespan of jobs . J. Yu and R. Buyya  proposed a new GA using markov decision making process so that it converges faster. They used budget constraints and minimum execution time as their objectives. G.V. Iordache, M.S. Boboila et.al. proposed SAGA a decentralized solution for task scheduling in heterogeneous environments which shows significant convergence when speed-up is taken as objective function . L. Liu and Y. Xi  proposed a hybrid GA for the job shop scheduling problem to minimize makespan where SPV (Smallest Position Value) rule is used to convert a real number vector to a job repetition representation.
III. PROBLEM STATEMENT
Job scheduling in Grid Computing can be single objective or multi-objective according to the requirements and the constraints considered. In this paper, we consider the problem as single objective optimization problem of minimizing the Turnaround Time (TAT). Here, DAG based jobs comprising of sub-modules with their precedence constraints are considered to be mapped on the appropriate resources. The model uses centralized scheduler for job scheduling. Each node has attributes like processing speed, time allocated to a job. Further, each node is considered to have a single processor. Though, practically a node may have more than one processor. Distributed scheduling policy is used when job is submitted at any node while the suitability of any given node being evaluated by the dispatcher which is a part of the Grid Scheduler (GS). At any moment of time, GS holds the following information :
a) No. of resources/nodes available at any instant of time.
b) Previously allocated workload on each node.
c) Time to finish for the previously allocated jobs.
d) Nature of job in terms of its resource requirements.
e) Processing speed of a job on a node. It can be calculated as:
proc_speed= noins/cf ; (1)
Where, noins= no. of instructions in a job module under consideration, and
cf= clock frequency of a node/processor.
This information is used in selecting the best resources for a particular job module. The chromosome holds the node number and index of the chromosome gives the job module that are executing on that node. Consider a scenario having 4 machines and 10 jobs. A typical job allocation schedule is represented as shown in Figure 1(a). Figure 1(b) shows how the jobs are dispatched on the machine for the same.
1 4 2 1 3 2 4 1 3 2
Figure 1(a) Chromosomes
Job 1 Job 4 Job 8
Job 3 Job 6 Job 10
Job 5 Job 9
Job 2 Job 7
Figure 1(b) Job/Machine Dispatch
Different arrangement of node at different index in chromosome results in different TAT values. Using GA, the scheduler tends to converge to the best solution offering the minimum TAT. The fitness function for the evaluation of the TAT is expressed as follows :
Where, NECikl = node execution cost for processing a module mi of a job Jj on a module Pk at level l.
Eijk= processing speed of a module mi of a job Jj on a module Pk.
Bihk= inter-module communication cost (IMC) between module mi and mh of job Jj.
Dkr=hamming distance between nodes Pk and Pr of a cluster. This corresponds to the number of links traversed between two nodes Pk and Pr.
RTkl=previous workload by the previous assigned job on node Pk at level l.
Further, RTkl can be calculated as
RTkl = max (NECikl) (3)
This value gets updated with max value of NECikl among all node values which are at same level l in the DAG.
The Turnaround Time (TAT) for a chromosome can then be calculated as
TATi = max(NECikl) (4)
A. Scheduling Algorithm
The strategy uses GA with two selection methods viz. Rank selection and Roulette wheel selection, for selecting the chromosomes and is an extension of the work done in . Standard operations like crossover and mutation are followed on the population of chromosomes generated randomly. After performing the above mentioned operations the chromosome with minimum TAT value is obtained, which offers the way, scheduling is done so as to optimize the resources. In this algorithm parameter are tuned to obtain better results in terms of TAT. The algorithm is described in detail as below.
‘ For the population of chromosomes calculate the NECikl and finally TAT for each chromosome of the available parent population.
‘ Randomly select two chromosomes from the parent population depending on the strategy viz. rank selection or roulette wheel selection. If the selected chromosomes are same then repeat the selection process till chromosomes obtained remain the same, crossover operation is performed next on the selected chromosomes to produces two child chromosomes. Here crossover performed is single point crossover and the crossover point is randomly chosen. These children are then stored in a new variable named new population. If child chromosomes generated after crossover is already there in the new population then these child chromosomes are discarded and the process is repeated again. Repeat this process of selection and then perform crossover over the selected chromosomes by the no. of population. This gives a new population of child chromosomes. Now calculate the NECikl and finally TAT of each chromosome. Next, pool the parent and child chromosomes together and out of them select the best having same no. of chromosomes as that of parent chromosomes resulting in the population set for new generation.
Perform mutation on the population if it satisfies the necessary condition. Mutation is performed after a fixed no. of generations. In this work, the three generation values after which mutation was effectuated are 5th, 10th and 15th. The population selected for mutation too varies as 25%, 50% and 100% respectively. For a generation value i.e. when mutation is performed after every 5th generation then first 25% population is mutated and the mutated chromosomes replaces its parent chromosomes. Similarly, it is done using 50% and 100% of the population. If child generated after mutation is already there in the new population then the process is repeated until different chromosomes are obtained. As is the case with GA, worst chromosomes in old population are replaced by the new ones obtained after mutation.
The population generated in this generation is used as parent population for the next generation and so on.
The algorithm for the same is presented in the box below:
B. Experimental Study
Simulation study was done to observe the effect of Roulette wheel selection scheme and Rank selection scheme for varying mutation schemes. The experiments were conducted on Intel Core-2 Duo @1.97GHz using MATLAB 7.6.0 (R2008a). The data values taken in the experiment were generated dynamically during the program execution. The number of generations tested for the same was close to 100. Table 1 summarizes the values and range of various parameters that are used while performing the simulation.
TABLE I. VALUES OF PARAMETER USED FOR TUNING THE GA
Parameter Notation Used Range
No. of resources no_resources 5-20
Clock frequency cf 10-20
Distance between two processor Dkr 2-5
Time to finish previous load RTkl 2-5
No. of Module in a job no_module 5-20
No. of instructions in a module noins 100-500
Inter module communication between modules IMC 2-5
Population Size no_pop 100-1000
Size of chromosome size_chromosomes 5-20
No. of generation no_generation 100,200,500,1000
Crossover considered during experiment Single point crossover —
Mutation performed after(gen.)
Population selected for Mutation — 25%,50%,100%
Rank selection method rank_selection —
Roulette wheel selection method rw_selection —
As mentioned earlier, the intention of the work is to study the behavior of the GA based scheduling model for two different selection schemes viz. Roulette wheel selection and the Rank selection scheme while applying mutation after varying number of generations on varying population sizes. The case studies for the same have been summarized below:
RS 25: It represents Rank Selection scheme with 25% population selected for mutation.
RS 50: It represents Rank Selection scheme with 50% population selected for mutation.
RS 100: It represents Rank Selection scheme with 100% population selected for mutation.
RW 25: It represents Roulette wheel Selection scheme with 25% population selected for mutation.
RW 50: It represents Roulette wheel Selection scheme with 50% population selected for mutation.
RW 100: It represents Roulette wheel Selection scheme with 100% population selected for mutation.
Figure 1.2 – 1.7 presents the observations of all these cases with mutation applied on 25%, 50% and 100% of the population after 5th, 10th and 15th generation respectively.
Figure 1.2: TAT v/s Generations with Mutations applied after 5th Generation
Figure 1.3: TAT v/s Generations with Mutations applied after 10th Generation
Figure 1.4: TAT v/s Generations with Mutations applied after 15th Generation
Figure 1.5: TAT v/s Generations with 25 percent population being mutated
Figure 1.6: TAT v/s Generations with 50 percent population being mutated
Figure 1.7: TAT v/s Generations with 100 percent population being mutated
Both Roulette wheel selection and Rank selection methods effectively converge almost to the same solution while optimizing the results over generations.
In general it has been observed that Rank selection provides the best results be it the case of population being mutated as 25%, 50% or even 100%. Roulette wheel selection other than some exceptions could never match this performance.
Among itself, in Rank selection, the best results are obtained with 25% population being mutated.
Roulette wheel converged to the final solution at a much faster rate as compared to Rank selection but the overall result was inferior as compared to the one obtained with Rank selection although after a longer time.
It is observed that when 100% of the population is mutated the results were not getting converged to the best value. This is expected as the entire population gets changed in the process.
There is no substantial effect on the results with Mutation being effectuated after 5th, 10th or 15th generation.
IV. CONCLUSION AND FUTURE SCOPE
Scheduling on a grid is an NP hard problem deeming GA one of the useful tools to solve such problems. The work analyzed a GA based scheduling scheme to study the effect of two selection methods viz. rank selection and roulette wheel selection method for selecting the chromosomes for varying mutation rates. Simulation study reveals that of the two schemes rank selection performs better with the best performance realized when 25 percent population being mutated. The work can be extended to use other ad hoc heuristics such as Min-Min or Stratified Min-Min, for seeding of initial population, design a multi-objective scheduler using other evolutionary techniques while incorporating the scheduler in the real grid-based applications.
 I. Foster, ‘What is the Grid? A three point checklist’.
 I. Foster and C. Kesselman, ‘The Grid – Blueprint for a New Computing Infrastructure’. Morgan Kaufmann Publishers,1998.
 A. Baruah, ‘A GA Approach to Static Task Scheduling in Grid based Systems’, International Journal on Computer Science and Engineering (IJCSE), ISSN: 0975-3397, Vol. 4 No. 01 January 2012.
 M.R. Garey and D.S. Johnson, ‘Computers and Intractability ‘ A Guide to the Theory of NP Completeness.’ W.H. Freeman and Co., 1979.
 A. Abraham, J. Carretero and F. Xhafa, ‘Genetic Algorithm Based Schedulers for Grid Computing Systems.’ International Journal of Innovative Computing, Information and Control Vol. 3, No. 6, December 2007, ISSN:1349-4198.
 A. Yarkhan and J. Dongarra, ‘Experiments with scheduling using simulated annealing in a grid environment.’ In 3rd International Workshop on Grid Computing (GRID2002), 232’242, 2002.
 A. Abraham, R. Buyya, and B. Nath, ‘Nature’s heuristics for scheduling jobs on computational grids.’ In The 8th IEEE International Conference on Advanced Computing and Communications (ADCOM 2000), India, 2000.
 J. Carretero and F. Xhafa, ‘Using Genetic Algorithms for Scheduling Jobs in Large Scale Grid Applications.’ Journal of Technological and Economic Development ‘A Research Journal of Vilnius Gediminas Technical University 12(1), 11’17, 2006.
 G. Ritchie and J. Levine,’A fast, effective local search for scheduling independent jobs in heterogeneous computing environments.’ Technical report, Centre for Intelligent Systems and their Applications, School of Informatics, University of Edinburgh, 2003.
 Y. H. Lee, S. Leu, and R.-S. Chang,’Improving Job Scheduling Algorithms in a Grid Environment,’ Future Generation Computer Systems, vol. 27, pp. 991-998, 2011.
 H. Topcuoglu, S. Hariri and Wu MY, ‘Performance-effective and low-complexity task scheduling for heterogeneous computing.’ IEEE Transactions on Parallel and Distributed Systems 13(3):260’274, 2002.
 J. Yu and R. Buyya,’Workflow scheduling algorithms for grid computing.’ Technical report, GRIDSTR- 2007-10, Grid Computing and Distributed Systems Laboratory, The University of Melbourne, Australia, 2007.
 J. Yu and R. Buyya, ‘ A taxonomy of workflow management systems for grid computing.’ Journal of Grid Computing 3(3’4):171’200, 2005.
 J. Yu and R. Buyya ,’ Scheduling scientific workflow applications with deadline and budget constraints using genetic algorithms.’ Sci Program 14:217’230, 2006.
 L.Wang, H. J. Siegel, V. Roychowdhury and A. Maciejewski, ‘Task matching and scheduling in heterogeneous computing environments using a genetic-algorithm-based approach.’ Journal of Parallel and Distributed Computing 47(1):8’22, 1997.
 G. Falzon and M. Li,’Enhancing genetic algorithms for dependent job scheduling in grid computing environments.’ The Journal of Supercomputing, Springer, 62(1), pp. 290’314, 2012.
 M. Mililotti and V. D. Martino ‘Scheduling in a Grid computing environment using Genetic Algorithms’ 0-7695-1573-8/02/ (C) IEEE, 2002.
 J. F. Gon??alves , J. J. de M. Mendes , Maur??cio G. C. Resende, ‘A Hybrid Genetic Algorithm for the Job Shop Scheduling Problem’, AT&T Labs Research Technical Report TD-5EAL6J, Sep. 2002.
 C. Grosan, A. Abraham, and B. Helvik, ‘Multiobjective evolutionary algorithms for scheduling jobs on computational grids.’ ADIS International Conference, Applied Computing 2007, Salamanca, Spain, Nuno Guimares and Pedro Isaias (Eds.), 2007.
 Y. H. Lee, S. Leu and R. S. Chang, ‘Improving job scheduling algorithms in a grid environment’, Future generation computer systems, May 2011.
 J. Yu and R. Buyya,’A budget constrained scheduling of workflow applications on utility Grids using genetic algorithms.’ Proceedings of the 15th IEEE International Symposium on High Performance Distributed Computing, IEEE CS Press, Paris, France, 2006.
 G.V. Iordache, M.S. Boboila, F. Pop, C. Stratan and V. Cristea,’A decentralized strategy for genetic scheduling in heterogeneous environments.’ Multiagent Grid System, 3 (4) (2007) 355’367.
 L. Liu and Y. Xi,’A hybrid genetic algorithm for job shop scheduling problem to minimize makespan.’ Proceedings of the Sixth World Congress on Intelligent Control and Automation, pp. 3709’3713, 2006.
 Zahid Raza and D. P. Vidyarthi, ‘GA Based Scheduling Model for Computational Grid to Minimize Turnaround Time’, International Journal of Grid and High Performance Computing, Volume I, Issue IV, pp 70-90, 2009.
...(download the rest of the essay above)