Mohamed Elkobaisi
Academy of Graduate Studies, Benghazi, Libya
Keywords: Mobile Agent, E-commerce.
Abstract: Agent can be enhancing company modelling as well as to offer new techniques for developing intelligent
applications. The key aspects of e-commerce agents are their autonomy, their mobility, their abilities to
perceive, reason, and act in their surrounding environments, as well as the capability to cooperate with other
agents to solve complex problems. Autonomy of agents involves adaptability to engage in negotiations
governed by mechanisms not known in advance, while their mobility entails such negotiations taking place
at remote locations. This paper aims at combining adaptability with mobility, by describing of agents
appearing in the system and their basic interactions. Furthermore, this paper discusses the reasons why use
of mobile agents within suggested system.
Fundamentally, the system represents a distributed
marketplace that hosts e-Suppliers and allows e-
Buyers to “visit” them to purchase products. There
are six different agents involved in the system which
are (Supplier, Storehouse, Seller, Monitor, Buyer,
and Registration Agent “RA”). The conceptual
architecture of the system illustrating proposed types
of agents and their interactions in a particular
configuration is shown in Figure 1.
Let us now describe each agent appearing in that
figure and their functionalities. Supplier and the
Buyer agents represent system “users” — merchants
that sell products and buyers who want to purchase
them. Buyer agents (Visitors) have the option to
negotiate with the Suppliers, to bid for products and
to choose the Supplier from which to make a
purchase. The first step in the system, Buyer agents
register with the Registration agent (RA) and await
user requests. RA is work as librarian that makes the
system easier and faster for buyer and supplier
because in the large companies and enterprises "The
time is money". Similarly, Supplier agents create
Monitor agents and register them with the RA.
Furthermore, each Supplier agent registers there all
products that are available in its e-store (an initial
list of available products). In this way, the RA store
information (addresses and identifiers) about all
Supplier, Monitor and Buyer agents existing in the
system, and store information about available
products, see also (Trastour,2002). The following
Sequence diagram explains the interactions among
Human Buyer, Buyer Agent, RA, and Supplier
agent, see figure (2). On the other hand, on supply
side, Supplier agents are responsible for creating
Seller agents (one for each product to be sold), each
Seller agents playing exactly the same role.
Buyer agents seek to the best possible offer
matching user-specified requirements. Buyer agents
engage in price negotiations and gathers offers and
decides where from to attempt at making an actual
Buyer movement
Figure 1: Architectural of the System.
Elkobaisi M. (2006).
In Proceedings of the Eighth International Conference on Enterprise Information Systems - SAIC, pages 177-180
DOI: 10.5220/0002440101770180
purchase or decides that purchase that would satisfy
its user cannot be made. Finally, in addition to
agents proposed, Storehouse agents, also created by
Supplier agents (one such agent for every e-store in
the system). Storehouse agents are responsible for:
management of products available for sale, and
management of reserved products, see figure (3).
Figure 2: Sequence diagram for system interactions.
Monitor StorehouseSeller
4: Release Buyers
5: Negotiate with Buyers
1:information (products , quantities)
6: Waiting for Seller notification
7: Inform (negotiations Result)
8: Reserve a given quantity
10: Waiting Storehous response
12: Cancel the reservation
(purchase rejected )
11: The Response
3: Filling list of Buyers
Figure 3: Sequence Diagram for supplying state.
Supplier Agent:
The Supplier agent acts as the representative of the
“user”. The Supplier agent creates Monitor agent, a
Storehouse agent and Seller agents. The creation of
the Storehouse agent involves passing information
about goods that are available for sale, while
creation of the Monitor and Seller agents involves
providing them with information that are to be used
in price negotiations. After creation, the Supplier
agent supervises negotiations and the product flow.
If they were successful, Seller agent informs the
Supplier agent, which asks the Storehouse agent to
reserve a given quantity of a particular product (for a
specific amount of time). The events can then
proceed according to three different cases. (1) If the
winning Buyer confirms purchase the Supplier asks
the Storehouse agent to check the reservation. If the
reservation did not expire then the Supplier informs
the Buyer agent about acceptance of transaction. (2)
If the reservation has expired, then the Supplier
agent sends a rejection message to the Buyer agent.
(3) If the Buyer agent rejects purchase and informs
the Supplier agent about it, the Supplier agent asks
the Storehouse agent to cancel the reservation.
Figures 4: State diagram of the Supplier agent.
Monitor agent:
The Supplier agents cooperate directly with Monitor
agents that: (1) Interact with Buyer agents: Admit
them to the negotiations and provide them with
important information about current negotiation. (2)
In suitable moments release Buyer agents to
appropriate Sellers. (3) Creates and update a register
list that contains all current Buyer agents. The state
diagram of the Monitor agent is presented in Figure
5 (the high level of Monitor functionality) and
continued in Figure 6 (detailing prepare to
negotiation). When an appropriate number of Buyer
agents have registered, the Monitor passes their
identifiers to the Seller agents and thus allows the
negotiation to start. As soon as this step is
completed, the Monitor cleans the list of registered
Buyer agents and the admission/monitor process is
restarted (assuming that the Seller agent is still
alive). When new Buyer agents are delivered, a list
of currently registered Buyer agents are put into a
buffer “Buffer registration list”. These agents have
to be serviced first.
Figure 5: State diagram of the Monitor agent.
Figure 6: State diagram (Prepare to Negotiation).
Finally, in a special case when a given product has
been sold-off and will not be replenished, the
Supplier agent terminates the Seller responsible for
selling it and the Monitor informs awaiting Buyer
agents about this fact.
Storehouse Agent:
The Supplier agent interacts directly also with the
Storehouse agent. In the early stages of its
functioning the Storehouse agent is supplied
(through messages from the Supplier agent) with
information about products and their quantities.
Then the Storehouse agent awaits notifications from
the Supplier agent. The Supplier agent notifies the
Storehouse agent about: (1) Registration of new
products for sale. (2) Product reservations.
(3)Purchase confirmations.
(4)Purchase terminations. If reserved products
whose reservation time has expired are found, these
reservations are cancelled, reserved products are
added to the pool of products available for sale and
the Supplier agent is informed about a new amount
of available commodities. Note that the information
about cancelled reservation is provided to the
Supplier agent only when a purchase is requested by
the Buyer agent and the Supplier agent is checking if
a transaction can be completed. Finally, if quantity
of some product becomes 0, the Storehouse agent
informs about it the Supplier agent, which may
decide to terminate the corresponding Seller agent.
In this case it informs about it both the RA and the
Storehouse agents, see figures (5, 6).
Seller agent:
Finally, Seller agent is the last agent working on the
supply side of the system that appears to be a simple.
This simplicity comes form the fact it has no
complex interactions. Note that not all negotiations
have to end by establishing a winner and the system
is able to handle such an event.
At the same time, all data about negotiations is
sending to the Supplier agent that collects and
analyses them. Obviously, another aspect of
autonomy involves “intelligence” that can be
understood as capability to reason over past
experiences and domain knowledge in order to
maximize utility.
Finally, the final stage in the system called “Sale
finalization” which includes such actions as payment
and delivery no represent in the system.
Waiting for start negotiations
waiting for msgs
update quantity
register Buyer
Suplier msg
Buyer msg
finalization of negetiations
There is no Buyer [ restart timer]
There is no winnerThere is a winner
Figure 7: State diagram of the Seller agent.
Buyer agent:
Finally, on the purchasing side, the Buyer agent (that
is a mobile) listens for orders from the customer and,
to fulfill them:
(1) Queries the RA which stores sell the requested
product. (2) Communicates with the Monitor agent
see Figures (5, 6) to obtain entry to the negotiations.
(3) Manages the process of making purchases on
behalf of the customer, then the Buyer agent informs
the customer about the results of price negotiations.
For a specific amount of time and when the wait-
time is over the Buyer agent enters a complex state:
- Attempt to complete a selected purchase.
- Cancel the existing reservations and re-engage in
price negotiations (thus awaiting a better
- Declare the purchase impossible and notify the
customer accordingly, see figure (8).
When the attempt at completing a purchase is
successful, then the Buyer agent sends messages to
customer. The situation is slightly more complicated
when the attempt was unsuccessful and purchase
was not deemed impossible. Then the Buyer agent
cancels current reservations and return to price
Figure 8: State diagram of the Buyer agent.
Scripts The agent mobility in E-commerce system
plays an important role and provides significant
benefits. Let us start by considering someone who,
sitting behind a slow Internet connection (which is
not an uncommon situation), tries to participate in an
E-auction (Bejar & Juan, 2001). In this case it is
almost impossible to be sure that ones bid:
(1) Reaches E-auction server in time (Tamma et al
2002). (2) Is sufficiently large to outbid opponents
that have been bidding while connected over a fast
link (information about auction progress as well as
our responses may not be able to reach their
destinations sufficiently fast). Here, network-caused
delays can be significant for the outcome of
negotiations (purchase of the desired product may be
Obviously, problems described here can be avoided
if an agent representing user is located at the same
server where the negotiations take place with assume
that an agent is capable of autonomously completing
the requested task (Artikis et al, 2001); resulting in
offers being made fast enough to efficiently
participate in price negotiations.
This paper discusses ecommerce agent system that
uses mobile agent technologies for implementing
flexible automated negotiations. After presenting an
overview of the proposed system by using UML
diagrams, the attention is focused on questions
involved in agent mobility. I have argued that agent
mobility is the most optimal solution for the e-
commerce model considered here. Finally I have
discussed why there is no simple solution to the
problem of finding the optimal offer when multiple
agents negotiate prices within multiple e-stores and
thus why this solution is as optimal as any other.
Trastour, D., Bartolini, C., and Preist, C. 2002. Semantic
Web Support for the Business-to-Business E-
Commerce Lifecycle. In: Proceedings of the
WWW’02: International WorldWide Web Conference,
Hawaii, USA, ACM Press, New York,USA.
Bejar, J., and Juan, A., 2002. To bid or not to bid agent
strategies in electronic auction games. In Frank
Dignum and Ulises Cortes, editors, Agent-Mediated
Electronic Commerce III — Current Issues in Agent
Based Electronic Commerce Systems, Germany.
Tamma, V., Wooldridge, M., Dickinson, I., 2002. An
Ontology Based Approach to Automated Negotiation.
In: Proceedings AMEC’02: Agent Mediated
Electronic Commerce, LNAI 2531, Springer-Verlag
2002, 219–237.
Artikis, F. Guerin, and J. Pitt 2001. Integrating interaction
protocols and internet protocols for agent-mediated E-
commerce. In Frank Dignum and Ulises Cortes,
editors, Agent-Mediated Electronic Commerce III —
Current Issues in Agent Based Electronic Commerce
Systems, Germany.