36
KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

  • View
    218

  • Download
    1

Embed Size (px)

Citation preview

Page 1: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

KQML as an Agent Communication Language

Tim Finin, Yannis Labrou, James Mayfield

Page 2: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Overview(1) Personal assistant is a agent…?_? Interaction and interoperation is

desirable Intelligent interaction is knowledge

sharing that includes both mutual understanding of knowledge communication of that knowledge

Page 3: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Overview(2) Effective interaction and

interoperation requires three components a common language a common understanding of the

knowledge exchanged the ability to exchange whatever is

included in above Knowledge Sharing Effort consortium

Page 4: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Overview(3) This paper will present

The Approach and Solutions of the KSE Communication Language and their

Desired Features Knowledge Query and Manipulation

Language(KQML) Other Communication Languages Conclusions

Page 5: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

The Approach of the KSE(1) Figure1.(p.293)

Components of interoperating software agents are grouped into:

Representation components Communication components Components not directly related to

shared understanding

Page 6: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

The Approach of the KSE(2) Mutual understanding can be

divided into two subproblems: Translating from one representation

language to another Sharing the semantic content of the

represented knowledge among different application

Page 7: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

The Approach of the KSE(3) Communication is a threefold

problem involving knowledge of Interaction protocol

high-level strategy pursued by the agent Communication language

what the content of the communication is Transport protocol

TCP, SMTP, HTTP

Page 8: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

The Approach of the KSE(4) Other components to help the

agent carry out it’s business Reasoning Meta-knowledge Planning activities Modeling other agents

Page 9: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

The Approach of the KSE(5) KSE is organized around the three

working groups Interlingua(KIF)

Common language for expressing the content Shared Reusable Knowledge

Bases(Ontolingua) Repository for sharable ontologies and tools

External Interfaces(KQML) Run-time interaction in knowledge-based

system

Page 10: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

The Solutions of the KSE(1) Knowledge Interchange Format

KIF is a prefix version of first order predicate calculus with extensions to support nonmonotonic reasoning and definitions

Ontologies and Ontolingua Ontolingua is the framework for the

development of ontologies KQML

Page 11: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

The Solutions of the KSE(2) Knowledge Interchange

Format(KIF) The Language description includes both a specification for

it's syntax and one for its semantics examples

(salary 026-40-9152 grommets 36000) (>(*(width chip1)(length chip1))(*(width chip2)(length chip2))) (=> (and(real-number ?x)(even-number ?n)) (>(expt ?x ?n)0)) (interested joe '(salary ,?x,?y,?z)) (progn (fresh-lint t)(print "Hello!")(fresh-line t))

Page 12: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

The Solutions of the KSE(3) Ontologies and Ontolingua

The SRKB is building knowledge-based software reused as off-the-shelf technology

Ontologies are written in KIF, using the definitional vocabulary of Ontolingua (classes, function, object constants, and rules to constrain the interpretation)

Page 13: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

The Solutions of the KSE(4) KQML

KQML messages are opaque to the content they carry

Performatives define the permissible actions that agents may attempt in communicating with each other

An environment of KQML speaking agents may be enriched with special agents, called facilitators

Page 14: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Communication Languages and their Desired Features(1) Form Content Semantics Implementation Networking Environment Reliability

Page 15: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Communication Languages and their Desired Features(2) Form

Declarative Syntactically simple Readable by people Concise Linear extensible

Page 16: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Communication Languages and their Desired Features(3) Content

Communication language Communicative acts

Content language Facts about the domain

Page 17: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Communication Languages and their Desired Features(4) Semantics

Unambiguous Canonical form Model of communication

Page 18: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Communication Languages and their Desired Features(5) Implementation

Efficient Both in speed and bandwidth

Interface Easy to use

Amenable To handle partial implementation

Page 19: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Communication Languages and their Desired Features(6) Networking

Point to point Multi-cast Broadcast Synchronous Asynchronous

Page 20: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Communication Languages and their Desired Features(7) Environment

Distributed Heterogeneous Dynamic

Page 21: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Communication Languages and their Desired Features(8) Reliability

Reliable communication Secure communication Robust to malformed messages

Page 22: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

KQML A Description of KQML Facilitators, Mediators, and the

Environment of KQML Agents Evaluation of KQML as an Agent

Communication Language Application of KQML

Page 23: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

A Description of KQML(1) The KQML language can be thought

of as consisting of three layers The content layer

Actual content of the message The message layer

Interactions with KQML-speaking agent The communication layer

Lower level communication parameters

Page 24: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

A Description of KQML(2) Table 1.(p.303) Figure 2.(p304)

A B A C A D

Page 25: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Facilitators,Mediators and the Environment of KQML Agents Facilitators, Mediators

Figure 3.(p.305) Figure 4.(p.306) Figure 5.(p.306) Figure 6.(p.307) Figure 7.(p.307)

Environment KQML API, register, facilitator.domain

Page 26: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Evaluation of KQML as an ACL(1) Form Content Semantics Implementation Networking Environment reliability

Page 27: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Evaluation of KQML as an ACL(2) Form

Declarative(performatives) Linear(Lisp-like syntax) Easy to read, parse, and convert to

other Simple and extensible

Page 28: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Evaluation of KQML as an ACL(3) Content

The content layer The message layer

Providing a small set of primitives thereby requiring overloading at the content level

Providing an extensive set of acts, where inevitably acts will overlap one another and/or embody fine distinctions

The communication layer

Page 29: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Evaluation of KQML as an ACL(4) Semantics

Still an open issue For now there are only natural

language descriptions of the intended meaning of the performatives and their use(protocol)

Page 30: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Evaluation of KQML as an ACL(5) Implementation

Content-independent message router Facilitator Handler functions KQML speaking interface Efficiency(message sizes, substantial

fraction of symbol lookup and string duplication)

Page 31: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Evaluation of KQML as an ACL(6) Networking

Communicate directly with other agents

Broadcast their messages Solicit the services of facilitators Synchronous-asynchronous interactions Blocking-nonblocking message sending

Page 32: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Evaluation of KQML as an ACL(7) Environment

Any transport protocol(TCP/IP, HTTP,etc…)

KQML messages are oblivious to content

Facilitators can cooperate with other knowledge discovery applications available in the World Wide Web

Page 33: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Evaluation of KQML as an ACL(8) Reliability

No decision has been made on whether the issues of security and authentication should be handled at the transport protocol level or at the language level

New performatives can be introduced at the language level(encryption, error, sorry)

Page 34: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Applications of KQML Integration of design and engineering

tools ARPA Rome Lab Planning Initiative

Technology integration SIPE agent, Common Lisp scheduler, tools CoBASE, SIMS, LIM

Agent-Based Software Integration KQML implementation ACL(Stanford) KQML URL for the World Wide Web

Page 35: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Other Communication Language Agent-Oriented Programming

Theoretical Intentional(beliefs,capablilities,etc…) AOP paradigm need to be proven

Telescript Applied Do NOT communication(predefined

script)

Page 36: KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield

Conclusions There is no silver bullet for the problem

of knowledge sharing KSE approach

Translating between representations(KIF) Sharing the semantic content of the

knowledge that is represented(Ontolingua) Communication attitudes about the shared

knowledge(KQML) Facilitators