Previous: KQML as an Agent Communication Language
Up: KQML as an Agent Communication Language
Next: KQML and Intelligent Information Integration
Introduction
The computational environment which is emerging in such programs as the National Information Infrastructure (NII) is characterized by being highly
distributed, heterogeneous, extremely dynamic, and comprising
a large number of autonomous nodes. An information system
operating in such an environment must handle several emerging
problems:
- The predominant architecture on the Internet, the cli
model, is too restrictive. It is difficult for current Internet
information services to take the initiative in bringing new, critical
material to a user's attention. Some nodes will want to act as both
clients and servers, depending on who they are interacting with.
- Several forms of heterogeneity need to be handled, e.g.
different platforms, different data formats, the capabilities of
different information services, and the implementation technologies
employed.
- Many software technologies such as event simulation, applied
natural language processing, knowledge--based reasoning, advanced
information retrieval, speech processing, etc. have matured to the
point of being ready to participate in and contribute to an NII type
environment. However, there is a lack of tools and techniques for
constructing intelligent clients and servers or for building
agent--based software in general.
A community of intelligent agents can address each of the problems
mentioned above. When we describe these agents as intelligent, we
refer to their ability to: communicate with each other using an
expressive communication language; work together cooperatively to
accomplish complex goals; act on their own initiative; and use local
information and knowledge to manage local resources and handle
requests from peer agents.
Knowledge Query and Manipulation Language (KQML)
is a language that is designed to support interactions among
intelligent software agents. It was developed by the ARPA supported
Knowledge Sharing Effort [27][24] and separately
implemented by several research groups. It has been successfully used
to implement a variety of information systems using different software
architectures.
-----------------------------------------------
finin@cmsc