Presentation is loading. Please wait.

Presentation is loading. Please wait.

SIF8072 Distributed Artificial Intelligence and Intelligent Agents 13 February 2003 Lecture 5: Agent Communication Lecturer:

Similar presentations


Presentation on theme: "SIF8072 Distributed Artificial Intelligence and Intelligent Agents 13 February 2003 Lecture 5: Agent Communication Lecturer:"— Presentation transcript:

1 SIF8072 Distributed Artificial Intelligence and Intelligent Agents http://www.idi.ntnu.no/~agent/ 13 February 2003 Lecture 5: Agent Communication Lecturer: Sobah Abbas Petersen Email: sap@idi.ntnu.no

2 2 Lecture Outline What is an Agent Communication Language (ACL)? Speech Acts ACLs –KQML and KIF –FIPA ACL Ontologies and The Semantic Web Summary

3 3 References - Curriculum Wooldridge: ”Introduction to MAS”, –Chapter 8 T. Finin, Y. Labrou, J. Mayfield. ”KQML as an Agent Communication Language”. In: J. Bradshaw (ed). Software Agents, AAAI Press/MIT Press, 1997, pp. 291-316. Not curriculum: -Y. Labrou,T. Finin and Y. Peng, ”Agent Communication Languages: The Current Landscape”, IEE Intelligent Systems, 1094-7167, 1999.

4 4 Agent Communication Language An Agents Communication Language (ACL) provides agents with a means of exchanging information and knowledge. …

5 5 What distinguishes ACLs? Earlier attempts at seamless exchange of information and knowledge between applications: –e.g. Remote Procedure Calls, Remote Method Invocation, CORBA Differences between the above and ACLs are: –Semantic complexity –ACLs can handle propositions, rules and actions instead of simple objects with no semantics associated with them. –An ACL message describes a desired state in a declarative language, rather than a procedure or a method.

6 6 Agent Communication Agents have conversations (as opposed to exchange single messages), e.g. –Task-oriented –Negotiations A higher level conceptualisation of an agent’s strategies drive an agent’s communicative behaviour. Message type of agents : Speech Acts

7 7 Speech Acts 1 Communication in MAS is inspired by speech act theory. Speech act theories are pragmatic theories of language, i.e. theories of language use: –they attempt to account for how language is used by people every day to achieve their goals and intentions. The origin of speech act theories are usually traced to the work of the philosopher John Austin.

8 8 Speech Acts 2 - Austin Austin noticed that some utterances are like ”physical actions” that appear to change the state of the world. e.g. –Declaring war –”I now pronounce you man and wife” In general, every thing we utter is uttered with the intention of satisfying some goal or intention.  A theory of how utterances are used to achieve intentions is a speech act theory.

9 9 Speech Acts 3 - Austin Austin distinguished 3 different aspects of speech acts: 1.Locutionary act - act of making an utterance e.g. saying ”please make some tea” ’ 2.Illocutionary act – action performed in saying something e.g. he requested me to make some tea 3.Perlocution – effect of the act e.g. he got me to make tea

10 10 Speech Acts 4 Types of Speech Acts Searle identified 5 different types of speech acts: Speech Act TypeDescription and Example Representatives or Assertives Informing e.g. ”It is raining”. DirectivesSpeaker tries to make the hearer do something e.g. ”Please close the window” CommisivesCommits the speaker to future action e.g. ”I will close the window” ExpressivesSpeaker expresses a mental state e.g. ”Excuse me”, ”congratulations” DeclarativesEffect some changes e.g. ”I name this city Trondheim”

11 11 Speech ActPlease close the door The door is closedIs the door closed? Performativerequestinforminquire Content the door is closed Speech Acts 5 - Components In general, speech acts can be seen to have 2 components: 1.A performative verb e.g. Request, inform 2.Propositional content e.g. ”the window is closed”

12 12 Speech Acts 6 – Plan-based Theory How does one define the semantics of speech acts? When can one say someone has uttered, e.g. a request or an inform? How can the properties of speech acts be represented such that planning systems could reason about them?  Speech acts are treated as physical actions.  Actions are characterised via preconditions and postconditions.

13 13 Speech Acts 7 Plan-based Theory Example Semantics for request: request(s,h,  ) Pre: –s believes h can do  (you don’t ask someone to do something unless you think that they can do it) –s believes h believes h can do  (you don’t ask someone unless they believe they can do it) –s believes s wants  (you don’t ask someone unless you want it!) Post: –h believes s believes s wants  (the effect is to make them aware of your desire)

14 14 Agent Communication Language (ACL) ACLs allow agents to effectively communicate and exchange knowledge with other agents. AgentiAgentj Convert to transport form Message delivery/transportation service Goal G Intent I Perform- ative Message

15 15 Three Important Aspects 1.How the symbols of communication are structured. Syntax Semantics Pragmatics 2. What the symbols denote. 3. How the symbols are interpreted. (Meaning is a combination of semantics and pragmatics.)

16 16 Communication Levels Syntax Format of information being transferred Semantics Meaning of the information Communication Method of interconnection

17 17 Requirements for an ACL Syntactic translation between languages Semantic content preservation among applications –The concept must have a uniform meaning across applications. Ability to communicate complex attitudes about their information and knowledge. –Agents need to question, request, etc. –Not about transporting bits and bytes. Syntactic Semantic Communication

18 18 Origins of ACLs Knowledge Sharing Effort (KSE), funded by ARPA –Central concept: knowledge sharing requires communication, which in turn requires a common language. KSE focused on defining that common language.  KQML: Knowledge Query and Manipulation Language –Language for both message formatting and message handling protocols.  KIF: Knowledge Interchange Format –Langauge for expressing message content.

19 19 KIF 1 Motivation: creation of a common language for expressing properties of a domain. –Intented to express contents of a message; not the message itself. –Based on first-order logic.

20 20 KIF 2 Using KIF, it’s possible to express: –Properties of things in a domain e.g. Michael is a vegetarian – Michael has the property of being a vegetarian –Relationships between things in a domain e.g. Michael and Janine are married – the relationship of marriage exists between Michael and Janine. –General properties of a domain e.g. Everybody has a mother.

21 21 KIF 3 - Example Relation between 2 objects: –The temperature of m1 is 83 Celsius: (= (temperature m1) (scalar 83 Celsius)) Definition of new concept: –An object is a bachelor if this object is a man and not married : (defrelation bachelor (?x) := (and (man ?x) (not (married ?x)))) Relationship between individuals in the domain: –A person with the property of being a person also has the property of being a mammal: (defrelation (person ?x) :=> (mammal ?X))

22 22 An “outer language” that defines a set of performatives (communicative acts), such as ask, reply. Communication Mechanics of communication, e.g. Sender, receiver. Performatives (message layer) Content of communication, e.g. a KIF expression Content Logic of communication, e.g. ask, tell. e.g. (ask-if:sender agenti :receiveragentj :language Prolog :ontologygenealogy :content“spouse(adam, eve)”) KQML 1

23 23 The idea of communication in KQML is to represent illocutionary acts. Performatives form the core of the language: –Determine the kinds of interactions one can have with KQML- speaking agents. –Identify the protocol to be used to deliver the message –Signify that the content is an assertion, a query, a command or another speech act. –Describe how the sender would like any reply to be delivered. KQML 2 - Performatives

24 24 KQML 3 Categories of Performatives CategoryPerformatives Basic Queryevaluate, ask-if, ask-one, ask-all, ask-about Multi-response Querystream-about, stream-all Responsereply, sorry Generic informationaltell, achieve, cancel, untell Generatorstandby, ready, next,rest, discard, generator Capability-definitionadvertise, subscribe, monitor, import, export Networkingregister, unregister, forward, broadcast, route

25 25 (evaluate :sender A : receiver B :language KIF: ontology motors :reply-with q1 :content (val (torque m1))) (reply :sender B : receiver A :language KIF: ontology motors :in-reply-to q1 :content (= (torque m1) (scalar 12 kgf))) KQML 4 - Examples

26 26 (stream-about :sender A : receiver B :language KIF: ontology motors :reply-with q1 :content (m1) (tell :sender B : receiver A :in-reply-to q1 :content (= (torque m1) (scalar 12 kgf))) (tell :sender B : receiver A :in-reply-to q1 :content (= (status m1) (normal))) (eos :sender B : receiver A :in-reply-to q1) KQML 5 - Examples

27 27 Facilitators 1 KQML environments (may) contain facilitators that help make the communication protocol transparent. Facilitators: a special class of agents that perform useful communication services such as: –Maintain registry of service names –Forward messages to named services –Routing messages based on content –Provide matchmaking between information providers and seekers –Provide mediation and translation services

28 28 AB F ask(X) tell(X) Facilitators 2 Point-to-point protocol A is aware that it is appropriate to send a query about X to B There are several ways to achieve this via a Facilitator.

29 29 AB F tell(X) subscribe(ask(X)) tell(X) Using the subscribe performative Request that Facilitator F monitor for the truth of X. If B subsequently informs F that it believes X to be true, then F can in turn inform A. Facilitators 3

30 30 AB F tell(X ) ask(X) broker(ask(X)) advertise(ask(X)) tell(X ) Using the broker performative A Asks Facilitator to find another agent which can process a given performative. Facilitators 4

31 31 AB F ask(X) recruit(tell(X)) advertise(ask(X)) tell(X ) Using the rercruit performative Asks Facilitator to find an appropriate agent to which an embedded performative can be forwarded. A reply is returned directly to the original agent. Facilitators 5

32 32 AB F reply(B) ask(X) tell(X) recommend(ask(X)) advertise(ask(X)) Using the recommend performative Asks Facilitator to respond with the ”name” of another agent which is appropriate for sending a particular performative. Facilitators 6

33 33 KQML Criticism Weak semantics of performatives –Different implementations of KQML could not interoperate. Transportation mechanisms were not defined. Lacked the class of performatives: commissives –Difficult to implement multi-agent scenarios without commissives. Set of performatives was large and ad hoc.  Recently, more efforts have been made to provide formal semantics in terms of preconditions, postconditions and completion conditions. (ref: Labrou et. al., 1999.)

34 34 Who is FIPA? The Foundation for Intelligent Physical Agents (FIPA) is a non-profit association. FIPA’s purpose is to promote the success of emerging agent-based applications, services and equipment. FIPA operates through the open international collaboration of member organisations: companies, universities and government organisations.

35 35 FIPA ACL 1 Basic structure is quite similar to KQML: –Performative (communicative act) 20 performatives in FIPA ACL –Housekeeping e.g. Sender –Content the actual content of the message

36 36 FIPA ACL 2 Message Structure Envelope: –Comprises of a collection of parameters –Contains atleast the mandatory to and sender parameters Envelope (transport information) Message body (ACL message)

37 37 FIPA ACL 3 Example FIPA ACL message: (inform :sender agentA :receiver agentB :content (price good200 150) :language sl :ontologyhpl-auction )

38 38 FIPA ACL 4 Inform and Request Inform and Request are the two basic performatives in FIPA ACL. All others are macro definitions, defined in terms of these. The meaning of inform and request are defined in 2 parts: 1.Precondition What must be true in order for the speech act to succeed. 2.Rational effect What the sender of the message hopes to bring about.

39 39 FIPA ACL 5 Inform and Request InformRequest Content statementaction Precondition Holds that the content is true. Intends that the recipient believe the content Does not already believe that the recipient is aware whether content is true or not Intends action content to be performed Believes recipient is capable of performing this action Does not believe that sender already intends to perform action

40 40 FIPA Message Transport Model Agent Platform Agent Communication Channel Agent A Agent Platform Agent Communication Channel Agent B Message Transport Protocol ACL message sent over the Message Transport Service

41 41 FIPA Sending Messages 3 options 1.Via local ACC 2.Via remote ACC 3.Direct communication mechanism Agent Platform Agent Communication Channel Agent A Agent Platform Agent Communication Channel Agent B 1 1&2 1 2 3

42 42 FIPA Agent Interaction Protocol 1 Ongoing conversations between agents fall into typical patterns. In such cases, certain message sequences are expected, and at any point in the conversation, other messages are expected to follow.  These typical patterns of message exchange are called protocols. (request:sender A :receiver B :content some-act :protocol fipa-contract-net )

43 43 FIPA Contract Net Protocol 1 reject-proposal reason Not-understoodrefuse reason propose preconditions2 cfp action preconditions1 accept-proposal proposal failure reason inform Done(action) cancel reason Deadline for proposals Manager cancels the contract due to a change manager Potential contractors

44 44 FIPA Contract Net Protocol 2 Potential contractors Manager cfp refuse not-understood propose reject-proposal accept-proposal cancel inform deadline

45 45 Comparing KQML and FIPA ACL Similarities: Separation of the outer language (performative) and the inner language (content). Allows for any content language Differences Communication primitives: KQML – performative FIPA ACL – communicative act Different semantic frameworks – impossible to come up with an exact mapping or transformation between KQML and FIPA performatives. KQML provides facilitator services; FIPA ACL does not.

46 46 “An ontology is a formal explicit specification of a shared conceptualisation.” (Gruber 1993) Why do we need an ontology? –To agree on a terminology to describe a domain. Example of a language for defining ontologies: KIF Ontologies Common Ontology (Interlingua) Agent AAgent BAgent C Ontolingua is one of the best known ontologies developed using KIF. A web-based service intended to provide a common platform in which ontologies developed by different groups can be shared.

47 47 Ontology and Semantic Web Tim Berners-Lee considers ontologies as a critical part of the work on the Semantic Web. Semantic Web: ”an extension of the current WWW, in which information is given well-defined meaning, better enabling computers and people to work in cooperation.” (Berners-Lee et. al., 2001) WWW (medium of documents for poeple) Semantic Web (Information that can be processed automatically, by agents) TodayTomorrow Ontologies

48 48 Ontology Languages for The Semantic Web Semantic Web XML Xtensible Markup Language (+schema) RDF Resource Description Framework RDFS RDFschema

49 49 Ontology Languages 1 XML: allows users to add arbitrary structure to their documents, but does not give meaning about the structures. RDF: Resource Description Framework – to standardise meta- data descriptions of web-based resources object-attribute-value triple – A(O,V) object O has attribute A with value V. RDFS: introduces basic ontological modelling primitives. e.g. classes, subclasses, properties, domains and ranges. ÷Limitations: cannot express many types of knowledge

50 50 Ontology Languages 2 OIL – Open Interface Layer DAML: DARPA Agent Markup Language – based on XML DAML+OIL – successor of OIL

51 51 Ontology Inference Layer - OIL Requirements: 1.Must be intuitive to the human user;  OIL incorporates the essential modelling primitives of frame-based systems. 2.Must have a well-defined semantics;  formal semantics inherited from Description Logics. 3.Must have a proper link with existing web languages;  OIL has well-defined syntax in XML and it is an extension of RDF and RDFS.

52 52 Summary Speech Acts ACLs –KQML and KIF –FIPA ACL Ontologies and The Semantic Web

53 53 Next Lecture: Agent Theory Will be based on: ”Logics for Multiagent Systems”, Chapter 12 in Wooldridge: ”Introduction to MultiAgent Systems”


Download ppt "SIF8072 Distributed Artificial Intelligence and Intelligent Agents 13 February 2003 Lecture 5: Agent Communication Lecturer:"

Similar presentations


Ads by Google