Agent Communication Languages Speech act theory Speech act theory Semantics of languages Semantics...

Preview:

DESCRIPTION

Semantics of languages The process of ascribing meaning The process of ascribing meaning Useful basis: describe the state before sending and after receiving it Useful basis: describe the state before sending and after receiving it Difficult to see if the agent’s state satisfies the pre- and postconditions Difficult to see if the agent’s state satisfies the pre- and postconditions

Citation preview

Agent Communication Agent Communication LanguagesLanguages• Speech act theorySpeech act theory• Semantics of languagesSemantics of languages• KQMLKQML• FIPA ACLFIPA ACL• Comparison of FIPA ACL and KQMLComparison of FIPA ACL and KQML• Other trends, future workOther trends, future work

Speech actsSpeech acts

• Example: “Please be quiet!”Example: “Please be quiet!”• Locution – the actual performance of Locution – the actual performance of

the actthe act• Illocution – the purpose of the utteranceIllocution – the purpose of the utterance• Perlocution – the consequences of the Perlocution – the consequences of the

utteranceutterance

Semantics of languagesSemantics of languages

• The process of ascribing meaningThe process of ascribing meaning• Useful basis: describe the state Useful basis: describe the state

before sending and after receiving itbefore sending and after receiving it• Difficult to see if the agent’s state Difficult to see if the agent’s state

satisfies the pre- and postconditionssatisfies the pre- and postconditions

KQML, introductionKQML, introduction

• Developed under a DARPA funded Developed under a DARPA funded project, started around 1990project, started around 1990

• Language and protocol for exchanging Language and protocol for exchanging information and knowledgeinformation and knowledge

• Two specifications: Two specifications: – DARPA Knowledge Sharing Initiative 1993 DARPA Knowledge Sharing Initiative 1993 – Yannis Labrou and Tim Finin 1997Yannis Labrou and Tim Finin 1997

KQML, semanticsKQML, semantics

• Pre-, post- and completion conditionsPre-, post- and completion conditions• Originally it did not assume a full BDI Originally it did not assume a full BDI

architecture of the agentsarchitecture of the agents• ExampleExample

KQML, layersKQML, layers• Content layerContent layer

• Message layerMessage layer

• Communication layerCommunication layer

KQML, message structureKQML, message structure• Each message represents a speech act, Each message represents a speech act,

associated semantics, protocol and a list of associated semantics, protocol and a list of attributesattributes

• Example: Example: (performative-name(performative-name: sender A: sender A: receiver B: receiver B: content X: content X: language L: language L: ontology N: ontology N: reply-with W: reply-with W: in-reply-to P): in-reply-to P)

KQML, performativesKQML, performatives• Describes the type of the messageDescribes the type of the message• About 25 reserved performative namesAbout 25 reserved performative names• Additional performatives can be addedAdditional performatives can be added• Special administrative and networking message typesSpecial administrative and networking message types• Examples: Examples: ask-oneask-one

advertiseadvertise

broadcastbroadcast

insertinsert

KQML, examples of KQML, examples of communicationcommunication

Tell(X)

F

A B

Ask(X)

A is aware of B, point-to-point protocol

KQML, examples of KQML, examples of communicationcommunication

tell(X)

F

A B

broker(ask(X))tell(X)

advertise(ask(X))

ask(X)

Broker performative, ask a facilitator agent to find another agent

FIPA ACL, introductionFIPA ACL, introduction

• FIPA, non-profit organizationFIPA, non-profit organization• Companies like IBM, Hitachi, HP, Companies like IBM, Hitachi, HP,

British Telecom, SiemensBritish Telecom, Siemens• Universities and research institutesUniversities and research institutes• FIPA ACL specified in 1997FIPA ACL specified in 1997

FIPA ACL, semanticsFIPA ACL, semantics

• Uses SL, Semantic Language to Uses SL, Semantic Language to define the semanticsdefine the semantics

• BDI-style primitivesBDI-style primitives• Feasibility preconditions and rational Feasibility preconditions and rational

effecteffect• ExampleExample

FIPA ACL, Semantic Language, FIPA ACL, Semantic Language, SLSL• Used to define the semantics of FIPA Used to define the semantics of FIPA

ACLACL• Quantified, multi-modal logic with Quantified, multi-modal logic with

operators for beliefs, desires, uncertain operators for beliefs, desires, uncertain beliefs and intentionsbeliefs and intentions

• Can represent propositions, objects and Can represent propositions, objects and actionsactions

FIPA ACL, message FIPA ACL, message structurestructure• Syntax almost identical to KQMLSyntax almost identical to KQML• Each message contains a set of message Each message contains a set of message

elementselements• Example:Example:(inform(inform:sender I:sender I:receiver J:receiver J:content :content “weather(today,raining)”“weather(today,raining)”:language Prolog:language Prolog:ontology weather42):ontology weather42)

Comparison, KQML vs. FIPA Comparison, KQML vs. FIPA ACLACL• Syntactically almost identicalSyntactically almost identical• FIPA ACL treats register, unregister, etc. as FIPA ACL treats register, unregister, etc. as

requests for action with reserved meaningrequests for action with reserved meaning• No facilitation primitives in FIPA ACLNo facilitation primitives in FIPA ACL• No commitment to content language in neither No commitment to content language in neither

of themof them• FIPA ACL more powerful with composing new FIPA ACL more powerful with composing new

primitivesprimitives

Other trends, future workOther trends, future work

• Universal communication languageUniversal communication language• XML – to describe ACL messagesXML – to describe ACL messages• Common content languages and Common content languages and

ontologiesontologies• Language for describing agent actions, Language for describing agent actions,

beliefs, intentions, etc. beliefs, intentions, etc. • JavaJava

ReferencesReferences• FIPA, FIPA, http://www.fipa.orghttp://www.fipa.org• KQML, KQML, http://www.cs.umbc.edu/kqmlhttp://www.cs.umbc.edu/kqml• Labrou, Finin, Peng, “The current Labrou, Finin, Peng, “The current

landscape of Agent Communication landscape of Agent Communication Languages”, 1999Languages”, 1999

Discussion questionsDiscussion questions• What architectures do the different languages What architectures do the different languages

support?support?• What kinds of communication do you have in What kinds of communication do you have in

your project?your project?• What language to use for your project (if any)?What language to use for your project (if any)?• What standards do you think are necessary What standards do you think are necessary

when talking about agent communication when talking about agent communication languages in the future?languages in the future?

Recommended