The assignment of personnel to teams is a fundamental and ubiquitous managerial function, typically involving several objectives and a variety of idiosyncratic practical constraints. Despite the prevalence of this task in practice, the process is seldom approached as a precise optimization problem over the reported preferences of all agents. This is due in part to the underlying computational complexity that occurs when quadratic (i.e., intra-team interpersonal) interactions are taken into consideration, and also due to game-theoretic considerations, when those taking part in the process are self-interested agents. Variants of this fundamental decision problem arise in a number of settings, including, for example, human resources and project management, military platooning, sports-league management, ride sharing, data clustering, and in assigning students to group projects. In this paper, we study a mathematical-programming approach to "team formation" focused on the interplay between two of the most common objectives considered in the related literature: economic efficiency (i.e., the maximization of social welfare) and game-theoretic stability (e.g., finding a core solution when one exists). With a weighted objective across these two goals, the problem is modeled as a bi-level binary optimization problem, and transformed into a single-level, exponentially sized binary integer program. We then devise a branch-cut-and-price algorithms and demonstrate its efficacy through an extensive set of simulations, with favorable comparisons to other algorithms from the literature.
2100 Hillside Rd, Storrs, CT 06268, Operations and Information Management, University of Connecticut