18
Introduction to Belief Desire Intention Agents Lin Padgham RMIT University, Melbourne, Australia

Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Introduction to Belief Desire IntentionAgents

Lin Padgham

RMIT University, Melbourne, Australia

Page 2: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

BDI Agent Systems Useful in Many Applications

Unmanned (Aerial)Vehicles

Trading Agents

Logistics

E-Health

Air Traffic Control

BDI (Belief Desire Intention) agents have been used in many successfulapplications in complex environments.

RMIT Agents Group Introduction to BDI 1 / 7

Page 3: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Belief Desire Intention Model of Agency

• BDI is a framework for describing the behaviour of rational agents.

• Based on work in the philosophy of mind:

Dennett

Intentional systems:“[..] whose behaviorcan be predicted by themethod of attributingbelief, desires andrational acumen.”

Bratman

Practical reasoning:“[..] a matter ofweighing conflictingconsiderations [..]provided by what theagent desires [and]believes.”

• Human practical reasoning consists of two activities:• Deliberation: deciding what to do i.e., form intentions.• Means-ends Reasoning: deciding how to do it i.e., form plans.

RMIT Agents Group Introduction to BDI 2 / 7

Page 4: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Belief-Desire-Intention (BDI) Agent Architecture

SENSORS

ACTUATORS

dynamic static

Beliefs

Env

iron

men

tPending Events

Intention Stacks

BDI engine

actions

events

Plan

library

A plan is a programmed recipe for achieving a goal in some situation.A BDI execution engine selects from a plan library, based on the situation.

RMIT Agents Group Introduction to BDI 3 / 7

Page 5: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Goal-Plan Tree: Decomposition and Selection

P1

G2

P2

G3

P5 P6

P3 P4

G4

P7 P8

G5

P9 P10 P11

G6

P12 P13 P14

• A plan typically has a numberof (sub)goal steps.

• Each sub-goal generates an(internal) event which hassome relevant plans.

• So the plan library can beseen as a set of goal-plantrees.

• At each goal node a plan mustbe selected (OR).

• At each plan node the goalsmust be accomplished (AND).

RMIT Agents Group Introduction to BDI 4 / 7

Page 6: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

BDI Agent Oriented Programming

• BDI Agent-Oriented Programming provides abstraction at the level ofmental attitudes to explain the operation of a system. Beliefs, Desires,Intentions.

• The modularity of plans makes it easy to develop complexityincrementally.

• The goal oriented approach makes it suitable for use in dynamicenvironments.

• Many efficient and powerful development environments available. JACK,Jadex, Jason, PRS, 2APL, ...

• BDI agent programs are fast to develop. A 2006 study showed:• Gain compared to Java programming 500%.

RMIT Agents Group Introduction to BDI 5 / 7

Page 7: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Example Plan Structure

goal

plan

Action

M:msg

RespondBushfire

EvacHouse

ObtainTransport

GetCar

Walk(Car)Drive(Door)

ArrangeLift

M:ReqLift

NoTransport

AssembleMembers

HouseAssemble

M:toDoor

DistAssemble

M:toDoor M:phoneInfo

MoveSafeLoc

WalkToLoc

Walk(L)

DriveToLoc

DetermineLoc

GetFromRadio LocalShelter LeaveTown

Drive(L)

WaitPickUp

Stay&Defend

RMIT Agents Group Introduction to BDI 6 / 7

Page 8: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Example Plan Structure

RespondBushfire

EvacHouse

ObtainTransport

GetCar

Walk(Car)Drive(Door)

ArrangeLift

M:ReqLift

NoTransport

AssembleMembers

HouseAssemble

M:toDoor

DistAssemble

M:toDoor M:phoneInfo

MoveSafeLoc

WalkToLoc

Walk(L)

DriveToLoc

DetermineLoc

GetFromRadio LocalShelter LeaveTown

Drive(L)

WaitPickUp

Stay&Defend

goal

plan

Action

M:msg

1 2 3

A plan is a sequence of steps

RMIT Agents Group Introduction to BDI 6 / 7

Page 9: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Example Plan Structure

RespondBushfire

EvacHouse

ObtainTransport

GetCar

Walk(Car)Drive(Door)

ArrangeLift

M:ReqLift

NoTransport

AssembleMembers

HouseAssemble

M:toDoor

DistAssemble

M:toDoor M:phoneInfo

MoveSafeLoc

WalkToLoc

Walk(L)

DriveToLoc

DetermineLoc

GetFromRadio LocalShelter LeaveTown

Drive(L)

WaitPickUp

Stay&Defend

goal

plan

Action

M:msg

1 2 3 goal

action message

A step can be a goal, an action, a message to another agent, or somecomputation.

RMIT Agents Group Introduction to BDI 6 / 7

Page 10: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Example Plan Structure

RespondBushfire

EvacHouse

ObtainTransport

GetCar

Walk(Car)Drive(Door)

ArrangeLift

M:ReqLift

NoTransport

AssembleMembers

HouseAssemble

M:toDoor

DistAssemble

M:toDoor M:phoneInfo

MoveSafeLoc

WalkToLoc

Walk(L)

DriveToLoc

DetermineLoc

GetFromRadio LocalShelter LeaveTown

Drive(L)

WaitPickUp

Stay&Defend

goal

plan

Action

M:msg

A goal may have different plans, for achieving it in different situations.

RMIT Agents Group Introduction to BDI 6 / 7

Page 11: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Example Plan Structure

RespondBushfire

EvacHouse

ObtainTransport

GetCar

Walk(Car)Drive(Door)

ArrangeLift

M:ReqLift

NoTransport

AssembleMembers

HouseAssemble

M:toDoor

DistAssemble

M:toDoor M:phoneInfo

MoveSafeLoc

WalkToLoc

Walk(L)

DriveToLoc

DetermineLoc

GetFromRadio LocalShelter LeaveTown

Drive(L)

WaitPickUp

Stay&Defend

goal

plan

Action

M:msg

Context:have car &car at home

A goal may have different plans, for achieving it in different situations.

RMIT Agents Group Introduction to BDI 6 / 7

Page 12: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Example Plan Structure

RespondBushfire

EvacHouse

ObtainTransport

GetCar

Walk(Car)Drive(Door)

ArrangeLift

M:ReqLift

NoTransport

AssembleMembers

HouseAssemble

M:toDoor

DistAssemble

M:toDoor M:phoneInfo

MoveSafeLoc

WalkToLoc

Walk(L)

DriveToLoc

DetermineLoc

GetFromRadio LocalShelter LeaveTown

Drive(L)

WaitPickUp

Stay&Defend

goal

plan

Action

M:msg

Context:have car &car at home

Context: Xis neighbour& X has car

A goal may have different plans, for achieving it in different situations.

RMIT Agents Group Introduction to BDI 6 / 7

Page 13: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Example Plan Structure

RespondBushfire

EvacHouse

ObtainTransport

GetCar

Walk(Car)Drive(Door)

ArrangeLift

M:ReqLift

NoTransport

AssembleMembers

HouseAssemble

M:toDoor

DistAssemble

M:toDoor M:phoneInfo

MoveSafeLoc

WalkToLoc

Walk(L)

DriveToLoc

DetermineLoc

GetFromRadio LocalShelter LeaveTown

Drive(L)

WaitPickUp

Stay&Defend

goal

plan

Action

M:msg

Context:have car &car at home

Context: Xis neighbour& X has car

This can givemultiple planinstances

A goal may have different plans, for achieving it in different situations.

RMIT Agents Group Introduction to BDI 6 / 7

Page 14: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Example Plan Structure

RespondBushfire

EvacHouse

ObtainTransport

GetCar

Walk(Car)Drive(Door)

ArrangeLift

M:ReqLift

NoTransport

AssembleMembers

HouseAssemble

M:toDoor

DistAssemble

M:toDoor M:phoneInfo

MoveSafeLoc

WalkToLoc

Walk(L)

DriveToLoc

DetermineLoc

GetFromRadio LocalShelter LeaveTown

Drive(L)

WaitPickUp

Stay&Defend

goal

plan

Action

M:msg

Context:have car &car at home

Context: Xis neighbour& X has car

This can givemultiple planinstances

OR OR

For a goal to succeed one of the plans must succeed. If one fails try another.

RMIT Agents Group Introduction to BDI 6 / 7

Page 15: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Example Plan Structure

RespondBushfire

EvacHouse

ObtainTransport

GetCar

Walk(Car)Drive(Door)

ArrangeLift

M:ReqLift

NoTransport

AssembleMembers

HouseAssemble

M:toDoor

DistAssemble

M:toDoor M:phoneInfo

MoveSafeLoc

WalkToLoc

Walk(L)

DriveToLoc

DetermineLoc

GetFromRadio LocalShelter LeaveTown

Drive(L)

WaitPickUp

Stay&Defend

goal

plan

Action

M:msg

AND

For a plan to succeed, all steps must succeed.

RMIT Agents Group Introduction to BDI 6 / 7

Page 16: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Example Plan Structure

RespondBushfire

EvacHouse

ObtainTransport

GetCar

Walk(Car)Drive(Door)

ArrangeLift

M:ReqLift

NoTransport

AssembleMembers

HouseAssemble

M:toDoor

DistAssemble

M:toDoor M:phoneInfo

MoveSafeLoc

WalkToLoc

Walk(L)

DriveToLoc

DetermineLoc

GetFromRadio LocalShelter LeaveTown

Drive(L)

WaitPickUp

Stay&Defend

goal

plan

Action

M:msg

AND

If things fail, recovery happens as locally as possible

RMIT Agents Group Introduction to BDI 6 / 7

Page 17: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Example Plan Structure

goal

plan

Action

M:msg

car home

RespondBushfire

EvacHouse

ObtainTransport

GetCar

Walk(Car)Drive(Door)

ArrangeLift

M:ReqLift

NoTransport

AssembleMembers

HouseAssemble

M:toDoor

DistAssemble

M:toDoor M:phoneInfo

MoveSafeLoc

WalkToLoc

Walk(L)

DriveToLoc

DetermineLoc

GetFromRadio LocalShelter LeaveTown

Drive(L)

WaitPickUp

Stay&Defend

Plan selection responsive to changing environment.

RMIT Agents Group Introduction to BDI 6 / 7

Page 18: Introduction to Belief Desire Intention Agentsgoanna.cs.rmit.edu.au › linpa › Presentations › BDIintro.pdf · dynamic static Beliefs onment Pending Events Intention Stacks BDI

Advantages

• Intuitive representation

• Late selection: situation aware...

• Plan failure - retry new plan. Committed to choices, like humans.

• Agent is responsive to environmental changes.

• Huge number of options possible - over 2 million for modest tree.(Subgoal steps 4, Choices 2, Depth 3)

RMIT Agents Group Introduction to BDI 7 / 7