an chapter introduction 3: to deductive …...chapter 3 an introduction to multiagent systems 2e...

Post on 15-Mar-2020

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

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

top related