Simulation of a trading multi-agent system
P. Mariano, A. Pereira, L. Correia, R. Ribeiro, V. Abramov, N. Szirbik,
J.Goossenaerts, T. Marwala, P. De Wilde
Abstract—In a trading scenario agents interact with each other,
selling and buying resources. In order to control the behavior of the
trading scenario, the interactions must be coordinated. We present
a brief discussion of communication types and coordination models
applicable in multi-agent systems. We find a programmable tuple
space more appropriate to manage and rule the interactions be-
tween the trading agents. We discuss the advantages of a trading
agent model that deals with the trading strategy, concentrating on
what to buy or sell. This relieves the agent from the task of coordi-
nating the negotiations and their revoking or acceptances. This is
the task of the programmable tuple space.
Keywords—Programmable tuple space, coordination, communi-
cation.
I. I NTRODUCTION
In a trading framework agents must interact with each
other, selling and buying resources. Trading agents
should sell for the higher proposal and vice-versa for buy-
ing. Each negotiation consists of a sequence of interac-
tions. These interactions must be regulated [4] or else the
trading framework might collapse. In order to control the
behavior of the trading scenario, we discuss some coor-
dination models that can be appropriate to this scenario.
Another important aspect of the framework is commu-
nication between agents. It may influence the potential
trading partners.
The rest of this article is organized as follows: sec-
tion II introduces some aspects of communication; sec-
tion III presents some coordination models that are rele-
vant to the trading framework; then we describe the trad-
ing framework in section IV; we describe the simulations
of the trading framework performed in section V and the
results obtained are shown in section VI; the conclusions
are presented in section VII; finally in section VIII we
point some future directions to our work.
II. COMMUNICATION IN MAS
Agents need some way to exchange information. This
is done through communication. Here we are only inter-
P. Mariano, A. Pereira, L. Correia and R. Ribeiro are with
the Department of Informatics, New University of Lisbon, Por-
tugal. E-mail: pedro.mariano, alfredo.pereira,
luis.correia, rita.ribeiro @di.fct.unl.pt
V. Abramov, N. Szirbik and J. Goossenaerts are with the Infor-
mation & Tecnhology Department, Eindhoven University of Technol-
ogy, The Netherlands. E-mail: v.a.abramov, n.b.szirbik,
j.b.m.goossenaerts @tm.tue.nl
T. Marwala and P. De Wilde are with the Electrical and
Electronic Engineering Department, Imperial College of Science,
Technology and Medicine, England. E-mail: t.marwala,
p.dewilde @ic.ac.uk
ested in the communication type, which may affect coor-
dination.
Communication can be roughly divided in point-to-
point and broadcast [24]. There are also communication
types with features from these two broad classes, such as
local broadcast (as used by social insects) and group com-
munication. Next we present a brief summary of each
type of communication.
A. Point to point
In point to point communication [24], an agent needs
the address (such as mail address, IP address, identifica-
tion number) of its partners in order to engage in commu-
nication with them. Depending on the case study it may
turn out a difficult task to know the updated address (field
robots [11], mobile agents [6]). An agent may change
location, an agent’s address may have a time limit (the
agent advertises its current address periodically), and an
obstacle may preclude direct communication (an interme-
diate network node is down). In the work reported in [11]
the agents merely observe each other in order to assess if
they have achieved the global goal.
Point-to-point communication requires that an agent
knows, before hand, what are the capabilities of the re-
ceiver. Either the capabilities are fixed and known at start-
ing time, or there is some repository or there is some an-
nouncement protocol. The last two methods allow new
agents into the multi-agent system. Possible solutions
are facilitators [8], where agents record their services and
needs. An agent may search the facilitator in order to
fulfill its needs.
This communication type is useful if the entities of the
problem being tackled are organized in a hierarchy. We
can structure a multi-agent system according to this prob-
lem property, assigning to each agent a well defined role
and address. Since the agent location is known, commu-
nication is easier. If an agent (subordinate) lacks some-
thing, an agent that is just above it in the hierarchy chain
is responsible to solve the problem. As we go up in the hi-
erarchy we have more resources, we have a broader view
of the multi-agent system, we know who is responsible to
do certain tasks. Agents in the bottom are specialized in
their tasks, but do not know very much of other tasks of
the multi-agent system.
B. Broadcast
In broadcast communication the agent’s address is
managed by the communication type. Therefore, agents
0-7803-77-2/01/$10.00 © 2001 IEEE
3378