Local Distributed Agent Matchmaking Elth Ogston and Stamatis Vassiliadis Computer Engineering Laboratory TU Delft Our Interests Multi Agent Systems •Fine grain distributed computing •Distributed control •Cooperation without predefined structure •Scalability Simulation of very simple systems to look for useful global behavior (observe vs. tell) Matchmaking This Presentation •The matchmaking problem and common solutions •Overview of the model we simulate •Simulation results •Summary of further work Matchmaking: how do agents that require an outside service find other agents who are willing to provide that service? •Basic function in many multi-agent systems •Commonly solved in a centralized manner •A function that always doesn’t need to be done perfectly Common solutions Middle agents/directories efficient, but centralized Broadcast requests (in general a market approach) expensive in terms of messages, who is everyone? often ends up with a central auctioneer Social networks agents end up passing on a lot of messages for their friends messages reduced by storing neighbor’s capabilities something needs to be done to keep messages from circling All: agents need to be able to succinctly describe “I’m looking looking for…” How about a peer-to-peer method where agents exchange unwanted neighbors instead of messages? Our Model: 2 Components •Agents 11 5 •Tasks •of varying types Actions A C 2 11 A 7 C 11 5 5 2 B B 3 18 •“Shuffle” •Links/Connections 5 11 11 7 7 3 18 11 5 18 3 5 •“Connect” 18 3 5 11 1 22 18 3 •“Break” Parameters: •Number of agents •Number of task types •Number of tasks per agent •Probability of breaking What can we do about this single cluster? Adjust the rate at which clusters break up? System sits either on the far left or far right of the curve. Distribute cluster operation? Rotate instead of shuffle works: but how to do connections?: To connect ai to bj : •Method 1 : ai-1, bj+1,…, bj-1, ai+1 •Method 2 : ai-1, ai+1 …, bj-1, bj+1 Put a cluster ID in agents, but this must be maintained. And then how to break connections? Operations are at least linear with the size of the cluster Limit Cluster Size? This works fairly well, though it doesn’t support as many task types What if we now break connections? It works (even with limited size clusters)…. but decays eventually. There’s a problem with the task type distribution. We can have agents give up on unmatched tasks replacing them with a new task type.h This was the form of behavior we were looking for! Conclusions Matchmaking can be done in a distributed peer-to-peer manner Tweaks: (but reasonable ones from an agent viewpoint) •limit cluster size (agent resources) •replace hopeless tasks (give up if you can’t do anything) Some limits…. •the number of tasks types (see next slide) •distribution of task types - we assume random while it is easy to create a worst case ordered distribution, what is a real application’s profile? As you increase the tasks per agent you rapidly increase the number of task types supported With 6 tasks per agent the system supports around 2000 task types Further Work •Timing •Non deterministic matching •One-to-one markets •Limiting cluster moves per turn More Info…. http://ce.et.tudelft.nl/~elth/
© Copyright 2026 Paperzz