The Knowledge Query and Manipulation Language, or KQML, is a language
and protocol for communication among software agents and
knowledge-based systems
A knowledge-based system (KBS) is a computer program that reasons and uses a knowledge base to solve complex problems. Knowledge-based systems were the focus of early artificial intelligence researchers in the 1980s. The term can refer to a b ...
. It was
developed in the early 1990s as part of the
DARPA
The Defense Advanced Research Projects Agency (DARPA) is a research and development agency of the United States Department of Defense responsible for the development of emerging technologies for use by the military. Originally known as the Adva ...
knowledge Sharing Effort, which was aimed at developing techniques for building large-scale knowledge bases which are
share-able and re-usable. While originally conceived of as an interface to knowledge based systems, it was soon repurposed as an
Agent communication language
Agent Communication Language (ACL), are computer communication protocols that are intended for AI Agents to communication with each other.
During the 2007, protocols of this nature were proposed which include:
* FIPA-ACL (by the Foundation for In ...
.
[Tim Finin; Jay Weber; Gio Wiederhold; Michael Gensereth; Richard Fritzson; Donald McKay; James McGuire; Richard Pelavin; Stuart Shapiro; Chris Beck]
DRAFT Specification of the KQML Agent-Communication Language (PostScript)
June 15, 1993.
Work on KQML was led by
Tim Finin of the
University of Maryland, Baltimore County
The University of Maryland, Baltimore County (UMBC) is a Public university, public research university in Catonsville, Maryland named after Baltimore County, Maryland, Baltimore County. It had a fall 2022 enrollment of 13,991 students, 61 un ...
and Jay Weber of EITech and involved contributions from many researchers.
The KQML message format and protocol can be used to interact with an intelligent system, either by an
application program
Application software is any computer program that is intended for end-user use not operating, administering or programming the computer. An application (app, application program, software application) is any program that can be categorized as ...
, or by another intelligent system. KQML's "performatives" are operations that agents perform on each other's knowledge and goal stores. Higher-level interactions such as
contract nets and negotiation are built using these. KQML's "communication facilitators" coordinate the interactions of other
agents to support
knowledge sharing
Knowledge sharing is an activity through which knowledge (namely, information, skills, or expertise) is exchanged among people, friends, peers, families, communities (for example, Wikipedia), or within or between organizations. It bridges the ind ...
.
Experimental prototype systems support concurrent engineering, intelligent design, intelligent planning, and scheduling.
KQML is superseded by
FIPA-ACL.
References
{{reflist
Knowledge representation languages
Agent communications languages