32
Topic 5: Communication and Negotiation Protocols Communication and ACLs direct vs. indirect communication speech act theory ACLs - KQML / FIPA-ACL Negotiation protocols contract-net protocol auction protocols Notation - AUML

Topic 5: Communication and Negotiation Protocols Communication and ACLs direct vs. indirect communication speech act theory ACLs - KQML / FIPA-ACL

Embed Size (px)

Citation preview

Topic 5: Communication and Negotiation Protocols

Communication and ACLs direct vs. indirect communication speech act theory ACLs - KQML / FIPA-ACL

Negotiation protocols contract-net protocol auction protocols

Notation - AUML

1. Communication and ACLs

BlackboardBlackboard

AgentAgent

AgentAgent

AgentAgent

AgentAgent

AgentAgent

AgentAgent

Indirect communication information available for all no direct communication simple architecture

communication the basis for any interaction “effected through signals”

Agent A (Sender)Agent A (Sender)

Agent B (Receiver)Agent B

(Receiver)

Message

Message passing direct exchange common language conversation - sequences of

messages

Direct communication

message passing some of the challenges

distributed systems brokering, naming services, discovery, … “infrastructure” for sending messages heterogeneous entities

language, developer, execution environment, …

multi-agent systems objects messages

agents speech acts

why something different?

an example

MAS with cognitive of practical reasoning agents

focus on mental states “messages must have a meaning to other agents”

e.g. “agent 1 sends message to agent 2: doSomething(x)”

what does this mean to agent 2 ? how should/could he respond ? agent 1 asks agent 2 to do x ? – part of negotiation protocol … ? agent 1 tells agent 2 to do x ? – assuming a commitment … ? agent 1 relies on the fact that agent 2 will do x ?

– part of task allocation … ?

agent 1 will do x ? does agent 2 think agent 1 is waiting for a reply ? what is x ? a task ? a question ? the name of an agent ? does agent 1 asks agent 2 to perform task itself, or just make sure the

result is achieved what must agent 2 do with the result ?

must be semantically clear heterogeneity, openness, …

consequence agents must be endowed with capabilities to understand and reason upon the

meaning and content of messages”

Agent Communication

ability to exchange information requires

1. ability to “physically” exchange information

2. common understanding

3. common language

4. interaction strategies / protocols

Agent Communication

ability to exchange information requires 1. ability to “physically” exchange information

2. common understanding

3. common language

4. interaction strategies / protocols

high-levelcommunication

low-levelcommunication

(tcp-ip, http, smtp, …)

Agent Communication

ability to exchange information requires

1. ability to “physically” exchange information 2. common understanding

exchanging knowledge requires mutual understanding 2 keys

translation between languages sharing semantic content

- each agent has implicit assumptions on its own semantics

- translation must preserve semantics!

to share knowledge, we must have a common semantics

can be shared via “common ontologies”

3. common language 4. interaction strategies / protocols

Agent Communication

ability to exchange information requires

1. ability to “physically” exchange information

2. common understanding

3. common language

incorporates two types of languages

content language

communication language

Agent Communication Language

4. interaction strategies / protocols

Agent Communication Languages (ACL)

Agents are typically defined at a “high” level

an ACL should support intentional communication

the intentional descriptions use concepts such as: beliefs,goals, intentions, commitment

the language should not define protocols such as

transport protocols high level coordination protocols constraints on valid exchanges

Speech Act Theory

speech act theory views human speech actions (John Austin, 1962) as in “an attempt to influence …”

three parts of speech locution physical utterance illocution the intended meaning perlocution the action that results from the locution

use performatives to identify illocutionary force

example:

“Please be quiet!” locution – the actual performance of the act

illocution – the purpose of the utterance

perlocution – the consequences of the utterance

ACLs: FIPA ACL

Foundation for Intelligent Physical Agents - http://www.fipa.org/

o 1995 since 2005: IEEE Computer Society standards organization “promotes agent-based technology and the interoperability of its standards with

other technologies”

standardisation of agent-related issues FIPA-OS FIPA infrastructure architecture ... FIPA-ACL

similar to KQML consists of a set of message types and the description of their pragmatics — that 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).

ACL Message

(inform :sender agent1 :receiver hpl-auction-server (price (bid good02) 150) :in-reply-to round-4 bid04 :language sl :ontology hpl-auction)

:content

:reply-with

performative

content

comm.information

FIPA ACL: performatives

FIPA ACL: semantics in SL“the Semantic Language”

SL (Semantic Language) can represent propositions, objects, and actions

formal semantics

< message ; precondition ; rational effect >

message the content of the message precondition on the “situation” (mental state) of the sender rational effect intended effect on mental state of receiver

FIPA - Communicative Acts (1)

inform the sender informs the receiver that a given proposition is true.

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

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.

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.

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.

ACLs: KQML Knowledge Query Manipulation Language (KQML)

KQML has 3 layers

content - ignored by KQML messages

message determines interaction types supplies performative & content may describe ontology, etc.

communication low level communication parameters sender, receiver, unique message ID

1. Communication – ACLs

2. Negotiation protocols

Basic protocols

contract-net protocol auction protocols

Negotiation protocols /Market-based Mechanisms

… iterative communication among a group of agents in order to reach a mutually accepted agreement on something…..

every day approach in resolving conflicts

needed: a set of options a utility function

every option has a price and benefit this function evaluates the worth of an option to an agent.

a negotiation protocol multiple stages or steps in the negotiation process eventually the process must either terminate or converge to a solution

The Contract Net Protocol

introduced by R.G.Smith in 1980 studied extensively with several variations in subsequent years.

how it works a manager

breaks the problem into several interacting sub-problems looks for a contractor selects the suitable contractor assigns a sub-problem monitors the progress of the overall solution

a contractor ‘bids’ for work accepts a task it has a binding agreement to complete the task according to the agreed terms

and completes the task undertaken.

recursively, the contractor can be a manager for the task it has undertaken.

Basic assumptions: the problem has a well defined structure for decomposing coarse-grain decomposition is possible there are enough contractors waiting to do the announced tasks

The Contract Net Protocol

I have a problem!

(a) Recognising the problem

managerPotentialcontrators

announcement

(b) Task Announcement

manager

bids

(c) Bidding

manager

Award task Potentialcontrator

(d) Award Contract

The Contract Net Protocol

ACL messages

Applicability of Contract Net

The Contract Net is a high-level communication protocol a way of distributing tasks dynamically decentralized / situated a means of self-organization for a group of agents

but limited (mostly for well-defined hierarchies of tasks) not scalable re-allocation ?

Auctions

an auction takes place between an agent known as the auctioneer a collection of agents known as the bidders

goal: for the auctioneer to allocate the good to one of the bidders

typically the auctioneer desires to maximize the price bidders desire to minimize price

Auction Parameters

goods can have private value public / common value correlated value

winner determination may be first price second price

bids may be open cry sealed bid

bidding may be one shot ascending descending

Example Auction protocols

English auction parameter values

first price open cry ascending

Dutch auction parameter values

open-cry descending (first price)

First-Price Sealed-Bid Auctions parameter values

sealed bid one-shot auction first price

English Auctions

Dutch Auctions

4. Notation - Agent UML

a proposal for an agent-oriented modeling language Pros:

Likely standardization on UML 2.0 Accepted by FIPA

Contras: UML dialect, not necessarily compatible

AUML AUML class diagram AUML interaction diagrams

esp. AUML sequence diagrams

http://www.fipa.org/repository/ips.php3

FIPA TC C 2000Specifies 11 Protocol Specifications

http://www.fipa.org/repository/ips.php3

1. FIPA Request Interaction Protocol Specification

2. FIPA Query Interaction Protocol Specification

3. FIPA Request When Interaction Protocol Specification

4. FIPA Contract Net Interaction Protocol Specification

5. FIPA Iterated Contract Net Interaction Protocol Specification

6. FIPA English Auction Interaction Protocol Specification

7. FIPA Dutch Auction Interaction Protocol Specification

8. FIPA Brokering Interaction Protocol Specification

9. FIPA Recruiting Interaction Protocol Specification

10. FIPA Subscribe Interaction Protocol Specification

11. FIPA Propose Interaction Protocol Specification

Summary

communication indirect (later) vs. direct communication message-based communication

ACLs --> speech act theory Negotation protocols Notation - AUML