Proposal for Agent/Agent Communication Technology
-- Coordination Protocol Description Language AgenTalk --

NTT Communication Science Laboratories
2-2 Hikaridai, Seika-cho, Soraku-gun, Kyoto 619-02 Japan

Category:

Agent/Agent Communication (5.3); Interaction Protocols (5.3.4)


Contact:

Kazuhiro Kuwabara
R&D Liaison, R&D Management Dept.
NTT Research and Development Headquarters
3-19-2 Nishi-shinjuku, Shinjuku-ku, Tokyo 163-19 JAPAN
Phone: +81-3-5359-4172; Fax: +81-3-5359-1190
e-mail: kuwabara@cslab.kecl.ntt.co.jp

Introduction:

This proposal is based on the coordination protocol description language called AgenTalk, which we have been developing [1,2]. The proposal includes:

This proposal is mainly intended to provide description and execution models of protocol description for agent/agent communication rather than a language with a concrete syntax.

A preliminary implementation of AgenTalk in Common Lisp (with multiple thread extension) is available at our WWW site (http://www.cslab.tas.ntt.jp/at/).


How this proposal satisfies the criteria in the Call-for-Proposals:

The protocol is represented based on an extended finite state machine. The representation of the extended finite state machine is called a script in AgenTalk. A script has rich features to facilitate agent protocol programming.

The basic contract net protocol has been described in AgenTalk. In addition, extended protocols of the basic contract net protocol have been described using the inheritance mechanism of AgenTalk.

The architecture of AgenTalk allows a meta-level control of protocol execution, which allows the implementation of an exception handling mechanism [3].

Additional features of AgenTalk:

The inheritance mechanism as seen in an object oriented language has been introduced in the definition of a script. Thus, a new protocol (script) can be defined by using an existing protocol (script) as a basis and adding only the difference between a new script and the existing one.

A pre-defined domain-independent protocol needs to be customized for each specific application. In addition, an agent in the same application may require slightly different behavior (for example, an agent may have its own strategy).

AgenTalk defines the interface for customizing the behavior of a script (extended finite state machine). This interface is called an agent function, and is a kind of callback function. An agent can customize a protocol by providing its own agent function definition.

Multiple scripts can be executed simultaneously. This mechanism allows an agent to participate in multiple interactions (conversation) among agents at the same time.

In addition, an agent may invoke a top-level script, when an agent is started. This top-level script can invoke another script and control the execution of invoked scripts. In this way, the top-level script can be viewed to provide a meta-level control of script execution.

Intellectual property rights:

The term "AgenTalk" has been applied for a trademark in Japan.


Acknowledgement:

The specification of AgenTalk was co-developed by NTT Communication Science Laboratories and Ishida Laboratory, Department of Information Science, Kyoto University.

References:

[1] Kuwabara, K., Ishida, T., and Osato, N., "AgenTalk: Coordination Protocol Description for Multi-Agent Systems", Proc. First International Conference on Multi-Agent Systems (ICMAS '95), pp. 455, 1995.
[2] Kuwabara, K., Ishida, T., and Osato, N., "AgenTalk: Describing Multiagent Coordination Protocols with Inheritance", Proc. 7th IEEE International Conference on Tools with Artificial Intelligence (ICTAI '95), pp. 460-465, 1995.
[3] Kuwabara, K., "Meta-Level Control of Coordination Protocols", Proc. Second International Conference on Multi-Agent Systems (ICMAS '96), pp. 165-172, 1996.