Upload
others
View
12
Download
0
Embed Size (px)
Citation preview
Introduction to Belief Desire IntentionAgents
Lin Padgham
RMIT University, Melbourne, Australia
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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