Multi-Agent%20Systems%20Lecture%203%20University%20 - PowerPoint PPT Presentation

About This Presentation
Title:

Multi-Agent%20Systems%20Lecture%203%20University%20

Description:

Communication is the intentional exchange of information brought about by the ... 2.1 Signal propagation - Manta, A. Drogoul 1993 ... – PowerPoint PPT presentation

Number of Views:122
Avg rating:3.0/5.0
Slides: 42
Provided by: AdinaF3
Category:

less

Transcript and Presenter's Notes

Title: Multi-Agent%20Systems%20Lecture%203%20University%20


1
Multi-Agent SystemsLecture 3University
Politehnica of Bucarest2004-2005Adina Magda
Floreaadina_at_cs.pub.rohttp//turing.cs.pub.ro/bl
ia_2005
2
Agent communicationLecture outline
  • The nature of communication
  • Indirect communication
  • Direct communication
  • Agent Communication Languages
  • Content languages
  • Ontologies
  • Theory of speech acts
  • KQML
  • FIPA and FIPA-ACL
  • Interaction protocols

3
1. The nature of communication
  • 1.1 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, RussellNorvig) ?
    language
  • Communication seen as an action (communicative
    act) and as an intentional stance
  • 1.2 Component steps of communication
  • Speaker Hearer
  • ? Intention ? Perception
  • ? Generation ? Analysis
  • ? Synthesis ? Disambiguation
  • ? Incorporation

3
4
Communication model
5
  • 1.3 Artificial Communication
  • low-level language vs high-level languages
  • direct communication vs. indirect communication
  • Computer communication
  • shared memory ? message passing
  • Agent communication/ MAS 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
  • The environment provides a computational
    infrastructure where interactions among agents
    take place. The infrastructure includes protocols
    for agents to communicate and protocols for
    agents to interact

5
6
  • Communication protocols enables agents to
    exchange and understand messages
  • Interaction protocols enable agents to have
    conversations, i.e., structured exchanges of
    messages
  • Aim ? Communication enables agents to
  • coordinate their actions and behavior, a
    property of a MAS performing some activity in a
    shared environment
  • attempt to change state of the other agents
  • attempt to make the other agents perform some
    actions

6
7
2. Indirect communication
  • 2.1 Signal propagation - Manta, A. Drogoul 1993
  • 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(x0)/dist(x,x0) or V(x)V(x0)/dist(x,x0)2

?
Reactive agents
  • 2.2 Trails - L. Steels, 1995
  • agents drop "radioactive crumbs" making trails
  • an agent following a trail makes the trail faint
    until it disappears

7
8
  • 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 distributed knowledge computation
    paradigm
  • Agents Knowledge sources (KS)

Blackboard
Cognitive agents
8
9
3. Direct communication
  • Sending messages
  • method invocation Actors
  • exchange of partial plans coordination of
    cooperative agents
  • ACL Agent Communication Languages
  • Need to communicate knowledge ? knowledge
    representation
  • Need to understand the message in a context ?
    ontologies
  • Communication is seen as an action -
    communicative acts

9
10
3.1 Agent Communication Languages
  • Concepts (distinguish ACLs from RPC, RMI or
    CORBA, ORB)
  • An ACL message describes a desired state in a
    declarative language, rather than a procedure or
    method invocation
  • ACLs handle propositions, rules, and actions
    instead of objects with no associated semantics -
    KR
  • ACLs are mainly based on BDI theories BDI agents
    attempt to communicate their BDI states or
    attempt to alter interlocutor's BDI state
    Cognitive Agents
  • ACLs are based on Speech Act Theory
    Communicative Acts
  • ACLs refer to shared Ontologies
  • Agent behavior and strategy drive communication
    and lead to conversations - Protocols

10
11
  • 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
  • Communication primitives
  • and protocols
  • Content languages
  • KIF
  • Prolog
  • Clips
  • SQL
  • FIPA-SL, FIPA-KIF
  • Ontologies
  • DAML
  • OWL

DARPA Agent Markup Language (August 2000). The
goal of the DAML effort is to develop a
language and tools to facilitate the concept of
the Semantic Web.
11
12
  • 3.2 Content languages for ACL
  • (Knowledge representation)
  • Description Logics (DL) - a formalism for
    expressing concepts and their interrelationships.
  • In DL, concepts are organized into IS-A
    hierarchies.
  • Concepts are specifications such that given an
    individual (object instance) a DL system can
    recognize the individual and determine which
    concepts it belongs to.
  • DL systems also perform subsumption checking.
  • Knowledge Interchange Format (KIF) - is based
    on first order predicate logic and has a
    LISP-like prefix syntax.
  • KIF is capable of expressing facts and complex
    relationships (rules).
  • KIF provides constructs for describing
    procedures, i.e. programs to (possibly) be
    executed by an agent.

12
13
  • Knowledge Interchange Format (KIF)
  • Facts
  • (salary 015-46-3946 john 72000)
  • (salary 026-40-9152 michael 36000)
  • (salary 415-32-4707 sam 42000)
  • Asserted relation
  • (gt ( (width chip1) (length chip1))
  • ( (width chip2) (length chip2)))
  • Rule
  • (gt (and (real-number ?x)
  • (even-number ?n))
  • (gt (expt ?x ?n) 0))
  • Procedure
  • (progn (fresh-line t)
  • (print "Hello!")
  • (fresh-line t))

13
14
  • 3.3 Ontologies
  • Ontology a specification of objects, concepts,
    and reationships in a particular domain it
    comprises a vocabulary, a domain theory and a
    conceptual schemata to describe organization and
    interpretation
  • An ontology is more than a taxonomy of classes,
    it must also describe relationships
  • Lexicalized ontologies (WordNet, EuroWordNet,
    BalkanNet, FrameNet, MikroKosmos).
  • Ontologies for knowledge representation
  • Implicit ontologies (class libraries of OOP)

Person
Pupil
Stud
Empl
Sun_E
IBM_E
Joe
Alice
Person
Woman
Man
Empl
Stud
Joe
Alice
14
15
?x (Block x) ? (PhysicalObject x) Instead of
saying (Block A) (InstanceOf A
Block) Define the hierarchy (Class
Block) (Class PhysicalObjects) (SubclassOf
Block PhysicalObjects) ? x,y,z (InstanceOf x
y) ? (SubclassOf y z) ? (InstanceOf x
z) Ontology editors frame-based KR systems
that allow the user to define an ontology and its
components classes, instances, relationships,
and functions
15
16
OWL - Web Ontology Language
  • W3C
  • OWL - designed for use by applications that need
    to process the content of information instead of
    just presenting information to humans.
  • OWL facilitates greater machine interpretability
    of Web content than that supported by XML, RDF,
    and RDF Schema (RDF-S) by providing additional
    vocabulary along with a formal semantics.
  • OWL has three increasingly-expressive
    sublanguages
  • OWL Lite supports a classification hierarchy and
    simple constraints.
  • OWL DL supports maximum expressiveness while
    retaining computational completeness (all
    conclusions are guaranteed to be computed) and
    decidability (all computations will finish in
    finite time).
  • OWL Full supports maximum expressiveness and the
    syntactic freedom of RDF with no computational
    guarantees.

17
OWL - Web Ontology Language
  • Ontology header
  • ltowlOntology rdfabout""gt
  • ltrdfscommentgtAn example OWL
    ontologylt/rdfscommentgt
  • ltowlpriorVersion rdfresource"http//www.w
    3.org/TR/2003/CR-owl-guide-20030818/wine"/gt
  • ltowlimports rdfresource"http//www.w3.org
    /TR/2003/PR-owl-guide-20031215/food"/gt
  • ltrdfslabelgtWine Ontologylt/rdfslabelgt
  • Simple Named Classes
  • Class, rdfssubClassOf
  • ltowlClass rdfID"Winery"/gt
  • ltowlClass rdfID"Region"/gt
  • ltowlClass rdfID"ConsumableThing"/gt

18
  • 3.4 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"
  • locution illocution content
  • prelocution door closed (hopefully!)
  • Illocutionary aspect - several categories
  • Assertives, which inform the door is shut
  • Directives, which request shut the door, can
    pelicans fly?
  • Commissives, which promise something I will shut
    the door
  • Permissive, which gives permission for an act
    you may shut the door
  • Prohibitives, which ban some act do not shut the
    door
  • Declaratives, which causes events I name you
    king of Ruritania
  • Expressives, which express emotions and
    evaluations I am happy

18
19
  • 3.5 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

Core of KQML - identity of the network
protocol with which to deliver the message -
speech act or performative Optional - content
language - ontology
Describes low level communication parameters -
identity of sender and receiver - an unique id
associated with the communication
19
20
  • Syntax S-expressions used in LISP
  • KQML performatives are classified
  • Queries - These performatives are used to send
    questions for evaluation somewhere.
  • Generative - Used for controlling and initiating
    the exchange of messages.
  • Response - Used by a agent in order reply to
    queries.
  • Informational - Informational performatives are
    used to transfer information.
  • Capability definition - Allows an agent to learn
    about the capabilities of other agents and to
    announce its own to the agent community.
  • Networking - Networking performatives make it
    possible to pass directives to underlying
    communication layers.
  • Example
  • (ask-one sender joe
  • receiver ibm-stock
  • reply-with ibm-stock
  • language PROLOG
  • ontology NYSE-TICKS
  • content (price ibm ?price) )

(tell sender willie receiver
joe reply-with block1 language
KIF ontology BlockWorld content (AND (Block
A)(Block B) (On A B)) )
20
21
1. Query performatives ask-one, ask-all,
ask-if, stream-all,...
(stream-all sender willie receiver
ibm-stock content (price ?VL ?price ) )
A
ask-one(P)
B
tell(P)
B
A
stream-all(P)
B
tell(P1)
A
tell(P2)
eos
21
22
2. Generative performatives standby, ready,
next, rest, discard, generate,...
3. Response performatives reply, sorry ...
B
A
4. Generic informational performatives tell,
untell, insert, delete, ...
5. Capability performatives advartise,
subscribe, recommend...
A
B
6. Network performatives register, unregister,
forward, route, ...
Facilitator
In fact, KQML contains only 2 types of
illocutionary acts assertives and directives
facilitator and network-related performatives (no
necessarily speech acts)
22
23
  • 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

point-to-point
B
A
A
B
B
A
A
B
23
24
  • 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 does 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)

24
25
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, Bel(A,X)))) Pre(B)
Int(B, Know(B, Bel(A,X))) or
?Bel(A,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)))
25
26
  • KQML Software architecture
  • KQML implemented in different languages
  • Design a router, a facilitator, a library of
    interface routines (KRIL)
  • Eack KML agent is associated with its separate
    router process all routers are identical

26
27
  • KRIL
  • An API KQML Router Interface Library
  • While the router is a separate process, with no
    undestanding of the content field of a KQML
    message, the KRIL API is embedded in the
    application and has access to the application
    tools for analyzing the content.
  • Variuos KRILs
  • Tightly embedded or lightly embedded
  • Simple KRIL
  • - send-kqml-message accepts a message
  • - declare-message-handler which function to
    invoke when a message arrives
  • - different types of declarations which allow
    to register the application with local
    facilitators and contact remote agents
  • KRIL Common Lisp, C, Prolog, SQL, etc.

27
28
  • 3.6 FIPA and FIPA - ACL
  • Foundation for Intelligent Physical Agents,
    1996
  • Goal of FIPA make available specifications that
    maximize interoperability across agent-based
    systems
  • FIPA 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

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
28
29
  • FIPA's specifications are grouped into 5
    categories
  • 1. Applications
  • 2. Abstract Architecture
  • 3. Agent Communication
  • 4. Agent Management
  • 5. Agent Message Transport
  • 3. Agent Communication FIPA ACL Message
    Structure
  • Communicative Acts FIPA Communicative Acts
    Library
  • Content Languages
  • FIPA Content Languages
  • FIPA SL Content Language
  • FIPA CCL Content Language
  • FIPA KIF Content Language
  • FIPA RDF Content Language
  • Interaction Protocols

29
30
  • FIPA-SL (Semantic Language)
  • (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 )

30
31
  • 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 )

31
32
  • FIPA - Semantics
  • SL (Semantic Language) - a quantified,
    multi-modal logic, with modal operators
  • Allows to represent
  • beliefs
  • uncertain beliefs
  • desires
  • intentions
  • B ? - belief D ? - desire U ? - uncertain belief
  • PG ? - 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 ?

32
33
  • 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
  • ltA, inform(B, ?)gt
  • Pre BA ? ? ?BA (BifB ? ? UifB ?)
  • Post BB ?

33
34
  • 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

34
35
4. 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, ...

36
4.1 Finite state automata
COOL, Barbuceanu,95
ABltltask(do P)
BAltltaccept(do P)
proposeS(P)
BAltltrefuse(do P)
acceptR(P)
rejectR(P)
BAltltresult(do P)
BAltltfail(do P)
counterR(P)
counterS(P)
Winograd, Flores, 1986
rejectS(P)
acceptS(P)
36
37
  • 4.2 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
37
38
4.3 Petri nets
Ferber, 1997
Petri net oriented graph with 2 type of
nodesplaces 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
B does not want to do(P)
A wants to do P, A cannot do P
B is willing to do(P)
Request do(P)
Refuse do(P)
Accept/request do(P)
Success
Completed(P)
Fail to do(P)
Impossible to do(P)
Notification of end(P)
FB
FA1
38
Failure
FA2
Satisfaction
39
  • 4.4 FIPA Interaction Protocols
  • FIPA Interaction Protocol Library
  • FIPA Request Interaction Protocol
  • FIPA Query Interaction Protocol
  • FIPA Request When Interaction Protocol
  • FIPA Contract Net Interaction Protocol
  • FIPA Iterated Contract Net Interaction Protocol
  • FIPA English Auction Interaction Protocol
  • FIPA Dutch Auction Interaction Protocol
  • FIPA Brokering Interaction Protocol
  • FIPA Recruiting Interaction Protocol
  • FIPA Subscribe Interaction Protocol
  • FIPA Propose Interaction Protocol

39
40
  • 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.79-120.
  • 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.235-242.
  • 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, 1994.
  • M. Singh. Agent communication languages
    Rethinking the principles. IEEE Computer, Dec.
    1998, p.40-47.
  • Y. Labrou, T. Finnin, Y. Peng. Agent
    communication languages The current Landscape.
    IEEE Computer, March/April 1999, p. 45-52.
  • FIPA97. "Agent Communication Language"
    Specification FIPA, 11/28/97

40
41
  • Web References
  • DARPA KSE http//www-ksl.stanford.edu/knowledge-s
    haring/
  • KQML http//www.cs.umbc.edu/kqml/
  • KIF http//logic.stanford.edu/kif/
  • Ontolingua http//www-ksl-svc.stanford.edu5915/
    serviceframe-editor
  • FIPA http//www.fipa.org/
  • DAML http//www.daml.org/
  • OWL http//www.w3.org/TR/owl-guide/
  • References for Ontologies (due to prof. Stefan
    Trausan)
  • Constandache, G.G., Stefan Trausan-Matu,
    Ontologia si hermeneutica calculatoarelor, Ed.
    Tehnica, 2001
  • Gruber, T., What is an Ontology,
    http//www.kr.org/top/definitions.html
  • J. Sowa, Ontologia si reprezentarea
    cunostintelor, în (Constandache si Trausan-Matu,
    2001)
  • http//www.w3.org/2001/sw/WebOnt/
  • http//www.cs.man.ac.uk/horrocks/Slides/index.htm
    l

41
Write a Comment
User Comments (0)
About PowerShow.com