Agents Communication Languages (ACL) - PowerPoint PPT Presentation

1 / 25
About This Presentation
Title:

Agents Communication Languages (ACL)

Description:

Reliability an ACL must support reliable and secure communication among agents. ... Based on speech act theory: messages are actions or communicative acts. ... – PowerPoint PPT presentation

Number of Views:33
Avg rating:3.0/5.0
Slides: 26
Provided by: Titi
Learn more at: http://www.wsmo.org
Category:

less

Transcript and Presenter's Notes

Title: Agents Communication Languages (ACL)


1
Agents Communication Languages (ACL)
  • http//www.engr.uconn.edu/7Eibrahim/publications/
    acl.htm
  • Dumitru Roman
  • Digital Enterprise Research Institute
  • dumitru.roman_at_deri.ie

2
Outline
  • Introduction
  • Knowledge Query and Manipulation Language (KQML)
  • Foundation for Intelligent Physical Agents (FIPA)
    ACL
  • Comparing between KQML and FIPA
  • Relevance to WSMO

3
Introduction
  • Motivation standard communication between
    heterogeneous agent communities.
  • The origin of ACLs Knowledge Sharing Effort
    (KSE) - 1990
  • software systems are virtual knowledge bases that
    exchange propositions using a language that
    expresses various complex attitudes -
    propositional attitudes - three part
    relationships between
  • An agent,
  • A content bearing proposition (for example, it is
    raining), and
  • A finite set of propositional attitudes an agent
    might have with respect to the proposition (for
    example, believing, asserting, fearing,
    wondering, hoping, and so on).
  • Example lta,fear,raining(t_now )gt

4
Requirements of ACLs (1)
  • Form an ACL should be
  • Declarative, syntactically simple, and readable
    by people.
  • Concise, easy to parse and to generate.
  • Content
  • A distinction should be made between the
    communication language, which expresses
    communicative acts, and the content language,
    which expresses facts about the domain.
  • The language should commit to a well-defined set
    of communicative acts (primitives).
  • Semantics - should be grounded in theory, and
    should be unambiguous.

5
Requirements of ACLs (2)
  • Implementation - should be efficient, both for
    speed, and for bandwidth utilization.
  • Networking an ACL should fit well with modern
    networking technology.
  • Environment an ACL must provide tools for
    coping with heterogeneity and dynamism and
    support interoperability with other languages and
    protocols.
  • Reliability an ACL must support reliable and
    secure communication among agents.

6
Requirements on agents to support ACL
  • Agents should send not-understood (or error) if
    they receive a message that they do not recognize
    or they are unable to process the content of the
    message.
  • An ACL compliant agent may choose to implement
    any subset of the pre-defined message types and
    protocols.
  • An ACL compliant agent which uses the
    communicative acts whose names are defined in
    ACLs specification must implement them correctly
    with respect to their definition.
  • Agents may use communicative acts with other
    names, and are responsible for ensuring that the
    receiving agent will understand the meaning of
    the act.
  • An ACL compliant agent must be able to correctly
    generate a syntactically well-formed message in
    the transport form that corresponds to the
    message it wishes to send.
  • In general, a content language must be able to
    express propositions, objects and actions.

7
Basic concepts of ACL
  • An ACL provides agents with a means of exchanging
    information and knowledge.
  • The ACL itself defines the types of messages (and
    their meanings) that agents can exchange.
  • Agents have conversationstask oriented, shared
    sequences of messages that they follow, such as a
    negotiation or an auction.
  • The message types of ACLs - speech acts.

8
Knowledge Query and Manipulation Language (KQML)
  • A high-level, message-oriented communication
    language and protocol for information exchange
    independent of content syntax and applicable
    ontology.
  • Three layers in a KQML message
  • Content - bears the actual content of the message
    in the programs own representation language.
  • Communication - encodes a set of features to the
    message that describe the lower-level
    communication parameters.
  • Message - identify the network protocol with
    which to deliver the message and supply a speech
    act or perfomative that the sender attaches to
    the content.

9
KQML Performatives
  • A KQML message is called a performative.
  • Parameters of a performative

sender - the actual sender of the performative. receiver - the actual receiver of the performative. from - the origin of the performative in content when forward is used. to - the final destination of the performative in content when forward is used. in-reply-to - the expected label in a response to a previous message (same as the value of the previous message). reply-with - the expected label in a response to the current message. language - the name of the representation language of the content. ontology - the name of the ontology (e.g., set of term definitions) assumed in the content parameter. content - the information about which the performative expresses an attitude.
10
A KQML Message
A KQML Dialogue A to B (ask-if (gt (price bk1)
(price bk2))) B to A (reply true) B to A
(inform ( (price bk1) 25.50)) B to A (inform
( (price bk2) 19.99))
11
KQML Performatives - Discourse performatives (1)
  • ask-if - S wants to know if the content is in
    R's KB.
  • ask-all - S wants all of R's instantiations of
    the content that are true of R.
  • ask-one - S wants one of R's instantiations of
    the content that is true of R.
  • stream-all - multiple-response version of
    ask-all.
  • eos - the end-of-stream marker to a
    multiple-response (stream-all).
  • tell - the sentence is in S's KB.
  • untell - the sentence is not in S's KB.
  • deny - the negation of the sentence is in S's KB.
  • insert - S asks R to add the content to its KB

12
KQML Performatives - Discourse performatives (2)
  • uninsert - S wants R to reverse the act of a
    previous insert.
  • delete-one - S wants R to remove one matching
    sentence from its KB.
  • delete-all - S wants R to remove all matching
    sentences from its KB.
  • undelete - S wants R to reverse the act of a
    previous delete.
  • achieve - S wants R to do make something true of
    its physical environment.
  • unachieve - S wants R to reverse the act of a
    previous achieve.
  • advertise - S wants R to know that S can and will
    process a message like the one in content.
  • unadvertise - S wants R to know that S cancels a
    previous advertise and will not process any more
    messages like the one in the content.

13
KQML Performatives - Intervention and mechanics
of conversation performatives
  • error - S considers R's earlier message to be
    mal-formed.
  • sorry - S understands R's message but cannot
    provide a more informative response.
  • standby - R will deliver its response to the S as
    soon as a response is generated.
  • ready - S is ready to respond to a message
    previously received from R.
  • next - S wants R's next response to a message
    previously sent by S.
  • rest - S wants R's remaining responses to a
    message previously sent by S,
  • discard - S does not want R's remaining responses
    to a previous (multi-response) message.

14
KQML Performatives - Networking and Facilitation
performatives (1)
  • register - S announces to R its presence and
    symbolic name.
  • unregister - S wants R to reverse the act of a
    previous register.
  • forward - S wants R to forward the message to the
    to agent (R might be that agent).
  • broadcast - S wants R to send a message to all
    agents that R knows of.
  • transport-address - S associates its symbolic
    name with a new transport address.

15
KQML Performatives - Networking and Facilitation
performatives (2)
  • broker-one - S wants R to find one response to
    the content (some agent other than R is going to
    provide that response).
  • broker-all - S wants R to find all responses to
    the content (some agent other than R is going to
    provide that response).
  • recommend-one - S wants to learn of an agent who
    may respond to the content.
  • recommend-all - S wants to learn of all agents
    who may respond to the content.
  • recruit-one - S wants R to get one suitable agent
    to respond to the content.
  • recruit-all - S wants R to get all suitable
    agents to respond to the content.

16
Semantics of KQML
  • Semantics of each performative is defined in
    terms of
  • preconditions - indicate the necessary states for
    an agent to send a performative and for the
    receiver to accept it and successfully process
    it.
  • postconditions - describe the states of the
    sender after the successful utterance of a
    performative, and of the receiver after the
    receipt and processing of a message.
  • completion conditions - indicate the final state,
    after a conversation has taken place and the
    intention associated with the performative that
    started the conversation has been fulfilled.

17
Foundation for Intelligent Physical Agents (FIPA)
ACL
  • Based on speech act theory messages are actions
    or communicative acts.
  • Consists of a set of message types and the
    description of their pragmaticsthat is, the
    effects on the mental attitudes of the sender and
    receiver agents.
  • Describes every communicative act with both a
    narrative form and a formal semantics based on
    modal logic.
  • Separates the outer language (the intended
    meaning of the message) from the inner language
    (content language).
  • The communication primitives are called
    communicative acts.

18
ACL Message
Note FIPA uses a different content language
from KQML called SL, which is based on modal
logic.
19
FIPA - Communicative Acts (1)
  • accept-proposal - The action of accepting a
    previously submitted proposal to perform an
    action.
  • agree - The action of agreeing to perform some
    action, possibly in the future.
  • cancel - The action of cancelling some previously
    request'ed action which has temporal extent (i.e.
    is not instantaneous).
  • cfp - The action of calling for proposals to
    perform a given action.
  • confirm - The sender informs the receiver that a
    given proposition is true, where the receiver is
    known to be uncertain about the proposition.
  • disconfirm - The sender informs the receiver that
    a given proposition is false, where the receiver
    is known to believe, or believe it likely that,
    the proposition is true.
  • failure - The action of telling another agent
    that an action was attempted but the attempt
    failed.
  • inform - The sender informs the receiver that a
    given proposition is true.

20
FIPA - Communicative Acts (2)
  • inform-if - A macro action for the agent of the
    action to inform the recipient whether or not a
    proposition is true.
  • inform-ref - A macro action for sender to inform
    the receiver that an object corresponds to a
    definite descriptor (e.g. a name).
  • not-understood - The sender of the act (e.g. i)
    informs the receiver (e.g. j) that it perceived
    that j performed some action, but that i did not
    understand what j just did.
  • propose - The action of submitting a proposal to
    perform a certain action, given certain
    preconditions.
  • query-if - The action of asking another agent
    whether or not a given proposition is true.
  • query-ref - The action of asking another agent
    for the object referred to by an expression.
  • refuse - The action of refusing to perform a
    given action, and explaining the reason for the
    refusal.

21
FIPA - Communicative Acts (3)
  • reject-proposal - The action of rejecting a
    proposal to perform some action during a
    negotiation.
  • request - The sender requests the receiver to
    perform some action. One important class of uses
    of the request act is to request the receiver to
    perform another communicative act.
  • request-when - The sender wants the receiver to
    perform some action when some given proposition
    becomes true.
  • request-whenever - The sender wants the receiver
    to perform some action as soon as some
    proposition becomes true and thereafter each time
    the proposition becomes true again.
  • request-whomever - The sender wants an action
    performed by some agent other than itself. The
    receiving agent should either perform the action
    or pass it on to some other agent.
  • subscribe - The act of requesting a persistent
    intention to notify the sender of the value of a
    reference, and to notify again whenever the
    object identified by the reference changes.

22
Semantics of FIPA ACL
  • SL (Semantic Language) it can represent
    propositions, objects, and actions.
  • Semantics of each communicative act is specified
    as sets of SL formulae that describe the acts
  • feasibility pre-conditions - describe the
    necessary conditions for the sender of the CA.
  • rational effect - represents the effect that an
    agent can expect to occur as a result of
    performing the action it also typically
    specifies conditions that should hold true of the
    recipient.

23
Comparing KQML and FIPA ACL (1)
  • Almost identical with respect to their basic
    concepts and the principles they observe.
  • Differ primarily in the details of their semantic
    frameworks.
  • KQML and FIPA ACL messages look syntactically
    identical.
  • Difference in their treatment of the registration
    and facilitation primitives.

24
Comparing KQML and FIPA ACL (2)
  • agent management
  • KQML register, unregister, recommend, broker,
    recruit, advertise.
  • FIPA considers these to be services offered by
    the basic agents in a system, rather than message
    types.
  • communications management
  • KQML broadcast, transport-address, forward.
  • FIPA considers these to be services offered by
    the basic agents in a system, rather than message
    types.
  • multiple solutions
  • KQML ask-one, ask-all, stream-all, eos, standby,
    ready, next, rest, discard.
  • FIPA does not express these concepts in the ACL,
    but in the content of the ACL messages.
  • direct belief manipulation
  • KQML insert, uninsert, delete-one, delete-all.
  • FIPA has no equivalent of these, since agents are
    not given the power to directly manipulate the
    beliefs of other agents.
  • goal definition
  • KQML acheive, unacheive.
  • FIPA does not express these concepts in the ACL,
    but in the context of the ACL messages.

25
Relevance to WSMO
  • Consider the idea of speech acts for simple MEP
    in WSMO
  • FIPA ACL request
  • FIPA ACL inform
  • FIPA ACL failure
  • Consider WSML as the content language
Write a Comment
User Comments (0)
About PowerShow.com