Content uploaded by Ali Mohammadzadeh
Author content
All content in this area was uploaded by Ali Mohammadzadeh on Nov 25, 2021
Content may be subject to copyright.
Vol.:(0123456789)
1 3
Journal of Ambient Intelligence and Humanized Computing
https://doi.org/10.1007/s12652-021-03482-5
ORIGINAL RESEARCH
Scientific workflow scheduling inmulti‑cloud computing using
ahybrid multi‑objective optimization algorithm
AliMohammadzadeh1· MohammadMasdari2
Received: 5 December 2020 / Accepted: 2 September 2021
© The Author(s), under exclusive licence to Springer-Verlag GmbH Germany, part of Springer Nature 2021
Abstract
Multi-cloudis the use of multiplecloud computing in a single heterogeneous architecture. Workflow scheduling in multi-
cloud computing is an NP-Hard problem for which many heuristics and meta-heuristics are introduced. This paper first pre-
sents a hybrid multi-objective optimization algorithm denoted as HGSOA-GOA, which combines the Seagull Optimization
Algorithm (SOA) and Grasshopper Optimization Algorithm (GOA). The HGSOA-GOA applies chaotic maps for producing
random numbers and achieves a good trade-off between exploitation and exploration, leading to an improvement in the
convergence rate. Then, HGSOA-GOA is applied for scientific workflow scheduling problems in multi-cloud computing
environments by considering factors such as makespan, cost, energy, and throughput. In this algorithm, a solution from the
Pareto front is selected using a knee-point method and then is applied for assigning the scientific workflows’ tasks in a multi-
cloud environment. Extensive comparisons are conducted using the CloudSim and WorkflowSim tools and the results are
compared to the SPEA2 algorithm. The achieved results exhibited that the HGSOA-GOA can outperformother algorithms
in terms of metrics such as IGD, coverage ratio, and so on.
Keywords Workflow· Scheduling· SOA· GOA· Multi-cloud· Pareto front
1 Introduction
Cloud computing is a growing field of distributed computing
that provides dynamically scalable services over the inter-
net via virtual servers. It is focused on a market-oriented
business strategy in which consumers can purchase services
based on Service Level Agreements (SLA) and be paid
on a pay-as-you-go model, similar to traditional services
(Mateescu etal. 2011). The key benefits of cloud comput-
ing are its flexibility and scalability, which allows users to
reserve and unlock, services and resources as required.
The services and applications that include horizontal scal-
ing can be spread across several different cloud computing
environments with different pricing models. Scheduling
single-cloud environments attempt to assign tasks submit-
ted by users through various heterogeneous virtual resources
while inter-cloud environments try to target tasks submitted
by users through various heterogeneous virtual resources
dispersed across various cloud service providers. With the
popularity of inter-cloud environments, workflow schedul-
ing solutions for inter-cloud applications are now available,
allowing users to get the most out of the computing and
storage infrastructure that they have(Masdari and Zanga-
kani 2020). Generally, scheduling schemes in the inter-cloud
environments are divided into three categories, cloud federa-
tion, multi-cloud, and hybrid cloud. In this paper, our focus
is on multi-cloud.
When designing a process scheduling strategy, several
works consider task execution locations. For example, in
Fig.1 the effect of task order on the makespan metric is
shown. Assume there are two different cloud platforms,
cloud 1 and 2. The scheduling location for aworkflow appli-
cation is as follows: tasks T0, T1, T2, and T3 are scheduled to
cloud 1, and tasks T4, T5, T6, and T7 are mapped to cloud 2.
In this figure, makespan is the time it takes for a workflow
to complete. Tasks T1, T2, and T3 can be run concurrently
after task T0 is completed. Then, task T4 receives task T1's
* Ali Mohammadzadeh
A.Mohammadzadeh@iaurmia.ac.ir
Mohammad Masdari
M.Masdari@iaurmia.ac.ir
1 Department ofComputer Engineering, Shahindezh Branch,
Islamic Azad University, Shahindezh, Iran
2 Department ofComputer Engineering, Urmia Branch,
Islamic Azad University, Urmia, Iran
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
A.Mohammadzadeh, M.Masdari
1 3
output data and begins to run. After that, task T5receives
output data of task T2, task T6 receives task T3's output and
begins execution. Tasks T4, T5, and T6 are the predecessors
of task T7. Workflows have been commonly used to model
large-scale research and engineering applications in a vari-
ety of fields, including Physics, Bioinformatics, Astronomy,
and Earth Science (Möller etal. 2008). Scientists required a
high-performance computing environment, such as cluster
computing, grid computing, or cloud computing, to operate
these workflows of varying sizes.
While multi-cloud computing has several advantages, it
still has some drawbacks that must be addressed. First, due
to virtual machines (VMs) (Masdari and Zangakani 2019)
output variations, a scientific workflow's total deadline can
be missed or its budget may be increased. As a result, perfor-
mance differences have a major effect on workflow schedul-
ing in a multi-cloud computing environment. Second, when
a VM is reserved, it takes time to properly initialize it, and
when computing resources are released, it takes time to shut
down. As a result, the longer the resource acquisition time,
the longer the total execution time, and the longer the shut-
down time, the higher the average cost of the workflow. As a
result, the overall efficiency and cost of scientific workflows
would be impacted by these delays (Meena etal. 2016).
However, in multi-cloud environments, a variety of VMs
Fig. 1 Workflow execution in the multi-cloud
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
Scientific workflow scheduling inmulti‑cloud computing using ahybrid multi‑objective…
1 3
with a variety of configurations and prices are available for
running different workflows.
The multi-cloud has an unlimited number of resources,
allowing users to expand or shrink leased resources accord-
ing to application requirements; however, determining how
many virtual machines are needed is still an open issue.
Multi-cloud providers' main aim is to make money because
customers must pay for rented virtual machines on a pay-
per-use basis. As a result, workflow scheduling in multi-
cloud computing is a multi-objective optimization problem
in which not only the time to completion but also the cost
of execution must be considered. Multi-objective optimi-
zation is one of the most popular methods for minimizing
somemetrics at the same time (Han etal. 2021; Tirkolaee
etal. 2020).
Most researchers have developedmulti-objective meta-
heuristic algorithms like Genetic Algorithm (GA) (Falzon
and Li 2012; Ma etal. 2019), Bat Optimization Algorithm
(Mahajan etal. 2017), and Particle Swarm Optimization
(PSO) (Masdari etal. 2017) to solve workflow scheduling
problems and get good answers. Regardless of the amount of
energy consumed, minimizing makespan and operating costs
are commonly seen as two opposing targets. This research
aims to show how a multi-objective optimization algorithm
can be used to generate Pareto optimal solutions in multi-
cloud workflow applications. This paper tries to reduce
energy consumption by achieving a form of cloud comput-
ing known as green computing (Jiang etal. 2017; Singh etal.
2019; Thaman and Singh 2017). For this purpose, it presents
HGSOA-GOA, by combining the SOA and GOA algorithms
based on chaos theory. Then, this algorithm is applied for
multi-objective workflow scheduling regarding factors such
as: makespan, energy, throughput, and cost. According to the
simulation results, the proposed HGSOA-GOA algorithm
provides greater convergence and a more uniform distance
between solutions. The contributions of this paper can be
listed as follows:
• A hybrid binary and chaotic multi-objective optimiza-
tion algorithm denoted as HGSOA-GOA is presented by
combining the SOA and GOA algorithms.
• A workflow scheduling framework for handling scien-
tific workflows in multi-cloud environments is provided,
using the HGSOA-GOA algorithm.
• Evaluating the proposed workflow scheduling method for
multi-cloud environments.
• Highlighting possible future works in the multi-cloud
workflow scheduling context.
The rest of the paper is structured as follows: a litera-
ture review of the multi-objective workflow-scheduling
schemes is presented in Sect.2. Section3 discusses the
problem definition, while Sect.4 covers the basic SOA and
GOA algorithms. The suggested HGSOA-GOA algorithm
is presented in Sect.5. Section6 demonstrates the workflow
scheduling architecture and the simulation results are pre-
sented in Sect.7. Finally, Sect.8 provides the conclusion and
future research remarks.
2 Literature review
Workflow schedulingis an NP-hard optimization issue with
a lot of research in the last ten years. Many evolutionary
algorithms to fix this issue on various cloud environments
have been introduced in previous works; we classified the
related works into four categories: workflow scheduling in
single-cloud, Workflow scheduling in multi-cloud, workflow
scheduling in cloud federation, and Workflow scheduling in
hybrid cloud.
For various computing platforms, such as grid, cluster,
and distributed processing, several task scheduling algo-
rithms have been developed. Some of these algorithms have
been adapted for use in the cloud. For incompatible paral-
lelscheduling with random precedence constraints, Liu and
Yang (2011) proposed a priority rule-based heuristic serial
schedule algorithm. To schedule the prior job-machine pair,
the priority rule can be chosen from the arithmetic mean and
variance of the processing times. Choudhary etal. (2018)
used a hybrid solution of the Gravitational Search Algorithm
(GSA) and HEFT to control cost and makespan similarly.
Many common methods for simultaneously considering
cost and makespan are to model the problem as a constrained
optimization problem, in which one goal is limited while the
other is attempted to be optimized. Many previous studies
(Chen etal. 2018; Jiang etal. 2020) looked at deadline-
constrained workflow scheduling issues.
Bansal etal. (2020) used dynamic voltage scale and
adaptive power control to optimize energy efficiency while
meeting time limits, while Wu etal. (2018) proposed a three-
phase approach for creating energy-efficient schedules for
cloud workflows under reliability and deadlineconstraints.
The NSGA-III algorithm, in Sharma and Shukla (2019) sug-
gested an effective environmental choice and simplification
method. The environmental selection operator was created
to select solutions associated with various lines drawn from
the source and reference points in an equal manner. A sim-
plificationscheme was also proposed, in which the extreme
point is used and the designed rules are revised. The authors
in Mohammadzadeh etal. (2020a, 2021) suggest hybrid
meta-heuristic techniques to schedule scientific workflows
in green cloud computing and compared the results with
the SPEA2 algorithm. An upgraded Grey Wolf optimiza-
tion algorithm was introduced in Mohammadzadeh etal.
(2020b) through optimizing the exploration ability inpur-
suing competing objectives such as energy, cost, makespan,
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
A.Mohammadzadeh, M.Masdari
1 3
and throughput. To enhance the GWO algorithm, used a
hill-climbing problem concept and chaotic random numbers
so instead of constant random variables.
In Camelo etal. (2010), the authorsused Division and
Bound's stochastic method to make real Pareto front solu-
tions, and they used a multi-objective heuristic algorithm in
the grid system to solve the scheduling issue.To solve the
workflow scheduling problem, suggested the multi-objective
evolutionary algorithm (MOEA) to minimize runtime and
cost (Yu etal. 2007).NSGA-II and SPEA2 (Deb etal. 2002;
Zitzler etal. 2001) are population-based algorithms, and
PAES and MOEA are local search algorithms (Knowles and
Corne 1999) that were used to overcome workflow schedul-
ing problems with opposing goals and different constraints.
The authors of Hu etal. (2018) proposed a PSO-based
multi-objective method in multi-cloud systems, intending to
reduce time and cost while enhancing reliability. The authors
used a Poisson distribution to determine the probability of
failure and an exponential distribution to calculate the prob-
ability of task completion. They found a task queue for each
cloud service provider and believed that cloud service pro-
vider users would have access to an infinite number of VMs.
The authors used Python and scientific workflows to perform
their assessments. They say that their algorithm outperforms
the CMOHEFT algorithm.
The authors of Maheshwari etal. (2016) propose a multi-
site method for workflow scheduling problems that uses per-
formance models to predict the duration of the execution
and adaptive investigates detect network throughput between
different sites. Their claim that the method can improve
resource efficiency while also reducing execution time.
The authors of Gupta etal. (2016a) proposed a two-
phase priority-based workflow scheduling method for
diverse multi-cloud environments that can handle massive
workflows. This method takes into account metrics as an
example computing costs for priority, after that, the tasks
are mapped to the appropriate virtual machines based on
priority. They claimed that their method outperforms other
speed-up algorithms.
In Gupta etal. (2016b), the authors suggested a work-
flow scheduling method for multi-clouds that takes time to
transfer. It calculates the task's B-level prioritization and
performs virtual machine selection based on the calcu-
lated task's B-level priority. In a multi-cloud environment,
however, it does not support preemptive scheduling. Their
research increases makespanand resource usage.
MOHEFT is a list-based multi-objective workflow
scheduling method for scientific workflows (Durillo etal.
2015). It improves the HEFT approach by using the conges-
tion distance to achieve near-optimal Pareto front, reduc-
ing makespan andcost. It was compared to the HEFT and
SPEA2. MOHEFT, according to the writers, has a better cost
andmakespan. To be more precise, MOHEFT and SPEA2
outperform HEFT in workflows with a few parallel tasks,
while MOHEFT outperforms SPEA2 in balanced huge
workflows.
Coutinho etal. (2015) proposed GraspCC-fed, a method
for determining the optimal number of virtual machines
available for each workflow in a single cloud service pro-
vider and federated cloud computing. The Greedy Rand-
omized Adaptive Search Procedure, which forecasts costs
based on cost and execution time, is used in GraspCC-fed.
GraspCC-fed defines the workflow execution setups as well
as the number of virtual machines per cloud service provider
that should be reserved for workflow execution based on
user constraints.
3 Problem statement
This sectiondescribes the theories and models that are used
in the rest of this paper. Table1 describes the notations used
in this section. We presume that a variety of data centers
collaborate to provide on-demand services and processing
online equipment. Virtual machines are used to represent all
computing resources in data centers, and virtual machines
from various clouds have various kinds and features. They
might, for example, have varying numbers of CPUs with
varying process time, memory capacities, and network
bandwidth utilization. We assume BE mode for allocating
resources. In thistype, requests are queued and services are
available as quickly as possible.
In this scheme, a set of m clouds is denoted by C = {C1,
C2, C3,…, Cm} and a set of n VMs is denoted by VM = {VM1,
VM2, VM3,…, VMn}. G(T, E) denotes a task graph, in which
T denotes a collection of tasks, and E denotes a collection
ofedges between tasks. Ei jk = (Ti j → Tik) is an edge. The
task Ti j and task Tik are dependent on each other, which is
represented by Ei. It's important to note that the total number
of tasks in one virtual machine |VMi| does not have to be the
same as the total number of tasks in another virtual machine
|VMj|. However, all of the virtual machines are distinct and
heterogeneous. Each task has a unique arrival time and can
be applied to a cloud service provider using BE mode. A
task should not begin until all preceding tasks have been
completed. On different clouds, each task takes a different
amount of time to complete. The execution time of task j on
the ith VM located on the kth cloud is denoted by ETCi j,k.
Equation(1) indicates the ETC matrix. Since in this scheme
a heterogeneous multi-cloudsystem is considered, the task
execution time is different in eachcloud environment (Panda
and Jana 2015).
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
Scientific workflow scheduling inmulti‑cloud computing using ahybrid multi‑objective…
1 3
The problem of workflow scheduling, given an ETC
matrix, is to assign all of the tasks to the clouds regarding
their order in workflow, aiming to minimize the makespan
of the workflow. ET(i, p) is execution times of ith task (ti)
on pth resource (rp). In Eq.(2), Ti is the size of the task, and
pprp is the processing power of the rp resource. EC(i, p) in
Eq.(3) is execution cost. Also, Μp denotes the cost per unit
of pth resources usage for each time interval.
The first execution start time and the first completion time
of the ith task (ti) on the pth resource (rp) are EST(ti,rp)
and EFT(ti,rp), respectively. We will use for the beginning
task Eq.(4), and for other tasks Eqs. (5) and (6) were used
(Verma and Kaushal 2017). Parent(ti) is a set of parent tasks
for ith task (ti), and avail(rp) is the time that pth resources
(1)
ETC
=
VMType1
⎧
⎪
⎨
⎪
⎩
T11
⋮
T1p1
⋮
VMTypen
⎧
⎪
⎨
⎪
⎩
Tn1
⋮
Tnpn
⎧
⎪
⎪
⎪
⎪
⎨
⎪
⎪
⎪
⎪
⎩
ETC11,1 …ETC11,m
⋮⋮⋮
ETC1p1,1 …ETC1p1,m
⋮⋮⋮
ETCn1,1 …ETCn1,m
⋮⋮⋮
ETCnpn,1 …ETCnpn,m
⎫
⎪
⎪
⎪
⎪
⎬
⎪
⎪
⎪
⎪
⎭
C1…Cm
(2)
ET(i,p)=T
i
∕PP
r
p,
(3)
EC(i,p)=Mp×ET(i,p)
execute the task. The AFT is the actual finish time for each
jth task (tj). In Eq.(7), on the pth resource, the Actual start
time (AST) is determined for each ith task (Xu etal. 2014).
According to Eq.(8), the makespan is the maximum
actual finish time of the last workflow task (Schwiegelshohn
2010). The energy equation is based on the capacitance of
CMOS logic circuits, according to Eq.(9). The symbol A
represents the number of switches per clock cycle, C repre-
sents total capacitance, V represents the voltage of supply,
and f represents frequency. This equation depicts voltage's
influence on decreasing energy consumption. Equation(10)
can be used to evaluate the energy usage of the execution of
tasks (Mezmaz etal. 2011).
(4)
EST(
t
entry
,r
p)
=avail(r
p)
(5)
EST
ti,rp
=max
avail(rp)
maxt
j
∈parent(t
i
)
AFT
tj
+ct
(6)
EFT(
t
i
,r
p)
=ET(i,p)+EST
(
t
i
,r
p)
(7)
AST(
t
i
,r
p)
=max(EST
(
t
i
,r
p)
,Avail(r
p))
(8)
makespan
=max
{
AFT(t
exit
)
}
(9)
Pc=ACV 2f
Table 1 Notations Symbol Semantics
ET(i,p)
Task ti execution times on the rp resource
Ti
The size of the task ith
PP
r
p
The rp resources' processing power
EC(i,p)
Task ti execution cost on rp resource
𝜇p
For each period, the cost per unit of rp resource usage
EST(
t
i
,r
p)
The task ti’s first execution start time on the pth resource
avail(rp)
The amount of time it takes for rp resources to approve a task execution request
AFT
(
t
j)
The actual finish time for each ith task on the pth resource
ct
The time it takes for data to be transferred between two interconnected tasks
ET(i,p)
The makespan of ith task on pth resource
EFT(
t
i
,r
p)
Time for the first completion of the ith task on the pth resource
AST
(
t
i
,r
p)
Actual start time for ith task on the pth resource
makespan
The total amount of time it takes to complete all tasks
P
CMOS capacitance
A
The number of switches per iteration
C
Capacity
V
Voltage
f
Frequency
EConsumption of energy
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
A.Mohammadzadeh, M.Masdari
1 3
4 Applied meta‑heuristic algorithms
This section discusses the Seagull and Grasshopper Optimi-
zation Algorithms that are used in this scheme to provide a
hybrid multi-swarm optimization algorithm. The integration
of these algorithms provides the optimal balance between
exploitation andexploration. Table2 describes the semantic
of notations used in this section.
4.1 Seagull Optimization Algorithm
The SOA algorithm is inspired by the seagull’s hunt. In
the exploration phase, a seagull must meet three condi-
tions: collision avoidance, movement in the direction of the
best neighbor, keep in touch with the best search agent. To
(10)
E
=
n
∑
i=1
ACV 2f.ET (i,p
)
prevent collisions between neighbors, a new search agent
location is determined using an additional variable A.
In this equation, Xs measures the search agent's position
that isn't in competition with any other search agent, Ps is
the current location of the agent, A indicates the movement
behavior of the search agent, and x is the current iteration.
Following the avoidance of collisions between neighbors,
the agents switch in the direction of the best neighbor. In
Eq.(12), the symbol B is a random number between 0 and 1,
and Ms shows the distance between the current search agent
(Ps) and the best seagull position (Pbs). Finally, the search
agent will change its positionin terms of the best search
agent. Seagulls can change the angle and speed continuously
during the attack. The spiral movement activity happens in
the air when attacking the prey.
Equations(13), (14), and (15) define this behavior in the
x, y, and z planes.
In which, k is a random number between 0 and 2π. r is
the radius of each turn of the spiral. Finally, Ps(x) saves the
best solution and modifies the location of other agents. The
distance between the search agent and the best-fit agent is
represented by Ds.
4.2 GOA algorithm
The Grasshopper Optimization Algorithm is a new optimi-
zation algorithm base on grasshopper swarms (Saremi etal.
2017). The grasshoppers provide Exploration and exploita-
tion stages in the hunt for food. The particles travel locally
in the exploitation stage, while these agents are permitted
to make abrupt movements in the exploration stage. The
movement of the grasshopper is typically divided into three
models, the wind advection operator (Ai), the social interac-
tion (Si), and the gravity force (Gi) shown in Eq.(17). In this
equation Xi denotes the ith grasshopper’s position.
(11)
���⃗
Xs=A×
���⃗
Ps(x)
(12)
����⃗
M
s=B×
(
����⃗
Pbs(x)
)
−
���⃗
Ps(x
))
(13)
x�=r×
cos
(k)
(14)
y�=r×sin(k)
(15)
z�=r×k
(16)
���⃗
P
s(x)=
(
���⃗
Ds×x�×y�×z�
)
+
����⃗
Pbs(x
)
(17)
Xi=Gi+Si+Ai
Table 2 Notations
Symbol Semantics
A
The search agent's movement patterns
� � �⃗
Ps(x)
The search agent's current location in the xth iteration
����⃗
Ms
The distance between the currentand the best agent
B
Between 0 and 1 is a random number
����⃗
Pbs
(x
)
The best location for seagull
x′
,
y′
,
z′
New values x, y, z
rThe spiral's radius at each turn
kA random number between 0 and 2π
� � �⃗
Ds
The distance between the currentand the best agent
Gi
The gravity force
Si
The wind advection operator's social interactions
Ai
The Wind advection
g
Constant of Gravitation
̂eg
Unity vector towards the earth's core
S
The social forces' power
dij
The distance between the ith and the jth agent
u
Constant drift
̂ew
Unity vector towards the wind
f
The attraction intensity
r
the real value
l
The attractive length scale
Xd
i
The ith particle location in the dth dimension
C
A factor that reduces the attraction zone's size
lbd,ubd
The lower and upper bounds in the dth dimension
Td
The dth dimension’s target value
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
Scientific workflow scheduling inmulti‑cloud computing using ahybrid multi‑objective…
1 3
where g represents the gravitational constant,
̂eg
represents
unity vector towards the earth's core in Eqs.(18). In Eq.(19),
N represents the number of agents, and dij indicates the dis-
sociation between the ith and the jth agent. In Eq.(20), u
describes a constant drift, and
̂ew
represents a unity vector
towards the wind. Equation(21) shows the modified version
of the proposed equation to solve the problems.
The lower and upper limits are denoted by lbd and ubd.
Also, T is the perfect solution that has been discovered in the
dth dimension, which is the target value. C is a decreasing
factor that causes the gravitation, expulsion, and comfort
zones to shrink. The GOA flowchart is presented in Fig.2.
5 The proposed HGSOA‑GOA algorithm
Like some metaheuristic algorithms, the SOA algorithm
suffers from the local optimum problem (Dhiman and
Kumar 2019; Jia etal. 2019b). Also, the GOA algorithm
has a good ability to escape local optima, but this algorithm
does not have a good convergence rate (Jia etal. 2019a;
Luo etal. 2018). Hence, a new hybrid algorithm, denoted
as HGSOA-GOA, is proposed based on the SOA and GOA
which use GOA's ability to escape local optima and SOA's
ability to increase the search convergence speed to boost
(18)
Gi
=−g×
̂
e
g
(19)
S
i=
N
∑
j=1,j≠i
s(
|
|
|
Xj−Xi
|
|
|
)Xj−Xi
dij
(20)
Ai=ûew
(21)
X
d
i=C
N
j=
1,
j≠i
Cubd−lbd
2S
Xd
j−Xd
i
Xj−Xi
dij
+T
d
both exploitation and exploration. To combine the two algo-
rithms, we used multi-swarm mode. These two algorithms
are suitable for hybridization because of their strengths, the
global search ability of SOA, and GOA's high efficiency and
accuracy in determining the global optimal, and the ability
to escape local optima. The proposed hybrid algorithm inte-
grates algorithms to reach a good trade-off between exploita-
tion and exploration and provides considerably better results
in terms of accuracy and convergence rate than the tradi-
tional SOA and GOA algorithms. The meaning of notations
used in the rest of this study is described in Table3. Greedy
algorithms are commonly describedas simple, and their exe-
cution time is short (Cerrone etal. 2017). As a consequence,
the proposed hybrid algorithm has been easily adapted to
the greedymode. In most cases, a greedy approach yields
an optimal local solution in a fair amount of time, as well
as an approximately optimal ultimate answer. The greedy
algorithm discovers a global solution focused on the best
local selection at every step.
In this paper, a random number is generated for each ele-
ment. Moreover, a threshold is created based on the number
of iterations in the range of 0.6–0.8. In each step, if the ran-
dom number of the particle is greater than the threshold, it
acts greedily; otherwise, it will shift non-greedily regardless
of the degree of fitness. The threshold value is decreasing
with an increase in the number of steps from 0.8 to 0.6.
Equation(22) shows this. At first, the initial population
after create randomly is divided into two subpopulations
per algorithm. The operation of each algorithm is applied
separately to subpopulations. Since the initial population is
random, it does not matter how the population is assigned
to the algorithms.
Fig. 2 The GOA's flowchart
Table 3 Notations
Symbol Semantic
T(x) A transfer function
XPosition of the particle
IThe total number of particles
DDimension
TThe number of iteration
NtThe real Pareto front’s number
di
The Euclidean distance between the ith true Pareto
frontand the ideal Pareto front solution obtained as
near as possible
P, QIn the search space,two separate sets of Pareto optimal
solutions
SThe set of optimal Pareto front
MThe number of metrics
f
i
m
The value of the mth objective in ith solution
d
The mean of di
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
A.Mohammadzadeh, M.Masdari
1 3
Also, in the proposed hybrid algorithm, we store n best
solutions of both algorithms in shared memory and the
size of n should not exceed 30% of the original popula-
tion according to the experimental results. We can use the
mutation on 25% of the population to increase discovery
and establish a balance between exploration and exploita-
tion. Finally, the best solutions are chosen from the shared
memory using the objective function.
5.1 Chaotic random numbers
Chaos theory deals with deterministic processes whose
action can be predicted in theory. One of the famous appli-
cations is the introduction of chaos theory into optimiza-
tion. The results show that usingchaos functions can pre-
vent trapping into the local optimum and may speed up the
convergence rate. To improve the performance of the pre-
sented hybrid algorithm, five chaotic functions are used in
this scheme (Mukherjee and Mukherjee 2016). In each step,
one function of such options is chosen at random. As seen
in Table4, the initial value of 0.7 is considered for all func-
tions (Saremi etal. 2014). Chaos functions create numbers
between 0 and 1. These numbers are predictable for a short
period and are then random for an extended period.
5.2 Hybrid binary algorithm
Using the proposed algorithm, we try to find a solution to the
workflow scheduling problem which is a discrete problem.
To enable handling discrete problems, some transfer func-
tions are used to produce binary solutions. These functions
are simple to implement are fast and low-cost (Gharehpasha
and Masdari 2020; Mirjalili and Lewis 2013). Four S-shaped
(S1–S4) and V-shaped (V1–V4) transfer functions are used
to transform the continuous proposed algorithm to binary
in this article. The proposed algorithm, like the non-binary
algorithm, updates the particle's position in the first step.
Thenew position is in the continuous space. In the second
step, these functions are used to convert the location to a
(22)
Threshold =1−(iteration∕max_iteration)
new value in discrete space according to Eqs.(23) and (24)
(Table5).
The proposed algorithm changes the particle position
according to Eq.(23) using a set of S-shaped functions.
In Eq.(23), X
d
i
in dth dimension is the ith particle’s posi-
tion, T(x) is the S-shaped function, and the current iteration
number is t. The search agent is not limited to the interval
[0, 1] by the V-shaped function. Equation(24) shows how
V-shaped transfer functions can be used to update the par-
ticle's position. In Eq.(24),
¬X
is supplement X. Figure3
shows the flowchart of the algorithm.
The proposed algorithm stores the various non-dominated
solutions in an archive. However, the archive is only used
to save non-dominated solutions in this case. As a result,
it is regarded as an inputparameter in the proposed algo-
rithm.The archive is modified in two steps: first, after the
algorithm's initial population, which only happens once, and
second, during the algorithm's primary iterative process.
This code is generated using the NSGAII non-dominated
sorting with the operator of diversity preserving (Kishor
etal. 2016). The archived solutions and the current swarm
are combined into one population, and each solution is given
a rank. Rank 1 and 2 are for the best solutions, and the sec-
ond-best solutions, and so on.
As a result, different fronts of solutions are created, and
all solutions in one front are non-dominated by the other but
are dominated by solutions of a lower rank. Solutions are
archived in order of rank. If there is no space in the archive
for all of the solutions of a rank, the rank's crowding distance
is calculated to force the necessary number of solutions into
the archive. The archive update algorithm indicates in Fig.4.
(23)
X
d
i(t+1)=
{
1if rand(0,1)<T(ΔX
d
i(t+1)
)
0otherwise
(24)
X
d
i(t+1)=
{
¬X
d
i(t)if rand(0,1)<T(ΔX
d
i(t+1)
)
Xd
i
(t)otherwise
Table 4 Chaotic maps
No. Name Function
1 Iterative
Vb+1
=sin
(
C
𝜋
∕V
b),
C = 0.7
2 Logistic
Vb+1=CVb(1−Vb)
, C = 4
3 Sine
Vb+1
=(C∕4)sin
(
𝜋V
b)
,C=
4
4 Singer
V
b
+
1=𝜇(7.86Vb−23.31V
2
b
+28.75V
3
b
−13.3V
4
b)
,
𝜇
= 1.07
5 Sinusoidal
Vb+1
=CV
2
b
sin(𝜋V
b)
Table 5 V-shaped and S-shaped transfer functions
S-shaped
family
Transfer function V-shaped
family
Transfer function
S1
T(x)=1∕(1+e−2x)
V1
T
(x)=
erf
(
𝜋∕2)x
S2
T(x)=1∕(1+e−x)
V2
T(x)=|tanh(x)|
S3
T(x)=
1
∕(
1
+e(
−x
2
))
V3
T
(x)=
�
�
�
x∕
√
1+x2
�
�
�
S4
T(x)=
1
∕(
1
+e(
−x
3
))
V4
T
(x)=
|
|
|
|
2
𝜋
arctan
(
𝜋
2x
)|
|
|
|
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
Scientific workflow scheduling inmulti‑cloud computing using ahybrid multi‑objective…
1 3
Fig. 3 The flowchart of the
HGSOA-GOA algorithm
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
A.Mohammadzadeh, M.Masdari
1 3
5.3 Selecting fromPareto front
This section aims to introduce a method for locating a knee
point in the Pareto front (Liang etal. 2018). In this method,
the core idea is to determine a knee point of the distances of
all solutions in the non-dominated front to the extreme line.
In Fig.5, an example is given to demonstrate this method.
The extreme line will be determined by two extreme points
according to Eq.(25) (point 1 and point 6, which point 1
have the largest value in the first objective and point 6 having
the largest value in the second objective function).
In the knee point method, only solutions in the convex
knee regions are of importance for minimization problems.
As a result, the distance measurecan be demonstratedas fol-
lows in Eq.(26). This distance can easily be applied to opti-
mization problems with more than two targets, in which case
the extreme line becomes a hyperplane (Zhang etal. 2014).
6 Workow scheduling architecture
This section presents the architecture of the scheduling
scheme. Figure6 indicates the abstracted model of our
scheduling approach. In this scheme, the first step is for the
cloud user to create a workflow framework. In the second
step, the multi-objective scheduling approach is designed
with four metrics. Finally, workflow tasks will be assigned
to the correct cloud platforms and VM types. Every cloud
provider has a task queue, and the workflow architecture
determines how these tasks are processed. For example,
since cloud users have access to an infinite number of VM
resources, parallel tasks in the queue will often be completed
at the same time, while sequence tasks are always operated
according to sequences. In this multi-cloud scheme, it is
assumed that there are several cloud providers, each with
its set of VMs.
(25)
Ax +By +C=0
(26)
distance
=
Ax +By +C
∕
A2+B2ifAx +By +C<
0
−
Ax +By +C
∕
A2+B2
Merge the current swarm and the archive into one population
Sort the population by non-dominated sorting techniques
If ( |Pareto front| > |archive| )
Compute crowding distance for every solution of Pareto front
Select a solution with a lower crowding distancefirst
End If
Fig. 4 Archive updating algorithm
Fig. 5 Determining the knee point in the inline method
Fig. 6 Proposed workflow scheduling architecture for multi-cloud environments
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
Scientific workflow scheduling inmulti‑cloud computing using ahybrid multi‑objective…
1 3
7 Simulation andresults
This section describes the workflows, simulation environ-
ment, and performance criteria applied in the simulation
process. We have evaluated the results of the HGSOA-
GOA and the SPEA2 algorithm on a variety of scientific
workflows. The SPEA2 algorithm is chosen because it is
more efficient than other multi-objective algorithms, such
as PEAS and NSGAII (Khalili and Babamir 2017; Zhou
etal. 2019). This scheme applies the Workflowsim and the
Cloudsim simulators (Chen and Deelman 2012) conducting
the required experiments.
7.1 Workflows
In this paper, we have used LIGO, Cybershake, Montage,
and Epigenomics scientific workflows for evaluation. These
workflows are achieved from the Pegasus website along with
information such as the volume of transmitted data, task exe-
cution time, task dependencies (Adhikari etal. 2020; Deel-
man etal. 2015; Liu etal. 2015; Pasdar etal. 2020; Saeedi
etal. 2020). To analyze the effect of workflow size on the
efficiency of the algorithm, three different workflow sizes are
chosen: small 50 tasks, medium 100 tasks, and large 1000
tasks. Figure7 depicts a graph of these workflows (Mas-
dari etal. 2016). There are two different types of workflow
scheduling: balanced and unbalanced (Fard etal. 2012; Yu
etal. 2007). Cybershake and Montage are unbalanced, LIGO
and Epigenomics are balanced. The unbalanced workflow
is more difficult to manage, with several parallel activities
involving numerous resources, but a balanced workflow has
several pipelines.
7.2 Simulation environment
To introduce algorithms and model workflow, the Work-
flowsim simulator was used. It's used to simulate a com-
puter with a Core i7 CPU and a 2.4GHz processing speed,
and 8GB RAM. A data center simulation environment with
the information shown in Table6 is given. Figure8 depicts
data center components such as the infrastructure, etc. Green
computing is a type of cloud environment that is discussed in
this article. Table7 displays the SPEA2 and proposed algo-
rithm parameters (Yu etal. 2007). The jMetal package was
used in the Cloudsim environment to implement the SPEA2
algorithm (Durillo and Nebro 2011). The SPEA2 algorithm
Fig. 7 Scientific workflows in a non-cyclic graph
Table 6 Parameters of the
virtual machine Virtual machine
number
Million instruction
per second
Number of
CPU
Ram (GB) Storage (GB) Band-
width
(GB/s)
1–250 1500 2 1 15 2
251–500 1500 2 1 15 2
501–750 2000 2 2 25 2
751–1000 2500 4 2 25 1
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
A.Mohammadzadeh, M.Masdari
1 3
is a new version of the SPEA. This algorithm has been
reported to perform well in searching and contains important
advantages such as density estimation, fine-grained fitness
assignment strategy, archiving of individuals with good fit-
ness. This paper compared some metrics of output obtained
by the presented algorithm and the SPEA2. To assess the
quality of Pareto fronts constructed by multi-objective algo-
rithms, we used a variety of efficiency evaluation criteria.
Most of the results were in favor of the presented algorithm.
7.3 Efficiency metrics
The various efficiency performance metrics are presented in
this section to determine the validity of Pareto fronts gener-
ated by multi-objective algorithms. A Pareto front should be
precise and well-distributed in ideal situations (Okabe etal.
2003). Someperformance metrics were used to measure the
Pareto fronts generated by the algorithms. In the following,
we will examine these performance criteria.
7.3.1 Inverted generational distance
Inverted generational distance is a performance criterion that
showsan algorithm's convergence andaccuracy. In Eq.(27),
nt is the number of real Pareto front solutions, and
di
is the
Euclidean distance between the ith true Pareto front solution
and the nearest perfect ideal Pareto front solution. This met-
ric's low values indicate that the algorithm is more consistent
and convergent.
7.3.2 Coverage ratio
The coverage ratio is used to analyze a list of solutions of
the optimizer algorithm. In Eq.(28), dominate(P, Q) is
the total number of P answers which can dominate set Q's
answers if P and Q are different sets of the Pareto optimal
(27)
IGD
=
�∑
nt
i=1(di)2
nt
in the problem space. The fact that this equation is equal to
1 implies that all P solutions take precedence over Q solu-
tions. This criterion's proximity to 0 or 1 denotes low or
high quality.
7.3.3 Maximum spread
The efficiency of the distance between boundary solutions is
indicated by the maximum distribution. S is the collection of
Pareto optimal solutions, f
i
m
is the value of the ith solution's
objective function on mth objective function, and M is the
objective function's maximum number in Eq.29. At bound-
ary points, high values have a lot of coverage.
7.3.4 Spacing
The level of deviation in the Pareto optimal collection is
indicated by the spacing. di is the real diversity between the
ith solution of the ideal set of S and other answers,
d
is di's
mean, M is the targets number, and fm(si) is the value of the
ith solution's in mth objective function. The lower value of
this metric, the more efficient it will be.
7.4 Evaluation results
The HGSOA-GOA algorithm and the SPEA2 have been
implemented on several scientific workflows to improve four
different metrics: makespan, energy, throughput, and cost.
These experiments are conducted on the small, medium, and
large-sized workflows and the algorithms are executed 10,
50, and 100 times. The results of performance criteria on
various workflows were indicated in Table8.
Table3 shows that the proposed algorithm outperforms
the other algorithm in all iterations. The results of IGD
indicate that superior convergence exists and the proposed
algorithm outperforms the SPEA2 algorithm. The number of
solutions of the presented algorithm's set that can resolve the
solutions of set SPEA2 is more than the SPEA2 algorithm,
according to the results of the coverage ratio. According
to the results of the maximum spread criterion, one may
(28)
Dominate(P,Q)=|qj∈Q;∃pi∈P∶pi>qj|∕|Q|
(29)
MS
=
M
m=1
(max
i=1toSfi
m−min
i=1toSfi
m)
2
,
s
k
∈S and s
k
≠s
i
(30)
SP
=
1
S
−1
S
i=1
(di−d)2,di=minM
m=1
fm
si
−fm
sk
,
s
k
∈S ands
k
≠s
i
Fig. 8 Data and host center setup
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
Scientific workflow scheduling inmulti‑cloud computing using ahybrid multi‑objective…
1 3
conclude that the presented algorithm contains a greater
number of boundary points. In spacing metric lower values
indicate dominance. These metric values, which display the
variety of solutions, show that the proposed algorithm is
superior in different sizes and iterations in Table8.
The comparison results of the algorithms on various cri-
teria are shown in Figs.9, 10, 11 and 12. The criteria for this
comparison are cost, makespan, throughput, and energy. The
presented algorithm and the SPEA2 are compared in this
section. The results are obtained on four workflows of dif-
ferent sizes. According to the experiments, we conclude that
the results of the presented algorithm on unbalanced work-
flows are better than the results of the SPEA2 algorithm.
On Montage and Cybershake workflows in different sizes
and number of repetitions, the results of makespan, cost,
5000
5500
6000
6500
Proposed SPEA2
Makespan
Montage 1000
0
1000
2000
3000
4000
ProposedSPEA2
Makespan
Montage 100
0
1000
2000
3000
4000
5000
6000
ProposedSPEA2
Makespan
Montage 50
0
1000
2000
3000
4000
5000
Proposed SPEA2
Cost
Montage 1000
0
100
200
300
400
ProposedSPEA2
Cost
Montage 100
0
50
100
150
200
ProposedSPEA2
Cost
Montage 50
0
1000
2000
3000
Proposed SPEA2
Energy
Montage 1000
0
500
1000
1500
ProposedSPEA2
Energy
Montage 100
0
200
400
600
800
1000
ProposedSPEA2
Energy
Montage 50
0
200
400
600
800
Proposed SPEA2
Throughput
Montage 1000
0
20
40
60
80
ProposedSPEA2
Throughput
Montage 100
0
20
40
60
ProposedSPEA2
Throughput
Montage 50
Runs :10 Runs :50Runs :100 Runs :10 Runs :50 Runs :100Runs :10Runs :50Runs :100
Runs :10 Runs :50Runs :100 Runs :10 Runs :50 Runs :100Runs :10Runs :50Runs :100
Runs :10 Runs :50Runs :100 Runs :10 Runs :50 Runs :100Runs :10Runs :50Runs :100
Runs :10 Runs :50Runs :100 Runs :10 Runs :50 Runs :100Runs :10Runs :50Runs :100
Fig. 9 Results of Montage workflow
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
A.Mohammadzadeh, M.Masdari
1 3
0
5000
10000
15000
ProposedSPEA2
Makespan
Cybershake 1000
0
1000
2000
3000
4000
5000
6000
ProposedSPEA2
Makespan
Cybershake 100
0
200
400
600
800
ProposedSPEA2
Makespan
Cybershake 50
0
2000
4000
6000
8000
ProposedSPEA2
Cost
Cybershake 1000
0
200
400
600
800
ProposedSPEA2
Cost
Cybershake 100
0
100
200
300
400
ProposedSPEA2
Cost
Cybershake 50
26000
28000
30000
32000
34000
36000
ProposedSPEA2
Energy
Cybershake 1000
0
1000
2000
3000
4000
5000
ProposedSPEA2
Energy
Cybershake 100
0
2000
4000
6000
8000
10000
12000
ProposedSPEA2
Energy
Cybershake 50
360
380
400
420
440
460
ProposedSPEA2
Throughput
Cybershake 1000
54
56
58
60
62
64
ProposedSPEA2
Throughput
Cybershake 100
0
10
20
30
40
50
ProposedSPEA2
Throughput
Cybershake 50
Runs :10 Runs :50Runs :100 Runs :10 Runs :50 Runs :100Runs :10Runs :50 Runs :100
Runs :10 Runs :50Runs :100 Runs :10 Runs :50 Runs :100Runs :10Runs :50 Runs :100
Runs :10 Runs :50Runs :100 Runs :10 Runs :50 Runs :100Runs :10Runs :50 Runs :100
Runs :10 Runs :50Runs :100 Runs :10 Runs :50 Runs :100Runs :10Runs :50 Runs :100
Fig. 10 Results of Cybershake workflow
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
Scientific workflow scheduling inmulti‑cloud computing using ahybrid multi‑objective…
1 3
0
50000
100000
150000
200000
ProposedSPEA2
Makespan
LIGO 1000
0
5000
10000
15000
20000
ProposedSPEA2
Makespan
LIGO 100
14500
15000
15500
16000
Proposed SPEA2
Makespan
LIGO 50
28000
30000
32000
34000
36000
38000
ProposedSPEA2
Cost
LIGO 1000
2600
2800
3000
3200
3400
3600
ProposedSPEA2
Cost
LIGO 100
1560
1570
1580
1590
1600
1610
1620
Proposed SPEA2
Cost
LIGO 50
0
50000
100000
150000
200000
250000
300000
ProposedSPEA2
Energy
LIGO 1000
11500
12000
12500
13000
13500
ProposedSPEA2
Energy
LIGO 100
9000
9500
10000
10500
11000
11500
12000
Proposed SPEA2
Energy
LIGO 50
580
600
620
640
660
680
Proposed SPEA2
Throughput
LIGO 1000
0
20
40
60
80
ProposedSPEA2
Throughput
LIGO 100
0
10
20
30
40
50
Proposed SPEA2
Throughput
LIGO 50
Runs :10Runs :50Runs :100 Runs :10Runs :50Runs :100 Runs :10Runs :50Runs :100
Runs :10Runs :50Runs :100 Runs :10Runs :50Runs :100 Runs :1 0Runs :50Runs :100
Runs :10Runs :50Runs :100 Runs :10Runs :50Runs :100 Runs :1 0Runs :50Runs :100
Runs :10Runs :50Runs :100 Runs :10Runs :50Runs :100 Runs :1 0Runs :50Runs :100
Fig. 11 Results of LIGO workflow
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
A.Mohammadzadeh, M.Masdari
1 3
0
1000000
2000000
3000000
4000000
5000000
Proposed SPEA2
Makespan
Epigenomics 997
0
100000
200000
300000
400000
ProposedSPEA2
Makespan
Epigenomics 100
0
5000
10000
15000
20000
25000
Proposed SPEA2
Makespan
Epigenomics 47
Runs :10 Runs :50Runs :100 Runs :10 Runs :50 Runs :100Runs :10Runs :50 Runs :100
Runs :10 Runs :50Runs :100 Runs :10 Runs :50 Runs :100Runs :10Runs :50 Runs :100
Runs :10 Runs :50Runs :100 Runs :10 Runs :50 Runs :100Runs :10Runs :50 Runs :100
Runs :10 Runs :50Runs :100 Runs :10 Runs :50 Runs :100Runs :10Runs :50 Runs :100
1100000
1150000
1200000
1250000
1300000
1350000
1400000
Proposed SPEA2
Cost
Epigenomics 997
0
50000
100000
150000
200000
ProposedSPEA2
Cost
Epigenomics 100
0
1000
2000
3000
4000
5000
6000
Proposed SPEA2
Cost
Epigenomics 47
0
1000000
2000000
3000000
4000000
5000000
6000000
Proposed SPEA2
Energy
Epigenomics 997
180000
200000
220000
240000
260000
ProposedSPEA2
Energy
Epigenomics 100
0
10000
20000
30000
40000
50000
Proposed SPEA2
Energy
Epigenomics 47
560
570
580
590
600
610
620
630
Proposed SPEA2
Throughput
Epigenomics 997
0
10
20
30
40
50
60
ProposedSPEA2
Throughput
Epigenomics 100
0
5
10
15
20
25
30
Proposed SPEA2
Throughput
Epigenomics 47
Fig. 12 Results of Epigenomics workflow
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
Scientific workflow scheduling inmulti‑cloud computing using ahybrid multi‑objective…
1 3
energy, and throughput criteria are in favor of the presented
algorithm. These results can be seen in Figs.9 and 10.
The outcomes of the algorithms on balanced workflows
are close to each other. On these workflows, as shown in
Figs.11 and 12, we have similar results for both algorithms.
According to the experimental results, we conclude that the
improved hybrid algorithm performs better than the SPEA2
on more complex problems. The paper attempted to improve
the scheduling problem with an improved algorithm since
most of the scheduling provided does not get the absolute
best results in all scenarios.
7.5 Runtime comparison
This sectionentails the proposed and SPEA2 algorithms in
terms of execution time. Table9 shows the average execu-
tion time of the algorithms over ten iterations. The proposed
algorithm has a small increase in runtime, according to the
findings. The increase in execution time is due to the code
complexity, which was anticipated. The time complexity
was not determined in this experiment because minimizing
complexity is not one of the measurement objectives (Anwar
and Deng 2018; Gupta etal. 2020; Mirjalili 2015; Mirjalili
etal. 2017).
8 Conclusions andfuture work
This paper proposes a workflow scheduling algorithm for
heterogeneous multi-cloud computing environments. For
this purpose, a hybrid optimization algorithm, denoted as
HGSOA-GOA, is presented by combining the SOA and
GOA algorithms. Afterward, the HGSOA-GOA is applied
to schedule scientific workflows on the VMs of several avail-
able cloud computing data centers. To indicate the efficiency
of the proposed scheduling method several experiments have
been conducted on the scientific workflows with different
sizes on the Workflowsim and Cloudsim simulators. The
achieved results are compared with the results of the SPEA2
algorithm and it is shown that the presented algorithm out-
performs SPEA2 in terms of various metrics.
Table 7 Parameters of the algorithm
Parameter HGSOA-GOA SPEA2
Population size 40 40
Archive size 10 10
Max. iteration 10 –
Max. generation – 100
Mutation probability – 0.5
Crossover probability – 0.9
Table 8 Results of performance criterions
Workflow size IGD Coverage ratio Maximum spread Spacing
Workflow: Montage, VMs: 1000, Runs: 10
Small HGSOA-GOA: 0.3670 C (HGSOA-GOA, SPEA2): 0.30 PROPOSED: 0.2091 PROPOSED: 0.0001
SPEA2: 0.4256 C (SPEA2, HGSOA-GOA): 0.20 SPEA2: 0.0482 SPEA2: 0.0023
Medium HGSOA-GOA: 0.3092 C (HGSOA-GOA, SPEA2): 0.30 HGSOA-GOA: 0.3127 HGSOA-GOA: 0.0012
SPEA2: 0.4190 C (SPEA2, HGSOA-GOA): 0.30 SPEA2: 0.3029 SPEA2: 0.0032
Large HGSOA-GOA: 0.2011 C (HGSOA-GOA, SPEA2): 0.20 HGSOA-GOA: 0.6746 HGSOA-GOA: 0.0041
SPEA2: 0.2187 C (SPEA2, HGSOA-GOA): 0.10 SPEA2: 0.4352 SPEA2: 0.0063
Workflow: Montage, VMs: 1000, Runs: 50
Small HGSOA-GOA: 0.6710 C (HGSOA-GOA, SPEA2): 0.42 HGSOA-GOA: 0.1081 HGSOA-GOA: 0.0001
SPEA2: 3.0143 C (SPEA2, HGSOA-GOA): 0.31 SPEA2: 0.0439 SPEA2: 0.0054
Medium HGSOA-GOA: 0.0098 C (HGSOA-GOA, SPEA2): 0.30 HGSOA-GOA: 0.1982 HGSOA-GOA: 0.0021
SPEA2: 2.7610 C (SPEA2, HGSOA-GOA): 0.20 SPEA2: 0.0187 SPEA2: 0.0034
Large HGSOA-GOA: 1.1459 C (HGSOA-GOA, SPEA2): 0.30 HGSOA-GOA: 0.9556 HGSOA-GOA: 0.0010
SPEA2: 2.3109 C (SPEA2, HGSOA-GOA): 0.12 SPEA2: 0.0919 SPEA2: 0.0031
Workflow: Montage, VMs: 1000, Runs: 100
Small HGSOA-GOA: 0.0100 C (HGSOA-GOA, SPEA2): 0.42 HGSOA-GOA: 0.2182 HGSOA-GOA: 0.0056
SPEA2: 0.1321 C (SPEA2, HGSOA-GOA): 0.34 SPEA2: 0.1864 SPEA2: 0.0081
Medium HGSOA-GOA: 0.0192 C (HGSOA-GOA, SPEA2): 0.32 HGSOA-GOA: 0.3780 HGSOA-GOA: 0.0033
SPEA2: 0.1340 C (SPEA2, HGSOA-GOA): 0.21 SPEA2: 0.3460 SPEA2: 0.0062
Large HGSOA-GOA: 0.1029 C (HGSOA-GOA, SPEA2): 0.48 HGSOA-GOA: 0.3892 HGSOA-GOA: 0.0023
SPEA2: 0.1102 C (SPEA2, HGSOA-GOA): 0.13 SPEA2: 0.1381 SPEA2: 0.0055
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
A.Mohammadzadeh, M.Masdari
1 3
Table 8 (continued)
Workflow size IGD Coverage ratio Maximum spread Spacing
Workflow: Cybershake, VMs: 1000, Runs: 10
Small HGSOA-GOA: 0.3201 C (HGSOA-GOA, SPEA2): 0.32 HGSOA-GOA: 1.5041 HGSOA-GOA: 0.0021
SPEA2: 0.8192 C (SPEA2, HGSOA-GOA): 0.11 SPEA2: 1.4872 SPEA2: 0.0083
Medium HGSOA-GOA: 0.3992 C (HGSOA-GOA, SPEA2): 0.22 HGSOA-GOA: 2.2011 HGSOA-GOA: 0.0011
SPEA2: 0.8672 C (SPEA2, HGSOA-GOA): 0.01 SPEA2: 2.1872 SPEA2: 0.0016
Large HGSOA-GOA: 0.4092 C (HGSOA-GOA, SPEA2): 0.30 HGSOA-GOA: 4.1120 HGSOA-GOA: 0.0017
SPEA2: 0.7521 C (SPEA2, HGSOA-GOA): 0.24 SPEA2: 3.1083 SPEA2: 0.0059
Workflow: Cybershake, VMs: 1000, Runs: 50
Small HGSOA-GOA: 0.1881 C (HGSOA-GOA, SPEA2): 0.30 HGSOA-GOA: 3.1101 HGSOA-GOA: 0.0024
SPEA2: 0.1902 C (SPEA2, HGSOA-GOA): 0.20 SPEA2: 2.9843 SPEA2: 0.0219
Medium HGSOA-GOA: 0.1178 C (HGSOA-GOA, SPEA2): 0.30 HGSOA-GOA: 3.8104 HGSOA-GOA: 0.0088
SPEA2: 0.1845 C (SPEA2, HGSOA-GOA): 0.20 SPEA2: 2.7648 SPEA2: 0.0986
Large HGSOA-GOA: 0.1901 C (HGSOA-GOA, SPEA2): 0.31 HGSOA-GOA: 4.3123 HGSOA-GOA: 0.0107
SPEA2: 0.1985 C (SPEA2, HGSOA-GOA): 0.24 SPEA2: 3.0364 SPEA2: 0.0562
Workflow: Cybershake, VMs: 1000, Runs: 100
Small HGSOA-GOA: 0.1109 C (HGSOA-GOA, SPEA2): 0.24 HGSOA-GOA: 2.9096 HGSOA-GOA: 0.0100
SPEA2: 0.1983 C (SPEA2, HGSOA-GOA): 0.02 SPEA2: 2.5627 SPEA2: 0.0513
Medium HGSOA-GOA: 0.1100 C (HGSOA-GOA, SPEA2): 0.39 HGSOA-GOA: 3.6890 HGSOA-GOA: 0.0143
SPEA2: 0.1392 C (SPEA2, HGSOA-GOA): 0.01 SPEA2: 2.5425 SPEA2: 0.0564
Large HGSOA-GOA: 0.1347 C (HGSOA-GOA, SPEA2): 0.20 HGSOA-GOA: 5.1240 HGSOA-GOA: 0.0272
SPEA2: 0.1736 C (SPEA2, HGSOA-GOA): 0.05 SPEA2: 4.1093 SPEA2: 0.0782
Workflow: LIGO, VMs: 1000, Runs: 10
Small HGSOA-GOA: 2.1902 C (HGSOA-GOA, SPEA2): 0.41 HGSOA-GOA: 5.6734 HGSOA-GOA: 0.0267
SPEA2: 3.9027 C (SPEA2, HGSOA-GOA): 0.11 SPEA2: 4.1783 SPEA2: 1.1298
Medium HGSOA-GOA: 2.3084 C (HGSOA-GOA, SPEA2): 0.50 HGSOA-GOA: 6.9327 HGSOA-GOA: 0.0938
SPEA2: 5.9283 C (SPEA2, HGSOA-GOA): 0.30 SPEA2: 4.9896 SPEA2: 1.2546
Large HGSOA-GOA: 2.8930 C (HGSOA-GOA, SPEA2): 0.81 HGSOA-GOA: 12.9879 HGSOA-GOA: 0. 7989
SPEA2: 3.0947 C (SPEA2, HGSOA-GOA): 0.60 SPEA2: 8.8474 SPEA2: 1.2395
Workflow: LIGO, VMs: 1000, Runs: 50
Small HGSOA-GOA::2.0911 C (HGSOA-GOA, SPEA2): 0.40 HGSOA-GOA: 8.0409 HGSOA-GOA: 0.2341
SPEA2: 2.9745 C (SPEA2, HGSOA-GOA): 0.11 SPEA2: 7.8346 SPEA2: 1.1093
Medium HGSOA-GOA: 2.0649 C (HGSOA-GOA, SPEA2): 0.30 HGSOA-GOA: 9.1432 HGSOA-GOA: 0.3240
SPEA2: 2.0835 C (SPEA2, HGSOA-GOA): 0.27 SPEA2: 7.6470 SPEA2: 1.9874
Large HGSOA-GOA: 2.8796 C (HGSOA-GOA, SPEA2): 0.33 HGSOA-GOA:8.2310 HGSOA-GOA: 0.1092
SPEA2: 5.1298 C (SPEA2, HGSOA-GOA): 0.38 SPEA2: 7.6375 SPEA2: 1.1124
Workflow: LIGO, VMs: 1000, Runs: 100
Small HGSOA-GOA: 2.0981 C (HGSOA-GOA, SPEA2): 0.20 HGSOA-GOA: 8.9097 HGSOA-GOA: 0.5209
SPEA2: 5.7383 C (SPEA2, HGSOA-GOA): 0.12 SPEA2: 3.9839 SPEA2: 0.6787
Medium HGSOA-GOA: 3.7676 C (HGSOA-GOA, SPEA2): 0.12 HGSOA-GOA: 7.9872 HGSOA-GOA: 0.4254
SPEA2: 4.8928 C (SPEA2, HGSOA-GOA): 0.04 SPEA2: 2.2562 SPEA2: 0.5637
Large HGSOA-GOA: 2.5630 C (HGSOA-GOA, SPEA2): 0.10 HGSOA-GOA: 9.0317 HGSOA-GOA: 0.7340
SPEA2: 3.7836 C (SPEA2, HGSOA-GOA): 0.04 SPEA2: 1.5161 SPEA2: 1.8653
Workflow: Epigenomics, VMs: 1000, Runs: 10
Small HGSOA-GOA: 0.8603 C (HGSOA-GOA, SPEA2): 0.30 HGSOA-GOA: 8.0892 HGSOA-GOA: 0.0763
SPEA2: 1.7862 C (SPEA2, HGSOA-GOA): 0.20 SPEA2: 7.8927 SPEA2: 1.8347
Medium HGSOA-GOA: 0.7656 C (HGSOA-GOA, SPEA2): 0.20 HGSOA-GOA: 11.0982 HGSOA-GOA: 0.7654
SPEA2: 1.8270 C (SPEA2, HGSOA-GOA): 0.07 SPEA2: 9.7367 SPEA2: 1.6736
Large HGSOA-GOA: 0.0429 C (HGSOA-GOA, SPEA2): 0.32 HGSOA-GOA: 12.0976 HGSOA-GOA:0.1423
SPEA2: 0.2110 C (SPEA2, HGSOA-GOA): 0.02 SPEA2: 8.5360 SPEA2: 2.6748
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
Scientific workflow scheduling inmulti‑cloud computing using ahybrid multi‑objective…
1 3
Table 9 Results of statistical of the average execution time
Workflow HGSOA-GOA SPEA2
Montage, size: Large, VMs: 1000 7.1092 2.2309
Cybershake, size: Large, VMs: 1000 6.2067 3.9575
LIGO, size: Large, VMs: 1000 6.0012 3.9104
Epigenomics, size: Large, VMs: 1000 4.6092 2.8760
Workflow size IGD Coverage ratio Maximum spread Spacing
Workflow: Epigenomics, VMs: 1000, Runs: 50
Small HGSOA-GOA: 0.0013 C (HGSOA-GOA, SPEA2): 0.45 HGSOA-GOA: 10.0984 HGSOA-GOA: 0.0876
SPEA2: 0.0091 C (SPEA2, HGSOA-GOA): 0.30 SPEA2: 9.4320 SPEA2: 1.7831
Medium HGSOA-GOA: 0.0567 C (HGSOA-GOA, SPEA2): 0.31 HGSOA-GOA: 11.0878 HGSOA-GOA: 2.0236
SPEA2: 0.2908 C (SPEA2, HGSOA-GOA): 0.21 SPEA2: 9.6541 SPEA2: 2.6725
Large HGSOA-GOA: 0.1768 C (HGSOA-GOA, SPEA2): 0.23 HGSOA-GOA: 11.2323 HGSOA-GOA: 2.3327
SPEA2: 0.2781 C (SPEA2, HGSOA-GOA): 0.01 SPEA2: 10.6754 SPEA2: 2.9830
Workflow: Epigenomics, VMs: 1000, Runs: 100
Small HGSOA-GOA: 0.1098 C (HGSOA-GOA, SPEA2): 0.30 HGSOA-GOA: 9.2205 HGSOA-GOA: 0.5234
SPEA2: 0.2893 C (SPEA2, HGSOA-GOA): 0.20 SPEA2: 3.3414 SPEA2: 0.7351
Medium HGSOA-GOA: 0.1440 C (HGSOA-GOA, SPEA2): 0.31 HGSOA-GOA: 9.3087 HGSOA-GOA: 0.4346
SPEA2: 0.2409 C (SPEA2, HGSOA-GOA): 0.03 SPEA2: 8.9038 SPEA2: 0.8801
Large HGSOA-GOA: 0.0873 C (HGSOA-GOA, SPEA2): 0.29 HGSOA-GOA: 9.8134 HGSOA-GOA: 0.1680
SPEA2: 0.1728 C (SPEA2, HGSOA-GOA): 0.10 SPEA2: 9.1290 SPEA2: 0.4352
Table 8 (continued)
References
Adhikari M, Amgoth T, Srirama SN (2020) Multi-objective scheduling
strategy for scientific workflows in cloud environment: a Firefly-
based approach. Appl Soft Comput 93:106411
Anwar N, Deng H (2018) A hybrid metaheuristic for multi-objective
scientific workflow scheduling in a cloud environment. Appl Sci
8:538
Bansal S, Bansal RK, Arora K (2020) Energy-cognizant scheduling for
preference-oriented fixed-priority real-time tasks. J Syst Archit
108:101743
Camelo M, Donoso Y, Castro H (2010) A multi-objective performance
evaluation in grid task scheduling using evolutionary algorithms.
Appl Math Inform 100–105
Cerrone C, Cerulli R, Golden B (2017) Carousel greedy: a generalized
greedy algorithm with applications in optimization. Comput Oper
Res 85:97–112
Chen W, Deelman E (2012) Workflowsim: a toolkit for simulating sci-
entific workflows in distributed environments. In: 2012 IEEE 8th
international conference on E-Science, 2012. IEEE, pp 1–8
Chen J, Du C, Xie F, Lin B (2018) Scheduling non-preemptive tasks
with strict periods in multi-core real-time systems. J Syst Archit
90:72–84
Choudhary A, Gupta I, Singh V, Jana PK (2018) A GSA based hybrid
algorithm for bi-objective workflow scheduling in cloud comput-
ing. Future Gener Comput Syst 83:14–26
Coutinho RDC, Drummond LM, Frota Y, de Oliveira D (2015) Opti-
mizing virtual machine allocation for parallel scientific workflows
in federated clouds. Future Gener Comput Syst 46:51–68
Deb K, Pratap A, Agarwal S, Meyarivan T (2002) A fast and elit-
ist multiobjective genetic algorithm: NSGA-II. IEEE Trans Evol
Comput 6:182–197
Deelman E etal (2015) Pegasus, a workflow management system for
science automation. Future Gener Comput Syst 46:17–35
Dhiman G, Kumar V (2019) Seagull optimization algorithm: theory
and its applications for large-scale industrial engineering prob-
lems. Knowl-Based Syst 165:169–196
Durillo JJ, Nebro AJ (2011) jMetal: a Java framework for multi-objec-
tive optimization. Adv Eng Softw 42:760–771
Durillo JJ, Prodan R, Barbosa JG (2015) Pareto tradeoff scheduling of
workflows on federated commercial clouds. Simul Model Pract
Theory 58:95–111
Falzon G, Li M (2012) Enhancing genetic algorithms for dependent
job scheduling in grid computing environments. J Supercomput
62:290–314
Fard HM, Prodan R, Barrionuevo JJD, Fahringer T (2012) A multi-
objective approach for workflow scheduling in heterogeneous
environments. In: 2012 12th IEEE/ACM international symposium
on cluster, cloud and grid computing (ccgrid 2012), 2012. IEEE,
pp 300–309
Gharehpasha S, Masdari M (2020) A discrete chaotic multi-objective
SCA-ALO optimization algorithm for an optimal virtual machine
placement in cloud data center. J Ambient Intell Humanized Com-
put 1–17
Gupta I, Kumar MS, Jana PK (2016a) Compute-intensive workflow
scheduling in multi-cloud environment. In: 2016 international
conference on advances in computing, communications and infor-
matics (ICACCI), 2016. IEEE, pp 315–321
Gupta I, Kumar MS, Jana PK (2016b) Transfer time-aware workflow
scheduling for multi-cloud environment. In: 2016 international
conference on computing, communication and automation
(ICCCA), 2016. IEEE, pp 732–737
Gupta S, Deep K, Mirjalili S, Kim JH (2020) A modified sine cosine
algorithm with novel transition parameter and mutation operator
for global optimization. Expert Syst Appl 154:113395
Han P, Du C, Chen J, Ling F, Du X (2021) Cost and makespan schedul-
ing of workflows in clouds using list multiobjective optimization
technique. J Syst Archit 112:101837
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
A.Mohammadzadeh, M.Masdari
1 3
Hu H, Li Z, Hu H, Chen J, Ge J, Li C, Chang V (2018) Multi-objective
scheduling for scientific workflow in multicloud environment. J
Netw Comput Appl 114:108–122
Jia H, Lang C, Oliva D, Song W, Peng X (2019a) Hybrid grasshopper
optimization algorithm and differential evolution for multilevel
satellite image segmentation. Remote Sens 11:1134
Jia H, Xing Z, Song W (2019b) A new hybrid seagull optimization
algorithm for feature selection. IEEE Access 7:49614–49631
Jiang J, Lin Y, Xie G, Fu L, Yang J (2017) Time and energy optimiza-
tion algorithms for the static scheduling of multiple workflows
in heterogeneous computing system. J Grid Comput 15:435–456
Jiang X, Guan N, Long X, Tang Y, He Q (2020) Real-time scheduling
of parallel tasks with tight deadlines. J Syst Archit 108:101742
Khalili A, Babamir SM (2017) Optimal scheduling workflows in cloud
computing environment using Pareto-based Grey Wolf Optimizer
concurrency and computation. Pract Exp 29:e4044
Kishor A, Singh PK, Prakash J (2016) NSABC: non-dominated sort-
ing based multi-objective artificial bee colony algorithm and its
application in data clustering. Neurocomputing 216:514–533
Knowles J, Corne D (1999) The pareto archived evolution strategy: A
new baseline algorithm for pareto multiobjective optimisation. In:
Congress on evolutionary computation (CEC99), 1999. pp 98–105
Liang J, Zhu X, Yue C, Li Z, Qu B-Y (2018) Performance analysis on
knee point selection methods for multi-objective sparse optimiza-
tion problems. In: 2018 IEEE congress on evolutionary computa-
tion (CEC), 2018. IEEE, pp 1–8
Liu C, Yang S (2011) A heuristic serial schedule algorithm for unre-
lated parallel machine scheduling with precedence constraints.
JSW 6:1146–1153
Liu J, Pacitti E, Valduriez P, Mattoso M (2015) A survey of data-inten-
sive scientific workflow management. J Grid Comput 13:457–493
Luo J, Chen H, Xu Y, Huang H, Zhao X (2018) An improved grass-
hopper optimization algorithm with application to financial stress
prediction. Appl Math Model 64:654–668
Ma T, Pang S, Zhang W, Hao S (2019) Virtual machine based on
genetic algorithm used in time and power oriented cloud com-
puting task scheduling. Intell Autom Soft Comput 25:605–613
Mahajan P, Dhir K, Chhabra A (2017) Workflow scheduling in cloud
using nature inspired optimization algorithms. Int J Adv Res Com-
put Sci 8
Maheshwari K, Jung E-S, Meng J, Morozov V, Vishwanath V, Ket-
timuthu R (2016) Workflow performance improvement using
model-based scheduling over multiple clusters and clouds. Future
Gener Comput Syst 54:206–218
Masdari M, Zangakani M (2020) Green cloud computing using pro-
active virtual machine placement: challenges and issues. J Grid
Comput 18:727–759
Masdari M, Zangakani M (2020) Efficient task and workflow schedul-
ing in inter-cloud environments: challenges and opportunities. J
Supercomput 76:499–535
Masdari M, ValiKardan S, Shahi Z, Azar SI (2016) Towards workflow
scheduling in cloud computing: a comprehensive analysis. J Netw
Comput Appl 66:64–82
Masdari M, Salehi F, Jalali M, Bidaki M (2017) A survey of PSO-based
scheduling algorithms in cloud computing. J Netw Syst Manag
25:122–158
Mateescu G, Gentzsch W, Ribbens CJ (2011) Hybrid computing—
where HPC meets grid and cloud computing. Future Gener Com-
put Syst 27:440–453
Meena J, Kumar M, Vardhan M (2016) Cost effective genetic algorithm
for workflow scheduling in cloud under deadline constraint. IEEE
Access 4:5065–5082
Mezmaz M, Melab N, Kessaci Y, Lee YC, Talbi E-G, Zomaya AY,
Tuyttens D (2011) A parallel bi-objective hybrid metaheuristic for
energy-aware scheduling for cloud computing systems. J Parallel
Distrib Comput 71:1497–1508
Mirjalili S (2015) The ant lion optimizer. Adv Eng Softw 83:80–98
Mirjalili S, Lewis A (2013) S-shaped versus V-shaped transfer func-
tions for binary particle swarm optimization. Swarm Evol Comput
9:1–14
Mirjalili S, Jangir P, Mirjalili SZ, Saremi S, Trivedi IN (2017) Optimi-
zation of problems with multiple objectives using the multi-verse
optimization algorithm. Knowl-Based Syst 134:50–71
Mohammadzadeh A, Masdari M, Gharehchopogh FS, Jafarian A
(2021) A hybrid multi-objective metaheuristic optimization
algorithm for scientific workflow scheduling. Cluster Comput
24:1479–1503
Mohammadzadeh A, Masdari M, Gharehchopogh FS, Jafarian A
(2020) Improved chaotic binary grey wolf optimization algorithm
for workflow scheduling in green cloud computing. Evol Intel
1–29
Mohammadzadeh A, Masdari M, Gharehchopogh FS (2021) Energy
and cost-aware workflow scheduling in cloud computing data
centers using a multi-objective optimization algorithm. J Netw
Syst Manag 29:1–34
Möller M, Tuot C, Sintek M (2008) A scientific workflow platform
for generic and scalable object recognition on medical images.
In: Bildverarbeitung für die Medizin 2008. Springer, pp 267–271
Mukherjee A, Mukherjee V (2016) Chaotic krill herd algorithm for
optimal reactive power dispatch considering FACTS devices.
Appl Soft Comput 44:163–190
Okabe T, Jin Y, Sendhoff B (2003) A critical survey of performance
indices for multi-objective optimisation. In: The 2003 congress
on evolutionary computation, 2003. CEC'03, 2003. IEEE, pp
878–885
Panda SK, Jana PK (2015) Efficient task scheduling algorithms
for heterogeneous multi-cloud environment. J Supercomput
71:1505–1533
Pasdar A, Lee YC, Almi’ani K (2020) Hybrid scheduling for scientific
workflows on hybrid clouds. Comput Netw 181:107438
Saeedi S, Khorsand R, Bidgoli SG, Ramezanpour M (2020) Improved
many-objective particle swarm optimization algorithm for scien-
tific workflow scheduling in cloud computing. Comput Ind Eng
147:106649
Saremi S, Mirjalili S, Lewis A (2014) Biogeography-based optimisa-
tion with chaos. Neural Comput Appl 25:1077–1097
Saremi S, Mirjalili S, Lewis A (2017) Grasshopper optimisation algo-
rithm: theory and application. Adv Eng Softw 105:30–47
Schwiegelshohn U (2010) Job scheduling strategies for parallel pro-
cessing. Springer
Sharma D, Shukla PK (2019) Line-prioritized environmental selection
and normalization scheme for many-objective optimization using
reference-lines-based framework. Swarm Evol Comput 51:100592
Singh V, Gupta I, Jana PK (2020) An energy efficient algorithm for
workflow scheduling in IAAS cloud. J Grid Comput 18:357–376
Thaman J, Singh M (2017) Green cloud environment by using robust
planning algorithm. Egypt Inform J 18:205–214
Tirkolaee EB, Goli A, Faridnia A, Soltani M, Weber G-W (2020)
Multi-objective optimization for the reliable pollution-routing
problem with cross-dock selection using Pareto-based algorithms.
J Clean Prod 276:122927
Verma A, Kaushal S (2017) A hybrid multi-objective Particle Swarm
Optimization for scientific workflow scheduling. Parallel Comput
62:1–19
Wu T, Gu H, Zhou J, Wei T, Liu X, Chen M (2018) Soft error-aware
energy-efficient task scheduling for workflow applications in
DVFS-enabled cloud. J Syst Archit 84:12–27
Xu Y, Li K, Hu J, Li K (2014) A genetic algorithm for task schedul-
ing on heterogeneous computing systems using multiple priority
queues. Inf Sci 270:255–287
Yu J, Kirley M, Buyya R (2007) Multi-objective planning for work-
flow execution on grids. In: Proceedings of the 8th IEEE/ACM
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
Scientific workflow scheduling inmulti‑cloud computing using ahybrid multi‑objective…
1 3
international conference on grid computing, 2007. IEEE Com-
puter Society, pp 10–17
Zhang X, Tian Y, Jin Y (2014) A knee point-driven evolutionary algo-
rithm for many-objective optimization. IEEE Trans Evol Comput
19:761–776
Zhou J, Wang T, Cong P, Lu P, Wei T, Chen M (2019) Cost and makes-
pan-aware workflow scheduling in hybrid clouds. J Syst Archit
100:101631
Zitzler E, Laumanns M, Thiele L (2001) SPEA2: improving the
strength Pareto evolutionary algorithm TIK-report 103
Publisher's Note Springer Nature remains neutral with regard to
jurisdictional claims in published maps and institutional affiliations.
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
1.
2.
3.
4.
5.
6.
Terms and Conditions
Springer Nature journal content, brought to you courtesy of Springer Nature Customer Service Center GmbH (“Springer Nature”).
Springer Nature supports a reasonable amount of sharing of research papers by authors, subscribers and authorised users (“Users”), for small-
scale personal, non-commercial use provided that all copyright, trade and service marks and other proprietary notices are maintained. By
accessing, sharing, receiving or otherwise using the Springer Nature journal content you agree to these terms of use (“Terms”). For these
purposes, Springer Nature considers academic use (by researchers and students) to be non-commercial.
These Terms are supplementary and will apply in addition to any applicable website terms and conditions, a relevant site licence or a personal
subscription. These Terms will prevail over any conflict or ambiguity with regards to the relevant terms, a site licence or a personal subscription
(to the extent of the conflict or ambiguity only). For Creative Commons-licensed articles, the terms of the Creative Commons license used will
apply.
We collect and use personal data to provide access to the Springer Nature journal content. We may also use these personal data internally within
ResearchGate and Springer Nature and as agreed share it, in an anonymised way, for purposes of tracking, analysis and reporting. We will not
otherwise disclose your personal data outside the ResearchGate or the Springer Nature group of companies unless we have your permission as
detailed in the Privacy Policy.
While Users may use the Springer Nature journal content for small scale, personal non-commercial use, it is important to note that Users may
not:
use such content for the purpose of providing other users with access on a regular or large scale basis or as a means to circumvent access
control;
use such content where to do so would be considered a criminal or statutory offence in any jurisdiction, or gives rise to civil liability, or is
otherwise unlawful;
falsely or misleadingly imply or suggest endorsement, approval , sponsorship, or association unless explicitly agreed to by Springer Nature in
writing;
use bots or other automated methods to access the content or redirect messages
override any security feature or exclusionary protocol; or
share the content in order to create substitute for Springer Nature products or services or a systematic database of Springer Nature journal
content.
In line with the restriction against commercial use, Springer Nature does not permit the creation of a product or service that creates revenue,
royalties, rent or income from our content or its inclusion as part of a paid for service or for other commercial gain. Springer Nature journal
content cannot be used for inter-library loans and librarians may not upload Springer Nature journal content on a large scale into their, or any
other, institutional repository.
These terms of use are reviewed regularly and may be amended at any time. Springer Nature is not obligated to publish any information or
content on this website and may remove it or features or functionality at our sole discretion, at any time with or without notice. Springer Nature
may revoke this licence to you at any time and remove access to any copies of the Springer Nature journal content which have been saved.
To the fullest extent permitted by law, Springer Nature makes no warranties, representations or guarantees to Users, either express or implied
with respect to the Springer nature journal content and all parties disclaim and waive any implied warranties or warranties imposed by law,
including merchantability or fitness for any particular purpose.
Please note that these rights do not automatically extend to content, data or other material published by Springer Nature that may be licensed
from third parties.
If you would like to use or distribute our Springer Nature journal content to a wider audience or on a regular basis or in any other manner not
expressly permitted by these Terms, please contact Springer Nature at
onlineservice@springernature.com
A preview of this full-text is provided by Springer Nature.
Content available from Journal of Ambient Intelligence and Humanized Computing
This content is subject to copyright. Terms and conditions apply.