Symbiotic Organism Search optimization based task scheduling in cloud computing environment
Introduction
In cloud computing, resources such as processors, memory, storage, and applications are provisioned as services, thereby changing the way IT resources are designed and acquired [1]. The cloud computing paradigm had greatly reduced the financial cost of acquiring hardware and software for application deployment as well as maintenance cost. Because of the high scalability, users are not bothered with imprecise forecasting of service scale which will amount to resource wastage if over provisioned, and revenue loss if under provisioned [2], [3]. Cloud computing resources are shared among cloud clients through the concept of virtualization. Virtualization allows many remote running environments to be safely combined on physical servers for optimum utilization of physical resources and energy [2]. Virtual Machine (VM) is a vital component of software stacks in the cloud data center. Cloud data are located across servers which are interconnected through networked resources and accessed via virtual machines. Amazon Elastic Computing Cloud (Amazon EC2) [4] is an example of cloud platform that provides infrastructure services in the form of VMs. One of the cardinal objectives of cloud computing is maximization of revenue both on the part of the cloud provider and the user. Task scheduling has evolved as one of the focus in cloud computing [5] since inefficient task scheduling can lead to revenue loss, performance degradation, and breach of Service Level Agreement (SLA). Therefore, efficient scheduling algorithms are required to minimize both computation-based metrics such as response time, system utilization, makespan, system throughput and network-based metrics such as network communication cost, traffic volume, round trip time, data communication cost [6]. These metrics are central to monitoring cloud activities in order to address issues like load balancing, energy efficiency, SLA and Quality of Service (QoS) guarantee, fault tolerance [6].
There are encouraging research results for efficient task scheduling in the cloud, but task scheduling problems are still NP-complete [7]. Most of the task scheduling algorithms used in cloud computing are rule based [8], [9], [10] because they are easy to implement. Rule based algorithms perform poorly when it comes to complex task scheduling problems [5]. The most common metaheuristic techniques applied to task scheduling problems in grid and cloud computing are Genetic Algorithm (GA) [11], [12], [13], [14], [15], Particle Swarm Optimization (PSO) [16], [17], [18], [19], [20], [21], [22], [23], [24], [25], [26], and Ant Colony Optimization (ACO) [27], [28], [29], [30]. PSO converges faster and obtains better solution than GA and ACO due to its exploratory capability for finding optimal solutions [16], [31]. Owing to the better performance of PSO over ACO and GA, variants and hybrid versions of PSO have been used for benchmarking the proposed algorithm.
In this paper, DSOS is proposed and used to schedule a bag of tasks in a cloud environment, hence network communication cost and data transfer cost are not main optimization issues when dealing with independent tasks. In the experimental setup, four data set categories, normal, left-skewed, right-skewed, and uniform distributions, were used to test the suitability of the proposed method. We used different forms of distributions to gain insight into the performance trend of the proposed method. Web applications such as web services are usually run for a long time and their CPU demand is variable. Moreover, High Performance Computing (HPC) applications have short life span and place a high demand on CPU. Furthermore, chosen statistical models for task sizes represent different scenarios of concurrently scheduling HPC and web applications. Uniform distribution depicts a situation where HPC and web applications are of the same magnitude. Left skewed distribution represents a situation where HPC applications to be scheduled are more than web applications and right skewed distribution represents the other way round. Uniform distribution represents a scenario where a single application type is scheduled.
The proposed algorithm can be applied to obtain optimal solutions to well defined problems on discrete space including, production planning, scheduling, inventory control, optimization of network synthesis and design problems, etc. These problems arise in real-world situations like management, engineering, telecommunications, etc.
The main contributions of the paper are:
- •
Clearer presentation of SOS procedures.
- •
Design and implementation of discrete version of SOS algorithm for scheduling of tasks in a cloud computing environment.
- •
Evaluation of the proposed method using makespan, response and degree of imbalance among VMs as performance metrics.
- •
Statistical validation of the obtained results against that of PSO using significance test.
The organization of the remainder of the paper is as follows. Metaheuristic algorithms applied to task scheduling problems in the cloud and SOS are presented in Section 2. Section 3 describes the problem formulation. Design of proposed algorithm and its description are presented in Section 4. Results of simulation and its discussion are in Section 5. Section 6 presented a summary and conclusion of the paper.
Section snippets
Metaheuristic algorithms in cloud scheduling
Metaheuristic methods [11], [13], [25], [27], [29], [32], [33], [34], [35], [36], [37] have been applied to solve task assignment problems in order to reduce makespan and response time. The methods have proven to find an optimum mapping of tasks to resources which reduce the cost of computation, improve quality of service, and increase utilization of computing resources. ACO, PSO, GA, and their variants are the mostly commonly used nature inspired population based algorithms in the cloud. PSO
Problem description
When tasks to be scheduled are received by Cloud Broker (CB), Cloud Information Service (CIS) is queried to identify the services required to execute the received tasks from the user and then schedule the tasks on the discovered services. For instance, tasks may be submitted to CB in a given time interval. The processing elements (Virtual Machines) are heterogeneous having varied processing speeds and memory, indicating that a task executed on different Virtual Machines (VMs)
Discrete symbiotic organisms search algorithm
SOS was proposed and applied to solve continuous problems. The Discrete Symbiotic Organism Search (DSOS) is presented and applied to solve task scheduling problems in cloud computing environment, with task scheduling formulated as a discrete optimization problem. The pseudocode and organogram of the proposed algorithm are presented in Algorithm 2 and Fig. 1 respectively. The continuous version of SOS can be used to solve optimization problems for which the optimization variables
Simulation and results
In order to test the performance of the proposed method, it was implemented in CloudSim [47] which is a toolkit for simulating Cloud computing scenarios. Two datacenters were created each containing two hosts respectively. Each host has 20 GB ram, 1 TB storage, 10 GB/s bandwidth and time-shared VM scheduling algorithm. One host is a dual-core machine while the other is a quad-core machine each with X86 architecture, Linux operating system, Xen virtual machine monitor (VMM), and cumulative
Summary and conclusion
In this paper, we designed a discrete version of Symbiotic Organism Search metaheuristic algorithm. The continuous version of the algorithm was inspired by symbiotic relationships exhibited by organisms in a habitat. The algorithm mimics the mutualism, commensalism and parasitic relationship to improve the quality of a given objective function. The method was implemented to schedule independent tasks using the CloudSim tool kit. Makespan, response time, and degree of imbalance among VMs were
Acknowledgments
This work is supported by UTM/RUG/04H11 RMC Universiti Teknologi Malaysia and PRGS/1/2014/ICT03/UTM/02/1 and FRGS/1/2014/ICT03/UTM/02/1 by Ministry of Higher Education (MOHE). The authors also gratefully acknowledge the helpful comments and suggestions of the reviewers, which have improved the presentation.
Mohammed Abdullahi is currently pursuing his Ph.D. in Computer Science at Universiti Teknologi Malaysia. He obtained his B.Tech in Mathematics with Computer from Federal University of Technology, Minna Nigeria. He is a lecturer in Ahmadu Bello University, Zaria Nigeria where he received his M.Sc. in Computer Science. His research interests include algorithm design for distributed systems, cloud computing and energy efficient computation. He is a member of IEEE and ACM.
References (48)
Advantages and challenges of adopting cloud computing from an enterprise perspective
Procedia Technol.
(2014)Cloud monitoring: A survey
Comput. Netw.
(2013)- et al.
Symbiotic organisms search: A new metaheuristic optimization algorithm
Comput. Struct.
(2014) - et al.
Multi-objective optimization problems with Fuzzy relation equation constraints regarding max-average composition
Math. Comput. Modelling
(2009) A systematic review on cloud computing
J. Supercomput.
(2014)- et al.
A cost-benefit analysis of using cloud computing to extend the capacity of clusters
Clust. Comput.
(2010) - Amazon EC2. Available from:...
A hyper-heuristic scheduling algorithm for cloud
IEEE Trans. Cloud Comput.
(2014)- et al.
Computer and Intractability: A Guide to the Theory of NP-Completeness
(1979) - et al.
An improved algorithm based on max–min for cloud task scheduling
Enhanced max–min task scheduling algorithm in cloud computing
Int. J. Appl. Innov. Eng. Manag.
QOS sufferage heuristic for independent task scheduling in grid
J. Inf. Technol.
Performance comparison of energy-aware task scheduling with GA and CRO algorithms in cloud environment
CLPS-GA: A case library and Pareto solution-based hybrid genetic algorithm for energy-aware cloud service scheduling
Appl. Soft Comput.
Multi-dimensional constrained cloud computing task scheduling mechanism based on genetic algorithm
Int. J. Online Eng.
Grid task scheduling genetic algorithm based on cloud model
J. Univ. Electron. Sci. Technol. China
A PSO-based algorithm for load balancing in virtual machines of cloud computing environment
Apply PSO into cloud storage task scheduling with QoS preference awareness
J. Commun.
Particle swarm optimization embedded in variable neighborhood search for task scheduling in cloud computing
J. Donghua Univ. (Engl. Ed.)
Task scheduling optimization in cloud computing applying multi-objective particle swarm optimization
Task-based system load balancing in cloud computing using particle swarm optimization
Int. J. Parallel Program.
Particle swarm optimization technique for task-resource scheduling for robotic clouds
Appl. Mech. Mater.
Cited by (297)
A bidirectional workflow scheduling approach with feedback mechanism in clouds
2024, Expert Systems with ApplicationsLook-ahead workflow scheduling with width changing trend in clouds
2023, Future Generation Computer SystemsRIOPSO Algorithm for Fuzzy Cloud Resource Scheduling Problem
2024, Journal of Frontiers of Computer Science and TechnologyA Systematic Literature Review of Ransomware Detection Methods and Tools for Mitigating Potential Attacks
2024, Communications in Computer and Information ScienceHybrid Bio-Inspired Optimization-based Cloud Resource Demand Prediction using Improved Support Vector Machine
2024, International Journal of Advanced Computer Science and Applications
Mohammed Abdullahi is currently pursuing his Ph.D. in Computer Science at Universiti Teknologi Malaysia. He obtained his B.Tech in Mathematics with Computer from Federal University of Technology, Minna Nigeria. He is a lecturer in Ahmadu Bello University, Zaria Nigeria where he received his M.Sc. in Computer Science. His research interests include algorithm design for distributed systems, cloud computing and energy efficient computation. He is a member of IEEE and ACM.
Md Asri Bin Ngadi received Ph.D. in Computer Science from Aston University, Birmingham UK and B.Sc. in Computer Science from Universiti Teknologi Malaysia. His research interests are related to Wireless Computer, Cloud Computing, and Network Security. Currently he is appointed as Associate Professor at Universiti Teknologi Malaysia and a member of IEEE and ACM.
Shafi’i Muhammad Abdulhamid received his M.Sc. degree in Computer Science from Bayero University Kano, Nigeria and B.Tech. degree in Mathematics/Computer Science from the Federal University of Technology Minna, Nigeria. His current research interest is scheduling in Grid and Cloud Computing. He is a member of IEEE and a member of Nigerian Computer Society (NCS). Presently he is a Ph.D. candidate at the Faculty of Computing, Universiti Teknologi Malaysia.