GSoC/GCI Archive
Google Summer of Code 2014

Gambit: Software Tools for Game Theory

License: GNU General Public License version 2.0 (GPLv2)

Web Page:

Mailing List:

Gambit is the premier software project for quantitative analysis in game theory. The project has a 20-year history of providing open-source tools for students, researchers, and practitioners who use game theory in economics, computer science, political science, and other fields. The director of the project is Prof Theodore Turocy, who joined the project under founder Prof Richard McKelvey in 1993, and took over primary responsibility for development and maintenance in 2000. Prof Bernhard von Stengel at London School of Economics, an internationally recognized leader in computation in games, has been a contributor since the late 1990s. Dr Rahul Savani was a PhD student of Prof von Stengel, and is now a member of the Economics and Computation group at Liverpool. For the avoidance of confusion, "game theory" does not have anything to do with the programming and development of computer games; if you are looking for a project in that area, Gambit is not a good fit for you.


  • Algorithms for Finding Equilibria of General Player Games A recently launched web-based extension of the Gambit project, Game Theory Explorer (GTE), aims to provide a lightweight yet powerful tool for game theory. Given that GTE is still in development, it is missing several key features, namely the ability to represent and solve games with more than two players. Accordingly, we focus on extending the interface of Game Theory Explorer to allow for more than two players as well as researching and implementing algorithms for solving general-player games.
  • Improve OO encapsulation of StrategicSupport class This is a project to improve the general Gambit framework for implementing a Game Theory solution algorithm. An efficient game solving algorithm should never search for solutions over a support with one or more strictly dominated strategies. The Gambit framework captures this concept for any algorithm to build upon, but only indirectly. This project will improve upon the framework so that a C++ StrategicSupport object is available to algorithms as a complete representation of possible equilibra.