Combining agents into societies Luís Moniz Pereira Centro de Inteligência Artificial – CENTRIA Universidade Nova de Lisboa DEIS, Università di Bologna,

Slides:



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

ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Workpackage 2: Norms
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,
Agents, Power and Norms Michael Luck, Fabiola López y López University of Southampton, UK Benemérita Universidad Autonoma de Puebla, Mexico.
Answer Set Programming Overview Dr. Rogelio Dávila Pérez Profesor-Investigador División de Posgrado Universidad Autónoma de Guadalajara
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,
MINERVA – A Dynamic Logic Programming Agent Architecture João Alexandre Leite, José Júlio Alferes, Luís Moniz Pereira Centro de Inteligência Artificial.
Intelligent systems Lecture 6 Rules, Semantic nets.
Parallel Scheduling of Complex DAGs under Uncertainty Grzegorz Malewicz.
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
Background information Formal verification methods based on theorem proving techniques and model­checking –to prove the absence of errors (in the formal.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
Developing MAS The GAIA Methodology A Brief Summary by António Castro and Prof. Eugénio Oliveira.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
Agent Mediated Grid Services in e-Learning Chun Yan, Miao School of Computer Engineering Nanyang Technological University (NTU) Singapore April,
Luís Moniz Pereira CENTRIA, Departamento de Informática Universidade Nova de Lisboa Pierangelo Dell’Acqua Dept. of Science and Technology.
Modelling Hybrid Control Systems with Behaviour Networks Pierangelo Dell’Acqua Anna Lombardi Dept. of Science and Technology - ITN Linköping University,
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,
1 L. M. Pereira Centro de Inteligência Artificial - CENTRIA Universidade Nova de Lisboa, Portugal P. Dell’Acqua, M. Engberg Dept. of Science and Technology.
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.
Semantics with Applications Mooly Sagiv Schrirber html:// Textbooks:Winskel The.
João Alexandre Leite Luís Moniz Pereira Centro de Inteligência Artificial - CENTRIA Universidade Nova de Lisboa { jleite, lmp Pierangelo.
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,
Luís Moniz Pereira Centro de Inteligência Artificial - CENTRIA Universidade Nova de Lisboa, Portugal Pierangelo Dell’Acqua Aida Vitória Dept. of Science.
Norm Theory and Descriptive Translation Studies
1 N Degrees of Separation: Multi-Dimensional Separation of Concern (MDSOC) HyperJ: language and concepts of general concern combination.
Computer Science CPSC 322 Lecture 3 AI Applications 1.
An Integration Framework for Sensor Networks and Data Stream Management Systems.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Argumentation and Trust: Issues and New Challenges Jamal Bentahar Concordia University (Montreal, Canada) University of Namur, Belgium, June 26, 2007.
Formalizing the Asynchronous Evolution of Architecture Patterns Workshop on Self-Organizing Software Architectures (SOAR’09) September 14 th 2009 – Cambrige.
Combining Answer Sets of Nonmonotonic Logic Programs Chiaki Sakama Wakayama University Katsumi Inoue National Institute of Informatics.
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.
Modelling Adaptive Controllers with Evolving Logic Programs Pierangelo Dell’Acqua Anna Lombardi Dept. of Science and Technology - ITN Linköping University,
Slide 1 Propositional Definite Clause Logic: Syntax, Semantics and Bottom-up Proofs Jim Little UBC CS 322 – CSP October 20, 2014.
Illustrations and Answers for TDT4252 exam, June
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
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
Understanding and using patterns in software development EEL 6883 Software Engineering Vol. 1 Chapter 4 pp Presenter: Sorosh Olamaei.
Copyright © Cengage Learning. All rights reserved.
A Quantitative Trust Model for Negotiating Agents A Quantitative Trust Model for Negotiating Agents Jamal Bentahar, John Jules Ch. Meyer Concordia University.
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.
Lecture 13.  Failure mode: when team understands requirements but is unable to meet them.  To ensure that you are building the right system Continually.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
1 Reasoning with Infinite stable models Piero A. Bonatti presented by Axel Polleres (IJCAI 2001,
Formal Verification. Background Information Formal verification methods based on theorem proving techniques and model­checking –To prove the absence of.
The International RuleML Symposium on Rule Interchange and Applications Visualization of Proofs in Defeasible Logic Ioannis Avguleas 1, Katerina Gkirtzou.
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.
From NARS to a Thinking Machine Pei Wang Temple University.
Intelligent Agents Chapter 2. How do you design an intelligent agent? Definition: An intelligent agent perceives its environment via sensors and acts.
SECURE TROPOS Michalis Pavlidis 8 May Seminar Agenda  Secure Tropos  History and Foundation  Tropos  Basics  Secure Tropos  Concepts / Modelling.
WELCOME TO COSRI IBADAN
Intelligent Agents Chapter 2.
Chapter 2 Database Environment.
Chapter 20 Object-Oriented Analysis and Design
Requirements I Peter Dolog dolog [at] cs [dot] aau [dot] dk
Chapter 4 System Modeling.
Presentation transcript:

Combining agents into societies Luís Moniz Pereira Centro de Inteligência Artificial – CENTRIA Universidade Nova de Lisboa DEIS, Università di Bologna, 22 Marzo 2004

Summary zGoal and motivation zOverview of MDLP (Multi-Dimensional LP) zCombining inter- and intra-agent societal viewpoints zAn architecture for evolving Multi-Agent viewpoints zA logical framework for modelling societies zFuture work and conclusion

Goal  The representation is the core of the agent architecture and system MINERVA.  It was designed with the aim of providing a common agent framework based on the strengths of Logic Programming. Explore the applicability of MDLP to represent multiple agents’ view of societal knowledge dynamics and evolution

Motivation - 1 zThe notion of agency has claimed a major role in modern AI research zLP and non-monotonic reasoning are appropriate for rational agents: yUtmost efficiency is not always crucial yClear specification and correctness are crucial yLP provides a general, encompassing, rigorous declarative and procedural framework for rational functionalities

Motivation - 2 zTill recently, LP could be seen as good for representing static non-contradictory knowledge. zIn the agency paradigm we need to consider: yWays of integrating knowledge from different sources evolving in time yKnowledge expressing state transitions yKnowledge about environment and societal evolution, and each agent’s own behavioural evolution zLP declaratively describes states well. zBut LP must describe state transitions too.

MDLP overview zDLP synopsis zMDLP motivation zMDLP semantics zMultiple representational dimensions in a multi- agent system zRepresentation prevalence zOverview conclusions

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

MDLP Motivating Example zParliament issues law L1 at time t1 zA local authority issues law L2 at time t2 > t1 zParliamentary laws override local laws, but not vice-versa: zMore recent laws have precedence over older ones: L2L1 L2 zHow to combine these two dimensions of knowledge precedence? ë DLP with Multiple Dimensions (MDLP)

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

Generalized Logic Programs zTo represent negative info in LP updates, we need LPs allowing not in heads zPrograms 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 zThe semantics is a generalization of SMs

MDLP - definition  Definition: A Multi-Dimensional Dynamic Logic Program, P, is a pair ( P D, D) where: yD= (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, M s = least( [ P s – Reject(s, M s )]  Defaults ( P s, M s ) ) where P s =  i  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 zFlexibility, 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 Hierarchy of agents Temporal evolution of one agent How to combine these dimensions into one DAG ?

Equal Role Representation zAssigns equal role to the two dimensions:

Equal Role - 2 zIn legal reasoning: yLex Superior : rules issued by a higher authority override those of a lower one yLex Posterior : more recent rules override older ones zIt potentiates contradiction: yThere are many pairs of unrelated programs

Time Prevailing Representation zAssigns priority to the time dimension:

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

Hierarchy Prevailing Representation zAssigns priority to the hierarchy dimension:

Hierarchy Prevailing - 2 zUseful when some agents are untrustworthy zDrawback: yOne 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 are being developed to reduce the size of a MDLP (garbage collection).

Inter- and Intra- Agent Relationships zThe above representations refer to a community of agents zBut they can be used as well for relating the several sub-agents of an agent A sub-agent Hierarchy

Intra- and Inter- Agent Example zPrevailing hierarchy for inter-agents zPrevailing time for sub-agents

Current work of overview  A MINERVA agent: yIs based on a modular design yIt has a common internal KB (a MDLP), concurrently manipulated by its specialized sub-agents zEvery agent is composed of specialized sub- agents that execute special tasks, e.g. yreactivity yplanning yscheduling ybelief revision ygoal management ylearning ypreference evaluation ystrategy

MDLP overview conclusions zWe’ve explored MDLP to combine knowledge from several agents and multiple dimensions zDepending on the situation, and relationships among agents, we’ve envisaged several classes of DAGs for their encoding  Based on this work, and on a language (LUPS) for specifying updates by means of transitions, we’ve launched into the design of an agent architecture MINERVA

Evolving multi-agent viewpoints – one more overview zOur agents zFramework references zMutually updating agents zMDLP synopsis zAgent language: projects and updates zAgent knowledge state and agent cycle zExample zAn implemented example architecture zFuture work

Our agents We propose a LP approach to agents that can: 3Reason and React to other agents 3Update their own knowledge, reactions, and goals 3Interact by updating the theory of another agent 3Decide whether to accept an update depending on the requesting agent 3Capture the representation of social evolution

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 (rational) 8selects and executes an action (reactive)

Multi-Dimensional Logic Programming FIn MDLP knowledge is given by a set of programs. FEach program represents a different piece of updating knowledge assigned to a state. FStates are organized by a DAG ( Directed Acyclic Graph ) representing their precedence relation. FMDLP determines the composite semantics at each state according to the DAG paths. FMDLP allows for combining knowledge updates that evolve along multiple dimensions.

New contribution 1 To extend the framework of MDLP with integrity constraints and active rules. 2 To incorporate the framework of MDLP into a multi-agent architecture. 3 To make the DAG of each agent updatable.

DAG A directed acyclic graph DAG is a pair D = (V, E) where V is a set of vertices and E is a set of directed edges.

Agent’s language Atomic formulae: A objective atoms not A default atoms i:C projects i  C updates Formulae: L i is an atom, an update or a negated update active rule generalized rules Z j is a project integrity constraint false  L 1  L n  Z 1  Z m A  L 1  L n not A  L 1  L n L 1  L n  Z

Projects and Updates A project j:C denotes the intention of some agent i of proposing the updating the theory of agent j with C. i  C denotes an update proposed by i of the current theory of some agent j with C. wilma:C fred  C

Agents’ knowledge states FKnowledge states represent dynamically evolving states of agents’ knowledge. They undergo change due to updates.  Given the current knowledge state P s, its successor knowledge state P s+1 is produced as a result of the occurrence of a set of parallel updates. FUpdate actions do not modify the current or any of the previous knowledge states. They only affect the successor state: the precondition of the action is evaluated in the current state and the postcondition updates the successor state.

Agent’s language A project i:C can take one of the forms: i : ( A  L 1  L n ) i : ( L 1  L n  Z ) i : ( ?- L 1  L n ) i : ( not A  L 1  L n ) i : ( false  L 1  L n  Z 1  Z m ) i : edge(u,v) i : not edge(u,v)

Initial theory of an agent A multi-dimensional abductive LP for an agent  is a tuple: T =  D, P D, A, R D  - D = (V, E) is a DAG s.t.  ´  V (inspection point of  ). - P D = {P V | v  V} is a set of generalized LPs. - A is a set of atoms (abducibles). - R D = {R V | v  V} is a set of set of active rules.

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.

Happy story - example inspection point of Alfredo alfredo judge motherfather girlfriend alfredo´ state 0The goal of Alfredo is to be happy DAG of Alfredo

Happy story - example alfredo judge motherfather girlfriend alfredo´ hasGirlfriend  not happy  father : (?-happy) not happy  mother : (?-happy) getMarried  hasGirlfriend  girlfriend : propose moveOut  alfredo : rentApartment custody(judge,mother)  alfredo : edge(father,mother) {moveOut, getMarried} state 0 abducibles

Happy story - example alfredo judge motherfather girlfriend alfredo´ state 0 hasGirlfriend  not happy  father : (?-happy) not happy  mother : (?-happy) getMarried  hasGirlfriend  girlfriend : propose moveOut  alfredo : rentApartment custody(judge,mother)  alfredo : edge(father,mother) {moveOut, getMarried}

Agent theory The initial theory of an agent  is a multi-dimensional abductive LP. Let an updating program be a finite set of updates, and S be a set of natural numbers. We call the elements s  S states. An agent  at state s, written   s, is a pair (T,U): - T is the initial theory of . - U={U 1,…, U s } is a sequence of updating programs.

Multi-agent system A multi-agent system M={   1 s,…,   n s } at state s is a set of agents  1,…,  n at state s. M characterizes a fixed society of evolving agents. The declarative semantics of M characterizes the relationship among the agents in M, and how the system evolves. The declarative semantics is stable models based.

Happy story - 1 st scenario Suppose that at state 1, Alfredo receives from the mother: and from the father: mother  (happy  moveOut) mother  (false  moveOut  not getMarried) mother  (false  not happy) father  (happy  moveOut) father  (not happy  getMarried)

happy  moveOut false  moveOut  not getMarried alfredo judge motherfather girlfriend alfredo´ state 1 happy  moveOut not happy  getMarried Happy story - 1 st scenario In this scenario, Alfredo cannot achieve his goal without producing a contradiction. Not being able to make a decision, Alfredo is not reactive at all. false  not happy

Happy story - 2 nd scenario Suppose that at state 1 Alfredo’s parents decide to get divorced, and the judge gives custody to the mother. judge  custody(judge,mother)

custody(judge,mother) Happy story - 2 nd scenario alfredo judge motherfather girlfriend alfredo´ state 1 hasGirlfriend  not happy  father : (?-happy) not happy  mother : (?-happy) getMarried  hasGirlfriend  girlfriend : propose moveOut  alfredo : rentApartment custody(judge,mother)  alfredo : edge(father,mother)

Happy story - 2 nd scenario alfredo judge girlfriend alfredo´ state 2 motherfather Suppose that when asked by Alfredo, the parents reply in the same way as in the 1 st scenario. Note that the internal update produces a change in the DAG of Alfredo.

Happy story - 2 nd scenario Now, the advice of the mother prevails over and rejects that of his father. alfredo judge girlfriend alfredo´ state 2 happy  moveOut false  moveOut  not getMarried happy  moveOut not happy  getMarried motherfather false  not happy

Happy story - 2 nd scenario Thus, Alfredo gets married, rents an apartment, moves out and lives happily ever after. alfredo judge girlfriend alfredo´ state 2 hasGirlfriend  not happy  father : (?-happy) not happy  mother : (?-happy) getMarried  hasGirlfriend  girlfriend : propose moveOut  alfredo : rentApartment custody(judge,mother)  alfredo : edge(father,mother) motherfather

Syntactical transformation The semantics of an agent  at state s,   s =(T,U), is established by a syntactical transformation  that maps   s into an abductive LP:    s =  P,A,R  1.   s   P´,A,R  P´ is a normal LP, A and R are a set of abducibles and active rules. 2. Default negation can then be removed from P´ via the abdual transformation (Alferes et al. ICLP99, TCLP04): P´  P P is a definite LP.

Agent architecture Rational P Reactive P+R CC    s =  P,A,R  can abduce XSB Prolog cannot abduce InterProlog (Declarativa) InterProlog (Declarativa) Java

Agent architecture Rational P Reactive P+R CC    s =  P,A,R  UpdateH projects External Interface ext.project Updates ActionH int.project

Future work of overview FAt the agent level: 3How to combine logical theories of agents expressed over graph structures. 3How to incorporate other rational abilities, e.g., learning. FAt the multi-agent system level: 3Non synchronous, dynamic multi-agent system. 3How to formalize dynamic societies of agents. 3 How to formalize the notion of organisational reflection.

A logical framework for modelling eMAS

Motivation  To provide control over the epistemic agents in a Multi- Agent System (eMAS) the need arises to: - explicitly represent its organizational structure, - and its agent interactions.  We introduce a logical framework F, suitable for representing organizational structures of eMAS. - we provide its declarative and procedural semantics. - F having a formal semantics, it permits us to prove properties of eMAS structures.

MDLPs revisited  We generalize the definition of MDLP by assigning weights to the edges of a DAG.  In case of conflictual knowledge, incoming into a vertex v by two vertices v 1 and v 2, the weights of v 1 and v 2 may resolve the conflict.  If the weights are the same both conclusions are false. (Or, two alternative conclusions can be made possible.) v 0.1 v1v1 v2v2 0.2 {a}{not a} [ a ]

Weighted directed acyclic graphs Def. Weighted directed acyclic graph (WDAG) A weighted directed acyclic graph is a tuple D = (V, E, w) : - V is a set of vertices, - E is a set of edges, - w : E  R + maps edges into positive real numbers, - no cycle can be formed with the edges of E. We write v 1  v 2 to indicate a path from v 1 to v 2.

WMDLPs Def. WMDLP – Weighted Multi-Dimensional Logic Program A WMDLP  is a pair (  D,D), where: D = (V,E,w) is a WDAG - Weighted directed acyclic graph and,  D = {P v : v  V} is a set of generalized logic programs indexed by the vertices of D.

Path dominance Def. Dominant path Let a 1  a n be a path with vertices a 1,a 2,…,a n. a 1  a n is a dominant path if there is no other path b 1,b 2,…,b m such that: - b 1 = a 1, b m = a n, and -  i, j such that a i = b j and w((a i-1,a i )) < w((b j-1,b j )).

Example: path dominance Let w((a 5,a 4 )) < w((a 3,a 4 )). Then, a 1, a 2, a 3, a 4 is a dominant path. a1a1 a2a2 a3a3 a4a4 a5a5

Prevalence a1a1 anan a2a a1a1 a i-1 anan aiai bmbm b1b Def. Prevalence wrt. a vertex a n Let a 1  a n be a dominant path with vertices a 1,a 2,…,a n. Then, - every vertex a i prevails a 1 wrt. a n (1< i  n). - if there exists a path b 1  a i with vertices b 1,…,b m,a i and w((a i-1,a i )) < w((b m,a i )), then every vertex b j prevails a 1 wrt. a n. a 1  a i anan a 1  b j anan

Example: formalizing agents Example: Formalize three agents A, B, and C, where: B and C are secretaries of A B and C believe it is not their duty to answer phone calls A believes it the duty of a secretary to answer phone calls  Epistemic agents can be formalized via WMDLPs.

Example: formalizing agents  A = (  DA,D A ) D A = ({v 1 },{},w A ) P v1 = {answerPhone  secretary  phoneRing}  B = (  DB,D B ) D B = ({v 3,v 4 },{(v 4,v 3 )},w B ) w B ((v 4,v 3 )) = 0.6 P v3 = {} P v4 = {phoneRing, secretary, not answerPhone}  C = (  DC,D C ) D C = ({v 5,v 6 },{(v 6,v 5 )},w C ) w C ((v 6,v 5 )) = 0.6 P v5 = {} and P v6 = P v4 A B C v3v3 v4v4 B v3v3 v5v5 v6v6 C v5v5 v1v1 A v1v1

Logical framework F Def. Logical framework F A logical framework F is a tuple (A, L, w L ) where: A={  1,…,  n } is a set of WMDLPs L is a set of links among the  i and w L : L  R +.

Semantics of F  Declarative semantics of F is stable model based. v 2  v 1 s Idea: The knowledge of a vertex v 1 overrides the knowledge of a vertex v 2 wrt. a vertex s iff v 1 prevails v 2 wrt. s. Example: P v1 = {answerPhone} P v2 = {not answerPhone} if then M s ={answerPhone} v1v1 v2v2 s

Proof theory The operational semantics for WMDLPs is based on a syntactic transformation  (P, s).  (P, s) extends the syntactic transformation for MDLPs.  (P, s) is based on the (strong) prevalence relation C s. Given a WMDLP P and a state s, the transformation  (P, s) produces a generalized logic program. Correctness of the transformation. The stable models of  (P, s) coincide with the stable models of P at state s.

Modelling eMAS  Multi-agent systems can be understood as computational societies whose members co-exist in a shared environment.  A number of organizational structures have been proposed: - coalitions, groups, institutions, agent societies, etc.  In our approach, agents and organizational structures are formalized via WMDLPs, and glued together via F.

Modelling eMAS: groups  A group is a system of agents constrained in their mutual interactions.  A group can be formalized in F in a flexible way: - the agents’ behaviour can be restricted to different degrees. - formalizing norms and regulations may enhance trustfulness of the group.

Example: formalizing groups Secretaries example: Formalize group G, of agents A, B, and C, where: B must operate (strictly) in accordance with A, while C has a certain degree of freedom.

Example: formalizing groups  G = (  DG,D G ) D G = ({v 2 },{},w G ) P v2 = {} v2v2 G G F F = (A,L,w L ) A = {  A,  B,  C,  G ) L = {(v 1,v 2 ), (v 2,v 3 ), (v 2,v 5 )} w L ((v 1,v 2 )) = w L ((v 2,v 5 )) = 0.5 w L ((v 2,v 3 )) = 0.7 v3v3 v4v4 B v3v3 v5v5 v6v6 C v5v5 v1v1 A v1v1

Example: semantics v2v2 G v3v3 v4v4 B v3v3 v5v5 v6v6 C v5v5 v1v1 A v1v Model of agent B: M v3 = {phoneRing, secretary, answerPhone} Model of agent C: M v5 = {phoneRing, secretary, not answerPhone} v 1  v 6 v5v5 v 4  v 1 v3v3

Adding roles to agents  A role is a set of obligations and rights that governs the behaviour of an agent occupying a particular position in the society.  The adoption of roles as tools for description and modelling in multi-agent systems has several benefits: Formal roles allow for generic models of agents with unknown internal states to derive information to predict agent behaviour. The use of roles promotes flexibility since different modes of interaction become possible among agents. Roles can adapt and evolve within the course of interactions to reflect the learning process of the agents. This allows for dynamic systems where the modes of interactions change.

Adding roles to agents  When an agent plays a role, the overall behaviour of the agent obeys the personality of the agent as well as its role. We call actor an agent playing a role: actor := The notion of actor is important to define situations where an agent plays some role by virtue of playing another role.

Adding roles to agents  Actors can be expressed in our framework in a modular, flexible way. role agent By assigning different weights w1 and w2, different types of behaviour can be modelled: w1 > w2: the actor will obey the norms of its role. w2 > w1: the personality of the actor will prevail its role. w1 = w2: the actor will operate in accordance to both its personality and role. i w1w2

Adding roles to agents  An actor can fulfill several roles depending on the context. i2 w3 w4 i w1 w2 i2 w3 w4 i w1 w2 Two agents playing the same role.One agent playing two distinct roles.

Adding roles to agents An actor w3 i w1w2 i2 w4 i w3 w2w1 An actor playing two roles Hierarchy of actors i2 w4 i w3 w2w1 w5

Engineering social agent societies  Roles are associated with a default context that defines the different social relationships and specifies the behaviour of the roles amongst each other.  Agents may interact in several, different contexts. Therefore, there is a need to consider different abstraction levels of contexts. More specific contexts can overturn the orderings between the roles of more general contexts, and establish a social relation among them.

Engineering social agent societies Def. Context Let Ag a set of agents and R a set of roles. A context is a pair (Ac,T) where Ac is a set of actors defined over Ag and R, and T is a theory defining the normative relations of the context. i2 i3 T i1 Context

Engineering social agent societies Def. Social agent society An agent society  is modelled as a tuple:  = (Ag,R,C) where Ag is a set of epistemic agents, R is a set of roles, and C is a set of contexts over Ag and R.  Modelling agent societies by means of the notion of contexts is general and flexible: several organizational structures can be expressed in terms of contexts.

Engineering social agent societies Agents may form subgroups inside a greater society of agents. These subgroups usually inherit the constraints of the greater society, override some of them and add their own constraints. Agent society

Agent societies based on confidence factors A society whose agents have the ability to associate a confidence factor: to the information incoming from other agents, to the information outgoing to other agents, and to its own information. Confidence factors can be used: to indicate the level of trust/confidence of an agent towards another agent, the relevance of the information of a source agent, the confidence that an agent has about its own information, the strength with which an agent supports its information towards another agent.

The structure of agent societies based on confidence factors is expressed by CDAGs. A directed acyclic graph with confidence factors (CDAG) is a tuple (V, E, ws, wi, wt, w) where: V is a set of vertices, E a set of edges containing the edge (v,v) for any vertex v  V, ws: V  Rself-confidence wi: E  Rconfidence given to the outgoing edge wt: E  Rconfidence given to the incoming edge w: E  Rfinal weight of the edge Agent societies based on confidence factors

CDAGs can be formalized via WDAGs as follows: Agent societies based on confidence factors a b c a b c a+a+ b+b+ c+c+ WDAG CDAG Suppose, for any edge, that w(e) = ( wi(e) + wt(e) ) / 2

Future work Other notions of prevalence can be accommodated in our framework: A voting system – based on the incoming edges of a certain node. Rules can be rejected because they are outweighed or outvoted by opting for the best positive or negative average. The logical framework can be represented within the theory of the agent members of the society. Doing so will empower the agents with the ability to reason about and to modify the structure of their own graph together with the general group structure comprising the other agents.

Conclusion  We have introduced a novel powerful and flexible logical framework to model structures of epistemic agents:  The declarative semantics is stable models based  The procedural semantics relies on a sequence of syntactical transformations into normal programs

The End ! J. A. LeiteJ. A. Leite, J. J. Alferes, L. M. Pereira, Combining Societal Agents' Knowledge, in L. M. Pereira, P. Quaresma (eds.), Procs. of the APPIA-GULP-PRODE'01 Joint Conf. on Declarative Programming (AGP'01), pp , Évora, Portugal, September 2001.J. J. AlferesL. M. PereiraCombining Societal Agents' Knowledge P. Dell'AcquaP. Dell'Acqua, J. A. Leite, L. M. Pereira, Evolving Multi-Agent Viewpoints - an architecture, in P. Brazdil, A. Jorge (eds.), Progress in Artificial Intelligence, 10th Portuguese Int. Conf. on Artificial Intelligence (EPIA'01), pp , Springer, LNAI 2258, Porto, Portugal, December 2001.J. A. LeiteL. M. PereiraEvolving Multi-Agent Viewpoints - an architecture P. Dell'AcquaP. Dell'Acqua, L. M. Pereira, A Logical Framework for Modelling eMAS, in V. Dahl, P. Wadler (eds.), Procs. Practical Aspects of Declarative Languages (PADL'03), New Orleans, Louisiana, USA, pp , Springer, LNCS 2562, 2003.L. M. PereiraA Logical Framework for Modelling eMASV. DahlP. WadlerPractical Aspects of Declarative Languages P. Dell'AcquaP. Dell'Acqua, Mattias Engberg, L. M. Pereira, An Architecture for a Rational Reactive Agent, in F. Moura-Pires, S. Abreu (eds.), Progress in Artificial Intelligence, Procs. 11th Portuguese Int. Conf. on Artificial Intelligence (EPIA'03), pp , Springer, LNAI, Beja, Portugal, December 2003.L. M. PereiraAn Architecture for a Rational Reactive Agent MORE...

Links Def. Link Given two WDAGs, D 1 and D 2, a link is an edge between a vertice of D 1 and a vertice D 2.

Joining WDAGs Def. Link Given two WDAGs D 1 and D 2, a link is an edge between vertices of D 1 and D 2. Def. WDAGs joining Given n WDAGs D i = (V i,E i,w i ), a set L of links, and a function w L : L  R +, the joining  ({D 1,…, D n },L,w L ) is the WDAG D=(V,E,w) obtained by the union of all the vertices and edges, and w(e) = w i (e) if e  E i w L (e) if e  L

Joined WMDLP Def. Joined WMDLP Let F=(A,L,w L ) be a logical framework. Assume that A={  1,…,  n } and every  i =(  Di,D i ). The joined WMDLP induced by F is the WDAG  =(  D,D) where: - D=  ({D 1,…, D n },L,w L ) and -  D =  i  Di

Stable models of WMDLP Def. Stable models of WMDLP Let  =(  D,D) be a WMDLP, where D=(V,E,w) and  D ={P v : v  V}. Let s  V. An interpretation M is a stable model of  at s iff: M = least( X  Default(X, M) ) where: Q =  v  s P v Reject(s,M) = { r  P v2 :  r’  P v1, head(r)=not head(r’), M |= body(r’), } X = Q - Reject(s,M) Default(X,M) = {not A :  (A  Body) in X and M |  Body } v 2  v 1 s