Www.monash.edu.au Agent Communication Languages CSE5610- Intelligent Software Systems Agent Communication Languages.

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.
Overview of Web Services
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.
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
SOAP.
RPC Robert Grimm New York University Remote Procedure Calls.
Implementation Advice: When Intelligent Agents Meet RDF 2004 년 1 학기 - 인간과 컴퓨터 상호작용 인공지능연구실, 부산대학교 최성자.
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.
Presentation 7 part 2: SOAP & WSDL. Ingeniørhøjskolen i Århus Slide 2 Outline Building blocks in Web Services SOA SOAP WSDL (UDDI)
Software Agent -communication-. Outline Overview Speech act theory Agent communication languages Summary 1/35.
Interprocess Communications
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.
Multiagent Systems and Societies of Agents
DCS Architecture Bob Krzaczek. Key Design Requirement Distilled from the DCS Mission statement and the results of the Conceptual Design Review (June 1999):
Managing Agent Platforms with the Simple Network Management Protocol Brian Remick Thesis Defense June 26, 2015.
Agent Communication Language. Agent Coordination Agents communicate in order to achieve better the goals of themselves or of the society Coordination.
Fawaz Alsaadi Fahad Alsolmai.  Role Based Multi-Agent System for providing effective and secure Bank transaction services  To provide seamless access.
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.
Topic 5: Communication and Negotiation Protocols
The NISO Question/Answer Transaction Protocol (QATP) AVIAC January 2004 Donna Dinberg Library and Archives Canada Mark Needleman Sirsi Corporation.
Networks – Network Architecture Network architecture is specification of design principles (including data formats and procedures) for creating a network.
SIF8072 Distributed Artificial Intelligence and Intelligent Agents 13 February 2003 Lecture 5: Agent Communication Lecturer:
CS 390- Unix Programming Environment CS 390 Unix Programming Environment Topics to be covered: Distributed Computing Fundamentals.
Dr. Bhavani Thuraisingham October 2006 Trustworthy Semantic Webs Lecture #16: Web Services and Security.
1 Web Development & Design Foundations with XHTML Chapter 1 Key Concepts.
EEL 5937 Agent communication EEL 5937 Multi Agent Systems Lecture 10, Feb. 6, 2003 Lotzi Bölöni.
RELATIONAL FAULT TOLERANT INTERFACE TO HETEROGENEOUS DISTRIBUTED DATABASES Prof. Osama Abulnaja Afraa Khalifah
Reliable Communication in the Presence of Failures Based on the paper by: Kenneth Birman and Thomas A. Joseph Cesar Talledo COEN 317 Fall 05.
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.
Web Services Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester,
Distributed Information Retrieval Using a Multi-Agent System and The Role of Logic Programming.
William Stallings Data and Computer Communications
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.
Interprocess Communications
Agent Communication in Multi Agent Systems. Reference Weiss – Chapter 2 Wooldridge – Chapter 8.
Issues in Ontology-based Information integration By Zhan Cui, Dean Jones and Paul O’Brien.
EEL 5937 Agent communication EEL 5937 Multi Agent Systems Lotzi Bölöni.
FIPA Abstract Architecture London FIPA meeting January 24-29, 2000 from: TC-A members.
Internet Overview (Chapter 1 in [2]). 2 Outline History of the Internet History of the Internet Seven Layers of the OSI Model Seven Layers of the OSI.
Web Services An Introduction Copyright © Curt Hill.
Intelligent Agents: Technology and Applications Agent Communications IST 597B Spring 2003 John Yen.
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.
다중 에이전트의 의사소통 모델에 관한 연구 - KQML 언어의 의미론을 중심으로 - 인지과학 협동과정 김 경수.
Distributed Computing, M. L. Liu 1 Interprocess Communications Mei-Ling L. Liu.
Agent Communication Michael Floyd SYSC 5103 – Software Agents November 13, 2008.
XML and Distributed Applications By Quddus Chong Presentation for CS551 – Fall 2001.
A service Oriented Architecture & Web Service Technology.
OKBC (Open Knowledge Base Connectivity) An API For Knowledge Servers
LECTURE 9: Agent Communication
WEB SERVICES From Chapter 19 of Distributed Systems Concepts and Design,4th Edition, By G. Coulouris, J. Dollimore and T. Kindberg Published by Addison.
Layered Architectures
#01 Client/Server Computing
Communication in Multi-Agent Systems (MAS)
Lecture 4: RPC Remote Procedure Call Coulouris et al: Chapter 5
Communication in Multi-Agent Systems
AGENT FRAMEWORK By- Arpan Biswas Rahul Gupta.
WEB SERVICES From Chapter 19, Distributed Systems
#01 Client/Server Computing
Presentation transcript:

Agent Communication Languages CSE5610- Intelligent Software Systems Agent Communication Languages

2 Lecture Outline Agent Communication – Overview Ontologies KQML FIPA ACL

3 Agent Communication Communication is a requirement for agent co- operation A collection of agents can achieve more than a single agent

4 Agent Communication Agent to agent communication is the key to realizing the potential of the agent paradigm Analogy – Development of natural languages was the key to the development of human society and intelligence Agent Communication Language (ACL) - Language for agents to communicate and exchange information / knowledge

5 ACL’s Vs the Rest ACL’s provide agents with a means for exchanging information and knowledge Other means of “seamless” exchange of information between processes.. RPC RMI CORBA The goal has always been the same…

6 ACL’s Vs the Rest ACL’s handle Propositions Rules Actions Instead of simple objects with no semantics associated with them ACL messages describe a desired state in a declarative language Rather than a procedure or method

7 The Ideal Agents exchange and share: Plans Goals Long-term strategies Experiences

8 Technical Perspective Agents transport messages over a network using protocols such as SMTP, TCP/IP or HTTP An ACL defines the types of messages - the syntax and semantics – that agents can exchange Not mere exchange of single messages Conversations Task-oriented shared sequence of messages for negotiations, auctions etc

9 Speech Act Theory Messages in ACL’s are usually modeled after speech acts Speech Act Theory - Languages as Action (Austin) A high level framework Account for human communication Speech is not just about uttering Speakers perform speech acts: Assertions, Commands, Requests, Promises, Threats….

10 Speech Act Theory Example: Shut the door Locution: physical utterance with context. Who is the speaker ? Which door ? Who is the hearer ? Illocution: act of conveying intentions Speaker wants hearer to shut the door Perlocutions: actions that occur as a result of the illocution Hearer closes the door

11 Agent Communication Languages ARPA Knowledge Sharing Effort (KSE) ARPA – Advanced Research Projects Agency Other agencies – National Science Foundation, Air Force Office of Scientific Research, National Research Initiative, Industry and Academic Partners KQML – Knowledge Query Manipulation Language De facto ACL standard FIPL ACL FIPA – Foundation for Intelligent Physical Agents

12 Ontologies A common vocabulary and agreed upon meanings to describe a subject domain Systems which communicate and work together must share an ontology Implicit Ontotlogies – represented by procedures – unstated Explicit Ontologies Declarative representation using a KR language

13 Ontologies Conceptualisation Underlying model of the domain in terms of objects, attributes, relations Vocabulary Assigning symbols/terms to refer to the attributes, objects and relations Axiomitisation Encoding rules and constraints which capture significant aspects of the domain

14 Ontologies Two ontologies may Be based on different conceptualizations Be based on the same conceptualizations but use different vocabularies Differ in how much they attempt to axiomitize the ontologies Example: FRUIT: apple, lemon, orange FRUIT: mango, banana FRUIT: tropical, temperate

15 Ontologies Several large ontologies Free Cyc – Original General Purpose Ontology WordNet – on-line lexical reference system World Fact Book – 5MB of KIF sentences UMLS – Unified Medical Language System

16 Ontologies Ontology building tools Ontolingua – language for building, publishing and sharing ontologies Web based interface to a server Stanford university Ontologies can be translated into a number of KR languages – KIF, CLIPS, Prolog, Lisp BOTTOMLINE: Shared ontologies are important for agent communication and knowledge sharing provides a context to the communication

17 Knowledge Query Manipulation Language (KQML) Designed to support interactions among intelligent software agents Work by Yannis and Labrou (UMBC) Message format definition Message-handling protocol Extensible Specification of permitted “speech acts” for agents Basis for higher levels of agent interactions – such as negotiation, auctions etc.

18 Knowledge Query Manipulation Language (KQML) Designed to support interactions among intelligent software agents Lots of work by Yannis and Labrou (UMBC) Message format definition Message-handling protocol Extensible Specification of permitted “speech acts” for agents Basis for higher levels of agent interactions – such as negotiation, auctions etc.

19 Knowledge Query Manipulation Language (KQML) Allows computer processes to talk Basic issues… Knowing who to talk with How to find them How to initiate an exchange How to maintain an exchange What is the syntax What are the semantics KQML = Language + Set of Protocols

20 Agent Communication Protocols Variety of inter-process information exchange protocols Exchange 1 (Simplest) Agent A acts as client Sends a query to agent B (server) A waits for reply B’s reply might consist of a single answer or a set of answers Synchronous model

21 Agent Communication Protocols Exchange 2 Server’s reply is not the complete answer Leads to more exchanges Example – querying from a relational database Synchronous model - but server should maintain state information

22 Agent Communication Protocols Exchange 3 Client subscribes to a server’s output An indefinite number of replies arrive at different times Client does not know when replies arrive Maybe busy doing other things VARIATION: Broadcast to several servers. Replies have to be collated and associated with the query Asynchronous Model

23 Architecture for Knowledge Sharing Facilitators Special agents Coordinate the interactions of other agents Performs communication services Maintain registry of service names Forward messages to named services Route messages based on content Matchmake between information providers and clients Provide mediation and translations

24 Scenario 1 Agent A wants to the value of X Agent B has X in its knowledge base Facilitator F is available A is aware that B has X Then A can query it directly – simple point-to-point protocol

25 Scenario 2 A is not aware what agents are available and what is in their knowledge bases A subscribes to the facilitator to request that F for the value of X B subsequently informs F of the value of X F in turn informs A NOTE: ask, tell, subscribe – KQML constructs/primitives. In KQML primitives are called performatives

26 Scenario 3 A asks F to find an agent that can process ask(X) B independently informs F that it is willing to accept performative ask(X) F has both messages – sends B the query, gets response and forwards to A Performatives: broker, advertise

27 Scenario 4 A asks F to find an agent that can process ask(X) and tell it to send the results to A Performative used: recruit

28 Scenario 5 A asks F for the name of an agent that can process ask(X) Performative used: recommend

29 Performatives’ Summary ask – request for information tell – reply, give information subscribe – let the facilitator know that you want some info. If it comes across it, it will forward it to you broker – ask facilitator to find another agent to process a request, receive a reply and forward it to initiating agent

30 Performatives’ Summary recruit – find an agent to satisfy a request and tell it to send the results to the requesting agent recommend – ask facilitator for the name of an agent and then talk to that agent directly advertise – just inform that you have some info. Without being asked for it

31 Facilitator Helps agents find appropriate clients and servers How do agents find facilitators ? Not an issue for KQML PACT – all agents use a central common facilitator Fixed location Initialised as a parameter during agent creating ARPI – On agent start up, connect to a local facilitator

32 KQML Syntax Can carry any representation language Message structure is independent of the message content KQML implementation ignores the content portion of the message Messages are the core of KQML Performative + Arguments within parentheses Arguments: keyword / value pairs

33 KQML – Argument Keywords :sender - sender of the performative :receiver – recipient of the message :from – the origin of the performative when forward is used in :content :to – the final destination when forward is used in :content :in-reply-to – label when responding to a previous message :reply-with – label when responding to a current message

34 KQML – Argument Keywords :language – the name of the representation language in the :content :ontology – the name of the ontology assumed in the :content :content – actual content for which the performative was issued and the message was sent

35 Examples (ask-all :sender A :receiver B :in-reply-to ID0 :reply-with ID1 :language Prolog :ontology foo :content “bar(X,Y)” )

36 Examples (tell :sender B :receiver A :in-reply-to ID1 :reply-with ID2 :language Prolog :ontology foo :content “[bar(a,b),bar(c,d)]” )

37 Performative Summary BASIC QUERY – ask-if, evaluate, ask-about, ask-one, ask-all MULTI-RESPONSE – stream-about, stream-all, eos RESPONSE – reply, sorry GENERIC INFORMATIONAL – tell, achieve, cancel, untell, unachieve GENERATOR – standby, ready, next, rest, discard, generator CAPABILITY-DEFINITION – advertise, subsrcibe, monitor, import, export NETWORKING – register, unregister, forward, broadcast, route

38 KQML Evaluation Form – declarative, easy to read messages, easy to convert to other formats, easy to parse, simple syntax Content - Message is content independent Semantics – Open ended issue. Very little formal semantics available as yet. Performatives are generally described in natural languages Reliability – Security and authentication issues are still open.

39 KQML Evaluation Networking – communicate directly with other agents using their symbolic name or thru facilitators. Supports both synchronous and asynchronous messaging. Implementation – Many implementations available – UNISYS KQML API, Lockheed KQML API, JKQML etc. Environment – Any transport protocol TCP/IP, HTTP etc. No restrictions on content language

40 KQML Applications Several prototype and demonstration systems Integration of design and engineering tools Military transportation and logistics Translation of relational data into knowledge structures Agent Based Software Integration – Integrating software systems – Stanford Univ.

41 FIPA ACL Foundation for Intelligent Physical Agents Agent standards body Non-profit association Promote success of agent-based applications and services Members – academic institutions and commercial organisations Alcatel, British Telecom, Hitachi, HP, IBM, Intel, Lucent, NEC..etc. etc.

42 FIPA ACL Syntax is similar to KQML Based on speech act theory Communication through messages Facilitation and Management primitives are not part of the ACL Compose primitives from existing/core primitives Powerful Language “SL” for describing agent states

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

44 FIPA ACL – Message Types accept-proposal agree cancel confirm disconfirm failure inform inform-if inform-ref not-understood propose query-if query-ref refuse reject-proposal request request-when request-whenever subscribe

45 References KQML Draft Specification – Yannis, Finnin Labrou, Mayfield Papers and presentations by Yannis