Arabian Journal for Science and Engineering
https://doi.org/10.1007/s13369-018-3664-6
RESEARCH ARTICLE - COMPUTER ENGINEERING AND COMPUTER SCIENCE
Cost-Effective Algorithm for Workflow Scheduling in Cloud Computing
Under Deadline Constraint
Aida A. Nasr
1
· Nirmeen A. El-Bahnasawy
2
· Gamal Attiya
3
· Ayman El-Sayed
3
Received: 20 February 2018 / Accepted: 23 November 2018
© King Fahd University of Petroleum & Minerals 2018
Abstract
Cloud computing is a popular model that allows users to store, access, process, and retrieve data remotely. It provides a
high-performance computing with large scale of resources. However, this model requires an efficient scheduling strategy for
resources management. Recently, several algorithms are presented to solve the resource scheduling problem. Nevertheless,
still the problem exists with complex applications such as workflows, which need an efficient algorithm to be scheduled on
the available resources. This paper presents a novel hybrid algorithm, called CR-AC, combining both the chemical reaction
optimization (CRO) and ant colony optimization (ACO) algorithms to solve the workflow-scheduling problem. The proposed
CR-AC algorithm is implemented in the CloudSim toolkit and evaluated by using real applications and Amazon EC2 pricing
model. Moreover, the results are compared with the most recent algorithms: modified particle swarm optimization (PSO) and
cost-effective genetic algorithm (CEGA). The experimental results indicate that the CR-AC algorithm achieves better results
than the traditional CRO, the ACO, the modified PSO and CEGA algorithms, in terms of total cost, time complexity, and
schedule length.
Keywords Cloud computing · Workflow · Scheduling · CloudSim
1 Introduction
Cloud computing is considered as one of the most famous
computing models. It gained a lot of attention in both
academia and industry fields as it provides many benefits
for users and organizations. It enables users to store and pro-
cess their complex applications on a large datacenter. It also
allows users to access their data remotely from everywhere.
Further, it enables organizations and companies to obtain
high computing capacity without bearing the elevated price
of building huge datacenters inside. It also enables organiza-
tions and companies to outsource infrastructures using cloud
environment and thus transfer their data and applications to
B Aida A. Nasr
aida.nasr2009@gmail.com
1
Computer Science and Engineering Department, Faculty of
Electronic Engineering, Menofia University, Tanta, Egypt
2
Computer Science and Engineering Department, Faculty of
Electronic Engineering, Menofia University, El Sadat City,
Egypt
3
Computer Science and Engineering Department, Faculty of
Electronic Engineering, Menofia University, Menouf, Egypt
the cloud computing. Furthermore, organizations and users
can use what they intend on the cloud using pay per use strat-
egy. In all cases, cloud computing platform saves time and
money [1–3]. For example, providers, like amazon EC2 [4],
permit their clients to assign, access, and manage a group of
virtual machines (VMs) that run inside the datacenters and
only charge them for the period of using the machines.
Although cloud computing has many benefits, manage-
ment of cloud resources is critical, especially when sev-
eral users submit their applications simultaneously to the
cloud environment. Therefore, cloud computing requires
an efficient scheduling strategy for resources management.
Scheduling is the process of mapping an application tasks
into available resources in the system without violating the
constraints. Efficient scheduling plan is essential for man-
aging and optimizing the use of the cloud resources and
providing end users high efficient services with high qual-
ity [5].
Recently, several algorithms are developed to solve the
resource scheduling problem [6–16]. Nevertheless, the prob-
lem still exists with complex applications such as workflows.
A workflow is a group of tasks that processes a data set.
For every kind of business and industry, anytime data are
123