Skip to content

Java project for modeling two-player zero-sum extensive-form games and algorithms for computing Nash equilibria and related concepts.

License

Notifications You must be signed in to change notification settings

DennisPiskovatskov/ExtensiveFormGames

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ExtensiveFormGames

Contains code for modeling two-player zero-sum extensive-form games and algorithms for computing Nash equilibria and related concepts. Right now, the file reader can read two formats, the one used by the zerosum package, and an extension of that format, allowing heavier annotation of the game. In the future, I will (hopefully) add a formal description of the two formats.

If you use this codebase, please cite one of our recent papers, for example:

Extensive-form Game Abstraction with Bounds. Christian Kroer and Tuomas Sandholm. In ACM conference on Economics and Computation (EC), 2014

For a C implementation of the sequence form linear program and the counter-factual regret minimization algorithm, check out Kevin Waugh's zerosum package.

Dependencies

One or more solvers in this library require CPLEX to run. In order to use these, you must add cplex.jar to lib/ to allow compilation. To run it, add the following as a VM argument:

-Djava.library.path=/path/to/CPLEX_Studio/cplex/bin/your-architecture/

To run the JUnit test cases, the variables in the TestConfiguration class should be appropriately updated.

References

SequenceFormLPSolver is an implementation of the sequence form linear program described in: Efficient Computation of Behavior Strategies. Bernhard von Stengel. In Games and Economic Behavior, 1996

CounterFactualRegretSolver is an implementation of the CFR algorithm described in: Regret Minimization in Games with Incomplete Information. Martin Zinkevich, Michael Johanson, Michael Bowling, and Carmelo Piccione. In NIPS, 2007

OpponentSamplingCFR is an implementation of one of the Monte-Carlo-based CFR algorithms described in: Monte Carlo Sampling for Regret Minimization in Extensive Games. Marc Lanctot, Kevin Waugh, Martin Zinkevich, and Michael Bowling. In NIPS, 2009

LimitedLookAheadOpponentSolver is an implementation of the adversarial-case algorithm described in: Limited Lookahead in Imperfect-Information Games. Christian Kroer and Tuomas Sandholm. In IJCAI, 2015

About

Java project for modeling two-player zero-sum extensive-form games and algorithms for computing Nash equilibria and related concepts.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%