B2C AND C2C E-MARKETPLACES
A Multi-layer/Multi-agent Architecture to Support them
R. Miguel, J. J. Castro-Schez, D. Vallejo, C. Glez-Morcillo and V. Herrera
Department of Information Technologies and Systems
University of Castilla-La Mancha, Ciudad Real, 13071, Spain
Keywords:
e-Commerce, B2C portals, C2C portals, e-Marketplaces, Multi-agent systems, Multi-layer architecture, Soft-
ware agents, Middleware, Auctions, Shopping.
Abstract:
Due to the growing of the Internet and the users’ trend to acquire products via Internet, the e-commerce has
become in a new very important business opportunity. In this paper we present a multi-agent and multi-layer
architecture to support general purpose e-marketplaces. The presented system is compound of software agents
that can be able to act in the users’ benefit reducing their search time and facilitating the product acquisition.
These agents are grouped in different layers giving support to B2C and C2C e-marketplaces. The interaction
between the different agents is explained through the paper although we remarks the agents used to search,
acquire and recommend products. We have also used the fuzzy logic in these agents because we believe that
is very useful in order to facilitate its use and reduce the search and acquisition time.
1 INTRODUCTION
Nowadays the importance of B2C and C2C e-
commerce is undeniable. Thousands of acquisitions
take place over the Internet every day (Turban et al.,
2008). This fact leads firms to a new market that is
growing at this moment. An e-marketplace can be
defined as a site of electronic exchange where firms
register as sellers or buyers to communicate and con-
duct business over the Internet. E-marketplaces are
reaching a bit summit as medium that allows to small
companies to commercialize their goods (Wise and
Morrison, 2000). Some examples of this trend are
E-Bay (eBay Inc., 2010), Todocoleccion (Zoconet,
2010), etc., which generate lots of transactions ev-
ery day. This work is focused on B2C and C2C e-
Marketplaces that include on-line transactions of con-
sumer goods or services based on flexible price sys-
tems, such as auctions or fixed price systems, such as
direct sales (Buy it Now).
It is needed to exploit the technology establish-
ing architectures which address the requirements of
this kind of systems in order to achieve the full de-
velopment of these e-marketplaces and their success.
In previous works, a centralized architecture called
e-ZOCO (Miguel and Castro-Schez, 2009) was de-
veloped to give support to an e-marketplace (Lopez-
Lopez et al., 2009a). This architecture presents per-
formance problems when the data layer contains lots
of data and when lots of users are concurrently con-
nected. This kind of centralized architectures are not
therefore scalable when such parameters grow up, de-
manding for solutions that rely on distributed control
and data distribution. Furthermore, e-commerce ap-
plications are integrating more and more techniques
based on Artificial Intelligence to provide the users
with new capabilities and opportunities for business.
Within this context, Multi-Agent Systems (MAS)
(Weiss, 1999) can contribute to overcome these limi-
tations and improve the quality of e-marketplaces.
In order to design the architecture of the e-
Marketplace MAS, the relevant services that deter-
mine the characteristics of this kind of portals and
their functionality have been analyzed, as well as the
different actors that interact within the market.
Furthermore, in the devised design, there exists
an agent based on fuzzy logic whose goal is to as-
sist users in the buying process (Lopez-Lopez et al.,
2009a).
In order to develop this proposal, the set of spec-
ifications of the Foundation for Intelligent Physical
Agents (FIPA) committee has been adopted, which
represents the de facto standard in the field of MAS
(http://www.fipa.org/).
An e-marketplace implementation is not trivial.
The e-marketplaces evolution has shown that there
100
Miguel R., J. Castro-Schez J., Vallejo D., Glez-Morcillo C. and Herrera V. (2010).
B2C AND C2C E-MARKETPLACES - A Multi-layer/Multi-agent Architecture to Support them.
In Proceedings of the 12th International Conference on Enterprise Information Systems - Software Agents and Internet Computing, pages 100-105
DOI: 10.5220/0002907801000105
Copyright
c
SciTePress
are a set of features common to the most successful
e-marketplaces today (Bruckner and Kiss, 2004; Li
et al., 2001; Bar, 2001; Hu, 2009; Brunn et al., 2002).
The rest of the paper is organized as follows: The
features which are offered in the most successful e-
marketplaces are presented in Section 2. Section 3
presents a general description of the multi-layer and
multi-agent architecture. In Section 4, an example of
interactions between agents, users and environment is
described. Finally, Section 5 is devoted to the conclu-
sions and future work.
2 GENERAL DESCRIPTION
The main aim of the proposed architecture is to sup-
port a virtual market where both the sellers and buy-
ers depicted as persons or virtual agents can interact
and come together to carry out electronic transactions.
These agents provide a range of common services to
this kind of portals but with the added value of man-
aging from an approach based on intelligent agents.
These basic services encompass aspects like the
management of shops and users within the por-
tal, product catalog, product buying/selling, product
search and recommendation within the portal, mes-
sages between the users, users’ trust, dispute between
users, or reporting useful information. Furthermore,
they are used as a design guide to determine the nec-
essary intelligent agents for the proposed system.
The proposed architecture facilitates the use of
these e-commerce services in a free and open way,
allowing the portability and ensuring the interoper-
ability. These features that draw a framework based
on Service-Oriented Computing (Huhns and Singh,
2005) fits with the MAS notion. The agents com-
municate and cooperate to improve the quality of ser-
vices that compose the e-marketplace.
It is necessary to highlight that a service can be
represented by an agent and that an agent can repre-
sent several services (see Figure 1).
The adoption of FIPA pursues two main objec-
tives: i) to assure the interoperability with other MAS
that follow the guides defined by FIPA, and ii) to pro-
vide a set of basic management services common to
any application developed from this general purpose
system.
The FIPA standard defines three common basic
services (conceived like agents in the architecture) to
any MAS (FIPA, 2000): i) Agent Management Sys-
tem, ii) Message Transport Service and iii) Directory
Facilitator. This allows to adopt an homogeneous
approach in which all the platform components are
agents providing relevant services for the proposed
Figure 1: Overview of the Multi-Agent Architecture.
system.
Figure 1 shows the different layers that compose
the e-commerce architecture and how the communi-
cations between them is carried out. Next, each one
of these layers is described.
2.1 User Layer
The user layer represents the interface between the e-
marketplace users and the set of provided services.
Such interface is accessible from a web browser.
There are three different user roles: i) the Admin-
istrator, responsible for managing the e-marketplace;
ii) the Buyer, representing the users interested in buy-
ing products (via direct shopping or auctions); and iii)
the Seller, representing the users interested in selling
products to the buyers of the e-marketplace (via direct
marketing or negotiation). A user can assume multi-
ple roles simultaneously.
When the user registers to the system as a buyer or
a seller, he/she can delegate on software agents cer-
tain operations, allowing them to act in their bene-
fit. The inclusion of this kind of intelligent agents in
e-marketplace is within the semantic web (Hendler,
2004). The intelligent agents which are described be-
low have the ability to interpret the market informa-
tion, satisfy the user requests and generate a benefit
for the user who represents. This allows to reduce the
human interaction and automate several tasks related
to the portal management.
2.2 Multi-agent Layer
In this section the multi-agent layer that supports the
e-marketplace services is described. We will focus on
B2C AND C2C E-MARKETPLACES - A Multi-layer/Multi-agent Architecture to Support them
101
the functionality provided by each agent and the in-
teractions between them. To facilitate the understand-
ing of the proposal, the subsystems that compose the
multi-agent layer are discussed (see Figure 2).
2.2.1 Basic Functionality
The Basic Functionality Agent carries out several
simple services and does not require intelligence be-
cause it implies reactive behavior.
This agent comes into operation simultaneously
with the e-marketplace by performing two manage-
ment operations within the multi-agent architecture
(shared with the others agents of the system): i) regis-
ter to the FIPA agent platform through the Agent Man-
agement System to obtain a valid and unique identi-
fier, and ii) Register to the Directory Facilitator in
order to facilitate its location from a functional de-
scription. To do that, a description according to the
ontology defined by FIPA must be used (FIPA, 2000).
This agent provides the following services:
a) User Management
The user management implies two tasks mainly: i) to
assure the correct subscription, modification and dele-
tion of users within the portal; and ii) to manage the
delegation of the users’ tasks to the intelligent agents
that act in their benefit.
b) Catalog Management
The catalog management involves the proper admin-
istration of such catalog by the portal administrator.
This component is considered like a set of classes or
categories C = {object, c
1
, c
2
, . . . , c
n
} hierarchically
organized through an is a relationship. Such relation-
ship is transitive, fact which ensures that c
i
, c
i
is an
object. The class object is the root class.
When a seller puts up a product for sale, it must
belong to some class c
i
. Hence, each class comprises
a set of objects c
i
= {e
1
c
i
, . . . , e
n
c
i
}. Each e
j
c
i
belong-
ing to a class c
i
is described by means of a set of
attributes or variables V
c
i
= {v
1
c
i
, . . . , v
m
c
i
}, which val-
ues serve to distinguish between different products
belonging to the same class. Furthermore, each vari-
able v
j
c
i
has a range of definition, denoted as RDV
j
c
i
=
{x
1
, x
2
, . . . , x
n
}, which specifies the possible values
x
k
that the variable v
j
c
i
may take. The range of def-
inition of class c
i
, denoted as RDV
c
i
, is defined as
RDV
c
i
= {RDV
1
c
i
, . . . , RDV
m
c
i
}. The variables that de-
scribe a product class may represent different data
types (Castro-Schez et al., 2004).
c) Product Management
A mechanism to manage the portal products is
needed. Its main function is to allow the users to
register/delete products and check the constraints im-
posed by the catalog definition according to the data
types of the category variables. Thus, the consis-
tency and uniformity of e-commerce portal catalog is
guaranteed. This functionality maintains a reactive
scheme that allows to check the user data when there
are interactions with the portal.
d) Dispute Management
The dispute management is reduced to an action per-
formed by the user. This action is to describe the
dispute and register it via the communications kernel
into the data layer. Another relevant task is to monitor
each dispute during its life cycle when necessary and
as established in each case.
e) Trust Management
One of the main problems for users in e-marketplaces
is reliability since the user does not often know the
other party when carrying out transactions. To over-
come this limitation, most of the portals have a trust
system that allows to associate a “prestige” to each
user within the community or the portal. This “pres-
tige” depends on aspects such as efficiency in the buy-
ing process or the product description fidelity given
by the user interested in selling.
The Basic Functionality Agent performs the fol-
lowing tasks: to process the score of each transac-
tion carried out in the portal to determine the user’s
prestige, to provide the user’s prestige to other users
or agents when they request this information, and to
control the concurrentaccess of differentusers to such
information.
2.2.2 Product Acquisition Subsystem
This subsystem provides all the services related to the
product purchase/sale within the portal. A user (or
an agent) executes it in order to acquire the product.
The acquisition may be through direct purchase, auc-
tion, negotiation, etc. It is composed of the follow-
ing agents: sellers, buyers, auctioneers, and payment
agent.
Since the auction processes are common in e-
marketplaces, it is interesting to equip the system with
an auction agent. Within this context, such an agent
registers request for auction, usually on demand by
seller agents, registers the bids carried out by buyer
agents and controls that the process is normally de-
veloped. Moreover, there is another agent, the Buy-
It-Now Agent, which controls the process of direct
sales.
The seller agent automates some tasks related to
the product sale process: i) to contact with other users
ICEIS 2010 - 12th International Conference on Enterprise Information Systems
102
Figure 2: Overview of the multi-agent layer that supports the e-marketplace.
or agents interested in acquiringproducts accordingto
the sale constraints imposed by the represented user,
ii) to ask the buyer users or agents for direct shop-
ping processes in the appropriate time and in the best
conditions for its owner, and iii) to initiate auction
processes to obtain benefits from the competition be-
tween several buyer users or agents interested in some
product managed by the seller agent.
The buyer agent is responsible for representing the
buyer user in the portal with the aim to obtain benefit.
Its responsibilities are as follows: i) to represent the
buyer user in the product direct shopping processes
within the portal, ii) to send bids to the seller agent
in an auction process, which satisfy the seller’s con-
straints when the best circumstances occur in order to
acquire the product, and iii) to order periodic searches
in the portal, having into account the buyer’s prefer-
ences.
Nowadays, little attention has been paid to
the payment system due the fact of being an e-
marketplace prototype. A payment agent will be in-
cluded in the future. This agent will allow to make
transfers related to the cost of the purchased product.
2.2.3 Product Search Subsystem
The product search subsystem is formed by a set of
search agents. Two main functionalities have been
delegated to them: i) to provide an arranged prod-
uct list which may be of interest for a buyer because
they are similar to the provided ideal product descrip-
tion, and ii) to advise to the portal users in the product
search process by giving information about the set of
more frequently used variables by the portal users in
previous searches.
The search agent owns one or more descriptions
of products or ideal objects (o
i
) for the buyer (or its
buyer agent). An ideal object specification consists in
the set of variables V
c
i
V
c
i
selected from the whole
set of variables describing the class c
i
together with
their required values, which are selected from the de-
scribed domains of definition DDV
c
i
. Plus, each vari-
able is provided with a weight P(v
j
c
i
) [0, 1], which
establishes its importance (Castro-Schez et al., 2005).
From such an ideal description o
i
, which may be
precise, imprecise or both, the agent provides a sim-
ilar list of products. The imprecision is mainly due
to the ignorance related to the knowledge of the mar-
ket. To deal with vagueness and precise information,
an homogeneous information representation model is
maintained. The common representation formalism
used in this work is based on the use of Fuzzy Sets
(Zadeh, 1965).
The next step is to calculate the similarity between
each product e
j
c
i
c
i
of the list of similar products
and the ideal object. Basically, this search process
consists in calculating the partial distance between
each one of the variables that compound the ideal ob-
ject and the other products c
i
. Afterwards, when this
process ends up the global distance is calculated as
the weighted sum of the partial distances depending
on the importance of each attribute that describes the
product. In this way, the search agent can build a list
of ordered products based on the global distance with
the more relevant products for the user/agent.
Finally, this agent can be replicated on different
machines to distribute the workload associated with
its two main functions (search and counseling). The
design solution adopted for carrying out such replica-
tion is to use a master-slave scheme and a synchro-
nization mechanism between replicas. To do this, the
pattern observer (Gamma et al., 1995) has been used.
2.2.4 Product Recommendation Subsystem
The product recommendation subsystem can be un-
derstood as a natural extension to the search subsys-
tem. The goal pursued is to make suggestions or rec-
ommendations to the portal users depending on the
relationships between variables to perform realistic
searches. Furthermore, this subsystem facilitates the
analysis of the information gathered by the search
agent by taking into account the user’s preferences.
In this way, the main responsibility of this subsystem
is to offer a product classification service depending
on these preferences or the fitness for the portal users.
B2C AND C2C E-MARKETPLACES - A Multi-layer/Multi-agent Architecture to Support them
103
Figure 3: Definition domain of the variable fitness.
The agent that gives support to the product rec-
ommendation subsystem is the recommender agent,
which has been designed as an utility-based agent,
that is, it is based on an utility function that allows
to establish the more interesting products for users
(Lopez-Lopez et al., 2009b). In order to make recom-
mendations close to the user, the recommender agent
uses the linguistic variable fitness, which takes three
values: very recommendable, recommendable and not
much interesting (Figure 3). In this way, the agent
is able to associate each element e
j
to one or two
of these values by means of a fuzzyfication process,
making use of the global distance existing between
the ideal product o
i
and each e
j
c
i
c
i
.
2.2.5 Maintenance Subsystem
Most e-marketplaces provide mechanisms for gener-
ating reports and statistics about the portal use in or-
der to improve and refine them. Within this context,
the maintenance agent is responsible for generating
reports about the following aspects: i) Activity of the
portal and registered users/agents. This private infor-
mation can be internally used to suggest items or of-
fers in an intelligent way. Furthermore, it is possible
to reward the more active users within the portal; ii)
more desired items; iii) more purchased/sold items;
iv) transactions made within the portal (direct sales or
auctions); v) number of registered users; vi) number
of unregistered users; vii) number of inactive users.
2.3 Infrastructure Layer
The infrastructure layer represents both the software
and hardware resources used by the e-marketplace
supported by the multi-agent architecture discussed
in the previous section. When it comes to software,
the infrastructure layer hosts the following compo-
nents: i) a web server that supports the portal web
interface to make easy the interactions between the
portal users, ii) a communications middleware that
allows the communication between the agents of the
multi-agent layer and provides basic services such as
location or implicit activation. Furthermore, it gives
support to secure communication channels to guar-
antee the data integrity, and iii) a relational database
management system to deploy the database of the e-
marketplace.
3 THE COMMUNICATION FLOW
In order to understand the architecture presented here,
we show the communication steps between the agents
since a user registers a product in the e-marketplace
until this is acquired by another user.
Suppose that a seller wants to register a product
in the e-marketplace. Then, he interacts with the
e-marketplace interface that communicates with the
web server. In the web server a service communicates
with the Basic Functionality Agent that informs the
user about the required data to register the product,
checks this data and, finally, makes it persistent into
the Data Layer.
Now suppose that a buyer wants to acquire a prod-
uct. The first event for him is to interact with the e-
marketplace interface. Next, he has three possibili-
ties: i) to buy the product (if possible), ii) to bid for
it (if possible), or iii) to delegate the acquisition of
the product to a software agent. In all the cases, the
web server has to interact with the suitable software
agents. When the acquisition process finalizes, the ap-
propriate agent contacts with the Payment Agent that
is responsible for the payment. A message is sent to
both the seller and the buyer at this point. This mes-
sage is shown to the suitable user via the interface
of the involved agent, the Buyer Agent or the Seller
Agent.
Then, the general communication mechanism is
as follows: i) to interact with the user interface, ii) to
execute the suitable service in the web server, iii) to
locate the suitable software agent via the middleware,
and iv) to execute the software agent.
4 CONCLUSIONS
The consolidation of the Internet as an everyday tech-
nology has opened a new environment of business
oportunities. Many firms have expanded their busi-
ness in the past decade to take advantage of the
new information technologies, whereas others have
emerged and are solely based on them. This fact has
caused the appearance of new business paradigms,
along with new technological infrastructures to sup-
port them. This is the case of electronic commerce
(which can be defined as any business that is elec-
tronically transacted).
Third-party (independent) B2C and C2C e-
marketplaces are reaching a bit summit as a medium
ICEIS 2010 - 12th International Conference on Enterprise Information Systems
104
that allows to small companies to do business by
means of Internet. These portals are based on com-
plex technological architectures. One of the main rea-
sons why e-marketplaces fail are related to their tech-
nology that is not mature often.
To address this challenge, a multi-agent architec-
ture has been presented to overcome the limitations of
previously arhitectures developed. The new designed
architecture has the following advantages: i) scalabil-
ity to easily extend the system functionality, ii) it is
efficient in computional terms, since the calculations
are distributed over several machines depending on
the workload, iii) it uses open standards to promote
the interoperability and data exchange among compa-
nies processes and system internal processes, iv) it is
general, being possible to sell or buy goods or ser-
vices of any kind, and v) it has a safety communica-
tion framework to avoid “man in the middle” attacks.
ACKNOWLEDGEMENTS
This work has been funded by the Spanish Min-
istry of Science and Innovation and by the Regional
Government of Castilla-La Mancha under the Re-
search Projects Ref. TIN2009-14538-C02-02 and
Ref. PII2I09-0052-3440.
REFERENCES
Bar, F. (2001). The Construction of Marketplace Architec-
ture, volume 2001, pages 27–49. Tracking a Transfor-
mation: E-commerce and the Terms of Competition in
Industries, the brie-igcc e-conomy project task force
on the internet edition.
Bruckner, L. K. and Kiss, T. (2004). Grid solution for
e-marketplaces integrated with logistics. Distributed
and Parallel Systems.
Brunn, P., Jensen, M., and Skovgaard, J. (2002). E-
marketplaces: crafting a winning strategy. European
Management Journal, 20(3):286–298.
Castro-Schez, J., Jennings, J., Luo, X., and Shadbolt, N.
(2004). Acquiring domain knowledge for negotiating
agents: a case of study. Int. J. of Human-Computer
Studies, 1(61):3–31.
Castro-Schez, J., Jimenez, L., Moreno, J., and Rodriguez,
L. (2005). Using fuzzy repertory table-based tech-
nique for decision support. Decision Support Systems,
3(39):293–307.
eBay Inc. e-bay: http://www.ebay.com/ [accessed on
20/01/2010].
FIPA (2000). Fipa agent specification. http://www.fipa.org/
specs/fipa00023/index.html [accessed on
12/01/2010].
Gamma, E., Helm, R., Johnson, R., and Vlissides, J. (1995).
Design patterns: elements of reusable object-oriented
Software. Addison-Wesley Professional, Reading,
MA.
Hendler, J. (2004). Agents and the semantic web. IEEE
Internet Systems, 16(2):30–37.
Hu, B. (2009). Research on third-party b2b e-marketplaces
service orientation from global production networks
embeddedness of smes perspective. 2nd Int. Symp.
Electronic Commerce and Security, pages 385–389.
Huhns, M. and Singh, M. (2005). Service-oriented com-
puting: Key concepts and principles. IEEE Internet
Computing, 9(1):75–81.
Li, C.-S., Chang, Y.-C., and Smith, J. R. (2001). An
e-marketplace infrastructure for model-based match-
making between consumers and providers of multi-
modal earth science data. IEEE Int. Conf. Multimedia
and Expo (ICME’01), page 312.
Lopez-Lopez, L., Miguel, R., Albusac, J., and Castro-
Schez, J. (2009a). Improving searching usability in
direct shopping portals. In 28th North American Fuzzy
Information Processing Society Annual Conference.
Lopez-Lopez, L. M., Castro-Schez, J. J., Vallejo-Fernandez,
D., and Albusac, J. (2009b). System based on machine
learning algorithm for b2c portals. In IEEE/WIC/ACM
Int. Joint Conf. on Web Intelligence and Intelligent
Agent Technology, pages 524–531.
Miguel, R. and Castro-Schez, J. (2009). e-zoco: an open
e-marketplace. http://oreto.esi.uclm.es/aplicaciones/
ezoco [accessed on 4/12/2009].
Turban, E., Lee, J. K., King, D., McKay, J., and Marshall,
P. (2008). Electronic Commerce: A Managerial Per-
spective. Prentice-Hall, 5 edition.
Weiss, G. (1999). Multiagent systems: a modern approach
to distributed artificial intelligence. The MIT Press,
Cambridge, Massachusetts London, England.
Wise, R. and Morrison, D. (2000). Beyond the ex-
change: The future of b2b. Harvard Business Review,
78(6):86–97.
Zadeh, L. (1965). Fuzzy sets. Information and Control,
8:338–353.
Zoconet. Todocoleccion: http://www.todocoleccion.net/
[accessed on 15/01/2010].
B2C AND C2C E-MARKETPLACES - A Multi-layer/Multi-agent Architecture to Support them
105