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

Slides:



Advertisements
Similar presentations
Auto-Generation of Test Cases for Infinite States Reactive Systems Based on Symbolic Execution and Formula Rewriting Donghuo Chen School of Computer Science.
Advertisements

Techniques for Proving the Completeness of a Proof System Hongseok Yang Seoul National University Cristiano Calcagno Imperial College.
Formal Semantics for an Abstract Agent Programming Language K.V. Hindriks, Ch. Mayer et al. Lecture Notes In Computer Science, Vol. 1365, 1997
Formal Semantics of Programming Languages 虞慧群 Topic 6: Advanced Issues.
Rigorous Software Development CSCI-GA Instructor: Thomas Wies Spring 2012 Lecture 11.
Agents That Reason Logically Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 7 Spring 2004.
Programming Languages Marjan Sirjani 2 2. Language Design Issues Design to Run efficiently : early languages Easy to write correctly : new languages.
LDK R Logics for Data and Knowledge Representation Modal Logic Originally by Alessandro Agostini and Fausto Giunchiglia Modified by Fausto Giunchiglia,
1 Semantic Description of Programming languages. 2 Static versus Dynamic Semantics n Static Semantics represents legal forms of programs that cannot be.
What exactly is an agent? James Harland 23rd November, 2009.
1 Conditional XPath, the first order complete XPath dialect Maarten Marx Presented by: Einav Bar-Ner.
Artificial Intelligence Knowledge-based Agents Russell and Norvig, Ch. 6, 7.
Comp 205: Comparative Programming Languages Semantics of Imperative Programming Languages denotational semantics operational semantics logical semantics.
Adding Organizations and Roles as Primitives to the JADE Framework NORMAS’08 Normative Multi Agent Systems, Matteo Baldoni 1, Valerio Genovese 1, Roberto.
A Semantic Characterization of Unbounded-Nondeterministic Abstract State Machines Andreas Glausch and Wolfgang Reisig 1.
C. Varela; Adapted w/permission from S. Haridi and P. Van Roy1 Declarative Computation Model Defining practical programming languages Carlos Varela RPI.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
1/18 CS 693/793 Lecture 09 Special Topics in Domain Specific Languages CS 693/793-1C Spring 2004 Mo, We, Fr 10:10 – 11:00 CH 430.
Denotational Semantics Syntax-directed approach, generalization of attribute grammars: –Define context-free abstract syntax –Specify syntactic categories.
PSUCS322 HM 1 Languages and Compiler Design II Formal Semantics Material provided by Prof. Jingke Li Stolen with pride and modified by Herb Mayer PSU Spring.
C SC 520 Principles of Programming Languages 1 C SC 520: Principles of Programming Languages Peter J. Downey Department of Computer Science Spring 2006.
Logical Agents Chapter 7 Feb 26, Knowledge and Reasoning Knowledge of action outcome enables problem solving –a reflex agent can only find way from.
Dec Formal Semantics1 Programming Language Theory Formal Semantics Leif Grönqvist The national Graduate School of Language Technology (GSLT) MSI.
Belief Revision Lecture 1: AGM April 1, 2004 Gregory Wheeler
2APL A Practical Agent Programming Language March 6, 2007 Cathy Yen.
Applying Belief Change to Ontology Evolution PhD Student Computer Science Department University of Crete Giorgos Flouris Research Assistant.
A Z Approach in Validating ORA-SS Data Models Scott Uk-Jin Lee Jing Sun Gillian Dobbie Yuan Fang Li.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Pattern-directed inference systems
Ayestarán SergioA Formal Model for CPS1 A Formal Model for Cooperative Problem Solving Based on: Formalizing the Cooperative Problem Solving Process [Michael.
Checking Reachability using Matching Logic Grigore Rosu and Andrei Stefanescu University of Illinois, USA.
1 Program Slicing Amir Saeidi PhD Student UTRECHT UNIVERSITY.
Verification of behavioural elements of UML models using B Truong, Ninh-Thuan and Souquieres, Jeanine In Proceedings of the 2005 ACM Symposium on.
LDK R Logics for Data and Knowledge Representation Modal Logic Originally by Alessandro Agostini and Fausto Giunchiglia Modified by Fausto Giunchiglia,
Albert Gatt LIN3021 Formal Semantics Lecture 4. In this lecture Compositionality in Natural Langauge revisited: The role of types The typed lambda calculus.
Simultaneously Learning and Filtering Juan F. Mancilla-Caceres CS498EA - Fall 2011 Some slides from Connecting Learning and Logic, Eyal Amir 2006.
3.2 Semantics. 2 Semantics Attribute Grammars The Meanings of Programs: Semantics Sebesta Chapter 3.
Programming Languages and Design Lecture 3 Semantic Specifications of Programming Languages Instructor: Li Ma Department of Computer Science Texas Southern.
AGI 08 March 1-3, University of Memphis Hybrid Reasoning and the Future of Iconic Representations Catherine RECANATI LIPN UMR 7030 Université Paris 13.
Logical Agents Chapter 7. Outline Knowledge-based agents Logic in general Propositional (Boolean) logic Equivalence, validity, satisfiability.
A Quantitative Trust Model for Negotiating Agents A Quantitative Trust Model for Negotiating Agents Jamal Bentahar, John Jules Ch. Meyer Concordia University.
Network Protocols Network Systems Security Mort Anvari.
Software Engineering 2 -Prakash Shrestha.
From Hoare Logic to Matching Logic Reachability Grigore Rosu and Andrei Stefanescu University of Illinois, USA.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
LDK R Logics for Data and Knowledge Representation Propositional Logic Originally by Alessandro Agostini and Fausto Giunchiglia Modified by Fausto Giunchiglia,
1 Programming Languages (CS 550) Lecture 2 Summary Mini Language Interpreter Jeremy R. Johnson.
Louden’s Simple Language for Describing Formal Semantics program → stmt-list stmt-list → stmt ‘;’ stmt-list | stmt stmt → assign-stmt | if-stmt | while-stmt.
Using OWL 2 For Product Modeling David Leal Caesar Systems April 2009 Henson Graves Lockheed Martin Aeronautics.
Formal Semantics of Programming Languages 虞慧群 Topic 2: Operational Semantics.
Artificial Intelligence Logical Agents Chapter 7.
Logical Agents. Inference : Example 1 How many variables? 3 variables A,B,C How many models? 2 3 = 8 models.
Operational Semantics of Scheme
Logics for Data and Knowledge Representation
Knowledge Representation and Reasoning
EA C461 – Artificial Intelligence Logical Agent
EPISTEMIC LOGIC.
Lecture 5 Floyd-Hoare Style Verification
Logics for Data and Knowledge Representation
Formal Methods in software development
Programming Languages and Compilers (CS 421)
Artificial Intelligence
Programming Languages and Compilers (CS 421)
Formal Methods in software development
Back to “Serious” Topics…
Logics for Data and Knowledge Representation
6.001 SICP Variations on a Scheme
Knowledge Representation I (Propositional Logic)
Programming Languages and Compilers (CS 421)
Logical Agents Prof. Dr. Widodo Budiharto 2018
Presentation transcript:

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

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?

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

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)

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

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

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

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

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

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

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

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

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  )

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

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

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

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

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

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

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

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

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

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  ’  ’

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

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)

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

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 ]

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 ]

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)

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