Multi-Agent Systems University “Politehnica” of Bucarest Spring 2011 Adina Magda Florea curs.cs.pub.ro.

Slides:



Advertisements
Similar presentations
1DAML PI meeting, October DAML and Agents DAML and Agents Breakout Session DAML PI Meeting 17 October 2002 Tim Finin.
Advertisements

MultiAgent Systems Dr Oscar Lin.
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Chapter 10: Execution Models Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005.
8-1 LECTURE 8: Agent Communication An Introduction to MultiAgent Systems
FIPA Interaction Protocol. Request Interaction Protocol Summary –Request Interaction Protocol allows one agent to request another to perform some action.
Chapter 16: Multiagent Systems Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005.
Chapter 18: Communication Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005.
OASIS Reference Model for Service Oriented Architecture 1.0
Specifying Agent Interaction Protocols with AUML and OCL COSC 6341 Project Presentation Alexei Lapouchnian November 29, 2000.
Software Agent -communication-. Outline Overview Speech act theory Agent communication languages Summary 1/35.
14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications.
Chapter 8 The nature of communication
INTERACTION AND COMMUNICATION. Coordination A property of interaction among a set of agents performing some activity in a shared state. The degree of.
Multi-Agent Systems Chapter 2 Adapted (with permission) from Adina Magda Florea
Multiagent Systems and Societies of Agents
Agent Technology for e-Commerce
Agent Communication Languages CSE5610- Intelligent Software Systems Agent Communication Languages.
Presentation on Formalising Speech Acts (Course: Formal Logic)
DAI: Agent interaction in MAS
Agent Communication Language. Agent Coordination Agents communicate in order to achieve better the goals of themselves or of the society Coordination.
01 -1 Lecture 01 Intelligent Agents TopicsTopics –Definition –Agent Model –Agent Technology –Agent Architecture.
Systems Architecture, Fourth Edition1 Internet and Distributed Application Services Chapter 13.
KQML as an Agent Communication Language Tim Finin, Yannis Labrou, James Mayfield.
Agents Communication Languages (ACL) Dumitru Roman Digital Enterprise Research Institute
2015/8/91 FIPA Communicative Acts (CA). 2015/8/92 Introduction to FIPA FIPA is an IEEE Computer Society standards organization that promotes agent-based.
Knowledge Mediation in the WWW based on Labelled DAGs with Attached Constraints Jutta Eusterbrock WebTechnology GmbH.
Computer Science 30/08/20151 Agent Communication BDI Communication CPSC /CPSC Rob Kremer Department of Computer Science University of Calgary.
Topic 5: Communication and Negotiation Protocols
Agent Communication The nature of communication Indirect communication
SIF8072 Distributed Artificial Intelligence and Intelligent Agents 13 February 2003 Lecture 5: Agent Communication Lecturer:
EEL 5937 Agent communication EEL 5937 Multi Agent Systems Lecture 10, Feb. 6, 2003 Lotzi Bölöni.
Chapter 18: Communication Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005.
© Enn Tyugu1 Algorithms of Artificial Intelligence Lecture 9: Intelligent agents E. Tyugu Spring 2003.
Agent Communications Necessity Communication languages Communication architectures.
Multi-Agent Systems Lecture 3 University “Politehnica” of Bucarest Adina Magda Florea
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Multi-Agent Systems Lecture 3 University “Politehnica” of Bucarest Adina Magda Florea
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
Towards a Theoretical Framework for the Integration of Dialogue Models into Human-Agent Interaction John R. Lee Assistive Intelligence Inc. Andrew B. Williams.
Design of Multi-Agent Systems Teacher Bart Verheij Student assistants Albert Hankel Elske van der Vaart Web site
AOSE Multi-Agent Interaction. Agents and Interaction Interaction forms the basis of an agents collaborative problem solving capabilities. –Agents are.
Introduction to Semantic Web Service Architecture ► The vision of the Semantic Web ► Ontologies as the basic building block ► Semantic Web Service Architecture.
Agent Communication in Multi Agent Systems. Reference Weiss – Chapter 2 Wooldridge – Chapter 8.
Chapter 5: Distributed objects and remote invocation Introduction Remote procedure call Events and notifications.
Computer Science CPSC /CPSC Rob Kremer Department of Computer Science University of Calgary 07/12/20151 Agent Communications.
EEL 5937 Agent communication EEL 5937 Multi Agent Systems Lotzi Bölöni.
Agent Overview. Topics Agent and its characteristics Architectures Agent Management.
1 Chapter 38 RPC and Middleware. 2 Middleware  Tools to help programmers  Makes client-server programming  Easier  Faster  Makes resulting software.
Intelligent Agents: Technology and Applications Agent Communications IST 597B Spring 2003 John Yen.
Software Agents & Agent-Based Systems Sverker Janson Intelligent Systems Laboratory Swedish Institute of Computer Science
Agent Communication Languages Speech act theory Speech act theory Semantics of languages Semantics of languages KQML KQML FIPA ACL FIPA ACL Comparison.
Computer Science 24/02/20161 Agent Communication FIPA Performatives CPSC /CPSC Rob Kremer Department of Computer Science University of Calgary.
EEL 5937 Content languages EEL 5937 Multi Agent Systems Lecture 10, Feb. 6, 2003 Lotzi Bölöni.
Agents Transacting in Open Environments Two phases: Locating appropriate agents –through different kinds of middle agents Performing the transaction –with.
MTA SZTAKI Department of Distributed Systems Hogyan mixeljünk össze webszolgáltatásokat, ontológiákat és ágenseket? Micsik András.
다중 에이전트의 의사소통 모델에 관한 연구 - KQML 언어의 의미론을 중심으로 - 인지과학 협동과정 김 경수.
Agent Communication Michael Floyd SYSC 5103 – Software Agents November 13, 2008.
Topic 4: Distributed Objects Dr. Ayman Srour Faculty of Applied Engineering and Urban Planning University of Palestine.
Service-Oriented Computing: Semantics, Processes, Agents
LECTURE 9: Agent Communication
Service-Oriented Computing: Semantics, Processes, Agents
Agent communication Lecture outline
Service-Oriented Computing: Semantics, Processes, Agents
Communication in Multi-Agent Systems
Service-Oriented Computing: Semantics, Processes, Agents
Service-Oriented Computing: Semantics, Processes, Agents
AGENT FRAMEWORK By- Arpan Biswas Rahul Gupta.
Presentation transcript:

Multi-Agent Systems University “Politehnica” of Bucarest Spring 2011 Adina Magda Florea curs.cs.pub.ro

Lecture 3 – Agent communication  Artificial communication  Indirect communication  Direct communication  ACL  Communication protocols

1. Artificial communication Human communication  Communication is the intentional exchange of information brought about by the production and perception of signs drawn from a shared system of conventional signs (AIMA, Russell&Norvig)  language  Communication seen as an action (communicative act) and as an intentional stance Component steps of communication SpeakerHearer  Intention  Perception  Generation  Analysis  Synthesis  Disambiguation  Incorporation 3 Syntax Semantics Pragmatics

Agent communication  low-level communication: simple signals, traces, low-level languages  high-level communication - cognitive agents, mostly seen as intentional systems  Communication in MAS = more than simple communication, implies interaction Communication protocols = enables agents to exchange and understand messages Interaction protocols = enable agents to have conversations, i.e., structured exchanges of messages Aim  4

2. Indirect communication 2.1 Signal propagation - Manta, A. Drogoul  An agent sends a signal, which is broadcast into the environment, and whose intensity decreases as the distance decreases  At a point x, the signal may have one of the following intensities V(x)=V(x 0 )/dist(x,x 0 ) V(x)=V(x 0 )/dist(x,x 0 ) 2 5  x0x0  S S - stimulus  Agent A (stimulus triggers behavior P) Agent B (stimulus triggers behavior P)  Topological differences lead to social differences 2.2 Trails - L. Steels  agents drop "radioactive crumbs" making trails  an agent following a trail makes the trail faint until it disappears Reactive agents

2.3 Blackboard systems, Barbara Hayes-Roth, 1985  Blackboard = a common area (shared memory) in which agents can exchange information, data, knowledge  Agents initiates communication by writing info on the blackboard  Agents are looking for new info, they may filter it  Agents must register with a central site to receive an access authorization to the blackboard  Blackboard = a powerful distributed knowledge computation paradigm  Agents = Knowledge sources (KS) 6 Cognitive agents KS KSAR Control Blackboard

3. Direct communication Sending messages  method invocation – Actors  exchange of partial plans – coordination of cooperative agents ACL = Agent Communication Languages communication as action - communicative acts 7

3.1 Agent Communication Languages  Concepts (distinguish ACLs from RPC, RMI or CORBA, ORB) :  ACLs handle propositions, rules, and actions instead of objects with no associated semantics  An ACL message describes a desired state in a declarative language, rather than a procedure or method invocation  ACLs are mainly based on BDI theories: BDI agents attempt to communicate their BDI states or attempt to alter interlocutor's BDI state  ACLs are based on Speech Act Theory  Agent behavior and strategy drive communication and lead to conversations 8 Origins of ACLs Knowledge Sharing Effort - DARPA, 1990  External Interface Group - interaction between KBS - KQML  Interlingua - common language of KB - KIF  Shared, Reusable Knowledge Bases - Ontolingua ACL Content language Ontology

Theory of Speech Acts J. Austin - How to do things with words, 1962, J. Searle - Speech acts, 1969 A speech act has 3 aspects:  locution = physical utterance by the speaker  illocution = the intended meaning of the utterance by the speaker (performative)  prelocution = the action that results from the locution Alice told Tom: "Would you please close the door" locutionillocutioncontent prelocution: door closed (hopefully!) Illocutionary aspect - several categories oAssertives, which inform: the door is shut oDirectives, which request: shut the door, can pelicans fly? oCommissives, which promise something: I will shut the door oPermissive, which gives permission for an act: you may shut the door oProhibitives, which ban some act: do not shut the door oDeclaratives, which causes events: I name you king of Ruritania oExpressives, which express emotions and evaluations: I am happy 9

3.2 KQML - Knowledge Query and Manipulation Language A high-level, message-oriented communication language and protocol for information exchange, independent of content syntax (KIF, SQL, Prolog,…) and application ontology KQML separates:  semantics of the communication protocol (domain independent)  semantics of the message (domain dependent) 3 (conceptual) layers 10 Content Communication Message Describes low level communication parameters: - identity of sender and receiver - an unique id associated with the communication Core of KQML - identity of the network protocol with which to deliver the message - speech act or performative Optional - content language - ontology

Syntax S-expressions used in LISP (ask-one :sender joe :receiver ibm-stock :reply-with ibm-stock :language PROLOG :ontology NYSE-TICKS :content (price ibm ?price) ) 11 (tell:sender willie :receiver joe :reply-with block1 :language KIF :ontology BlockWorld :content (AND (Block A)(Block B) (On A B)) ) 1. Query performatives: ask-one, ask-all, ask-if, stream-all,... (stream-all:sender willie :receiver ibm-stock :content (price ?VL ?price ) ) (standby :content (stream-all :content (price ?VL ?price) ) ask-one(P) tell(P) tell(P1) stream-all(P) tell(P2) eos tell(P1,P2,...) ask-all(P) B B B A A A

12 4. Generic informational performatives: tell, untell, insert, delete,... In fact, KQML contains only 2 types of illocutionary acts: assertives and directives + facilitator and network-related performatives (no necessarily speech acts) tell(P) untell(P) delete(P) insert(P) 2. Generator performatives: standby, ready, next, rest, discard, generate, Network performatives: register, unregister, forward, route, Response performatives: reply, sorry Capability performatives: advartise, subscribe, recommend... Facilitator A A B B

13 Facilitator agent = an agent that performs various useful communication services:  maintaining a registry of service names (Agent Name Server)  forwarding messages to named services  routing messages based on content  matchmaking between information providers and clients  providing mediation and translation services tell(P) ask(P) subscribe(ask(P)) tell(P) advertise(ask(P)) tell(P) recruit(ask(P)) ask(P) recommend(ask(P))advertise(ask(P)) tell(P) ask(P) reply(B) A A A A B B B B

14 Semantics of KQML (Labrou & Finin)  Use preconditions and postconditions that govern the use of a performative + the final state for the successful performance of the performative  Uses propositional attitudes: belief, knowledge, desire, intentions Preconditions: the necessary states for an agent to send a performative and for the receiver to accept it and successfully process it; if the precondition do not hold, the most likely response is error or sorry Postconditions - describe the state of the sender after successful utterance of a performative and of the receiver after the receipt and processing of a message Completion condition - the final state after a conversation has taken place and that the intention associated with the performative that started the conversation has been fulfilled Propositional attitudes Bel(A,P)Know(A,S)Want(A,S)Int(A,S) Instances of action Proc(A,M)SendMsg(A,B,M)

15 tell(A,B,X) A states to B that A believes the content X to be true, Bel(A,X) Pre(A): Bel(A,X)  Know(A, Want(B, Know(B,S))) Pre(B): Int(B, Know(B,S)) where S may be any of Bel(B,X) or  Bel(B,X) Post(A): Know(A, Know(B, Bel(A,X))) no unsolicited information Post(B): Know(B, Bel(A,X)) Completion: Know(B, Bel(A,X)) advertise(A,B,M) A states to B that A can and will process the message M from B, if it receives one Int(A, Proc(A,M))commisive act Pre(A): Int(Proc(A,M)) Pre(B): NONE Post(A): Know(A, Know(B, Int(A, Proc(A,M))) Post(B): Know(B, Int(A, Proc(A,M))) Completion: Know(B, Int(A, Proc(A,M)))

FIPA - ACL Foundation for Intelligent Physical Agents, 1996 oGoal of FIPA = make available specifications that maximize interoperability across agent-based systems oFIPA Committees: ACL, agent specification, agent-software interaction  As KQML, FIPA ACL is based on speech act theory; it sees messages as communication acts (CA); syntax similar to KQML  Differs in: the names of CAs, set of CAs, and semantics (inform:sender Agent1 :receiver Agent2 :content (price good2 150) :in-reply-to round-1 : reply-with bid03 : language S1 :ontology hp-auction :reply-by 10 :protocol offer :conversation-id conv-1 ) FIPA communicative acts Informatives - query_if, subscribe, inform, inform_if confirm, disconfirm, not_understood Task distribution - request, request_whenever, cancel, agree, refuse, failure Negotiation - cfp, propose, accept_proposal reject_proposal

17 FIPA - Semantics SL (Semantic Language) - a quantified, multi-modal logic, with modal operators Allows to represent:  beliefs  uncertain beliefs  desires  intentions B  - beliefD  - desireU  - uncertain belief G  - intention Bif  - express whether an agent has a definite opinion one way or another about the truth or falsity of  Uif  - the agent is uncertain about 

18 FIPA - Semantics The semantics of a CA is specified as a set of SL's formulae that describe:  Feasibility preconditions - the necessary conditions for the sender - the sender is not obliged to perform the CA  Rational effect - the effect that an agent can expect to occur as a result of performing the action; it also typically specifies conditions that should hold true of the recipient The receiving agent is not required to ensure that the expected effect comes about The sender can not assume that the rational effect will necessary follow Pre: B i    B i (Bif j   Uif j  ) Post: B j 

19 Using ACLs in MAS Any MAS that is to use an ACL must provide:  a finite set of APIs for composition, sending, and receiving ACL messages  an infrastructure of services that assist agents in naming, registration, and basic facilitation services (finding other agents that can do things for your agent)  code for every reserved message type that takes the action prescribed by the semantics for the particular application;  the code depends on the application language, the domain, and the details of the agent system using the ACL

20 4. Communication content  Content languages KIF Prolog Clips SQL FIPA-SL, FIPA-CCL, FIPA-KIF DAML  Ontologies ACL Content language Ontology DARPA Agent Markup Language The DAML Program officially began in August The goal of the DAML effort is to develop a language and tools to facilitate the concept of the Semantic Web.

21  FIPA-SL (request :sender (agent-identifier :name i) :receiver (set (agent-identifer :name j) :content ((action (agent-identifier :name j) (deliver box7 (loc 10 15)))) :protocol fipa-request :language fipa-sl :reply-with order56 ) (agree :sender (agent-identifier :name j) :receiver (set (agent-identifer :name i) :content ((action (agent-identifier :name j) (deliver box7 (loc 10 15))) (priority order56 low)) :protocol fipa-request :language fipa-sl :in-reply-to order56 ) Content languages  KIF - Knowledge Interchange Format A prefixed version of FOPL with expressions to support nonmonotonic reasoning and definitions (salary ?x ?y ?z) - capability of encoding knowledge about knowledge (interested joe (salary,?x,?y,?z))

5. Interaction protocols Interaction protocols = enable agents to have conversations, i.e., structured exchanges of messages  Finite automata  Conversations in KQML  Petri nets  FIPA IP standards: FIPA-query, FIPA-request, FIPA-contract-net,...

5.1 Finite state automata 23 A:B<<ask(do P) B:A<<accept(do P) B:A<<refuse(do P) B:A<<result(do P)B:A<<fail(do P) propose S (P) accept R (P) reject R (P) counter R (P) counter S (P) accept S (P) reject S (P) Winograd, Flores, 1986 COOL, Barbuceanu,95

Conversations in KQML Use Definite Clause Grammars (DCG) formalism for the specification of conversation policies for KQML performatives DCGs extend Context Free Grammars in the following way:  non-terminals may be compound terms  the body of the rule may contain procedural attachments, written as "{" and "}" that express extra conditions that must be satisfied for the rule to be valid Ex: noun(N)  [W], {RootForm(W,N), is_noun(N)} S  s(Conv, P, S, R, inR, Rw, IO, Content), {member(P, [advertise, ask-if]} s(Conv, ask-if, S, R, inR, Rw, IO, Content)  [ask-if, S, R, inR, Rw, IO, Content] | [ask-if, S, R, inR, Rw, IO, Content], {OI is inv(IO)}, r(Conv, ask-if, S, R, _, Rw, OI, Content) r(Conv, ask-if, R, S, _, inR, IO, Content)  [tell, S, R, inR, Rw, IO, Content] | problem(Conv, R, S, inR, _, IO) Labrou, Finin, 1998

DA A wants to do P, A cannot do P Request do(P) Refuse do(P) Accept/request do(P) Fail to do(P) Notification of end(P) DBAR1AR2 FA2 FA1 BR FB Failure Satisfaction Impossible to do(P) B does not want to do(P) B is willing to do(P) Completed(P) 5.3 Petri nets Petri net = oriented graph with 2 type of nodes:places and transitions; there are moving tokens through the net - representation of dynamic aspect of processes. Tokens are moved from place to place, following firing rules. A transition T is enabled if all the input places P of T posses a token (several other rules may be defined). A marking is a distribution of tokens over places. Colored Petri-nets Ferber, Success

FIPA – Protocols FIPA-query, FIPA-request, FIPA- contract-net,...

27 FIPA - Request

28 Contract net Initiator si contractori (potentiali)

29 FIPA - Contract net

Example (cfp :sender (agent-identifier :name j) :receiver (set (agent-identifier :name i)) :content "((action (agent-identifier :name i) (sell plum 50)) (any ?x (and (= (price plum) ?x) (< ?x 10))))" :ontology fruit-market :language fipa-sl)

(propose :sender (agent-identifier :name j) :receiver (set (agent-identifier :name i)) :content "((action j (sell plum 50)) (= (any ?x (and (= (price plum) ?x) (< ?x 10))) 5)" :ontology fruit-market :in-reply-to proposal2 :language fipa-sl)

(accept-proposal :sender (agent-identifier :name i) :receiver (set (agent-identifier :name j)) :in-reply-to bid089 :content " ((action (agent-identifier :name j) (sell plum 50)) (= (price plum) 5))) " :language fipa-sl)

(reject-proposal :sender (agent-identifier :name i) :receiver (set (agent-identifier :name k)) :content "((action (agent-identifier :name k) (sell plum 50)) (= (price plum) 20) (price-too-high 20))" :in-reply-to bid080)

34 FIPA – Iterated Contract net

35 References  M. Huhns, L. Stephens. Multiagent systems and societies of agents. In Multiagent Systems - A Modern Approach to Distributed Artificial Intelligence, G. Weiss (Ed.), The MIT Press, 2001, p  M. Wooldrige. Reasoning about Rational Agents. The MIT Press, 2000, Chapter 7  Y. Labrou, T. Finin. Semantics and conversations for an agent communication language. In Readings in Agents, M. Huhns & M. Singh (Eds.), Morgan Kaufmann, 1998, p  J. Ferber - Multi-Agent Systems. Addison-Wesley, 1999, Chapter 6  T. Finnin, R. Fritzson - KQML as an agent communication language. In Proc. of the Third International Conference on Information and Knowledge Management (CIKM'94), ACM Press,  M. Singh. Agent communication languages: Rethinking the principles. IEEE Computer, Dec. 1998, p  Y. Labrou, T. Finnin, Y. Peng. Agent communication languages: The current Landscape. IEEE Computer, March/April 1999, p  FIPA97. "Agent Communication Language" Specification FIPA, 11/28/97

36 Web References DARPA KSEhttp://www-ksl.stanford.edu/knowledge-sharing/ KQMLhttp:// KIFhttp://logic.stanford.edu/kif/ Ontolinguahttp://www-ksl-svc.stanford.edu:5915/&service=frame-editorhttp://www-ksl-svc.stanford.edu:5915/&service=frame-editor FIPAhttp:// DAMLhttp:// References for Ontologies (due to prof. Stefan Trausan)  Constandache, G.G., Ştefan Trăuşan-Matu, Ontologia şi hermeneutica calculatoarelor, Ed. Tehnică, 2001  Gruber, T., What is an Ontology,  J. Sowa, Ontologia şi reprezentarea cunoştinţelor, în (Constandache şi Trăuşan-Matu, 2001)  