  The recently defined class of integer programming games (IPG) models
situations where multiple self-interested decision makers interact, with their
strategy sets represented by a finite set of linear constraints together with
integer requirements. Many real-world problems can suitably be fit in this
class, and hence anticipating IPG outcomes is of crucial value for policy
makers and regulators. Nash equilibria have been widely accepted as the
solution concept of a game. Consequently, their computation provides a
reasonable prediction of the games outcome.
  In this paper, we start by showing the computational complexity of deciding
the existence of a Nash equilibrium for an IPG. Then, using sufficient
conditions for their existence, we develop two general algorithmic approaches
that are guaranteed to approximate an equilibrium under mild conditions. We
also showcase how our methodology can be changed to determine other equilibria
definitions. The performance of our methods is analyzed through computational
experiments in a knapsack game, a competitive lot-sizing game, and a kidney
exchange game. To the best of our knowledge, this is the first time that
equilibria computation methods for general integer programming games have been
designed and computationally tested.
