A Language for Updates with Multiple Dimensions João Alexandre Leite 1 José Júlio Alferes 1 Luís Moniz Pereira 1 Halina Przymusinska 2 Teodor Przymusinski.

Slides:



Advertisements
Similar presentations
Computer Science CPSC 322 Lecture 25 Top Down Proof Procedure (Ch 5.2.2)
Advertisements

Models of Concurrency Manna, Pnueli.
2. Processes and Interactions 2.1 The Process Notion 2.2 Defining and Instantiating Processes –Precedence Relations –Implicit Process Creation –Dynamic.
Updates plus Preferences Luís Moniz Pereira José Júlio Alferes Centro de Inteligência Artificial Universidade Nova de Lisboa Portugal JELIA’00, Málaga,
Well-founded Semantics with Disjunction João Alcântara, Carlos Damásio and Luís Moniz Pereira Centro de Inteligência Artificial.
The International RuleML Symposium on Rule Interchange and Applications Local and Distributed Defeasible Reasoning in Multi-Context Systems Antonis Bikakis,
1 An Event-Condition- Action Logic Programming Language J. J. Alferes F. Banti A. Brogi.
MINERVA – A Dynamic Logic Programming Agent Architecture João Alexandre Leite, José Júlio Alferes, Luís Moniz Pereira Centro de Inteligência Artificial.
Parallel Scheduling of Complex DAGs under Uncertainty Grzegorz Malewicz.
Background information Formal verification methods based on theorem proving techniques and model­checking –to prove the absence of errors (in the formal.
ISBN Chapter 3 Describing Syntax and Semantics.
Software Testing and Quality Assurance
Rule Updates These languages and methodologies are basically concerned with facts that change –There is a set of fluents (fact) –There are static rules.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
João Alcântara, Carlos Damásio and Luís Moniz Pereira Centro de Inteligência Artificial (CENTRIA) Depto. Informática,
Luís Moniz Pereira CENTRIA, Departamento de Informática Universidade Nova de Lisboa Pierangelo Dell’Acqua Dept. of Science and Technology.
Logic Programming for Evolving Agents J.J. Alferes J.A. Leite L.M. Pereira.
Luís Moniz Pereira CENTRIA, Departamento de Informática Universidade Nova de Lisboa Pierangelo Dell’Acqua Dept. of Science and Technology.
José Júlio Alferes Luís Moniz Pereira Centro de Inteligência Artificial - CENTRIA Universidade Nova de Lisboa, Portugal Pierangelo Dell’Acqua Dept. of.
Luís Moniz Pereira CENTRIA, Departamento de Informática Universidade Nova de Lisboa Pierangelo Dell’Acqua Dept. of Science and Technology.
A Logic-Based Approach to Model Supervisory Control Systems Pierangelo Dell’Acqua Anna Lombardi Dept. of Science and Technology - ITN Linköping University,
Chapter 8 . Sequence Control
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Luís Moniz Pereira Centro de Inteligência Artificial - CENTRIA Universidade Nova de Lisboa Pierangelo Dell’Acqua Dept. of Science and.
Combining Societal Agents’ Knowledge João Alexandre Leite José Júlio Alferes Luís Moniz Pereira CENTRIA – Universidade Nova de Lisboa Universidade de Évora,
Luís Moniz Pereira Centro de Inteligência Artificial - CENTRIA Universidade Nova de Lisboa, Portugal Pierangelo Dell’Acqua Dept. of Science and Technology.
GRANULARITY OF LOCKS IN SHARED DATA BASE J.N. Gray, R.A. Lorie and G.R. Putzolu.
João Alexandre Leite Luís Moniz Pereira Centro de Inteligência Artificial - CENTRIA Universidade Nova de Lisboa { jleite, lmp Pierangelo.
Describing Syntax and Semantics
Luís Moniz Pereira Centro de Inteligência Artificial - CENTRIA Universidade Nova de Lisboa, Portugal Pierangelo Dell’Acqua Dept. of Science and Technology.
Multi-dimensional Dynamic Knowledge Representation João Alexandre Leite José Júlio Alferes Luís Moniz Pereira CENTRIA – New University of Lisbon Wien,
ASP vs. Prolog like programming ASP is adequate for: –NP-complete problems –situation where the whole program is relevant for the problem at hands èIf.
Luís Moniz Pereira Centro de Inteligência Artificial - CENTRIA Universidade Nova de Lisboa, Portugal Pierangelo Dell’Acqua Aida Vitória Dept. of Science.
Belief Revision Lecture 1: AGM April 1, 2004 Gregory Wheeler
Knowledge Mediation in the WWW based on Labelled DAGs with Attached Constraints Jutta Eusterbrock WebTechnology GmbH.
WMS systems manage and coordinate several independent subtasks. The coordination problems get even more serious when the subtasks are performed on separate.
Engineering Law-Governed Approaches How to reuse, extend and compose interaction specifications Gustavo Carvalho, Carlos Lucena
1 N Degrees of Separation: Multi-Dimensional Separation of Concern (MDSOC) HyperJ: language and concepts of general concern combination.
Ontologies Reasoning Components Agents Simulations Belief Update, Planning and the Fluent Calculus Jacques Robin.
Features, Policies and Their Interactions Joanne M. Atlee Department of Computer Science University of Waterloo.
CSNB234 ARTIFICIAL INTELLIGENCE
Formalizing the Asynchronous Evolution of Architecture Patterns Workshop on Self-Organizing Software Architectures (SOAR’09) September 14 th 2009 – Cambrige.
An Algebra for Composing Access Control Policies (2002) Author: PIERO BONATTI, SABRINA DE CAPITANI DI, PIERANGELA SAMARATI Presenter: Siqing Du Date:
Querying Structured Text in an XML Database By Xuemei Luo.
Combining Answer Sets of Nonmonotonic Logic Programs Chiaki Sakama Wakayama University Katsumi Inoue National Institute of Informatics.
Modelling Adaptive Controllers with Evolving Logic Programs Pierangelo Dell’Acqua Anna Lombardi Dept. of Science and Technology - ITN Linköping University,
Pattern-directed inference systems
ISBN Chapter 3 Describing Semantics -Attribute Grammars -Dynamic Semantics.
Preference Revision via Declarative Debugging Pierangelo Dell’Acqua Dept. of Science and Technology - ITN Linköping University, Sweden EPIA’05, Covilhã,
EVOlving L ogic P rograms J.J. Alferes, J.A. Leite, L.M. Pereira (UNL) A. Brogi (U.Pisa)
MINERVA A Dynamic Logic Programming Agent Architecture João Alexandre Leite José Júlio Alferes Luís Moniz Pereira ATAL’01 CENTRIA – New University of Lisbon.
Languages of Updates João Alexandre Leite New University of Lisbon Dagstuhl, 25 November, 2002Dagstuhl Seminar
Combining agents into societies Luís Moniz Pereira Centro de Inteligência Artificial – CENTRIA Universidade Nova de Lisboa DEIS, Università di Bologna,
L. M. Pereira, J. J. Alferes, J. A. Leite Centro de Inteligência Artificial - CENTRIA Universidade Nova de Lisboa, Portugal P. Dell’Acqua Dept. of Science.
KR A Principled Framework for Modular Web Rule Bases and its Semantics Anastasia Analyti Institute of Computer Science, FORTH-ICS, Greece Grigoris.
Some Thoughts to Consider 8 How difficult is it to get a group of people, or a group of companies, or a group of nations to agree on a particular ontology?
De-anonymizing Genomic Databases Using Phenotypic Traits Humbert et al. Proceedings on Privacy Enhancing Technologies 2015 (2) :
Formal Verification. Background Information Formal verification methods based on theorem proving techniques and model­checking –To prove the absence of.
The Object-Oriented Database System Manifesto Malcolm Atkinson, François Bancilhon, David deWitt, Klaus Dittrich, David Maier, Stanley Zdonik DOOD'89,
DCMI Abstract Model Analysis Resource Model Jorge Morato– Information Ingeneering Universidad Carlos III de Madrid
Our views on the Future of Logic Based Agents Luís Moniz Pereira José Júlio Alferes & Joint WorkshopLondon, 8 March 1999.
An argument-based framework to model an agent's beliefs in a dynamic environment Marcela Capobianco Carlos I. Chesñevar Guillermo R. Simari Dept. of Computer.
Artificial Intelligence Knowledge Representation.
October 19th, 2007L. M. Pereira and A. M. Pinto1 Approved Models for Normal Logic Programs Luís Moniz Pereira and Alexandre Miguel Pinto Centre for Artificial.
Service-Oriented Computing: Semantics, Processes, Agents
Logical architecture refinement
Artificial Intelligence: Logic agents
Service-Oriented Computing: Semantics, Processes, Agents
Chapter8: Statement-Level Control Structures April 9, 2019
NARS an Artificial General Intelligence Project
Presentation transcript:

A Language for Updates with Multiple Dimensions João Alexandre Leite 1 José Júlio Alferes 1 Luís Moniz Pereira 1 Halina Przymusinska 2 Teodor Przymusinski 3 1 Universidade Nova de Lisboa 2 California State Polytechnic Univ. at Pomona 3 University of California at Riverside Madrid, 18 September, 2002 AGP’02

Outline ► Overview of DLP ► Overview of LUPS ► Overview of MDLP ► Social Representation with MDLP ► MLUPS ► Conclusion

Motivation - 1 ► The notion of agency has claimed a major role in modern AI research ► LP and Non-monotonic Reasoning are appropriate for rational agents:  Utmost efficiency is not always crucial  Clear specification and correctness are crucial  LP provides a general, encompassing, rigorous declarative and procedural framework for rational functionalities

Motivation - 2 ► Till recently, LP could be seen as good for representing static non-contradictory knowledge ► In the agency paradigm we need to consider:  Ways of integrating knowledge from different sources evolving in time  Knowledge expressing state transitions  Knowledge about the environment evolution, and each agent’s behavioural evolution ► LP declaratively describes states well. LP must describe state transitions too.

Generalized Logic Programs ► To represent negative info in LP updates, we need LPs allowing not in heads ► Programs are sets of generalized LP rules: A  B 1,…, B k, not C 1,…,not C m not A  B 1,…, B k, not C 1,…,not C m ► The semantics is a generalization of SMs

Dynamic LP ► DLP was introduced to express LP’s linear evolution in dynamic environments, via updates ► DLP gives semantics to sequences of GLPs ► Each program represents a distinct state of knowledge, where states may specify:  different time points, different hierarchical instances, different viewpoints, etc. ► Different states may have mutually contradictory or overlapping information, and DLP determines the semantics for each state sequence

A language for updates ► Now we know how to give meaning to sequences of updating LPs ► How do we come up with such LPs?  Changes may be additions or retractions of rules  Some rules may represent (persistent) laws  Updates rules may be conditional on the present state ► How, from these rule requirements, do we build a sequence of LPs? ► This is the purpose of LUPS - Language for dynamic Updates

A language for updates (2) ► LUPS is a language to declaratively specify how knowledge evolves ► LPs specify states, DLPs specify evolution of states ► LUPS specifies rules for state transition ► Imperative programming specifies state transitions but leaves states implicit ► LUPS makes both state and state transitions declarative

Knowledge state updating ► Consecutive knowledge states are obtained as: KS n = KS 0 [U 1 ][U 2 ]...[U n ], where U n represents consecutive sets of updates. We denote this by: KS n =U 0  U 1 ...  U n ► Given the current state KS, its successor state KS[U] is produced as a result of a non-empty set U of parallel updates. Each one can be viewed as a (parallel) action. ► Update actions do NOT modify the current or any of the previous states. They only affect future states, beginning with the successor state KS[U].

LUPS Example The Statement: assert A  B 1,…, B k, notC 1,…,  notC m when D 1,…,D n,  notE 1,…, notE p The meaning of the assert statement is that if the precondition when D 1,…,D n,  notE 1,…, notE p when D 1,…,D n,  notE 1,…, notE p is true in the current knowledge state then the rule A  B 1,…, B k, notC 1,…,  notC m A  B 1,…, B k, notC 1,…,  notC m is true in the next state, and persists from then on by inertia, until defeated by some future update or retracted.

LUPS - Syntax ► LUPS statements: they cause changes to the current state, leading to a successor state. [always] assert [event] Rule when [always] assert [event] Rule when [always] retract [event] Rule when [always] retract [event] Rule when cancel assert Rule when cancel assert Rule when cancel retract Rule when cancel retract Rule when ::= L 1, L 2, …, L n. ::= L 1, L 2, …, L n.

LUPS semantics ► Sequences of commands are translated into Dynamic LPs. ► Given P 1  P 2  …  P i resulting from the translation of U 0  U 1 ...  U i and U i+1, obtain the new DLP P 1  P 2  …  P i  P i+1. ► The semantics is then given by the semantics of the newly translated DLP. The translation procedure enjoys incrementality. ► This way LUPS programs specify sequences of LPs.

MDLP Motivating Example ► Parliament issues law L1 at time t1. ► A local authority issues law L2 at time t2 > t1. ► Parliamentary laws override local laws, but not vice-versa: ► More recent laws have precedence over older ones: L2L1 L2 ► How to combine these two dimensions of knowledge precedence? ë DLP with Multiple Dimensions (MDLP)

MDLP ► In MDLP knowledge is given by a set of programs. ► Each program represents a different piece of updating knowledge assigned to a state. ► States are organized by a DAG (Directed Acyclic Graph) representing their precedence relation. ► MDLP determines the composite semantics at each state, according to the DAG paths. ► MDLP allows for combining knowledge updates that evolve along multiple dimensions.

MDLP - definition  Definition: A Multi-Dimensional Dynamic Logic Program, P, is a pair ( P D,D) where:  D=(V,E) is an acyclic digraph.  P D ={P V : v  V} is a set of generalized logic programs indexed by the vertices of D.

MDLP - Semantics 1  Definition: Let P =( P D,D) be a MDLP. An interpretation M s is a stable model of the multi-dimensional update at state s  V iff An interpretation M s is a stable model of the multi-dimensional update at state s  V iff M s = least( [ P s – Reject(s, M s )]  Defaults ( P s, M s ) ) where P s =  j  s P i s j3j3 j2j2 j1j1

MDLP - semantics 2 where: Reject(s, M s ) = {r  P i |  r’  P j, i  j  s, head(r)=not head(r’)  M s  body(r’)} Defaults ( P s, M s )={not A |  r  P s : head(r)=A  M s  body(r)} M s = least( [ P s – Reject(s, M s )]  Defaults ( P s, M s ) ) s j3j3 j2j2 j1j1

MDLP for Agents ► Flexibility, modularity, and compositionality of MDLP makes it suitable for representing the evolution of several agents’ combined knowledge. How to encode, in a DAG, the relationships among every agent’s evolving knowledge along multiple dimensions ?

Two basic dimensions of a multi-agent system How to combine these dimensions into one DAG ? Temporal evolution of one agentHierarchy of agents

Equal Role Representation ► Assigns equal role to the two dimensions:

Equal Role - 2 ► In legal reasoning:  Lex Superior : rules issued by a higher authority override those of a lower one.  Lex Posterior : more recent rules override older ones. ► It potentiates contradiction:  There are many pairs of unrelated programs.

Time Prevailing Representation ► Assigns priority to the time dimension:

Time Prevailing - 2 ► Useful in very dynamic situations, where competence is distributed:  agents normally provide rules about  literals. ► Drawback: It requires all agents to be fully trusted, since all newer rules override older ones irrespective of their mutual hierarchical position.

Hierarchy Prevailing Representation ► Assigns priority to the hierarchy dimension:

Hierarchy Prevailing - 2 ► Useful when some agents are untrustworthy. ► Drawback: One has to consider the whole history of all higher ranked agents in order to accept/reject a rule from a lower ranked agent. However, techniques exist to reduce the size of a MDLP. However, techniques exist to reduce the size of a MDLP.

Goal Extend the language of updates LUPS to allow the specification and evolution of MDLP based knowledge.

MLUPS - Framework ► Core Version:  Set of Agents  Sequence of States  Fixed hierarchy relating the agents  Fixed evolution mode: the DAG of the MDLP evolves according to the “equal role representation ”  At each (temporal) state transition we determine the corresponding MDLP:  t = (P D t, D t )

MLUPS - Syntax always assert [event]  when always assert [event]  when cancel assert  when cancel assert  when always retract [event]  when always retract [event]  when cancel retract  when cancel retract  when ::= C  0, C  1, …, C  n. ::= C  0, C  1, …, C  n.

MLUPS – Hierarchy Commands ► Hierarchy Commands allow specification of updates of the hierarchy that relates the agents. add_hierarchy_edge  i   j [when ] remove_hierarchy_edge  i   j [when ] ► They allow a more flexible evolution of the MDLP DAG, permitting specification of the social dynamics of MAS.

MLUPS – Prevalence Mode Commands ► Prevalence Mode Commands allow the specification of how the MDLP DAG is to evolve. add_prevail_mode  i  f i   j [when ] remove_prevail_mode  i  f i   j [when ] ► f i is a function that specifies which edges are to be added to and removed from the MDLP DAG, besides the ones encoding the “equal role representation”. ► Various evolution modes such as the “time prevalence representation” and “hierarchy prevalence representation” can be specified.

Concluding Remarks ► Applications in Legal Reasoning and Knowledge Combination. ► Applications in representing an agent’s view of the society: combine beliefs about other agents’ knowledge with its own beliefs. ► Depending on the situation, and the relationships among agents, several classes of DAGs for their encoding exist or can be defined. ► MLUPS and other extensions reported elsewhere (e.g. to allow for distribution and nested update commands) are at the core of the agent architecture MINERVA, to represent the epistemic states of agents and their evolution.

MINERVA ► A MINERVA agent:  Is based on a modular design  It has a common internal KB (a MDLP), concurrently manipulated by its specialized sub-agents ► The goal is to have every agent composed of specialized sub-agents that execute special tasks, e.g.  reactivity  planning  scheduling  belief revision where the behaviour of each sub-agent, in what concerns its contribution to the knowledge state of the agent is concerned, is encoded in MLUPS.  goal management  learning  preference evaluation  strategy