Agent Communication in Multi Agent Systems. Reference Weiss – Chapter 2 Wooldridge – Chapter 8.

Slides:



Advertisements
Similar presentations
DISTRIBUTED COMPUTING PARADIGMS
Advertisements

1DAML PI meeting, October DAML and Agents DAML and Agents Breakout Session DAML PI Meeting 17 October 2002 Tim Finin.
MultiAgent Systems Dr Oscar Lin.
Distributed Systems Major Design Issues Presented by: Christopher Hector CS8320 – Advanced Operating Systems Spring 2007 – Section 2.6 Presentation Dr.
FIPA Interaction Protocol. Request Interaction Protocol Summary –Request Interaction Protocol allows one agent to request another to perform some action.
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
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
0 General information Rate of acceptance 37% Papers from 15 Countries and 5 Geographical Areas –North America 5 –South America 2 –Europe 20 –Asia 2 –Australia.
Effective Coordination of Multiple Intelligent Agents for Command and Control The Robotics Institute Carnegie Mellon University PI: Katia Sycara
Specifying Agent Interaction Protocols with AUML and OCL COSC 6341 Project Presentation Alexei Lapouchnian November 29, 2000.
Network Operating Systems Users are aware of multiplicity of machines. Access to resources of various machines is done explicitly by: –Logging into the.
Introduction To System Analysis and Design
1 Adaptive Management Portal April
14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications.
© 2001 Franz J. Kurfess Knowledge Processing 1 CPE/CSC 580: Knowledge Management Dr. Franz J. Kurfess Computer Science Department Cal Poly.
INTERACTION AND COMMUNICATION. Coordination A property of interaction among a set of agents performing some activity in a shared state. The degree of.
Software Connectors. Attach adapter to A Maintain multiple versions of A or B Make B multilingual Role and Challenge of Software Connectors Change A’s.
Multiagent Systems and Societies of Agents
ECEN5053 SW Eng of Dist Systems, Arch Des Part 3, Univ of Colorado, Boulder1 Architectural Design of Distributed Systems, Part 3 ECEN5053 SW.
Copyright © Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy. All rights reserved. Software Connectors Software Architecture Lecture 7.
Agent Communication Languages CSE5610- Intelligent Software Systems Agent Communication Languages.
DAI: Agent interaction in MAS
RETSINA: A Distributed Multi-Agent Infrastructure for Information Gathering and Decision Support The Robotics Institute Carnegie Mellon University PI:
16: Distributed Systems1 DISTRIBUTED SYSTEM STRUCTURES NETWORK OPERATING SYSTEMS The users are aware of the physical structure of the network. Each site.
Agents Communication Languages (ACL) Dumitru Roman Digital Enterprise Research Institute
Copyright © Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy. All rights reserved. Software Connectors Software Architecture Lecture 7.
Topic 5: Communication and Negotiation Protocols
CS 390- Unix Programming Environment CS 390 Unix Programming Environment Topics to be covered: Distributed Computing Fundamentals.
Introduction To System Analysis and Design
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.
DISTRIBUTED COMPUTING PARADIGMS. Paradigm? A MODEL 2for notes
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
XML Web Services Architecture Siddharth Ruchandani CS 6362 – SW Architecture & Design Summer /11/05.
Locating Mobile Agents in Distributed Computing Environment.
Architectural Design Yonsei University 2 nd Semester, 2014 Sanghyun Park.
Architectural Design of Distributed Applications Chapter 13 Part of Design Analysis Designing Concurrent, Distributed, and Real-Time Applications with.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
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.
Multiagent System Katia P. Sycara 일반대학원 GE 랩 성연식.
EEL 5937 Agent communication EEL 5937 Multi Agent Systems Lotzi Bölöni.
Introspecting Agent-Oriented Design Patterns Manuel Kolp, T. Tung Do, Stéphane Faulkner and T. T. Hang Hoang Presented by Rachel Bock, Sam Shaw, Nicholas.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT By Jyothsna Natarajan Instructor: Prof. Yanqing Zhang Course: Advanced Operating Systems.
Intelligent Agents: Technology and Applications Agent Communications IST 597B Spring 2003 John Yen.
Software Connectors Acknowledgement: slides mostly from Software Architecture: Foundations, Theory, and Practice; Richard N. Taylor, Nenad Medvidovic,
Copyright © Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy. All rights reserved. Software Connectors in Practice Software Architecture.
Agent Communication Languages Speech act theory Speech act theory Semantics of languages Semantics of languages KQML KQML FIPA ACL FIPA ACL Comparison.
Application architectures Advisor : Dr. Moneer Al_Mekhlafi By : Ahmed AbdAllah Al_Homaidi.
Software Connectors. What is a Software Connector? 2 What is Connector? – Architectural element that models Interactions among components Rules that govern.
Distributed Computing & Embedded Systems Chapter 4: Remote Method Invocation Dr. Umair Ali Khan.
Agent Communication Michael Floyd SYSC 5103 – Software Agents November 13, 2008.
Powerpoint Templates Data Communication Muhammad Waseem Iqbal Lecture # 07 Spring-2016.
Topic 4: Distributed Objects Dr. Ayman Srour Faculty of Applied Engineering and Urban Planning University of Palestine.
AUSF Agent based User Simulation Framework Om Narayan.
Service-Oriented Computing: Semantics, Processes, Agents
LECTURE 9: Agent Communication
TÆMS-based Execution Architectures
Software Connectors.
Distribution and components
Software Connectors.
Service-Oriented Computing: Semantics, Processes, Agents
AGENT FRAMEWORK By- Arpan Biswas Rahul Gupta.
Software Architecture Lecture 7
Software Architecture Lecture 7
Software Architecture Lecture 7
Software Architecture Lecture 6
Presentation transcript:

Agent Communication in Multi Agent Systems

Reference Weiss – Chapter 2 Wooldridge – Chapter 8

Multiple agent systems There are cases of single independent agents Multiple agents are more typical –Networks and interconnected systems This discussion involves analysis and design of multi agent environments –Environment provide computational infrastructure Protocols for agents to communicate Protocols for agents to interact

Example of Comm Protocol Example of a comm protocol –Propose a course of action –Accept a course of action –Reject a course of action –Retract a course of action –Disagree with proposed course of action –Counter propose course of action Interaction between A1 and A2 –A1 proposes a course of action to A2 –A2 evaluates the proposal and does one of the following Sends acceptance to A1 Sends counter proposal to A1 Sends disagreement to A1 Sends rejection to A1

Lost update problem Process synchronization is critical –Shared variable v, is read by p1 and processed. –Process p2 updates v. –Process p1 updates v. –p2 updates are lost –Serialization

Communication: Object vs. Agent OO: Communication as Method Invocation –Two objects O1 and O2. –Object O1 has a public method m1. –Object O2 communicates with O1 by invoking m1, i.e. O2 executes O1. m1(arg); arg is argument communicated by O2 2 to O1. –In effect O2 controls execution of O1. In agent environment the agents are autonomous and hence this is not acceptable. –Agents communicate to influence the other agent.

Why Multi Agent Systems? Info is geographically distributed Info arch is large and complex –Many components, concepts, large data volume, complex interconnections Multi modal info –Text, database, voice, images, video… –Static, dynamic, probabilistic

How to deal with complexity? Potential ways to deal with complexity –Modularity, distribution, abstraction, intelligent info processing (find and modify)  DAI / Agents –Develop agents independently, make agents autonomous Computational agents are distributed –Application programs, –Active info resources – available globally, –Wrappers for legacy systems, –On-line services

Properties of Multi Agent Env Infrastructure including comm and interaction protocols No centralized controller (designer) Support autonomy Agents may cooperate or compete

Properties of MAS PropertiesRange of values Design AutonomyPlatform, interaction protocol, language, internal arch Communication Infrastructure Blackboard (shared mem) or Message passing; Synch or Asynch; Push or Pull; Point-to-point, Multicast, or Broadcast Directory servicesYellow or white pages Message ProtocolKQML, CORBA, HTTP, HTML SecurityTimestamp / Authentication Operations SupportArchiving / Redundancy / Restoration / Accounting From Table 2.1 in [1]

Communications Relies on Syntax (structure of comm – at the symbol level) Semantics (what the symbols denote) Pragmatics (interpretation of the symbols) Semantics + Pragmatics leads to understanding of the meaning of the communication Agents must understand and be understood

Dimensions of Meaning Descriptive vs Prescriptive –Describe phenomena vs prescribe behavior –Descriptions are good for humans, what about agents? –ACL are designed to communicate behavior and activities Personal vs Conventional meaning –Agents should use conventional (standards). But what about context? Semantics vs Pragmatics –Pragmatics specifies how communication is used. Environment. Context Contextuality –Context of the present state of the communicator. Environment and history of actions. Communicating agent. Identity of the communicator. Coverage – smaller languages are better suited for agent communication Cardinality: single message interpreted differently than a broadcast message.

Agent Communication Coordination requires the agent to predict behavior of the other agents in the system – requires good models Coord – Competition – Negotiation Cooperation – Planning – Centralized Plnng Distributed Plnng Coherence – achieve global coherence without centralized control –Economic markets are good at determining price, but not necessarily provides optimal resource allocation from Herb Simon

Message Types Agents must be capable to participate in a dialog –Potential agent role Active, passive or both Master, slave or peer –Passive agents Accept info (assertions), Accept query and send a reply (assertion) From the comm network there is no difference between an unsolicited assertion or an assertion in reply to a query –Active agents Issue queries, issue assertions Control subagents, Monitor environment Speech act theory is the basis of the inter agent communication –Views natural language as actions – requests, suggestions, commitments, and replies. –Locution – the spoken (physical) utterances –Illocution – intended meaning of the spoken utterance –Perlocution – action resulting from the locution

Agent Capabilities Basic Agent Passive Agent Active Agent Peer Agent Receives assertions  Receives queries  Sends assertions  Sends queries  Table 2.3 from [1]

Inter Agent Message Types Communicative ActionIllocutionary ForceExpected Result AssertionInformAcceptance QueryQuestionReply InformAcceptance Request ExplanationInformAgreement Command PermissionInformAgreement RefusalInformAgreement Offer/BidInformAgreement Acceptance Agreement ProposalInformOffer/Bid Confirmation Retraction Denial Table 2.4 from [1]

Communication Protocol Typical levels –Lowest level: interconnection –Middle level: format, syntax of the info being transferred –Top level: meaning or semantics of the info Binary: one sender, one receiver N-ary: Broadcast, Multicast – one sender, N receivers Data structure –Sender –Receiver (s) –Languages in the protocol –Encoding and decoding functions –Actions to be taken by the receiver

Knowledge Query and Manipulation Language (KQML) Protocol for info and knowledge exchange Structure (KQML-performative :sender :receiver :language :ontology :content ……) Keywords (preceded by :) can be in any order. Others –reply-with, in-reply-to Message can be understood by agents – assuming language and ontology knowledge

KQML: Inter Agent & Agent Program Communication Agent Application Program KQML

KQML – Modes of Communication Client Server Client Server Client Server query reply Synch: Blocking query – wait for reply query reply next reply handle subscribe reply Server maintains state: individual replies on request Asynch: nonblocking subscribe results in replies

Knowledge Interchange Format Formal syntax for knowledge representation Example: Block A on Block B. (tell :senderAgent1 :receiverAgent2 :languageKIF :ontologyBlocks-World :content(AND (Block A) (Block B) (On A B)))

Nested KQML (forward :fromAgent1 :toAgent2 :senderAgent1 :receiverAgent3 :languageKQML :ontologyKQML-ontology :content(tell :sender Agent1 :receiver Agent2 :language KIF :ontology Blocks-World :content (AND (Block A) (Block B) (On A B)))) Forward:from = Content:sender = Agent1 Forward:to = Content:receiver = Agent2 Forward:receiver = Agent3

KQML performatives Basic query (evaluate, ask-one, ask-all,…) Multiresponse query (stream-in, stream-all,..) Response (reply, sorry,…) Generic info (tell, achieve, cancel, untell, unachieve, …) Generator (standby, ready, next, rest,…) Capability-definition (advertise, subscribe, monitor,…) Networking (register, unregister, forward, broadcast,…)

Knowledge Interchange Format (KIF) Proposed standard for intelligent agents, expert systems, databases… Examples (salary xxx-yy-zzzz designer 40000) (> (* (width chip1) (length chip1)) (* (width chip2) (length chip2)))

Example KQML dialog (evaluate :senderA:receiverB :languageKIF:ontology motors :reply-withq1:content(val(torque m1))) (reply :senderB:receiverA :languageKIF:ontology motors :in-reply-toq1:content(= (torque m1) (scalar 12 kgf))) Note: q1 is query reference number From Figure 8.2 in [2]

Example KQML dialog (stream-about :senderA:receiverB :languageKIF:ontology motors :reply-withq1:content(val(torque m1))) (tell :senderB:receiverA :in-reply-toq1:content(= (torque m1) (scalar 12 kgf))) (tell :senderB:receiverA : in-reply-to q1:content(= (status m1) normal)) (eos :senderB:receiverA : in-reply-to q1) stream-about: S wants all relevant answers in R’s Virtual Knowledge Base. Output is streamed. eos ends the stream From Figure 8.2 in [2]

FIPA ACL (inform :senderagent1 :receiveragent2 :content(pricegood2150) :languages1 :ontologyhpl-auction ) FIPA=Foundation of Intelligent Physical Agents Message structure is similar to KQML Message attribute fields is also similar to KQML FIPA performatives are different than KQML –20 performatives –Inform tells the receiver to believe the message content; implies that sender also believes the message

Ontologies Specification of the objects, concepts and relationships –In the Block World example, BLOCK represents a concept and ON is a relationship Each agent must represent its knowledge using the vocabulary of a specific ontology Note KQML – specifies the Ontology How are Ontologies co-ordinated?

Ontologies for ACL Represent part of the world. Shared virtual world, which provide the terms for communication. If 2 agents agree on the upper nodes of a taxonomy, then these agents can focus on the language content in this context.

Agent Interaction Protocols Interaction implies conversation Objective: –Ensure achievement of overall goals, –Coherence across agents –Retain agent autonomy Shared goals, common tasks, reduce conflicts, pool knowledge and evidence

Agent Interaction Protocols (contd) Co-ordination Co-operation Contract Net Blackboard Negotiation AIGA

Co-ordination Protocols Reason for co-ordination: better utilization of resources, avoid duplication, maintain coherence –Timely updates, agent synchronization –Distribute control and data Disadv: System state is distributed Adv: Reduce points of bottleneck –Goal graph Relates goals and resources Identifies dependencies Assignment of goals to agents Manage graph traversal and report results

Co-operation Protocol Supports decomposition and distribution of tasks (divided and conquer) –Avoid overloading of critical resources –Task assigned to agents with matching skills –Master / slave relationships in task assignment –Minimize communication and synchronization cost: spatial and semantic proximity –Migrate tasks if necessary –Redundancy and fault tolerance Task distribution approaches –Market mechanisms: price, utility –Contract net –Credibility, belief management –Static plans: task to resource map

Task Assignment Spatial Functional Agent 1 Agent 3 Agent 2 Neurologist PedatricianCardiologist Radiologist Internist

Contract Net Manager wants to find contractors –Announce task (RFP) –Receive bids –Award contracts –Results, task accomplishment Contractors role –Get RFP –Evaluate capability –Respond (Bid, No Bid) –Perform task –Report results Manager assess contractor capability Distributed computing implications

Structure Contract Net Structure the bid –Addressee –Capability requirements –Task abstraction –Bid spec –Expiration Contractor response –Capability –Capacity –Pricing Multi level interaction Contractor capability and capacity assessment Manager as a prime contractor Negotiation Synchronization

Blackboard Specialized Knowledge Sources (KS) Multiple approaches to problem solution Knowledge representation is KS controlled Control transfer Data exchange Synchronization

Blackboard Architecture Executing Activated KS Control Components Library Of KSs Blackboard Events Pending KS Activations Distributed Memory Systems? Granuality?

Negotiation Goes through a cycle –Offer –Evaluation –Identify agreements –Identify disagreements –Repeat with counter offer Granularity, efficiency, stability