communication, two conversation diagrams are
necessary, each with a sequence of steps. For
instance, obstacle movement has conversation
diagrams for supervisor, coordinator, and
transporter. Every sent message has a name and
content. The content can be missing if the message
has only control role.
In our approach, the message content is always
an ontology object. By this kind of messages we can
transmit among agents any concept from the system
ontology. Each time when information about a
system object is exchanged, an ontology object will
be in fact transmitted. The minimum information of
content is the type, coordinates and dimensions of an
object.
In the multiagent system built to serve a
supermarket, the obstacles that must be moved can
be different objects from the ontology. For instance,
when the coordinator sends a message to the
transporter for moving an object, this object can be
taken from two conceptual categories, with the same
parent ConnectedObject. One concept is Artifact –
Product where the obstacle can be Desk, Table,
Chair, Case, Bin, and the other concept is
OrganicObject, that can be Human or Plant. The
transporter will send to the supervisor a message
with an object that is itself, TransporterAgent, and
has the coordinates, self-identifier, and other
information necessary for mission completion. In the
ontology taxonomy, TransporterAgent is part of the
MobileAgent concept, which identifies the mobile
robots used in mobile multirobot system, and comes
from Artifact – Device – Robot concepts.
The agents are instantiated and put into a
network diagram. A number, type and location
identify them. The built multiagent system is
dynamic. Therefore in every moment new agents
can be introduced. Agents are placed on the same
computer or in remote computers, based on their
association with mobile robots. The collective
communication is provided by broadcast
transmission. Every agent is a separate execution
thread and has one’s own port for sending and
receiving messages.
By using the method of information exchange at
the ontological level, it is possible to share
knowledge from the entire ontology between any
agents from the multiagent system. This improves
the capabilities of the system and assures a reliable
execution of the missions, a better adaptability and
specialization to changes.
4 SIMULATION CONDITIONS
AND RESULTS
The multiagent system implementation is made in
Java language, with IntelliJ IDEA support (IntelliJ
IDEA, 2006). Conversations structure uses
agentMom (Message Oriented Middleware),
component of agentTool (MASE developer)
(agentTool, 2005). The application uses
BroadcastServer interface, implemented by every
agent or agent component. An agent can share
different types of conversations. The agents and
conversations are in different threads of execution.
The agents run in parallel, independently on each
other. All conversations are made at the same time.
The ontology classes are instantiated and
transmitted in messages content. The system’s
agents have different knowledge from the ontology.
For instance, the supervisor agent knows all kinds of
objects used in conversations because it is the one
who identifies the objects and decides what type
they have. The coordinator has the same knowledge
like the supervisor because it makes the connection
with all the agents from the system. The transporter
and cleaner agents know only sub-trees of ontology,
those in correspondence with their activity areas.
The concepts used in conversations from
ontology are Case for obstacle, ConnectedObject for
dirt and Human for intruder.
Objects use length, width, and height
dimensions. The height is used to compute the
volume. The intruders don’t use dimensions because
only their position is important for the system. The
positions of objects are implemented in the Object
concept.
We implement a WorldInstance class with
information about the types and positions of agents
and objects, the minimum, maximum, and implicit
dimensions, and the work area. A part of this
information can be modified.
The multiagent system developed for the mobile
multirobot system has been tested in simulation
conditions. We built a simulation framework for sets
of activities. The agents are associated with robots
having different functionalities. Possible problems
of synchronization and sharing resources have been
solved.
Agents have windows associated with them.
These are placed in tabs in main window of the
application interface used for messages exchange
and actions. These messages show that the
ontological information is indeed exchanged. The
coordinator has two supplementary windows, to
manage the control of supervisors and transporters.
ICINCO 2007 - International Conference on Informatics in Control, Automation and Robotics
458