SEMANTIC SUPPORT FOR AUTOMATED NEGOTIATION
WITH ALLIANCES
Stanislav Pokraev
1
, Zlatko Zlatev
2
, Rogier Brussee
1
, Pascal van Eck
2
1
Telematica Instituut, P.O.Box 589, 7500 AN, Enschede, The Netherland
2
Centre for Telematics and Information Technology,
University of Twente, P.O. Box 217, 7500 AE, Enschede,The Netherlands
Keywords: Automated negotiation, Alliances, Ontology, Semantics, OWL, Agents, e-Commerce
Abstract: Companies can form alliances on the Internet to aggregate buying or selling power and create value. More
concretely, together resources are shared or new possibilities are exploited that cannot be exploited
individually. Most alliances are formed as a result of a negotiation process between the companies that form
an alliance. This paper proposes a software framework that enables automated negotiation between
alliances. Our framework allows for the semantic description of negotiation objects and their attributes, and
provides a mean for the exchange of negotiation messages unambiguously interpretable by all parties
involved. The proposed framework supports ad-hoc alliances by allowing parties with a common interest to
negotiate on the proposal they want to make to other market participants first.
1 INTRODUCTION
The Internet provides opportunities to create value
by forming alliances to aggregate buying or selling
power. More specific, companies form alliances
either to share current resources and competences or
to exploit new possibilities. The motives for forming
alliances are diverse. Alliances are either formed by
co-option of competitors or by providers of
complementary products or services to reduce cost
and improve customer offerings. Others allow each
partner to concentrate on activities that best match
their resources and competences or to learn from the
other partners and develop competences that may be
more widely exploited..
Kaplan and Sawhney (2000) have investigated
allian
ces in their appearance as so-called ‘e-hubs’:
B2B marketplaces that aggregate or match buyers or
sellers. E-hubs can be neutral third parties, or buyer
or seller biased. In their paper, Kaplan and Sawhney
indicate which model - aggregation or matching,
biased or neutral - works best in a specific market
setting.
In our paper, we develop a software framework
fo
r the dynamic aggregation of buyers and/or sellers
in an electronic market. The framework provides an
architecture for automated negotiation between
alliances. The framework relies entirely on the use
of ontologies as a mean of formally representing the
knowledge on a particular domain of interest. This
provides clear semantics and represents shared
understanding of the issues being negotiated on.
Common understanding of the market, knowledge of
the assets that the potential partners are ready to
commit as well as shared expectations is a crucial
prerequisite for choosing the right form of alliance
or the discovery of the pitfalls in time.
2 SEMANTIC DESCRIPTIONS
Present e-commerce applications extend over the
boundaries of an enterprise. New business scenarios
include advertising of services or products on the
Internet, matchmaking of sellers and buyers,
negotiation with potential partners, etc. These
scenarios presume the use of information outside its
original context where it tends to lose its semantics.
It is therefore widely believed that semantically
richer descriptions are needed for tasks such as
service and request matchmaking, negotiation,
contracting and contract enactment.
Ontologies will play a crucial part in facilitating
th
e sharing of information between communities,
both of people and of software agents. To support
244
Pokraev S., Zlatev Z., Brussee R. and van Eck P. (2004).
SEMANTIC SUPPORT FOR AUTOMATED NEGOTIATION WITH ALLIANCES.
In Proceedings of the Sixth International Conference on Enterprise Information Systems, pages 244-249
DOI: 10.5220/0002628702440249
Copyright
c
SciTePress
the use of ontologies, a number of representational
formats have been proposed, including RDF Schema
(re: RDF Vocabulary Description Language), the
Ontology Interchange Language (OIL) (re: Ontology
Inference Layer) and the DARPA Agent Markup
Language (DAML) (re: DARPA Agent Markup
Language). These last two have been unified to form
DAML+OIL (DAML+OIL, 2001), which is the
basis of the ontology web language (OWL) (re: Web
Ontology Language). The OWL language is now a
W3C standard for ontology and metadata
representation. OWL exploits existing web standards
such as XML, RDF and RDFS and adds primitives
of object oriented and frame based systems, as well
as the formal thoroughness of description logic. Its
formal and rational basis provides powerful means
for knowledge representation and reasoning services
that are essential in the negotiation process.
3 NEGOTIATION AND
ALLIANCES
Negotiation is a process whereby different entities
reach an agreement on joint future behaviour. The
need for negotiation arises when more than one
entity (actor) has overlapping interests. The entities
communicate their expectations about a potential
mutually acceptable agreement. The result of the
negotiation process is an agreement to which actors
commit themselves for a certain future course of
action.
Negotiation is usually decomposed into the
following elements: negotiation objects, negotiation
protocols and negotiation strategy (Jennings et al.,
2001). Because the third element is considered
private for every actor (Bartolini & Preist, 2001), we
will discuss the first two ones only. The negotiation
object, represents the subject (product or service) the
participants negotiate on. The negotiation protocol,
represents the rules that govern the negotiation
process.
Alliances are groups of business actors formed to
make collective use of resources or possibilities. The
process of forming an alliance can include
negotiation. An alliance can last for the duration of a
single deal or it can last for many deals. We are
interested in alliances formed to take part in a single
negotiation agreement which we will call ad-hoc
alliances.
Down below in this section we will discuss the
problems of automating the process encountered by
the participants of a negotiation process, which
motivate the approach proposed in this paper.
Problem one: lack of common understanding.
A negotiation process is an exchange of messages.
The messages are created by different actors and
therefore (potentially) different meaning is given to
the concepts used in them. The problem is the lack
of common understanding of issues being discussed
and the meaning of the exchanged messages. In our
approach, we present a solution for this problem
using ontologies.
Problem two: lack of common understanding
of the protocol. Participants in a negotiation process
should have a common understanding not only of
the negotiation issues but also of the protocol they
have to follow. One approach to this problem is to
use a formal description of the negotiation protocol.
Giving formal semantics to the negotiation protocol
is an issue that we want to address in future work. In
our current approach, we present a partial solution to
this problem.
Problem three: loose connection among
participants. In a many-to-many negotiation,
participants have the possibility to form alliances. If
the shared interests are only temporary, there is a
loose connection among participants and the
alliance is not stable. Therefore, it is not possible to
treat the alliance as one participant and simplify the
negotiation. We propose a solution that allows the
formation of ad-hoc alliances.
Problem four: negotiation within an alliance.
Apart from the problems in negotiating between
alliances, there is a problem of similar complexity in
forming the alliance. Alliance formation requires
negotiation. We look at the alliance formation
process as a separate negotiation process. The result
of an alliance formation is a mutually agreed
proposal that the alliance commits to. In our
approach, we propose a separate negotiation process
to form the alliance.
4 OUR APPROACH
C. Bartolini, C. Preist and N. Jennings (2002)
present an abstraction of a negotiation process. The
main concepts of the process are the following: To
negotiate with one another, parties must have a
common understanding of the different parameters
of the negotiation (e.g. price, quantity, delivery
terms, etc.). The negotiation process consists of
exchanging proposals representing the agreements
currently acceptable to the sending party involved.
The submitted proposal should be valid with respect
to the restrictions defined and it should be submitted
according to the set of rules governing the
negotiation.
In our approach, we extend the framework of
Bartolini et al. by (1) semantic annotation of
negotiated issues and messages and (2) providing
SEMANTIC SUPPORT FOR AUTOMATED NEGOTIATION WITH ALLIANCES
245
means for ad-hoc alliances. Our approach
investigates the use of OWL for describing the
negotiation objects and messages by the means of an
upper negotiation ontology. The proposed formal
semantic descriptions are a solution to the problem
of common understanding over the negotiated matter
(see section 4.1). Next, the proposed negotiation
ontology defines the structure of the exchanged
negotiation messages (see section 4.2). This solves
only part of problem two (section 0), that is, giving a
meaning to the messages. We present a partial
solution to the rest of the problem - a two-step
iterative exchange of negotiation proposals.
Furthermore, our approach allows the negotiating
parties to form ad-hoc alliances (see section 0 and
4.4). Actors that cannot satisfy the request as a
whole, can join an ad-hoc alliance and contribute to
the assembly of the requested package of services or
products. Finally, we enable negotiation within an
alliance by providing the means for negotiation over
a joint proposal among the allied actors (see section
4.4). The following sections give more insight into
our approach.
4.1 Negotiation objects
The process of negotiation requires that all parties
involved have a common understanding about the
negotiation issues (e.g. objects and their parameters).
Furthermore, support for reasoning is necessary to
ensure the validity of the proposals (for instance to
test whether two negotiation issues are non-
contradictory) or to derive implied relations between
negotiation objects. Finally, a particular negotiation
strategy might need to compute the concept
hierarchy. Information about which concept is a
specialization of another and which concepts are
synonyms can be used to support the decision-
making process.
To provide the desired functionality described
above, we propose the usage of ontologies to
describe the negotiation objects. This section gives
an idea of how this can be done using the OWL
language.
An ontology consists of object descriptions and
their properties. To describe objects we first need to
describe object types. This is done by defining
general classes (using owl:Class). If we need to
specify that a certain type is a subtype of another we
use the rdfs:subClassOf property. Once defined, the
object classes are used to describe the objects (e.g.
a1 is rdf:type of class A). OWL uses properties to
relate individuals to each other. Properties allow
introducing associated object characteristics, such as
color or weight. To limit the kinds of individuals
that can fill a certain property, OWL allows for
stating the property’s range (using rdfs:range
property). This mechanism allows new classes to be
created by restricting the properties of the existing
ones (e.g. all objects from class Wines that have
property color restricted to value red define the new
subclass of Red wines).
The expressive power and the formal rigor of
OWL allows negotiation objects to be described in
unambiguous way and therefore understood by all
the participants in a negotiation process. Its basis for
reasoning services provides a powerful mean to
check the validity of a proposal or to infer implicit
knowledge.
4.2 Negotiation messages
The process of negotiation in general is the iterative
exchange of negotiation proposals until agreement is
reached. Agreement is reached when the response of
a proposal is an identical proposal or when one party
repeats his proposal a second time in a row.
The proposed message structure is inspired by
the work of Jennings et al. (Jennings et al., 2001)
and Bartolini and Preist (Bartolini & Preist, 2001).
Bartolini and Preist’s messages are based on the
instantiation of a template message, which is the
proposal sent to the opponent. Jennings et al. see the
negotiation objects as a collection of negotiation
issues. We combine these two approaches and
propose the message structure as shown in Figure 1.
1..*
0..1
Negotiation
template
Negotiation
issue
owl:Class owl:OntologyProperty
Negotiation
agreement
Negotiation
proposal
rdfs:subClassOf
rdfs:subClassOf
owl:collection
owl:Thing
neg:object
neg:attribute1
1
neg:value
owl:Class
Figure 1: Negotiation message
Prior to any negotiation, participants must agree
on the structure of the negotiation proposal, which is
defined by the Negotiation template (see Figure 1).
The Negotiation template specifies that every valid
negotiation proposal is a collection of Negotiation
issues. The Negotiation issue specifies the
negotiation object, an attribute of a negotiation
object and the value of that attribute. The
Negotiation template does not prescribe the number
of Negotiation issues, which allows parties to
ICEIS 2004 - SOFTWARE AGENTS AND INTERNET COMPUTING
246
change the structure of the proposal during the
negotiation process. The Negotiation template is a
blank proposal, i.e. neither attributes nor values are
specified. Nevertheless, the Negotiation template
does not forbid such specification. Its role is to
‘reserve’ space for participants to make their
concrete proposals. The Negotiation proposal is a
subclass of the Negotiation template. The
Negotiation proposal follows the structure of the
Negotiation template and the Negotiation issues are
fully specified. By fully specified, we understand
that to every negotiation object attribute there is a
corresponding value. Once accepted, a Negotiation
proposal becomes a Negotiation agreement.
4.3 Ad-hoc alliances
When businesses enter a negotiation process they
usually have expectations that do not match exactly.
Requestors ask for a complex product or service that
cannot be fulfilled by any party. Conversely,
providers may offer large discounts but for a
quantity that no one can handle separately.
Businesses deal with such problems by forming
alliances. Alliances are formed by an additional
negotiation among the future partners. In our
approach, we provide a means for forming alliances.
We call them ad-hoc alliances, because they are
formed dynamically in the beginning of the
negotiation process and disappear after an agreement
is reached.
The main components that conduct the
negotiation process in our framework are
negotiation host and ad-hoc alliance host (see
Figure 2). The negotiation host provides a medium
for negotiation among single business parties and
potential ad-hoc alliances. The ad-hoc alliance host
represents the ad-hoc alliance in the negotiation
process that takes place in the negotiation host. The
ad-hoc alliance host provides allied parties with
medium for negotiation of a common strategy. The
ad-hoc alliance host represents an ad-hoc alliance in
the negotiation process, which takes place in the
negotiation host. Both the ad-hoc alliance host and
the negotiation host have the same internal structure
(discussed in details in the next section). These hosts
have components (discussed in section 5.1)
responsible for admission of participants, validation
of proposals, enforcement of the protocol and the
update of negotiation information. What makes them
different is the template they use in the course of the
negotiation process. The ad-hoc alliances are formed
by sending invitations from the ad-hoc alliance host
to the matched service or product providers. They
can join the ad-hoc alliance by responding to these
invitations.
4.4 Negotiation process
In our work, we adopt the approach proposed by
Bartolini, Preist and Jennings (2002) and extend it
further with a new concept of ad-hoc negotiation
host. We propose a two-step negotiation process
(Figure 2). The first step is negotiation among allied
parties about their joint proposal to their opponent.
The second step takes place in the negotiation host
where parties negotiate over the joint proposal made
by the ad-hoc alliance. We discuss our approach in
details below.
Buyer
Negotiation process
Sellers
Sellers
Sellers
Ad
-
hoc
alliance
host
N
egotiation
host
Figure 2: Negotiation process
Sellers register their service or product
advertisements. The validity of the advertisement is
checked and if it is valid, sellers are notified that the
process of registration has been successful. When a
buyer wants to search for a service or product, he
creates a request – a virtual description of the
package of products or services he wants to have –
and files it. If the request is valid, the buyer is
notified that the registration has been successful and
the request is matched with the registered
advertisements.
In case of a partial or complete match, an ad-hoc
alliance host is created and all matched sellers are
invited to join in. In this way, the ad-hoc alliance
host serves as a forward aggregator in the
terminology of Kaplan and Sawhney (2000). At the
same time, a negotiation host is created, connected
to the ad-hoc alliance host and the buyer is invited to
join in. To be admitted to the negotiation process,
sellers must accept an ad-hoc alliance negotiation
template proposed by the ad-hoc alliance host and
conversely, the buyer must accept a negotiation
template proposed by the negotiation host. Both
negotiation templates are dynamically created and
specify the parameters of the negotiation (e.g.
product types, prices, delivery dates, etc) taking into
account the buyer’s request. Additionally, a new
negotiation issue is added to the ad-hoc alliance
negotiation template – the direction that all sellers
want to give to the buyer. When the participants are
admitted, the negotiation process begins at the ad-
hoc alliance host. Once all sellers agree on the
SEMANTIC SUPPORT FOR AUTOMATED NEGOTIATION WITH ALLIANCES
247
proposal they want to make to the buyer, the ad-hoc
alliance host sends this proposal to the negotiation
host. The buyer then agrees or makes a new proposal
that is sent back to the ad-hoc alliance negotiation
host.
5 ARCHITECTURE
This section presents an architecture that realizes our
approach. We define the main components and
describe the interactions among them. The
architecture is depicted in Figure 3.
5.1 Components
The communication layer is responsible for
providing the means for communication between the
components representing participants and the system
components. It provides secure and reliable
communication, while hiding the complexity of the
underlying network protocols.
The participant’s component represents a
requestor or provider of a product or service. It
contains facts and rules that represent the negotiation
strategy of the involved party and uses a reasoning
engine to carry out the negotiation process.
Figure 3: Architecture
The advertisement registrar is a component
responsible for registering a particular service or
product description. This component communicates
with a request validator component to check
whether a particular request or advertisement is valid
and if so, it registers the request in its advertisement
database.
The request validator component is responsible
for checking whether an advertisement or request
contains instances of agreed upon, domain-specific
concepts.
The matchmaker component is responsible for
matching requests with product or service
advertisements. Initially, it uses the request
validator component to check whether the issued
request is valid. If so, the matchmaker uses its
reasoning engine to match facts of the request with
the facts of the registered advertisements. If there is
no advertisement that completely satisfies the
request, the component tries to find advertisements
whose combination complies with the request. If
any, the matchmaker creates an ad-hoc alliance host
and initializes its admission control component to
accept only participants associated with the matched
advertisements. In addition it creates a negotiation
host and initializes its admission control component
to accept only the requestor and the ad-hoc alliance
host.
Once created and initialized, the ad-hoc alliance
host sends an invitation to all admitted participants
to submit their proposals. When a proposal is
received, the communication gateway checks
whether this proposal comes from an admitted
participant. If so, it sends it to the protocol enforcer.
The protocol enforcer checks the validity of the
proposal with the negotiation template. Then it
checks whether the proposal is submitted according
to the negotiation rules. If all conditions are met, it
uses the information updater to assert or retract the
new facts from the proposal to the negotiation
history database. Finally, it updates the negotiation
template. Once this is done, the protocol enforcer
sends the updated negotiation template to all
participants and invites the next participant to place
its proposal. After all participants reach an
agreement on the offer they want to make to the
requestor, the ad-hoc alliance host submits the
agreement as a proposal to the negotiation host.
Communication layer
Request
validator
Advertisement
Registrar
Matchmaker
Proposal
validator
Protocol
enforcer
Information
updater
Negotiation
templates
Negotiation
rules
Negotiation
history
Communication
gateway
A
d-hoc
alliance host
Negotiation host
Admission
control
Participant
Participant
Participant
.
.
.
.
.
.
.
.
Communication
Request
validator
Advertisement
Registrar
Matchmaker
Proposal
validator
Protocol
enforcer
Information
updater
Negotiation
templates
Negotiation
rules
Negotiation
history
Communication
gateway
A
d-hoc
alliance host
Negotiation host
Admission
control
Participant
Participant
Participant
.
.
.
.
.
.
.
.
The Negotiation host repeats the structure of the
ad-hoc alliance host. The same components enforce
the rules of negotiation between the requestor and
the ad-hoc alliance host.
6 RELATED WORK
Bartolini, C. Preist, C and Jennings, N. (2002)
present a general negotiation protocol, which can be
parameterized by different rules to implement a
variety of negotiation mechanisms. However, this
work does not provide support for multi-party
negotiations. Moreover, the lack of a formal
semantics of the negotiation objects and messages
could lead to misinterpretation of the issues being
discussed.
The work of Tamma, Wooldridge and Dickinson
(2002) presents an approach to ontology-based
ICEIS 2004 - SOFTWARE AGENTS AND INTERNET COMPUTING
248
automated negotiation. The approach complements
the one presented in the previous paragraph in a
sense that negotiation issues and protocol are
described in terms of a shared ontology. This
approach, as the previous one, does not address
multi-party negotiation.
7 FUTURE WORK
A number of issues raised in this paper require
further investigation. First, heterogeneous agents
meet difficulties joining an unknown negotiation
process because they need to know the protocol in
advance. In order to allow agents to participate in
arbitrary negotiations, the rules that govern a
particular negotiation should be described by the
means of formal semantics. This requires
investigation of the possibility to use DAML-Rules
(re: DAML Rules) for protocol description. Second,
the proposed solution for alliances requires further
refinements into the following directions: (1)
support for more that one alliance, including buyers’
and sellers’ sides. This will allow negotiation
between alliances and freedom for actors to choose
the alliance that suits them best; (2) better support
for actors inside an alliance for acceptance and
execution of a shared negotiation strategy.
8 CONCLUSIONS
In this paper, we address the problems of semantic
interoperability in existing systems for automated
negotiation. More, we discuss the lack of support for
alliances in a negotiation process. We use the
description logic provided by OWL as a means for
formal representation of agreed upon concepts and
relations from a particular domain of interest. The
OWL language also allows for complex reasoning,
while exploiting existing web standards such as
XML and RDF. Our work extends existing work in
the field by proposing a more advanced negotiation
template defined by means of OWL. Such a template
can significantly improve the process of negotiation
by removing the possible ambiguities. The latter is
achieved by restricting the range of the attributes
that a certain negotiation object may take.
Furthermore, in our approach we introduce the
notion of “ad-hoc alliance host” – a component that
enables multiple parties to agree on a joint proposal
when negotiating with other party or alliance.
ACKNOWLEDGMENTS
We would like to express our gratitude to prof. Roel
Wieringa from the University of Twente for his
comments and suggestions.
This work is partially funded by the WASP project
(re: WASP).
REFERENCES
Bartolini, C. & Preist, C., 2001, A Framework for
Automated Negotiation, HPL-2001-90, HP
Laboratories Bristol
Bartolini, C., Preist, C. & Jennings, N., 2002, A Generic
Software Framework for Auto-mated Negotiation,
http://www.hpl.hp.com/techreports/2002/HPL-2002-
2.pdf
DAML+OIL (March 2001) Reference Description,
http://www.w3.org/TR/daml+oil-reference
DAML Rules, http://www.daml.org/rules/
DARPA Agent Markup Language (DAML),
http://www.daml.org/
Jennings, N., Faratin, P., Lomuscio, A., Parsons, S.,
Sierra, C. & Wooldridge M. , 2001, Automated
Negotiation: Prospects, Methods and Challenges, Int
Journal of Group Decision and Negotiation, vol. 10,
no. 2, pp. 199-215
Kaplan, S. & Sawhney, M., 2000, E-Hubs: The New B2B
Marketplaces, Harvard Business Review, May-June
Ontology Inference Layer (OIL),
http://www.ontoknowledge.org/oil/
RDF Vocabulary Description Language: RDF Schema,
http://www.w3.org/TR/rdf-schema/
Tamma, V., Wooldridge, M., and Dickinson, I., 2002, An
ontology based approach to automated negotiation,
Proceedings of the IV workshop on agent mediated
electronic commerce, AAMAS 02 conference,
Bologna, Italy.
WASP project,
http://wasp.freeband.nl/
Web Ontology Language (OWL),
http://www.w3.org/TR/owl-ref/
SEMANTIC SUPPORT FOR AUTOMATED NEGOTIATION WITH ALLIANCES
249