Вы находитесь на странице: 1из 9

European Journal of Scientific Research ISSN 1450-216X Vol.62 No.2 (2011), pp. 273-281 EuroJournals Publishing, Inc.

. 2011 http://www.eurojournals.com/ejsr.htm

Scheduling in Computational Grid with a New Hybrid Ant Colony Optimization Algorithm
L. M. Nithya SNS College of Technology, Coimbatore, Tamil Nadu, India E-mail: nithyasnsct@gmail.com Tel: +91-99946-81177 A. Shanmugam Bannari Amman Institute of Technology, Sathyamangalam Erode, Tamil Nadu, India. Abstract Grid Computing is a form of distributed computing that involves coordinating and sharing computing, application, network resources across dynamic and geographically dispersed organizations. The primary issue associated with the efficient utilization of heterogeneous resources in a grid is grid scheduling. The main objective of Grid scheduling is to get the best optimal machine to each task, which makes scheduling a complex problem. Heuristic approach is developed to obtain optimal solution. In this paper, a Hybrid Ant Colony Optimization (HACO) scheduling algorithm is proposed. Experiments are conducted with different data series and conditions. The experimental results reveal that the proposed algorithm produces better results when compared with the existing ant algorithm. The proposed scheduler proves that best suitable resource is allocated to each task with reduced makespan and execution time when compared with the existing algorithm.

Keywords: Grid Computing, Task Scheduling, Ant Colony Algorithm, Heuristic approach

1. Introduction
Todays scientific problems are very complex and need huge computing power and storage space. The technologies such as distributed or parallel computing are unsuitable for current scientific problems with large amounts of data. Processing and storing massive volumes of data may take a very long time. Grid Computing [20] is a new paradigm to solve those complex problems. Grid Technology is defined as the technology that enables virtualization of resources, and resource sharing between various organizations. Grid Computing enables sharing, selection, aggregation of geographically distributed resources dynamically at run time depending on their availability, capability and users QoS requirements. The main objective of the grid technology is to maximize the utilization of the organizations computing resources by making them as shareable entities, and provide computing on demand to the users. Grid supports more efficient data and resource management in order to balance the demand of many new applications. Computational grid denotes that the system has enormous computational capacity than single independent system. Resource allocation and task scheduling are fundamental issues in achieving high performance in grid computing systems. Equalizing the load of all available resources is another important issue in the grid[21]. Scheduler, also known as resource broker, acts as an interface between the user and the

Scheduling in Computational Grid with a New Hybrid Ant Colony Optimization Algorithm

274

resources which is distributed in nature and hides the computational complexities. Schedulers main job is mapping a task to the available resource. Scheduling is mainly classified into two types, static and dynamic scheduling. Static scheduling allocates the task to suitable resource before starting the execution. In case of static scheduler all the details of tasks should be known well before starting the process. Dynamic scheduling allocates the resource during the execution time i.e. the scheduler can take decision during job execution [6]. Online mode and batch modes are available in dynamic scheduling. In online mode the scheduler will be always in ready state, so when a job arrives, it allocates the resource immediately. In batch mode the jobs are grouped as set of tasks, known as metatask and the mapping is done in a prescheduled time. Scheduling can aim to provide- two objectives namely high performance computing and high throughput computing. High performance computing decreases the execution time whereas high throughput computing increases the processing capacity of the system. This paper concentrates on high performance computing. Scheduler has the following three main phases [22]. In phase one all the available resource will be collected. This is known as resource discovery. Second phase collects the information about the resources and choose the best suitable resource to the task. Third phase executes the job in the selected machine. Unlike scheduling problems in conventional distributed systems, scheduling problem in grid system is much more complex as new features of grid systems such as its dynamic nature and the high degree of heterogeneity of jobs and resources must be tackled [11]. By harmonizing and distributing the grid resources efficiently, an advanced resource allocation strategy can reduce total run time and total expenses greatly and bring an optimal performance [5] [14]. Resource scheduling is an NP-Hard problem [1]. Heuristic approaches help to solve such type of problems effectively. Tabu Search, Genetic Algorithm, Ant Colony Optimization and Simulated Annealing are some of the heuristic approaches which help to solve the grid scheduling problem. The proposed algorithm is based on Ant Colony Optimization (ACO) algorithm which uses batch mode heuristic mapping. In this ant colony algorithm each job is considered as an ant and optimal solution is provided with the help of pheromone detail. Heuristic based ant colony algorithm is used in the second phase of the scheduler. The organization of the paper further is as follows. The related works are discussed in Section II, existing system is analyzed in Section III, Section IV deals with the proposed algorithm, experimental results are discussed in Section V and conclusion with future work is presented in Section VI.

2. Related Work
2.1. Heuristic Algorithms Scheduler employs many batch mode heuristics algorithms such as OLB, Min-Min, Max-Min and Sufferage [4] heuristics. A new intelligent heuristic search algorithm is developed which guarantees an optimal solution for flow-shop problems with an arbitrary number of jobs and machines provided the job sequence is constrained to be the same on each machine [9]. Opportunistic Load balancing (OLB) algorithm selects the next available machine to allocate for the next task. The procedures selection will be in an arbitrary manner, so it will produce a non optimal solution. The Min-Min algorithm calculates the minimum completion time of jobs in each machine. Then the overall minimum completion time task is assigned to that particular machine. Max-Min algorithm computes the minimum completion time of each task and then the over all maximum completion time task is assigned to the corresponding machine. The above stated algorithms are static in nature. Grid environment is dynamic in nature. So it is impossible to apply static algorithms in dynamic environment. Due to this reason we are moving to dynamic based algorithm.

275 2.2. Ant Algorithm

L. M. Nithya, A. Shanmugam

Swarm intelligence [3] is inspired by the behaviour of insects, such as wasps, ants or honey bees. The ants, for example, have little intelligence for their hostile and dynamic environment [12]. However, they perform incredible activities such as organizing their dead in cemeteries and foraging for food. Ant Colony algorithm was proposed by Dorigo et al (1991). The ant colony algorithm is naturally inspired from the activities of the real ants. The ants are moving in a path while searching for food source from the nest. There is an indirect communication among ants which is achieved through their chemical substance deposits [16]. During their move, the ants are following the same path with the help of pheromone which is the chemical substitute which is laid down by the ants on their moving path. If the intensity of the pheromone in that path is high, then forthcoming ants will follow that particular path, otherwise follows another path. The quantity of pheromone on every path will affect the possibility of other ants to select the path [15]. By applying the above property to NP-hard problems such as travelling sales man problem, job-shop scheduling problem, graph coloring problem and assignment problem, optimal solutions are obtained. Ant colony algorithm is a graph based algorithm which is coming under the family of swarm intelligence methods. Social insects like ants [7], fish and birds, produce a collective problem solving capability, which defines robustness to dynamically changing environment. This important property is known as swarm intelligence [3]. The ultimate goal of the ant colony algorithm is to find the optimal path in the graph. Inherent parallelism and scalability of the ant algorithm makes it suitable for grid scheduling. And to add to its advantage ACO algorithm is dynamic in nature. Among the many bio-inspired techniques, ant-based clustering algorithms have received special attention from the community over the past few years for two main reasons. First, they are particularly suitable to perform exploratory data analysis and, second, they still require much investigation to improve performance, stability, convergence, and other key features that would make such algorithms mature tools for diverse applications [23]. Ant algorithm proposed in [10] considers only the pheromone trial (ij) level and heuristic information (ij) value while calculating the probability matrix value. It has the disadvantage, that all the columns in the probability matrix have the same probability value. The algorithm was mainly designed to produce high throughput in the computational grid environment. The parameter values used in the algorithm are 0=0.01 and =0.5. Moreover they have used only one ant. The single ant ACO algorithm converges in a very fast manner but it will produce bad sub-optimal solution. Hence a new enhanced ACO algorithm may be developed to overcome the challenges of the existing ACO algorithm and to achieve high performance computing and high throughput computing.

3. Problem Description
Existing ant colony algorithm [13] employs the following steps. 1. Collect all details about jobs and resources and calculate the expected completion time (CTij). 2. Initialization of the parameters value 3. For each ant ( to prepare the scheduling list) do the following step 4 and step 5 4. Select the task (i) and resource (j) randomly. 5. Repeat the following until all jobs are executed a. Calculate the heuristic information (ij) b. Calculate current pheromone trail value ij c. Update the pheromone trail matrix ij = ij + ij (1) d. Calculate the probability matrix e. Select the task with highest probabilities of i and j as the next taski to be executed on the machinej. Fidanova and Durchova (2006) have used the following probability matrix calculation formula defined as

Scheduling in Computational Grid with a New Hybrid Ant Colony Optimization Algorithm

276

Pij = ij . ij (2) ij.ij The probability matrix value according to the Equation 2 will have the same probability value. The algorithm will choose the resource based on the first non zero value of the column. Kousalya and Balasubramanie (2008) have modified the probability matrix calculation formula as given below: (3) Pij = ij . ij . (1/ETij) ij.ij . (1/ETij) This method uses several ants and includes expected execution time matrix value to overcome the disadvantage of the algorithm proposed in [10]. But the control parameters and are omitted which degrades the performance of the algorithm. 1. Find the best feasible solution using all the ants scheduling list. The result will be in the form of (task, machine, starting time, ending time). The disadvantages of the stated algorithms are overcome in the proposed new algorithm.

4. Proposed Hybrid Ant Colony Algorithm (HACO)


According to Vizine et al (2005), ant algorithms are particularly suitable to perform exploratory data analysis and, they still require much investigation to improve performance, stability, convergence, and other key features that would make such algorithms mature tools for diverse applications. The Grid users want to complete their jobs efficiently. The efficiency depends on makespan and flow-time. The makespan measures the throughput of the system and flow-time measures its QOS ([17], [19]). The main objective of the proposed algorithm is to reduce the makespan and to converge towards the optimal solution in a very faster manner. The ant colony algorithm proposed in [13], used the basic ant colony algorithms pheromone updating rule and modified transition probability rule. The proposed algorithm uses a new pheromone updating rule and probability matrix calculation formula in order to increase the efficiency of the existing ant colony algorithm. Ant algorithm for scheduling initially started with the value of ETij matrix. ETij matrix defines the expected time taken by machine j to complete task i. Here jobs are considered as independent to each other. ETij matrix consists of NM entries where N is number of independent jobs and M is number of resources available in grid environment. Step 1: Collect all details about jobs and resources and calculate the expected completion time (CTij). CTij is the completion time of ith job in the jth resource. It can be defined as: CTij = Readyj+ETij (4) where Readyj defines the ready time of the resource j. Maximum value of CTij is considered as a makespan of the overall scheduling process. Free time of the machine j can be calculated using free(j) function. Free(j) defines the free time of machine j. Beginning time of machine j can be defined as: Bi = free(j)+1 (5) Completion time matrix is calculated using the Bi value as given below: CTij = Bi+ETij (6) where Bi = Beginning time of ti on machine mj. Makespan of the grid can be calculated using the CTij value. Makespan is used to measure the throughput of the grid system. Maximum CTij value will be taken as the makespan of the grid system. A good algorithm should minimize the makespan value of the grid system. Step 2: Initialization of the parameters value = 0.3 (pheromone evaporation value) 0 = 0.01 (initial pheromone deposit value) = 1 (importance of pheromone) = 2 (importance of resource innate attribute) free [0m-1] = 0 (one dimension matrix of size m) k=m (number of ants = number of tasks)

277

L. M. Nithya, A. Shanmugam

Step 3: For each ant (to prepare the scheduling list) do the following step 4 and step 5 Step 4: Select the task (i) and resource (j) randomly. Step 5: Repeat the following until all jobs are executed a. Calculate the heuristic information (ij) ij = 1/Free(j) (7) The ij formula helps to predict the more desirable machine in the available machine set. If a machine is free earlier than the corresponding machine will be more desirable. b. Calculate current pheromone trail value ij = (1-)/Fk (8) where Fk = max(free(j)) c. Update the pheromone trail matrix The new pheromone updating rule [18] is given by: ij = {1/(1+ij)} * ij + {(ij/(1+ij)} * ij (9) where ij Pheromone trail level of the move ij Pheromone evaporation value ij Additional pheromone d. Calculate the probability matrix Pij =ij . ij . (1/ETij) (10) ij . ij . (1/ETij) where ETij Expected Execution Time Matrix; ij Pheromone trail level of the particular path; ij Heuristic information which replicates the attractiveness of the machine; Importance of pheromone; Importance of resource innate attribute (>); e. Select the task, with highest probabilities of i and j as the next taski , to be executed on the machine j. Step 6: Find the best feasible solution using all the ants scheduling list. Increasing the pheromone levels associated with a chosen set of good solutions makes the algorithm faster to converge to a solution. Hence on modifying the pheromone updating rule and probability matrix the solution is converging in a fast manner than the existing ACO algorithm. The probaility matrix calculation uses the the same transition rule to select the job which is to be executed next in the machine.

5. Experimental Results
The experimental tests are conducted on high task high machine, high task low machine, low task high machine and low task low machine heterogeneity data sets. In each input data set 512 tasks and 16 machines are considered. Task heterogeneity is defined as the amount of variance among the execution times of tasks in the metatask for a given machine. Machine heterogeneity defines the variation that is possible among the execution times for a given task across all machines (Braun et al 2001). Following graphs (Figure 1, 2 & 3) illustrate the comparison of the existing ACO algorithm with the proposed algorithm based on the obtained makespan for different data sets.

Scheduling in Computational Grid with a New Hybrid Ant Colony Optimization Algorithm

278

Figure 1: Comparison of Existing ACO algorithm with the proposed hybrid algorithm for High Task High Machine Heterogeneity Data sets

The experimental results state that the proposed ant colony algorithm is well suited and efficient than the existing algorithms. The experiment are conducted with large data sets and proved that it is working efficiently and the results converged in fast manner and produces better makespan.
Figure 2: Comparison of Existing ACO algorithm with the proposed hybrid algorithm for High Task Low Machine Heterogeneity Data Sets

Figure 3: Comparison of Existing ACO algorithm with the proposed hybrid algorithm for Low Task Low Machine Heterogeneity Data Sets

279

L. M. Nithya, A. Shanmugam

The Figure 4 illustrates the reduction in execution time on comparison of the existing algorithm with the proposed algorithm
Figure 4: Comparison of execution time of traditional algorithm with the proposed algorithm

The makespan is compared based on the values of the parameters Importance of pheromone; Importance of resource innate attribute which is shown in figure 5. The graph proves that the value of and chosen gives better results.
Figure 5: Comparison of Makespan values with different and values
4500000

=.1;=2
4000000

=1;=3
3500000

=2;=4
3000000

=2;=5 =.3;=.7 =1.8;=3.3

Makespan

2500000 2000000 1500000 1000000 500000 0


1 2 3 4 5 6 Input Data Series 7 8

10

6. Summary and Concluding Remarks


Scheduling is one of the main issues in the grid computing environment. Recent researches have proved that scheduling on computational grids is best solved by heuristic approach. Hence an enhanced heuristic based, hybrid ant colony algorithm is developed to allocate proper resources for each job. This algorithm guarantees efficient resource allocation of the machines.

Scheduling in Computational Grid with a New Hybrid Ant Colony Optimization Algorithm

280

The experimental results states that the proposed ant colony algorithm solves the resource scheduling problem in the grid computing environment faster than the existing ant colony algorithm and results in reduced makespan. The future work is hybridization of the ant colony algorithm with other algorithms to produce high throughput computing. Further research may be done to create different heuristic based algorithms for grid computing problems.

References
[1] [2] [3] [4] Baca, D.F., 1989. Allocating Modules to Processors in a Distributed System, IEEE Transactions on Software Engineering, pp.14271436. Bonabeau, E., Dorigo, M., Theraulaz, G., 1999. Swarm Intelligence: from natural to artificial systems, Oxford University Press, pp. 75-98. Bonabeau, E., Theraulaz, G., 2000. Swarm Smarts, Scientific American, pp.72-79. Braun, T. D., Siegel, H. J., Beck, N., Blni, L. L., Maheswaran, M., Reuther, A. I., Robertson, J.P., Theys, M.D., Yao, B., Hensgen, D., and Freund, R.F., 2001. A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing systems, Journal of Parallel and Distributed Computing, Vol. 61(6), pp.810837. Chapman, C., Musolesi, M., Emmerich, W., Mascolo, C., 2007. Predictive Resource Scheduling in Computational Grids, IEEE Parallel and Distributed Processing Symposium, 2007 (IPDPS 2007), pp. 1-10. Chtepen, M., 2005. Dynamic Scheduling in grid systems, Sixth Firw. PhD Symposium. Faculty of Engineering, Ghent University,110, pp.1-2. Deneubourg, J.L., Pasteels, J.M., Verhaeghe, J.C., 1983. Probabilistic Behavior in Ants: A strategy of Errors?, Journal of Theoretical Biology, Vol.105, pp.259-271. Dorigo, M., Maniezzo, V., Colorni, A., 1991. Ant System: An autocatalytic Optimizing Process, Technical Report, pp.91-016. Fan, J.P.,(2008), A Heuristic Search Algorithm for Flow-Shop Scheduling, Informatica, Vol.32, pp.453464 Fidanova, S., Durchova, M., 2006. Ant algorithm for Grid Scheduling Problem, Large Scale Computing, Lecture Notes in Computer Science No.3743, Springer, pp.405-412. Foster, I., Kesselman, C., Tuecke, S., 2001. The Anatomy of the Grid: Enabling Scalable Virtual Organizations, International Journal of High Performance Computing Applications, Vol. 15(3), pp. 200-222. Islam, M. T., Thulasiraman, P., Thulasiram, R.K., 2003. A Parallel Ant Colony Optimization Algorithm for All-Pair Routing in MANETs, Proc. 3rd Int. Symp., Parallel and Distributed Processing, pp. 259-270. Kousalya, K., Balasubramanie, P., 2008. An Enhanced Ant Algorithm for Grid Scheduling Problem, International Journal of Computer Science and Network Security, Vol.8(4), pp.262271. Krauter, K., Buyya, R., Maheswaran, M. (2002), A Taxonomy and survey of Grid Resource Management Systems for Distributed Computing, Software: Practice and Experience (SPE) Journal, Wiley Press, USA, Vol.32 (2), pp. 135-164. Li, Y., 2006. A Bio inspired adaptive job scheduling mechanism on a computational grid, International Journal of Computer Science and Network Security, Vol.6 (3B), pp.1-7. Lorpunmanee, S., Sap, M.N., Abdullah, A.H., Chompoo-inwai, C., 2007. An Ant Colony Optimization for Dynamic Job Scheduling in Grid Environment, Int. Journal of Computer and Information Science and Engineering, Vol.1(4), pp. 207-214. Maheswaran, M., Ali, S., Siegel, H.J., Hensgen, D., Freund, F.R., 1999. Dynamic Mapping of a Class of Independent Tasks onto Heterogeneous Computing Systems, Journal of parallel and distributed computing, Vol.59, pp.107-131.

[5]

[6] [7] [8] [9] [10] [11]

[12]

[13]

[14]

[15] [16]

[17]

281 [18]

L. M. Nithya, A. Shanmugam Mathiyalagan, P., Suriya, S., Sivanandam, S.N., 2010. Modified Ant Colony Algorithm for Grid Scheduling, International Journal on Computer Science and Engineering, Vol.2(02),pp.132-139. Pinedo, M.L. (1995), Scheduling: Theory, Algorithms and Systems, Prentice Hall, Englewood Clifts, NJ. Reed, D.A., 2003. Grids, the TearGrid, and Beyond, IEEE Computer, Vol.36(1), pp.62-68. Salehi, M.A., Deldari, H., Dorri, B.M., 2008. Balancing Load in a Computational Grid Applying Adaptive, Intelligent Colonies of Ants, Informatica, Vol. 32, pp.327-335 Schopf, J.M., 2002. A General Architecture for Scheduling on the Grid, Special issue of JPDC on Grid Computing. Vizine, A.l., Castro, L.N.de, Hruschka, E.R., Gudwin, R.R., 2005. Towards Improving Clustering Ants: An Adaptive Ant Clustering Algorithm, Informatica, Vol.29, pp.143154.

[19] [20] [21] [22] [23]

Вам также может понравиться