An Optimal Load Sharing Technique For Grid Computing

: Problem statement: Grid and Cloud Computing is the fast growing industry, in which the grid computing shares the resources in the organization in an effective manner. Resource sharing requires more optimized algorithmic structure, otherwise the waiting time and response time are increased and the resource utilization is reduced. Approach: In order to avoid such reduction in the performances of the grid system, an optimal resource sharing algorithm is required. The traditional Min-Min algorithm is a simple algorithm that produces a schedule that minimizes the makespan than the other traditional algorithms in the literature. But it fails to produce a load balanced schedule. In our earlier study, a Load Balanced Min-Min (LBMM) algorithm is proposed that reduces the makespan and increases the resource utilization. This is further improved through Ant Colony Optimization (ACO) based optimization methodology. Results: In recent days, ACO plays a vital role in the discrete optimization problems. The ACO solves many engineering problems and provides optimal result which includes Travelling Salesman Problem, Network Routing and Scheduling. Conclusion: This study proposes an ACO based resource sharing algorithm for effective utilization of grid computing.


INTRODUCTION
As the scientific problem grows very complex in the modern computing technology, it requires more computing power and more storage space. Based on these basic requirements, an organization requires higher computational resource when dealing with current technological methodology. The past technologies such as distributed computing, parallel computing are not suitable for recent advancement. Because, the modern computer industry operating very large amounts of data which utilize more processing power and high storage volumes of data. Therefore, the Grid computing is proposed as effective resource management to the organization.
In grid computing, the network status and the resource status are to be managed effectively. If the network status or resource status are not infeasible level, then the total computation time will be increased dramatically. In grid computing, the user will encounter thousands of computers to utilize in effective and efficient manner. The Grid architectures serving as a middleware technology for various purposes likes resource allocation management, job scheduling, data management, security and authorization. Programming in the grid computing involves more complexities which is not only requires a single-machine application. Some of the additional aspects of the grid computing are (1) Dividing and combining data and results, (2) Data security, (3) Application security, (4) Testing and (5) Redundancy and capacity planning.
The purpose of task scheduling in the grid computing is to balance the load of the entire grid system in such a way that completing all the assigned workload as soon as possible and feasible than other system. It is impossible for anyone to manually assign these loads in the large computing resources of the grid system. As the environmental status of grid architecture is changing frequently, the traditional job scheduling algorithm such as ''First Come First Serve'' (FCFS), ''Shortest Job First'' (SJF), may not be suitable for the dynamic environment in grids. Therefore, job scheduling in the grid environment is a very important issue. This study proposes an efficient job scheduling algorithm for solving these problems in the grid environment.

Related work:
As the Grid is growing in the modern era, it attracts researcher. There are a variety of research activities is identified in the grid environment, in which the task scheduling and load balancing are the major research issue even till date. There are many scheduling algorithms for grid task is proposed in the recent year; the scheduling is classified in a variety of ways. The job scheduling method is composed (Berrichi et al., 2010) of the following major steps: • The user submits a new job to the system • Based on the predicted finishing time, the resource broker selects the "best" computing element in its execution and the storage element (if the chosen computing element does not provide enough disk space for the input files) the input files must be replicated to • Agents are sent to every source Storage Element and one to every destination node • The agents will run on the nodes in the background as daemons (the environment for this will be assured by the agent hosts) and copy the files prior to the execution queue reaching the job requiring them Only few of scheduling algorithms for grid task are focusing the problems with a variety of QoS parameter. (Mohan and Baskaran, 2010) proposed an ACO based task scheduling which is termed as Ant Colony System (ACS) for Grid computing, in which the authors considers the scheduling of tasks in terms of more than one Quality of Service (QoS) requirements using ACO, which is challenging and also it is significantly influences the performance of grids. The proposed ACO is enabling the users to specify their QoS preferences as well as define the minimum QoS thresholds for a certain application and the ACS is tested in ten task applications with at most 120 tasks. The architecture of ACS task scheduling is shown in the Fig. 1 and the system design of ACO is shown in the Fig. 2. This ACO decreases the cost by 10-20% compared with the existing deadline based approach. Chang et al. (2009) proposed a Balanced Ant Colony Optimization (BACO) algorithm for job scheduling in the Grid environment. The main contributions of this study is to balance the entire system load while trying to minimize the make span of a given set of jobs, the BACO focuses on the makespan and system load balance. Compared with the other job scheduling algorithms, BACO can outperform them according to the experimental results.
In apples (Mohan and Baskaran, 2011a), the Parameter study support, event-driven rescheduling, Centralized adaptive scheduling with heuristics and self-scheduled work queues are handled. In EZ-GRID broker (Mohan and Baskaran, 2011b) job handling, transparent file transfer, self-information service with dynamic and historical data, Policy Engine Framework for provider policies are proposed. In GRID BUS Grid Service system (Mohan and Baskaran, 2011c;2011d), Failure management and application recovery, parameter studies, API support, Economybased and data aware scheduling are focused for solving. The GRUBER (Suguna, 2011) handles SLAbased resource sharing in multi-VO environment, disk quota considerations, internal site monitoring feature and various users' oriented policies.

Proposed work: Overview of Ant Colony Optimization (ACO):
Swarm intelligence is a new discipline of study that contains relatively optimal approach to problem solving which is the imitations inspired from the social behaviors of insects and of other animals, for ex: Ant colony optimization algorithm, artificial honey bee algorithms. The main idea of ACO is to model the problem as the search for a minimum cost path in a graph. Artificial ants walk through from nest to food, looking for good paths. Each ant has a rather simple behavior so that it will typically only find rather poorquality paths on its own. Better paths are found as the emergent result of the global cooperation among ants in the colony. The behavior of artificial ants is inspired from real ants, they lay pheromone trails on the graph edges and choose their path with respect to the probabilities that depend on pheromone trails and these pheromone trails progressively decrease by evaporation.
In addition, artificial ants have some extra features that do not find their counterpart in real ants. In particular, they live in a discrete world and their moves consist of transitions from nodes to nodes. Also, they are usually associated with data structures that contain the memory of their previous actions. In most cases, pheromone trails are updated only after having constructed a complete path and not during the walk and the amount of pheromone deposited is usually a function of the quality of the path. Finally, the probability for an artificial ant to choose an edge often depends not only on pheromones, but also to some problem-specific local heuristics. The detailed survey on ACO is available in (Dumitrescu and Foster, 2005) for various engineering optimization problems. Casanova et al. (2003) developed a model of the observed behavior, in which there are four units (A 1, A 2, A 3 and A 4 ) and two routes (R 1 and R 2 ) leading to a food source (F 0 ), where R 1 and R 2 such that R 1 > R 2 and R 1 =2*R 2 . Initially, all units are at the decision point N e and they have to select between R 1 and R 2 to reach F o .  Sci., 9 (7): 1101Sci., 9 (7): -1106Sci., 9 (7): , 2012 At N e , all units have no knowledge about the location of food (F 0 ). Hence, they randomly select from {R1 , R 2 }. Suppose that A 1 and A 2 choose R 1 and A 3 and A 4 choose R 2 .
As A 1 and A 2 move along R 1 and A 3 and A 4 move along R 2 , they leave a certain amount of pheromone along their paths τ R1 and τ R2 , respectively.
Since R 1 > R 2 , A 3 and A 4 reach F 0 before A 1 and A 2 . When A 3 and A 4 pass R 2 to reach F 0 , τ R2 = 2, but A 1 and A 2 have yet to reach F 0 and τ R1 = 0. To return to N e from F 0 , A 3 and A 4 have to choose between R 1 and R 2 . At F 0 , A 3 and A 4 detect that τ R2 > τ R1 , hence they are more likely to select R 2 .
As A 3 and A 4 pass R 2 for the second time to reach N e , τ R2 is incremented to 4. The increase in τ R2 further consolidates R 2 as the shortest path. When A 1 and A 2 reach F 0 , τ R2 = 4 and τ R1 = 2. Hence, A 1 and A 2 are more likely to select R 2 to return to N e .
In this example, any ant at F 0 (respectively, N e ) will be able to determine the optimal path once A 3 and A 4 reach F 0 . If an ant is at a choice point when there is no pheromone (e.g., Initially at N e ), it makes a random decision with a probability of 0.5 of choosing R 1 or R 2 . However, when pheromone is present (e.g., When the ant is at F 0 ), there is a higher probability that it will choose the path with the highest concentration of pheromone.
ACO based task scheduling: Job scheduling problems have a vital role in recent years due to the growing consumer demand for variety, reduced product life cycles, changing markets with global competition and rapid development of new technologies. The Job Shop Scheduling Problem (JSSP) is one of the most popular scheduling models existing in practice, which is among the hardest combinatorial optimization problems. The instance definition of the job scheduling problem is as follows: • A number of independent (a user / application) jobs to be scheduled • A number of heterogeneous machines candidates to participate in the planning Many approaches, such as, Simulated Annealing (SA), Tabu Search (TS), Genetic Algorithm (GA), Ant Colony Optimization (ACO), Neural Network (NN), Evolutionary Algorithm (EA) and other heuristic approach have been successfully applied to JSSP. (Pasteels et al., 1987) proposed an efficient hybrid algorithm for resource-constrained project scheduling. This hybrid algorithm is known as the ACOSS algorithm which combines Scatter Search (SS) with ACO. Research on ACO has shown that improved performance can be obtained by stronger exploitation of the best solutions found during the search (Komarudin and Wong, 2010;Kacsuk et al., 2007). Yet, using a greedier search potentially aggravates the problem of premature stagnation of the search. Therefore, the key to obtaining better performance of ACO algorithms is to combine an improved exploitation of the best solutions with an effective mechanism for avoiding early search stagnation. Combining exploitation of the best solutions to a problem-dependent local search algorithm, the authors presents the hybrid algorithm.
In this study, as a first step, all ants in the ACO search the solution space and generate activity lists to provide the initial population for the SS. Then, although the SS improves all the ants' solutions, only the best solution (thus far) is used to update the pheromone trails. Finally, ACO searches the solution space again using the new pheromone trails. In other words, the SS uses the previous population constructed by ACO, which subsequently updates the pheromone trails using the best solution from the SS and searches again. In addition, a local search strategy is employed to improve the quality of solutions generated by ACO and also as the improved method in the SS. In this scheme, ACO and SS alternatively and cooperatively search the solution space until the termination criterion is satisfied. In each generation, ACO only executes once to generate the initial population for the SS, which then executes one or more times to improve the solutions. The proposed ACO based Task Scheduling (ACOWS) is explained in the following procedure.

ACO based Task Scheduling (ACOTS) algorithm:
ACO is proposed for task scheduling of the grid system. The objective of the scheduling algorithm is to minimize the makespan of task. This can be calculated using Expected Time to Compute (ETC) model. The scheduling problem can be defined as follows: Let task set are T = t1, t2, t3, …. , tn be the group of tasks submitted to the scheduler. Let Resource set are R = m1, m2, m3, …. , mk be the set of resources available at the time of task arrival. Makespan produced by any algorithm for a schedule can be calculated in the following Eq. 1-6: mimize makespan (CTij)(T(ti),R(mj))) = ∑ (1) where, CT is the completion time of machines, ETij is the execution time of a job i on resource j, Wj is waiting time of resource j after completing the previously assigned jobs.
The scheduling is defined based on a proactive design which stored in a table called scheduling table, this can be constructed based on the state transition rule and pheromone update policy. In every t unit of times, the forward ant is generated and forwarded to collect the information about the grid systems. The forward ants will collect the information of currently running processes (traffic) and the expected time of completion. The information is stored in the scheduling table. The table contains next optimal resource allocation and also other feasible allocations. From the table, the optimal resource is selected or the load is shared into many feasible resources. The optimal load sharing is explained in the following mathematical models.
The following random proportional rule is applied as State transition rule: For choosing task ti and the probability of selecting a grid / resources mj is: prob(D,i, j) Fun (TD,i, j, ) if where, TD is the pheromone value corresponding to resource j for the task i and 0 < TD < 1 is the local heuristic value. Fun (TD, i, j, η) is a function in TD and η (this function value is high when TD and η are high). Assuming that at a given moment in time, 'm1' ants have used the first resource and 'm2' the second one, therefore the probability p1 for an ant to choose the first bridge is: where, T(r, s) is the pheromone deposited in the path between 'r and s, η(r, s) is the corresponding heuristic value. β is a parameter which determines the relative importance of pheromone versus execution time (β > 0). The pheromone update policy is as follows: T(r,s) (1 ) T(r,s) (1 ) T(r,s) The proposed ACO based Task Scheduling (ACOTS) Algorithm: (A) Procedure of (ACOTS) For all tasks Ti For all resources (i, j) min imize (CTij(T(ti),R(mj))) ∑ Do until all tasks are mapped For each task find the earliest completion time and the resource that obtains it find the task Tk with the minimum earliest completion time assign task Tk to the resource Rl that gives the earliest completion time delete task Tk from the list update ready time of resource Rl update Cil for all i End for // rescheduling to balance the load using TS-(ACO) End-do End-for End-for

CONCLUSION
The proposed algorithm is tested using MatLab based simulation and programming models. The proposed ACO method provided the optimlaity in grid environment. The scheduling of the grid is smoothened using ACO. As a consequence, the load on various grids are shared among all available grids and it offers load balancing in the grid environment.