A framework for developing conversational agents
August 1, 1999
The term ‘agent’ has always been a moving target, implying different properties to the designers of different systems. Consequently, agent-based systems have widely varying architectures and are frequently incompatible. The use of development environments or base platforms is an effective solution to this problem, allowing developers to focus on internal aspects of their systems while embedding them in a common framework. This situation has been improved considerably by the development of agent communication languages, which facilitate interoperability by standardizing the ways in which agents communicate. A number of such environments exist for agent development, and a few have become quite successful. This work presents Jackal, a comprehensive communication package that supports the construction and deployment of distributed, Java-based Multi-Agent Systems. Because communication is so central to distributed systems, Jackal integrates two important components: A structured, conversation-based approach to message management, which supports the abstract specification of agent behavior, and the KQML Naming Scheme (KNS), a set of protocols for advanced address resolution and agent identification. The conversation mechanisms support the specification of agent behavior in high level, abstract protocols, which are interpreted within the context of messages in the Jackal-based agent. These protocols can be easily uploaded by or exchanged among agents at runtime. KNS provides a communication service layer that encompasses agent naming and name resolution, persistent distributed identity, and authentication. Jackal integrates conversation management and KNS in a flexible, extensible framework that can be used by a single agent or shared as a community resource. Its blackboard-based internal architecture and extensive support for inter-agent communication differentiate Jackal from other development tools currently available. This work explores Jackal in some detail, and describes the use of Colored Petri Nets (CPN), a well-research formalism for concurrency, in modeling agent conversation policies. A description language, Protolingua, is proposed, which will allow agents to exchange and manipulate CPN-based protocols.
University of Maryland, Baltimore County
Computer Science and Electrical Engineering
Downloads: 150 downloads