Presentation is loading. Please wait.

Presentation is loading. Please wait.

Luís Moniz Pereira CENTRIA, Departamento de Informática Universidade Nova de Lisboa Pierangelo Dell’Acqua Dept. of Science and Technology.

Similar presentations


Presentation on theme: "Luís Moniz Pereira CENTRIA, Departamento de Informática Universidade Nova de Lisboa Pierangelo Dell’Acqua Dept. of Science and Technology."— Presentation transcript:

1 Luís Moniz Pereira CENTRIA, Departamento de Informática Universidade Nova de Lisboa lmp@di.fct.unl.pt Pierangelo Dell’Acqua Dept. of Science and Technology Linköping University pier@itn.liu.se

2 Framework FThis framework is based on: 3 A modification of Kowalski and Sadri’s agent cycle 3 Communication primitives, from Dell’Acqua, Sadri & Toni 3 Updating features of Dynamic logic programming, from Alferes, Leite, Pereira, Przymusinska & Przymusinski 3 The WF abduction proof procedure, from Alferes, Pereira & Swift

3 Updating agents FUpdating agent: a rational, reactive agent that can dynamically change its own knowledge and goals 8makes observations 8reciprocally updates other agents with goals and rules 8thinks a bit (rational) 8selects and executes an action (reactive)

4 The language FAtomic formulae: A objective atoms not A default atoms i:C projects updates : - i C FFormulae: A  L 1  L n not A  L 1  L n L 1  L n  false L 1  L n  i:C L i is a project, a default or objective atom L i is a default or objective atom active rules generalized LP rules integrity rule action rule

5 The language A  L 1  L n L 1  L n  i:C ?- L 1  L n L 1  L n  false :-i C  We assume that projects i:C and updates cannot be negated, and that C can take one of the forms: not A  L 1  L n goal

6 Agents’ knowledge states FKnowledge states represent dynamically evolving states of agents’ knowledge. They undergo change due to updates. FGiven the current knowledge state P s, its successor knowledge state P s+1 is produced as a result of the occurrence of a non-empty set of parallel updates. FUpdate actions do NOT modify the current or any of the previous knowledge states. They only affect future states, beginning with the successor state. It is assumed we always know what the current state is.

7 Projects and updates  A project j:C denotes the intention (of some agent i) of updating the theory of agent j with C : - i C F denotes an update (proposed by j) of the current theory of agent i with C : - i C j:C

8 Sequence of updating programs FAn abductive LP is a tuple, where - P is a set of generalized LP rules - A is a set of objective and default atoms (abducibles) - R is a set of active rules FAn updating program is a set of update rules FA sequence of updating programs is a set  ={P 0,P 1,…,P n }, where - P 0 is an abductive LP (initial theory) - P 1,…,P n are updating programs

9 Dynamic program updates FRewritten Initial Program Clauses:  ( A  B  not C ) = A 0  B  C -  ( B  not C  false ) = B  C -   false 0  ( B  not C  A ) = B  C -   A 1  ( not A  B  not C ) =  B  C - - A0A0

10 Dynamic program updates FRewritten Updates at state s: if C is A  B  not C if C is not A  B  not C if C is B  not C  false if C is B  not C  A  (s, i:C ) = A i,s  B  C - -  (s, i:C ) =  B  C - - A i,s -  (s, i:C ) = B  C -  false i,s -  (s, i:C ) = B  C -  A i,s+1 -

11 Dynamic program updates FUpdate Rules: A s  A i,s  not exception( A i,s ) - AsAs   not exception( ) - A i,s - An atom A is true in the state s if it is true in the updating program P s, bar an exception FUpdate Rules for Active Rules: A i,s  not exception_ar( A i,s )  A s A is true in s if it is true in the updating program P s, bar an exception for all projects A or A= false for every state s and agent i

12 Dynamic program updates FInheritance Rules: A s  A s-1  not reject( A s-1 )   not reject( ) - AsAs - A s-1 - reject( A s-1 )  - AsAs reject( )  A s - A s-1 FCurrent State Rules (x): A  A x - AxAx A- A-  determine the values of A and not A in the current state x in which the updated program is being evaluated

13 Dynamic program updates r( P s ) to indicate all the updates in P s of the form: FLet P s be an updating program. We write: A  L 1  L n not A  L 1  L n ar( P s ) to indicate all the updates in P s of the form: L 1  L n  i:C ?- L 1  L n L 1  L n  false or g( P s ) to indicate all the updates in P s of the form:

14 Dynamic program updates The dynamic program update at state s for agent i over P is: FLet  ={P 0,P 1,…,P n } be a sequence of updating programs. Assume that P 0 =  s i P = with P´ =  (P) + UR + IR + CSR(n) +  (s, r(P s )) R´ =  (R) + URAR +  (s, ar(P s ))

15 Dual transformation FAllows us to remove default negation in the body of rules s  not p  not q q  not p  r s  not(p)  not(q) q  not(p)  r not(s)  p not(s)  q not(q)  p not(q)  not(r) P dual(P) definite LP WF completion

16 IFF proof procedure (sketched) FGiven the rules: A  D 1 A  D n... the iff-definition of A is: A  D 1  …  D 1 FThe IFF proof procedure is a rewriting proof procedure that replaces a formula with an equivalent one in the theory  (P) FGiven, let  (P) be the set of all iff-definitions in dual(P)

17 Inference rules of IFF FUnfolding: replaces an atom A in a formula with the body of its iff-definition  Propagation: given an abducible atom A and an active rule L 1 ...  Li ...  L n  B s.t. Li = A a new active rule L 1 ...  Li -1  Li +1 ...  L n  B is added FLogical simplification

18 Derivation FGiven and an initial goal G G  R N 1  …  N j  …  N m...... apply IFF’s inference rules derivation A derivation is successful if there is a conjunct Nj  false s.t. no inference rule can be applied to it An answer is the set of all abducibles in Nj

19 The agent’s cycle FEvery agent can be thought of as an abductive LP equipped with a set of inputs represented as updates FThe abducibles are (names of) actions to be executed as well as explanations of observations made FUpdates can be used to solve the goals of the agent as well as to trigger new goals

20 The agent’s cycle Cycle(i,r,s, ,G) 8Observe and record any input in the updating program P s 8Resume the IFF procedure by propagating the inputs wrt the program  s i (  +P s ) and goal G  g(P s )  ar(P s ) 8Continue applying the IFF procedure, using a total of r units of time. Let G´ the last formula 8Selects from G´ a project and execute it 8Cycle(i,r,s+1,  + P s,G´) agent current state sequence of updating programs {P 0,…,P s-1 } current goal

21 The agent’s cycle Cycle(i,r,s, ,G) 8Selects from G´ a project and execute it 8Cycle(i,r,s+1,  + P s,G´)...... If the selected project is j:C (meaning that agent i intends to update the theory of agent j with C at state s), then (once executed) the update will be available (at the next cycle) in the updating program of j : - i C

22 Conclusion FWe have presented an approach to agents that can: 3 Reason and react to the environment 3Update their own knowledge 3Interact with each other by action rules that allow to express the intention to update the theory of another agent 3 Decide whether to update their own knowledge depending on the requiring agent

23 Future works FThe approach can be extended in several ways: 3 The agents’ cycle can be further elaborated: better interrelationship between rational and reactive part awareness of this interrelationship 3Agents’ language can be extended to (fully) generalized LP 3Agents may be given the ability to update the updating mechanism itself 3 Preferences among agents can be introduced to empower the choice ability 3 Other rational abilities (eg. learning) can be incorporated


Download ppt "Luís Moniz Pereira CENTRIA, Departamento de Informática Universidade Nova de Lisboa Pierangelo Dell’Acqua Dept. of Science and Technology."

Similar presentations


Ads by Google