Expert Systems
with Applications
Expert Systems with Applications 34 (2008) 469–481
www.elsevier.com/locate/eswa
An agent-based model for consumer-to-business electronic commerce
Deng-Neng Chen, B. Jeng *, Wei-Po Lee, Cheng-Hung Chuang
National Sun Yat-Sen University, Department of Information Management, 70 Lien-hai Road, Kaohsiung City 804, Taiwan
Abstract
Electronic commerce has changed the outlook of traditional business trading behavior. It is now common to see business-to-business
(B2B), business-to-consumer (B2C) and consumer-to-consumer (C2C) commerce on the Internet. However, another type of model, consumer-to-business (C2B), is seldom found. A possible reason for this phenomenon is transaction cost; to unite a group of candidate buyers’ common needs and preferences to buy a product or service is uneasy. Difficulties arise, for example, in how to synthesize individual’s
preferences into a group’s consensus, how to communicate with each other within the group, and how to collectively negotiate with a
seller, etc. To establish a successful business model in the electronic market, however, these processes have to be implemented. We
address these issues in this paper, and propose a Buyer Collective Purchasing (BCP) model implemented in a multi-agent framework.
A prototype system, which uses a laptop computer purchasing case as an example, is created to demonstrate the idea and show how
the model works.
2006 Elsevier Ltd. All rights reserved.
Keywords: Electronic commerce; Intelligent agent; Consumer-to-business model; Group decision making; Negotiation
1. Introduction
The explosion of Internet and the ensuing applications
in electronic commerce (e-commerce) have permanently
changed the outlook of traditional business trading behavior. Different business parties are now made easy to interact through Internet with others to conduct transactions
in a more efficient way. Based on the nature of transactions, e-commerce is classified into following types
(Turban, Lee, King, & Chung, 1999): business-to-business
(B2B), business-to-consumer (B2C), consumer-to-consumer
(C2C), consumer-to-business (C2B), non-business e-commerce, and intra-business e-commerce.
Compared to the three frequently mentioned models:
B2B, B2C, and C2C, which are now very popular, the progress of the other one (i.e., C2B) is far left behind; it is seldom seen on the Internet. A possible reason for this
situation is the high transaction cost. It takes effort to unify
*
Corresponding author. Tel.: +886 7 5252000x4719; fax: +886 7
5254799.
E-mail address: jeng@mail.nsysu.edu.tw (B. Jeng).
0957-4174/$ - see front matter 2006 Elsevier Ltd. All rights reserved.
doi:10.1016/j.eswa.2006.09.020
a group of buyers’ common needs and preferences and to
interact between the buyer’s party and the potential venders in order to complete a transaction. Moreover, it is not
clear how to do it; there is little research into this problem.
For example, how to synthesize individual’s needs into a
group’s consensus? What is the mechanism to communicate with each other within the group? How does the group
collectively negotiate with a seller? All these problems need
a solution if one wants to create a successful C2B trading
model.
Collective purchasing is not new to the traditional business. Friends sometimes invite each other to go to a restaurant for a meal and share the expense. People join a tour to
share the expense of transportation, hotels and other
expenditure. In these cases, people scarify some of their
personal preferences in order to gain benefits from the collectively purchasing behavior. Likewise, can we transfer
such consumer behavior to the e-market? If with a suitable
model and mechanism, we believe Internet will be an enabler, not an obstacle, to collective purchasing behavior
because people there get easier to setup a group with common interests.
470
D.-N. Chen et al. / Expert Systems with Applications 34 (2008) 469–481
In this paper, we define and propose a model for buyer
collective purchasing (BCP) behavior, which consists of a
number of steps, each for a specific task, e.g., product
description, buyer invitation, needs synthesis, negotiation,
etc. A multi-agent architecture is devised to facilitate this
job. In the framework, different agents, each assigned with
a specific role, cooperate together to support the process.
For example, there is an agent for each buyer who participates in collective purchasing to record the buyer’s needs
and preferences. Similarly, there are agents for sellers to
represent their offers to the purchase. An agent is responsible for collecting and synthesizing the buyers’ needs.
Another plays the role for negotiation. Among these
agents, the platform itself supports communication and
interaction within the group.
Behind the multi-agent framework, there need algorithms to collect and synthesize the buyers’ preferences
and to negotiate with sellers. An AHP (Analytic Hierarchy
Process) algorithm is devised to synthesize the common
needs from the buyer group. Based on the created AHP
tree, a one-to-many negotiation algorithm takes place to
seek for the best deal from potential sellers that carry products satisfying the group’s needs. Based on the proposed
BCP model, we implement a prototype system to demonstrate the idea, which uses a laptop computer purchasing
case to show how the model works.
The remainder of this paper is organized as follows. Section 2 discusses C2B buying behavior and defines the buyer
collective purchasing model. Section 3 implements the
model with a multi-agent framework. Preferences synthesis
and alternatives ranking are described in Section 4, in
which the algorithm of AHP used in this paper is illustrated. Section 5 describes a one-to-many negotiation algorithm that can bargain with several potential sellers
simultaneously based on the information given by the constructed AHP-tree. The prototype implementation and
demonstration that realize the whole idea are presented
in Section 6. Finally, we conclude the paper with future
research issues in Section 7.
2. C2B business model
Collective purchasing is sometimes referred to as a buyer
coalition formation model (Shehory & Kraus, 1998), in
which multiple buyers cooperate together to get a better
offer for a specific product (or service). In this model, buyers usually specify multiple items and their valuation on
them, and a group leader is elected to divide the group into
coalitions and calculates the surplus division among the
buyers (Yamamoto & Sycara, 2001). In particular, Tsvetovat and Sycara (2000) divide the buyer coalition process
into five stages: (1) negotiation, (2) leader election, (3) coalition formation, (4) payment collection, and (5) execution
stages. They give an example of book purchasing in a university and show how the seller provides a volume discount
according to the size of the coalitions. In this kind of group
model, what buyers’ needs are relatively fixed and different
needs are divided into different coalitions.
Another coalition example given by He, Jennings, and
Leung (2003) describes a bakery store which receives a
large order of iced buns than it can produce. It then seeks
to find a partner from the market and negotiates with a
number of potential collaborators to get one that best satisfies it in terms and conditions. In this example, the leader
has the authority to define the coalition conditions and
negotiation right to determine who can join the group.
Although the goal is same, i.e., to group buyers together
to get a special discount from a supplier, there are collective purchasing behaviors other than the ones described
above. For example, we all have an experience that a group
of people sit together to discuss a travel plan including
where to go, to stay, and so on. In the group, there is usually no leader but a coordinator who tries to synthesize all
proposals to find out a plan that satisfies most of their preferences. Individuals participating in this kind of group are
willing to compromise on their preferences to some extent
for a common goal. The final outcome is one that satisfies
most of their needs and the best offers they can get.
2.1. The buyer collective purchasing model
To differentiate from the buyer coalition formation
model introduced above, we here define a more flexible collective purchasing behavior model, called the buyer collective purchasing (BCP) model, which consists of six stages:
(1) product description, (2) participant invitation, (3) buyer
needs synthesis, (4) merchant brokering, (5) negotiation,
and (6) purchase and delivery (Fig. 1). Except some of
the steps, i.e., merchant brokering and purchase and delivery, that are in common with many other models (Guttman, Moukas, & Maes, 1998b; He et al., 2003) and will
not be further discussed, others are unique and explained
in the following.
2.1.1. Product description
Production description is the first stage in the BCP
model. In the beginning of the collective purchasing process, there must be someone who has an intention to buy
Fig. 1. The buyer collective purchasing (BCP) model.
D.-N. Chen et al. / Expert Systems with Applications 34 (2008) 469–481
something (or service) and wishes to invite others to join.
Therefore, s/he is the one to collect the production information and describes it in a specified format so that others
may have choices to express their interests and preferences
to it. In particular, the description has to include all the
options related to this kind of product. For example, suppose one wants to buy a laptop computer on Internet. S/he
goes to a web store, e.g., Amazon, to collect the related
production information. Under the ‘‘Computers ! Laptops & Notebooks’’ category, there shows a list of different
products with a variety of features including brand name,
CPU types and speed, memory size, screen size, computer
weight and the price range, etc. Based on this information,
s/he can then prepare the production description and
broadcast it to invite others to join. If one has no clear idea
about what the product will be, product brokering agents
(e.g., Net Perceptions: http://www.netperceptions.com,
CDNOW: http://www.cdnow.com, etc.) might be of help
in this case.
2.1.2. Participant invitation
This is a stage to invite friends and other interested people. The invitation can be broadcast to any Internet communities in which people might be interested to buying
the proposed product. Associated with the invitation, interested persons need to fill out their preferences and possible
constraints based on the product description. An agent is
assigned to whom s/he has completed the participation
process. Some details will be seen later in the next section.
2.1.3. Buyer needs synthesis
This is the key stage in collective purchasing: to take
into account the preferences of all group members for a
product or service and to unify (or synthesize) them.
Although the customers here recognize the needs for some
product or service (i.e., need identification), their requirements might not be very same initially. The synthesis process needs to collect and unify them based on the
similarities in the buyer preference profiles.
There exist different approaches to solve this problem. If
we treat the preference profiles as a cluster of points, for
example, then the center point of this cluster can be used
as the synthesis outcome. However, this approach does
not gain the most from the collective purchasing because
it does not include the consideration of merchant brokering
and negotiation. Since the product requirements are fixed
with no flexibility to trade-off with a seller, it may not necessarily get the best deal from the merchant.
Our approach instead is different. We do not try to unify
the preferences into one but to incorporate and structure
them into an AHP tree1. This tree is later used in the negotiation stage to maximize the benefit by comparing the
offers from potential sellers and trading off some features
to get a better deal through a competition process among
1
Analytic Hierarchy Process (AHP) is a popular multi-criteria decision
support method.
471
Table 1
The difference between BCF model and BCP model
Group representative
Product requirements
BCF model
BCP model
Group leader
Unified one
Coordinator
Synthesized
different merchants. The details of how to create the
AHP tree are described later in Section 4.
2.1.4. Negotiation
The negotiation stage is combined with some function of
merchant brokering here. Softbot like BargainFinder
(Krulwich, 1996) can find the lowest price and the seller
for a specific product. But, in this case, price is only one
of the features to be considered. There are other features
to be compared and negotiated. In particular, the weights
of different features vary in our AHP tree. Thus, a scorecard is used to rank the offers provided by different sellers.
For example, when evaluating the laptop computers, the
offers including features of CPU type and speed, memory
size, etc. are considered. A total score of each offer is calculated based on the weighted score of individual constituent
components in the AHP tree.
Having evaluated the offers, the next step is to choose
the top five ones from different sellers and negotiate them
about the constituent components. This enters an iterative
bargain process with a goal to increase the score of an offer
by making the sellers compete in the first place to win the
deal. The details of this process will be given in Section 5.
2.2. Brief summary
Collective purchasing is a type of consumer behavior
which hasn’t had enough studied yet. Like other business
models with variations in practices, so is the consumerto-business (C2B) model. We believe there are different
approaches to collective purchasing as long as the goal,
to group buyers together to get a special offer from a supplier, is achieved. In the above, we have proposed the buyer
collective purchasing (BCP) model for cases where a group
of people has some flexible requirements related to a product and is willing to compromise with others in order to
gain the most benefit for the group. The difference between
it and the buyer coalition formation (BCF) model (Shehory
& Kraus, 1998), in short, can be summarized in Table 1.
We classify the two models in two dimensions: who represents the group and the requirements of the product after
the group is formed.
3. The multi-agent system model
To automate most of the time-consuming stages of the
buying process, software agent technologies have been proposed and employed in different transaction stages of
e-commerce, e.g., (He et al., 2003; Liang & Huang, 2000;
Maes, Guttman, & Moukas, 1999). Particularly prominent
472
D.-N. Chen et al. / Expert Systems with Applications 34 (2008) 469–481
among these are Guttman et al.’s review of agents in B2C
e-commerce (Guttman, Moukas, & Maes, 1998a) and
Sierra and Dignum’s roadmap of agent-mediated e-commerce in Europe (Sierra & Dignum, 2001). Other related
sources include Liu and Ye (2001), Ma (1999), Sandholm
(1999), and Yuan and Liu (2000).
The agent technology is particular important to the proposed model for C2B commerce since collective purchasing
by nature has higher transaction and communication cost
than normal case. To realize the model, we develop a
multi-agent system framework to support the group purchasing process. Shown in Fig. 2 is the overall architecture
of the multi-agent framework, which consists of the following agents: initiator, coordinator, negotiator, search agent,
client agent (C.A.) and supplier agent (S.A.), and performs
the following functions: initiating a group buying plan,
searching for qualified sellers, gathering participants’ preferences, converting relevant information into the usable
form for further processing, negotiating with sellers, and
making a final decision, respectively.
3.1. The agent roles
The detail functions of each agent are described as
below:
3.1.1. Initiator
This agent’s responsibility is to generate an initial plan
and to identify potential sellers. Usually, the initial plan
is built with the help of domain experts, who are able to
describe the criteria of what must be taken into account
in the purchasing plan. Once the initiative draft is constructed, it is passed to agent coordinator which will broadcast it via Internet to those who may be interested in
purchasing this product. Initiator’s role is to support the
product description stage in the BCP model.
3.1.2. Coordinator
Initially, this agent broadcasts the draft plan to interested
people over the Internet, and collects the preferences/constraints of each individual participant. Coordinator synthesizes the individual buyers’ preferences and converts them
into a group one, i.e., an AHP tree. In our method, preference synthesis and the later bargaining process with potential
sellers are combined interactively. Coordinator’s role is to
provide support in the purchasing stages of participant invitation and buyer needs synthesis.
3.1.3. Negotiator
This agent is responsible for negotiating with potential
sellers, with respect to the preferences that have been collected from a group of participants and represented in
the form of AHP criteria. The goal here is to bargain with
candidate sellers for a best offer that satisfies the most
demands and preferences of group members. The functions
of this agent include merchant brokering and negotiation.
3.1.4. Search agent
Search agent utilizes the search engines available on the
Internet to look for potential sellers. A simple rule-matching mechanism is developed to extract relevant information
from the search results. This agent also performs post-processing for the retrieved items and gives a list of qualified
sellers and the products they offer. search agent is involved
in the stage of product description and merchant brokering.
3.1.5. Client agent
When a person is interested in a specific plan and wishes
to join it, s/he can register on a web page and indicate his/
her preferences for the option items offered in the plan. In
our system, the preference items are divided into two types:
hard constraints and soft constraints. The former means
the conditions that the person strongly requires and they
must not be violated (e.g., budget), while the latter are conditions that s/he personally prefers. After that, a client
agent is assigned to the person and sent to his/her desktop
computer2 to work as his/her personal representative. This
client agent will take care of the future communication task
with the system and notice/remind its master whenever user
involvement is needed. For example, the agent will notify
its master the final plan once the stage of participant invitation is closed and ask him/her to re-confirm (or to
quit) it.
3.1.6. Supplier agent
This agent provides a communication interface to the
sellers so that they can interact with the described agent-
Fig. 2. The multi-agent system framework for collective purchasing.
2
An optional process if the user agrees.
D.-N. Chen et al. / Expert Systems with Applications 34 (2008) 469–481
473
Fig. 3. The operating sequence diagram of the proposed multi-agent system.
based system. Similar to client agent, a supplier agent represents a real vendor and all its communication to the system will be sent through it.
3.2. System operating sequence
After describing the individual agent’s role and functions, in this section, we will use a sequence diagram to
illustrate how these agents interact with each other in the
multi-agent platform to support the BCP model. Fig. 3
shows the overall operating sequences. In the beginning,
the initiator agent collects the product information and
generates a tree-structure plan for the product to be purchased. The plan contains criteria that buyers might take
into account when they are interested to this product. This
procedure corresponds to the stage of product description
in the proposed BCP model.
Once the initiative plan has been created, initiator agent
sends it to coordinator agent, which then broadcasts the
plan with some specially designed form to those who may
be interested in this product to invite them to join the collective purchasing group. People interested in this product
can register to the group and fill the form to express his/her
preferences and constraints for the product. Buyers are
required to make their choices from a list of pre-defined
constraints and make pair-wise comparisons between the
criteria (e.g., price, functionality, etc.) as well as the respective sub-criteria. After the participants filled in the form
and sent it back to coordinator, this agent will check the
constraints to make sure no violation. Then a client agent
is assigned to this buyer and sent to his personal computer
to take care of the further communications between the
system and this consumer. The above procedure corre-
sponds to the stage of participant invitation in our BCP
model.
As is mentioned, the key stage in our purchasing model
is to synthesize buyers’ needs. That is, to construct an AHP
tree that takes into account the preferences of all group
members. Therefore, once the participants’ preferences
and constraints have been collected, the coordinator agent
will structure them into an AHP tree for later use. The
details of creating such a tree are described in the next
section.
The next stage is to negotiate with different sellers to
obtain a best offer for the group buyers. To achieve this
goal, the negotiator agent asks search agent to find potential sellers and asks quotations from different sellers. With
the scoring values calculated from the AHP-criteria and
sent back by coordinator, the negotiator agent is able to
rank the offers provided by different sellers. Based on the
ranked results, the negotiator’s policy is to encourage sellers to give better offers in order to win the highest rank. It
will pick up the next five sellers from the top and analyze
their offers. Then, it will recommend each seller how to
upgrade its offer to win the deal.
The negotiation stage is an iterative process. It continues
until no better offer can be obtained. The details of the
negotiation strategy will be described in Section 5. When
the negotiation process stops, the negotiator agent will
send the final results that include the best five offers to
coordinator, which will notify the client agents the offers.
4. Preferences synthesis and alternatives ranking
This section describes the principle of the AHP method
and shows how it is extended to synthesize the preferences
of the buying group.
474
D.-N. Chen et al. / Expert Systems with Applications 34 (2008) 469–481
4.1. AHP in decision analysis
The analytic hierarchy process (AHP) is a popular and
powerful multi-criteria decision support method. It is
designed to select an optimal choice from a number of
alternatives according to a set of competing criteria (Saaty,
1980). The method has been successfully applied to different problem domains ranging from financial, engineering,
to environmental problems. In particular, it is suitable
for complex decision-making when both qualitative and
quantitative attributes of a decision need to be considered.
The method consists of three major steps: decomposition, comparative judgment, and synthesis. Decomposition
is to structure the decision problem into a hierarchy of
evaluation criteria; comparative judgment is to pair-wise
compare the criteria with respect to each elements of the
next higher level in the hierarchy; synthesis is to composite
priorities of the alternatives with respect to the criteria. A
detail description of the AHP method is summarized
below:
Shown in Fig. 4 is an example of an AHP hierarchy. The
left most node represents the objective; the right most
nodes are alternatives Ai; in between are the criteria nodes
Ci and Ci,j. The solid lines connect the criteria and the
objective to form a tree while the dash lines connect alternatives to the leaves of the tree. The link weights Wi and
Wi,j are the results of pair-wise comparisons of the criteria
Ci and others. S Ci;j ;Am is the score that alternative Am
obtained with respect to criterion Ci,j only, and Wi,j
*S
C i;j ;Am is the fraction of the score that the criterion receives
in the overall evaluation of the alternatives. This value is
propagated upward repeatedly until it reaches the root of
the tree.
The application of the method can also be divided into
two phases: construction and evaluation. The first phase
constructs the AHP tree while the second phase evaluates
different alternatives and makes a decision from the evaluation. This is the case that we used in this paper: the synthesis stage creates the AHP tree (described in the next
section) while the negotiation stage uses it (described in
Section 5).
4.2. Preferences synthesis by a group decision method
In the beginning, each one who participates in the collective purchasing group is asked to fill out his/her judgments/
preferences on the pair-wise comparisons of criteria in the
AHP tree. After this process finishes, there needs a way to
synthesize the collected preferences so that they become a
set of integrated and homogeneous product needs.
W1,1
W1
C1
W1,2
For convenience of discussion, we sometimes refer to this tree only
(i.e., without the references to alternatives), and called it the AHP tree.
A2
Wn,1
Cn,1
SCn,1,Am
Wn,k
SCn,k,Am
Cn,k
A1
……
3
C1,2
SC1,1,A1
SC1,2,A1
…
Wn
Cn
C1,1
………
W2 C2
Objective
Criterion
……
Step 1: Create a hierarchical representation of the decision
problem by recursively breaking it into a set of criteria. A typical multi-criteria decision problem consists of three components: objective, criteria, and
alternatives. The objective, at the top level of the
hierarchy, is what you want to optimize; under it
are the criteria that represent the progressive
decomposition of the problem; the alternatives, at
the bottom level of the hierarchy, are what you
want to choose from, i.e., the decision to be made.
The objective and the criteria together form a tree3
in which a criterion can be expanded into a set of
sub-criteria until they can be used to evaluate the
attributes of an alternative. An AHP hierarchy is
usually constructed by domain experts, in which
the number of levels in the hierarchy depends on
their knowledge and the complexity of the decision
problem.
Step 2: Make pair-wise comparisons of the attributes and
calculate the principal eigenvector (a mathematical
approach used by AHP) of the matrix derived from
the comparative judgments. The process determines
the relative priority of each decision element with
respective to the one at the immediate higher level
in the hierarchy.
Step 3: Transform the comparison results into link weights
in the AHP tree and check the consistency of the
comparisons made by decision makers. According
to Satty, small consistency ratio, less than 0.1, is
suggested. One can repeat a set of pair-wise comparisons when the consistency ratio is high.
Step 4: Use the link weights to evaluate each alternative.
This is done by multiplying the weights of criteria
that link to the alternatives and summarize them
up all the way through the links to the root of the
tree. The result scores rank the alternatives so that
one can make a provisional decision.
Step 5: Perform sensitivity analysis. This enables a decision
maker to examine how robust the provisional decision is with respect to changes in the rating of
importance and preference.
Am
Fig. 4. A typical hierarchy of AHP method.
D.-N. Chen et al. / Expert Systems with Applications 34 (2008) 469–481
There are several methods that could aggregate individual decision preferences into group ones (Chwolka &
Raith, 2001; Ramanathan & Ganesh, 1994; Van Den Honert & Lootsma, 1996). A general approach is to synthesize
the pair-wise comparison matrices in each level of the criteria tree either by consensus voting or by averaging individual judgments (Saaty et al., 1989). The former requires
group members to agree upon a unique value for each
pair-wise comparison. Although this method guarantees a
homogeneous decision over all group members, the process
is tedious and time-consuming. The other two approaches
widely used in determining group preferences are geometric
mean method (GMM) and weighted arithmetic mean
method (WAMM). The former determines the group preferences by taking the geometric mean over the individual
member judgments on a pair-wise comparison (Saaty
et al., 1989). That is, if a1ij ; a2ij ; . . . ; anij are the n group members’ individual judgments on comparing criterion i and j,
the aggregated judgment for that comparison is
1=n
ða1ij a2ij anij Þ . The latter approach treats the individual judgments as a linear combination and uses
weighted arithmetic mean to determine the result (Ramanathan & Ganesh, 1994).
It is shown that the judgment matrix generated by
GMM has the advantage of preserving the reciprocal property of the combined matrices (Aczel & Saaty, 1983). Saaty
himself also apply GMM to extend his eigenvalue-based
measurement in the AHP to consistency in individual judgments within a group (Saaty et al., 1989). Thus, GMM is
currently the most popular method in group preference
aggregation for the AHP method (Chwolka & Raith,
2001; Van Den Honert & Lootsma, 1996); some successful
examples of using it have been reported (Lai, Wong, &
Cheung, 2002; Tam & Tummala, 2001).
In our collective purchasing model, each group member
is treated equal importance in expressing his/her preferences over the product. Thus, GMM is the best choice to
synthesize the preferences; the geometric mean of each
preference item is taken from the pair-wise comparison
matrices, and the eigenvector of the synthesized preference
matrix is then calculated.
5. Negotiation in collective purchasing
In practice, when trading with a large quantity of products (such as the group buying case addressed here), there
usually exists some negotiation space from a seller. This
is particular important in C2B commerce because people
here sacrifice some of their preferences with a purpose of
pursuing a better deal from a supplier. However, whether
the deal is good or not depends on how one ‘‘negotiates’’
it. Thus negotiation is a key step which determines whether
a group purchasing is ‘‘worthwhile.’’
Two main issues involved in agent-based negotiation
are: the communication between buying and selling parties,
and the bargaining strategy used. The former is mainly
concerned with agent-based languages and protocols that
475
enable the message interchange between different agents.
Some work has been presented for agent communication,
among which KQML and FIPA ACL are the most notable
attempts to design a general-purpose agent language
(Finin, Labrou, & Mayfield, 1997; FIPA, 2001).
Our work follows the FIPA standard where agents talk
to each other with ACL commands. In particular, we adopt
the latest development of SOAP4 technology and embed a
dialog message within an XML ‘‘envelop.’’ An HTTP server (called ACC5) is established which provides necessary
‘‘web services’’ to agents so that they can communicate
each other asynchronously with the help of this server.
The detail of the communication mechanism is implemented and shown in Section 6. For now, let’s focus on
the issue of the negotiation problem itself and the bargaining strategy.
5.1. The negotiation problem model
Negotiation (or bargaining) is the interaction that
occurs when two or more parties attempt to agree on a
mutually acceptable outcome in a situation where their
orders of preference for possible outcomes are negatively
correlated (Hammer & Clay, 1969; Raiffa, 1982). In traditional negotiation research, it is assumed that the participants are given their individual profit schedules and each
has his own goal of profit maximization. The negotiation
task was thus regarded as an optimization problem and
solved by relevant techniques (e.g., Krovi, Graesser, &
Pracht, 1999; Choi, Liu, & Chan, 2001). Such methods,
however, often ignore interactions and they have made
unrealistic assumptions.
An alternative methodology different from the above is
the specification of the rules of interaction. Some recent
research has presented the automated agent-based negotiation in the electronic marketplace in a more realistic way in
which the profit schedules are not given and only the offers
proposed by the participants are available, e.g., Lee (2004),
Luo, Jennings, Shadbolt, Leung, and Lee (2003), and Maes
et al. (1999).
Our approach is similar to the above agent-based negotiation. In our model, two opposite parties work as two
negotiators jointly searching in a multi-dimensional space
(the multiple issues to be negotiated) to find a point of
agreement (Jennings et al., 2001; Oliver, 1996). Initially,
the profits for both parties can be planned. For example,
in the case of bargaining price for a certain product, the
interval between the ideal price (i.e., the initial price) and
the reservation price Rs (i.e., the lowest acceptable price)
represents the maximal profit a seller can make; this is
the negotiation space for that seller. Similarly, a buyer
4
SOAP is a protocol for exchanging XML-based messages over a
computer network, normally using HTTP. SOAP is an acronym for
Simple Object Access Protocol.
5
ACC stands for Agent Communication Channel. See Figs. 7 and 8 for
details.
476
D.-N. Chen et al. / Expert Systems with Applications 34 (2008) 469–481
Fig. 5. The framework for negotiation in collective purchasing.
can have an initial price and a reservation price Rb (i.e., the
highest price s/he can accept). As it can be observed, the
common negotiation space exists when the selling agent’s
reservation price is lower than or equal to the buying
agent’s reservation price (i.e., RshRb). In this situation,
any offer falling within this space is a candidate solution
provided that the participants do not terminate the negotiation process before an agreement is reached.
Fig. 5 illustrates the negotiation agent framework of our
model. In the current design, the buying agent (negotiator)
plays the active role; it continuously contacts candidate
sellers and make suggestions for them to consider. In this
model, there is no need to assume a mediator that knows
the profit schedules of selling and buying agents and works
as an optimizing mechanism between them. The trading
parties can directly contact each other to make negotiations. Therefore, each party does not know the reservation
value of its opponent, and normally the theoretical equilibrium cannot be reached. Also, our model does not make
any assumption about the offers that the agents might propose during the negotiation. In other words, the agents are
not bound to any specific concession strategy, and the final
result completely depends on how different seller agents
compete with each other. In addition, each negotiation
process is independent from the previous ones and the
agents can make any offers they like. The bargaining process terminates when there is no new offer proposed within
a certain period of time.
5.2. The bargaining strategy
We have defined our negotiation problem model but
haven’t touched how to bargain with the sellers. Ideally,
it is assumed that both of negotiation parties will make
concession by decreasing the benefit from their initial proposals and find an offer acceptable to both parties through
an iterative negotiation process. But this is only an ideal
case; we need a strategy for it.
To maximize the bargain power, our strategy here is to
let the buyer group negotiate simultaneously with more
than one supplier, and make the potential sellers compete
each other to create a pressure on them for offering a better
deal to the buyer. The above agent framework supports
this strategy, in which the negotiator operates in a oneto-many fashion by sending negotiation messages to the
selling parties individually and waiting for the responses
from its opponents. Then it compares the received offers
and proceeds with a new session of bargain until there is
no further concession being made.
Although the idea is easily understood, implementing it
has to solve the problem of how to compare different offers
from different sellers6. Fortunately, with the created AHP
preference tree before, this process can be conducted
because the group preferences of individual members are
already elicited and organized in the weighted AHP tree.
Thus any received offers can be scored and ranked against
it.
With ranked offers, the bargaining strategy is simply to
encourage and suggest sellers to provide better offers to
raise their ranks in the trading. For example, a possible dialog could be like: ‘‘Thank you for your offer. After compare yours with others, we found your offer currently at
the X rank in our group evaluation. If you could change
XX into YY, then your offer’s rank will be moved to the
front. Would you please consider our suggestion?’’ To
win the deal, some of the sellers will make concessions7
and their ranks are re-calculated accordingly. This re-ranking process continues until there is no new offer proposed.
How to generate the dialog message content requires the
detail calculation of each offer’s score against the AHP
tree. Assume the best offer among all is determined by
the following scoring function:
!
n
X
m
Maxj¼1
W i S i;j
i¼1
where m is the number of sellers, n is the number of sub-criteria in the lowest criterion-level of an AHP tree (i.e., detailed elements taken into account for the product, such
as price, CPU, memory size for a computer), Wi is the
path-weight accumulated (by a series of multiplications)
along with the path from the root node to the sub-criterion
i, and Si,j denotes the score of an offer j in respect to the
path toward sub-criterion i. The offer provided by the seller
with the highest score thus represents the best offer the
group buyers can obtain.
Without losing generality, we use a typical two-level
AHP hierarchy (illustrated in Fig. 4) as an example to
explain the bargaining process in detail. The bargaining
process for agent negotiator is designed as the following:
Step 1: Calculate the total scores of the offers made by sellers, and then rank them.
Step 2: Find the most weighted path of each offer which
can be improved. In this example, Ci,j means the
sub-criterion in the level immediate higher than
the alternatives, and the path weights are determined by W1 · W1,1,W1 · W1,2, . . . , W2 · W2,1,
W2 · W2,2, . . . , Wi · Wi,1,Wi · Wi,2, . . . , Wi · Wi,j.
The results are used to suggest sellers how to
6
Not just price comparison.
Many stores nowadays claim they sell products the lowest prices, or
they will beat any price.
7
D.-N. Chen et al. / Expert Systems with Applications 34 (2008) 469–481
477
Fig. 6. The bargaining strategy based on AHP.
Fig. 7. System architecture.
efficiently raise their ranks. In the first round of
bargaining, the most weighted path will be chosen;
in the second round, the second weighted path will
be the candidate, and so on.
Step 3: Send messages to sellers that are not ranked the
first with content addressed above or like following:
‘‘You are not the best choice in our alternatives.
Would you like to upgrade criterion (Ci, Ci,j) of
your product to get a higher rank?’’ In this example, (Ci,Ci,j) means the criterion Ci (e.g., hardware
of a computer) and its following sub-criterion Ci,j
(e.g., CPU in respect to hardware) in the most
weighted path.
Step 4: Wait for responses from the sellers. After the negotiator agent receives the responses, if one of the sellers agrees to adjust its product offer, go back to
step 1 to re-calculates the scores and makes a new
decision. Compare the new decision with the previous one. If the two decisions are different, go to step
2 for a new bargaining cycle; otherwise terminate
the bargaining process and set the final decision.
The bargaining procedure will be also terminated
if there is no response in a pre-defined period of
time.
Note that the hill-climbing method is employed in this
strategy, in which the agent is directed to find a route
improving the rank of an offer the most. This strategy is
repeatedly applied until it reach reaches the concession
limit (or the bottom line) of an offer that a seller is willing
to make. In this way, the negotiator agent can find out the
best deal from a number of offers and return the benefit to
the buyers. The bargaining process is summarized in Fig. 6.
6. Implementations
6.1. The multi-agent platform
We have described a multi-agent framework in which
different agents behave collaboratively to support the
BCP model and also explained the algorithms that work
behind. Now it is the time to put them all together to show
how they are implemented. Our multi-agent system platform is built on top of two major components: the
Fig. 8. Message passing between agents.
Agent-Base and the Agent Communication Channel
(ACC). Fig. 7 shows the conceptual architecture of this
platform.
Agent-Base serves as a base class in the software system
where all agents are developed on top of it. It provides all
the fundamental capabilities that an agent is expected to
have, such as agent ontology, behavior and communication
ability, etc. Based on this class, a specific agent is created by
inheriting all necessary capabilities from the agent-base and
then equipped with the corresponding domain knowledge
for a specific task.
The communication and coordination support between
agents are left to the other important component in the
system, the ACC, which, instead of being a class, it is
implemented as a set of web services (such as account management, communication management, coordination management, etc.) on an HTTP server so that the agent
community can easily access it for service. A typical communication protocol of ACC is illustrated in Fig. 8.
The described multi-agent architecture is implemented
on Microsoft .Net platform. To illustrate it, an example
of notebook computer purchasing case is described in the
Section 6.2.
6.2. A Purchasing example
We will show in step-by-step scenarios through the process of group purchasing of laptop computers, in which the
478
D.-N. Chen et al. / Expert Systems with Applications 34 (2008) 469–481
screen layouts are what users can see while other figures or
tables are for the explanation purpose, not the output of
the system.
In this example, a number of people are interested in
buying a laptop and are willing to join the collective purchasing plan. The initial form generated by initiator agent
and posted on the web by coordinator agent is presented
in Fig. 9, in which each participant registers in the collective purchasing plan has to fill out to indicate his/her
preference. Note that, based on the concepts of AHP,
each person is asked to express the preferences by a pairwise comparison in the form, as is shown in the screen
snapshot.
In this figure, the number of option items depends on
the person who initiates the purchase plan. For example,
whether OS is a preference item can be discussed because,
for most of people, it is a requirement, not a preference. If
you are Unix or Apple OS users, you will not want to buy a
computer installed Microsoft Window XP. However, some
other people may think differently; if price is good, they can
buy a computer only and install the OS themselves.
After agent coordinator collects each of the buyers’
preferences, they are converted into a hierarchy tree based
on the AHP method described before. For the example
here, the tree generated is in the following (Fig. 10), in
which the top five candidate laptop sellers are evaluated
against the AHP tree in the right side.
Note that in this figure the numbers in parentheses
beside tree nodes are the weights of criteria after synthesizing all buyers’ preferences. Based on this hierarchy tree,
agent negotiator will be able to calculate the score of each
vendor’s product. The calculations of path weights and
scores are showed in Table 2.
Agent negotiator now starts the bargaining process as is
described in the following. First, it will sort and rank each
vendor. In this example, the rank order is A > E > C >
B > D. This means that vendor A receives the highest score
in its offer. Then, it will sort the column ‘‘Path weight’’ as
Fig. 10. The AHP hierarchy of group’s preferences.
indicated in Table 2, the criterion ‘‘price’’ gets the highest
weight, and ‘‘Function-Software-OS’’ is the second one.
The third step is to find out a best rank improvement factor
for the offers which are not in the first place. Based on the
algorithm introduced before, the improvement factor for
vendor B, D, E will be ‘price’ while the factor for C will
be ‘OS’. negotiator then sends a message to these vendors
individually through their supplier agent and asks if they
can make some concession on the specified factor item in
order to improve their evaluation rank to win the deal.
For example, a message to vendor B is like this: ‘‘Hi,
TsannKuen! We found your Sony PCG-NV77M/BP is currently in the fourth place in our group evaluation of all candidate laptops. If you could make your price lower, you will
get a better chance to win this deal. Could you re-consider
and give us a new offer?’’ The snapshot of supplier agent
for vendor B is shown in Fig. 11. If the vendor has some
room in price, he can modify the offer and send it back
to negotiator. Otherwise, he could change some other
Fig. 9. The form that interested participants have to fill to express their preferences.
D.-N. Chen et al. / Expert Systems with Applications 34 (2008) 469–481
479
Table 2
Weight calculation
Criteria
Weight calculation
Path weight
Product’s score
C
D
Price
0.4
0.4
10
8
10
7
9
0.6 * 0.6 * 0.3 * 0.5
0.6 * 0.6 * 0.3 * 0.3
0.6 * 0.6 * 0.3 * 0.2
0.6 * 0.6 * 0.2 * 0.4
0.6 * 0.6 * 0.2 * 0.3
0.6 * 0.6 * 0.2 * 0.3
0.6 * 0.6 * 0.2 * 0.6
0.6 * 0.6 * 0.2 * 0.4
0.6 * 0.6 * 0.3 * 0.1
0.6 * 0.6 * 0.3 * 0.3
0.6 * 0.6 * 0.3 * 0.3
0.6 * 0.6 * 0.3 * 0.3
0.6 * 0.4 * 0.6
0.6 * 0.4 * 0.4
0.054
0.0324
0.0216
0.0288
0.0216
0.0216
0.0432
0.0288
0.0108
0.0324
0.0324
0.0324
0.144
0.096
8
9
7
8
10
9
1
9
8
9
9
8
10
9
9
7
9
9
9
10
9
8
9
9
10
10
10
8
8
9
10
8
9
9
7
8
9
8
9
8
8
8
10
9
9
9
10
8
10
8
10
9
10
10
10
8
9
7
8
10
10
10
9
8
10
10
10
9
9
9
A
Function
Hardware
Computing and Storage
Convenience
Multimedia
Peripheral
Software
OS
AP
CPU
RAM
H.D.
Monitor
Battery
Weight
VGA
Audio
F.D.
CDR
LAN
Wireless
Total
1
9.4396
B
8.86624
8.9404
8.392
E
9.0324
Fig. 11. The supplier agent’s dialog screen to vendor B.
attributes in the offer which he prefers, or he could quit the
bargaining process.
Negotiator waits for the sellers’ responses in a fixed
amount of time and then compares the new offers with
the previous ones. Some sellers may or may not want to
adjust their prices in the new offers. In this case, negotiator
needs to calculate and decide whether it should continue to
bargain with those vendors. If yes, it can try to ask to
change the second important factor (e.g., ‘‘Function-Software-OS’’) and so on. However, if, after calculation, the
score difference between a vendor and the first rank one
is too large to make up even if all the asked items are
improved, then negotiator should quit negotiating with that
vendor. This bargaining process is repeated until no more
sellers would like to adjust their offers anymore.
In our example, vendor B lowers its price from 1999 to
1899 and increases the point from 8 to 10. The total score
of vendor B becomes 9.4624 and is now the highest among
all candidates. Therefore, negotiator sends a message to
vender B: ‘‘Thank you for your offer, TsannKuen! Your
Sony PCG-NV77M/BP is now evaluated by our group
the best offer in the candidates. You win this deal. Please
instruct us how to proceed to complete the transaction.’’
It also sends a message to each buyer to notify the result.
The final screen layout of client agent of the bargain process may look like this (Fig. 12).
480
D.-N. Chen et al. / Expert Systems with Applications 34 (2008) 469–481
Fig. 12. The final decision snapshot of client agentfor buyers.
7. Conclusions and future work
Collective purchasing is a well-known consumer behavior in traditional business but is new to electronic commerce market. Also, it has not received much attention
yet in the Internet. One of the many factors for this phenomenon is due to its high transaction cost; there is lack
of convenient tools and environment support to facilitate
the collective purchasing behavior. Furthermore, there is
little academic research on its business model to realize it.
In this paper, we try to solve these problems both theoretically and practically. For the first part, we defined the
buyer collective purchasing (BCP) model and proposed
two methods for preference synthesis and negotiation strategy, respectively. For the practical part, we devise a multiagent framework that supports the proposed business
model and implement a workable prototype system on
.NET platform. We demonstrate the whole business process with an example case that shows how interested persons participate in an on-line buyer’s group and then the
agents take over to bargain with sellers and complete the
entire transaction.
Despite of what has shown in this paper, we have to
admit that collective purchasing or consumer-to-business
(C2B) is still a very young business model in its primitive
stage. This paper is just the first attempt that tries to promote it to the Internet eCommerce community. Our
proposal for the business model (i.e., BCP) and the
multi-agent framework, of course, can be further explored
and improved. In particular, there are many details that are
not considered in this paper. But, to make the business
model practical, they are necessary without speaking.
From this perspective, there is a long way to go to make
this business model real. However, it is our hope that this
paper can at least be served as a starting point to the final
goal.
Future research will follow the comments explained
above. Although we have invented methods to reduce the
transaction cost in collective purchasing behavior, there
are many issues that need to be verified. For example, will
users accept the results by our preference synthesis algorithm? What are the exceptions? Will the negotiation strategy work? What are the exceptions? The real performance
of this proposed framework needs more field studies, and
from there, we believe many new and better results will
be derived.
References
Aczel, J., & Saaty, T. L. (1983). Procedures for synthesizing ratio
judgments. Journal of Mathematical Psychology, 27, 93–102.
Choi, S., Liu, J., & Chan, S. P. (2001). A genetic agent-based negotiation
system. Computer Networks, 37, 195–204.
Chwolka, A., & Raith, M. G. (2001). Group preference aggregation with
the AHP-implications for multiple-issue agendas. European Journal of
Operational Research, 132, 176–186.
Finin, T., Labrou, Y., & Mayfield, J. (1997). KQML as an agent
communication language. In J. Bradshaw (Ed.), Software agent
(pp. 291–316). MA: MIT Press.
FIPA, (2001). FIPA Interaction Protocol Library Specification, The
Foundation for Intelligent Physical Agents.
Guttman, R.H., Moukas, A.G., & Maes, P., (1998a). Agent-mediated
integrative negotiation for retail electronic commerce. In: Noriega, P.,
Sierra, C. (Eds.), Agent-mediated electronic commerce, pp. 70–90.
Guttman, R. H., Moukas, A. G., & Maes, P. (1998b). Agent-mediate
electronic commerce: a survey. The Knowledge Engineering Review,
13(2), 147–159.
D.-N. Chen et al. / Expert Systems with Applications 34 (2008) 469–481
Hammer, W. C., & Clay, G. A. (1969). The economics of bargaining.
University of Georgia Press.
He, M., Jennings, N. R., & Leung, H.-F. (2003). On agent-mediated
electronic commerce. IEEE Transactions on Knowledge and Data
Engineering, 15(4), 2003.
Jennings, N. J., Faratin, P., Lomuscio, A. R., Parsons, S., Sierra, C., &
Wooldridge, M. (2001). Automated negotiation: prospects, methods
and challenges. International Journal of Group Decision and Negotiation, 10(2), 199–215.
Krovi, R., Graesser, A. C., & Pracht, W. E. (1999). Agent behaviors in
virtual negotiation environments. IEEE Transactions on Systems, Man,
and Cynernetics-D Part C, 29(1), 15–25.
Krulwich, B. (1996). The bargainfinder agent: Comparison price shopping
on the Internet. In J. Williams (Ed.), Bots, and other Internet beasties
(pp. 257–263). Macmillan Computer Publishing.
Lai, V. S., Wong, B. K., & Cheung, W. (2002). Group decision making in
a multiple criteria environment: a case using the AHP in software
selection. European Journal of Operational Research, 137, 134–144.
Lee, W.-P. (2004). Towards agent-based decision making in the electronic
marketplace: interactive recommendation and automated negotiation.
Expert Systems with Applications, 27(4), 665–679.
Liang, T.-P., & Huang, J.-S. (2000). A framework for applying intelligent
agents to support electronic trading. Decision Support Systems, 28(4),
305–317.
Liu, J., & Ye, Y., (2001) Introduction to E-commerce agents: marketplace
solutions, security issues and demand. In Liu, J., Ye, Y. (Eds.), Ecommerce agents: marketplace solutions, security issues and demand.
pp. 1–6.
Luo, X., Jennings, N. R., Shadbolt, N., Leung, H., & Lee, J. H. (2003). A
fuzzy constraint based model for bilateral multi-issue negotiations in
semi-competitive environments. Artificial Intelligence, 148(1–2),
53–102.
Ma, M. (1999). Agents in E-Commerce. Communications of the ACM,
42(3), 79–80.
Maes, P., Guttman, R. H., & Moukas, A. G. (1999). Agents that buy and
sell: transforming commerce as we know it. Communications of the
ACM, 42(3), 81–91.
481
Oliver, J. R. (1996). A machine-learning approach to automated negotiation and prospects for electronic commerce. Journal of Management
Information Systems, 13(3), 83–112.
Raiffa, H. (1982). The art and science of negotiation. MA: Harvard
University Press.
Ramanathan, R., & Ganesh, L. S. (1994). Group preference aggregation
methods employed in AHP: an evaluation and an intrinsic process for
deriving members’ weightages. European Journal of Operational
Research, 79, 249–265.
Saaty, T. L. (1980). The analytic hierarchy process. NY: McGraw Hill.
Saaty, T. L. (1989). Group decision making and the AHP. In B. L. Golden
et al. (Eds.), The analytic hierarchy process: applications and studies
(pp. 59–67). Berlin: Springer.
Sandholm, T. (1999). Automated Negotiation. Communications of the
ACM, 42(3), 84–85.
Shehory, O., & Kraus, S. (1998). Methods for task allocation via agent
coalition formation. Artificial Intelligence, 101, 165–200.
Sierra, C., & Dignum, F. (2001). Agent-mediated electronic commerce:
Scientific and technological roadmap. In F. Dignum & C. Sierra
(Eds.), Agent-Mediated Electronic Commerce (pp. 1–18). Springer.
Tam, M. C. Y., & Tummala, V. M. R. (2001). An application of the AHP
in vendor selection of a telecommunication system. Omega, 29,
171–182.
Tsvetovat, M., & Sycara, K. (2000). Customer Coalitions in the Electronic
Marketplace. Proceedings of Fourth International Conference on
Autonomous Agents, 263–264.
Turban, E., Lee, J., King, D., & Chung, H. M. (1999). Electronic
commerce: a managerial perspective. Prentice Hall.
Van Den Honert, R. C., & Lootsma, F. A. (1996). Group preference
aggregation in the multiplicative AHP: the model of the group decision
process and pareto optimality. European Journal of Operational
Research, 96, 363–370.
Yamamoto, J., & Sycara, K. (2001). A stable and efficient buyer coalition
formation scheme for e-marketplace. Proceedings of the Fifth International Conference on Autonomous Agents, 576–583.
Yuan, S. T., & Liu, A. (2000). Next-generation agent-enabled comparison
shopping. Expert Systems with Applications, 18, 283–297.