luís moniz pereira centro de inteligência artificial - centria
DESCRIPTION
A logic Based Asynchronous Multi-Agent System. Pierangelo Dell’Acqua Dept. of Science and Technology - ITN Linköping University, Sweden. Ulf Nilsson Dept. of Computer and Information Science - IDA Linköping University, Sweden. Luís Moniz Pereira - PowerPoint PPT PresentationTRANSCRIPT
Luís Moniz Pereira
Centro de Inteligência Artificial - CENTRIA
Universidade Nova de Lisboa, Portugal
Pierangelo Dell’Acqua
Dept. of Science and Technology - ITN
Linköping University, Sweden
Ulf Nilsson
Dept. of Computer and Information Science - IDA
Linköping University, Sweden
Contribution
The paper presents an asynchronous multi-agent system for logic based agents, and provides its semantics.
The interaction among agents is expressed via a transition rule system that characterizes the global behaviour of the system.
Our agents
We proposed a LP approach to agents that can:
Reason and React to other agentsPrefer among possible choicesUpdate their own knowledge, reactions, and goals Interact by updating the theory of another agentDecide whether to accept an update depending on the
requesting agentAbduce hypotheses to explain observations
Framework
This agent framework builds on the works:
Dynamic Logic Program - J. J. Alferes et al KR’98
Updating Agents - P. Dell’Acqua & L. M. Pereira MAS’99
Updates plus Preferences - J. J. Alferes & L. M. Pereira JELIA’00
A compilation of Updates plus Preferences - J. J. Alferes et al JELIA’00
Enabling agents to update their KB
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)
Agent’s language
Atomic formulae:
A objective atoms
not A default atoms
:C projects
updatesC
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
Projects and updates
A project 2:C denotes the intention of some agent 1 of proposing the updating the theory of agent 2 with C.
denotes an update proposed by 1 of the current theory of some agent 2 with C.
wilma:C
1C
fredC
Example: active rules
A 2: not B
B 1: C
Consider the following active rules in the theory of an agent 1.
Agents’ language
A project :C can take one of the forms:
Note that a program can be updated with another program, i.e., any rule can be updated.
: ( A L1 Ln )
: ( L1 Ln Z )
: ( ?- L1 Ln )
: ( not A L1 Ln )
: ( false L1 Ln Z1 Zm )
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.
Abductive agents
The initial theory of an agent is a tuple (P,A,R):- P is a set of generalized rules and integrity constraints.- A is a set of abducibles.- R is a set of active rules.
An updating program is a finite set of updates.
Let 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.
Semantics of abductive agents
Let s = (T,U) and be the hypotheses assumed
by at state s.
An abductive stable model of at state s with hypotheses is a stable model of the program that extends T to contain:
- the updates in U,
- the rules whose updates (in U) are neither distrusted nor rejected,
- the projects of active rules with true body, and
- the hypotheses in .
Example: abductive agent
Consider the following theory of an agent 2.
AB A
T = (P,A,R) = (P,{},{}) and P =
20 = (T,{}) M = {A, B}
21 = (T,{U1}) with U1 = { 1not B }
M = {A, not B, 1not B}
M is the unique abductive stable model of at state s with hypotheses ={}
Multi-agent systems
A MAS consists of a number of agents acting concurrently and transition rules that characterize the global behaviour of the system.
The interaction among the agents is asynchronous and modelled via buffers.
A buffer [U1,…,Ui] is a sequence of updating programs U1,…,Ui (i 0).
Each agent is equipped with a buffer s [U1,…,Ui ]
Multi-agent systems
A multi-agent system consists of a number of
abductive agents 1,…,n acting concurrently:
= 1s1 [ U1,…,Ui ] | … | n
sn [ V1,…,Vj ]
together with the transition rules:
EXTP, INTP and INCUP.
characterizes a fixed society of evolving agents.
Transition rules - EXTP
EXTP to execute external projects of 1:
if (2:C) P1
where 12 and Vj+1 ={ 1C | for every 2:C P1 }
1s1 [ U1,…,Ui ] | 2
s2 [ V1,…,Vj ]
1s1 [ U1,…,Ui ] | 2
s2 [ V1,…,Vj, Vj+1 ]
Let Pi be the set of executable projects of an agent i
Transition rules - INTP
INTP to execute internal projects of :
if (:C) P
where Ui+1 ={ C | for every :C P }
s [ U1,…,Ui ]
s [ U1,…,Ui, Ui+1 ]
Transition rules - INCUP
INTP to incorporate updates into from its buffer
Let s = (T,{U1,…,Us})
where i1 and s+1 = (T,{U1,…,Us,Us+1}) with Us+1=V1
s [ V1,…,Vi ]
s+1 [ V2,…,Vi ]
Multi-agent system at state s
A multi-agent system at state 0 (initial configuration):
0 = 1
0 [ ] | … | n0 [ ]
A multi-agent system at state s:
s = 1s1 [ U1,…, Ui ] | … | n
sn [ V1,…, Vj ]
where s= s1+…+sn
Multi-agent system at state s
The MAS remains at the same state when the
transition rule INTP or EXTP is applied.
If INCUP is employed (by an agent i), then the MAS
s = 1s1 [ U1,…, Ui ] | … | i
si [T1, T2,…, Tk ] | … | nsn [ V1,…, Vj ]
moves to the next state:
s+1 = 1
s1 [ U1,…, Ui ] | … | isi+1 [ T2,…, Tk ] | … | n
sn [ V1,…, Vj ]
Semantics of multi-agent systems
The declarative semantics S of MAS characterizes the relationship among the agents in and how the system evolves.
The declarative semantics Ss of at state s is the set
of sets Misi of all the abductive stable models of every
agent i in at state si with hypotheses i :
Ss = { M1
s1 ,…, Mnsn }
Executable projects
The set P of executable projects of an agent
contains the projects that occur in every abductive
stable model of at state s with hypotheses .
Example: MAS
Consider the following two agents 1 and 2.
AB AT2 =
A
A 2: not B
B 1: C
T1 =
Example: MAS
0 = 1
0 [ ] | 20 [ ]
0 = 1
0 [ ] | 20 [ U1 ] with U1 = {1not B}
1 = 1
0 [ ] | 21 [ ]
by EXTP
by INCUP
Example: MAS
0 = 1
0 [ ] | 20 [ ]
M10 = { {A, 2: not B} } P1 = {2: not B }
M20 = { {A, B} } P2 = { }
S0 = {M1
0, M20}
EXTP is applicable
Example: MAS
S0 = {M1
0, M20}
0 = 1
0 [ ] | 20 [ U1 ] with U1 = {1not B}
INCUP is applicable
Example: MAS
M10 = { {A, 2: not B} }
M21 = { {A, not B, 1not B} }
S1 = {M1
0, M21}
1 = 1
0 [ ] | 21 [ ]
Future work
Ongoing implementation of our agent framework:
- its logical parts (logical reasoning, updating, preferring, etc.) are implemented in XSB Prolog, and
- its non-logical parts are implemented in Java.
- InterProlog is then used to interface XSB and Java.
How to represent organisational structures, and how to animate them with agents in a way that each agent will have a view of the organisational structure and the externally visible events.
Investigate whether there are invariants and other properties of the MAS that can guarantee the behaviour of the entire system.