an chapter introduction 3: to deductive …...chapter 3 an introduction to multiagent systems 2e...
TRANSCRIPT
CH
AP
TE
R3:
DE
DU
CT
IVE
RE
AS
ON
ING
AG
EN
TS
An
Introductionto
MultiagentS
ystems
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
AgentA
rchitectures
•A
nagentarchitecture
isa
software
designfor
anagent.
•W
ehave
alreadyseen
atop-leveldecom
position,into:
perception–
state–
decision–
action
•A
nagentarchitecture
defines:
–key
datastructures;
–operations
ondata
structures;–
controlflowbetw
eenoperations
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
1
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
AgentA
rchitectures–
Pattie
Maes
(1991)
‘[A]particular
methodology
forbuilding
[agents].It
specifieshow
...the
agentcanbe
decomposed
intothe
constructionofa
setofcomponentm
odulesand
howthese
modules
shouldbe
made
tointeract.
The
totalsetofmodules
andtheir
interactionshas
toprovide
anansw
erto
thequestion
ofhowthe
sensordata
andthe
currentinternalstateofthe
agentdeterm
inethe
actions...
andfuture
internalstateof
theagent.
An
architectureencom
passestechniques
andalgorithm
sthatsupportthis
methodology.’
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
2
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
AgentA
rchitectures–
LeslieK
aelbling(1991)
‘[A]specific
collectionofsoftw
are(or
hardware)
modules,typically
designatedby
boxesw
itharrow
sindicating
thedata
andcontrolflow
among
them
odules.A
more
abstractviewofan
architectureis
asa
generalm
ethodologyfor
designingparticular
modular
decompositions
forparticular
tasks.’
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
3
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
TypesofA
gents
•1956–present:
Sym
bolicR
easoningA
gentsIts
purestexpression,proposesthatagents
useexplicitlogicalreasoning
inorder
todecide
whatto
do.
•1985–present:
Reactive
Agents
Problem
sw
ithsym
bolicreasoning
ledto
areaction
againstthis—
ledto
thereactive
agentsm
ovement,
1985–present.
•1990-present:
Hybrid
Agents
Hybrid
architecturesattem
pttocom
binethe
bestofsym
bolicand
reactivearchitectures.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
4
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
Sym
bolicR
easoningA
gents•
The
classicalapproachto
buildingagents
isto
viewthem
asa
particulartype
ofknowledge-based
system,
andbring
alltheassociated
methodologies
ofsuchsystem
sto
bear.•
This
paradigmis
known
assym
bolicA
I.•
We
definea
deliberativeagentor
agentarchitectureto
beone
that:
–contains
anexplicitly
represented,symbolic
model
ofthew
orld;–
makes
decisions(for
example
aboutwhatactions
toperform
)via
symbolic
reasoning.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
5
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
Representing
theE
nvironmentS
ymbolically
!""
#"$%"&!'
()*+,-.
()*-,/0#$".
1$"02*+
.()*3,/0#$".
1$"02*3
.
4-+56
! "
#
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
6
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
The
TransductionP
roblem
The
problemoftranslating
therealw
orldinto
anaccurate,adequate
symbolic
description,intim
efor
thatdescriptionto
beuseful.
...vision,speech
understanding,learning.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
7
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
The
representation/reasoningproblem
thatofhowto
symbolically
representinformation
aboutcom
plexreal-w
orldentities
andprocesses,and
howto
getagentsto
reasonw
iththis
information
intim
efor
theresults
tobe
useful....
knowledge
representation,automated
reasoning,autom
aticplanning.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
8
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
Problem
sw
ithS
ymbolic
Approaches
•M
ostresearchersacceptthatneither
problemis
anywhere
nearsolved.
•U
nderlyingproblem
liesw
iththe
complexity
ofsymbol
manipulation
algorithms
ingeneral:
many
(most)
search-basedsym
bolmanipulation
algorithms
ofinterestare
highlyintractable.
•B
ecauseofthese
problems,som
eresearchers
havelooked
toalternative
techniquesfor
buildingagents;
we
lookatthese
later.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
9
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
Deductive
Reasoning
Agents
•U
selogic
toencode
atheory
definingthe
bestaction
toperform
inany
givensituation.
•Let:ρ
bethis
theory(typically
asetofrules);
∆be
alogicaldatabase
thatdescribesthe
currentstate
ofthew
orld;A
cbe
thesetofactions
theagentcan
perform;
∆`
ρφ
mean
thatφ
canbe
provedfrom
∆using
ρ.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
10
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
Action
Selection
viaT
heoremP
roving
foreach
α∈
Ac
doif
∆`
ρD
o(α)
thenreturn
α
end-for
foreach
α∈
Ac
doif
∆6`
ρ¬
Do(α
)then
returnα
end-for
returnnull
/*no
actionfound
*/
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
11
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
An
Exam
ple:T
heV
acuumW
orld
•G
oalisfor
therobotto
clearup
alldirt.
dir
tdir
t
(0,0
)(1
,0)
(2
,0)
(0,1
)
(0,2
)
(1
,1)
(2
,1)
(2
,2)
(1
,2)
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
12
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•U
se3
domain
predicatesin
thisexercise:
In(x,y)agentis
at(x,y)
Dirt(x,y)
thereis
dirtat(x,y)
Facing(d)
theagentis
facingdirection
d
•P
ossibleactions:
Ac
={turn
,forward
,suck}
NB
:turn
means
“turnright”.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
13
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•R
ulesρ
fordeterm
iningw
hattodo:
In(0,0)
∧Facing(north)
∧¬
Dirt(0
,0)−→
Do(forw
ard)
In(0,1)
∧Facing(north)
∧¬
Dirt(0
,1)−→
Do(forw
ard)
In(0,2)
∧Facing(north)
∧¬
Dirt(0
,2)−→
Do(turn)
In(0,2)
∧Facing(east)
−→
Do(forw
ard)
•...
andso
on!
•U
singthese
rules(+
otherobvious
ones),startingat
(0,0)
therobotw
illclearup
dirt.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
14
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
Problem
s
•how
toconvertvideo
camera
inputtoD
irt(0,1)?
•decision
making
assumes
astatic
environment:
calculativerationality.
•decision
making
viatheorem
provingis
complex
(maybe
eventundecidable!)
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
15
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
Approaches
toO
vercoming
theseP
roblems
•w
eakenthe
logic;
•use
symbolic,non-logicalrepresentations;
•shiftthe
emphasis
ofreasoningfrom
runtim
eto
designtim
e.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
16
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
AG
EN
T0
andP
LAC
A
•Yoav
Shoham
introduced“agent-oriented
programm
ing”in
1990:
“newprogram
ming
paradigm,based
ona
societalviewofcom
putation”.
•T
hekey
idea:directly
programm
ingagents
interm
sofintentional
notionslike
belief,comm
itment,and
intention .
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
17
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
Agent0
Each
agentinA
GE
NT0
has4
components:
•a
setofcapabilities(things
theagentcan
do);
•a
setofinitialbeliefs;
•a
setofinitialcomm
itments
(thingsthe
agentwilldo);
and
•a
setofcomm
itmentrules.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
18
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
Com
mitm
entRules
•T
hekey
component,w
hichdeterm
ineshow
theagent
acts,isthe
comm
itmentrule
set.
•E
achcom
mitm
entrulecontains
–a
message
condition;–
am
entalcondition;and–
anaction.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
19
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
AG
EN
T0
Decision
Cycle
•O
neach
decisioncycle
...T
hem
essagecondition
ism
atchedagainstthe
messages
theagenthas
received;T
hem
entalconditionis
matched
againstthebeliefs
ofthe
agent.Ifthe
rulefires,then
theagentbecom
escom
mitted
tothe
action(the
actiongets
addedto
theagents
comm
itmentset).
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
20
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•A
ctionsm
aybe
–private:an
internallyexecuted
computation,or
–com
municative:
sendingm
essages.
•M
essagesare
constrainedto
beone
ofthreetypes:
–“requests”
tocom
mitto
action;–
“unrequests”to
refrainfrom
actions;–
“informs”
which
passon
information.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
21
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
beliefs
co
mm
itm
en
ts
ab
ilities
EX
EC
UT
E
up
date
beliefs
up
date
co
mm
itm
en
ts
in
itialise
messag
es in
in
tern
al actio
ns
messag
es o
ut
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
22
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•A
comm
itmentrule:
COMMIT(
(agent,
REQUEST,
DO(time,action)
),;;;
msgcondition
(B,[now,
Friendagent]
AND
CAN(self,
action)
AND
NOT
[time,CMT(self,
anyaction)]
),;;;
mentalcondition
self,
DO(time,
action)
)http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
23
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•T
hisrule
may
beparaphrased
asfollow
s:ifIreceive
am
essagefrom
agentwhich
requestsm
eto
doaction
attim
e,andIbelieve
that:
–agentis
currentlya
friend;–
Icando
theaction;
–at
time,Iam
notcomm
ittedto
doingany
otheraction,
thencom
mitto
doingaction
attim
e.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
24
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
PLA
CA
•A
more
refinedim
plementation
was
developedby
Thom
as,forher
1993doctoralthesis.
•H
erP
lanningC
omm
unicatingA
gents(P
LA
CA
)language
was
intendedto
addressone
severedraw
backto
AG
EN
T0:the
inabilityofagents
toplan,
andcom
municate
requestsfor
actionvia
high-levelgoals.
•A
gentsin
PL
AC
Aare
programm
edin
much
thesam
ew
ayas
inA
GE
NT0,in
terms
ofmentalchange
rules.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
25
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•A
nexam
plem
entalchangerule:
(((self?agentREQUEST(?t(xeroxed?x)))
(AND(CAN-ACHIEVE(?txeroxed?x)))
(NOT(BEL(*now*shelving)))
(NOT(BEL(*now*(vip?agent))))
((ADOPT(INTEND(5pm(xeroxed?x)))))
((?agentselfINFORM
(*now*(INTEND(5pm(xeroxed?x)))))))
•P
araphrased:ifsom
eoneasks
youto
xeroxsom
ething,andyou
can,andyou
don’tbelievethatthey’re
aV
IP,orthat
you’resupposed
tobe
shelvingbooks,then
–adoptthe
intentionto
xeroxitby
5pm,and
–inform
themofyour
newly
adoptedintention.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
26
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
Concurrent
ME
TA
TEM
•C
oncurrentM
ET
AT
EMis
am
ulti-agentlanguagein
which
eachagentis
programm
edby
givingita
temporallogic
specificationofthe
behaviouritshould
exhibit.
•T
hesespecifications
areexecuted
directlyin
orderto
generatethe
behaviourofthe
agent.
•Tem
porallogicis
classicallogicaugm
entedby
modal
operatorsfor
describinghow
thetruth
ofpropositionschanges
overtim
e.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
27
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•F
orexam
ple...
important(agents)
means
“itisnow
,andw
illalways
betrue
thatagentsare
important”
♦important(C
oncurrentMetateM
)
means
“sometim
ein
thefuture,C
oncurrentMetateM
willbe
important”
(¬friends(us))
Uapologise(you)
means
“we
arenotfriends
untilyouapologise”
��
��apologise(you)
means
“tomorrow
(inthe
nextstate),youapologise”.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
28
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•M
etateMprogram
isa
collectionof
past⇒
future
rules.
•E
xecutionproceeds
bya
processofcontinually
matching
rulesagainsta
“history”,andfiring
thoserules
whose
antecedentsare
satisfied.
•T
heinstantiated
future-time
consequentsbecom
ecom
mitm
entsw
hichm
ustsubsequentlybe
satisfied.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
29
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•A
nexam
pleM
etateMprogram
:the
resourcecontroller...
jkm�
��
��
��
��
��
��
��
��
��ask(x)
⇒♦
give(x)give(x)
∧give(y)
⇒(x=
y)
–F
irstruleensure
thatan‘ask’is
eventuallyfollow
edby
a‘give’.
–S
econdrule
ensuresthatonly
one‘give’is
everperform
edatany
onetim
e.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
30
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•A
ConcurrentM
etateMsystem
containsa
number
ofagents
(objects),eachobjecthas
3attributes:
–a
name;
–an
interface;–
aM
etateMprogram
.
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
31
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•A
nagent’s
interfacecontains
two
sets:
–m
essagesthe
agentwill accept;
–m
essagesthe
agentmay
send.
•F
orexam
ple,a‘stack’object’s
interface:
stack(pop,push)[popped,stackfull]
{pop,push}
=m
essagesreceived
{popped,stackfull}=
messages
sent
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
32
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
Snow
White
&T
heD
warves
•To
illustratethe
languageC
oncurrentMetateM
inm
oredetail,here
aresom
eexam
pleprogram
s...
•S
nowW
hitehas
some
sweets
(resources),which
shew
illgiveto
theD
warves
(resourceconsum
ers).
•S
hew
illonlygive
toone
dwarfata
time.
•S
hew
illalways
eventuallygive
toa
dwarfthatasks.
•H
ereis
Snow
White,w
rittenin
ConcurrentM
etateM:
Snow
-White(ask)[give]:jkm�
�
��
��
��
��
��
��
��
��
�ask(x)⇒
♦give(x)
give(x)∧
give(y)⇒
(x=
y)
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
33
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•T
hedw
arf‘eager’asksfor
asw
eetinitially,andthen
whenever
hehas
justreceivedone,asks
again.
eager(give)[ask]:start
⇒ask(eager)
jkm�
��
��
��
��
��
��
��
��
��give(eager)
⇒ask(eager)
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
34
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•S
ome
dwarves
areeven
lesspolite:
‘greedy’justasksevery
time.
greedy(give)[ask]:start
⇒ask(greedy)
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
35
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•F
ortunately,some
havebetter
manners;‘courteous’
onlyasks
when
‘eager’and‘greedy’have
eaten.
courteous(give)[ask]:((¬
ask(courteous)S
give(eager))∧
(¬ask(courteous)
Sgive(greedy)))
⇒ask(courteous)
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
36
Chapter
3A
nIntroduction
toM
ultiagentS
ystems
2e
•A
ndfinally,‘shy’w
illonlyask
fora
sweetw
henno-one
elsehas
justasked.
shy(give)[ask]:start
⇒♦
ask(shy)jkm�
�
��
��
��
��
��
��
��
��
�ask(x)⇒
¬ask(shy)
jkm�
��
��
��
��
��
��
��
��
��give(shy)
⇒♦
ask(shy)
http://www.csc.liv.ac.uk/˜mjw/pubs/imas/
37