Computing the Nucleolus of Matching and b-Matching Games

Loading...
Thumbnail Image

Date

2021-05-21

Authors

Toth, William Justin

Advisor

Koenemann, Jochen

Journal Title

Journal ISSN

Volume Title

Publisher

University of Waterloo

Abstract

In the classical weighted matching problem the optimizer is given a graph with edge weights and their goal is to find a matching which maximizes the sum of the weights of edges in the matching. It is typically assumed in this process that the optimizer has unilateral control over the decision to take each edge. Where cooperative game theory intersects combinatorial optimization this assumption is subverted. In a cooperative matching game each vertex of the graph is controlled by a distinct player, and an edge can only be taken into a matching with the cooperation of the players at each of its vertices. One can think of the weight of an edge as representing the value the players of that edge generate by collaborating in partnership. In this setting the question is more than simply can we find an optimal matching, as in the classic matching problem, but also how should the players share the total value of the matching amongst themselves. The players should share the value they generate in a way that fairly respects the contributions of each player, and which encourages as well as possible the stable participation of every player in the network. Cooperative game theory formulates such fair distributions of wealth as solution concepts. One classical and beautiful solution concept is the nucleolus. Intuitively the nucleolus distributes value so that the worst off groups of players are as satisfied as possible, and subject to that the second worst off groups, and so on. Here we think of satisfaction as the difference between how much value the players were distributed versus how much they could have generated on their own had they seceded from the grand coalition. This thesis studies the nucleolus of matching games, and their generalization to b-matching games where each player can take on multiple partnerships simultaneously, from a computational perspective. We study when the nucleolus of a b-matching game can be computed efficiently and when it is intractable to do so. Chapter 2 describes an algorithm for computing the nucleolus of any weighted cooperative matching game in polynomial time. Chapter 3 studies the computational complexity of b-matching games. We show that computing the nucleolus of such games is NP-hard even when every vertex has b-value 3, the graph is unweighted, bipartite, and of maximum degree 7. Finally, in Chapter 4 we show that when the problem of determining the worst off coalition under a given allocation in a cooperative game can be formulated as a dynamic program then the nucleolus of the game can be computed in time which is only a polynomial factor larger than the time it takes to solve said dynamic program. We apply this result to show that nucleolus of b-matching games can be computed in polynomial time on graphs of bounded treewidth.

Description

Keywords

matching, cooperative game theory, nucleolus, linear programming, algorithms

LC Subject Headings

Citation