What's Jim?
|
|
Jim is a general purpose interagent capable of providing agents with a highly versatile range of programmable ---before and during the agent's run-time--- communication and conversation services. An interagent is an autonomous software agent able to manage (mediate) the communication and conversation between an agent and the agent society wherein this is situated. Interagents
- Relieve agents from the overload represented by the management of the communication and conversation tasks necessary for an agent living in an multi-agent system.
- Completely ``agentifies'' the communication that takes
place between agent applications [43].
- Permit agents to reason about both communication and conversation at a higher level of abstraction.
- Provide a complete set of facilities that allows agent
engineers to concentrate on the design of their agents' inner and social behaviour.
|
Motivation
|
Multi-Agent systems or Agent-based Systems:
- provide a way of conceptualizing sophisticated software applications that face problems involving multiple and (logically and often spatially) distributed sources of knowledge.
- can be thought of as computational systems composed of several agents that interact with one another to solve complex tasks beyond the capabilities of an individual agent.
|
|
The development of agent-based systems can be regarded as
a process composed of two well-defined, separate stages concerning
respectively:
- the agents' logics: from the agents' inner behavior
(knowledge representation, reasoning, learning, etc.) to the
agents' social behavior responsible for high-level conversation
tasks (the selection, ordering, and communication of
the results of the agent activities so that an agent
works effectively in a group setting [1, 2]).
- the agents' interactions taking place at several levels:
-
content level, concerned with the information content communica
ted
among agents;
-
intentional level, expressing the intentions of
agents' utterances,
usually as performatives of an agent communication language
(ACL), e.g. KQML, FIPA ACL, etc.;
-
conversational level, concern
ed
with the conventions shared
between agents when exchanging utterances;
-
transport level, con
cerned
with mechanisms for the transport of utterances; and
-
connection level, contemplating network protocols (TCP/IP, HTTP
, etc.).
Notice that nowadays a large amount of time during the development of
agent-based systems is devoted to the management of the
aforementioned time-consuming, complex agents' interactions. Since
most of these appear to be domain-independent, it would be desirable
to devise general solutions at this development stage that can be
subsequently reused for the deployment of other multi-agent systems.
In this manner, and very importantly, agent engineers could
exclusively concentrate on the domain-dependent agents' logics
issues. For this purpose, we have developed an infrastructure that eases the construction of agent-based systems by taking charge of the cumbersome
interaction issues.
|
An Infrastructure for Agent-Based Systems
|
Our infrastructure relies upon three fundamental elements:
- Conversation Protocols, conversation patterns that impose a set
of rules on the communicative acts uttered by the agents participating
in a conversation (what can be said, to whom, and when).
- Interagents, autonomous software agents that mediate the
interaction between each agent and the agent society wherein this is
situated. Very importantly, interagents employ conversation protocols
for mediating conversations among agents.
- SHIP an extenSible and Hierarchical Interaction Protocol that
offers a layered approach to support all levels of agent
interaction.
|
Jim's capabilities
|
Jim has been fully implemented in Java. Its highly flexible architecture provides the following funcionalities:
- Queuing of outgoing utterance from its customer and
queuing of incoming utterances from (the interagents of) other agents.
- Asynchronous communication between agents.
- Synchronous communication between agents.
- Agent naming services (white pages).
- Handling of expired utterances for automatic recovery of
transmission errors.
- Multiple conversations.
- CP negotiation
- CP verification
- CP instantiation
|
Documentation
|
| - Jim/1.0 Reference Manual |
| - Jim/1.0 User's
Guide |
Papers
|
| - | Java Interagents for Multi-Agent Systems. Francisco
J. Martin, Enric Plaza, Juan A. Rodriguez-Aguilar, Jordi Sabater. AAAI-98
Workshop on Software Tools for Developing Agents, 1998. [.ps.gz|.pdf.gz|html] |
|
| - | Jim, a Java Interagent for Multi-Agent Systems. Francisco
J. Martin, Enric Plaza, Juan A. Rodriguez-Aguilar, Jordi Sabater. CCIA-98 1r
Congrés Català d'Inteligència Artificial, 1998. [.ps.gz|.pdf.gz|html] |
|
| -
| An Infrastructure for Agent-Based Systems: an Interagent Approach.
Francisco J. Martín, Enric Plaza, Juan A. Rodriguez-Aguilar.
in IJISInternational Journal of Intelligent Systems. 1999 |
|
| -
| Composing
Multi-Agent Systems with Interagents. Francisco J. Martín
, Enric Plaza, Juan A. Rodríguez-Aguilar. In SEID'99Proceedings of the Simposio Español
de Informática Distribuida , Santiago de Compostela, Spain, February
24-26, 1999 |
|
Download
|
| - Jim/1.0beta |
The Jim Team
|
|
|
|
[ IIIA | IIIA
Agents | SMASH | Plural]
|
|