A Web Service Discovery Approach Based on Hybrid Negotiation
Raja Bellakhal
1
, Walid Chainbi
2
and Khaled Ghédira
1
1
Higher Institute of Business, University of Tunis, Tunis, Tunisia
2
National Engineering School of Sousse, University of Sousse, Sousse, Tunisia
Keywords: Web Service Discovery, Negotiation, Quality of Service (QoS), Multi-Agent-Systems (MAS).
Abstract: An effective discovery system must be able to retrieve services responding to the users’ specific preferences
in a changing and dynamic environment. Actually, the existing discovery systems have three problems.
Firstly, some of them fail to find Web services providing the same QoS as defined in their related
description files, since the QoS data are considered as static. Secondly, the discovery systems based on
negotiation lack the accuracy in simulating similarly the real humans’ interactions. Thirdly, the negotiation
based approaches implemented to discover services are static and do not consider contexts as well as
characteristics of each provider. These shortcomings affect negatively the systems performance and
usability. Consequently, the quality of the returned services as well as the systems’ reputation will be
deteriorated. In this paper, we propose an hybrid discovery approach based on negotiation that solve these
drawbacks. We argue that our approach enhances the discovery system performance and usability by
implementing a negotiation process that is closer to humans’ interactions. Moreover, by considering the
existing dependencies between the concurrent negotiations, the discovery process will be more efficient.
Unlike previous work, the negotiation process is dynamic by taking into account the provider’s context and
reputation.
1 INTRODUCTION
The Web is no longer a simple way to access
information, its evolution makes it also a provider of
services. Web Services refers to applications
exposed by providers over the Web. They provide a
standard means of interoperating between different
software applications, running on a variety of
platforms and/or frameworks. Service discovery is
the process of locating Web service, and retrieving
Web services descriptions that have been previously
published (Bromuri et al., 2009). Often Web
services operate in a rapidly changing environment.
Consequently, their QoS parameters change quite
frequently, either due to the external (e.g., the
variance on the service demand, server outages, the
congestion at the router (Bannock Consulting,
2000)) or the internal (e.g., poor upstream
connectivity (Kouki et al., 2013), the changes of the
providers’ preferences (Bannock Consulting, 2000))
environment changes. In most studies dealing with
the discovery task, QoS parameters are considered
as static (Ran, 2003), (Zhou and Chen, 2005),
(Lakhal and Chainbi, 2012). Therefore, the non-
functional features of the returned services will not
be the actual ones that reflect the service
functioning. Some studies have tried to find
solutions for the static QoS parameters problem
(Chen et al., 2010), (Zhou and Chen, 2009), (Platzer
et al., 2007). These solutions use respectively
statistics (e.g., the sampling method (Zhou and
Chen, 2009)) and networks (e.g., sniffing, probing,
and interceptors (Platzer et al., 2007)) based
methods. These technologies need over resources
utilization as well as huge computational and
statistical efforts. Recently, other works adopting the
negotiation approach in order to dynamize the QoS
parameters appeared (Bentahar et al., 2008), (Napoli
et al., 2013). The adoption of negotiation while
discovering the best service has also several benefits
including the discovery time optimization, the
resolution of conflicts between the providers’ and
clients’ preferences, and the improvement of the
success rate. However, the main weakness of these
solutions is related to the difference between
humans’ behaviors during their interactions and
those of agents during the systems functioning.
These systems do not simulate some common
315
Bellakhal R., Chainbi W. and Ghédira K..
A Web Service Discovery Approach Based on Hybrid Negotiation.
DOI: 10.5220/0004940803150322
In Proceedings of the 4th International Conference on Cloud Computing and Services Science (CLOSER-2014), pages 315-322
ISBN: 978-989-758-019-2
Copyright
c
2014 SCITEPRESS (Science and Technology Publications, Lda.)
negotiators’ behaviors observed during their real life
interactions. Simulating these details about
negotiators’ behaviors will positively impact the
system’s performance and outputs. During real life
negotiation, each client uses his/her experience,
competences, and knowledge to negotiate differently
his/her goals. Also, negotiators make continuously
new offers and give explanations about the reasons
of choosing such offers. In our approach, negotiators
will generate offers, give explanations and behave
differently. Additionally, in these systems the
negotiation strategies are static. These strategies are
used by all providers without caring about the
specific context and characteristics of each one of
them. Also the consideration of dependencies
between the different negotiation processes is
missed. These dependencies are the cooperation
relations existing between the different client’s
instances. These instances exchange information
about the providers’ offers and use them to propose
more attractive offers. Considering these
dependencies make more efficient the overall
negotiation process. The objective of this paper is to
present a discovery approach based on an hybrid and
a dynamic negotiation process. Given that they are
software components that have autonomous
behavior and that try continuously to meet their own
objectives, by taking into account their resources,
skills and perceptions, agents are suitable entities to
be adopted for the simulation of both users’ and the
providers’ behaviors during their interactions
(Chaib-draa et al., 2001).
The reminder of this paper is organized as
follows. In the second section, we review the
existing discovery approaches, and we outline their
main characteristics as well as their drawbacks. In
the third section, we highlight the main contributions
brought by our approach. A buying-selling case
study that illustrates our approach is presented in the
last section. Finally, we summarize our work and we
give hints concerning our future work.
2 RELATED WORK
Two types of discovery approaches have been
proposed to solve the static QoS parameters
problem, namely, the discovery approaches that are
network as well as statistical based methods, and
those that are adopting the negotiation. Compared to
researches dealing with the first type of approaches,
the negotiation based works are fewer.
2.1 Approaches based on Network and
Statistical Methods
In (Al-Masri and Mahmoud, 2009) a WSB (Web
Service Broker) is used to update the QoS
parameters values. More especially, a WSCE (Web
Service Crawler Engine) is used to collect
dynamically the updated QoS data. In (Julie and
Kumar, 2012), a collaborative filtering approach that
predicts automatically the QoS parameters values is
adopted. An important drawback related to this work
is that there are no large-scale real-world Web
service QoS data sets available for studying the
prediction accuracy. In (Zhou and Chen, 2009) the
data related to the users’ and the providers’
feedbacks are gathered and then processed according
to a set of statistical methods. The drawback of
approaches which consider the users’ and the
providers’ feedbacks is related to the big statistical
efforts computations. Other works use statistical
methods to estimate values of the QoS parameters
before the reception of feedbacks (Thio and
Karunasekera, 2005). In these approaches, the most
statistical jobs are executed when original data is
received in the service registry. Consequently, this
will take up many other hardware resources of the
service registry (Zhou and Chen, 2009). In (Chen et
al., 2010), the authors present a model for the
management and the discovery of services based on
two dynamic QoS parameters, namely the response
time and the execution time. The monitor that acts as
an interceptor during each service invocation is
used. Most of the existing works enabling the
dynamicity of the QoS data that are discussed above
are suffering from general drawbacks. Many of these
approaches are restricted in the sense that they can’t
handle the dynamicity of some QoS parameters
types including the service’s cost and the service’s
price. These parameters are of a paramount interest
in the cloud computing field, and should be
considered as dynamic during the discovery process.
Additionally, some of the presented approaches
using statistical methods require over resources
utilization as well as huge computational efforts.
Moreover, since some systems use the gathered
information during the service invocation to keep
up-to-date, then in the case where a service is not
invoked periodically, its related non-functional
parameters can’t reflect the actual service’s
performance.
2.2 Approaches Based on Negotiation
Bentahar et al., adopt in the context of the
CLOSER2014-4thInternationalConferenceonCloudComputingandServicesScience
316
communities’ construction, an argumentation based
approach (Bentahar et al., 2008). The selection of
the best service is done in terms of functionality and
QoS (i.e., response time, availability, throughput,
reliability, etc.). Agents use knowledge, beliefs, and
argumentation capabilities to reason. A persuasive
negotiation protocol composed of different dialogue
game was used. A dialogue game is the set of moves
that are made during the negotiation. This work
adopts only one model of negotiation and the
complexity of the used protocol depends on the size
of the agents’ knowledge bases. A negotiation
approach that adopts a coordinator between the
different Web services based on the MAIS
(Multichannel Adaptive Information Systems)
architecture is presented in (Comuzzi and Pernici,
2005). The negotiation capabilities related to each
provider are presented as policies in the service
specification. Services involved in the negotiation
are selected, and then one auction based strategy is
chosen from the different auction models and
applied between these services. In this work, only
one negotiation model is used and the implemented
system is not based on the agent technology. The
work presented by Napoli et al., is close to our work,
since it deals with the static QoS parameters
problem (Napoli et al., 2013). However, unlike our
work, the generation of offer related to the QoS
parameters is permitted only in the provider’s side,
the user has only the role of evaluating offers. In this
work, the standard contract net protocol and a
unique negotiation model are adopted. The paper
presented by Siala and Ghédira use a variant of the
contract-net protocol, called the directed contract-net
protocol that has the effect of decreasing the number
of the negotiation rounds comparing to the standard
Contract-Net while composing services. A
coordinator supervising the different negotiations is
used. Dependencies between the different
negotiations strategies are not considered in this
work (Siala and Ghédira, 2011). Bromuri et al.,
present a decentralized multi-agent system that
adopts an argumentation based strategy to find the
best service. In this work, the best service is firstly
selected among a set of the available services, then a
negotiation session is started with the chosen service
in order to achieve an agreement about the required
QoS parameters. This strategy restricts the client’s
chances to find the best offer since he/she negotiates
his/her preference with only one provider, while
other providers can have more interesting offers
(Bromuri et al., 2009).
3 THE HYBRID NEGOTIATION
APPROACH CONTRIBUTIONS
Given the promising solutions brought by
negotiation, recent discovery approaches based on
negotiation models arise. A set of these works have
been already presented in the related work section.
These works have three common problems. Firstly,
the negotiation systems presented by these works
lack the realism in simulating perfectly the real
human interactions and behaviors during the
negotiation process. In fact, only a unique
negotiation strategy based on one negotiation model
is adopted for simulating providers’ and clients’
behaviors. In real life each client and provider has
his/her own strategy to negotiate. In these works, all
negotiators are obliged to follow the same strategy
in order to reach their different goals. In this paper,
our aim is to relax this assumption by introducing a
system which applies more than one strategy based
on different negotiation models. In our work, we
adopt the argumentative and the heuristic models.
The formal description of the adopted strategies is
out of the scope of this paper, since our main interest
is to present our discovery process based on hybrid
negotiation. Secondly, all these works assume that
the negotiation process is static i.e., once the
negotiation strategy is defined by developers it will
be applied similarly with all providers without
considering their different context and/or
characteristics. Finally, dependencies between the
different negotiations are missed. Each bilateral
negotiation involved in the whole negotiation
process is conducted regardless to other processes
which result in longer negotiation process and sub-
optimal offers. In our study, we solve these
problems by considering three main contributions.
The first contribution is to make more realistic the
negotiation process by simulating some details
observed during the real humans’ interactions. The
second contribution is to make dynamic the
negotiation process. The final contribution is to
consider dependencies between the concurrent
bilateral negotiations.
3.1 The Simulation of the Real
Humans’ Interactions
The simulation of humans’ interactions implies the
creation of an artificial world of agents that are in
interaction and that have humans’ capabilities to
interact with their environment and to react
according to their own perception, goals, and beliefs.
AWebServiceDiscoveryApproachBasedonHybridNegotiation
317
Since systems are substituting the real human
interactions, they have to be as much as possible
close to the humans’ behaviors as well as to their
strategies during the negotiation. The second feature
observed in human interactions, but that is missed in
the current systems dealing with the discovery of the
best service is the exchange of explanations between
the different parties. In our work, we solve conflicts
among negotiators by enabling the two parties to
exchange explanations through arguments. In works
dealing with the service discovery based on
argumentative based models the explanatory role is
not yet studied. The third feature characterizing the
real human interactions that is missed in some of the
existing works is related to the providers’ and
clients’ role in generating offers. Information about
the opponent’s offers is used to propose more
attractive offers during the next negotiation rounds.
3.1.1 An Hybrid Strategy
During their daily real business interactions, sellers
and buyers are using different strategies to convince
each others about their offers and preferences. Each
negotiator has his/her own way to convince his/her
opponent and to generate offers. Obliging all
providers and all clients to adopt the same strategy is
not possible since some of them haven’t essential
information and backgrounds to use systems based
on some kind of negotiation models. For example, if
the negotiation system implements an experience
based strategy, users who haven’t yet experience and
who want to purchase the service for the first time,
will find problems in using this system. Also other
models such as the argumentation based model
require a predefined set of knowledge and
arguments. However, sometimes users aren’t able to
formulate readily suitable arguments to convince
their opponents and to express fluently all their
preferences. Implementing different strategies will
improve the discovery system usability level.
Usability is defined by three features namely, the
system’s effectiveness, the system’s efficiency, and
the user’s satisfaction (Frøkjær et al., 2000).
Effectiveness is related to how much the system is
able to respond the users’ requests. Satisfaction is
related to the comfort and subjective user’s
evaluation of the interaction. The efficiency is
related to how the system is able to achieve the best
result with less effort and the minimum time. A
system qualified by a high usability level is better
suited to be consumed by different types of users.
Along with such a system, users having different
requirements are more luckily to find the
functionalities and the conditions helping them to
discover their services. Consequently, the reputation
of the discovery system will be improved. When
adopting different strategies we try to balance
between the cost and the effectiveness. The
argumentative model is powerful enough to achieve
an agreement but it’s costly in terms of consumed
resources and complexity. While a less powerful
model such as the heuristic model can improve the
complexity and decrease the chances to achieve an
agreement. Moreover, contexts and attitudes of each
provider are different, so it’s difficult to apply the
same strategy with all providers. The client has to
collect information about the provider’s attitude and
accordingly he/she must choose the adequate
strategy that complies with the providers’
characteristics.
3.1.2 The Role of Clients and Providers in
Giving Explanations
The provider’s role in bringing explanation for users
about some aspects that may be not obvious for
them is missed within the existing discovery
approaches. This is possible with the negotiation via
the adoption of the explanatory arguments. For
example, the client can ask the provider if it’s
possible to have a discount or a higher service
availability level. Also he/she can inquire further
details about the service functionalities and about
the reason of uttering a given offer. Within the
negotiation mechanism, the provider is able to
respond to such requests and to give additional
explanations. In works adopting the argument based
models in order to select the best service, other
types of arguments are used, including rewards and
threats. These arguments have the effect of inducing
and convincing negotiators rather than giving
explanations. In the case of an explanatory argument
about the last offer, the opponent examines firstly
the argument and accordingly he/she can decide if
he/she will accept or refuse it. If the opponent’s
beliefs and preferences comply with the explanatory
argument then he/she will accept it. Otherwise, this
explanation will be used by the opponent during the
building of his/her next offers. The opponent will
have an idea about the proponent’s preferences and
beliefs, and accordingly he/she can formulate more
attractive offers to him/her. Explanatory arguments
have the role of resolving conflicts among the
negotiators’ preferences. Clients and providers use
them to explain the reason of refusing the
opponent’s offer. This information will be then
retained by the opponent and used to exchange more
CLOSER2014-4thInternationalConferenceonCloudComputingandServicesScience
318
attractive offers. This will make faster the discovery
process and helps to resolve gradually conflicts.
Also, the quality of the last offer will be improved,
since it will be the result of exchanging more
attractive proposals.
3.1.3 The Role of Clients and Providers in
Generating Offers
In some existing works, the provider has the role of
generating offers, while the user has only to evaluate
offers (Napoli et al., 2013). In our work, users and
providers generate and evaluate offers. Our main
interest is satisfying the users’ goals. To do so, users
must have their own strategies and tactics to
generate offers reflecting their preferences as is done
during the real human interactions. These proposals
will be used by providers as basis to the construction
of their next offers. Both parties must evaluate and
generate offers because this will make smarter and
faster the negotiation process. Evaluating only offers
doesn’t show the preferences of the negotiators,
rather it reveals only their positions. Thus, a rational
client respectively (provider) who wants to gain the
negotiation and to reach as faster as possible an
agreement must generate offers rather than
evaluating only the provider’s (the client’s) offers.
This will help both negotiators to construct faster an
idea about each other’s preferences, and then to
reach more rapidly an agreement.
3.2 The Dynamic Negotiation Process
Most of works dealing with the selection of the best
service by adopting a negotiation approach assume
that the negotiation process is static. In our work, we
make dynamic the negotiation process by selecting
the appropriate negotiation strategy to be adopted
with each provider. In fact, the choice of the best
strategy depends on different parameters including
the provider’s context, reputation, and preferences.
Before starting the negotiation, the system must
gather information about providers. Accordingly, the
best strategy to be adopted with these providers is
selected. For example, systems must have an idea
about the provider’s context such as, if the provider
is selling during a high or a sale season. In the latter
case, the provider is willing to make more
concession. Accordingly, the system can choose a
negotiation strategy that doesn’t need big efforts in
convincing the provider such as a heuristic based
strategy. However, if the provider is in a high season
which means that there is a big competition among
providers, then the system may choose a stronger
strategy such as an argument based strategy.
Reputation is also important. Reputation is
determined based on the attitude of the provider
during his/her past interactions. The system should
know if the provider is a stubborn negotiator or a
collaborative one. Accordingly the appropriate
negotiation strategy is adopted. Moreover, knowing
the provider preferences toward the values of the
QoS parameters can give us an idea about the
distance between the user’s offers and those of the
provider. This distance represents evidence about
how will be difficult the conversation with one
provider. If this distance is large, the client will find
difficulties to convince the provider. It will be easier
to convince each other if they have closer
preferences. In the first case, convincing the
provider will be a hard task; a negotiation strategy
based on strong arguments must be adopted.
However, in the second case, an experience or a
heuristic based model can sufficiently make the task.
By considering one of the latter information about
each provider, the best strategy that must be applied
with each provider is determined. Choosing the best
strategy that fits the provider’s profile, avoids for
example the adoption of less powerful negotiation
model with the more stubborn providers as well as a
heavy strategies with the less stubborn ones. In the
first case, we are increasing the chance of achieving
an agreement. However, in the second case we are
reducing the consumption of unnecessary resources.
3.3 The Dependency among the
Bilateral Negotiations
In the existing works, dependencies between the
different negotiations involved in the whole
negotiation process are not considered. In our work,
the relation between the concurrent bilateral
negotiation processes is ensured through an
intermediate party. During each negotiation round,
the intermediate party gathers information about
offers proposed by each provider from each client’s
delegate and communicates this information to other
client’s agent instances. In our work, we assume that
there is a competition between providers and also
cooperation relation between clients’ agent
delegates. Each provider’s aim is to present a more
attractive offer to the user. Each client’s agent is
able to be informed about other providers’ offers
through their correspondent clients’ agent instances.
The client’s agent will use this information to induce
the provider’s agent to make better offers than those
of its agent’s competitors. For example, if one of the
client’s agents knows that the other providers’
AWebServiceDiscoveryApproachBasedonHybridNegotiation
319
agents offered more attractive proposals, it will then
refuse the offer proposed by the provider’s agent
with which it is currently dealing. Also, it will
induce the provider to make more attractive offers.
Consequently the competition between providers
will be more intense. This competition will be in the
favour of the user and will accelerate the negotiation
process progression. Each provider will try to make
more interesting offers in order to get the deal. Thus,
providers and clients will exchange more and more
attractive offers until achieving an agreement. This
will speed up the negotiation process and scale down
distances between the negotiators’ preferences.
When the cooperation among clients’ instances and
the competition among providers are adopted
together, clients are luckiest to get at the end the best
offer.
4 A CASE STUDY
In this section, we give an example of a buying-
selling transaction that illustrates how the
negotiation protocols presented by Moschoyiannis et
al., (2009), and Venugopal et al., (2008) are applied.
We make some modification in these protocols to
show benefits of considering dependencies between
the bilateral negotiations. In future papers, we will
demonstrate through different types of experiments
the other contributions.
In this example, we consider that the client’s
agent aims is to benefit from a service with a low
price and high levels of availability, and reliability.
However, providers’ agents’ ambition is to have the
opposite.
4.1 the Protocols Description
In order to illustrate our hybrid approach, we use the
standard alternating-offers protocol and also the
protocol presented by Moschoyiannis et al.. The
latter protocol is composed of a set of moves which
are respectively, m1:request(negotiation), m2:refuse
(negotiation), m3: accept(negotiation), m4: offer(x),
m5: accept(x), m6: refuse(x), m7: challenge(x), m8:
argue(x), m9: withdraw(x). It specifies also when a
particular move is made in the course of a
negotiation dialogue by defining the pre-condition
and the post-condition of each move. For instance,
the move challenge can be uttered if only there is
beforehand an offer move. The post-condition of the
challenge move is to utter an argue message or a
withdraw message. We extend this protocol to make
possible the proposal of more than one message at
once. For example, for the message m4 we can reply
by an m7 and m4 messages, instead of m7 only.
Also we enable the utterance of an offer move after
an argue move. Also, we make changes in order to
adapt the protocol to the negotiation over the QoS
parameters rather than it is presented in the context
of the resource allocation. In the following, we
denote by A1 the first client’s delegate agent, and by
P1 its correspondent provider’s agent.
The standard alternating-offers is a bilateral
negotiation protocol. Negotiators exchange only
proposals, counter-proposals, accept and reject
messages. We denote by A2 the second client’s
delegate agent, and by P2 its correspondent
provider’s agent. Since the presented negotiation
protocols cover more than one potential alternative
scenario, we will be restricted to the more principal
negotiation scenario. Furthermore, we only describe
informally the proposals, arguments, and messages.
In this example, we keep static the availability and
the reliability parameters values and we focus only
on the price.
4.2 The Main Scenario
Step1
Negotiation 1
A1
m1:Request(negotiation)
Negotiation 2
A2
Offer (50 $, 0.8, 0.9)
Step2
Negotiation 1
P1
m3:Accept(negotiation)
Negotiation 2
P2
Counter-offer (59$, 0.8, 0.9)
Step3
Negotiation 1
A1
m4:Offer(50 $, 0.8, 09)
Negotiation 2
A2
Refuse(59 $, 0.8, 0.9)
Step4
Negotiation 1
P1
m7: challenge (50 $, 0.8, 0.9).
-Why do you proposed as price 50 $, as availability
0.8, and as reliability 0.9?
- What argument you can give to let me believing
about this offer?
m4:Offer (58$, 0.8, 0.9)
CLOSER2014-4thInternationalConferenceonCloudComputingandServicesScience
320
Negotiation 2
P2
Offer (58 $, 0.8, 0.9)
Step5
Negotiation 1
A1
m8:argue(I need it for a daily use. I would like to
have a high availability and reliability level with a
reasonable price).
Negotiation 2
A2
Counter-offer(54$, 0.8, 0.9)
Step6
Negotiation 1
P1
-IF the m8 complies with the P1’ goals then it will
accept the P1’ offer. And the process ends with an
agreement.
-ELSE, P1 refuses the A1’ offer. End of the process
without agreement. P1 can give a proposal.
m4: Offer (57 $, 0.8, 0.9)
Negotiation 2
P2
Offer (56 $, 0.8,0.9 )
Step7
Negotiation 1
A1
m7: challenge (57 $, 0.8, 0.9)
-Why do you proposed as price 57 $, as availability
0.8, and as reliability 0.9?
Negotiation 2
A2
Accept(56 $, 0.8,0.9)
Step8
Negotiation 1
P1
m8: argue ({If you accept this proposal, you will
have a discount}).
Step9
Negotiation 1
A1
m4: Offer (55 $, 0.8, 0.9)
Step10
Negotiation 1
P1
m5:Accept (55$, 0.8, 0.9).
In step1, the agent A1 makes a request move.
Simultaneously, the client’s agent A2 makes an
initial offer. In the second step, P1’s agent accepts
the A1’s request, and the negotiation starts. In the
second bilateral negotiation, agent P2 doesn’t agree
with the A2’s offer and makes a counter-offer. In
step 3, the A1’s agent generates an offer according
to its preferences and beliefs. In parallel, A2 refuses
the last offer of P2. In step 4, P1 makes a challenge
move, and it proposes a first offer. In parallel, P2
proposes a cheaper price than that it offered in the
previous step. In step 5, A1 sends to P1 an
explanatory argument in which it explains its reason
of making such an offer. Indeed, the client’s agent
wants to have a high availability and reliability
levels in addition to a low price since the client will
consume daily the service. This explanatory
argument helps provider’s agent to change its
anterior beliefs to be more flexible and closer to the
client’s preferences. In fact, closer the agents’
preferences, the least conflicts are. In the second
negotiation, the A2’s agent makes a concession and
proposes 54 $ as a price. In step 6, the intermediate
party’s agent gathers information about the last
providers’ offers and communicates them to the
other clients’ delegates. Each delegate, during each
round must inform its opponent’s agent about this
information and induce it to make more interesting
offers. It also tells its opponent about the offers that
were refused by the other client’s agents. According
to its policies and strategies, each provider’s agent
decides which offer to propose. For example, in the
step6, P2 proposes as a price 56$ which is lower
than 58$, proposed by P1 during the step4. It’s a
time lost for the provider’s agent to propose an offer
that is less pertinent to the client. By knowing the
offers refused by the other clients’ instances, the
provider’s agent can understand better the client’s
preferences. Consequently, it can propose more
interesting offers. For example in the step4, P1
avoids to offer as a price 59 $, since this proposal
was refused by the other client’s agent in the step3.
The consideration of the relation between the two
bilateral negotiations makes faster the achievement
of an agreement. In step 7, A1 makes a challenge
move. In parallel A2 accepts the P2’s offer, and the
second negotiation process ends. In step 8, P1 makes
a reward argument in which it promises A1 a
discount if it accepts the offer. According to its
goals, A1 can either accept or refuse this argument.
If it accepts the argument, then an agreement is
achieved, and the client will have a discount. In step
9, A1 doesn’t accept the P1’s argument, and it
proposes 55$ as a price. In step 10, P1 examines the
A1’s last offer and according to its preferences and
beliefs it decides if it will accept, refuse the offer or
make a withdraw move. In our case, P1 accepts the
A1’s offer, and an agreement is achieved. Between
the two final offers, the coordinator’s agent will
choose the one which decrease the price, which is in
this case the P1’s offer.
AWebServiceDiscoveryApproachBasedonHybridNegotiation
321
5 CONCLUSION
Changes on the Web service environment and on
users’ requirements have led to new works having as
goal the establishment of discovery systems that can
respond to users’ requests and assure the credibility
of results. In this context, several approaches have
been applied including the negotiation which leads
to significant results related mainly to the
improvement of the success rate and the
optimization of the search time. In this paper, we
have introduced new aspects which are missed in
these approaches. The first aspect is related to the
consideration of the real life negotiation
characteristics during the simulation. These
characteristics are the use of different negotiation
strategies during interactions, the exchange of
explanations between negotiators, and the role of
clients and providers in generating offers. The
adoption of an hybrid strategy makes the discovery
system more realistic and oriented to the largest
number of users. The second contribution is to make
dynamic the negotiation process. This has the effect
of making the negotiation more efficient by
choosing for each provider the most suitable
negotiation strategy that fits his/her reputation,
preferences and context. The third contribution is the
consideration of dependencies among the concurrent
negotiations. This will impact the quality of the final
offer which will be also the result of the competition
between providers. Moreover, this will make faster
the discovery process since the client will avoid the
evaluation of offers that weren’t accepted by other
clients’ instances during the past rounds. Also the
providers will avoid proposing offers that were
refused by the other clients’ instances during the
previous rounds. Our future work, will be devoted
initially to the presentation of a formal definition of
our negotiation approach and secondly for the
development and the experimentation of our system.
REFERENCES
Bannock Consulting, 2000. Quality of Service Parameters
for Internet Service Provision, European Commission,
DG Information Society.
Frøkjær E., Hertzum M., and Hornbæk K., 2000.
Measuring usability: are effectiveness, efficiency, and
satisfaction really correlated, In Proc. CHI,
Washington.
Chaib-draa B., Jarras I., and Moulin B., Chaib-draa B.,
2001. Systèmes multiagents: Principes généraux et
applications, In: Agent et Systèmes Multi-Agents,
Hermès, Paris.
Ran S. P., 2003. A Model for Web Services Discovery
with QoS, SIGecom Exchange.
Thio N., and Karunasekera S., 2005. Automatic
Measurement of a QoS Metric for Web Service
Recommendation, the 2005 ASEC.
Comuzzi M. and Pernici B., 2005. An Architecture for
Flexible Web Service QoS Negotiation, EDOC 2005.
Zhou C. and Chen H., 2005. An Objective and Automatic
Feedback Model for Qos Evaluation, ICIS '09
Proceedings of the 2nd ICIS, ACM New York.
Platzer C., Rosenberg F., and Dustdar S., 2007. Enhancing
Web Service Discovery and Monitoring with Quality
of Service Information, In: Securing Web Services:
Practical Usage of Standards and Specifications, Idea
Publishing Inc.
Bentahar J., Maamar Z., Wan W., Benslimane D., Thiran
P., and Subramanian S., 2008. Agent-based
communities of Web services: An argumentation-
driven approach, Service Oriented Comput. Appl., vol.
2, no. 4, pp. 219–238.
Venugopal S., Chu X., and Buyya R., 2008. A Negotiation
Mechanism for Advance Resource Reservation using
the Alternate Offers Protocol. Proceedings of the
(IWQoS 2008).
Zhou C., and Chen H., 2009. An Objective and Automatic
Feedback Model for Qos Evaluation, ICIS '09
Proceedings of the 2nd ICIS.
Al-Masri E., and Mahmoud Q. H., 2009. A Broker for
Universal Access to Web Services. 2009 Seventh
Annual Communications Networks and Services
Research Conference.
Bromuri S., Urovi V., Morge M., Stathis K., and Toni
F., 2009. A multi-agent system for service discovery,
selection and negotiation. AAMAS.
Albreshne A., Fuhrer P., and Pasquier J., 2009. Web
Services Technologies: State of the Art, University of
Fribourg, Switzerland.
Moschoyiannis S., Krause P., Bryant D. and McBurney P.,
2009. Verifiable Protocol Design for Agent
Argumentation Dialogues In: 3rd IEEE ICDET,
Istanbul, TURKEY.
Chen H-P., Zhang C., and. Yang G., 2010. A Model for
Managing and Discovering ServicesBased on
Dynamic Quality of Services. Journal of Networks.
Siala F., and Ghédira K., 2011. A multi-agent selection of
web service providers driven by composite qos. In
ISCC.
Julie D., and Kumar K., 2012. Optimal Web Service
Selection Scheme With Dynamic QoS Property
Assignment. IJART, Vol. 2 Issue 2.
Ben Lakhal R., and Chainbi W., 2012. A Multi-Criteria
Approach for Web Service Discovery, MobiWIS 2012.
Napoli C. Di, Pisa P., and Rossi S., 2013. A market-based
negotiation mechanism for QoS-aware service
selection, The 15th International Workshop on Agent-
Mediated Electronic Commerce.
Kouki J., Chainbi W., and Ghedira K., QoS
Synchronization of Web Services: A Mutli Agent-
Based Model Based Model, 10th International
Symposium on Distributed Computing and Artificial
Intelligence.
CLOSER2014-4thInternationalConferenceonCloudComputingandServicesScience
322