150 likes | 268 Vues
This work discusses the formal foundations of stability in Multi-Agent Systems (MAS) and presents a framework for modeling and verifying properties through stable sets. The authors delve into the characteristics of "well-behaved" MAS, detailing the conditions under which agents can coordinate effectively. Examples illustrate the practical implications of stable sets, highlighting both positive and negative scenarios. The conclusions emphasize the importance of this approach for future research in complex system interactions, enhancing our understanding of agent-based interactions in various environments.
E N D
Stable Multi-Agent Systems Andrea Bracciali, Paolo Mancarella, Kostas Stathis, Francesca Toni, Informatica, PISA. Informatica, PISA. Computing, CITY. Computing, IMPERIAL. ESAW’04, Toulouse 22-10-04.
Motivation; I/O Agent Semantics; Stable Sets: Examples of stable MAS; MAS Properties; Stable MAS construction; Conclusions and future work. Outline
Previous work on Logic Programming (LP) to specify agents: Toni & Stathis’ ESAW’02 Access-as-you-need framework; Q: What does it take to build an abstract model of a MAS (in a way similar to the Tp op. of van Emden & Kowalski for LP)? Motivation Current work (Bracciali et al DALT’04) based on the need to model declaratively a MAS. Approach: • has formal foundations; • is abstract (language independent); • is suitable to express and verify properties.
ESAW’02: Access-as-you-need Real Social Environment I must join a society to get a resource for the user Electronic Social Environment Artificial Society 1 Artificial Society n Artificial Society 2 Personal Agent
ESAW’02: Access-as-you-need (cntd) Agent a: Pa: get(R, T) request(a,b,R, T') accept(b,a,R,T'') T'' T' T Aa: request(a, X, R, T), accept(X,a,R,T) ICa: Agent b: Pb: have(r) Ab: accept(b,X,R,T), request(X, b, R, T) ICc: request(X,b,R,T) have(R) T'[accept(b,X,R,T') T' T] actions observables How do we model a MAS of this kind abstractly?
Agents: 1..n; World: W, with E(W ) all possible events in W. Each agent i is equipped with; set of all possible actions A(i); set of all possible observations O(i); s.t. O(i) A(j) E(W ) A(i) A(j) i j (e.g. agent i cannot act pretending to be j). Multi-agent System Assumptions i j
agent i plan A(i) “Mental State” (beliefs) 0 M public in out Observations O(i) Actions A(i) private I/O Agent Semantics
Semantics for single agent i is then given as: Si(0, in) = <M, out> M may be when: agent i is unable to plan or achieve a goal; or the observations of agent i are inconsistent with the constraints it wants to satisfy (e.g. rely on agent a1 for a resource that a1 does not posses); Inconsistent agents are required not to commit to any action. I/O Agent Semantics (cntd)
A MAS = <A, W> is stable if there exists a = iouts.t. for eachiA Si(-i W i, i0) = <Mi, iout> where -i = (j) (actions by agents other than i); (j)= A(j) (actions by agent j); W i = W O(i) (happened events observable by i). The set is called astable setforMAS. Stable MAS iA jA, ij
Agent 1 moves odd-numbered blocks and has goal mvToB. Agent 2 moves even-numbered blocks and has goal mvToC. Example of Stable Set 1 1 2 = {1ToB1, 2ToC2, 3ToB1} is a stable set. 2 3 1 A B C S1({2ToC2} U W 1, {1ToB1, 3ToB1}) = <M1, {1ToB1, 3ToB1}> S2({1ToB1, 3ToB1} U W 2, {2ToC2}) = <M2, {2ToC2}> with mvToB M1 and mvToC M2.
Agent 1 intends to move block 1 to B. Agent 2 intends to move block 2 to B. Example of Unstable Set 2 1 1 2 A B C No stable set, as agents become inconsistent.
What can we do with stable sets? • A MAS admitting stable sets is “good”/”well-behaved”; • DALT’04: properties of MAS can be specified in terms of stable sets, e.g. • A successful MAS is a stable MAS whose every agent is successful (it achieves its goals); • A robust MAS is a successful MAS such that, taking away any agent in it, the resulting MAS is still successful. • How can we guarantee the existence of stable sets for MAS? How can we construct stable sets?
GivenMAS = <A, W> and , let A+be the set of all agents i in A s.t.Si(-i W i, (i)) < , {}> A- = A - A+ Then TA(< W> A) = <Si(-i W i, (i))>A if A = A+ = <Si(-i W i, (i))>A+<, {}>A-otherwise Constructing Stable Sets: One Step Operator
Constructing Stable Sets: concrete semantics of a MAS Given • MAS = <A, W> and • <0>A(tuple of initial plans) the concrete semantics of MAS is given by applying (possibly infinitely many times) TA,starting from <0W >A : TA (<0 W >A ), TA (TA (<0 W >A )), … Conjecture: the concrete semantics of a MAS is stable, given any tuple of initial plans.
Conclusions & Future work • A language independent abstract semantics for agents. • Suitable to model and verify properties of agents & MAS. • Relies on the notion of stability to approximate well-behavedness (shown examples both positive and negative). • Initial steps towards a formal methodology. • Future work involves: • the application of the framework to more complex scenaria; • use stability to prove properties of these scenaria.