combining agents into societies luís moniz pereira centro de inteligência artificial – centria...

90
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

Upload: jewel-bennett

Post on 17-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

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

Combining agents into societies

Luís Moniz Pereira

Centro de Inteligência Artificial – CENTRIAUniversidade Nova de Lisboa

DEIS, Università di Bologna, 22 Marzo 2004

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

Summary

Goal and motivationOverview of MDLP (Multi-Dimensional LP)

Combining inter- and intra-agent societal viewpoints

An architecture for evolving Multi-Agent viewpoints

A logical framework for modelling societiesFuture work and conclusion

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

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

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

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

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

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.

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

MDLP overview

DLP synopsis

MDLP motivation

MDLP semantics

Multiple representational dimensions in a multi-agent system

Representation prevalence

Overview conclusions

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

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

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

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:

L2 L1

L1 L2

How to combine these two dimensions of knowledge precedence?

DLP with Multiple Dimensions (MDLP)

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

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

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

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

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

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

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

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 sV iff,Ms= least( [Ps – Reject(s, Ms)] Defaults (Ps, Ms) )

where Ps= is Pi :

s

j3j2

j1

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

MDLP - semantics 2

where:

Reject(s, Ms) =

{r Pi | r’ Pj , ijs, head(r)=not head(r’) Ms

body(r’)}

Defaults (Ps, Ms) =

{not A | r Ps : head(r)=A Ms

body(r)}

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

s

j3j2

j1

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

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 ?

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

Two basic dimensions of a multi-agent system

®

¹

°

º ¯

Hierarchy of agents

¯¯ 0 ¯ 1 ... ¯ c

Temporal evolution of one agent

How to combine these dimensions into one DAG ?

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

Equal Role Representation

Assigns equal role to the two dimensions:

®'

...

®0

¹ 0

° 0

º 0 ¯ 0

0

®1

¹ 1

° 1

º 1 ¯ 1

1

®c

¹ c

° c

º c ¯ c

c

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

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

®'

...

®0

¹ 0

° 0

º 0 ¯ 0

0

®1

¹ 1

° 1

º 1 ¯ 1

1

®c

¹ c

° c

º c ¯ c

c

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

Time Prevailing Representation

Assigns priority to the time dimension:

®'®0 ®1 ®c

...

®0

¹ 0

° 0

º 0 ¯ 0

®0

®1

¹ 1

° 1

º 1 ¯ 1

®1

®c

¹ c

° c

º c ¯ c

®c

...

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

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

®'®0 ®1 ®c

...

®0

¹ 0

° 0

º 0 ¯ 0

®0

®1

¹ 1

° 1

º 1 ¯ 1

®1

®c

¹ c

° c

º c ¯ c

®c

...

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

Hierarchy Prevailing Representation

Assigns priority to the hierarchy dimension:

®'®

¹

°

º ¯

°

° 0

° 1

...

° c

¯¯ 0 ¯ 1 ... ¯ c

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

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

®'®

¹

°

º ¯

°

° 0

° 1

...

° c

¯¯ 0 ¯ 1 ... ¯ c

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

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

®d

®b

®a

®e

A sub-agent Hierarchy

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

Intra- and Inter- Agent Example

Prevailing hierarchy for inter-agents

Prevailing time for sub-agents

®

...

...

®'®

¹

°

º ¯

°

° 0

° 1

...

° c

®d

®b

®a

®e

0®d

®b

®a

®e

1®d

®b

®a

®e

c

¯¯ 0 ¯ 1 . . . ¯ c

®0 ®1 ®c. . .

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

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

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

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

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

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

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

Our agents

We propose a LP approach to agents that can:

Reason and React to other agentsUpdate their own knowledge, reactions, and

goalsInteract by updating the theory of another agentDecide whether to accept an update depending

on the requesting agentCapture the representation of social evolution

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

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)

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

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.

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

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.

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

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.

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

Agent’s language

Atomic formulae:

A objective atoms

not A default atoms

i:C projects

iC updates

Formulae: Li is an atom, an update or a negated update

active rule

generalized rules

Zj is a project

integrity constraint

false L1 Ln Z1 Zm

A L1 Ln

not A L1 Ln

L1 Ln Z

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

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.

iC denotes an update proposed by i of the current theory of some agent j with C.

wilma:C

fredC

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

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.

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

Agent’s language

A project i:C can take one of the forms:

i : ( A L1 Ln )

i : ( L1 Ln Z )

i : ( ?- L1 Ln )

i : ( not A L1 Ln )

i : ( false L1 Ln Z1 Zm )

i : edge(u,v)

i : not edge(u,v)

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

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 | vV} is a set of generalized LPs.

- A is a set of atoms (abducibles).

- RD = {RV | vV} is a set of set of active rules.

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

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.

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

Happy story - example

inspection point of Alfredo

alfredo

judge

mother father

girlfriend

alfredo´

state 0

The goal of Alfredo is to be happy

DAG of Alfredo

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

Happy story - example

alfredo

judge

mother father

girlfriend

alfredo´

hasGirlfriend not happy father : (?-happy)not happy mother : (?-happy)getMarried hasGirlfriend girlfriend : proposemoveOut alfredo : rentApartmentcustody(judge,mother) alfredo : edge(father,mother)

{moveOut, getMarried}

state 0

abducibles

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

Happy story - example

alfredo

judge

mother father

girlfriend

alfredo´

state 0

hasGirlfriend not happy father : (?-happy)not happy mother : (?-happy)getMarried hasGirlfriend girlfriend : proposemoveOut alfredo : rentApartmentcustody(judge,mother) alfredo : edge(father,mother)

{moveOut, getMarried}

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

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

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

Multi-agent system

A multi-agent system M={1s ,…, 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.

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

Happy story - 1st 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)

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

happy moveOutfalse moveOut not getMarried

alfredo

judge

mother father

girlfriend

alfredo´

state 1

happy moveOutnot happy getMarried

Happy story - 1st 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

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

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)

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

custody(judge,mother)

Happy story - 2nd scenario

alfredo

judge

mother father

girlfriend

alfredo´

state 1

hasGirlfriend not happy father : (?-happy)not happy mother : (?-happy)getMarried hasGirlfriend girlfriend : proposemoveOut alfredo : rentApartmentcustody(judge,mother) alfredo : edge(father,mother)

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

Happy story - 2nd scenario

alfredo

judge

girlfriend

alfredo´

state 2

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

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

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

Happy story - 2nd scenario

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

alfredo

judge

girlfriend

alfredo´

state 2

happy moveOutfalse moveOut not getMarried

happy moveOutnot happy getMarried

mother father

false not happy

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

Happy story - 2nd 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 : proposemoveOut alfredo : rentApartmentcustody(judge,mother) alfredo : edge(father,mother)

mother father

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

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.

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

Agent architecture

RationalP

ReactiveP+R

CC

s = P,A,R

can abduce

XSB Prolog XSB Prolog

cannot abduce

InterProlog(Declarativa)

InterProlog(Declarativa)

Java

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

Agent architecture

RationalP

ReactiveP+R

CC

s = P,A,R

UpdateH

projects

ExternalInterface

ext.projectUpdates

ActionH

int.project

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

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.

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

A logical framework for modelling

eMAS

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

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.

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

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 bothconclusions are false.

(Or, two alternative conclusionscan be made possible.)

v0.1

v1 v2

0.2

{a} {not a}

[ a ]

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

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.

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

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.

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

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

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

Example: path dominance

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

Then,

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

a1

a2

a3

a4

a5

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

Prevalence

a1

an

a2

...

a1

ai-1

an

ai

...

...bm

b1

...

Def. Prevalence wrt. a vertex an

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

- every vertex ai prevails 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 bj prevails a1 wrt. an.

a1 aian

a1 bjan

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

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.

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

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

v3

v4

B

v3

v5

v6

C

v5

v1

A

v1

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

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

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

Semantics of F

Declarative semantics of F is stable model based.

v2

v1

s

Idea:The knowledge of a vertex v1 overrides 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}

v1v2

s

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

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.

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

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.

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

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.

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

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.

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

Example: formalizing groups

G = (DG,DG)

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

Pv2 = {}

v2

G

GF

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

v3

v4

B

v3

v5

v6

C

v5

v1

A

v1

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

Example: semantics

v2

G

v3

v4

B

v3

v5

v6

C

v5

v1

A

v1

0.5

0.5

0.6

0.6

0.7

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

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

v1 v6v5

v4 v1v3

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

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.

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

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.

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

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.

iw1 w2

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

Adding roles to agents

An actor can fulfill several roles depending on the context.

i2

w3w4

i

w1w2

i2

w3w4

iw1

w2

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

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

Adding roles to agents

An actor

w3

i

w1 w2

i2

w4

i

w3

w2w1

An actor playing two roles

Hierarchy of actors

i2

w4

i

w3

w2w1

w5

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

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.

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

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

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

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.

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

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

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

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.

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

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: VR 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

Agent societies based on confidence factors

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

CDAGs can be formalized via WDAGs as follows:

Agent societies based on confidence factors

a

b c0.6 0.9

0.7

0.9

0.3

0.7

0.8

a

b c

0.6

0.9

0.7

0.6

0.75

a+

b+ c+

WDAG

CDAG

Suppose, for any edge, that

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

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

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.

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

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

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

The End !

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.

MORE ...

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

Links

Def. Link

Given two WDAGs, D1 and D2, a link is an edge

between a vertice of D1 and a vertice D2.

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

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 eEi

wL(e) if eL

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

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

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

Stable models of WMDLP

Def. Stable models of WMDLP

Let =(D,D) be a WMDLP, where D=(V,E,w) and

D={Pv : vV}. Let s V.

An interpretation M is a stable model of at s iff:

M = least( X Default(X, M) ) where:

Q = v s Pv

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 : (ABody) in X and M | Body }

v2 v1s