Indonesian
J
our
nal
of
Electrical
Engineering
and
Computer
Science
V
ol.
40,
No.
2,
No
v
ember
2025,
pp.
871
∼
882
ISSN:
2502-4752,
DOI:
10.11591/ijeecs.v40.i2.pp871-882
❒
871
Fuzzy
multi-objecti
v
e
ener
gy
optimization
of
w
orko
w
scheduling
A
y
oub
Chehla,
Mohammed
Gabli
Department
of
Computer
Science,
F
aculty
of
science
(FSO),
Uni
v
ersity
Mohammed
First
(UMF),
Oujda,
Morocco
Article
Inf
o
Article
history:
Recei
v
ed
Feb
2,
2025
Re
vised
Jul
18,
2025
Accepted
Oct
14,
2025
K
eyw
ords:
Dynamic
multi-objecti
v
e
Ener
gy
ef
cienc
y
Fuzzy
logic
Metaheuristic
algorithms
Optimization
W
orko
w
scheduling
ABSTRA
CT
T
ask
scheduling
is
a
k
e
y
and
challenging
problem
in
cloud
computing
systems,
requiring
decisions
re
g
arding
resource
allocat
ion
to
tasks
to
optimize
a
perfor
-
mance
criterion.
This
problem
has
required
researchers
and
de
v
elopers
to
o
v
er
-
come
signicant
challenges.
Our
goal
in
this
study
aims
to
minimize
both
the
mak
espan
and
ener
gy
consumption
in
cloud
computing
systems
by
ef
ciently
scheduling
w
orko
ws.
T
o
achie
v
e
this,
we
rst
proposed
a
dynamic
multi-
objecti
v
e
model,
which
w
as
then
simplied
into
a
single-objecti
v
e
problem
using
dynamic
weights.
Then,
we
proposed
a
dynamic
genetic
algorithm
(DGA)
and
a
dynamic
particle
sw
arm
optimization
algorithm
(DPSO)
to
address
the
prob-
lem.
T
o
deal
with
the
situation
where
the
mak
espan
is
uncertain
and
not
e
xact,
we
present
a
fuzzy
model,
treating
each
v
alue
as
a
fuzzy
number
and
we
utilize
both
possibility
and
necessity
metrics.
The
results
are
contrasted
with
the
Het-
erogeneous
earliest
nish
time
(HEFT)
algorithm
and
Considerably
lo
wered
the
total
ener
gy
consumption,
especially
for
DGA.
Corresponding
A
uthor:
Chehla
A
youb
Department
of
Computer
Science,
F
aculty
of
science
(FSO),
Uni
v
ersity
Mohammed
First
(UMF)
Oujda,
Morocco
Email:
ayoub
.chehla@ump.ac.ma
1.
INTR
ODUCTION
T
ask
scheduling
in
cloud
computing
settings
has
become
a
subject
of
signicant
academic
intere
st
o
wing
to
the
e
xponential
gro
wth
in
data
v
olumes
and
the
increasing
demand
for
reduced
e
x
ecution
times.
This
e
xplosi
v
e
gro
wth
of
data
traf
c
has
forced
researchers
and
de
v
elopers
to
propose
numerous
approaches
aimed
at
handling
the
comple
xities
of
task
scheduling.
These
methods
aim
to
optimize
objecti
v
es
including
mak
espan,
ener
gy
consumption,
or
cost.
Nonetheless,
the
essential
comple
xity
and
uctuating
dynamic
nature
of
cloud
en
vironments
present
substantial
obstacles
to
traditional
scheduli
ng
algorithms.
In
cloud
computing,
one
of
the
primary
challenges
is
scheduling
w
orko
ws
ef
ciently
while
preserving
the
task
dependencies
within
the
w
orko
w
structure.
T
ask
scheduling
in
cloud
refe
rs
to
the
process
of
assigning
tasks
to
a
v
ailable
resources
and
managing
their
e
x
ecution
to
achie
v
e
optimal
p
e
rformance.
This
process
guarantees
the
allocation
of
tasks
to
the
most
suitable
virtual
machines
(VMs)
or
serv
ers,
depending
on
f
actors
lik
e
resource
a
v
ailability
,
computational
capabilities,
and
task
requirements.
The
second
challenge
is
minimizing
metrics
such
as
mak
espan
and
ener
gy
consumption.
Figure
1
concisely
illustrates
the
generation
and
processing
steps
in
v
olv
ed
in
scientic
w
orko
w
applications.
Indeed,
multiple
applications,
originating
from
users
,
submit
comple
x
reques
ts
requiring
multi-
tasking.
These
requests
are
modeled
as
w
orko
ws.
Once
generated,
the
w
orko
w
is
sent
to
the
cloud,
where
it
is
processed
in
a
distrib
uted
manner
.
Processing
is
handled
by
dif
ferent
service
centers
(SCs),
each
hosting
multiple
VMs.
J
ournal
homepage:
http://ijeecs.iaescor
e
.com
Evaluation Warning : The document was created with Spire.PDF for Python.
872
❒
ISSN:
2502-4752
Figure
1.
The
scheduling
of
w
orko
ws
in
cloud
computing
Cloud
computing
denotes
the
use
of
computing
resources
distrib
uted
across
cloud
serv
ers.
Each
cloud
serv
er
(CS)
hosts
a
set
of
m
VMs,
then,
C
S
=
{
V
1
,
V
2
,
.
.
.
,
V
m
}
.
The
VMs
operating
on
a
serv
er
can
be
heterogeneous,
v
arying
in
processing
po
wer
,
memory
capacity
,
and
storage
space.
Additionally
,
each
cloud
serv
er
includes
a
resource
manager
responsible
for
storing
information
about
the
a
v
ailable
VMs,
and
creating,
allocating,
and
deleting
VMs
as
needed.
T
o
represent
the
w
orko
w
model
we
adopt
a
directed
ac
yclic
graph
(D
A
G)
denoted
as
G
=
<
T
;
E
>
,
where
T
=
{
T
1
,
.
.
.
,
T
n
}
signies
the
collection
of
n
tas
ks
in
the
w
orko
w
.
The
set
E
=
{
c
i,j
|
1
≤
i
≤
n,
1
≤
j
≤
n
}
describes
the
communication
requirements
between
task
T
i
and
T
j
,
and
if
task
T
i
precedes
task
T
j
,
then,
task
T
j
cannot
start
e
x
ecution
until
task
T
i
has
completed
its
e
x
ecution.
A
communication
cost
is
associated
with
data
transfer
between
tasks.
Ho
we
v
er
if
tw
o
tasks
T
i
and
T
j
are
af
fected
to
the
identical
machine,
the
communication
cost
becomes
zero
because
the
data
remains
on
the
same
machine.
In
the
considered
architecture,
the
time
e
x
ecution
of
a
task
primarily
relies
on
runtime
and
commu-
nication
time
(CT).
The
runtime
(R
T)
containing
the
e
x
ecution
times
of
dif
ferent
tasks
on
v
arious
VMs,
and
depends
on
the
size
of
a
specic
task
T
i
.
The
R
T
between
task
T
i
and
VM
V
j
can
be
e
xpressed
by
(1).
Accord-
ingly
,
the
CT
is
determined
by
the
data
size
and
the
bandwidth
of
the
communication
channel,
as
represented
by
(1).
R
T
(
i,j
)
=
t
size
V
j
(1)
C
T
(
i,j
)
=
(
0
if
V
i
=
V
j
D
i,j
B
if
V
i
̸
=
V
j
,
(2)
where
D
(
i,j
)
species
the
v
olume
of
data
e
xchanged
from
task
T
i
to
T
j
,
and
B
indicates
the
communication
channel
bandwidth
between
tw
o
cloud
serv
ers.
Indonesian
J
Elec
Eng
&
Comp
Sci,
V
ol.
40,
No.
2,
No
v
ember
2025:
871–882
Evaluation Warning : The document was created with Spire.PDF for Python.
Indonesian
J
Elec
Eng
&
Comp
Sci
ISSN:
2502-4752
❒
873
Let
E
S
T
(
T
i
,
V
j
)
be
the
starting
time
and
E
F
T
(
T
i
,
V
j
)
be
nishing
time
where
T
i
is
task
assigned
to
V
j
.
W
e
dened
E
S
T
(
T
i
,
V
j
)
as
follo
ws
[1]:
E
S
T
(
T
i
,
V
j
)
=
max
a
v
ail
[
j
]
,
max
T
m
∈
prd
(
T
i
)
(
E
F
T
(
T
m
,
V
j
)
+
C
T
m,i
)
(3)
where
avail[j]
indicates
the
moment
when
VM
V
j
become
a
v
ailable.
If
another
task
is
st
ill
running
on
this
machine,
T
i
will
need
to
w
ait
until
V
j
is
free
before
starting.
This
f
actor
ensures
that
T
i
does
not
be
gin
until
the
machine
is
ready
.
And,
prd(T
i
)
represents
the
collection
of
predecessor
tasks
(T
asks
that
must
be
completed
before
launching
T
i
).
If
T
i
has
multiple
dependencies,
the
EFT
of
the
predecessor
task
that
nishes
last
is
tak
en.
On
the
other
hand,
E
F
T
(
T
i
,
V
j
)
can
be
dened
by
[1]:
E
F
T
(
T
i
,
V
j
)
=
w
i,j
+
EST
(
T
i
,
V
j
)
(4)
where
w
i,j
Corresponds
to
the
w
orkload
(e
x
ecution
time)
for
task
T
i
on
VM
V
j
.
MAKESP
AN
.
In
w
orko
w
the
mak
espan
is
dened
as
the
nish
time
of
the
last
task
(
T
exit
)
.
It
is
indicated
by
(5).
M
=
max
{
E
F
T
(
T
e
xit
,
V
)
}
(5)
ENERGY
.
The
system
sa
v
es
ener
gy
via
dynamic
v
oltage
and
frequenc
y
scaling.
Com
plementary
metal
oxide
semiconductor
(CMOS)
use
dynamic
and
static
ener
gy
.
The
latter
is
ignored
since
dynamic
po
wer
dissipation
is
the
most
e
xpensi
v
e
and
time-consuming
[1].
The
total
ener
gy
consumption
is
dened
as
follo
ws
(6).
E
total
=
K
×
(
m
X
j
=1
V
2
j
×
f
×
t
j
+
V
2
l
ow
est
j
×
f
l
ow
est
j
×
t
idl
e
)
(6)
where
K
is
a
dynamic
po
wer
constant.
V
j
is
the
v
oltage
pro
vided
for
the
j
th
VM
and
f
is
the
frequenc
y
at
the
V
j
of
same
VM.
t
j
is
the
time
for
which
task
is
running
on
VM
v
j
.
V
l
ow
est
j
and
f
l
ow
est
j
are,
respecti
v
ely
,
the
lo
west
v
oltage
and
lo
west
frequenc
y
of
the
VM
v
j
.
Finally
,
t
idl
e
represents
the
idle
time
of
v
j
.
Se
v
eral
studies
ha
v
e
addressed
this
issue,
and
researchers
ha
v
e
de
v
eloped
v
arious
techniques
to
op
t
i-
mize
task
e
x
ecution
by
parallelizing
sub-tasks
while
maintaining
their
dependencies.
A
re
vie
w
of
the
literature
on
w
orko
w
scheduli
ng
highlights
tw
o
main
cate
gories
of
approaches
based
on
the
number
of
objecti
v
es
the
y
address:
mono-objecti
v
e
and
multi-objecti
v
e
w
orko
w
scheduling.
Mono-objecti
v
e
w
orko
w
scheduling
focuses
on
optimizing
one
metric,
such
as
mak
espan,
ener
gy
consumption,
or
cost.
F
or
instance,
Ding
et
al.
[2]
the
authors
optimize
ener
gy
consumption
in
cloud
computing
using
dynamic
task
scheduling
based
on
Q-learning.
W
ang
and
Zuo
[3]
to
reduce
the
total
time
needed
for
completing
tasks
in
w
orko
w
scheduling,
inte
grated
PSO
with
idle
time
slot-a
w
are
rules.
Another
notable
contrib
ution,
in
[4]
F
arag
ardi
et
al.
proposes
an
algorithm
called
Gr
eedy
Resource
Pro
visioning
and
modied
HEFT
,
which
is
designed
to
reduce
the
mak
espan
of
a
specic
w
orko
w
subject
to
a
b
udget
constraint.
W
u
et
al.
[5],
minimized
mak
espan
by
accounting
for
both
computational
and
communication
resources.
Additionally
,
Lu
et
al.
[6]
utilized
a
method
multi-hierarch
y
PSO
to
reduce
total
monetary
cost
by
applying
an
on-demand
pricing
structure
for
heterogeneous
cloud
resources.
Mo
ving
to
multi-objecti
v
e
w
orko
w
scheduling,
researchers
ha
v
e
focus
ed
on
optimizing
tw
o
or
three
metrics
simultaneously
,
lik
e
cost
and
mak
espan.
F
or
instance,
Zhu
et
al.
[7]
a
multi-objecti
v
e
e
v
olutionary
opti-
mization
method
w
as
de
v
eloped
aimed
at
reduci
ng
both
mak
espan
and
cost.
T
ang
[8]
introduced
a
ne
w
method
kno
wn
as
f
ault-tolerant,
cost-ef
cient
w
orko
w
scheduling,
which
reduces
the
costs
of
e
x
ecuting
applications
and
mak
espan
while
maintaining
reliability
.
Chen
et
al.
[9]
introduced
a
ne
w
method
called
multiobjecti
v
e
ant
colon
y
system
approach
,
which
focuses
on
minimizing
the
w
orko
w
e
x
ecution
time
and
cost
by
utilizing
co-e
v
olutionary
multiple
populations
for
multiple
objecti
v
es.
Furthermore,
Iranmanesh
and
Naji
[10]
presents
a
h
ybrid
GA
to
reduce
both
the
cost
and
mak
espan,
inte
grating
enhanced
genetic
operators,
adapti
v
e
tness
functions,
and
a
load
balancing
routine.
Additional
research,
such
as
Jena
[11],
applied
nested
PSO
to
decrease
tw
o
main
objecti
v
es
lik
e
the
mak
espan
and
ener
gy
consumption,
though
it
o
v
erlook
ed
resource
utilization.
Similarly
,
K
umar
et
al.
[12]
the
authors
proposed
a
ne
w
approach
to
minimize
the
mak
espan
and
ener
gy
con-
sumption
systems
using
PSO.
V
erma
and
Kaushal
[13]
presented
a
h
ybrid
multi-objecti
v
e
PSO
approach
for
Fuzzy
multi-objective
workow
sc
heduling
optimization
(Chehla
A
youb)
Evaluation Warning : The document was created with Spire.PDF for Python.
874
❒
ISSN:
2502-4752
the
ef
cient
scheduling
of
scientic
w
orko
ws,
maximizing
resource
utilization
while
minimizing
e
x
ecution
time
and
costs.
Zhou
et
al.
[14]
used
fuzzy
dominance
sort
with
HEFT
algorithm
to
e
xplore
the
collaborati
v
e
optimization
of
mak
espan
and
cost.
Durillo
and
Prodan
[15],
researchers
combined
HEFT
with
other
meta-
heuristic
techniques
lik
e
PSO
to
impro
v
e
results.
Hao
et
al.
[16]
proposed
a
three-objecti
v
e
D
A
G
problem
to
minimize
mak
espan,
ener
gy
cost,
and
maximize
re
v
enue
for
cloud
scheduling
syst
ems.
Similarly
,
Y
uan
et
al.
[17]
introduced
the
IMEAD
algorithm
to
balance
re
v
enue
and
ener
gy
costs
ef
fecti
v
ely
.
Another
study
,
detailed
in
[18],
presented
a
multi-objecti
v
e
GA
(MOGA)
that
considers
conicting
stak
eholder
interests
while
optimizing
mak
espan,
b
udget,
and
ener
gy
ef
cienc
y
.
T
o
optimize
resource
utilization,
ener
gy
consumption,
and
cost
while
enhancing
security
,
thus
beneting
both
users
and
service
pro
viders
[19].
Furthermore
in
[20],
Adhikari
et
al.
introduced
a
strate
gy
based
on
the
Firey
Algorithm
ai
med
at
tackling
se
v
eral
competing
goals,
such
as
w
orkload
allocation,
total
completi
o
n
time,
resource
usage,
and
dependability
.
Behera
and
Sobhanayak
[21]
presented
a
no
v
el
h
ybrid
algorithm
that
mer
ges
GA
and
gre
y
w
olf
optimization
to
reduce
three
k
e
y
perfor
-
mance
indicators
lik
e
mak
espan,
ener
gy
consumption,
and
computational
cost.
W
u
et
al.
[22]
authors
propose
a
multi-objecti
v
e
optimization
model
for
collaborati
v
e
task
scheduling
across
cloud,
edge,
and
end
de
vices.
It
focuses
on
reducing
task
delay
and
impro
ving
load
balancing
by
optimizing
serv
er
allocation,
service
de-
plo
yment,
caching,
and
resource
allocation.
Ab
ualig
ah
et
al.
[23],
introduced
an
impro
v
ed
syner
gistic
sw
arm
optimization
algorithm,
enhanced
with
the
Jaya
approach
to
minimize
mak
espan
and
impro
v
e
load
balancing.
Although
in
[24],
Zade
et
al.
introduced
an
modied
belug
a
whale
optimization
algorithm
that
incorporates
a
ring
topology
to
impro
v
e
task
scheduling
in
cloud
computing.
This
approach
aims
to
reduce
both
mak
espan
and
cost
by
boosting
solution
di
v
ersity
and
pre
v
enting
early
con
v
er
gence.
Our
goal
in
this
paper
is
to
identify
the
best
solution
to
the
task
scheduling
problem
to
decrease
tw
o
main
objecti
v
es:
the
mak
espan
and
ener
gy
consumption
in
the
cloud.
Our
problem
is
then
multi-objecti
v
e.
In
order
to
contrib
ute
to
the
impro
v
ement
of
e
xisting
literature,
we
addressed
tw
o
challenges:
(i)
The
rst
is
to
nd
a
w
ay
to
f
airly
opti
mize
each
criterion
of
the
objecti
v
e
function,
i.e.,
not
to
minimize
one
criterion
(mak
espan
or
ener
gy)
at
the
e
xpense
of
the
other
.
(ii)
The
second
is
to
consider
the
real
situation
where
the
mak
espan
v
aries
dynamically
due
to
se
v
eral
f
actors
and
remains
not
e
xact
b
ut
uncertain,
see
for
instance
[25]-[27].
T
o
meet
the
rst
challenge,
we
introduced
a
dynamic
multi-objecti
v
e
modeling
of
the
problem,
by
using
dynamic
and
automating
the
weight
selection
process,
see
the
ne
xt
section.
Then
we
de
v
eloped
tw
o
metaheuristics
to
solv
e
it
.
Concerning
the
second
challenge,
and
to
mak
e
our
model
more
realistic
compared
to
other
studies,
we
impro
v
ed
it
by
introducing
a
fuzzy
model
which
in
each
mak
espan
v
alue
is
dened
as
a
fuzzy
number
.
T
o
achie
v
e
this,
we
used
both
possibility
and
necessity
metrics.
Finally
,
we
compared
our
results
to
those
of
other
algorithms,
such
as
the
HEFT
algorithm
used
in
[1].
The
results
found
are
promising
and
sho
w
the
rob
ustness
of
our
approach.
The
primary
contrib
utions
of
this
paper
are
summarized
belo
w
.
−
A
dynamic
multi-objecti
v
e
model
w
as
proposed
of
the
problem
focusing
on
reducing
both
mak
espan
and
ener
gy
consumption.
−
W
e
impro
v
ed
our
model
by
using
dynamic
we
ights
to
ensure
that
all
objecti
v
es
are
treated
equitably
and
to
automate
the
choice
of
weights.
−
W
e
introduced
a
fuzzy
model
considering
the
uncertain
aspect
of
the
mak
espan.
This
mak
es
our
model
more
realistic.
−
W
e
proposed
tw
o
dynamic
meta-heuristic
algorithms
to
identify
a
solution
to
the
proposed
problem
and
we
compared
its
by
HEFT
algorithm.
The
paper
is
or
g
anized
into
the
follo
wing
sections.
In
section
2,
we
introduced
a
ne
w
model
by
reformulating
the
e
xisting
one
and
considering
the
dynamic
and
uncertain
aspect
of
our
problem.
In
section
3,
we
presented
our
method
and
described
the
tw
o
algorithms
de
v
eloped
to
address
this
challenge.
In
section
4,
we
presented
and
discussed
the
obtained
numerical
results
and
compared
them
with
the
HEFT
algorithm.
Section
5
concludes
this
paper
.
2.
THE
PR
OPOSED
MODEL
Based
on
the
abo
v
e
analyses,
this
research
aims
to
identify
a
compromise
solution
that
simultaneously
minimizes
both
the
mak
espan
and
ener
gy
consumption.
So,
we
introduce
a
binary
decision
v
ariable
X
i,j
between
the
task
T
i
and
the
VM
V
j
as
follo
ws.
Indonesian
J
Elec
Eng
&
Comp
Sci,
V
ol.
40,
No.
2,
No
v
ember
2025:
871–882
Evaluation Warning : The document was created with Spire.PDF for Python.
Indonesian
J
Elec
Eng
&
Comp
Sci
ISSN:
2502-4752
❒
875
X
i,j
=
(
1
if
T
i
is
assigned
to
V
j
0
otherwise.
(7)
In
result,
we
ha
v
e
tw
o
objecti
v
es
to
achie
v
e,
and
hence
we
obtain
a
multi-objecti
v
e
problem
as
follo
ws.
Minimize
f
1
(
X
ij
)
=
min
M
Minimize
f
2
(
X
ij
)
=
min
E
total
(8)
It
is
unreasonable
to
vie
w
CT
as
precise
b
ut
uncertain
because
it
v
aries
due
to
se
v
eral
f
actors,
see
for
instance
[25]-[27].
T
o
address
this
issue,
we
present
a
fuzzy
model,which
in
each
communication
time
C
T
ij
is
dened
as
fuzzy
numbers
˜
C
T
ij
with
the
subsequent
membership
function:
µ
˜
C
T
ij
(
t
)
=
(
max
(0
,
1
−
C
T
ij
−
t
α
ij
)
if
t
<
=
C
T
ij
max
(0
,
1
−
t
−
C
T
ij
β
ij
)
if
t
>
C
T
ij
(9)
where
the
cons
tants
α
ij
and
β
ij
represent
the
left-side
and
right-side
spreads
of
fuzzy
numbers,
with
both
being
positi
v
e
v
alues.
The
corresponding
membership
function
µ
˜
C
T
ij
presented
in
Figure
2.
Figure
2.
Membership
function
of
˜
C
T
ij
In
this
st
ud
y
,
we
use
both
possibility
and
necessity
metrics.
T
o
determine
the
mak
espan
using
the
possibility
measure,
we
set
β
ij
=
0
for
each
task
i
and
j
.
T
o
accomplish
the
necessity
measure,
we
set
α
ij
=
0
for
each
task
i
and
j
.
F
or
the
process
of
defuzzication,
we
apply
the
center
of
gra
vity
method
which
in
v
olv
es
identifying
of
taking
the
abscissa
corresponding
to
the
center
of
gra
vity
of
the
membership
function.
After
this
ne
w
modeling,
the
multiobjecti
v
e
problem
in
2.
becomes:
Minimize
˜
f
1
(
X
ij
)
=
min
˜
M
Minimize
f
2
(
X
ij
)
=
min
E
total
(10)
we
con
v
ert
this
multi-objecti
v
e
problem
into
a
single-objecti
v
e
formulation
as
follo
ws.
Minimize
f
(
X
ij
)
=
Minimize
(
ω
1
×
˜
f
1
(
X
ij
)
+
ω
2
×
f
2
(
X
ij
))
(11)
Subject
to:
m
X
j
=1
X
ij
=
1
,
∀
i,
1
≤
i
≤
n
(12)
which
means
that
a
task
T
i
should
not
be
assigned
to
only
one
VM
V
j
.
ω
1
and
ω
2
are
positi
v
e
weights
satisfying
0
≤
ω
k
≤
1
,
k
=
1
,
2
,
and
ω
1
+
ω
2
=
1
.
The
choic
e
of
ω
1
and
ω
2
for
the
decision
mak
er
is
not
an
easy
.
Moreo
v
er
,
these
v
alues
should
be
chosen
in
such
a
w
ay
that
the
optimization
of
both
criteria
(
˜
f
1
and
f
2
)
is
f
air
.
T
o
do
this,
ω
1
and
ω
2
should
not
be
considered
constant,
b
ut
change
dynamically
in
each
iteration
(t)
of
the
algorithm
as
in
[28].
Fuzzy
multi-objective
workow
sc
heduling
optimization
(Chehla
A
youb)
Evaluation Warning : The document was created with Spire.PDF for Python.
876
❒
ISSN:
2502-4752
w
1
(
t
+
1)
=
f
2
(
X
t
)
˜
f
1
(
X
t
)
+
f
2
(
X
t
)
and
w
2
(
t
+
1)
=
˜
f
1
(
X
t
)
˜
f
1
(
X
t
)
+
f
2
(
X
t
)
(13)
where
t
is
an
iteration
of
the
used
algorithm.
Consequently
,
our
problem
becomes.
Minimize
f
(
X
ij
)
=
Minimize
(
ω
1
(
t
)
×
˜
f
1
(
X
ij
)
+
ω
2
(
t
)
×
f
2
(
X
ij
))
(14)
3.
METHOD
Let
n
and
m
correspond
to
the
total
number
of
tasks
and
VMs,
respecti
v
ely
.
T
o
model
our
problem
in
DGA
and
DPSO,
we
use
an
inte
ger
encoding
scheme
.
W
e
represented
each
solution
lik
e
an
v
ector
of
n
inte
gers,
where
each
element’
s
v
alue
ranges
from
0
to
m
.
F
or
instance,
in
Figure
3,
the
encoding
‘2021212011‘
indicates
that
task
T
0
is
assigned
to
V
M
2
,
T
1
is
assigned
to
V
M
0
,
and
we
ha
v
e
3
machines
(
V
M
0
,
V
M
1
,
and
V
M
2
)
.
Figure
3.
Example
of
solution
representation
3.1.
Dynamic
particle
swarm
optimization
(DPSO)
algorithm
The
DPSO
algorithm
comprises
S
particles,
where
each
particle’
s
position
corresponds
to
a
candidate
solution
within
the
search
space.
The
particles
update
their
states
based
on
the
equations
dened
in
(15)
and
(16),
respecti
v
ely
.
V
t
+1
i
=
(
ω
⊗
V
t
i
)
⊕
(
q
1
⊗
(
bestP
i
⊖
P
t
i
))
⊕
(
q
2
⊗
(
bestG
⊖
P
t
i
))
.
(15)
P
t
+1
i
=
P
t
i
⊕
V
t
+1
i
(16)
where
ω
represents
the
inertia
weight,
q
1
and
q
2
are
coef
ci
ent
numbers
selected
randomly
from
the
interv
al
[0
,
1]
,
during
each
iteration,
bestP
i
denotes
the
bes
t
solution
identied
by
the
particle
x
i
and
bestG
corresponds
to
the
best
solution
identied
by
all
particles.
Dene
f
(
x
)
=
ω
1
˜
f
1
(
x
)
+
ω
2
f
2
(
x
)
as
the
tness
function
to
be
optimized
and
S
corresponds
to
the
sw
arm
size.
The
main
procedures
of
the
proposed
DPSO
algorithm
are
presented
in
Algorithm
1.
T
o
apply
the
DPSO
algorithm
to
our
problem,
we
proceed
as
follo
ws.
−
Step
1:
(Initialize
particles)
Consider
n
tasks
and
m
VMs.
each
particle
in
the
population
is
encoded
as
a
v
ector
of
n
inte
gers,
where
each
element
in
the
v
ector
as
randomly
selected
from
de
set
{
0
,
·
·
·
,
m
}
.
A
population
refers
to
a
collection
of
solutions.
−
Step
2:
(Fitness
e
v
aluation)
The
objecti
v
e
function
v
alue
assigned
to
each
particle
is
computed
using
(14).
If
the
particle’
s
current
objecti
v
e
function
v
alue
is
more
ef
fecti
v
e
than
its
pre
vious
personal
best
(bestP),
the
actual
v
alue
is
assigned
as
the
ne
w
bestP
.
Then,
the
global
best
solution
(bestG)
is
determined
as
the
particle
with
the
highest
tness
across
the
entire
population.
−
Step
3:
(Update
v
elocity
and
position)
W
e
calculate
the
v
elocity
of
each
particle
using
in
(15).
F
ollo
wed
by
a
position
update
using
in
(16).
−
Step
4:
Dynamically
update
ω
1
and
ω
2
according
to
(13).
−
Step
5:
In
this
step,
we
nd
bestG.
Indonesian
J
Elec
Eng
&
Comp
Sci,
V
ol.
40,
No.
2,
No
v
ember
2025:
871–882
Evaluation Warning : The document was created with Spire.PDF for Python.
Indonesian
J
Elec
Eng
&
Comp
Sci
ISSN:
2502-4752
❒
877
Algorithm
1
DPSO
algorithm
Initialize
Sw
arm
parameters
and
S
.
Initialize
Positions
and
v
elocities
of
all
particles.
f
or
each
solution
i
do
Set
bestP
i
←
x
i
Ev
aluate
f
(
x
i
)
using
(14)
end
f
or
while
the
termination
criterion
is
not
met
do
f
or
1
<
i
<
S
do
Compute
v
elocity
of
the
particle
using
Eq.(16),
Compute
position
of
the
particle
using
Eq.
(15),
Ev
aluate
f
(
x
i
)
of
each
solution
i
if
f
(
x
i
)
is
more
ef
fecti
v
e
bestP
i
then
bestP
i
=
x
i
end
if
if
f
(
bestP
i
)
is
more
ef
fecti
v
e
than
f
(
bestG
)
then
bestG
=
bestP
i
end
if
end
f
or
Dynamically
update
ω
1
and
ω
2
according
to
2..
end
while
Return
the
best
solution
bestG.
3.2.
Dynamic
genetic
algorithm
(DGA)
The
DGA
is
a
metaheuristic
that
mimics
natural
e
v
olution.
It
w
orks
with
populations
composed
of
se
v
eral
solutions.
The
populat
ion
size
represents
the
total
number
of
chromosomes.
Each
chromosomes
is
referred
to
as
a
solution
(indi
vidual).
Each
chromosome
has
a
set
of
genes.
In
this
paper
,
we
de
v
eloped
a
DGA
as
illustrated
in
Algorithm
2.
Algorithm
2
DGA
Algorithm
Step
1:
Initialize
the
population
with
random
indi
viduals.
Step
2:
Repeat
for
a
x
ed
number
of
generations
a.
Ev
aluate
each
chromosome’
s
tness
in
the
population
using
(14).
b
.
Select
parents
for
reproduction
based
on
their
tness.
c.
Create
a
ne
w
generation
applying
crosso
v
er
and
mutation
operators
to
parents.
d.
dynamically
update
ω
1
and
ω
2
according
to
(13)
Step
3:
Select
the
best
indi
vidual
from
the
current
population
as
the
nal
solution.
T
o
apply
the
DGA
algorithm
to
our
problem,
we
proceed
as
follo
ws.
−
Codage:
we
used
the
representation
dened
in
section
3.
−
Initial
population:
Consider
n
tasks
and
m
VMs.
Each
chromosome
in
the
population
is
initialized
with
n
randomly
generated
genes,
in
which
each
gene
is
an
inte
ger
dra
wn
from
the
collection
{
0
,
...,
m
}
.
A
population
is
a
collection
of
solutions.
−
Selection:
W
e
use
in
this
operation
the
roulette
wheel
method.
−
Crosso
v
er:
A
single-point
crosso
v
er
is
applied
where
we
determine
randomly
the
crosso
v
er
position.
All
genes
located
after
this
point
are
sw
apped
between
the
tw
o
parent
chromosomes.
The
crosso
v
er
process
is
illustrated
in
Figure
4.
−
Mutation:
Once
the
gene
(digit)
selected
for
mutation,
its
v
alue
is
e
xchanged
with
a
number
randomly
selected
from
the
set
{
1
,
2
,
...,
m
}
.
The
process
of
mutation
operation
is
demonstrated
in
Figure
5.
−
W
eights:
W
e
dynamically
update
ω
1
and
ω
2
according
to
(13).
Fuzzy
multi-objective
workow
sc
heduling
optimization
(Chehla
A
youb)
Evaluation Warning : The document was created with Spire.PDF for Python.
878
❒
ISSN:
2502-4752
Figure
4.
The
crosso
v
er
mechanism
Figure
5.
The
mutation
mechanism
4.
RESUL
TS
AND
DISCUSSION
4.1.
Pr
oblem
data
This
part
measures
the
performance
of
our
algorithms
by
testing
them
utilizing
tw
o
distinct
problem
instances.
The
rst
one
contains
10
tasks
and
3
VMs.
The
second
one
contains
30
tasks
and
3
VMs.
The
tw
o
D
A
G
with
communication
costs
between
the
nodes
distrib
uted
across
three
VMs
are
presented
in
Figure
6
and
Figure
7,
respecti
v
ely
.
Thus,
Figure
6
on
the
left
presents
the
communication
requirements
between
tasks
T
i
and
T
j
.
F
or
e
xample,
the
v
alue
18
between
tasks
T
0
and
T
1
represents
the
quantity
of
data
to
be
sent
from
task
T
0
to
task
T
1
.
Figure
6
on
the
right
also
presents
the
computation
time
matrix
between
tasks
and
V
M
s
.
F
or
e
xample,
task
T
0
costs
14
ms
if
e
x
ecuted
on
VM
1
,
16
ms
if
e
x
ecuted
on
VM
2
,
and
9
ms
if
e
x
ecuted
on
VM
3
.
The
same
is
true
for
Figure
7
on
the
left
and
right,
b
ut
this
time
for
30
tasks
and
3
VMs.
Figure
6.
First
problem
instance:
D
A
G
with
10
tasks,
3
VMs
and
a
matrix
detailing
the
computation
times
for
each
task
on
the
dif
ferent
VMs
Indonesian
J
Elec
Eng
&
Comp
Sci,
V
ol.
40,
No.
2,
No
v
ember
2025:
871–882
Evaluation Warning : The document was created with Spire.PDF for Python.
Indonesian
J
Elec
Eng
&
Comp
Sci
ISSN:
2502-4752
❒
879
Figure
7.
Second
problem
instance:
D
A
G
with
30
tasks,
3
VMs
and
a
matrix
detailing
the
computation
times
for
each
task
on
the
dif
ferent
VMs
4.2.
Computational
r
esults
As
described
before,
we
de
v
eloped
tw
o
dynamic
meta-heuristic
algorithms
DPSO
and
DGA
to
solv
e
the
problem.
The
parameter
v
alues
of
DPSO
and
DGA
ha
v
e
been
set
as
sho
wn
in
T
ables
1
and
2,
respecti
v
ely
.
The
number
of
iterations
for
each
method
is
iter
max
=
500
for
the
rst
instance
and
iter
max
=
1
,
000
for
the
second
one.
The
population
size
is
psiz
e
=
30
for
the
rst
instance
and
psiz
e
=
50
for
the
second
one.
T
able
3
pro
vides
the
v
oltage
v
alues
and
corresponding
frequencies
for
each
VM
under
cons
ideration.
F
or
fuzzy
logic
we
decided
to
tak
e
α
ij
=
0
.
5
and
β
ij
=
0
.
2
for
i,
j
∈
{
0
,
1
,
·
·
·
,
n
}
.
T
able
1.
DPSO
parameters
P
arameters
V
alue
w
(
ω
max
−
((
ω
max
−
ω
min
)
∗
it
))
/it
max
q
1
,
q
2
Generated
at
random
Where
iter
max
refers
to
the
total
number
of
iterations,
it
indicates
the
current
iteration,
ω
max
rep-
resents
the
maximal
v
alue
of
of
the
par
ameter
ω
(
ω
max
=
0
.
9
)
and
ω
min
refers
to
the
minimal
v
alue
of
the
parameter
ω
(
ω
min
=
0
.
4
).
T
able
2.
DGA
parameters
P
arameters
V
alue
Description
P
cr
0.5
Crosso
v
er
operation
probability
P
mut
0.01
Mutati
on
operation
probability
T
able
3.
VM
frequenc
y
and
v
oltage
VM1
VM2
VM3
V
oltage
(V)
1.1
1.3
1.5
Frequenc
y
(GHz)
2.0
2.5
3.0
Lo
west
v
oltage
(V)
0.7
Lo
west
frequenc
y
(GHz)
0.1
Fuzzy
multi-objective
workow
sc
heduling
optimization
(Chehla
A
youb)
Evaluation Warning : The document was created with Spire.PDF for Python.
880
❒
ISSN:
2502-4752
W
e
measured
the
ef
cienc
y
of
our
approach
by
e
v
aluating
it
with
HEFT
algorithm,
which
is
widely
recognized
in
the
literature
(see
[1]).
The
implementation
of
all
algorithms
w
as
carried
out
using
the
Ja
v
a
programming
language.
The
algorithms
were
implemented
in
Ja
v
a
and
e
x
ecuted
on
a
system
featuring
an
Intel
Core
i
5
-
5200
U
processor
running
at
2
.
20
GHz
and
8
GB
of
RAM.
4.3.
Discussion
4.3.1.
Ev
aluation
of
our
rst
challenge
The
rst
challenge
focuses
on
reducing
the
mak
espan
and
minimizing
ener
gy
consumption
in
the
cloud,
simultaneously
and
equitably
.
In
T
able
4
we
presented
the
comparison
of
the
three
algorithms
HEFT
,
DPSO
an
DGA
for
each
instance
of
the
problem
without
using
the
fuzzy
logic
approach.
The
time
in
the
fourth
column
denotes
the
e
x
ecution
time
(in
ms)
of
each
algorithm
on
our
machine.
The
results
sho
w
that
our
tw
o
algorithms,
DPSO
and
DGA,
signicantly
outperform
HEFT
in
terms
of
ener
gy
consumption.
In
particular
,
DGA
stands
out
as
the
most
ef
cient,
consistently
reducing
ener
gy
consumption
across
all
tested
instances.
Although
HEFT
achie
v
es
a
sl
ightly
lo
wer
mak
espan,
the
dif
ference
is
minimal,
conrming
that
our
approach
of
fers
a
suitable
balance
between
e
x
ecution
performance
and
ener
gy
ef
cienc
y
.
4.3.2.
Ev
aluation
of
the
second
challenge
T
o
assess
the
usefulness
of
the
fuzzy
approach,
we
presented
the
results
(i)
considering
the
fuzzy
approach
and
(ii)
without
considering
the
fuzzy
approach.
Thus,
T
able
5
presented
the
comparison
of
DGA
performance
for
the
tw
o
instances
of
problem
with
and
without
using
the
fuzzy
logic
approach.
In
this
table,
we
denoted
by
Poss
DGA
the
result
by
DGA
when
we
used
possibility
measure
and
by
Nec
DGA
the
result
by
DGA
when
we
used
necessity
measure.
The
results
sho
wed
that
this
approach
is
suitable
for
making
a
more
realistic
decision.
Indeed,
in
the
second
case
for
instance,
unlik
e
the
approach
without
fuzzy
logic
(i.e.
DGA),
which
sets
the
mak
espan
at
321
and
the
ener
gy
consumption
at
2043
.
54
,
the
fuzzy
logic
approach
introduced
a
certain
e
xibility
.
It
pro
vided
a
range
of
v
alues:
the
mak
espan
v
aries
between
316
and
322
.
99
,
and
the
ener
gy
consumption
between
2043
.
54
and
2049
.
249
,
depending
on
whether
an
optimistic
or
pessimistic
perspecti
v
e
is
adopted
in
the
decision-making
process.
The
same
remarks
are
observ
ed
for
the
rst
instance.
As
a
result,
we
observ
e
that
our
DGA
algorithm
performed
better
in
addressing
this
scheduling
problem.
It
achie
v
ed
the
main
objecti
v
e
of
this
paper
,
namely
,
optimizing
ener
gy
ef
cienc
y
in
cloud
computing,
with
only
a
slight
de
gradation
of
the
secondary
objecti
v
e,
which
is
mak
espan.
Moreo
v
er
,
the
results
obtained
through
the
fuzzy
logic
approach
assisted
decision-mak
ers
in
reaching
more
rele
v
ant
and
realistic
decisions.
In
summary
,
our
w
ork
of
fered
tw
o
major
contrib
utions:
−
A
substantial
reduction
in
ener
gy
consumption
compared
to
traditional
approaches
such
as
HEFT
.
−
The
inte
gration
of
fuzzy
logic,
enabling
more
realistic
and
uncertainty-a
w
are
decision-making.
T
able
4.
Comparison
of
HEFT
,
DPSO,
and
DGA
performance
for
the
tw
o
instances
of
problem
Instance
Algorithm
Mak
espan
(ms)
Ener
gy
(J)
T
ime
(ms)
First
instance
HEFT
75
685
0.151
DPSO
88
.
0
657.48
4.43
DGA
88
.
0
657.48
5.832
Second
instance
HEFT
304
2293
.
36
0.291
DPSO
346
.
0
2161
.
20
4.187
DGA
321
2043.54
6.983
T
able
5.
Comparison
of
DGA
performance
for
the
tw
o
instances
of
problem
with
and
without
using
the
fuzzy
logic
approach
Instance
Algorithm
Mak
espan
(ms)
Ener
gy
(J)
T
ime
(ms)
First
instance
DGA
88
.
0
657.48
5.832
Poss
DGA
86
.
5
657.48
5.9
Nec
DGA
88
.
6
657.48
5.95
Second
instance
DGA
321
2043.54
6.983
Poss
DGA
316
.
0
2049
.
249
7.39
Nec
DGA
322
.
99
2043.54
7.983
Indonesian
J
Elec
Eng
&
Comp
Sci,
V
ol.
40,
No.
2,
No
v
ember
2025:
871–882
Evaluation Warning : The document was created with Spire.PDF for Python.