Adaptation of Bees Algorithm for QOS-based Selection
and Replacement of Web Services
Rim Teyeb Jaouachi
1
, Maher Ben Jemaa
1
and Achraf Karray
2
1
ReDCAD Research Unit, National School of Engineers of Sfax, University of Sfax, Sokra Street, Sfax, Tunisia
2
Department of Computer Science and Applied Mathematics, University of Sfax, Sokra Street, Sfax, Tunisia
Keywords:
Web Services, Quality of Service, Replacement, Bees Algorithm, Optimization.
Abstract:
Web service is a new paradigm of internet software and distributed computing. With the growth of web
services number, the capability to find the optimal service which can substitute the fault service from different
communities represents a very hard operation. The researched service must have the same functionalities of
the fault service and the highest quality of service scale. In this paper, we propose heuristic method based on
Bees Algorithm to find the optimal service which can substitute the fault service. In our approach, we design a
distributed environment based on Peer-to-Peer architecture in order to present distributed communities which
are considered as flowers and research requests as bees.
1 INTRODUCTION
Web services are used in various domains such as
business to business integration and web-based sys-
tems thats why the number of service webs consumer
is increasing. Therefore, the fault tolerance of web
services has become an active research domain in or-
der to make the use of this paradigm safe and improve
the performance and reability.
In the same context, we propose a method for pro-
viding fault tolerance in services oriented architec-
ture. Our approach focuses on building a distributed
architecture in which fails are detected automatically
and a suitable web service for substitution is found.
The selection of optimal service for substitution
represents a very hard operation because the large
space of solutions and multiple criteria of quality of
service are considered at once such as performance,
security, etc. Therefore, we propose the application of
heuristic method called Bees Algorithm to facilitate
research procedure of optimal service from a huge
number of web services grouped in communities.
This new technique is inspired from the way bees
forage the food and has been successfully applied to
various optimization domains and problems. This pa-
per is organized as fellow: the second section presents
web services; the third section shows the details of
our approach; in the firth section, we present the im-
plementation and the conclusion is a subject of last
section.
2 WEB SERVICES
2.1 Mechanisms of Discovered Web
Services
The discovery of the Web services represents the pro-
cess allowing the localization of the documents de-
scribing a service Web (WSDL file). However, with
the permanent increase in the number of the Web ser-
vices, the task of discovery becomes a difficult task.
To facilitate the discovery of the Web services,
several approaches were defined. These various ap-
proaches can be classified in two main categories:
discovered based on sequential algorithms and oth-
ers based on the heuristic ones. Among approaches
which tack part of the first type we found WSDA
(Hoschek, 2002), Speed-R (Vu et al., 2005), PSWSD
(Vu et al., 2005), LARKS(Sycara et al., 2002), OWL-
S(Srinivasan et al., 2004), AASUD (Palathingal and
Chandra, 2004), etc.). For the second type of algo-
rithm, we found the approach (Jaeger and Mhl, 2007)
which uses the genetic algorithm to select a Web ser-
vice element of a composition while taking into ac-
count the maximization of the service quality of the
obtained composition.
2.2 Community of Web Services
There are several services which have the same func-
459
Teyeb Jaouachi R., Ben Jemaa M. and Karray A..
Adaptation of Bees Algorithm for QOS-based Selection and Replacement of Web Services.
DOI: 10.5220/0004083804590462
In Proceedings of the 7th International Conference on Software Paradigm Trends (ICSOFT-2012), pages 459-462
ISBN: 978-989-8565-19-8
Copyright
c
2012 SCITEPRESS (Science and Technology Publications, Lda.)
tionalities. However, these services are distinguished
from/to each other by their non-functional proper-
ties such as the performance, the cost and the safety.
Thus, in order to facilitate the research of the adapted
Web service, the services are classified by categories
or fields from where approach containing community
(Ran, 2003).
The principal goal of the community of services
is to facilitate the research and the selection of the
Web services. A community is characterized by its
abstracted interface, its model of quality and the vari-
ous recorded Web.
Contrary to a directory UDDI, a community is
characterized by a specific field i.e. it gathers a whole
of services which are differed between them by the
non-functional properties. Thanks to a model of qual-
ity specific to each community, these parameters are
mentioned. A community is exposed through an ab-
stract interface which makes it possible to define the
interactions being able to begin with the community
services.
3 THE PROPOSED METHOD
Our purpose is to propose a new approach which opti-
mizes the time needed to replace the fault web service.
With growing and competing demands and invo-
cations, the probability of fault increase and the use
of fault tolerance mechanism become indispensable.
So that, we build a new architecture based on com-
munities of web services. To find the optimal service
which can substitute the fault one, we use the Bees
Algorithm as an intelligent way of research.
3.1 Architecture
Our architecture consists of:
A Layer for Semantic Clustering Web Services in
Community. Each community has a description
file which indicates its business.
A Supervision Module. This component controls
the quality of service offered by different web ser-
vices in execution. If this level is below a cer-
tain value, it will invocate a module to choose an
equivalent service for substitution.
A Substitution Module. This module is triggered
after a fault detection of a web service. It ensures
the selection of a web service offering the same
functionalities offered by the failed one and hav-
ing the highest level of quality of service.
So it is used, in the first place, to find the commu-
nity which has the same category with the failed
web service, and to choose between different ser-
vices web present in the community. The selec-
tion is based on quality of service.
A Cache of Equivalence. This cache saves the
web services and their Web services equivalent.
It can make the search procedure faster than that
performed by the substitution module if both (de-
fault web service, web service equivalent) exists
in the cache. Each couple in this table has a pe-
riod of validity. After the expiration of this period
the associate couple will be removed.
3.2 Adaptation of Bees Algorithm in
Substitution Module
When searching for an equivalent web service, the
substitution module should choose from a wide range
of services already developed. To reduce the research
area, and to find the desired web service, we will use a
new optimization technique called ”Bees Algorithm”.
3.2.1 The Bees Algorithm
As mentioned above, the Bees Algorithm represents
a new optimization algorithm proposed by Pham et al
(Pham et al., 2006). It is based on natural foraging
behavior of honey bees.
Due to its successful results in various domains
such as clustering problems, artificial neural network
training. This algorithm is considered as one of the
most important optimization algorithms.
3.2.2 Bees in Nature
The foraging process begins in a colony by sending
scout bees to search for flower patches. They move
randomly from one flower to another in order to ex-
ploit a large number of food sources. When they re-
turn to the hive, those scout bees deposed their nectar
then they evaluate the various plots visited and sort
them above certain quality threshold which can be
measured as a combination of some constituents such
as sugar.
They choose the (m) best patches and (e) top-rated
patches.
After this step, Scout bees perform a dance called
waggle dance.
This dance is essential for communication in the
colony. It provides three types of information: direc-
tion of a flower patch, distance from the hive and a
quality of nectar.
This information helps the colony to send its
bees to collect nectar without the use of guide or
ICSOFT2012-7thInternationalConferenceonSoftwareParadigmTrends
460
maps. More follower bees are sent to more promis-
ing patches in order to gather nectar efficiently and
quickly.
3.2.3 The Basic Bees Algorithm
Listing 1 shows the pseudo-code of this algorithm.
More details are described in (Pham et al., 2006). To
execute this algorithm, a number of parameters must
be initialize namely: number of scoot bees (n), num-
ber of sites selected out of n visited sites (m), number
of best sites out of n visited sites, number of patches
selected for neighborhood research (m), number of
bees recruited for (m-e) selected sites (nsp) and stop-
ping criterion.
The algorithm begins with placement of (n) scoot
bees, randomly, in the search space.
3.2.4 Proposed Method for Substitution Module
The proposed method adapts the efficacy of the Bees
Algorithm to optimize the research procedure. When
searching for an equivalent web service having the
same functionalities of failed web service, the sub-
stitution module should choose from a wide of web
services already developed.
To minimize research area and to find a desired
web service in the shortest period, we use this tech-
nique. We consider a bee as a web service query and
a community of web services as a patch.
Our proposed approach based on Bees Algorithm
consists of five steps.
Step1: random exploration. This step consists to
send search queries in parallel way to different
communities of web services. The choice of com-
munities at this stage is randomly.
Step2: measure of similarity. In step 2, the algo-
rithm evaluates the degree of similarity between
business domain of failed service and visited com-
munities. Each community has a value of fitness
function which indicates the degree of semantic
similarity.
Step3 and step4: Sorting and selection of suitable
community. In step 3, visited communities are
sorted. according to similaritys degree collected
from the second step.
In step 4: A community having the highest degree
of similarity is selected as elite community.
Step5: Exploration of elite communitys neighbor-
hood To explore the neighborhood of elite com-
munity, the algorithm sends research queries to
community selected in step 4.
Obtaining maximal similarity between two areas
of interests: area of fault web service and the selected
community represent the stopping criterion.
4 IMPLEMENTATION
In order to implement our approach different tools are
used.
4.1 JXTA Platform
JXTA (Vogel et al., 1995) is a project developed by
Sun for the Peer-to-Peer (P2P). It used to facilitate
the exchanges between peers on a network.
This platform offers several services such as:
Dynamic search.
Resource sharing (documents, files...).
Creation of peers groups.
Communication in a protected way.
Collaboration with other applications.
Etc.
Based on standards such as TCP/IP, HTTP and
XML, JXTA is independent of any programming lan-
guage, of any protocol of transport and any operat-
ing system. The choice of this platform is adequate
for implementing our distributed communities net-
work. Each community can be presented by a group
of JXTA peer. To present a distributed community
environment, we implement several peer groups, i.e.,
registry of education, sport, and travel.
4.2 WordNet
WordNet represents a semantic network of the lexical
data bases. Its goal is to index, classify and connect
the semantic contents and lexical of the English lan-
guage (complete version).
WordNet was also developed for other languages
like French (represents only 25
Synsets: when the direction of a word is defined
by a whole of the synonyms and a definition
Lexical Relations: when the direction of a word is
defined by a whole of the semantic relationships
to other directions (Example chien/caniche, etc)
4.3 WordNet: Similarity
WordNet: Similarity is free software which measures
the similarity between two terms. It uses three mea-
surements of semantic similarity and six measure-
ments of linguistic proximity
AdaptationofBeesAlgorithmforQOS-basedSelectionandReplacementofWebServices
461
Measurements of Linguistic Proximity of Word-
Net: is based on the analysis of the hierarchy
WordNet ” is a ” Several methods using this prin-
ciple of measurement such as measurements of
WuP (De la Rosa, 2004).
Measurements of Semantic Similarity of WordNet:
is not based only on the relation is a ” of Word-
Net, but they use other non hierarchical relations
Three Measurements of Semantic Similarity Of-
fered by WordNet: is: Vector (Leacock and
Chodorow, 1998) Hso (Patwardhan, 2003) Lesk
(Hirst and St-Onge, 1997).
These two tools are used in order to Measure the
similarity between business domains of failed web
service and visited communities.
5 CONCLUSIONS
In this paper, we adapted a new technique of opti-
mization called Bees Algorithm. This algorithm opti-
mizes web services discover and the selection of suit-
able web service which can substitute fault one.
In our approach, we implemented a peer to peer
environment in order to present distributed commu-
nities. Our method is based on two important steps.
The first step is to find a community having the
same/equivalent business domain of fault one with
minimization of research procedures time. The sec-
ond step is to calculate quality of services level for all
web services present in founded community and to se-
lect the best between them offered the highest score.
REFERENCES
De la Rosa, R. (2004). Dcouverte et Slection de Services
Web pour une application Mlusine. Master’s thesis,
Universit Joseph Fourier, Grenoble.
Hirst, G. and St-Onge, D. (1997). Lexical chains as repre-
sentations of context for the detection and correction
of malapropisms.
Hoschek, W. (2002). The web service discovery architec-
ture. In Proceedings of the 2002 ACM/IEEE confer-
ence on Supercomputing, Supercomputing ’02, pages
1–15, Los Alamitos, CA, USA. IEEE Computer Soci-
ety Press.
Jaeger, M. C. and Mhl, G. (2007). Qos-based selection of
services: The implementation of a genetic algorithm.
In In KiVS 2007 Workshop: Service-Oriented Archi-
tectures und ServiceOriented Computing (SOA/SOC),
pages 359–370.
Leacock, C. and Chodorow, M. (1998). Combining local
context and WordNet similarity for word sense identi-
fication, pages 305–332. In C. Fellbaum (Ed.), MIT
Press.
Palathingal, P. and Chandra, S. (2004). Agent approach for
service discovery and utilization. In Proceedings of
the 37th Annual Hawaii International Conference on
System Sciences (HICSS’04).
Patwardhan, S. (2003). Incorporating Dictionary and Cor-
pus Information into a Context Vector Measure of Se-
mantic Relatedness. Master’s thesis, University of
Minnesota, Duluth.
Pham, D. T., Ghanbarzadeh, A., Koc, E., Otri, S., and Zaidi,
M. (2006). The bees algorithm a novel tool for com-
plex optimisation problems. In Proceedings 2nd Vir-
tual International Conference on Intelligent Produc-
tion Machines and Systems IPROMS, pages 454–459.
Ran, S. (2003). A framework for discovering web services
with desired quality of services attributes. In ICWS,
pages 208–213.
Srinivasan, N., Paolucci, M., and Sycara, K. P. (2004). An
efficient algorithm for owl-s based semantic search in
uddi. In SWSWPC, pages 96–110.
Sycara, K., S, W., M, K., and Lu, J. (2002). Larks: Dynamic
matchmaking among heterogeneous software agents
in cyberspace. In in Cyberspace. Autonomous Agents
and Multi-Agent Systems, pages 173–203.
Vogel, A., Kerherv, B., von Bochmann, G., and Gecsei, J.
(1995). Distributed multimedia and qos: A survey.
IEEE Multimedia, 2:10–19.
Vu, L.-H., Hauswirth, M., and Aberer, K. (2005). To-
wards p2p-based semantic web service discovery with
qos support. In Business Process Management Work-
shops, pages 18–31.
ICSOFT2012-7thInternationalConferenceonSoftwareParadigmTrends
462