A Hybrid Artificial Bee Colony Algorithm for the Service Selection Problem
A Hybrid Artificial Bee Colony Algorithm for the Service Selection Problem
Changsheng Zhang and Bin Zhang
College of Information Science & Engineering, Northeastern University, Shenyang 110819, China
Received 14 June 2014; Revised 11 October 2014; Accepted 19 October 2014; Published 17 December 2014
Academic Editor: Beatrice Paternoster
Copyright © 2014 Changsheng Zhang and Bin Zhang. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Abstract
To tackle the QoS-based service selection problem, a hybrid artificial bee colony algorithm called -ABC is proposed, which incorporates the ant colony optimization mechanism into the artificial bee colony optimization process. In this algorithm, a skyline query process is used to filter the candidates related to each service class, which can greatly shrink the search space in case of not losing good candidates, and a flexible self-adaptive varying construct graph is designed to model the search space based on a clustering process. Then, based on this construct graph, different foraging strategies are designed for different groups of bees in the swarm. Finally, this approach is evaluated experimentally using different standard real datasets and synthetically generated datasets and compared with some recently proposed related service selection algorithms. It reveals very encouraging results in terms of the quality of solutions.
1. Introduction
With the proliferation of the cloud computing and software as a service (SaaS) concepts, more and more web services will be offered on the web at different levels of quality [1]. There may be multiple service providers competing to offer the same functionality with different quality of service. Quality of service (QoS) has become a central criterion for differentiating these competing service providers and plays a major role in determining the success or failure of the composed application. Therefore, a service level agreement (SLA) is often used as a contractual basis between service consumers and service providers on the expected QoS level. The QoS-based service selection problem aims at finding the best combination of web services that satisfies a set of end-to-end QoS constraints in order to fulfill a given SLA, which is an NP-hard problem [2].
This problem becomes especially important and challenging as the number of functionally equivalent services offered on the web at different QoS levels increases exponentially [3]. As the number of possible combinations can be very huge, based on the number of subtasks comprising the composite process and the number of alternative services for each subtask, using the proposed exact search algorithms [4, 5] to perform an exhaustive search to find the best combination that satisfies a certain composition level, SLA is impractical. So, the most researches are concentrated on heuristic-based algorithms especially the metaheuristic approaches aiming at finding near-optimal compositions. In [5], the authors propose heuristic algorithms that can be used to find a near-optimal solution more efficiently than exact solutions. The authors propose two models for the QoS-based service composition problem and introduce a heuristic for each model. In [6], a memetic algorithm is used for the service selection problem. In [7], the authors present a genetic algorithm for this problem, including the design of a special relation matrix coding scheme of chromosomes, evolution function of population, and population diversity handling with simulated annealing. In [8], a new cooperative evolution (coevolution) algorithm consists of stochastic particle swarm optimization (SPSO) and simulated annealing (SA) is presented to solve this problem. In [9], the basic principle of ACO is expounded and the service selection problem based on the QoS is transformed into the problem of finding the optimization path. In [10], a services composition graph is applied to model this problem and an extended ant colony system using a novel ant clone rule is applied to solve it. In [11], an algorithm named as multipheromone and dynamically updating ant colony optimization algorithm (MPDACO) are put forward to solve this problem which includes one global optimization process and a local optimizing process. But the performance of these existing service selection algorithms is not satisfying when the number of candidates becomes large. This is mainly because many redundant candidates exist. If they are not filtered beforehand, lots of search efforts will be wasted at running. Moreover, the used construction graphs of the existing ACO based service selection algorithms are static and their information granularities for this problem are too coarse, which make these algorithms excessively rely on their local search processes. Furthermore, as a novel metaheuristic approach, the artificial bee colony (ABC) algorithm is defined by Karaboga and Basturk [12], motivated by the intelligent foraging behavior of honey bees. It has been applied to solve many problems and obtained satisfying results [13]. But no research of its applications for service selection has been done.
To tackle these problems, a hybrid artificial bee colony algorithm called -ABC is proposed in this paper. In this algorithm, an unsupervised clustering process based on IS [14] algorithm is used for building a directed dynamic construct graph to guide the employed bees making exploration. A strategy inspired from the ants search mechanism of ACO is designed and used for the employed bees to forage, and an efficient greedy local search strategy is designed for the onlookers to make exploitation for the promising area identified by the obtained current global information. Then a self-adaptive reflecting process is used to adjust the construct graph based on the obtained local search information. To further improve the solving efficiency, a skyline query process based on the multicriteria dominance relationships [15] is used to filter the candidates of each service class, which can greatly shrink the search space without losing any good candidate. This approach is evaluated experimentally using different standard real datasets and synthetically generated datasets, and the best one is compared with some recently proposed service selection algorithms, DiGA [7], SPSO [8], MA [6], and MPDACO [11]. The computational results demonstrate the effectiveness of our approach in comparison to these algorithms. This paper is organized as follows. In Section 2, we give the definition of the QoS-based service selection problem and the basic artificial bee colony algorithm. The details of the hybrid artificial bee colony algorithm for service selection including search space representation and searching strategies are provided in Section 3. The evaluations of this approach incl (...truncated)