Presentation is loading. Please wait.

Presentation is loading. Please wait.

Vassilios V. Dimakopoulos and Evaggelia Pitoura Distributed Data Management Lab Dept. of Computer Science, Univ. of Ioannina, Greece

Similar presentations


Presentation on theme: "Vassilios V. Dimakopoulos and Evaggelia Pitoura Distributed Data Management Lab Dept. of Computer Science, Univ. of Ioannina, Greece"— Presentation transcript:

1 Vassilios V. Dimakopoulos and Evaggelia Pitoura Distributed Data Management Lab Dept. of Computer Science, Univ. of Ioannina, Greece http://softsys.cs.uoi.gr A Peer-to-Peer Approach to Resource Discovery in Multi-Agent Systems

2 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 2 Multi-agent systems (MAS) Cooperating agents: Each agent offers some resources (computation, data, etc) To fulfill its goals, an agent requires resources provided by other agents Closed MAS: each agent knows all others and what they offer vs Open MAS

3 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 3 Open MAS How does an agent get information about other agents/resources? Common approach: directory-based (e.g. middle agent) Disadvantage: many agents and resources make the directory a performance/ reliability bottleneck Proposal: consider a p2p approach

4 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 4 P2P + agents In P2P, Peers (agents) offer resources Similar Problem: How to locate the peer(s) that offer a particular resource  Structured: based on the name or content of the resource place it at the appropriate node (Chord, CAN etc) vs  Unstructured: no assumption about the location of resources (Napster, Gnutella) We apply fully decentralized unstructured p2p approaches

5 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 5 Overview Each agent v has a cache with k entries, containing information for k resources i.e. for each of the k resources, the cache holds the contact information for an agent that provides it If an agent v has contact information for agent u then v knows u. Network of caches : if v knows u there is a link from v to u

6 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 6 Abstract model Network of caches (k = 2) Note: The network (graph) may be disconnected

7 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 7 Search algorithms Flooding-based Agent A looks for resource x  A checks its local cache, if x not in cache, A contacts its neighbors,  Each neighbor check its cache for x, if not found contacts its neighbors and so on, A number of variations based on contacting subsets of the neighbors Use the distributed network of caches to locate an agent offering a particular resource

8 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 8 Results, contributions Use the distributed network of caches to locate an agent offering a particular resource Algorithms for searching  Flooding (as in e.g., Gnutella),  Teeming (randomized flooding),  Random paths Performance Analysis Analytical model validated by simulation Updates  Flooding-based propagation,  Inverted cache

9 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 9 Results, contributions Related work [Bauer&Wang92] show that DFS of the cache network, performs better than flooding for particular topologies [Shehory00] Lattice-like cache network (each agent knows about exactly four other agents

10 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 10 Talk outline  Brief presentation of the analytical model  Performance results related to the search procedures  Updates  Conclusions and Future Work

11 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 11 Performance metrics t : maximum allowed # steps (TTL) Q t : probability of successful search – high means “other” directory mechanisms used rarely S t : average # steps to find the resource M t : average # message transmissions – as few as possible, for speed and small traffic Note: we assume that agents are queried in parallel (all neighbors are contacted in one step) but the system is asynchronous

12 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 12 Performance model Two cases:  The content of the cache is assumed to be completely random  Hot spots (resources requested frequently) appear in a large number of caches: In a fraction h of all caches (h ≤ 1)  N nodes, R resources, k cache size  Steady state: all caches full

13 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 13 Performance analysis, preliminaries PC (1): Probability of finding x in any given cache Random Requests In Nk total entries, each resource appears Nk/R times avg., or in a portion of (Nk/R)/N = k/R of the caches. Thus, the probability of locating a specific resource in a specific cache is: PC(1) = k/R PC(1) = 1 – a R, with a R = 1 – k/R Hot Spots Each hot spot appears in a fraction h of all caches, let r h portion of hotspots (1-r h )R cold-spots For hotspots, PC(1) = h, PC(1) = 1 –a H, with a H = 1 –h For coldspots, PC(1) = 1 – a C, with a C =

14 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 14 Performance analysis, preliminaries For j caches, PC(j) = 1 – (1 – PC(1)) j = 1 – a j If s i is the prob. of locating the resource in exactly the i-th step, then: Given the resource is found, the average number of steps is:

15 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 15 Contacts all neigbors (entries in cache) Complete k-ary “tree” Exponential # messages, relatively small # steps Flooding A1 A2A4 A3A5A6A3

16 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 16 Performance of flooding In each level of the “tree” k i caches are queried Approximation: all these caches are distinct (does not introduce significant error) Locating resource at exactly step i :

17 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 17 Performance of flooding, cont. Obtained: Messages: if not in root’s cache, we get k transmissions plus all messages within the k subtrees: k m(t – 1)

18 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 18 Performance of flooding, cont. For each of the k subtrees, Solving recursion gives: Exponential # messages, as expected

19 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 19 Performance of flooding, cont.

20 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 20 Performance of flooding, cont.

21 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 21 Performance of flooding, cont.

22 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 22 Teeming (randomized flooding) A1 A2A4 A3A6A3  Intermediate nodes ask a random subset of their neighbors: A node asks each neighbor with probability φ, kφ neighbors asked on average  φ = 1 is flooding

23 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 23 Performance of teeming Similarly, obtained : Exponential slower than flooding, based on φ

24 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 24 Random paths Inquiring node asks p neighbors Intermediate nodes ask 1 neighbor (similar to concurrent DFS) Fewer messages, more steps A1 A2A4 A5A3 p = 2 paths

25 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 25 Performance of random paths Obtained, for p paths:

26 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 26 Comparison of algorithms, 1 – Q Teeming with φ = 1/sqrt(k) Random resource

27 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 27 Comparison of algorithms, S Random resource

28 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 28 Comparison of algorithms, M Random resource

29 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 29 Comparison of algorithms, 1 - Q Hotspots

30 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 30 Comparison of algorithms, S Hotspots

31 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 31 Comparison of algorithms, M Hotspots

32 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 32 Comparison, discussion Flooding and teeming depend on k, random paths on the ratio k/R Flooding and teeming yield higher probabilities of discovering the resource, and with fewer steps; However the number of messages, esp. for flooding is excessive Teeming can balance performance with appropriate selection of φ Few paths are bad; for 4 paths probability and # steps is more than acceptable, # messages is minimal Cache vary efficient for hotspots Simple optimizations: cycles, periodically contact the inquiring agent (else search continues even if the resource is found)

33 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 33 Simulation Simulators for all algorithms constructed 200 to 500 resources 1000 to 5000 agents/caches Initially all caches filled randomly Search for a uniformly random resource, 1000 repetitions Analysis confirmed with negligible error (less than 0.5% in most cases)

34 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 34 Simulation & theory Random resources

35 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 35 Simulation & theory, cont. Random resources

36 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 36 Simulation & theory, cont. Random resources

37 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 37 Simulation & theory, cont. Random resources

38 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 38 Simulation & theory, cont. Hotspots

39 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 39 Updates Type of updates (1) Agent offers a new resource or cease to offer a resource (2) The contact information of an agent changes (e.g., it moves) Discuss case 2 above – decentralized solution

40 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 40 Updates, inverted cache  Each agent maintains which agent know about it  Use the inverted cache to inform other agents

41 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 41 Updates, flooding  When an agent moves, it informs the agent in its cache and so on  Neighbor relationship is not symmetric, A knows B, B may not know A

42 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 42 Summary A new scheme for open MAS: a distributed cache network Decentralized unstructured p2p resource discovery Algorithms proposed: classical flooding, teeming (randomized flooding), random paths Performance study of searching: analytical models for probability of locating, average # steps, average # messages Cache updates

43 CIA 03 Dimakopoulos & Pitoura - University of Ioannina 43 Future Work  Prototype implementation (In progress) implementation in the Aglets platform completed experimental evaluations under way  Updates/Mobility (In progress) Performance evaluation  Caches evolve over time Cache replacement issues  Extend performance evaluation Random/Hot spots -> Small world network of caches

44 QUESTIONS? A Peer-to-Peer Approach to Resource Discovery in Multi-Agent Systems


Download ppt "Vassilios V. Dimakopoulos and Evaggelia Pitoura Distributed Data Management Lab Dept. of Computer Science, Univ. of Ioannina, Greece"

Similar presentations


Ads by Google