Presentation is loading. Please wait.

Presentation is loading. Please wait.

8-1 LECTURE 7: Agent Communication Based on An Introduction to MultiAgent Systems

Similar presentations


Presentation on theme: "8-1 LECTURE 7: Agent Communication Based on An Introduction to MultiAgent Systems"— Presentation transcript:

1 8-1 LECTURE 7: Agent Communication Based on An Introduction to MultiAgent Systems http://www.csc.liv.ac.uk/~mjw/pubs/imas http://www.csc.liv.ac.uk/~mjw/pubs/imas Some examples from presentation by Nyik San Ting, spring 2003.

2 8-2 Agent Communication From this lecture on, we will cover the macro-aspects of multi-agent systems: those issues relating to the agent society, rather than the individual agent:  communication; speech acts: KQML; FIPA ACL ontologies: KIF, Ontolingua, OWL  cooperation: what is cooperation; the contract net protocol; cooperative versus non-cooperative encounters; prisoner’s dilemma; evolutionary games, agent negotiation, social norms

3 8-3 Contents Tuesday (18 Oct 2004) � Speech Acts � KQML, KIF � FIPA ACL � Ontology Thursday (20 Oct 2004) � Ontology development � KIF � XML & RDF � DAML

4 8-4 Speech Acts Most treatments of communication in (multi-) agent systems borrow their inspiration from speech act theory Speech act theories are pragmatic theories of language, 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 Austin’s 1962 book, How to Do Things with Words

5 8-5 Speech Acts - Austin � Communication = action o Doesn’t mean: Motion of moving mouth Changing the pressure of the air by talking. Causing the avalanche by shouting. o The semantic meaning (effect) of the utterance “Let’s send a bomb to Iraq.“

6 8-6 Speech Acts Austin noticed that some utterances are rather like ‘physical actions’ that appear to change the state of the world Paradigm examples would be:  declaring war  christening  ‘I now pronounce you man and wife’ :-) But more generally, everything 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

7 8-7 Elements Speaker Utterance Come and have a free Pizza ! Hearer(s)

8 8-8 Speech Acts - Austin 3 aspects of Speech Acts: � Locutionary act � Illocutionary act � Perlocution

9 8-9 Different Aspects of Speech Acts From “A Dictionary of Philosophical Terms and Names”: “Locutionary act: the simple speech act of generating sounds that are linked together by grammatical conventions so as to say something meaningful. Among speakers of English, for example, ‘It is raining’ performs the locutionary act of saying that it is raining, as ‘Grablistrod zetagflx dapu’ would not.” � Saying something that make sense using a language o Saying “Please make some tea” o Saying “Tuition fee will increase by 50% next year”

10 8-10 Different Aspects of Speech Acts “Illocutionary act: the speech act of doing something else – offering advice or taking a vow, for example – in the process of uttering meaningful language. Thus, for example, in saying ‘I will repay you this money next week,’ one typically performs the illocutionary act of making a promise.” � Action intended by the speaker o Niia: “Please, make me to make some tea” (request) o The President: “The tuition fee will increase by 50% next year” (announcement)

11 8-11 Different Aspects of Speech Acts “Perlocutionary act: the speech act of having an effect on those who hear a meaningful utterance. By telling a ghost story late at night, for example, one may accomplish the cruel perlocutionary act of frightening a child.” � Effect of the action o I know that I am asked to make tea for Niia (whether I make it / decline / forget is a different matter) o Everyone is informed and understands that the tuition fee will increase by 50% next year

12 8-12 “Shoot her!” Locutionary act of saying “Shoot her!” Illocutionary force of ordering, urging, or advising the hearer to shoot her Perlocutionary force of persuading, forcing,frightening the hearer to shoot her Example obtained from [2]

13 8-13 Performative Utterance “ I warn you that they will raise the gas price dramatically”  The first verb in the sentence emphasizes the goal of the speaker “They will raise the gas price dramatically”  Compare the strength of this statement with prev. Felicitous performative  Performative utterance that works successfully

14 8-14 Felicity conditions 1. An accepted conventional procedure for the performative; the circumstances and persons must be as specified. 2. Procedure must be executed correctly and completely 3. Act must be sincere; uptake required must be completed as much as possible.

15 8-15 Speech Acts � John Searle extended the work of John Austin in 1969 o Identified properties that must hold for a speech act performed between hearer and the speaker to succeed. o Systematic classification of the possible types of speech acts

16 8-16 Speech Acts – Conditions for a speech act to succeed � Normal I/O conditions o HEARER can hear the utterance � Preparatory conditions o What must be true of the world in order that SPEAKER correctly choose the speech act? E.g. HEARER should be able to perform the ACTION; SPEAKER must believe that. It must be obvious that HEARER won’t do ACTION anyway. � Sincerity conditions o Distinguish the sincerity of the performance of the speech act, e.g. SPEAKER may not really want ACTION to be performed

17 8-17 Speech Acts Searle (1969) identified various different types of speech act:  representatives : Commits the speaker to the truth of an expressed proposition, such as informing, e.g., ‘It is raining’  directives: Attempts on the part of the speaker to get the hearer to do something e.g., ‘please make the tea’  commisives: Commit the speaker to doing something, e.g., ‘I promise to… ’  expressives: Speaker expresses a mental state, e.g., ‘thank you!’  declarations: E ffect some changes in an institutional state of affairs, such as declaring war or christening

18 8-18 Speech Acts There is some debate about whether this (or any!) typology of speech acts is appropriate In general, a speech act can be seen to have two components:  a performative verb: (e.g., request, inform, promise, … )  propositional content: (e.g., “the door is closed”)

19 8-19 Speech Acts Consider:  performative = request content = “the door is closed” speech act = “please close the door”  performative = inform content = “the door is closed” speech act = “the door is closed!”  performative = inquire content = “the door is closed” speech act = “is the door closed?”

20 8-20 Plan Based Semantics How does one define the semantics of speech acts, so that a system can reason and plan? Cohen & Perrault (1979) defined semantics of speech acts using the STRIPS formalism for planning: precondition-delete-add list The world is a multimodal logic representation for the Beliefs, Abilities, Wants of the participants in the speech act Note that a speaker cannot (generally) force a hearer to accept some desired mental state In other words, there is a separation between the illocutionary act and the perlocutionary act

21 8-21 Plan-Based Semantics Here is their semantics for request: request(s, h,  ) pre:  Cando.pr: s believe h can do  (you don’t ask someone to do something unless you think they can do it)  Cando.pr: s believe h believe h can do  (you don’t ask someone unless they believe they can do it)  Want.pr: s believe s want  (you don’t ask someone unless you want it!) post:  h believe s believe s want  (the effect is to make them aware of your desire) Note that request ensures only that h is aware of s’ desire – locution only!!

22 8-22 Mediating act CauseToWant(A1, A2,  ) Pre: Cando.pr (A 1 Believe (A 2 Believe (A 2 Want  ))) Want.pr X (nothing) Post: (A 1 Believe (A 1 Want  )) In order to ensure that there is perlocutionary force – need a mediating act: By this definition, the agent will come to believe that it wants something, if it believes that another agent believes it wants to do it (very agreeable A1!).This definition can be extended to contain more conditions related to social relationships, role etc.

23 8-23 KQML and KIF We now consider agent communication languages (ACLs) — standard formats for the exchange of messages The best known ACL is KQML, developed by the ARPA knowledge sharing effort (KSE), in the early 1990ies. KQML is comprised of two parts:  the knowledge query and manipulation language (KQML)  the knowledge interchange format (KIF)

24 8-24 KQML and KIF KQML is an ‘outer’ language, that defines an ‘envelope’ format for messages to explicitly state the intended illocutionary force KQML defines various acceptable ‘communicative verbs’, or performatives Examples:  ask-if (‘is it true that... ’)  perform (‘please perform the following action... ’)  tell (‘it is true that... ’)  reply (‘the answer is... ’) KIF is a language for expressing message content (ONTOLOGIES– later)

25 8-25 Example (tell :content (= (temperatute m1) (scalar 83 Celsius)) :sender termometer-server :receiver heater :language KIF :ontology ONTOLOGY_NAME ) Inform another agent about some fact. Formal definition: S claims to H that C is in S’s VKB.

26 8-26 Another example (ask-one :content (PRICE ISM ?price) :receiver stock-server :language LPROLOG :ontology NYSE-TICKS ) Ask another agent a question where exactly one answer is required. Formal: S wants one of H’s answers to question C There are variants: ask-if, ask-all, ask-about

27 8-27 KQML shortcomings Performative set not fixed in stone; different implementations of KQML can’t interoperate Transport mechanisms for KQML messages are not defined – again hard to interoperate Semantincs not rigorously defined; two agents claiming that they speak KQML may have different interpretations Class of performatives (“Commissives” – expressing commitment) are missing Too large, adhoc set of performatives

28 8-28 FIPA More recently, the Foundation for Intelligent Physical Agents (FIPA) started work on a program of agent standards — the centerpiece is an ACL Basic message structure is similar to KQML:  performative 20 performatives in FIPA  housekeeping e.g., sender, receiver, language, ontology, etc.  content the actual content of the message

29 8-29 FIPA Example: (inform :senderagent1 :receiveragent5 :content(price good200 150) :languagesl :ontologyhpl-auction )

30 8-30 FIPA Definitions in text, pg. 176

31 8-31 FIPA ACL Semantics Semantics of ACL preformatives are given with respect to a formal SL (Semantic Language)  Represent beliefs, desires, uncertain beliefs of agents and actions that agents perform  Well defined, in contrast to KQML Each FIPA ACL message can be mapped to a formula of SL  Defines a constraint that the sender must satisfy (Feasibility conditions)  Defines the rational effect of the action - the “purpose” of a message (cannot be guaranteed)

32 8-32 “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 is defined in two parts:  pre-condition what must be true in order for the speech act to succeed  “rational effect” what the sender of the message hopes to bring about

33 8-33 “Inform” and “Request” For the “inform” performative… The content is a statement. Pre-condition is that sender:  holds that the content is true  does not believe that the recipient is already aware of whether content is true or not Rational Effect  the recipient believe the content

34 8-34 “Inform” and “Request” For the “request” performative… The content is an action. Pre-condition is that sender:  believes recipient is capable of performing this action  does not believe that receiver already intends to perform action Rational effect:  action content to be performed

35 8-35 Semantic Conformance Testing Problem: We have an agent and an agent communication language with well-defined semantics. How can we know if the agent respects the semantics of the language when it communicates? ACL semantics are generally developed in such a way as to express constraint on the sender of the message  Something like a program specification   Can we not use program verification methods? Problem:  Need to know the mental state of agents (what they believed, intended and so on) – Hard!

36 8-36 Figure obtained from [5]

37 8-37 References on Agent Communication Languages 1. “Austin’s Speech Act Theory” by Saeed http://www.ohiou.edu/dlcds/saaustin.htm 2. Speech Acts http://www.ccl.umist.ac.uk/teaching/material/5005/node24.html 3. “Cohen and Levesque - intention” http://www.csc.liv.ac.uk/~mjw/pubs/ker95/subsubsectionstar3_2_6_2.h tml 4. “FIPA ACL Message Structure Specification” by FIPA http://www.fipa.org/specs/fipa00061/SC00061G.html 5.“FIPA Communicative Act Library Specification" by FIPA http://www.fipa.org/specs/fipa00037/SC00037J.html

38 8-38 Ontologies Different understanding of the terminology A “Football game on 11/02/03” B “Soccer game on 11 Feb 2003” C “Rugby game on Nov 02, 2003”

39 8-39 Knowledge Sharing among Agents: KQML and KIF In order to be able to communicate, agents must have agreed on a common set of terms A formal specification of a set of terms is known as an ontology The knowledge sharing effort has associated with it a large effort at defining common ontologies — software tools like Ontolingua for this purpose Example KQML/KIF dialogue… A to B: (ask-if (> (size chip1) (size chip2))) B to A: (reply true) B to A: (inform (= (size chip1) 20)) B to A: (inform (= (size chip2) 18))

40 8-40 Why we need ontology? To share common understanding of the structure of information among people or software agents To enable reuse of domain knowledge To make domain assumptions explicit To separate domain knowledge from the operational knowledge To analyze domain knowledge

41 8-41 Ontology ‘A systematic account of Existence’ in Philosophy Explicit formal definition of the terminologies describing the concepts or objects (and their attributes) of a domain and the relations among them. A specification of vocabulary/definition (human readable & machine interpretable) and their relations that model the real world Ontologies are knowledge bodies that provide a formal representation of a shared conceptualization of a particular domain.

42 8-42 KIF – Knowledge Interchange Format Based-on first order logic recast in a LISP (LISt Processing)-like notation. Used to state: Properties of things in a domain (e.g., “Noam is chairman”) Relationships between things in a domain (e.g., “Amnon is Yael’s boss”) General properties of a domain (e.g., “All students are registered for at least one course”, “Everybody has a mother”)

43 8-43 KIF (2) “The temperature of m1 is 83 Celsius”: (= (temperature m1) (scalar 83 Celsius)) “An object is a bachelor if the object is a man and is not married”: (defrelation bachelor (?x) := (and (man ?x) (not (married ?x)))) “Any individual with the property of being a person also has the property of being a mammal”: (defrelation person (?x) :=> (mammal ?x))

44 8-44 KIF (3) Usual connectives  and, or, not, Universal and existential quantifiers  forall, exist Set Relation  Subset, /=, =, Member, Disjoint Object type  Numbers (1,2,3 …) characters, strings Object relation  Cos, Max, Log, <, *

45 8-45 KIF (4) Define new class “New class of ‘primary-color’ which take value of red, green, or blue” (define-class primary-color (?color) (member ?color (set red green blue)))

46 8-46 KIF (5) Define new concept “New concept of bachelor which is a man and this man is not married” (defrelation bachelor (?x) := (and (man ?x) (not (married ?x))))

47 8-47 KIF (6) Define new relationships “Any individual with the property of being a person also has the property of being a mammal” (defrelation person (?x) :=> (mammal ?x)) Note: A mammal might not be a person!

48 8-48 Extensible Markup Language -XML XML is a method for embedding structure and meaning in data files. a new technology for managing data, particularly suitable for web applications. is text (humans and machines readable)

49 8-49 Example Dr. John Cooke 57 Campus Drive, Saskatoon, SK S7N5A9

50 8-50 Dr. John Cooke 57 Campus Drive, Saskatoon, SK S7N5A9 HTML tags describe how something should render. They don't contain any information about what the data is, they only describe how it should look. The set of HTML tags is fixed – as defined by the DTD (Document Type Definition). Representation in HTML

51 8-51 Dr. John Cooke 57 Campus Drive Saskatoon SK S7N5A9 Representation in XML Note semantic tags! Using XML it is possible to define new tags by writing an XML DTD.

52 8-52 Resource Description Framework RDF is is a model for describing resources, mainly internet resources A way for publishing human readable and machine processable vocabularies Origin: THE LIBRARIANS!

53 8-53

54 8-54 Example Figures obtained from [10]

55 8-55 Example (2) John Smith

56 8-56 DAML DARPA Agent Markup Language Based on XML, integration with Ontologies  The Semantic Web DAML 0.5, August 2000 DAML-ONT, October 2000 DAML+OIL (Ontology Interface Layer), December 2000

57 8-57 DAML+OIL A semantic markup language for Web resources Uses XML and RDF Provides a higher level of information than XML

58 8-58 Define Class Animal This class of animals is illustrative of a number of ontological idioms.

59 8-59 Define Subclass

60 8-60 Defining Property Restriction Animals have exactly two parents, ie: If x is an animal, then it has exactly 2 parents (but it is NOT the case that anything that has 2 parents is an animal).

61 8-61 Define Properties

62 8-62 “Ontology” of Ontology Classes or Concepts  description of concepts in the domain of discourse Subclasses  Represent concepts that are more specific Slots / Role / Properties  Properties of concept (various features and attributes) Facets or role restrictions  Restriction on slots (value type, allowed value, cardinality …) Ontology + Instances of Classes = Knowledge Base

63 8-63 Ontology Examples Class Slot1 Slot2 Slot3 People Position Age Sex Wine Flavor Body Maker Class SubClass1SubClassN People ProfessorStudent Wine Red WineWhite Wine

64 8-64 Ontology Examples (2) from Noy & McGuinness, black for classes, red for instances, direct links represent slots and internal links such as instance-of and subclass-of. Inverse relation

65 8-65 Fundamental Rules in Ontology Design 1. No correct way to model a domain  There are viable alternatives  Best solution depends on application and extensions 2. Iterative process 3. Concepts should be close to (physical or logical) objects and relationships in the domain of interest.  Nouns (objects) or verbs (relationships)

66 8-66 Ontology Development Steps 1. Determine the domain and scope of the ontology 2. Consider reusing existing ontologies 3. Enumerate important terms in the ontology 4. Define the classes and the class hierarchy Top-down Bottom-up Combination

67 8-67 Ontology Development Steps (2) 5.Define the properties of classes - slots 6. Define the facets of the slots Slot cardinality Slot-value type (String, Number, Boolean, Enumerated, Instance-type) Domain and range of a slot

68 8-68 Ontology Development Steps (3) from Noy & McGuinness, the definition of a slot Produces that describes the wines produced by Winery.

69 8-69 Ontology Development Steps (4) 7.Create instances Figure from Noy & McGuinness - t he definition of an instance of the Beaujolais class

70 8-70 Things to lookout A subclass of a class represents a concept that is a “kind-of” the concept that the superclass represents Classes represent concepts in the domain and NOT the words that denote these concepts (prawn & shrimp – should be represented as one class) Avoid class cycles “How many is too many and how few are too few?”

71 8-71 Things to lookout (2) “When to introduce a new class (or not)?” Usually it should:  Have additional properties (new slots)  Have different restrictions (different facets)  Participate in different relationships than the super-classes (new slot value defined) Can just be a hierarchy of terms

72 8-72 Things to lookout (3) “A new class or a property value?”  If the concepts with different slot values become restrictions for different slots in other classes  create new class “ An instance or a class?”  Natural hierarchy?  Most specific concepts? Limiting the scope Naming convention and consistency

73 8-73 Languages for Ontologies First order logic-based  KIF-based Ontololingua, KIF-based Ontololingua  Loom, Loom  Frame-Logic Frame-Logic XML based  SHOE, SHOE  Ontology Exchange Language (XOL), Ontology Exchange Language (XOL)  Ontology Markup Language (OML and CKML), Ontology Markup Language (OML and CKML RDF based  Resource Description Framework Schema Language (RDFS) Resource Description Framework Schema Language (RDFS)  OIL (Ontology Interchange Language) OIL (Ontology Interchange Language)  DAML+OIL DAML+OIL

74 8-74 Tools for ontology development Protégé-2000  http://protege.stanford.edu/ http://protege.stanford.edu/ Ontolingua  http://www.ksl.stanford.edu/software/ontolingua/ http://www.ksl.stanford.edu/software/ontolingua/ DAG-Edit  http://www.godatabase.org/dev/editor.html http://www.godatabase.org/dev/editor.html OilEd  http://oiled.man.ac.uk/ http://oiled.man.ac.uk/ Reggie Metadata Editor  http://metadata.net/dstc/ http://metadata.net/dstc/

75 8-75 Summary on Ontology development No one “correct” way for developing ontologies No one “correct” ontology for any domain Issues: Rapid domain evolution Variety of ontologies in a domain Ontology representation Efforts for ontology interoperability (ontology mapping):  Stanford Scalable Knowledge Composition (SKC) project and the Bremer Semantic Translation project Stanford Scalable Knowledge Composition (SKC) project Bremer Semantic Translation

76 8-76 References on Ontologies 1. “Descriptive and Formal Ontology” by Raul Corazzon. http://www.formalontology.it/ http://www.formalontology.it/ 2. “What is an Ontology?” by Tom Gruber http://www-ksl.stanford.edu/kst/what-is-an-ontology.html 3. “Ontology Development 101:A Guide to Creating Your First Ontology” by Natalya F. Noy and Deboral L. McGuinness http://protege.stanford.edu/publications/ontology_development/ontology10 1-noy-mcguinness.html

77 8-77 References (2) 4. “Knowledge Interchange Format (KIF)” http://www-ksl.stanford.edu/knowledge-sharing/kif 5. “Knowledge Interchange Format Specification” http://logic.stanford.edu/kif/specification.html 6. DAML homepage. http://www.daml.org/ 7. “An Introduction to the Resource Description Framework” http://www.dlib.org/dlib/may98/miller/05miller.html


Download ppt "8-1 LECTURE 7: Agent Communication Based on An Introduction to MultiAgent Systems"

Similar presentations


Ads by Google