Presentation is loading. Please wait.

Presentation is loading. Please wait.

Agent programming in Dribble from beliefs to goals with plans Birna van Riemsdijk Wiebe van der Hoek John-Jules Ch. Meyer.

Similar presentations


Presentation on theme: "Agent programming in Dribble from beliefs to goals with plans Birna van Riemsdijk Wiebe van der Hoek John-Jules Ch. Meyer."— Presentation transcript:

1 Agent programming in Dribble from beliefs to goals with plans Birna van Riemsdijk Wiebe van der Hoek John-Jules Ch. Meyer

2 Utrecht UniversityJohn-Jules Meyer2 Motivation ◊Our group has done work on agent programming languages in the past –3APL: beliefs and goals-to-do –GOAL: beliefs and goals-to-be ◊Natural question: how to combine these?

3 Utrecht UniversityJohn-Jules Meyer3 Answer: Dribble ◊Dribble is an agent programming language containing: –Beliefs –Goals-to-be –Goals-to-do (Plans)

4 Utrecht UniversityJohn-Jules Meyer4 Mental States ◊Mental state  –Belief base  : set of prop. forms –Goal base  : set of prop. forms –Plan  : sequence of ‘basic elements’ (imperative program)

5 Utrecht UniversityJohn-Jules Meyer5 Belief and Goal Formulas ◊Belief formulas  B  ◊Goal formulas  G    logical consequences of particular goal are also goals, if not believed ◊Logical combinations

6 Utrecht UniversityJohn-Jules Meyer6 Plans ◊Plan is sequence of basic elements ◊Basic elements: Basic action Abstract plan If-then-else construct

7 Utrecht UniversityJohn-Jules Meyer7 Basic Actions ◊ Basic action executable belief update goal update: goals removed when realised (thru commitment strategy)

8 Utrecht UniversityJohn-Jules Meyer8 Abstract plans ◊ Abstract plan not executable abstraction mechanism (compare procedures) translation into basic actions

9 Utrecht UniversityJohn-Jules Meyer9 If-then-else ◊ If-then-else construct if  then  1 else  2 fi executable plan update

10 Utrecht UniversityJohn-Jules Meyer10 Executing Basic Actions ◊ A basic action has as effects: –Belief update E.g. after execution of moveLeft, the agent believes to have moved left –Goal update Indirect, side effect of belief update via commitment strategy

11 Utrecht UniversityJohn-Jules Meyer11 Commitment Strategy ◊Commitment strategy –connection between beliefs and goals –when are goals dropped? when believed to have been achieved

12 Utrecht UniversityJohn-Jules Meyer12 Goal Rules ◊Goal rules have form  –taken from GOAL :  a –used for plan selection –  is condition on beliefs and/or goals Beliefs: specify when the plan could be executed Goals: specify what the plan is good for

13 Utrecht UniversityJohn-Jules Meyer13 Goal Rules (ctd) –applicable in  E  iff  E   ( selection of new plan only if current plan is empty) –resulting mental state is  ( adoption of plan  )

14 Utrecht UniversityJohn-Jules Meyer14 PR Rules ◊Practical Reasoning (PR) rules:  h     b –taken from 3APL –  is condition on beliefs – employed for Creating plans : p   a;b;c Modifying plans :  h    b Modeling reactive behaviour : E    b

15 Utrecht UniversityJohn-Jules Meyer15 PR Rules (ctd) –applicable in  h  iff  h   –resulting mental state is  b  ( adoption of plan  b instead of  h )

16 Utrecht UniversityJohn-Jules Meyer16 Operational Semantics ◊Operational semantics based on transition system definition of mental state transformations ◊Transition rule for basic action execution T(a,  ) defines update of  by executing action a

17 Utrecht UniversityJohn-Jules Meyer17 Transition rules ◊Application of goal rule g:   E     E  applyRule(g) 

18 Utrecht UniversityJohn-Jules Meyer18 Transition Rules ◊Execution of a basic action a : T(a,  ) =  ’ _______________________  a  Execute(a)  ’  ’  E  where  ’  \  ’ 

19 Utrecht UniversityJohn-Jules Meyer19 Summary So Far ◊Dribble agent –Mental state belief base, goal base, plan –Goal rules plan selection –PR rules plan creation and modification

20 Utrecht UniversityJohn-Jules Meyer20 Dynamic Logic –specify and verify properties of programs –programs: syntactic constructs in the logic –  p  : possible to execute p and halt in state satisfying  –program is transformation function on states : reason about state transformations

21 Utrecht UniversityJohn-Jules Meyer21 Logic for Dribble ◊Dynamic logic for Dribble –transformations on mental states caused by: goal and PR rule application and action execution –reason about state transformations reason about rule application and action execution of meta-actions

22 Utrecht UniversityJohn-Jules Meyer22 Syntax ◊  : sequence of meta-actions applyRule(g), applyRule(  ), execute(a), execute(if-then-else) ◊  : mental state formula B(  ), G(  ), Com(  )

23 Utrecht UniversityJohn-Jules Meyer23 Semantics ◊ r* : semantics of meta-actions transformation function on mental states through meta-actions ◊interpretation of diamond formulas: –  r*  ◊Com formulas –  Com  ’  ’

24 Utrecht UniversityJohn-Jules Meyer24 Semantics ◊Semantics of applyRule(g) for g:  ’  r* (applyRule(g)) (  ’  if  = E and 

25 Utrecht UniversityJohn-Jules Meyer25 Correspondence ◊Mental state transitions - defined by transition system (meaning of Dribble agent) - defined by actions in the logic (by means of the r* function)

26 Utrecht UniversityJohn-Jules Meyer26 Correspondence (ctd) ◊Correspondence of logic and operational semantics –transition defined by actions in the logic  transition defined by transition system –properties of actions in logic: properties of Dribble agent

27 Utrecht UniversityJohn-Jules Meyer27 Some Validities ◊Results of meta-actions [applyRule(g)] Com(  ) Com(  h  )  [applyRule(  )]Com(  b  ) Com(a;  )  [a]   [execute(a)](Com(  )   ) Com(if;  )    [execute(if)] Com(  1  ), where if = if  then  1 else  2 fi [Where g:  and  :  h    b ]

28 Utrecht UniversityJohn-Jules Meyer28 Some Validities (ctd) ◊Realisability of meta-actions Com(E)  applyRule(g)  T Com(  h  )   applyRule(  )  Com(  b  ) Com(a;  )   a  T   execute(a)  Com(  ) Com(if;  )   execute(if)  T, where if = if  then  1 else  2 fi [Where g:  and  :  h    b ]

29 Utrecht UniversityJohn-Jules Meyer29 Conclusion ◊agent programming language –incorporating goals and planning features –formally defined semantics ◊programming logic –a first attempt to reason about these ‘self-modifying’ programs (via meta- actions)

30 Utrecht UniversityJohn-Jules Meyer30 Future Work ◊incorporate first-order languages ◊selection of goal from wish base ◊explicit goal adopt and drop actions ◊drop goal when believed to be unachievable ◊investigation of use of adding goal formulas in PR rules


Download ppt "Agent programming in Dribble from beliefs to goals with plans Birna van Riemsdijk Wiebe van der Hoek John-Jules Ch. Meyer."

Similar presentations


Ads by Google