Combining agents into societies
Download
1 / 90

Combining agents into societies - PowerPoint PPT Presentation


  • 48 Views
  • Uploaded on

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. Goal and motivation Overview of MDLP ( M ulti- D imensional LP )

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Combining agents into societies' - kane


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Combining agents into societies

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
Summary

  • Goal and motivation

  • Overview of MDLP (Multi-Dimensional LP)

  • Combining inter- and intra-agent societal viewpoints

  • An architecture for evolving Multi-Agent viewpoints

  • A logical framework for modelling societies

  • Future work and conclusion


Goal

Explore the applicability of MDLP to represent multiple agents’ view of societal knowledge dynamics and evolution

  • 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.


Motivation 1
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
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 environment and societal evolution, and each agent’s own behavioural evolution

  • LP declaratively describes states well.

  • But LP must describe state transitions too.


Mdlp overview
MDLP overview

  • DLP synopsis

  • MDLP motivation

  • MDLP semantics

  • Multiple representational dimensions in a multi-agent system

  • Representation prevalence

  • Overview conclusions


Dynamic lp
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


Mdlp motivating example

L2

L1

L1

L2

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:

  • 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


Generalized logic programs
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 ¬ B1,…, Bk, not C1,…,not Cm

    not A ¬ B1,…, Bk, not C1,…,not Cm

  • The semantics is a generalization of SMs


Mdlp definition
MDLP - definition

  • Definition:

    A Multi-Dimensional Dynamic Logic Program, P, is a pair

    (PD, D)

    where:

    • D= (V, E) is an acyclic digraph

    • PD= { PV : v  V} is a set of generalized logic programs indexed by the vertices of D


Mdlp semantics 1

j1

j2

j3

s

MDLP - semantics 1

  • Definition:

    Let P=(PD,D) be a MDLP.

    An interpretation Ms is a stable model of the multi-

    dimensional update at state sV iff,

where Ps= is Pi:

Ms= least( [Ps – Reject(s, Ms)]  Defaults (Ps, Ms) )


Mdlp semantics 2

j1

j2

j3

s

MDLP - semantics 2

Ms= least( [Ps – Reject(s, Ms)]  Defaults (Ps, Ms) )

where:

Reject(s, Ms) =

{r Pi | r’ Pj , ijs, head(r)=not head(r’)  Ms |=body(r’)}

Defaults (Ps, Ms) =

{not A | $r Ps: head(r)=A  Ms |=body(r)}


Mdlp for agents
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

Hierarchy of agents

Temporal evolution of one agent

Two basic dimensions of a multi-agent system

How to combine these dimensions into one DAG ?


Equal role representation
Equal Role Representation

  • Assigns equal role to the two dimensions:


Equal role 2
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
Time Prevailing Representation

  • Assigns priority to the time dimension:


Time prevailing 2
Time Prevailing - 2

  • Useful in very dynamic situations, where competence is distributed, i.e. ¹ 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
Hierarchy Prevailing Representation

  • Assigns priority to the hierarchy dimension:


Hierarchy prevailing 2
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 are being developed to reduce the size of a MDLP (garbage collection).


Inter and intra agent relationships

A sub-agent Hierarchy

Inter- and Intra- Agent Relationships

  • The above representations refer to a community of agents

  • But they can be used as well for relating the several sub-agents of an agent


Intra and inter agent example
Intra- and Inter- Agent Example

  • Prevailing hierarchy for inter-agents

  • Prevailing time for sub-agents


Current work of overview
Current work of overview

  • A MINERVA agent:

    • Is based on a modular design

    • It has a common internal KB (a MDLP), concurrently manipulated by its specialized sub-agents

  • Every agent is composed of specialized sub-agents that execute special tasks, e.g.

    • reactivity

    • planning

    • scheduling

    • belief revision

  • goal management

  • learning

  • preference evaluation

  • strategy


Mdlp overview conclusions
MDLP overview conclusions

  • We’ve explored MDLP to combine knowledge from several agents and multiple dimensions

  • Depending 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
Evolving multi-agent viewpoints – one more overview

  • Our agents

  • Framework references

  • Mutually updating agents

  • MDLP synopsis

  • Agent language: projects and updates

  • Agent knowledge state and agent cycle

  • Example

  • An implemented example architecture

  • Future work


Our agents
Our agents

We propose a LP approach to agents that can:

  • ReasonandReact to other agents

  • Update their own knowledge, reactions, and goals

  • Interact by updating the theory of another agent

  • Decide whether to accept an update depending on the requesting agent

  • Capture the representation of social evolution


Updating agents
Updating agents

  • Updating agent:a rational, reactive agent that can dynamically change its own knowledge and goals

  • makes observations

  • reciprocally updates other agents with goals and rules

  • thinks (rational)

  • selects and executes an action (reactive)


M ulti d imensional l ogic p rogramming
Multi-Dimensional Logic Programming

  • 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.


New contribution
New contribution

  • To extend the framework of MDLP with integrity constraints and active rules.

  • To incorporate the framework of MDLP into a multi-agent architecture.

  • To make the DAG of each agent updatable.


DAG

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


Agent s language
Agent’s language

Atomic formulae:

Aobjective atoms

not Adefault atoms

i:Cprojects

iC updates

Formulae:

generalized rules

Li is an atom, an update or

a negated update

A ¬ L1 Ù...Ù Ln

not A ¬ L1 Ù...Ù Ln

Zj is a project

integrity constraint

false ¬ L1 Ù...Ù Ln Ù Z1 Ù...Ù Zm

active rule

L1 Ù...Ù Ln  Z


Projects and updates
Projects and Updates

A projectj:Cdenotes the intention of some agent i of proposing the updating the theory of agent j with C.

iCdenotes an update proposed by i of the current theory of some agent j with C.

fredC

wilma:C


Agents knowledge states
Agents’ knowledge states

  • Knowledge states represent dynamically evolving states of agents’ knowledge. They undergo change due to updates.

  • Given the current knowledge state Ps , its successor knowledge state Ps+1 is produced as a result of the occurrence of a set of parallel updates.

  • Update 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 language1
Agent’s language

A projecti:Ccan take one of the forms:

i:( A ¬ L1 Ù...Ù Ln )

i:( not A ¬ L1 Ù...Ù Ln )

i:( false ¬ L1 Ù...Ù Ln Ù Z1 Ù...Ù Zm )

i:( L1 Ù...Ù Ln  Z )

i:( ?- L1 Ù...Ù Ln )

i:edge(u,v)

i:not edge(u,v)


Initial theory of an agent
Initial theory of an agent

A multi-dimensional abductive LP for an agent  is a tuple:

T =  D, PD, A, RD

- D = (V, E) is a DAG s.t. ´V (inspection point of ).

- PD = {PV | vV} is a set of generalized LPs.

- A is a set of atoms (abducibles).

  • RD = {RV | vV} is a set of set of active rules.


The agent s cycle
The agent’s cycle

  • Every agent can be thought of as an abductive LP equipped with a set of inputs represented as updates.

  • The abducibles are (names of) actions to be executed as well as explanations of observations made.

  • Updates can be used to solve the goals of the agent as well as to trigger new goals.


Happy story example

alfredo´

judge

mother

father

alfredo

girlfriend

state 0

Happy story - example

DAG of Alfredo

inspection point of Alfredo

The goal of Alfredo is to be happy


Happy story example1
Happy story - example

alfredo´

judge

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}

mother

father

alfredo

girlfriend

abducibles

state 0


Happy story example2
Happy story - example

alfredo´

judge

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}

mother

father

alfredo

girlfriend

state 0


Agent theory
Agent theory

The initialtheoryof an agent  is a multi-dimensional abductive LP.

Let an updating programbe 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={U1,…, Us} is a sequence of updating programs.


Multi agent system
Multi-agent system

A multi-agent systemM={1s ,…, ns }at states 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
Happy story - 1st scenario

Suppose that at state 1, Alfredo receives

from the mother:

mother  (happy ¬ moveOut)

mother  (false ¬ moveOut Ù not getMarried)

mother  (false¬nothappy)

and from the father:

father  (happy ¬ moveOut)

father  (not happy ¬ getMarried)


Happy story 1 st scenario1
Happy story - 1st scenario

alfredo´

false¬nothappy

happy ¬ moveOut

false ¬ moveOut Ù not getMarried

judge

mother

father

happy ¬ moveOut

not happy ¬ getMarried

alfredo

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.

girlfriend

state 1


Happy story 2 nd scenario
Happy story - 2nd 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)


Happy story 2 nd scenario1
Happy story - 2nd scenario

alfredo´

custody(judge,mother)

judge

hasGirlfriend ¬

not happy  father : (?-happy)

not happy  mother : (?-happy)

getMarried Ù hasGirlfriend  girlfriend : propose

moveOut  alfredo : rentApartment

custody(judge,mother)  alfredo : edge(father,mother)

mother

father

alfredo

girlfriend

state 1


Happy story 2 nd scenario2
Happy story - 2nd scenario

alfredo´

Note that the internal update produces a change in the DAG of Alfredo.

judge

mother

father

Suppose that when asked by Alfredo, the parents reply in the same way as in the 1st scenario.

alfredo

girlfriend

state 2


Happy story 2 nd scenario3
Happy story - 2nd scenario

alfredo´

false¬nothappy

happy ¬ moveOut

false ¬ moveOut Ù not getMarried

judge

mother

father

happy ¬ moveOut

not happy ¬ getMarried

alfredo

Now, the advice of the mother prevails over and rejects that of his father.

girlfriend

state 2


Happy story 2 nd scenario4
Happy story - 2nd scenario

alfredo´

Thus, Alfredo gets married, rents an apartment, moves out and lives happily ever after.

judge

hasGirlfriend ¬

not happy  father : (?-happy)

not happy  mother : (?-happy)

getMarried Ù hasGirlfriend  girlfriend : propose

moveOut  alfredo : rentApartment

custody(judge,mother)  alfredo : edge(father,mother)

mother

father

alfredo

girlfriend

state 2


Syntactical transformation
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
Agent architecture

 s = P,A,R

Java

CC

InterProlog

(Declarativa)

InterProlog

(Declarativa)

Rational

P

Reactive

P+R

can abduce

cannot abduce

XSB Prolog

XSB Prolog


Agent architecture1

ActionH

External

Interface

UpdateH

ext.project

Updates

int.project

CC

projects

Rational

P

Reactive

P+R

Agent architecture

 s = P,A,R


Future work of overview
Future work of overview

  • At the agent level:

    • How to combine logical theories of agents expressed over graph structures.

    • How to incorporate other rational abilities, e.g., learning.

  • At the multi-agent system level:

    • Non synchronous, dynamic multi-agent system.

    • How to formalize dynamic societies of agents.

    • How to formalize the notion of organisational reflection.



Motivation
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

0.2

v1

v2

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 v1 and v2, the weights of v1 and v2 may resolve the conflict.

  • If the weights are the same both

    conclusions are false.

    (Or, two alternative conclusions

    can be made possible.)

[ a ]

v

0.1

{a}

{not a}


Weighted directed acyclic graphs
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 v1  v2 to indicate a path from v1 to v2.


Wmdlps
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 = {Pv : v  V} is a set of generalized logic programs indexed by the vertices of D.


Path dominance
Path dominance

Def. Dominant path

  • Let a1 an be a path with vertices a1,a2,…,an.

  • a1 an is a dominant path if

  • there is no other path b1,b2,…,bm such that:

    • b1= a1, bm= an, and

    • -  i, j such that ai= bj and w((ai-1,ai)) < w((bj-1,bj)).


Example path dominance
Example: path dominance

a4

Let w((a5,a4)) < w((a3,a4)) .

Then,

a1, a2 , a3, a4 is a dominant path.

a3

a5

a2

a1


Prevalence

an

an

.

.

.

ai

.

.

.

a2

bm

ai-1

a1

.

.

.

.

.

.

b1

a1

Prevalence

Def. Prevalence wrt. a vertex an

Let a1 an be a dominant path with vertices a1,a2,…,an. Then,

- every vertex aiprevails a1 wrt. an (1< i  n).

- if there exists a path b1 ai with vertices b1,…,bm,ai and

w((ai-1,ai)) < w((bm,ai)), then every vertex bjprevails a1 wrt. an.

a1 ai

a1 bj

an

an


Example formalizing agents
Example: formalizing agents

  • Epistemic agents can be formalized via WMDLPs.

  • 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


Example formalizing agents1

A

v1

v1

B

v3

v3

C

v4

v5

v5

v6

Example: formalizing agents

A = (DA,DA)

DA = ({v1},{},wA)

Pv1 = {answerPhone  secretary  phoneRing}

B = (DB,DB)

DB = ({v3,v4},{(v4,v3)},wB)

wB((v4,v3)) = 0.6

Pv3 = {}

Pv4 = {phoneRing, secretary, not answerPhone}

C = (DC,DC)

DC = ({v5,v6},{(v6,v5)},wC)

wC((v6,v5)) = 0.6

Pv5 = {} and Pv6 = Pv4

A

B

C


Logical framework f
Logical framework F

Def. Logical framework F

  • A logical framework F is a tuple (A, L, wL ) where:

    • A={1,…,n} is a set of WMDLPs

    • L is a set of links among the i

    • and wL : L  R+.


Semantics of f

s

v2

v1

v2 v1

s

Semantics of F

  • Declarative semantics of F is stable model based.

Idea:

The knowledge of a vertex v1overrides the knowledge of a vertex v2 wrt. a vertex s iff v1 prevails v2 wrt. s.

Example:

Pv1= {answerPhone}

Pv2= {not answerPhone}

if then Ms={answerPhone}


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 Cs .

  • 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
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
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
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 groups1

A

v1

v1

B

v3

v3

G

C

v2

v4

v5

v5

v6

Example: formalizing groups

F = (A,L,wL)

A = {A,B,C,G )

L = {(v1,v2), (v2,v3), (v2,v5)}

wL((v1,v2)) = wL((v2,v5)) = 0.5

wL((v2,v3)) = 0.7

G = (DG,DG)

DG = ({v2},{},wG)

Pv2 = {}

G

F


Example semantics

A

v1

v1

v1 v6

v5

B

v3

v3

G

0.5

v4 v1

v3

0.5

0.6

C

v4

v2

0.7

v5

v5

0.6

v6

Example: semantics

Model of agent B: Mv3= {phoneRing, secretary, answerPhone}

Model of agent C: Mv5= {phoneRing, secretary, not answerPhone}


Adding roles to agents
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 agents1
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 := < role, agent >

    actor := < 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 agents2
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

w1

w2


Adding roles to agents3

i

i2

i

i2

w1

w4

w1

w4

w2

w3

w2

w3

Adding roles to agents

  • An actor can fulfill several roles depending on the context.

Two agents playing the same role. One agent playing two distinct roles.


Adding roles to agents4

w5

i2

w1

w2

i

i2

i

w1

w2

w1

w2

w3

w4

i

w3

w3

w4

Adding roles to agents

An actor

An actor playing two roles

Hierarchy of actors


Engineering social agent societies
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 societies1
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.

T

i1

i2

i3

Context


Engineering social agent societies2
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 societies3
Engineering social agent societies

Agent society

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 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.


Agent societies based on confidence factors

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R self-confidence

  • wi: E R confidence given to the outgoing edge

  • wt: E R confidence given to the incoming edge

  • w: E R final weight of the edge


0.7

a

a

0.3

0.8

0.6

0.75

0.9

0.7

0.7

0.6

0.9

c

b

c

b

a+

0.6

0.9

c+

b+

Agent societies based on confidence factors

CDAGs can be formalized via WDAGs as follows:

CDAG

WDAG

Suppose, for any edge, that

w(e) = ( wi(e) + wt(e) ) / 2


Future work
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
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 !

MORE ...

J. 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. 313-327, Évora, Portugal, September 2001.

P. 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. 169-182,  Springer, LNAI 2258, Porto, Portugal, December 2001.

P. 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. 241-255, Springer, LNCS 2562, 2003.

P. 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.379-393,  Springer, LNAI,  Beja, Portugal,  December 2003.


Links
Links

Def. Link

Given two WDAGs, D1 and D2, a link is an edge between a vertice of D1 and a vertice D2.


Joining wdags
Joining WDAGs

Def. Link

Given two WDAGs D1 and D2, a link is an edge between vertices of D1 and D2.

Def. WDAGs joining

Given n WDAGs Di = (Vi,Ei,wi), a set L of links, and a function

wL : L  R+, the joining({D1,…, Dn},L,wL) is the WDAG D=(V,E,w) obtained by the union of all the vertices and edges, and

w(e) =

wi(e) if eEi

wL(e) if eL


Joined wmdlp
Joined WMDLP

Def. Joined WMDLP

  • Let F=(A,L,wL ) be a logical framework.

  • Assume that A={1,…,n} and every i=(Di,Di).

  • The joined WMDLP induced by F is the WDAG =(D,D) where:

    • - D= ({D1,…, Dn},L,wL) and

    • - D= iDi


Stable models of wmdlp

v2 v1

s

Stable models of WMDLP

Def. Stable models of WMDLP

Let =(D,D) be a WMDLP, where D=(V,E,w) and D={Pv : 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  sPv

Reject(s,M)= { r  Pv2 : r’ Pv1, 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}


ad