lecture 7 multiagent systems and societies of agents

Post on 03-May-2022

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

Multi-agent Engineering

Lecture 7

Multiagent Systems and Societies of Agents.

Speech Acts, KQML, KIF and OntologiesIvan Tanev

2

Outline

1.Speech acts

2.KQML

3.KIF

4.Ontologies

3

1.Speech acts• Spoken Human Communication – a model

for communications among agents,• A popular basis: speech acts theory• Views human natural language as actions,

such as:• Requests,• Suggestions,• Commitments, and• Replies

4

1.Speech actsSpeech act has three aspects:• Locution, the physical utterance by the speaker• Illocution, the intended meaning (semantics) of the

utterance by the speaker,• Perlocution, the action that results from the

locution

Illocution – illocutionary force – performative verbs: promise, report, convince, insist, tell, request, and demand.

5

1.Speech acts• Speech act theory helps define the type of message

by using the concept of the illocutionry force.• This constrains the semantics of the

communication itself.• The sender’s intended communication act is

clearly defined, and the receiver has no doubts as to the type of message sent.

6

2.KQMLKQML= Knowledge Query and Manipulation

Language

Fundamental decision for the interactions of agents is to separate:

• The semantics of the communication protocols(domain independent), from

• The semantics of the enclosed message (domain dependent)

Examples: Skype chat, web client-web server, etc.

7

2.KQML• The basic protocol is defined by the following

structure: (KQLM-performative:sender <word>:receiver <word>:language <word>:ontology <word>:content <expression>

…)

The semantics of KQLM-performative is domain independent.

However, the semantics of the message is defined by the fields content (the message itself), language, and ontology (the vocabulary of the words in the message)

8

2.KQMLExample:

Agent 1 tells Agent 2 the fact that block A is on top of block B:

(tell:sender Agent1:receiver Agent2:language KIF:ontology Blocks-World:content (AND (Block A)(Block B)(On A B))

Language: Knowledge Interchange Format (KIF)Other languages used: LISP, PROLOG, SQL.

BA

9

2.KQMLCommunicating agents:

Client-server synchronous: client waits for the reply from server.

Communication types:

Synchronous, Ex.: Web-browser – Web-server

Web-server – Database server, etc.

and

Asynchronous :client does not wait for the reply from server.Ex.: Text chat peers (i.e., both a client

and a server), Web-browser –Web-server with AJAX, etc.

10

2.KQMLSeven basic categories of performatives:

1) Basic query performatives:evaluate, ask-one, ask all

2) Multi-response query performatives:stream-in, stream-all

3) Response performatives:reply, sorry

11

2.KQMLSeven basic categories of performatives:

4) Generic informational performatives: tell, achieve, cancel, untell, unachieve

5) Generator performatives:standby, ready, next, rest

6) Capability-definition performatives: advertise, subscribe, monitor

7) Networking performatives: register, unregister, forward, broadcast

12

2.KQMLExample: Agent_2 Agent_1

(advertise:sender Agent_2:receiver Agent_1:language KQML:ontology kqml-ontology:content (ask-all

:sender Agent_1:receiver Agent_2:in-reply-to id1:language Prolog:ontology Blocks-world:content “on(X,Y)” ))

13

2.KQMLAgent_1 queries Agent_2:

(ask-all:sender Agent_1:receiver Agent_2:in-reply-to id1:reply-with id2:language Prolog:ontology Blocks-world:content “on(X,Y)” )

Meaning (a Query in Prolog): “Which blocks are on top of which blocks, i.e., X=? and Y=?”

In Prolog, X and Y (capital letters) are variables.

14

2.KQMLAgent_2 responds:

(tell:sender Agent_2:receiver Agent_1:in-reply-to id2:language Prolog:ontology Blocks-world:content “[on(a,b), on(c,d)]” )

d

cba

Meaning (Answer in Prolog): “Block a is on top of block b, and block c is on top of block d.“

In Prolog, a, b, c, and d (lowercase letters) are constants.

15

3.KIF(tell

:sender Agent1:receiver Agent2:language KIF:ontology Blocks-World:content (AND (Block A)(Block B)(On A B))

KIF – Knowledge Interchange Format

Agents need to describe real-world things – symbolic logic is a general mathematical tool for describing things: simple concrete facts, definitions, abstractions, constrains, inference rules, and meta-knowledge (knowledge about knowledge).

16

3.KIFKIF:• Logic language that describes things within expert systems,

databases, intelligent agents etc. • It is readable by both computer and people,• It is a prefix version of the first order predicate calculus,• Includes a variety of logic operators to assist in the

encoding of logical information

KIF Examples: (on A B),(block A),(salary 015-46-3946 72000),etc…

17

3.KIFKIF uses prefix (Polish) notation.

(on A B)

Operator Operand Operand

Notations of mathematical expressions: infix, prefix, and postfix

Notation Sample Expression

Infix A + B * CPrefix (Polish) + A * B C Postfix (Polish) A B C * +

Programming languages, based on prefix notation: KIF, LISP and Prolog.Postfix notation is used in some programmable calculators.

18

4.OntologiesConcept can be represented in first-order logic as unary

predicates; higher-arity predicates represent relationships.

To express the idea that a block is a physical object, we might use the first-order expression:

x (Block x) => (PhysicalObject x)

19

4.Ontologies• The ontology:

– specifies the things (i.e., blocks) that there are in some domain, – their properties and – their relationships.

• Agents must represent their knowledge (i.e. the things, their properties, and their relationship) in the vocabulary of a specified ontology.

• All agents that share the same ontology for knowledge representation have (the same) understanding of the “words” in the agent communication language.

20

4.OntologiesAn example of an ontology of the block world

thing

entity relation

block hand binaryunary

block_a handA on above

hand_Empty

block_b block_c clear

21

4.OntologiesAn example of another ontology -- for a simple business, showing classes and their subclasses, relationships, and instances (dashed lines)

22

The End

top related