Intention Interleaving Via Classical Replanning Mengwei Xu , Kim Bauters, Kevin McAreavey, Weiru Liu
Extending Belief-Desire-Intention (BDI) Agents to Managing Intention Interleaving Intention Resolution: to avoid negative interference Guarantee the achievability of intentions when interleaving the steps in different intentions Intention Merging: to facilitate positive interference Perform one task once for at least two goals, i.e. โkill two birds with one stoneโ
Motivation to Manage Intention Interleaving Intention Resolution Careless interleaving could result in that neither of its intention can be completed.
Motivation to Manage Intention Interleaving Intention Merging ๐ป ! TransmitSoilResults ๐ " ๐ ! ๐ $ EstablishConnection BreakConnection SendSoilResults execute them once for both intentions ๐ # ๐ ! ๐ $ EstablishConnection SendImageResults BreakConnection ๐ป " TransmitImageResults
Belief-Desire-Intention: Literature Software Platforms Jason [Bordini et al., 2007] Logics Jack [Winikoff, 2005] [Cohen & Levesque, 1990] Jadex [Pokahr et al., 2013] [Rao & Georgeff, 1991] [Shoham, 2009] Programming Languages AgentSpeak [Rao, 1996] CAN [Winikoff et al., 2002] CANPLAN [Sardina et al., 2011]
BDI Agent โฌ, ฮ, ฮ Plan library Initial belief base Set of plan rules Belief base specifying agentโs initial beliefs Action library Set of STRIPS-style action descriptions
BDI Agent โฌ, ฮ, ฮ Initial belief base Belief base specifying agentโs initial beliefs Belief base โฌ โ โ Set of formulas from logical language โ โฌ must support: โข โฌ โจ ๐ (Entailment) โข โฌ โช ๐ (Addition) โข โฌ โ ๐ (Deletion) Assume โฌ is a set of atoms
CAN: Agent โฌ, ฮ, ฮ Action library Set of STRIPS-style action descriptions Action description act โถ ๐ โ โฌ # ; โฌ $ Set of โaddโ atoms โฌ " โ โ Primitive action symbol Set of โdeleteโ atoms โฌ ! โ โ Precondition ๐ โ โ
BDI Agent โฌ, ฮ, ฮ Plan library Set of plan rules ๐ซ๐๐๐๐๐๐ ๐ธ : ๐ โ โ body ๐ธ : โ ! ; โฏ ; โ % ๐ฐ๐๐๐ ๐ธ : ๐ป Formula from โ e.g. a sequence of actions or goals e.g. new goal Plan rule P = ๐ป: ๐ โ โ % ; โฏ ; โ &
BDI Operational Mechanism Sketch ๐ป โถ ๐ !! โ ๐ ๐ป โถ ๐ ! โ ๐ !! ! ๐ป โถ ๐ "! โ ๐ ๐ป โถ ๐ " โ ๐ "! select " select Goal ๐ป ๐ป โถ ๐ #! โ ๐ Relevant Plans ๐ป โถ ๐ # โ ๐ Applicable Plans #! # โฎ โฎ ๐ป โถ ๐ %! โ ๐ ๐ป โถ ๐ % โ ๐ %! % โ ฮ where ๐ โจ ฯ ๐๐ , ๐ โ 1, โฏ , ๐ repeat for the subgoals A tree structure representing all possible ways of achieving a goal ๐ป
Our Intention Interleaving Framework in BDI 1. Intention Formalisation โข Model an intention as an AND/OR graph โข Define the execution trace for multiple intentions โข Define the conflict-free and maximal-merged execution trace for multiple intentions 2. Intention Interleaving Planning Preparation โข Indexing nodes โข Defined terminal, initial node sets, and progression links of intentions โข Computing overlapping programs between multiple intentions 3. Intention Interleaving Planning Formalism โข Formalise FPP problem of interleaving intentions โข Correctness Proof 4. Implementation 5. Evaluation
AND/OR Graphs for Intentions ๐ ! = ๐ป ! : ๐ ! โ ๐ ! ; ๐ " ; ๐ $ ๐ " = ๐ป " : ๐ " โ ๐ ! ; ๐ # ; ๐ $ OR-nodes OR-edges AND-nodes AND-edges OR-nodes
Execution Trace for An Intention To identifies every unique way in which a given intention can be achieved ๐ ! ๐ " = ๐ป " ; ๐ " ; ๐ # ; ๐ $ Execution trace for ๐ ! : ๐ ๐ ! = ๐ป ! ; ๐ ! ; ๐ ! ; ๐ " ; ๐ $ Execution trace for ๐ # : ๐ % ๐ " = ๐ป " ; ๐ # ; ๐ # ; ๐ $ ; ๐ &
Execution Trace for Multiple Intentions The construction of an execution trace of a set of intentions is to interleave elements in the execution traces of different intentions Potential execution trace for ๐ % and ๐ H : ๐ = ๐ฏ ๐ ; ๐ธ ๐ ; ๐ป H ; ๐ H ; ๐ ๐ ; ๐ J ; ๐ ๐ ; ๐ ๐ ; ๐ M by interleaving ๐ ๐ ! = ๐ฏ ๐ ; ๐ธ ๐ ; ๐ ๐ ; ๐ ๐ ; ๐ ๐ and ๐ ! ๐ # = ๐ป # ; ๐ # ; ๐ $ ; ๐ *
Execution Trace for Intentions (Cont.) Conflict-free Execution Trace: To model the successful interleaving which achieves all intentions ๐ 1 ๐ 2 โฏ ๐ ๐ โ 1 ๐ ๐ ๐ ๐ + 1 ๐ ๐ โฏ โฌ ! โฌ " โฌ โฌ โฌ % โฌ +,! +-! + + is the belief base before the execution of the ๐ ./ element of an execution trace (i.e. ๐ ๐ ) where โฌ An execution trace ๐ is conflict-free if and only if the following hold: 1. if ๐ ๐ = ๐ โ ฮ , then โฌ ' โจ ๐๐๐๐ข๐๐ฆ๐ข(๐) , i.e. the context of plan ๐ must be met before selection 2. if ๐ ๐ = ๐ โ ฮ , then โฌ ' โจ ๐(๐) , i.e. the pre-condition of action `๐โฒ must be met before selection
Execution Trace for Intentions (Cont.) Mergeable Execution Trace of ๐ผ ๐ , โฏ , ๐ผ ๐ To capture the overlapping programs of different intentions ๐: ๐ ๐ ๐ 1 ๐ 2 ๐ ๐ ๐ ๐ + 1 โฏ ๐ ๐ + ๐ โ 1 ๐ ๐ + ๐ โฏ โฏ ๐ consecutive same element from all difference intentions in ๐ ๐ ๐ : ๐ 1 ๐ ๐ ๐ ๐ + ๐ + 1 ๐ ๐ โฏ โฏ ๐ 2 An execution trace ๐ is a mergeable execution trace if and only if the following hold: 1. โ๐ โ 1, โฏ , ๐ such that ๐ ๐ = ๐ ๐ + 1 = โฏ ๐ ๐ + ๐ where 2 โค ๐ โค ๐ โ ๐ ; 2. โ๐ โ 1, โฏ , ๐ , โ๐ก, ๐ข โ ๐, โฏ , ๐ + ๐ where ๐ก โ ๐ข such that ๐ ๐ก โ ๐ ๐ * โ ๐ and ๐ ๐ข โ ๐ ๐ * โ ๐ ; ๐ + is a conflict-free execution trace where ๐ + is the merged execution trace of ๐ by reducing each 3. subsequence consisting of consecutive identical elements characterized by 1 and 2 in ๐ to only one element left.
Execution Trace for Intentions (Cont.) Maximal-merged Trace of ๐ผ ๐ , โฏ , ๐ผ ๐ To capture the most merged execution trace of multiple intentions The merged execution trace ๐ + of a mergeable execution trace ๐ of ๐ ! , โฏ , ๐ + is maximal-merged if there is no another mergeable execution trace ๐ , of ๐ + such that ๐ ,+ < ๐ + where ! , โฏ , ๐ ๐ stands for the length of ๐ . the potential maximal-merged trace of ๐ ! , ๐ " ๐ 1 = ๐ป ! ; ๐ ! ; ๐ป " ; ๐ " ; ๐ ! ; ๐ " ; ๐ # ; ๐ $ Perform action a ! and a $ once for both two goals ๐ ! and ๐ "
Indexing Nodes To ensure that e.g. the same actions in distinct plans is seen as different ๐ W ๐ A node ๐ is a top-level goal of intention ๐ : ๐ 2,+,4 to denote the ๐ ./ member of ๐๐๐๐ง(๐) in ๐ The nodes of actions and subgoals of intention ๐ : ๐ 4 A plan node in intention ๐ : ๐จ 5 = ๐ ! W ๐ , โฏ , ๐ 1 W ๐ Initial node set for intentions ๐ ! , โฏ , ๐ 1 : a collection of the last element of each execution trace of a goal Terminal node set for a goal node: ๐จ 6 = ๐ข๐ ! , โฏ , ๐ข๐ 1 where ๐ข๐ 7 is a terminal node of ๐ 7 W ๐ Terminal node set for intentions I = ๐ ! , โฏ , ๐ 1 ๐จ 6 โณ .% ๐ฝ if ๐จ 6 is a terminal node set of ๐ฝ
Progression Links To visualise the progression order of execution elements in the context of indexes The progression links of execution trace ๐(๐ " ) The progression links of execution trace ๐(๐ ! ) 4 4 (๐ " (W ๐) โ ๐ " ) (๐ ! (W ๐) โ ๐ ! ) " ! " โ ๐ !2 " ,!,4 ! โ ๐ !2 ! ,!,4 4 4 (๐ " ) (๐ ! ) " ! They are also called primitive progression links " โ ๐ #2 " ,",4 ! โ ๐ "2 ! ,",4 (๐ !2 " ,!,4 " ) (๐ !2 ! ,!,4 ! ) " โ ๐ $2 " ,#,4 ! โ ๐ $2 ! ,#,4 (๐ #2 " ,",4 (๐ "2 ! ,",4 " ) ! )
Recommend
More recommend