Ant Colony Optimization Algorithm for Scheduling Cloud Tasks

26 downloads 30689 Views 792KB Size Report
Task Scheduling has become one of the key issues in ... Google Apps, Salesforce, Google App Engine, .... Science+Business Media New York 2015. [6].
ISSN:2229-6093

Srinivasan Selvaraj et al, International Journal of Computer Technology & Applications,Vol 7(3),491-494

Ant Colony Optimization Algorithm for Scheduling Cloud Tasks SrinivasanSelvaraj1, Jaquline.J 2 1

Associate Professor, Department of Computer Science and Engineering, R.M.D Engineering College, Chennai 2 P.G Student, Depatment of Computer Science and Engineering , R.M.D Engineering College, Chennai [email protected],[email protected]

Abstract Task Scheduling has become one of the key issues in cloud computing. Cloud Task Scheduling is a NP hard problem and many algorithms have been proposed to solve the problem in the literature. The task scheduling problem can be viewed as the finding of an optimal mapping of set of tasks to the cloud resources. Optimizing makespan is considered as an important concern in Scheduling of tasks. Though ACO has applied to solve cloud scheduling, the impact of number of ants and total execution time are taken into account. This paper applies ACO algorithm for scheduling tasks in cloud. .It aims to compare the performance with the fair scheduling algorithm First Come First Serve (FCFS). Simulation results show that the ACO algorithm outperforms the FCFS algorithm.

1. Introduction Cloud computing can be defined as managed, on-demand delivery of computing resources or services over the internet. The three main services offered by the cloud are IaaS, PaaS, SaaS. Some of the reasons for the increased use of cloud services are high performance at reduced cost, ease of use, increased storage capacity, flexibility, scalability, agility etc. The cloud deployment model comprises public cloud, private cloud and the hybrid cloud. Examples of cloud service providers are Google Apps, Salesforce, Google App Engine, Amazon Web Services, Amazon EC2, Eucalyptus etc. Task Scheduling is defined as the process which decides which task should be executed on which virtual machine. Depending upon the requirements of the task scheduling, the tasks that arrive in the cloud is executed immediately. To achieve this, an effective scheduling algorithm is required. Scheduling algorithm must reduce the overall operational cost, waiting time of tasks,

IJCTA | May-June 2016 Available [email protected]

makespan, energy consumption, increase the resource utilization etc. Usually tasks are scheduled based only on the user requirements. Perhaps, other key factors such as power consumption, overall throughput are not at all considered. Thus the new strategies that are to be proposed should consider various objectives like minimizing response time, latency, makespan etc. This paper applies Ant Colony Optimization (ACO) for solving cloud scheduling problem. Unlike the earlier approaches, it compares both makespan and total execution time of tasks with FCFS. It aims to minimize the makespan. Reducing the makespan of the tasks is important as it can increase the overall throughput of the tasks. The paper is organized as follows. Section 2 describes the various methods for cloud scheduling and Section 3 presents ACO algorithm for cloud task scheduling. Section 4 presents Experimental results and finally, Section 5 concludes.

2. Related Work Though several methods have been used to solve the cloud scheduling problem, this paper focuses on the evolutionary based approaches(meta heuristic algorithm) only. Guo et al[1] proposed a heuristic based method to schedule data intensive and computation intensive applications so as to minimize the overall execution cost. The particle swarm optimization algorithm was formulated for this purpose. Sumandeep Aujla[2] proposed the hybrid cuckoo algorithm in order to attain optimal resource utilization and power utilization. Joanna Kołodziej et al[3] proposed an energy aware algorithm for computing grids wherein the energy consumption and makespan was used as the scheduling criteria. The Genetic algorithm was used as the scheduling

491

ISSN:2229-6093

Srinivasan Selvaraj et al, International Journal of Computer Technology & Applications,Vol 7(3),491-494

algorithm and can be used in both static and dynamic grids. Zhi-hui-zang et al proposed a load aware genetic algorithm(LAGA) in order to balance among the available resources to attain minimized makespan[4].Fahemei Ramzani et al proposed a multi-objective task scheduling optimization algorithm in order to achieve four conflicting objectives, namely: reduce task transfer time,task queue length, energy consumption and execution cost. The multi-objective Genetic algorithm and multi-objective Particle Swarm Optimization algorithm were used as the task scheduling algorithm[5]. R. Jemina Priyadarsini et al proposed an Improved Particle Swarm Optimization algorithm for scheduling meta tasks by having makespan and resource utilization as the scheduling parameters[6]. Though ACO algorithm has been already applied for cloud scheduling, mostly the impact of algorithmic parameter and makespan are analysed. This paper aims to compare the total execution time and the impact of the number of ants are studied.

3. ACO ALGORITHM The ant colony optimization algorithm is a heuristic search algorithm which is based on the behaviour of ant colonies. Initially the ants start to search for their food source in random directions. Once the ant finds a path to the food source, it leaves a chemical substance, called pheromone, while returning back to its nest. Similarly different ants would discover different paths to the food source. The density of the pheromone will evaporate if the path to the food source is very long. If the density of the pheromone is very high, it implies that many ants have used this path and hence the next ant can follow this particular path. On the other hand, if the pheromone density is very low and starts to evaporate, it means that the path to the food source is very long and hence the next ant to will not follow this path. Based on the path length the pheromone concentration varies. Finally the remaining ants will follow the path with the highest pheromone concentration. If the pheromone concentration is not dense then the ants will delete this path from their search space and start their search in other directions. The path with the highest density of pheromone has a high probability of being selected of being selected as the optimal solution. In cloud scheduling, each path represents a schedule. One of the important steps of ACO algorithm is the local pheromone update and global pheromone update. The purpose of the local pheromone update rule is to make the visited edges less and less attractive as they are visited by ants, indirectly favouring the exploration of not yet visited edges. As a consequence, ants tend not to converge to a common path. The purpose of the global pheromone update rule is to encourage ants to search for paths in the vicinity of the best tour found so far. IJCTA | May-June 2016 Available [email protected]

3.1ACO ALGORITHM SCHEDULING

FOR

TASK

Step1: Collect information about the tasks (n) and virtual machines (m) Step 2: Initialize Expected Time To Compute (ETC) values Step 3: Initialize the following parameters Step 3.1: Set α=1,β=1,Q=100 and pheromone evaporation rate (ρ ) =0.5, number of ants=100 Step 3.2: Set optimalsolution=null and epoch=0 Step 3.3: Initialize pheromone trial value τij= c Step 4: Repeat until each ant k in the colony finds VM for running all tasks Step 4.1 Put the starting VM in tabuk Step 4.2 Calculate the probability for selecting VMj∈allowedk for a taski Pij=τij (t) α .ηij (t) β / Σx=allowedkτix (t) α .ηix (t) β Where tabuk contains a list of VMs that has been already used by ant k for assigning tasks, and allowedk maintains a list of VMs that are available for task execution. τij (t) is the pheromone trial value on the edge (i,j) at time t. ηij (t) which affects the visibility of pheromone trial is calculated as follows . ηij (t) = 1 / dij where dij= Tasklengthj/ (pe_numjXpe_mipsj)+ Tasklengthi Here, Tasklengthjis the length of all tasks assigned to the VMj and Tasklengthi is the length of taski.

Step 4.3 Select a VMj with highest probability Step 5: Calculate the makespan of schedule built by each ant and find the best schedule based on the makespan Makespan= maxj∈JLj where J is the set of Virtual Machines and

492

ISSN:2229-6093

Srinivasan Selvaraj et al, International Journal of Computer Technology & Applications,Vol 7(3),491-494

Lj=Σk∈JETC[k][j] Step 6: Update pheromone trial value Step 6.1: Compute the quantity of pheromone deposited on the edge (i,j) as below δτijk(t)= Q/ makespan of the Schedule prepared by ant k where Q is the adaptive parameter Step 6.2: Refresh pheromone trial

value

τij (t)= (1-ρ ) τij (t) + δτijk(t) where ρ∈ [0,1) Step 6.3: Perform a global pheromone update on the edges belongs to the best schedule τij (t)=τij (t)+Q/makespan of the best schedule in the colony

Figure 1. Average makespan of FCFS and ACO The average makespan of the ACO, FCFS algorithms are shown in Figure 1. Though the makespan has increased with the number of tasks, the ACO algorithm can find a schedule with lower makespan.

Step 7 :If the maximum epoch is reached, then optimalsolution= schedule with optimal makespan Display the schedule, optimalmakespan and total execution time as calculated below. Total execution time= Σj∈Jmakespanjwhere J is the set of Virtual Machines else Go to step 4.

4. EXPERIMENTAL RESULTS Both ACO and FCFS algorithm are implemented using JAVA 1.8. All experiments are run on Windows 7 platform. The results are average of 20 runs. We implemented the ACO algorithm and investigated their relative pros and cons by experimentation. The parameters (α, β, p, Q) considered here are those that affect directly or indirectly the computation of the algorithm. We tested several values for each parameter while all the others were held constant on 100 tasks. The default value of the parameters was α=1, β=1, ρ=0.5, Q=100 and total number of epochs is 150. We also use the execution time to record the makespan. We compared the average makespan with different task sets.

IJCTA | May-June 2016 Available [email protected]

Figure 2.Average convergence time of FCFS and ACO The average convergence time of ACO,FCFS algorithm is shown in Figure 2. It clearly shows that the overall execution time of ACO is less than that of FCFS algorithm irrespective of number of tasks.

493

ISSN:2229-6093

Srinivasan Selvaraj et al, International Journal of Computer Technology & Applications,Vol 7(3),491-494

multi-objective task scheduling optimization model in cloud environments. 23 February 2015 Springer Science+Business Media New York 2015 [6].R.Jemina Priyadarsini,,L.Arockiam.A Parallel Optimization Algorithm for Task Scheduling in cloud.Indian journal of Science and technology.2015 july; [7]. R.Kirubakaramoorthi, D. Arivazhagan , D. Helen. Analysis of Cloud Computing Technology.Indian journal of Science and Technology.2015 September Figure 3. Impact of ants on makespan The number of ants also make an impact on the makespan of the tasks which is shown in figure 3. As shown in the Figure, the makespan is reduced considerably as the number of ants is increased.

5.CONCLUSION In this paper, ACO algorithm is used for achieving cloud task scheduling. The ACO algorithm is used for cloud scheduling as it provides an optimal makespan and rapid convergence. The performance of the ACO algorithm is compared with FCFS algorithm in terms of makespan and total execution time. Moreover, the impact of number of ants is also studied. Experimental results prove that the ACO algorithm outperforms the FCFS algorithm.

6.REFERENCES [1]. Guo, L., Zhao, S., Shen, S., Jiang, C.: Task scheduling optimization in cloud computing based on heuristic algorithm. J. Netw. 7(3), 547–553 (2012) [2]. Sumandeep Aujla and Amandeep Ummat, “Task

scheduling in cloud using Hybrid Cuckoo Algorithm”, International Journal of Computer Networks and Applications (IJCNA), May – June 2015 [3]. Wang, L., et al.: Energy-aware parallel task scheduling in a cluster. Futur. Gener.Comp.Syst .29(7),1661-1670(2013) [4]. Zheng H, Zhou L, Wu J. Design and implementation of load balancing in web server cluster system. Journal of Nanjing University of Aeronautics & Astronautics. 2006 Jun; 38(3):347–51 [5].Fahimeh Ramezani, Jie Lu, Javid Taheri,Farookh Khadeer Hussain: Evolutionary algorithm-based

IJCTA | May-June 2016 Available [email protected]

[8]. .Backialakshmi.M,Sathya sofia .A. Survey on Scheduling Algorithms in Cloud Computing. International Journal of Engineering Research and General Science. [9]. Su, S., Li, J., Huang, Q., Huang, X., Shuang, K.,Wang, J. Cost-efficient task scheduling for executing large programs in the cloud. Parallel Comput. 39(4–5), 177–188 (2013) [10]. Xiaonian Wu, Mengqing Deng, Runlian Zhang, Bing Zeng, Shengyuan Zhou, “ A task Scheduling algorithm based on QOS driven in Cloud Computing”,Elsevier Publication, Vol 17 , pp. 11621169, 2013 [11]. Guo, L., Zhao, S., Shen, S., Jiang, C.: Task scheduling optimization in cloud computing based on heuristic algorithm. J. Netw. 7(3), 547–553 (2012) [12]. Buyya, R., Beloglazov, A., Abawajy, J.: Energy-efficient management of data center resources for cloud computing: A vision, architectural elements, and open challenges. arXiv preprint arXiv:1006.0308 (2010) [13]. Guo G, Ting-Iei H, Shuai G. Genetic Simulated Annealing Algorithm for Task Scheduling based on Cloud Computing Environment. IEEE International Conference on Intelligent Computing and Integrated Systems (ICISS); Guilin; 2010. p. 60–3. [14].Mao, J., 2010. Task Scheduling of parallel programming systems using Ant Colony Optimization. Proceedings of the 3rd International Symposium on Computer Science and Computational Technology (ISCSCT’ 10), Aug. 14-15, Jiaozuo, P.R. China, pp: 179-182.

494