Theoretical Foundations of Team Matchmaking
Abstract
Online team games need matchmaking systems which can handle a high throughput of players and form fair teams to play matches together. We study this problem from a theoretical perspective, by defining and analyzing a broad model which captures many applications. In the most basic formulation, we desire a data structure which supports adding and removing players, and extracting the best possible games. We design an efficient solution, where with n players in the structure, operations can be performed in O(log n) time. We then consider a natural extension one might want in a team game setting, where each team has different roles, and each player is only willing to play in some of these roles. We show that this extension is computationally intractable, conditioned on the popular 3SUM conjecture; nevertheless, we are able to design an efficient constant-factor approximate solution. Our results help explain recent practical issues with the matchmaking systems in some of the most popular online games. We also prove similar results in an offline setting, which has many applications to matching and partitioning beyond online games.