Abstract
In this paper, we introduce an extended version of artificial bee colony with a local search method (EABC) for solving the QoS uncertainty-aware web service composition (IQSC) problem, where the ambiguity of the QoS properties are represented using the interval-number model. At first, we formulate the addressed problem as an interval constrained single-objective optimization model. Then, we use the skyline operator to prune the redundant and dominated web services from their sets of functionally equivalent ones. Whereas, EABC is employed to solve the IQSC problem in a reduced search space more effectively and more efficiently. For the purpose of validation of the performance and the efficiency of the proposed approach, we present the experimental comparisons to an existing skyline-based PSO, an efficient discrete gbest-guided artificial bee colony and a recently provided Harris Hawks optimization with an elite evolutionary strategy algorithms on an interval extended version of the public QWS dataset.
Keywords
Introduction
As far as the Service Oriented Architecture (SOA) is concerned, any hardware or software resource can be easily provided as a web service to the end-users. However, with the increasing number of the web services, it offers the same functionalities but with different values in their nonfunctional properties, known by the Quality of Service (QoS) parameters such as response time, price, availability, …, etc. Therefore, selecting the best web services from their sets of functionally equivalent ones to build the best Composite Service (CS), which should satisfy the end-users’ local and global QoS requirements, becomes a challenging problem for both industrial and academic researchers [3, 29]. This addressed issue, known by the QoS-aware web service composition (QSC), is an NP-hard optimization problem, where many optimization methods including exact, heuristic and meta-heuristic web service composition approaches have been provided to unravel it [12].
From the systematic literature review of [12], most of the existing exact web services selection algorithms modeled the QSC problem as an integer/mixed-integer linear programming model [3, 4], where solvers such as LpSolve 1 and CPLEX 2 have been utilized to solve the modeled QSC. These solvers can get the optimal solutions of QSC, but they need the linearization of the QSC’s objective functions and constraints. Moreover, as the QSC scale increases, the efficiency of the exact web services selection algorithms decreases. Therefore, those based on the evolutionary and bio-inspired algorithms like Genetic Algorithm (GA) [7], Particle Swarm Optimization (PSO) [17], Artificial Bee Colony (ABC) [11, 25], Harris Hawks Optimization (HHO) [16] and so on, have drawn the attention of the QSC researchers. These algorithms can get near-optimal solutions within reasonable processing times and without any linearization of objective functions and users’ QoS constraints of the QSC problem.
All the above QSC studies consider the advertised QoS values as non-ambiguous, but in real-world environments and due to some unconditional factors of the SOAs such as the network topological changes and economic policies. Therefore, the QoS values of web services are uncertain in nature [21]. For this reason, some recent QoS-aware web service composition approaches have been proposed to solve the QSC problem under uncertain QoS parameters that have been modeled as interval numbers [13, 23], probabilistic variables [30] or fuzzy numbers [22, 27]. In the web services selection process of these approaches, all the provided web services are considered as potential candidates to construct the final CS solution. However, some of them are not possible candidates to build this final solution. Therefore, some existing studies [2, 28] have used the Skyline operator [6] to reduce the search space of QSC by pruning the web services that cannot be part of the final solutions, since they are dominated by some of their functionally equivalent web services partners. However, in all the aforementioned Skyline-based QSC studies, the QoS parameters are considered with precise and exact values. Hence, the motivation behind this work is to provide an efficient approach for solving the QoS uncertainty-aware web service composition in a reduced search space, where the main contributions of our study can be summarized as follows: We first propose an interval constrained single objective optimization model to the QoS uncertainty-aware web service composition, denoted as IQSC, where its QoS parameters are expressed as interval numbers; Then, to address the formulated IQSC, we propose an approach including two components. Finally, to demonstrate the performance and the efficiency of the proposed approach, we have compared it to the ones of references [11, 24], where the comparison experiments are performed on a new interval-valued based version of the public QWS dataset [1].
The remainder part of this paper is organized as follows. In Section 2, we review and summarize some relevant and notable works to ours. In Section 3, we give some mathematical operator definitions on interval numbers to be used throughout the rest of this study. In Section 4, we mathematically formulate the QoS uncertainty-aware web service composition under interval QoS properties, denoted by IQSC, as an interval constrained single-objective optimization model. To address the formulated IQSC, our proposed approach, which includes two components Skyline operator and EABC, is described with details in Section 5. Section 6 is devoted to discuss the comparison results of our experiments. Finally, our conclusion and future work are given in Section 7.
Related work
From the literature, the QSC has been addressed by two main categories of web service selection approaches, including
The exact optimization methods have modeled the QSC problem as an Integer Linear Programming (ILP) model [29] or a Mixed ILP (MILP) one [3, 4] and have solved it by using existing ILP/MILP solvers such as LpSolve and CPLEX. For the QSC problem instances with small search spaces, these methods yield good performance in terms of running time and solution quality of the obtained final CSs solutions. However, the computation time of these methods increases exponentially with the increasing number of the provided functionally equivalent web services. Moreover, the exact optimization approaches require the linearization of the QSC objective functions and the users’ global QoS constraints. Therefore, those based on evolutionary and bio-inspired optimization algorithms like GA [7], PSO [17], ABC [11, 25], and so on, have drawn the attention of the QSC researchers. Compared to the exact optimization methods that can obtain optimal CSs solutions, the meta-heuristic algorithms can get near-optimal ones, but with reasonable processing times and without any linearization of the objective functions and the users’ global QoS constraints of the QSC problem.
To improve the efficiency of the QSC optimization approaches, a representative mechanism named Skyline operator [6] has been employed to reduce the search space of the QSC problem. Hence, the computation time cost of these approaches is shortened. For instance, authors of [2] were the initiators that apply the Skyline operator to reduce the QSC search space where a new service dominance based on the QoS attributes of web services has been performed, among web services, to prune the dominated ones. In this study, the QSC problem was formulated as an ILP model and solved more efficiently using the existing LpSolve solver in a reduced search space. In [24], the corresponding authors proposed a fast cloud-based web service composition approach, which prunes the redundant and dominated candidate web services by an adopted Skyline operator and performs the PSO algorithm to find out a more powerful final CS solution. In [28], the authors have used the mathematical programming language (AMPL) [10] to formulate the QSC problem as a nonlinear integer programming model, which has been solved by the existing Bonmin 3 solver. In this study, and similar to the ones of [2] and [24], the Skyline operator has been employed to reduce the search space of the QSC problem.
However, all the above studies consider the advertised QoS values as non-ambiguous ones, which is fictional for dynamic SOA environments since some unconditional factors, like network topological changes and economic policies, render the QoS values uncertain in nature. Therefore, some researchers have formulated the QSC problem as a non-deterministic optimization model using interval numbers [13, 23], fuzzy numbers [22, 27], or probabilistic models [30].
Table 1 summarizes the aforementioned studies according to the QoS parameters representation model, the QSC mathematical formulation and its proposed solution approach, where, differently to most of the cited papers, we have represented the QoS uncertainty with the interval number model. Hence, the QSC problem is formulated as an interval constrained single-objective optimization one. The latter is solved by an extended artificial bee colony algorithm, while an interval-valued based version of the existing crisp Skyline operator is employed to reduce the search space of IQSC that will improve the efficiency of the provided algorithm.
Summary of some related QoS-aware service composition studies
Summary of some related QoS-aware service composition studies
Here in this section, we have introduced the following mathematical definitions related to the interval numbers that have been employed throughout the remainder part of this article.
Moreover, let A = [a l , a u ] and B = [b l , b u ] be any two interval numbers, the three possible overlapping types between A and B, as shown in Fig. 1, are used in the following definitions for ordering and ranking interval numbers of the maximization (minimization) optimization problems with objective functions modeled as interval numbers.

Types of overlapping between interval numbers [15].
For interval numbers of Type I or Type II, A > maxB if (a
l
> b
l
) and (a
u
> b
u
); For interval numbers of Type III, A > maxB if: (a
l
- b
l
) > (b
u
- a
u
); or ((a
l
- b
l
) = (b
u
- a
u
)) and (a
u
< b
u
)
For interval numbers of Type I or Type II, A < minB if (a
l
< b
l
) and (a
u
< b
u
); For interval numbers of Type III, A < minB if: (a
l
- b
l
) < (b
u
- a
u
); or ((a
l
- b
l
) = (b
u
- a
u
)) and (a
u
< b
u
)
A ≥ maxB ⇔ (A > maxB) or (A = B) A ≤ minB ⇔ (A < minB) or (A = B)
If A
q
≤ minA
j
for all j = 1, 2, …, m with j ≠ q then If A
p
≥ maxA
j
for all j = 1, 2, …, m with j ≠ p then
Let’s give a tremendous set of atomic web services, where each web service, denoted by ws, is characterized by two types of properties, functional and nonfunctional ones. The functional parameters (i.e., input and output attributes) of a ws are used to represent its supported functionality. Whereas, the nonfunctional properties (i.e. QoS attributes) of a ws, such as response time, availability, reputation, price, …, etc, represent its parameters quality. Each QoS attribute, denoted by q t with t = 1, 2, …, r and r is the number of the considered QoS parameters, can be either positive or negative parameter, where a ws with larger (lower) values in its positive q t s, the better (worse) is, whereas a ws with lower (larger) values in its negative q t s, the better (worse) is. Here in this study, the positive list of q t s is denoted by QoS+ and the negative one is represented by QoS-. For example, the reputation and availability attributes belong to the QoS+ list, whereas the price and response time parameters belong to the QoS- list. Furthermore, a web services class, denoted by S = {ws1, ws2, …, ws m }, is a set of m atomic web services that have similar functionalities but with different values in their q t s.
As seen in Fig. 2, which represents the graphic depiction of the QSC problem. For a given abstract composite service, denoted by ACS = {S1, S2, …, S
n
}, which represents the n needed web services classes to reply a user request, and a list of k user’s global QoS requirements, denoted by Cst
q
t
s with t = 1, 2, …, k and k ≤ r. A concrete composite service, denoted by CS that represents the user request response, is built by selecting from each web services class

Graphic depiction of the QoS-aware web service composition problem.

Connection structures between atomic web services.
Determine the best CS solution among all the possible ones
4
, which maximizes
Interval positive normalization
Interval negative normalization
Where the real limit values
Interval QoS aggregation formulas for evaluating the global QoS interval-valued of concrete composite services CSs
aIn the branch connection structure, according to the pr i s of ws i s, only one web service among them is executed. q1:Availability, q2:Throughput, q3:Response time and q4:Price
To solve the IQSC problem, we propose an approach including two components. The first one, which uses the Skyline operator [6], is employed to reduce the search space of IQSC by pruning the dominated candidate web services. The second component is to quickly find out the near-optimal solution of IQSC by performing an extended version of the basic ABC algorithm with an effective local search method, named EABC.
Skyline service
Our main goal in this study is to find a near-optimal CS solution for the IQSC problem that maximizes the interval utility value as defined in Equation 1 and satisfies the user’s overall QoS constraints as given in Equation 2. This near-optimal solution contains a set of atomic wss, where each one is selected from its related web services class. However, not all wss of each web services class are potential candidates to construct the final near-optimal solutions of IQSC. Hence, some existing studies [2, 28] have used the Skyline operator [6] to reduce the search space of QSC by pruning the wss that cannot take a place in the construction of their final solutions, since they are dominated by some of their functionally equivalent wss partners. However, in the whole aforesaid skyline-based studies, the QoS parameters are considered with precise and exact values. Therefore, we extend the crisp Service Dominance and Skyline Service definitions of [2, 28] to consider the QoS properties representation with the interval-number model, as give in the following.
To define the skyline service SkS of each web services class S, the skyline computation process performs pair-wise comparisons between the interval values ws q t s of the compared web services wss of S. This calculation process can be expensive in terms of evaluation time, especially, if S has a very large number of functionally equivalent wss. However, for the IQSC problem, the skyline service calculation is independent from any online user request [2]. Therefore, the skyline computation can be performed offline by any of the exiting efficient skyline algorithms [6]. Here in our study, to calculate each skyline service of IQSC, we have adapted the well-known non-dominated method of [9] through using the service dominance operator ≺ given in Definition 8. The pseudo-code of the interval non-dominated procedure for evaluating each skyline service SkS of its associated web services class S is presented in Algorithm 1.
1: SkS =∅
2:
3: N ws ← 0 N ws : is the number of web services in S dominating ws
4:
5:
6: N ws ← N ws + 1
7:
8:
9:
10: SkS ← SkS ∪ {ws}
11:
12:
Extended artificial bee colony: EABC
The ABC algorithm is a well-known bio-inspired optimization algorithm that mimics the smart work of honey bees to find out the near-optimal solution of an optimization problem [14]. It has been widely applied to solve the QSC problem for several service-based environments like service-oriented applications [25] and cloud computing [11]. Similar to the basic ABC algorithm, in order to find out the near-optimal CS solution of IQSC, denoted by CS
best
, EABC performs repetitively and successively three types of bees (Employees, Onlookers and Scouts) on each explored food sources area src
g
to find a new better one srcg+1 with g ∈ {0, 1, 2, …, MITR} and MITR is a maximum iteration number of the EABC algorithm. The initial food sources area of Z solutions {CS1, CS2, …, CS
Z
} with their initial positions

The flowchart of EABC.
Here, in this study, an n-dimensional array of integers is used to represent each food source position
The employee bees explore each current food sources area src
g
to find a new better one
After the definition of the new food sources positions
[R 1.] If
[R 1.1.] If
[R 1.2.] Otherwise, the old food source position
[R 2.] If
[R 3.] If
[R 4.] If
[R 4.1.] If the normalized global constraint violation of CS
z
by considering its new food source position
[R 4.2.] Otherwise, the old food source position
Normalized global constraint violation of an infeasible food source position Given any infeasible food source position, denoted by ICS, the constraint violation amounts of its violated user’s overall QoS requirements, denoted by
The onlooker bees select Z food sources positions from the discovered ones by the employee bees, i.e.,
Again,
Scouts work
Like the scouts work of the basic ABC algorithm, here, the scout bees of EABC are used to update one randomly-selected food source position from the discovered ones by the onlooker bees, i.e.,
Local search method
In order to enhance the quality of the final best CS solution (CS
best
). Therefore, for each new discovered food sources area srcg+1, a local search method is applied for its best food source position, represented by
[Step 1.] Select randomly an integer number j from the set {1, 2, …, n} that represents the selected skyline service SkS j form the n existing ones.
[Step 2.] Generate L different new food source positions
[Step 3.] Evaluate the interval utility values of the generated
Ending criterion of EABC
The aforesaid works of Employee, Onlooker and Scout bees as well as the incorporated local search method are repeated for each new discovered food sources area until the stopping criterion of the EABC algorithm is satisfied, i.e., the maximum iteration number MITR is reached. The best feasible food source position among the ones of the last discovered food sources area that has the highest interval utility value is the final near-optimal CS solution in solving IQSC by EABC.
Experiments
In order to validate the effectiveness of our proposed approach, we have used two comparison metrics:
Interval version of the public QWS dataset
In the comparison experiments, as the public QWS dataset [1] was published with 2507 atomic web services, where each web service has 09 non-ambiguous QoS values for 09 QoS properties including (1) Response Time, (2) Availability, (3) Throughput, (4) Successability, (5) Reliability, (6) Compliance, (7) Best Practices, (8) Latency and (9) Documentation. Therefore, an interval version of QWS, denoted by IQWS, is provided to be used in our experiments, where the QoS interval values of IQWS are generated via multiplying the precise QoS values of each considered QoS parameter of QWS by the random interval number [r1, r2] with r1 = 0.9 + 0.1 * rand (0, 1), r2 = 1.0 + 0.1 * rand (0, 1), and rand (0, 1) is a uniformly distributed random real number in the range [0, 1]. Since the QWS dataset dos not contain the web service price parameter, and as we said previously, only the availability (q1), throughput (q2), response time (q3) and service price (q4) attributes are considered to generate the IQWS dataset. Hence, the interval values of the IQSW’s web services in the price attribute have been randomly generated by r3 ⊗ [r1, r2] with r3 is a random generated real number from the range [2, 5]$. Moreover, the importance and priorities of the four considered QoS attributes were set to the same value, i.e,
Here, only two global QoS constraints Cst q 3 and Cst q 4 of the response time and price attributes are considered in solving IQSC by setting their severity factors μ q 3 and μ q 4 to 0.3 and 0.2, respectively, whereas, μ q 1 and μ q 2 of the availability and throughput properties are set to the zero values.
To investigate the performance and the efficiency of our proposed EABC, we have compared it to the one we obtained using the PSO algorithm with skyline operator [24], the proposed Discrete Gbest-guided Artificial Bee Colony (DGABC) approach in [11] and the improved Harris Hawks Optimization (HHO) algorithm by a developed Elite Evolutionary Strategy (EES) in [16] that has been named by its authors EESHHO. The compared approaches to ours (i.e., PSO, DGABC and EESHHO) were proposed to solve the QSC problem with non-ambiguous QoS parameters. Hence, we have adapted these approaches to support interval utility calculations of solutions as defined in Equation 1. To simplify things, the interval extended versions of the PSO-based approach [24], the DGABC [11] and the EESHHO [16] algorithms are named IPSO, IDGABC and IEESHHO, respectively. For the parameters setting of the compared algorithms, EABC, IPSO, IDGABC and IEESHHO share the same population size (Z = 40) and the same stopping criterion, which is the number of solutions evaluations that was set to 50000. However, for their appropriate parameters, the inertia weight (w) and the two accelerating coefficients (c1 and c2) of IPSO were set to w = 0.8 and c1 = c2 = 2.0, as they were recommended in their related reference [24]. The limit parameter for both EABC and IDGABC, which indicates the criterion to identify an abandoned food source position, was set to 80. Whereas, the L parameter of our EABC that represents the number of neighbor food source positions of the best solution in the EABC’s local search method was set to 3. Moreover, the control parameters E and sp of IEESHHO, which are used to switch between the exploration and exploitation phases, and controls the proportion of the best parental genes in EES, respectively, were set by Equations 15 and 16 as designed by the authors of EESHHO [16].
The aforementioned algorithms are performed to solve five abstract composite services
For each solved
Comparison results of the best interval utility values of the obtained near-optimal solutions by the compared approaches in solving each
The best interval utility values are in boldface.
Comparison results of the worst interval utility values of the obtained near-optimal solutions by the compared approaches in solving each
The best interval utility values are in boldface.
Comparison results of the average interval utility values of the obtained near-optimal solutions by the compared approaches in solving each
The best interval utility values are in boldface.
Comparison results of the interval variances of the obtained near-optimal solutions by the compared approaches in solving each
The best interval variances are in boldface.
In addition, as we can see from Fig. 5, which plots the average running times of the compared approaches to get their near-optimal solutions in solving the listed

The average running times of the compared algorithms in solving the
From this discussion, EABC outperforms the compared IPSO, IDGABC and IEESHHO algorithms in terms of final CS solutions optimality as-well-as efficiency, especially in solving users’ requests that need the composition of an important number of elementary web services.
In this subsection, to investigate the feasibility of the employed local search method (see Subscetion 5.2.5), the aforementioned
Comparison results of the best, worst and average interval utility values of the obtained near-optimal CSs solutions by the EABC and the basic ABC algorithms in solving each
of IQSC with n web services classes per m functionally equivalent web services
Comparison results of the best, worst and average interval utility values of the obtained near-optimal CSs solutions by the EABC and the basic ABC algorithms in solving each
The best interval utility values are in boldface.

The convergence of the EABC and the basic ABC algorithms to find-out their near optimal solutions in solving
In this study, the interval number, which is a simple and general uncertain model, is used to represent the ambiguity of the QoS values in solving the QoS uncertainty-aware web service composition problem. The latter is modeled as an interval constrained single-objective optimization (IQSC) model, while a new approach that combines two components: skyline operator and an extended artificial bee colony algorithm with a local search method (EABC), is introduced to address the formulated IQSC. The first component (skyline operator) is used to reduce the search space of IQSC by pruning the redundant and dominated web services from their sets of functionally equivalent ones. Whereas, the second component (EABC) is performed to find out more effectively and more efficiently, in a reduced search space, the near-optimal composite service of IQSC. The experimental results, which have been performed on an interval extended version of the public QWS dataset, of comparing our proposed approach to an existing skyline-based PSO, an efficient discrete gbest-guided artificial bee colony and a recently provided Harris Hawks optimization with an elite evolutionary strategy algorithms, demonstrate and validate the performance and the efficiency of our introduced approach.
In the IQSC mathematical model of this study, the well-known simple additive weighting method has been adapted to aggregate the multiple interval QoS values of composite services (i.e. multiple objective functions) into a single interval-valued (i.e. single objective function). Hence, the development of an efficient interval multi-objective version of the introduced ABC-based approach and evaluating it in real scenarios will be considered in future works. Moreover, we are planning to solve the QoS uncertainty-aware web service composition problem for the Internet of Things, and Cloud and Fog computing environments that consider more specialized QoS parameters under context-aware information such as geographical location of both users and provided web services.
