Multi-Agent%20Systems%20Chapter%202%20%20Adapted%20(with%20permission)%20from%20Adina%20Magda%20Florea%20adina@wpi.edu - PowerPoint PPT Presentation

About This Presentation
Title:

Multi-Agent%20Systems%20Chapter%202%20%20Adapted%20(with%20permission)%20from%20Adina%20Magda%20Florea%20adina@wpi.edu

Description:

Multi-Agent Systems. Chapter 2. Adapted (with permission) from. Adina Magda ... (not for points, just for candy) What do each of ... propagation - Manta, A. ... – PowerPoint PPT presentation

Number of Views:98
Avg rating:3.0/5.0
Slides: 42
Provided by: adinaf
Category:

less

Transcript and Presenter's Notes

Title: Multi-Agent%20Systems%20Chapter%202%20%20Adapted%20(with%20permission)%20from%20Adina%20Magda%20Florea%20adina@wpi.edu


1
Multi-Agent SystemsChapter 2 Adapted (with
permission) from Adina Magda Floreaadina_at_wpi.edu
2
Candy Quiz(not for points, just for candy)
  • What do each of the following mean?
  • KQML
  • ACL
  • Ontology
  • Illocution
  • KSE
  • FIPA
  • KIF

3
Candy Quiz(not for points, just for candy)
  • What do each of the following mean?
  • KQML Knowledge Query Manipulation Language
  • ACL Agent Communication Language
  • Ontology specification of objects, concepts and
    relationship
  • Illocution intended meaning - performative
  • KSE Knowledge Sharing Efort
  • FIPA Foundation for Intelligent Physical Agents
  • KIF Knowledge Interchange Format

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

4
5
  • Artificial Communication
  • low-level language vs high-level languages
  • direct communication vs. indirect communication
  • Computer communication
  • shared memory ? message passing
  • Agent communication/ MAS communication
  • 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. Can trace series of responses.
  • Aim ? Communication enables agents to
  • coordinate their actions and behavior
  • attempt to change state of the other agents
  • attempt to get other agents perform actions

6
7
  • Communication infrastructure
  • blackboard (shared memory) or message-based
  • connected or connection-less (email)
  • point-to-point (1), multicast (some), broadcast
    (all)
  • push or pull (information given to you or
    requested)
  • synchronous or asynchronous

8
Dimensions of Meaning(think of examples of each)
  • Descriptive/Prescriptive describe phenomenon vs
    proscribe behavior (I am cold)
  • Personal/conventional different meaning to
    individual
  • Semantics/Pragmatics interpreted differently
    than intended mental states
  • Contextuality cannot be understood in isolation
  • Coverage language express necessary concepts
  • Identity meaning is dependent on individual
  • Cardinality private message interpreted
    differently than public message

9
2. Indirect communication
Reactive agents
  • 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 increases
  • At a point x, the signal may have one of the
    following intensities (why?)
  • V(x)V(x0)/dist(x,x0) V(x)V(x0)/dist(x,x0)2

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

9
10
Cognitive 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 for
    access authorization
  • Blackboard a powerful distributed knowledge
    paradigm
  • Agents Knowledge sources (KS)

events
Blackboard
Pending KS Activations
10
11
3. Direct communication
  • Sending messages method invocation
  • The Actor language
  • an Actor executes a sequence of actions in reply
    to the received message
  • Exchange of partial plans
  • distributed planning
  • ACL Agent Communication Languages
  • communication as action - communicative acts

11
12
  • 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 others BDI state
  • ACLs are based on Speech Act Theory
  • Agent behavior and strategy drive
  • communication and lead to conversations

12
13
  • Ontology formal definition of a body of
    knowledge. The most typical ontology used in
    building agents involves a structural component.
    Essentially a taxonomy of class and subclass
    relations coupled with definitions and
    relationships between things. (Jim Hendler)
  • An ontology is analogous to a data base
    organization, not the contents of the database.
  • Example To express the idea that a block is a
    physical object we might use the FOPL expression
  • ?x (Block x) ? (PhysicalObject x)
  • To state relationships between classes
  • ?x,y,z (instanceOf x y ) ?(subclassOf y z)
    ?(instanceOf x z)
  • To define a relationship On(X,Y)
  • (domain On PhysicalObject)
  • (range On PhysicalObject)

14
Origins of ACLs
  • Knowledge Sharing Effort - DARPA, 1990
  • External Interface Group - interaction between
    KBS - KQML
  • Interlingua language for communicating between
    independent agents. KIF (not designed as a
    language to be used by humans)
  • Shared, Reusable Knowledge Bases
  • Ontolingua (set of tools written in Lisp for
    analyzing and translating ontologies. Uses KIF
    parser and syntax checker. Web-based)

15
  • Theory of Speech Acts
  • J. Austin - How to do things with words, 1962,
  • J. Searle - Speech acts, 1969
  • Treats communication as an action made to
    further agents intentions
  • Changes world in a way analogous to physical
    actions
  • Need formal representation so planning systems
    can reason about them.
  • 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

15
16
Human Communication Intent may be ambiguous
  • Colleague states I am cold
  • What is the meaning?
  • For computers, state performative (KQML) or
    Communicative Act (FIPA) so no ambiguity (except
    in content itself).

17
  • Illocutionary aspect - several categories
  • (According to speech act theory)
  • 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 Cache Valley
  • Expressives, which express emotions and
    evaluations I am happy

18
  • 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 - a unique id
associated with the communication
18
19
  • Syntax LISP-like list of attribute/value pairs
  • (ask-one sender joe
  • receiver ibm-stock
  • reply-with ibm-stock
  • language PROLOG // of content
  • ontology NYSE-TICKS // define terminology
  • 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)) )
1. Query performatives ask-one, ask-all (want
all answers to question), ask-if, stream-all
(multiple response version of ask-all)
A
ask-one(P)
B
tell(P)
(stream-all sender willie receiver
ibm-stock content (price ?VL ?price )
) (standby content (stream-all content
(price ?VL ?price) )
B
A
stream-all(P)
B
tell(P1)
A
tell(P2)
eos
19
20
2. Generator performatives standby (be ready to
respond), ready, next, rest, discard, generate,...
3. Response performatives reply, sorry ...
B
A
4. Generic informational performatives tell (I
know it), untell, insert (add to
your VKB), delete, ...
5. Capability performatives advertise,
subscribe, recommend...
A
B
6. Network performatives register, unregister,
forward, route, ...
Facilitator
20
21
Knowledge Sharing Effort KSE
  • Darpa funded in 1990
  • Resulted in
  • KQML
  • KIF (knowledge interchange format) looks like
    first order logic (and, or, forall, exists) cast
    into Lisp-like notation
  • Used for content part of KQML message

22
Example of KQML Dialog
  • (evaluate sender A receiver B language KIF
    ontology motors
  • reply-with q1
  • content (val (torque m1))
  • (reply
  • sender B receiver A language KIF
  • ontology motors in-reply-to q1
  • content ( (torque m1) (scalar 12 kgf))

23
Another example of KQML
(stream-about // multiple responses wanted
sender A receiver B language KIF ontology
motors reply-with q1 content m1) (tell
sender B receiver A in-reply-to q1 content
((torque m1) (scalar 12 kgf)) (tell sender B
receiver A inreply-to q1 content ( (status
m1) normal)) (eos sender B receiver B
in-reply-to q1) //end of stream
24
In the next KQML example
  • A advertises that it is willing to accept
    subscriptions related to m1.
  • B responds by subscribing
  • A sends message sequence about m1
  • A untells the previous fact and gives new
    information
  • eos ends the stream of messages

25
(advertise sender A language KQML ontology
K10 content (stream-about language KIF
ontology motors content m1))) (subscribe
sender B receiver A reply-with s1 content
(stream-about language KIF ontology
motors content m1)) (tell sender A receiver B
in-reply-to s1 content ((torque m1)(scalar
12 kgf))) (tell sender A receiver B
in-reply-to s1 content ((status m1)
normal)) (untell sender A receiver B
in-reply-to s1 content ((torque m1)(scalar
12 kgf))) (tell sender A receiver B
in-reply-to s1 content ((torque m1)(scalar
15 kgf))) (eos sender A receiver B in-reply-to
s1)
26
  • 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

F
F
F
A
A
B
B
F
A wants to get all suitable agents to respond to
ask(P). B has told F it can do ask(P). F tells
B to tell A
A
B
26
27
Semantics of KQML (Labrou Finin) Use
preconditions and post conditions that govern the
use of a performative the final state for the
successful performance of the performative Uses
propositional attitudes belief Bel(A,P),
knowledge Know(A,S), desire Want(A,S),
intentions Int(A,S) Preconditions the necessary
states for an agent to send a performative and
for the receiver to accept it and successfully
process it if the preconditions 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
27
28
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))) no unsolicited
info 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))) 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 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)
28
29
Criticisms of KQML
  • not fixed performatives different
    implementations dont interoperate
  • transport mechanisms (ways of getting a message
    from A to B) not precisely defined
  • semantics not rigorous not adhered to
  • missing commissives (make commitment)
  • performative set too large and ad hoc
  • ?Resulted in FIPA

30
3.3 FIPA - ACL Foundation for Intelligent
Physical Agents, 1996 Goal of FIPA make
available specifications that maximize
interoperability across agent-based systems.
SL formal language Syntax similar to
KQML (inform sender Agent1 receiver Agent2
content (price good2150) 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 (call for proposal -
initiate), propose, accept_proposal,
reject_proposal
30
31
FIPA - Semantics SL (Semantic Language) - a
quantified, multi-modal logic, with modal
operators B ? - belief D ? - desire U ? -
uncertain belief neither believes ? or its
negatation, but believes ? more likely than its
negation. PG ? - persistent goal, but will not
necessarily plan to bring it about Bif ? - agent
believes ? or disbelieves ? Uif ? - agent has an
uncertain belief of ? or an uncertain belief of
? Given that one of the most frequent and
serious criticisms of KQML is the lack of
adequate semantics, it is not surprising that the
developers of FIPA felt it important to give
comprehensive formal semantics to their
language.
31
32
The semantics of a communicative act is specified
as a set of SL's formulae that describe Feasibili
ty 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 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 Semantics of inform lti, inform(j,
?)gt Pre Bi ? ? ?Bi (Bifj ? ? Uifj ?) Post
Bj ?
33
Syntax of request ltk, request(j, ?)gt Pre Bk
Agent( ?,j) ? ? BkIj(Done ?) Post
Done(?) Agent( ?,j) means that the agent of
action ? is j (j is the one who can perform the
action) Done( ?) means that the action has been
done Effect agent k is requesting agent j to do
action ? and agent k believes that the agent to
do the action is j and it believes that j does
not currently intend to do the action. The
effect is that j will do it.
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
  • History of DAML (one possible content language)
  • HTML defines grammar for interspersing documents
    with markup commands.
  • HTML is fixed cant introduce tags
  • Suppose you want to sell CDs and put price
    information on the web.
  • HTML can markup with layout information, but
    browsers wont know how to interpret content.
    What is price? What is title?
  • XML was developed to provide semantic markup
    helps computers to process information in
    document by allowing user defined tags.
  • DAML (Darpa markup language) is based on XML

36
4. Communication content
  • Content languages
  • KIF
  • Prolog
  • Clips
  • SQL
  • FIPA-SL, FIPA-CCL, FIPA-KIF
  • DAML
  • XML Xtensible Markup Language
  • Ontologies

DARPA Agent Markup Language The DAML Program
officially began in August 2000. The goal of the
DAML effort is to develop a language and tools to
facilitate the concept of the Semantic Web.
36
37
  • Interaction protocols
  • enable agents to have conversations, i.e.,
    structured exchanges of messages
  • Finite automata
  • Conversations in KQML
  • Petri nets - more in distributed planning lecture
  • FIPA IP standards
  • FIPA-query, FIPA-request, FIPA-contract-net,

38
Finite state automataNodes represent
statesArrows represent actions
COOL, Barbuceanu,95
ABltltask(do P)
BAltltaccept(do P)
proposeS(P)
BAltltrefuse(do P)
acceptR(P)
rejectR(P)
BAltltfail(do P)
BAltltresult(do P)
counterR(P)
counterS(P)
Winograd, Flores, 1986
rejectS(P)
acceptS(P)
38
39
  • 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
39
40
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. Stores
state. Tokens are moved from place to place,
following firing rules. A transition T is enabled
if all the input places P of T contains a token
A marking (state) is a distribution of tokens
over places.
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)
Completed(P)
Fail to do(P)
Impossible to do(P)
Notification of end(P)
FB
FA1
40
Failure
FA2
Satisfaction
41
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 DARPA KSE http//www-ksl.stanford.edu/
knowledge-sharing/ KQML
http//www.cs.umbc.edu/kqml/ KIF http//logic.st
anford.edu/kif/ Ontolingua http//www-ksl-svc.sta
nford.edu5915/serviceframe-editor FIPA http/
/www.fipa.org/ DAML
http//www.daml.org/
41
Write a Comment
User Comments (0)
About PowerShow.com