Symbiotic Organism Search optimization based task scheduling in cloud computing environment

https://doi.org/10.1016/j.future.2015.08.006Get rights and content

Highlights

  • Discrete Symbiotic Organism Search algorithm for task scheduling is proposed.

  • The proposed algorithm has better ability to exploit best solution regions than PSO.

  • The proposed method has global ability in terms of exploring optimal solution points.

  • The proposed algorithm performs significantly better than PSO for large search spaces.

Abstract

Efficient task scheduling is one of the major steps for effectively harnessing the potential of cloud computing. In cloud computing, a number of tasks may need to be scheduled on different virtual machines in order to minimize makespan and increase system utilization. Task scheduling problem is NP-complete, hence finding an exact solution is intractable especially for large task sizes. This paper presents a Discrete Symbiotic Organism Search (DSOS) algorithm for optimal scheduling of tasks on cloud resources. Symbiotic Organism Search (SOS) is a newly developed metaheuristic optimization technique for solving numerical optimization problems. SOS mimics the symbiotic relationships (mutualism, commensalism, and parasitism) exhibited by organisms in an ecosystem. Simulation results revealed that DSOS outperforms Particle Swarm Optimization (PSO) which is one of the most popular heuristic optimization techniques used for task scheduling problems. DSOS converges faster when the search gets larger which makes it suitable for large-scale scheduling problems. Analysis of the proposed method conducted using t-test showed that DSOS performance is significantly better than that of PSO particularly for large search space.

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 {T1,T2,T3,,Tn} 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 xi,i=1,2,3,,n

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)

  • Upendra Bhoi et al.

    Enhanced max–min task scheduling algorithm in cloud computing

    Int. J. Appl. Innov. Eng. Manag.

    (2013)
  • Ehsan ullah Munir et al.

    QOS sufferage heuristic for independent task scheduling in grid

    J. Inf. Technol.

    (2007)
  • L. Wu et al.

    Performance comparison of energy-aware task scheduling with GA and CRO algorithms in cloud environment

  • C. Zhao, et al. Independent tasks scheduling based on genetic algorithm in cloud computing, in: 2009 5th International...
  • Fei Taoa et al.

    CLPS-GA: A case library and Pareto solution-based hybrid genetic algorithm for energy-aware cloud service scheduling

    Appl. Soft Comput.

    (2014)
  • Y. Zhu et al.

    Multi-dimensional constrained cloud computing task scheduling mechanism based on genetic algorithm

    Int. J. Online Eng.

    (2013)
  • S.M. Zheng

    Grid task scheduling genetic algorithm based on cloud model

    J. Univ. Electron. Sci. Technol. China

    (2012)
  • M. Wang, Z. Wenhua,  IEEE, A comparison of four popular heuristics for task scheduling problem in computational grid,...
  • Z. Liu et al.

    A PSO-based algorithm for load balancing in virtual machines of cloud computing environment

  • J. Wang et al.

    Apply PSO into cloud storage task scheduling with QoS preference awareness

    J. Commun.

    (2014)
  • L.Z. Guo

    Particle swarm optimization embedded in variable neighborhood search for task scheduling in cloud computing

    J. Donghua Univ. (Engl. Ed.)

    (2013)
  • F. Ramezani et al.

    Task scheduling optimization in cloud computing applying multi-objective particle swarm optimization

  • F. Ramezani et al.

    Task-based system load balancing in cloud computing using particle swarm optimization

    Int. J. Parallel Program.

    (2014)
  • V. Popov

    Particle swarm optimization technique for task-resource scheduling for robotic clouds

    Appl. Mech. Mater.

    (2014)
  • Cited by (297)

    • RIOPSO Algorithm for Fuzzy Cloud Resource Scheduling Problem

      2024, Journal of Frontiers of Computer Science and Technology
    • Hybrid Bio-Inspired Optimization-based Cloud Resource Demand Prediction using Improved Support Vector Machine

      2024, International Journal of Advanced Computer Science and Applications
    View all citing articles on Scopus

    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.

    View full text