Professional Documents
Culture Documents
Introduction
II
services on the net, which limits the MILP methods to a certain extent. Recently, and with a view to addressing this issue, a new type of methods, namely
optimization methods have been proven to be more effective to solve the QCSC
problem. This kind of approaches can get near-optimal global solutions with a
reasonable response time, so, it has aroused the interest of academia in the past
few years. Various studies using optimization approaches have been proposed
to solve the QCSC problem, e.g. Particle Swarm Optimization (PSO) [2], Ant
Colony optimization (AC) [5], Genetic Algorithm (GA) [6]. . . etc.
In recent years, an evolutionary algorithm, the Imperialist Competitive Algorithm (ICA), has been put forward by Esmaeil and Lucas [7], which is inspired
by the sociopolitical process of imperialistic competition. It has proven to be
more effective to solve some academic and engineering optimization problems.
An overview is provided in [8]. Referring to the literature reviews, there are only
two works about the ICA for solving the QCSC problem proposed by A. Jula
et al in [9, 10]. In [9], a hybrid approach using ICA and an improved gravitational attraction search is presented to solve the QCSC problem, In the said
study only two QoS criteria are considered in the optimized objective function:
Execution time and Execution fee. In [10], a Classified Search Space Imperialist Competitive Algorithm (CSSICA) is proposed to tackle the QCSC problem.
Due to the huge search space of QCSCs problem, the cloud service repository is
classified into three categories using the PROCLUS clustering algorithm, which
is based on service time values of all provided single services. The clustering step
is extremely helpful in the ICA part of CSSICA insofar as it permits more appropriate solutions to be obtained for the QCSC problem. Compared with other
evolutionary algorithms, ICA has attracted the attention of many researchers in
the past few years, given that it has a superior performance in many applications
[8]. However, the classical ICA presents the population stagnation phenomena
caused by the imperialists absorption policy [11]. Moreover, it is developed to
resolve the continuous optimization problems, so, developing a new discrete version of ICA to solve the QCSC problem is our motivation in this study.
In this study, a new Discrete Imperialist Completive Algorithm (DICA) is
proposed to solve the QCSC problem through improving the global exploration
search of the original ICA and adjusting it to solve the QCSCs combinatorial
problem. First, the initial population is randomly generated and classified into
two classes: imperialists and countries. Next, to improve the global exploration
ability of our DICA, a novel discrete assimilation policy process is proposed.
Subsequently, with a view to enhancing the local exploitation of DICA and to
accelerate the convergence of our algorithm, the proposed absorption process is
also performed among imperialists. Finally, the experimental results show that
the DICA is more effective and can obtain near-optimal global solution with an
acceptable CPU-time compared to other recent algorithms in the literature.
The remainder of this paper is organized as follows: In section 2 the QCSC
problem is described after a succinct introduction of the canonical algorithm
ICA. In section 3, the proposed algorithm is explained in details. In section 4,
III
our experimental results are shown. Finally, the conclusion and the future works
are given in section 5.
2
2.1
ICA is a novel evolutionary search algorithm that simulates the process of sociopolitical behavior of countries [7], which has been applied to solve several
optimization problems [8]. At the beginning of the algorithm, an initial population of countries is randomly generated, after that, each country which represents
a unique solution to the solved problem is calculated according to its cost function. Next, some of the best countries are chosen in population as imperialists,
whereas the other countries are considered as colonies of theses imperialists.
The colonies are dispersed among the mentioned imperialists to construct empires by using a simple assignment procedure. The number of assigned colonies
for an imperialist is defined according to its power, where the best imperialist
has greater number of colonies compared to weak imperialist. After distributing
all colonies among imperialists, each colony starts to move toward its related
imperialist. This process of moving is called the assimilation or absorption
process. To prevent the population falling into local optimum, like the mutation
operator in GA, ICA has a revolution process, in which some of colonies for
each empire are affected by making a change of their sociopolitical characteristics. During the movement of colonies, it may be the case that a colony gets the
best position (best cost) compared to its relevant imperialist. So a swapping of
positions between that colony and its imperialist is applied. This process of exchanging positions between imperialists and their colonies in ICA is referred to
as the updating positions process. The imperialistic competition process
augments the survival chance of powerful empires through possession of other
colonies whilst it leads to the collapse of the weakest empires through loss of
their colonies. During the competition process, the larger empires experience an
increase in their power with a concomitant decrease in the power of the weaker
ones, and when the latter lose all their colonies, the collapsing process is invoked by eliminating these empires. All mentioned processes are repeated for
each evolution (i.e. iteration) until the ending criterion of the ICA is satisfied.
2.2
IV
The normalized aggregate QoS of the CCS for the negative and positive QoS
attributes are given in (Eqs. 2 and 3) respectively:
(
agg(qtmax )agg(qt )
max
) 6= agg(qtmin )
max )agg(q min ) if agg(qt
agg(q
t
t
Q(CCS)qt =
(2)
1
if agg(qtmax ) = agg(qtmin )
(
Q(CCS)qt =
agg(qt )agg(qtmin )
agg(qtmax )agg(qtmin )
if agg(qtmax ) 6= agg(qtmin )
if agg(qtmax ) = agg(qtmin )
(3)
Where
agg(qtmax ) and agg(qtmin ) are evaluated by aggregating the maximum/minimum
values of qt for each set Si corresponding to the tasks Ti of CCS.
The overall aggregate QoS of each CCS in the tth attribute (i.e. agg(qt )) is
evaluated according to the type of interconnection structures among the atomic
cloud services of CCS (i.e. sequential, parallel, conditional and loop models) as
shown in Fig. 1. Table. 1 illustrates the aggregate formulas for some positive and
negative QoS criteria [24]. As far as simplicity is concerned, only the sequential
model is taken into account, where other type of models can be converted into
sequential ones by using techniques cited in existing studies[4].
qt = Price
services
Pn j
q
i=1 P rice,i
services
P
m
j
qt = Response time
Pn
qt = Availability
j
(qAva,i
)r
qt = Reliability
M ax(qTj ime,i )
m
qj
i=1 Ava,i
m
qj
i=1 Rel,i
j
M inm
i=1 (qT hr,i )
j
(qRel,i
)r
qt = Throughput
qj
i=1 T ime,i
n
qj
i=1 Ava,i
n
qj
i=1 Rel,i
j
M inn
i=1 (qT hr,i )
q
i=1 P rice,i
qP rice,i pi
r qP rice,i
qj
pi
i=1 T ime,i
m
j
q
pi
i=1 Ava,i
m
j
q
pi
i=1 Rel,i
j
m
M ini=1 (qT hr,i pi )
r qTj ime,i
qTj hr,i
Pm
i=1
pi = 1.
In this section, the components of our proposed DICA for solving the QCSC
problem are explained in details.
VI
3.1
In the population, each individual representing a solution for the QCSC is called:
a country. A country is expressed by an array of integers. Each integer (j{j =
1 . . . m}) in the array presents the selected service (CSij ) from its related concrete
services set (Si{i=1...n} ). Fig. 2, illustrates an example of a country representing
a concrete CCS of six abstract cloud services. In this study an initial population
(i.e. initial countries) of size P opSize is generated randomly. In the generated
p
q
q
t
t If at least one constraint is not verified.
t=1
(5)
Where
Pk
pqt(t=1...k) [0, 1] is the penalty coefficient with t=1 pqt =1
Cstsqt (cont) is the amount value of the violation biased by cont for the
criterion qt which is calculated as given in Eq. 6.
( max(0,Cstq agg(qt ))
t
if qt QoS +
Cstqt
Cstsqt (cont) = max(0,agg(q
(6)
t )Cstqt )
if qt QoS
Cstq
t
VII
In Eq. 6, agg(qt ) is the value of the aggregate QoS of cont for the QoS criterion
qt where Cstqt is the positive or negative constraint value for this attribute.
After evaluating all the countries of the initial population, the best countries
of size P opImp are selected to be the imperialists and the other countries
of size P opCol where (P opCol = P opSize-P opImp) represent the colonies of
these imperialists which are distributed to those imperialists according to their
powers. In order to define the initial number of colonies for each imperialist, the
roulette wheel selection mechanism of the genetic algorithm is used to distribute
the colonies to the imperialists. By way of consequence, the best imperialists have
a greater number of colonies compared to the weaker imperialists. An empire
is formed by one imperialist and its colonies. To allocate the colonies to the
imperialists, the following pseudo-code simulating the roulette wheel selection
mechanism is applied:
Step 1.
1. Calculate the normalized cost of each imperialist impn as follow:
N Cimpn = Cost(impn ) min(Cost(imps ))
(7)
where Cost(impn ) is the cost of the nth imperialist given in Eq. 4 and
min(Cost(imps )) denotes the minimum cost value of all imperialists.
N Cimpn
.
2. Forming the vector P = [P1 , P2 , . . . , PP opImp ] where Pn = PP opImp
i=1
N Cimpi
3. Forming the vector CP = [CP1 , CP2 , . . ., CPP opImp ], where CPi is the
cumulative power of each imperialist which is defined in Eq. 8.
CP1 = P1
(8)
CPi = CPi1 + Pi
i = 2 . . . P opImp
Step 2.
For k = 1 . . . P opCol
1. Generate randomly the real number (rand) in the interval [0, 1].
2. Assign the kth colony to the ith imperialist impi , such that CPi1 <
rand CPi .
End For.
3.2
VIII
(9)
In the classic ICA algorithm, the assimilation policy process is performed only
for colonies toward their imperialists. There is no interaction and exchanging of
IX
socio-structure among empires. But in the real world, weak imperialists try to
improve their characteristics by assimilating some economic and sociopolitical
characteristics from other empires and in particular from the strongest one. This
imperialist assimilation policy increases the power of weak empires and increases
their survival capability during the competition process, so, the local exploitation
of the DICA is enhanced, as a result, the convergence of the proposed algorithm
to the near-optimal global solution is accelerated. In this study the proposed
discrete assimilation policy is performed for the ith imperialist (Impi ) toward
its strongest imperialist (StImp) as shown in Eq. 12 :
N Impij = Impij + b(StImpj Impij ) + (Impkj Impij )c
(12)
To accept the movement of each imperialist, the same previous greedy selection
mechanism is employed between the old position of this imperialist and its new
position.
3.4
Revolution
To prevent the population falling into a local optimum, which increases the
exploration ability of the proposed algorithm, revolution operators are performed
on some colonies which dont improve their sociopolitical characteristics (like
language and culture) through a predetermined number of evolutions (T ), i.e.
colonies not absorbed by their imperialists. The proposed revolution operator in
this study is as follows:
Step 1. For each colony (Coli ), assign to it an update iteration number (T riali )
and let T riali = 0.
Step 2. In each evolution process of our DICA, set the T riali for each Coli
as follows: if the Coli updates its position, set the T riali to zero; otherwise,
increase it.
Step 3. Find the colony which does not updated its position after T iterations
(T riali > T ), if there is more than one, select one randomly, and replace the
selected colony with a new randomly generated one.
3.5
Both, the power of the imperialist country and the power of its colonies are used
to define the total power of an empire, which is evaluated by making an addition
between the power cost of the imperialist country and a percentage of average
power costs of its colonies. Eq. 13 shows the definition of the total power of an
empire Empn .
T PEmpn = Cost(Impn ) + mean(Cost(colonies of empire Empn ))
(13)
In Eq. 13, T PEmpn is the total power of the nth empire, is a number between
0 and 1, the larger the value of the higher the effect of colonies on the power
of Empn .
In the imperialistic competition process, a competition between strong empires gets under way to secure some (usually one) of weak colonies from the
weakest empire; this process of competition improves the power of the strong
empires and decreases the power of the weak ones. When all the colonies of the
weakest empire are attracted by the strong ones, the imperialist of this weak empire will be in turn possessed by the more powerful ones, by way of consequence,
the weaker empires will collapse. Fig. 3 depicts this strategy of competition. It
can be seen from this figure that the weakest colony of the weakest empire (i.e.
empire 1) is under competition among the remaining empires (empires 2 . . . n).
The winning empire in this competition is the (empire n). In order to find the
victor empire which takes the weakest colony, we need to calculate the possession
probability of each empire, which is defined as follows:
N T Pempn
P Sempn = PP opImp
(14)
N T Pempi
i=1
where, P Sempn is the possession probability of the nth empire and N T Pempn is
its normalized total power which is described as follow:
N T Pempn = T Pempn min(T Pempi )
(15)
where T Pempn is the total power of the nth empire and min(T Pempi ) denote the
minimum total power value among all empires (i = 1 . . . P opImp).
After evaluating the possession probabilities of all empires, the same mechanism of roulette wheel selection discussed in sub-section 3.1 is applied by using
these probabilities in order to find the winning empire.
3.6
Several stopping criteria can be used to end a meta-heuristic algorithm such as:
1. Fixing a specific time to stop the meta-heuristic algorithm;
2. A large number M axItr is defined as the maximum number of iterations;
3. The proposed DICA algorithm can also be terminated in the following fashion: when all empires are eliminated, except for the most powerful one, its
near-global optimal solution represents the best solution returned by the
DICA.
XI
Pertaining to our proposed DICA, the second criterion is utilized to effect its
termination.
3.7
In the following, the running steps of our proposed DICA are detailed:
Step 1. Initialize the algorithms parameters: Population size (P opSize),
number of imperialists (P opImp), colonies average cost coefficient (), the
assimilation coefficient (), the trial number of revolution (T ) and the maximum number of iteration (M axItr).
Step 2. Generate randomly the initial population (P op), evaluate the cost
value of each country in P op and create the initial empires as discussed in
subsection 3.1.
Step 3. If the DICAs ending criterion is reached, terminate our proposed
algorithm and return the best solution; otherwise, perform steps 4 to 9.
Step 4. In order to move colonies toward their associated imperialists, apply
the proposed discrete assimilation process between each colony, a random
selected colony in the corresponding empire and its related imperialist as
discussed in subsection 3.2.
Step 5. To accelerate the convergence of the proposed DICA and enhance
the local exploitation of the DICA algorithm, apply the same discrete assimilation policy process for each imperialist toward its strongest imperialist as
discussed in subsection 3.3.
Step 6. Perform the revolution operator for colonies of empires as discussed
in subsection 3.4.
Step 7. For each colony, calculate the cost value of its new position, if it
is better than its related imperialist, exchange positions between it and its
relevant imperialist.
Step 8. For each empire, calculate its total power, find the weakest colony
of the weakest empire and make it under competition among imperialists as
discussed in subsection 3.5.
Step 9. Return to Step 3.
Experiments
Two data-sets taken into consideration to validate and illustrate the performance
of our proposed algorithm to solve the QCSC problem.
QWS data-set: it is a real data-set collected by E. Al-Masri et Q.H. Mahmoud [14], in which 2507 web service were provided. In this data-set, and
for each web service, nine QoS criteria including throughput, availability,
response time, . . . ect are used to present the QWSs QoS model. In our
study, four QoS parameters (i.e. the response time, the availability, the reliability and the throughput) are selected to perform the experiments on this
data-set.
XII
Parameters values
P opSize=100, Pc =0.7 and Pm =0.01
XIII
Table 3. The values of n and m for the two scenarios in WSQ and WSR data-sets
Data-set The first scenario (SN1)
QWS
QWR
4.1
Optimality comparisons
As shown in Fig. 4, the average best cost values of our DICA is better than
the average best cost values of the other algorithms for the two scenarios on
the both data-sests: the real and the random ones, i.e. fixing the number of
concrete cloud services and incrementing the number of abstract cloud services
as shown in Fig. 4(a)& Fig. 4(c) and vise-versa as seen in Fig. 4(b)& Fig. 4(d).
It is also observed from this figure, that when the number of abstract services
is with a large value, our DICA returns a feasible solution; whereas, the others
return infeasible ones (i.e. in Fig. 4(a) & Fig. 4(c),and for n=25, the average
cost value of DICA is greater than 0.5, by inverse, it is less than 0.5 for the
other algorithms). Moreover, the DICA presents a good stability compared to
the other approaches (i.e. In Fig. 4(b) & Fig. 4(d), when the number of abstract
services is fixed with a value of 20 the variance of the DICA is not affected
by the increasing of the number of concrete services, which is very small than
the variances of GA,ICA and PSO approaches). From these results, the DICA is
optimal than the other algorithms on the obtained near-optimal global solutions.
XIV
4.2
From Fig. 5, it can be seen that the ICA algorithm is very slower compared to
the DICA, GA and PSO algorithms. Our DICA is very competitive to the GA
algorithm, where there is a negligible computation time difference among them
as shown in Fig. 5(a), Fig. 5(c) and Fig. 5(d). Except for the experiment seen
in Fig. 5(b), GA is slightly faster than DICA in four variations of the number
of concrete services per five variations, but as can be observed from their related fitness values from Fig. 4(b) of the above optimality comparisons section,
the average cost values of our DICA is more important than the average fitness
values of GA. As a result, the DICA has a good tradeoff between the quality of
near-optimal solution and its computation time compared to the GA algorithm.
The PSO algorithm has lees execution time for the two scenarios on the WSQ
and WSR data-sets, but with a very low fitness values for these scenarios.
Considering the previous comparisons results, we can conclude that our proposed algorithm is superior to the ICA, GA and PSO algorithms.
In this study, a new Discrete Imperialist Competitive Algorithm (DICA) is proposed to solve the QoS-aware cloud service composition problem which is a nonpolynomial combinatorial problem. To prevent the DICA from converging to the
local optima, a novel discrete assimilation policy process is proposed which is
inspired by solution search equation of Artificial Bee Colony algorithm (ABC).
To improve the weak empires and furnish them with a greater chance of survival
during the competition process, the proposed absorption process is also applied
for imperialists and, by way of consequence; the local exploitation of our DICA
XV
References
1. A. Jula, E. Sundararajan, Z. Othman, Cloud computing service composition:
A systematic literature review. Expert Systems with Applications. 41(8), 3809
3824(2014)
2. F. Tao, D. Zhao, Y. Hu, and Z. Zhou, Resource Service Composition and Its
Optimal-Selection Based on Particle Swarm Optimization in Manufacturing Grid
System. IEEE Transactions on Industrial Informatics. 4(4), 315327(2008)
3. D. Ardagna, B. Pernici, Adaptive Service Composition in Flexible Processes. IEEE
Transactions on Software Engineering. 33(6),369384(2007)
4. M. Alrifai , T. Risse, Combining Global Optimization with Local Selection for Efficient QoS-aware Service Composition . International World Wide Web Conference
Committee 2009. Madrid. Spain. pp. 881890.
5. Q. Wu, Q. Zhu, Transactional and QoS-aware dynamic service composition based
on ant colony optimization. Future Generation Computer Systems. 29, 1112
1119(2013)
6. G. Canfora, M.D. Penta, R. Esposito, M.L. Villani, An Approach for QoS-aware
Service Composition based on Genetic Algorithms. In: Proceedings of the conference
on genetic and evolutionary computation. SpringerBerlin. 106975(2005)
7. G. Esmaeil and C. Lucas, Imperialist competitive algorithm: an algorithm for optimization inspired by imperialistic competition. Proceedings of the 2007 IEEE
Congress on Evolutionary Computation. 46614667(2007)
8. S. Hosseini, A. Al Khaled, A survey on the Imperialist Competitive Algorithm metaheuristic: Implementation in engineering domain and directions for future research.
Applied Soft Computing. 24, 10781094(2014)
9. A. Jula, Z. Othman, E. Sundararajan, A Hybrid Imperialist CompetitiveGravitational Attraction Search Algorithm to Optimize Cloud Service Composition.
In: Memetic Computing (MC), IEEE Workshop. 3743(2013)
10. A. Jula , Z. Othman , E. Sundararajan, Imperialist competitive algorithm with
PROCLUS classifier for service time optimization in cloud computing service composition. Expert Systems with applications. 42, 135145(2015)
11. C.H. Chen, W.H. Chen, Bare-bones imperialist competitive algorithm for a compensatory neural fuzzy controller. Neurocomputing. 173, 15191528(2016)
12. M. Zeleny, Multiple Criteria Decision Making. McGraw-Hill. New York. 1982
13. D. Karaboga, B. Basturk, A powerful and efficient algorithm for numerical function
optimization: artificial bee colony (ABC). Journal of Global Optimization. 39, 459
471(2007)
14. E. Al-Masri, Q.H. Mahmooud, Investigating Web Services on the World Wide Web,
17th International Conference on World Wide Web (WWW), Beijing, April 2008,
pp. 795804.
15. B.M. Ivatloo, A. Rabiee, A. Soroudi, M. Ehsan, Imperialist competitive algorithm
for solving non-convex dynamic economic power dispatch, Energy, 44 ,228240(2012)