Download as pdf or txt
Download as pdf or txt
You are on page 1of 20

International Journal of Web Services Research

Volume 15 • Issue 2 • April-June 2018

A Hybrid Meta-Heuristic Approach for


QoS-Aware Cloud Service Composition
S. Bharath Bhushan, SITE, VIT University, Vellore, India
Pradeep C. H. Reddy, VIT-AP University, Amaravati, India

ABSTRACT

Cloud is evolving as an outstanding platform to deliver cloud services on a pay-as-you-go basis.


The selection and composition of cloud services based on QoS criteria is formulated as NP hard
optimization problem. Traditionally, many optimization techniques are applied to solve it, but it
suffers from slow convergence speed, large number of calculations, and falling into local optimum.
This article proposes a hybrid particle swarm optimization (HPSO) technique that combines particle
swarm optimization (PSO) and fruit fly (FOA) to perform the evolutionary search process. The
following determines a pareto optimal service set which is non-dominated solution set as input to the
proposed HPSO. In the proposed HPSO, the parameters such as position and velocity are redefined,
and while updating, the smell operator of fruit fly is used to overcome the prematurity of PSO. The
FOA enhances the convergence speed with good fitness value. The experimental results show that
the proposed HPSO outperforms the simple particle swarm optimization in terms of fitness value,
execution time, and error rate.

Keywords
Cloud Computing, Fruit Fly Optimization, Particle Swarm Optimization, Quality of Service, Service Composition

1. INTRODUCTION

Cloud computing has emerged as a robust computing paradigm, which helps for the seamless
composition of business applications to create new value added services (Jula et al., 2014). The virtue
of cloud promotes a remarkable increase in number of functionally equivalent services and service
providers. As the services are self-contained, loosely coupled process deployed over a standard cloud
platform can be described, published, discovered and invoked on basis of pay per use. The selection
of services and service providers is based on evaluating QoS parameters and user preferences, which
is formulated as NP-hard optimization problem.
In this paper, we consider QoS parameters such as availability, reliability, price, response time,
throughput and reputation (Luo et al., 2012). Many researchers have identified that QoS parameter
value should be real number, language value and interval (Yu et al., 2007). Normally, a new service
is published along with functional and non-functional parameters, where the functional parameter
specifies “what exactly the service is going to perform” and non-functional parameter specifies “how

DOI: 10.4018/IJWSR.2018040101

Copyright © 2018, IGI Global. Copying or distributing in print or electronic forms without written permission of IGI Global is prohibited.


1
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

the service performance is”. The various service providers will publish a large number of similar
services which have different levels of quality of service. As QoS aware service composition is a hot
research topic in the field of cloud computing and networks. The improper selection and composition
of services can affect the service level agreements and which leads to user dissatisfaction. Service
composition is a three step process: (1) Handling user composite request (2) Service request (3)
Composing selected services. In the first step, the user submits his preferences in terms of weights.
In the second step, the proposed approach will select the best service from several possible similar
services and those composed results will return to the user in the final step.
In past few years, the researchers proposed various techniques to solve the QoS aware
service composition problem, but user dissatisfaction or violation of SLA is major problem.
Linear integer programming (LIP) model is adopted by few scholars to solve service matching,
ranking and selection problem by maximizing the objective value. As the number of candidate
services increases the linear integer programming model suffers from increase in computational
cost. As our problem is multi-constraint multi objective problem, the effective and efficient
particle swarm optimization algorithm is applied to solve it. PSO has been applied in various
ways to solve the service selection problem, but it attains sub-optimal solution because of its
premature convergence nature (Liao et al., 2011). So, to improve the accuracy of PSO the fruit
fly optimization algorithm is incorporated.
The artificial, evolutionary and classic algorithms have been used extensively to solve
service composition problem (Liu et al., 2012a; Gabrel et al., 2012; Torkashvan & Haghighi,
2012). But the traditional approaches follow the global optimization approach to solve service
composition problem by considering all possible candidate service combinations. This approach
attains optimal combination with decent fitness value and execution time by meeting global
constraints, but still it suffers from poor performance. To enhance the performance, we integrated
local optimization approach which evaluates the QoS of a service among similar service set.
This integrated approach attains an optimal combination with good fitness value, execution time
and minimal error rate. This work divides the QoS aware service composition problem into two
stages: PSO and FOA. The particle swarm optimization is used to meet global constraints and
the smell, vision operators of FOA is included to find optimal weights by which we attain good
performance by user satisfaction. The advantages of FOA are fewer parameters, faster convergence
speed and less running time.
In this paper, we proposed a hybrid optimization algorithm based on PSO and FOA. First,
we generated initial populations which are initial optimal weights for the resultant services from
pareto applied on initial candidate services. Then it finds an optimal composed service based
on user preferences attains good fitness value, execution time and error rate. In second phase,
we applied vision and smell operators of FOA to achieve better optimal weights by overcoming
premature convergence of PSO. Finally, the experimental results of proposed HPSO are more
effective than the simple PSO.
The contribution of this research as follows:

1. It reduces number of candidate services;


2. A significant increase in fitness value;
3. It reduces the root mean square error with decent execution time;
4. It will ensure optimal service selection with minimal SLA violations.

The rest of the paper is organized as follows: related work about the QoS aware service
composition in section.2. In section.3 the problem is formally defined. Section.4 focuses on our
proposed methods: simple PSO and Hybrid PSO in detail, including the pareto approach, fitness
evaluation, initial weights and the applied vision, smell operators of FOA. Experimental results and
discussion are presented in section.5. Finally, we concluded our work in section.6.

2
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

2. RELATED WORK

A significant research is carried on QoS aware service composition. The improper selection and
composition of services will breach the service level agreements and leads to user dissatisfaction. In
literature artificial, evolutionary and classic algorithms have been used extensively to solve service
composition problem.
In (Zeng et al., 2004) they proposed a QoS aware middleware to solve global optimization problem
in web service composition, which is based on linear integer programming. However, if number
of candidate services increases the model suffers from increase in computation cost. The authors
proposed a model to reduce the computational cost by finding best web services based on mixed integer
programming and local selection method. But it fails to handle the different services with different
QoS values (Alrifai & Risse, 2009). A multi-objective optimization framework is proposed which is
based on genetic algorithm to solve QoS aware service composition problem (Canfora et al., 2005).
The disadvantage is slower than integer programming and not suitable for large scale applications.
The authors proposed an algorithm (Estévez-Ayres et al., 2009), which evaluates all possible
combinations by using depth first search algorithm and its preferences is improved by using a pruning
technique. In (Oh et al., 2008) an artificial intelligence based service composition algorithm is proposed
to maximize the fitness value and to minimize the cost of composition. The algorithm fails to achieve
optimal solution within acceptable time. The authors applied pruning and branch and bound methods
to their proposed linear integer programming approach in order to maximize the fitness value with
good aggregate QoS value (Huang et al., 2009; Bhushan & Reddy, 2016a).
In (Ko et al., 2008) QoS aware service composition architecture is proposed based on tabu search
and simulated annealing. The simulated annealing optimizes the service execution plan by which
execution time is minimized. In (Fethallah et al., 2012) proposed a single objective particle swarm
optimization algorithm to avoid local optima. The adopted inertia avoids the sub optimal solutions
because of its premature convergence nature. A pareto optima is applied to prune dominated service
instance and then a muti objective PSO algorithm is applied on resultant candidate services by
which an improved fitness value, execution time is achieved (Jiuxin et al., 2010). A two phase mixed
integer programming model is implemented in (Yong et al., 2012). In first phase, k-means is applied
to reduce number of candidate services and then mixed integer programming is used to select the
suitable service from reduced candidate set.
Another two phase method is proposed by (Liu et al., 2012b), where the composite services are
represented as state transition matrix. In second phase, to find optimal services the business process
execution language for web services (BPEL4WS) is applied. A three level hierarchical model is
presented in (Liu et al., 2012c), in which QoS weights are generated by analytical hierarchy process
(AHP). In first layer the optimal service selection is done based on user preferences. The next two
layers are represented as criterion layer and QoS parameter layer. In (Yu et al., 2013; Bhushan &
Reddy, 2016b) they proposed three algorithms to reduce search space and generate dominated skyline
services. The first algorithm finds a best solution from all execution plans with improved execution
time and consumed space. The second algorithm evaluates all service execution plans by adopting
tree structure with pipeline capabilities. The third algorithm overcomes the expensive computational
cost of second algorithm by preparing bottom up algorithm.
In (Ludwig, 2012) the authors proposed an efficient genetic algorithm to select individuals for the
crossover and mutation operators by replacing tournament selection algorithm with clonal selection
algorithm. A skyline operator and integer array coding is applied on particle swarm optimization to
achieve service composition with minimal execution time within reduced search space (Wang et al.,
2013). As the number of services increases, the model suffers from increase in computational cost. In
(Moscato & Cotta, 2003) they proposed an imperialist competitive gravitational attraction algorithm
to minimize the response time and computation cost. However, they adopted exploration capability
of an imperialist competitive algorithm to address similar services with different QoS level.

3
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

Therefore, most of the meta-heuristic approaches suffer from sub optimal solutions because of
its premature convergence behavior and large search space. So, we proposed an improved particle
swarm optimization by hybridizing the smell and vision operators of fruit fly optimization algorithm.
The objective is to achieve better fitness value, execution time and minimal error rate.

3. PSO, FOA AND PROBLEM FORMULATION

3.1. PSO
The PSO algorithm (Eberhart & Kennedy, 1995) is a meta heuristic global optimization
algorithm, which was inspired by the social behavior of bird flocking. The particles which
are in the search space are represented as a solution. The position of particle is updated based
on optimal solution of particle (pbest) and optimal solution of species (gbest). The basic PSO
flowchart is shown in Figure 1.
At first, an initial population is randomly generated and then it will calculate fitness value
for each particle. If the current fitness value is better than previous fitness value, the current
fitness is assigned to gbest otherwise it remains as it is. Then it will calculate the velocity of
each particle and position will be updated according to that. The process is repeated until the
stopping criteria meets.

Figure 1. Flowchart of simple particle swarm optimization algorithm

4
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

3.2. FOA
The FOA is a meta heuristic global optimization algorithm, which was inspired by the foraging
behavior of the fruit fly. The fruit fly finds the best food source locations by using unique vision
and smell based search operators. The basic FOA flowchart is shown in Figure 2. At first an initial
population is randomly generated and evaluates smell concentration value for each fruit fly. Then
fly towards the best location by using vision based search process. The process is repeated until the
stopping criteria meets.

3.3. Problem Formulation


In this section, the following notations are used to find an optimal QoS aware service composition:

Definition 1: Cloud Service - A cloud service is a tuple S={N, D, L, I, O, URL, CS, QoS} where:
N is the name of the service, which is unique identifier; D is the description of the service; L
is the location of cloud and service file, I,O are service interfaces; URL is a unique identifier
to access a service; QoS is a quality of service; CS is a composite service, if CS=N then S is
atomic service, otherwise S is a composite service.
Definition 2: Abstract and concrete services - An abstract service is AS={A1i,A2i,…,Ani}, denotes
an abstract cloud service composition. For every abstract service, there are number of functionally
equivalent services with different QoS levels are called concrete services. Where A1i (i=1,2,…,n)
are concrete services of A1 abstract service in a cloud service composition.
Definition 3: Service composition - Let SC={S1,S2,S3……..,Sn}, where S1 to Sn represents cloud
services which differ in functionality. The type of service selection depends on the user request.
The composed services can be executed in four patterns, such as sequential, selection, parallel
and loop. The formulas of all patterns are shown in Table 1.

Figure 2. Flowchart of simple fruit fly optimization algorithm

5
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

Table 1. QoS aggregate rules for composite services

Pattern Sequential Parallel Conditional Loop


Availability
Reliability
Price
Response time
Throughput
Reputation

Definition 4: User preferences - Let W={W1,W2,…Wn}, denotes user preferences for each QoS
n

parameter, where w t  0, 1 .and the aggregate user preference weight is ∑w t
= 1.
t=1
Definition 5: Constraints - The global QoS optimization of cloud service selection can be formalized
as follows:

f (x) = F(min PR, min RT, max AV, max R, max TH, max Rep)

subject to:

PR ≤ PR o , RT ≤ RTo

where PR o and RTo are maximum price and response time.


The combination with highest score in a service composition has a better QoS performance than
others is illustrated as optimization problem with constraints as follows:

{
Max score (CS) }
subject to:

q i < q io

where q i o refers to user constraints of QoS value.

Definition 6: QoS parameters - The QoS of a service portrays the non-functional properties in
numerous aspects, which can legitimately reflect the user’s requirements and influence the user’s
satisfaction from some aspects, such as price, execution duration, security, integrity, availability
and reliability. As per the significance and measurement of the service quality parameters, six
attributes are chosen to evaluate the QoS metrics of a service.

The QoS of a service is a tuple QoS(S) = {Qpr(S), Qrt(S), Qth(S), Qav(S), Qr(S), Qrep(S)}, which
portrays some information on service quality in the execution process includes service price, response
time, throughput, availability and sucessability of service execution:

6
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

1. Qpr(S) represents the service execution price, which is the cost of calling the service;
2. Qav(S) represents the service availability, which is the ability of handling the received services,
T (S )
defined as Qav(S) = where T is the availability time of service ‘S’ in past interval ϕ ;
ϕ
3. Qrt(S) represents the response time of a service, which is time taken to send a request and receive
n
a response, defined as Qrt(S) = , where n is the number of concurrent users, r is he
r − Tthink
number of requests per second the service receives, Tthink is the average think time (seconds);
4. Qth(S) represents the service throughput, which is total number of invocations for a given period
I
of time, defined as Qth(S) = , where I is the total number of invocations for a time period T;
T
5. Qr(S) represents the service Reliability, which is concerned with the ability of network to carry
out a desired operation. Where node failure and packet losses are two hurdles for network
reliability. The network reliability of a service ‘S’ with respect to packet losses is given by
qre (S ) = 1 − (1 − pd ) (1 − pe ) where 1 − pd packet is correctly received through the channel
and 1 − pe is packet not drooped from the queue;
6. Qrep(S) represents the service reputation, where the service reputation is public opinion about
the performance of a service. In this paper, the reputation of a service is given on 5-point scale.

4. THE PROPOSED HYBRID PSO ALGORITHM FOR


QOS AWARE SERVICE COMPOSITION

In this paper, we proposed an HPSO for QoS aware cloud service composition. The objective of HPSO
algorithm is to improve the performance of simple PSO in terms of fitness value, execution time
and error rate. The HPSO includes normalization, pareto optimal solution, coding strategy, fitness
function, the PSO phase in which we computed pbest,gbest to find optimal weights and then velocity
is computed, the fruit fly optimization phase in which a smell operator is used to update the position
of a particle and to escape from falling into local optimum. The components of the proposed HPSO
algorithm and its framework is explained in detail in the following sub sections.

4.1. Normalization
The values of various QoS parameters have different dimensions. So, the QoS parameters need to
be quantified to have a uniform distribution. The QoS parameters are classified into positive and
negative criteria based on their impact on classification function. The objective value is increased with
increase in positive parameters and the increase in negative parameters the objective function is going
to decrease. The positive and negative parameters are normalized by Equations (1) and (2) as below:

qij − q min
j
N ij+ = if q max − q min ≠0
q max
j
− q min
j
j j
(1)
max min
1 if q j
−q j
=0

q min
j
− qij
N ij− = if q max − q min ≠0
q max
j
− q min
j
j j
(2)
max min
1 if q j
−q j
=0

7
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

where N ij is the normalized value of jth parameter of the ith service. N ij is the maximum value of
the jth column of the QoS matrix, q max
j
= max (q i, j ), 1 ≤ i ≤ n and N ij is the minimum value of
the jth column of the QoS matrix, if q min
j
= min (q i, j ), 1 ≤ i ≤ n . q min denotes minimum QoS value
and q max represents the maximum QoS value. After normalization, all the QoS value are lies between
[0,1] interval.

4.2. Pareto Optimal Solutions


To reduce the search space of candidate services, we applied a pareto ranking approach which
utilizes the concept of pareto dominance in allocating selection probability to a solution set. The
size of pareto optimal set is varied with increase in the number of objectives. The QoS values
of candidate services are ranked according to a dominance rule. Then based upon their fitness
value the ranks are assigned and treated as a better solution. If a solution is not dominated by
any other solution in search space then it is pareto optimal and all non-dominated solutions
in a set is referred as pareto optimal set. The corresponding value of an pareto optimal in a
search space is referred as pareto front. The adopted pareto ranking approach is shown below
in Algorithm 1.

Algorithm 1. Pareto optimal algorithm for dominated candidate service selection

current-rank:=1
p:=(QoS values of candidate services)
n:=p
while p!=0 { /*process QoS values of candidate services */
for i:=1 to n { /* find services in current rank
if vi is non-dominated {
rank (vi):=current-rank
}
}
for i:=1 to n { /* remove ranked services from candidate services */
if rank (vi):=current-rank {
remove vi from candidate services
p:=p-1
}
}
current-rank:=current-rank+1
n:=p
}

4.3. Coding Strategy


We adopted fixed length integer coding strategy, where a task number is given to each
abstract service and a candidate number is given to every concrete service in each abstract
service. Let us assume there are five abstract services in the given composite service, so
the length of the position is five and ten concrete services for each abstract service, and
then the composed service is (4, 1, 3, 2, 1). The composed scheme shows that the task 1
selects the number 4 service and task 2 selects the number 1 service and so on, which is
represented in Figure 3.

8
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

Figure 3. Array integer coding solution

4.4. Fitness Function


Fitness function is used to evaluate the performance of each service composition. The main objective
is to select one atomic service from candidate services of each abstract service. So, the aggregate QoS
value of composite service can be maximized. To solve QoS aware service composition problem, a
weighted sum of each parameter of a composite service is adopted as below:

f (x) = ∑w i q i (4)
i=1

Here the constraints are:

∑w i
= 1, 0 < w i < 1, 0 ≤ q ≤ 1 (5)
i=1

where w i denotes the corresponding weights for a parameter q i and ∑w i


= 1 , q1, q2, q3, q4, q5, q6
i=1
denotes availability, reliability, throughput, reputation, price and response time.

4.5. PSO Phase


In PSO, each particle position represents a possible solution of optimization problem. In HPSO, we
first generate 100 random weights for each and every service from the resultant pareto set. These
random weights are the particles such that the position x ti of each particle pip t is random within
the search space with t=0. Then evaluate the performance of each particle from its current position
x ti and by the fitness function in Equation 4. Then the performance of each particle is compared
with its best value by below equation:

9
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

( ) ( )
if F x ti < F x ti,pbest then x ti,pbest = x ti (6)

Again compare the performance of each particle to global best particle as below:

( ) ( )
if F x ti < F x ti,gbest then x ti,gbest = x ti (7)

The particle position is updated according to individual optimal solution of the particle (pbest)
and the other is global optimal solution of a particle (gbest) as below:

v i t+1 = ω*v ti + c1 *rand* x t ( i, pbesti


) (
− x ti + c2 *rand* x t
i, gbesti
)
− x ti (8)

( )
where pbesti = pbesti1, pbesti2 , …….pbesti n and gbesti represents the best previous position of
the i particle and the best previous position among all the other particles in the population. Rand ()
th

is a uniform random distribution variable within the interval [0, 1] at time t. finally, to update the
position of a particle without falling into local optimum the distance and smell operators of fruit fly
optimization algorithm is adopted.

4.6. FOA Phase


In FOA phase, we have defined a position equation to which we added velocity vector from PSO as
given below:

x ti+1,p = x i,pbest + v (9)

The x ti+1,p represents the location of the tth particle of the pth swarm in the (i+1)th iteration
process. x i,pbest represents the optimal location of the pth swarm in the ith iteration process.
Then the fitness function is executed after calculating smell concentration by using the relation
between distance and smell operators as shown below:

Distti+1,p = 1 (10)
x ti+1, j

smell ti+1,p = 1 (11)


Distti+1,p

Distti+1,p denotes the distance of the tth particle of the pth swarm in the ith iteration process and
smell ti+1,p represents the smell concentration value of the tth particle of the pth swarm in the (i+1)th
iteration process.
Finally, we obtained an optimal composite service with better fitness value and minimal error
rate over simple PSO based QoS aware service composition.

4.7. The Framework of Proposed Hybrid Particle Swarm Optimization


The following is the detailed steps of the proposed HPSO:

10
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

Step 1: Initialization Phase:


1. Set the system parameters such as population size, lower bound and upper bound variables, number
of variables, inertia weights, acceleration factors, maximum number of runs and iterations;
2. Generate the initial population and obtain the candidate services from pareto optimal solution;
3. The fitness value is calculated for each solution in the initial population.
Step 2: Terminate the HPSO algorithm and return the best solution, if the stopping criterion is
satisfied; otherwise proceed from step 3 to step 6.
Step 3: PSO Phase - The new population is generated by using the current population as follows:
1. The performance of each individuals is compared with its best performance i.e pbest, by using
Equation (6);
2. Then, compare the performance of each individual with global best particle i.e gbest, by using
Equation (7);
3. The position of a particle is updated by calculating the velocity using Equation (8).
Step 4: FOA Phase:
1. The motion equation is proposed to update position of a particle with the velocity generated
from PSO phase by using Equation (9);
2. Apply the distance and smell operator on each particle by using the Equation (10) and
Equation (11).
Step 5: Return back to step 2 to check the stopping criteria.

5. THE PROPOSED HYBRID PSO ALGORITHM FOR


QOS AWARE SERVICE COMPOSITION

The proposed HPSO algorithm has undergone a series of experiments to test the effectiveness and
its performance. In our experiments, we considered four abstract and 27 related concrete services.
For each concrete cloud service, we have considered six QoS parameters in which four are positive
parameters (availability, reliability, throughput and reputation) and two are negative parameters (price,
response time) and their values are taken from QWS dataset (Al-Masri & Mahmoud, 2007). We have
used 20 different QoS preference weights on HPSO to test the efficiency and to show the superiority
over simple PSO. Those user preference vectors are shown in Table 2.
For each QoS preference vector, we have computed fitness value, execution time, error rate for the
simple PSO and the proposed HPSO as shown in Table 3. The second and third column presents the
optimal fitness values; the HPSO obtains a better fitness value in every user QoS preference vector.
The proposed HPSO achieves a decent execution time in most of the vectors, but in few preference
vectors there is a slight increase in execution time as shown in column four and five. The HPSO
obtains a minimal error rate over simple PSO in each and every user QoS preference vector as shown
in last two columns.
Therefore, we conclude that the HPSO algorithm outperforms the simple PSO under different
user QoS preference vectors in order to solve QoS aware services cloud service composition. The
proposed HPSO and simple PSO are coded on MATLAB R2014a using HP Pavilion dv6 laptop with
2.10 Ghz Intel core processor and 2GB RAM.

5.1. Feasibility
In order to evaluate the global searching capability of the proposed HPSO algorithm, three scenarios
are considered. In first scenario, the number of abstract services is four and number of concrete services
varies from 30 to 120 with an increment of 30. In second scenario, the fitness value is compared by
keeping the same number of iterations (1000) over different population size varies from 100 to 1000
with an increment of 100. In third scenario, by keeping the same number of population (100) over
different iteration size varies from 100 to 1000 with an increment of 100.

11
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

Table 2. QoS preference vectors

Vectors Weights (Wav, Wr, Wrt, Wpr, Wth, Wrep)


1 (0.09, 0.19, 0.15, 0.25, 0.17, 0.12)
2 (0.20, 0.30, 0.16, 0.21, 0.03, 0.07)
3 (0.24, 0.26, 0.08, 0.08, 0.03, 0.28)
4 (0.31, 0.07, 0.22, 0.08, 0.20, 0.09)
5 (0.12, 0.17, 0.10, 0.18, 0.20, 0.21)
6 (0.25, 0.00, 0.15, 0.23, 0.09, 0.25)
7 (0.28, 0.25, 0.04, 0.19, 0.11, 0.10)
8 (0.16, 0.21, 0.12, 0.23, 0.24, 0.00)
9 (0.26, 0.08, 0.17, 0.17, 0.20, 0.09)
10 (0.09, 0.34, 0.36, 0.09, 0.10, 0.00)
11 (0.09, 0.05, 0.01, 0.20, 0.30, 0.31)
12 (0.15, 0.06, 0.23, 0.15, 0.23, 0.16)
13 (0.03, 0.14, 0.18, 0.29, 0.13, 0.20)
14 (0.04, 0.27, 0.00, 0.30, 0.10, 0.25)
15 (0.20, 0.16, 0.10, 0.27, 0.13, 0.11)
16 (0.11, 0.20, 0.05, 0.17, 0.24, 0.20)
17 (0.11, 0.17, 0.05, 0.12, 0.23, 0.29)
18 (0.06, 0.19, 0.20, 0.22, 0.13, 0.18)
19 (0.43, 0.30, 0.04, 0.14, 0.01, 0.05)
20 (0.04, 0.02, 0.23, 0.04, 0.30, 0.34)

From Figures 4, 5 and 6 it is clear that the proposed HPSO algorithm outperforms the simple
PSO by achieving better fitness value in all three scenarios. In third scenario, the HPSO achieves
extremely better fitness value when the iteration size is greater than 500.

5.2. Efficiency
In order to evaluate the efficiency of the proposed HPSO algorithm, the three scenarios are considered.
In Figure 7, the proposed HPSO fails to achieve optimal execution time compared with the simple
PSO when the service scale is less than 60. However, when the service scale is more than 60, the
HPSO achieves optimal execution time than the simple PSO in which the abstract services are same.
In Figure 8, the execution time is compared by keeping the same number of iterations (1000)
over different population size varies from 100 to 1000 with increase of 100. The HPSO achieves
better execution time when the population size is less than 800. However, it falls back a little when
the population size is more than 800.
In Figure 9, the proposed HPSO achieves better execution time compared with simple PSO by
varying the iteration size from 100 to 1000 over the same population size of 100.

5.3. Stability
In order to know the stability of the proposed HPSO algorithm, we have used error function which
is the root mean square error (RMSE). The equation is as follows:

12
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

Table 3. Comparison results of HPSO and simple PSO for each user QoS preference vector. The experiments are conducted to
test the feasibility, efficiency, stability and then the results were compared with simple PSO algorithm.

Fitness Fitness Error


Execution Execution Error Rate
Vectors Value- Value Rate-
Time-PSO Time -HPSO -PSO
PSO -HPSO HPSO
1 1.8559 2.1236 66.662 65.125 0.0835 0.0621
2 2.5862 2.7892 70.233 68.212 0.0404 0.0213
3 2.5862 2.8461 64.539 67.641 0.0967 0.0751
4 2.6767 2.9843 65.483 66.215 0.1036 0.0531
5 1.8165 1.8961 58.579 60.212 0.1009 0.0968
6 1.8559 1.9364 63.857 62.715 0.1173 0.1021
7 1.8559 1.9364 71.254 73.617 0.0666 0.0421
8 1.8559 1.9764 80.824 78.519 0.0842 0.0622
9 1.8559 1.9764 61.789 62.614 0.0837 0.0621
10 1.2893 1.4762 68.793 66.321 0.0829 0.0732
11 2.5616 2.7652 60.317 59.432 0.1133 0.0967
12 2.5616 2.7652 60.829 59.312 0.0978 0.0765
13 2.6767 2.8136 74.122 75.296 0.0831 0.0619
14 1.8559 2.1436 76.823 78.145 0.1112 0.1012
15 1.8165 2.1436 69.869 67.416 0.0760 0.0541
16 1.8559 2.1436 62.036 60.912 0.1081 0.9712
17 1.8559 2.2163 62.827 60.956 0.1258 0.1110
18 1.8559 2.2163 69.458 67.432 0.1000 0.8761
19 2.5616 2.7142 69.946 66.154 0.0701 0.0621
20 1.8559 1.9856 71.247 69.213 0.1469 0.1132

(x − x)
2
n

RMSE = ∑ (12)
i

i=1
n

where x represents the user preferences of ‘n’ QoS parameters, x i represents the optimal QoS
weights of ith candidate service.
In Figure 10, the stability of the both algorithm are same when the service scale is less than 60.
However, with increase in abstract service the HPSO achieves minimal error rate than the simple
PSO algorithm. From Figure 11 and Figure 12, it is clear that the HPSO algorithm outperforms the
simple PSO in terms of achieving minimal error rate by varying the population and iteration size.

6. CONCLUSION

A hybrid optimization algorithm for QoS aware service composition is proposed using particle swarm
optimization (PSO) and fruit fly (FOA). The pareto optimal solution is determined to enhance the
convergence speed of the proposed HPSO method. The PSO performs global search process by which

13
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

Figure 4. Optimality comparison over different service scale

Figure 5. Optimality comparison over different population size and the same number of iterations

14
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

Figure 6. Optimality comparison over same population size and the different number of iterations

Figure 7. Execution time comparison over different service scale

15
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

Figure 8. Execution time comparison over different population size and the same number of iterations

Figure 9. Execution time comparison over same population size and the different number of iterations

16
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

Figure 10. Analysis of RMSE over different service scale

Figure 11. Analysis of RMSE over different population size and the same number of iterations

17
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

Figure 12. Analysis of RMSE over same population size and the different number of iterations

there is significant decrease in computation time. The FOA employs local search strategy to enhance
the convergence speed with good fitness value. The proposed HPSO is tested with 20 user preferences,
the experimental results shows that the HPSO performs better compared with simple PSO in terms of
fitness value, execution time and error value. In the future, we will apply our proposed method to other
three patterns by applying bio inspired optimization methods in order to achieve better performance.

18
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

REFERENCES

Al-Masri, E., & Mahmoud, Q. H. (2007, August). Qos-based discovery and ranking of web services. In Computer
Communications and Networks, 2007. ICCCN 2007. Proceedings of 16th International Conference on (pp. 529-
534). IEEE. doi:10.1109/ICCCN.2007.4317873
Alrifai, M., & Risse, T. (2009, April). Combining global optimization with local selection for efficient QoS-aware
service composition. In Proceedings of the 18th international conference on World wide web (pp. 881-890).
ACM. doi:10.1145/1526709.1526828
Bhushan, S. B., & Reddy, C. P. (2016a). A Four-Level Linear Discriminant Analysis Based Service Selection
in The Cloud Environment. International Journal of Technology., 7(5), 530–541. doi:10.14716/ijtech.v7i5.3546
Bhushan, S. B., & Reddy, P. (2016b). BB-LBA: Biogeography-based load balancing algorithm in multi cloud
domain. International Journal of Internet Protocol Technology, 9(2-3), 100–106. doi:10.1504/IJIPT.2016.079545
Canfora, G., Di Penta, M., Esposito, R., & Villani, M. L. (2005, June). An approach for QoS-aware service
composition based on genetic algorithms. In Proceedings of the 7th annual conference on Genetic and evolutionary
computation (pp. 1069-1075). ACM. doi:10.1145/1068009.1068189
Eberhart, R. C., & Kennedy, J. (1995, October). A new optimizer using particle swarm theory. In Proceedings
of the sixth international symposium on micro machine and human science (Vol. 1, pp. 39-43). Academic Press.
doi:10.1109/MHS.1995.494215
Estévez-Ayres, I., Basanta-Val, P., García-Valls, M., Fisteus, J. A., & Almeida, L. (2009). QoS-aware real-time
composition algorithms for service-based applications. IEEE Transactions on Industrial Informatics, 5(3),
278–288. doi:10.1109/TII.2009.2026422
Fethallah, H., Chikh, M. A., Mohammed, M., & Zineb, K. (2012, March). QoS-aware service selection based on
swarm particle optimization. In Information Technology and e-Services (ICITeS), 2012 International Conference
on (pp. 1-6). IEEE. doi:10.1109/ICITeS.2012.6216594
Gabrel, V., Manouvrier, M., Megdiche, I., & Murat, C. (2012, July). A new 0–1 linear program for QoS and
transactional-aware web service composition. In Computers and Communications (ISCC), 2012 IEEE Symposium
on (pp. 845-850). IEEE.
Huang, A. F., Lan, C. W., & Yang, S. J. (2009). An optimal QoS-based Web service selection scheme. Information
Sciences, 179(19), 3309–3322. doi:10.1016/j.ins.2009.05.018
Jiuxin, C., Xuesheng, S., Xiao, Z., Bo, L., & Bo, M. (2010, December). Efficient multi-objective services
selection algorithm based on particle swarm optimization. In Services Computing Conference (APSCC), 2010
IEEE Asia-Pacific (pp. 603-608). IEEE. doi:10.1109/APSCC.2010.75
Jula, A., Sundararajan, E., & Othman, Z. (2014). Cloud computing service composition: A systematic literature
review. Expert Systems with Applications, 41(8), 3809–3824. doi:10.1016/j.eswa.2013.12.017
Ko, J. M., Kim, C. O., & Kwon, I. H. (2008). Quality-of-service oriented web service composition algorithm
and planning architecture. Journal of Systems and Software, 81(11), 2079–2090. doi:10.1016/j.jss.2008.04.044
Liao, J., Liu, Y., Zhu, X., Xu, T., & Wang, J. (2011, December). Niching particle swarm optimization algorithm
for service composition. In Global Telecommunications Conference (GLOBECOM 2011) (pp. 1-6). IEEE.
Liu, M., Wang, M., Shen, W., Luo, N., & Yan, J. (2012b). A quality of service (QoS)-aware execution plan
selection approach for a service composition process. Future Generation Computer Systems, 28(7), 1080–1089.
doi:10.1016/j.future.2011.08.017
Liu, S., Xiong, G., Zhao, H., Dong, X., & Yao, J. (2012a, July). Service composition execution optimization
based on state transition matrix for cloud computing. In Intelligent Control and Automation (WCICA), 2012
10th World Congress on (pp. 4126-4131). IEEE. doi:10.1109/WCICA.2012.6359167
Liu, Y., Li, M., & Wang, Q. (2012c). A Novel User-Preference-Driven Service Selection Strategy in Cloud
Computing. International Journal of Advancements in Computing Technology, 4(21).
Ludwig, S. A. (2012, June). Clonal selection based genetic algorithm for workflow service selection. In 2012
IEEE Congress on Evolutionary Computation (pp. 1-7). IEEE. doi:10.1109/CEC.2012.6256465

19
International Journal of Web Services Research
Volume 15 • Issue 2 • April-June 2018

Luo, Y. S., Yang, K., Tang, Q., Zhang, J., & Xiong, B. (2012). A multi-criteria network-aware service
composition algorithm in wireless environments. Computer Communications, 35(15), 1882–1892. doi:10.1016/j.
comcom.2012.02.009
Moscato, P., & Cotta, C. (2003). A gentle introduction to memetic algorithms. In Handbook of metaheuristics
(pp. 105-144). Springer US. doi:10.1007/0-306-48056-5_5
Oh, S. C., Lee, D., & Kumara, S. R. (2008). Effective web service composition in diverse and large-scale service
networks. IEEE Transactions on Services Computing, 1(1), 15–32. doi:10.1109/TSC.2008.1
Torkashvan, M., & Haghighi, H. (2012, November). A greedy approach for service composition. In
Telecommunications (IST), 2012 Sixth International Symposium on (pp. 929-935). IEEE. doi:10.1109/
ISTEL.2012.6483119
Wang, S., Sun, Q., Zou, H., & Yang, F. (2013). Particle swarm optimization with skyline operator for fast
cloud-based web service composition. Mobile Networks and Applications, 18(1), 116–121. doi:10.1007/s11036-
012-0373-3
Yong, Z., Wei, L., Junzhou, L., & Xiao, Z. (2012, December). A novel two-phase approach for QoS-aware
service composition based on history records. In 2012 Fifth IEEE International Conference on Service-Oriented
Computing and Applications (SOCA) (pp. 1-8). IEEE.
Yu, Q., & Bouguettaya, A. (2013). Efficient service skyline computation for composite service selection. IEEE
Transactions on Knowledge and Data Engineering, 25(4), 776–789. doi:10.1109/TKDE.2011.268
Yu, T., Zhang, Y., & Lin, K. J. (2007). Efficient algorithms for Web services selection with end-to-end QoS
constraints. ACM Transactions on the Web, 1(1), 1–6. doi:10.1145/1232722.1232728
Zeng, L., Benatallah, B., Ngu, A. H., Dumas, M., Kalagnanam, J., & Chang, H. (2004). Qos-aware middleware
for web services composition. IEEE Transactions on Software Engineering, 30(5), 311–327. doi:10.1109/
TSE.2004.11

Zhou Chunjie, born in 1981, Ph.D., associate professor. Her research interests include data mining, internet of
things, cloud computing.

Dai Pengfei, born in 1981. His research interests include big data, internet of things, cloud computing.

Zhang Zhenxing, born in 1981, Ph.D., associate professor. His main research interests include machine learning,
pattern recognition, affective computing and signal processing.

20

You might also like