Knowledge Sharing
The Knowledge Sharing effort of the Logic Group is concerned with
automating the interoperation of programs. Our approach to
interoperation is based on programs called agents. Agents use
the Agent Communication Language (ACL) to supply machine processable
documentation to the system programs (called facilitators),
which coordinates the activities of the agents. The facilitators
assume the burden of interoperation and the application programmers
are relieved from this responsibility.
The difference between the knowledge sharing approach to software
interoperation and previous approaches lies in the sophistication of
the processing done by the facilitators. Agents register by specifying
their interests and capabilities to a facilitator. Following this,
agents can make requests for services from a facilitator. The
facilitator is capable of: 1) forwarding requests to another agent
that can handle it, 2) decomposing a request, with different parts
being handled by different agents, and then combining the pieces to
generate the answer, 3) forwarding information to agents that have
expressed interests in monitoring conditions, 4) buffering
information, 5) translating information between vocabularies to match
an agents interface.
Overview Papers:
Information on Knowledge Sharing Languages:
The following software tools are also available:
- a common lisp API for the Knowledge
Sharing Architecture
- a common lisp facilitator for
the Knowledge Sharing Architecture
- Prologic a common lisp knowledge
representation and reasoning system compatible with KIF
- EPILOG a common lisp inference
system compatible with KIF
- a C parser for the Knowledge Interchange
Format
Michael R. Genesereth