1 / 28

Checking Properties of Multi-Agent Systems Behavior

Checking Properties of Multi-Agent Systems Behavior. Michael Dekhtyar (Tver State University, Russia) Alexander Dikovsky (University of Nantes, France) Mars Valiev (Keldysh Inst. of Appl. Mathematics, Moscow, Russia). Outline. Informal Example

tex
Download Presentation

Checking Properties of Multi-Agent Systems Behavior

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Checking Properties of Multi-Agent Systems Behavior Michael Dekhtyar (Tver State University, Russia) Alexander Dikovsky (University of Nantes, France) Mars Valiev (Keldysh Inst. of Appl. Mathematics, Moscow, Russia)

  2. Outline • Informal Example • Multi-Agent Systems Behavior – General Framework • Agent Architecture • Multi-Agent System Semantics • Logics of Properties • Classes of Multi-Agent Systems • Results • Future Work

  3. Example: Academic Recruiting • Candidates: • cand(Name, Area, Merit, Grants) • Area: lp (logic programming), • ai (AI), mm (Multimedia), • cl (Comp. Linguistics) • Merit: Scientific Accomplishments • (integer) • Grants: $$$ • Recruiting Committee (RC) • 5 members + secretary • Represented by agents • m0,m1,m2,m3,m4, s • Strategies: • m0 (boss): lp > ai > mm > cl • best Grants • m1: votes as m0 • m2: votes against m0 • best Grants • m3: new Area • best Merit • m4: votes with majority; • against m0 • Recruitment History • selected(Name, Area)

  4. Example: Behavior properties no_consecutive_lp : “if an lp-candidate has been selected in a recruitment cycle, then a candidate with different area of expertise will be selected in the next cycle” worst_selected : “it is possible that the candidate worst in Merits and Grants will be selected in each cycle” Question: How can we verify such properties of a multi-agent system?

  5. A - transition relation on the set of all global states  A A A . . . S0 S1 S2 T(A,S0)  A A A . . . S’1 S’2 A  . . . Behavior of Multi-Agent Systems A = <a1 ,…, am > - agent system Global state of A = Union of local states of its agents ai Behavior of A on S0 = set T(A,S0) of trajectories induced by A which start in S0 Properties of behavior = Properties of T(A,S0)

  6. Behavior of Multi-Agent Systems: Languages Languages for the properties of behavior – temporal logics: PTL, CTL, CTL*, -calculus. Linear time operators: X  - “nexttime ”;  U  - “ until ” F  - “ sometimes ”; G - “always ”. Branchingquantifiers LTL and LTL: () - “ is valid on some trajectory”; () - “ is valid on all trajectories”.

  7. Model-checking problem: M |  ? explicitly abstract points M States implicitly structured MA-BEHAVIOR problem Given multiagent system A, its initial global state S0 and a formula , decide whether  is valid on T(A,S0) . T(A,S0) |  ? QUESTION: How specific features of multiagent systems affect the complexity of MA-BEHAVIOR problem?

  8. Agent architecture Simplified version of IMPACT architecture (V.S.Subrahmanian, et al. “Heterogeneous Agent Systems”, MIT Press, 2000) a=<Pe, Pm, Pact AB, Pr, Act> Pe– extensional signature = scheme of internal data base Ia; Pm – message signature; message box MsgBoxa: set of pairs (Sender_agent, Message) Message: ground atom in the signature Pm; Pact – intensional action signature; AB– action base; specifies the effects of actions; Pr – agent’s action policy; defines the set of possible actions; Act– action selection strategy; selects some subset of possible actions to execute.

  9. Agent Action Base • Action base AB – set of action specifications • <(X1, …,Xk), ADD(),DEL(),SEND()> • (X1, …,Xk) - action atom, • ADD() – list of atoms which should be added to DB, • DEL() – list of atoms which should be deleted from DB, • SEND()– list of pairs (Target-agent, Message) withthemessagesthat should be sent to other agents. (atoms in all three lists can include variables X1, …,Xk)

  10. Agent Programs • Agent program Pr – logic program • Clauses: H :- L1, …, Ln(n  0) • H=(t1,...,tk) is the pattern (intensional) action atom , • Li - action literal, • - (extensional) internal DB literal, • - Received(Source_agent, Message), • - ¬ Received(Source_agent, Message), • - built-in predicate call q(t1,…)(computable in pol. time) • Pr is safe and stratified !

  11. Possible Actions • Local State of agent a: • IMa=(Ia, MsgBoxa) • Current Program: • Prst = Pr  {p:- . | p Ia}  {Received(Agent_source,Message):- . | • (Agent_source, Message)  MsgBoxa } • Program Semantics: • Sem(Pr)(Ia,MsgBoxa) - set Mactof ground • action atoms in the minimal model Mst of Prst Note: minimal model Mst is unique for stratified logic programs; can be computed in polynomial time from groundization gr(Prst) of the program Prst.

  12. deterministic Agent One-step Semantics Action selection strategyAct chooses (or guesses) in polynomial time subset Act(Mact) Mactof actions to execute. Deterministic strategy – function. Nondeterministic strategy – relation. Examples. Total strategy: Acttot(M)=M Priority strategy: Act<(M)={m M | ¬ m1 M ( m1 < m)} Unit choice: Actun(M)={ {m} | m M } Spontaneous: Actsp(M)={ {M1} | M1 M} nondeterministic

  13. New state EFFa(CA,Ia) EFFa(CA,b) Concurrent Executions of Actions Agent a in state IMa = (Ia, MsgBoxa) executes set CA of actions: Each pCA is (X1,…,Xk) for some <(X1, …,Xk), ADD(),DEL(),SEND()>  ABand some ground unifier . (i) For each pCAdelete from Ia all atoms of DEL()  ; (ii) For each pCAadd to Ia all atoms of ADD()  ; (iii) For each pCA, b a, s.t. (b, Message)  SEND() sendMessage from a to b.

  14. A S’ S S’= <(I’a1,MsgBox’a1),…,(I’am,MsgBox’am)> Global States A = {a1,…,am} S = <(Ia1,MsgBoxa1),…,(Iam,MsgBoxam)> State Transition (One Step Semantics)

  15. Semantics of a Multi-Agent System Computing New Global State: compute potentially executable actions 1. FOR EACH a A DO Maact = Sem(Pra)(Ia,MsgBoxa); select actions to execute 2. FOR EACH a A DO GET CAa FROM Acta(Maact); 3. FOR EACH a A DO MsgBox’a := ; empty message box 4. FOR EACH a A DO I’a :=EFFa(CAa,,Ia); compute new : -local DB states; -message boxes; FOR EACH ba DO MsgBox’b :=MsgBox’b EFFa(CAa,,b).

  16. Recruiting Example (cont’d) system RC ={m0,m1,m2,m3,m4,s} Messages: • pref( Name ): committee member preferences • (between the members) • vote(Name) : committee member vote • (sent to the secretary) Agents mi ( 0 i  3): ABi contains the single action acti(C) with ADDi = DELi = , SEND0={(s,vote(C)),(mi,pref(C)) | i=1,2,3,4} and SENDj={(s,vote(C)),(m4,pref(C)) | j=1,2,3 }.

  17. Recruiting Example (cont’d) Agent m4: m4 keeps the preferences of other agents in his personal Db as: prefers(Member,Candidate). AB4 : record(Mb,Cd): ADD={prefers(Mb,Cd)}, DEL=SEND=  ; act4(C): ADD4 =  , DEL4 = {prefers(Mb,Cd) | for all Mb,Cd } and SEND4= {(s,vote(C)). Pr4: record(mb,Cd) :- received(Mb, pref(Cd). act4(C) :- prefers(m0,C),prefers(m1,C),prefers(mi,C). (i=2,3) act4(C) :- prefers(m2,C),prefers(m3,C).

  18. Outline • Informal Example • Multi-Agent Systems Behavior – General Framework • Agent Architecture • Multi-Agent System Semantics • Logics of Properties • Classes of Multi-Agent Systems • Results • Future Work

  19. Logics of Properties For deterministic MA-systems: PLTL - propositional linear temporal logic FLTL - first order extension of PLTL. Linear time operators: X (“nexttime”), U (“until”),V (“unless”), G (“always “), and F (“sometimes”). For nondeterministic MA-systems: subsets of classical branching time logics LTL and LTL and first order extension of -calculus and its alternation depth bounded subsets j-calculus FO- j -calculus, j  1. Example. System RC. no_consecutive_lp: AG (best &  C selected(C,lp)  (AX)8  C’ ,P (selected(C’,P) & P lp)) best – 1st order formula: “ there is an non-lp candidate best in both Merits and Grants”

  20. Classes of Multi-Agent Systems • Deterministic / nondeterministic • Ground / nonground • Expanding – no deletions in actions • Positive - no negations in programs • k-dimentional – arities of action atoms and message atoms (number of parameters)  k • m-agent – number of agents  m • r-signal – number of different ground messages  r

  21. Complexity of MA-BEHAVIOR problemDeterministic systems

  22. Monotonicity Expanding + structural restriction m2*r=O(log N) (N – size of a system) Removing any constraint in d2,d6 leads to intractability Some comments Tractable cases: Distributivity is important! d3 and d4 => ground, expanding multiagent systems can not be simulated in polinomial time by a single agent.

  23. Nondeterministic systems

  24. Future work • Probabilistic agent systems. • Asynchronous distributed agent systems (nondeterministic systems reflect some asynchronous properties). • Extend logics to analyze behavior of coalitions of agents (M.Wooldrige, 2002). • Other agent architectures.

  25. Thank You !

  26. Intelligent Agent Systems

  27. EXAMPLE. Recruiting committee (RC) of CS department RC: 5 agents-members mi (0  i  4) and agent-secretary Candidate information: cand(Id, Area, Merit, Grants) Area from { lp, ai, cl, mm}. An integer Merits evaluates the candidates scientific merits.An integer Grants represents the sum of the grants the candidate has obtained. Scenarium: Candidates are invited by the secretary to take part in the competition. On receipt of candidatures, the secretary announces the recruitment session. Before the vote, the members may speak out on the candidates (through messages). Then they vote by sending their secrete vote messages to the secretary. On receiving all members' votes, the secretary announces the selected candidate (fact selected(Id,Area) ) and closes the session. Then it deletes the old candidates data and enters the initial state of new candidatures wait.

  28. Tactics of RC members m0 (institute director) votes according to the following profile preferences: lp > ai > mm > cl and selects a candidate with the best grants sum and announces his choice to all RC members; m1() always votes for the candidate of m0; m2() selects a candidate with a profile different from that chosen by m0 and having the best grants sum; m3 () votes for the candidate with the best scientific merits whose profile is different from that of the last recruited candidate; m4 () votes with the majority, if any; if there is no majority, then m4chooses the “antiboss” party candidate.

More Related