A tournament graph is a complete directed graph, which can be used to model a round-robin tournament between $n$ players. In this paper, we address the problem of finding a champion of the tournament, also known as Copeland winner, which is a player that wins the highest number of matches. In detail, we aim to investigate algorithms that find the champion by playing a low number of matches. Solving this problem allows us to speed up several Information Retrieval and Recommender System applications, including question answering, conversational search, etc. Indeed, these applications often search for the champion inducing a round-robin tournament among the players by employing a machine learning model to estimate who wins each pairwise comparison. Our contribution, thus, allows finding the champion by performing a low number of model inferences. We prove that any deterministic or randomized algorithm finding a champion with constant success probability requires $\Omega(\ell n)$ comparisons, where $\ell$ is the number of matches lost by the champion. We then present an asymptotically-optimal deterministic algorithm matching this lower bound without knowing $\ell$, and we extend our analysis to three variants of the problem. Lastly, we conduct a comprehensive experimental assessment of the proposed algorithms on a question answering task on public data. Results show that our proposed algorithms speed up the retrieval of the champion up to $13\times$ with respect to the state-of-the-art algorithm that perform the full tournament.
翻译:锦标赛图是一种完全有向图,可用于模拟$n$名选手之间的循环赛。本文研究锦标赛中冠军(即Copeland胜者)的查找问题,该选手赢得比赛场次最多。具体而言,我们旨在通过尽可能少的比赛来寻找冠军的算法。解决该问题有助于加速信息检索和推荐系统的多项应用,包括问答系统、对话式搜索等。实际上,这些应用通常通过机器学习模型评估每对选手的胜负关系,在选手间构建循环赛并搜索冠军。因此,我们的贡献在于通过执行少量模型推理即可找到冠军。我们证明,任何以恒定成功概率寻找冠军的确定性或随机算法都需要进行$\Omega(\ell n)$次比较,其中$\ell$是冠军输掉的比赛场次。接着,我们提出一种渐近最优的确定性算法,无需知道$\ell$即可达到该下界,并将分析扩展到该问题的三个变体。最后,我们在公开数据的问答任务上对所提算法进行了全面实验评估。结果表明,与执行完整锦标赛的现有最优算法相比,本文算法将冠军检索速度提升了最高$13$倍。