gambit icon indicating copy to clipboard operation
gambit copied to clipboard

[Documentation]: Tutorials demonstrating each of Gambit's equilibrium computation algorithms including those relying on external programs

Open edwardchalstrey1 opened this issue 5 months ago • 5 comments

Pre-requisite

#556

Detials

Most or perhaps all of the methods in the table below could have example tutorials which explain the use cases of the methods (what kind of games they are useful for). Rather than a separate tutorial for each method, we could have just one or several which compare and contrast methods.

What the methods do are currently partially documented on their CLI pages, but these need to be reviewed for accuracy. These tutorials should be added to the "advanced tutorials" folder (see discussion in #556 ) and larger games than those in the intro tutorials (such as Kuhn poker) should be used to demo the methods:

Image

In addition, we should removed the current PyGambit guide page "Using external programs to compute Nash equilbria" and explain in the tutorial(s) that demo enummixed_solve and enumpoly_solve that you can (but don't need to) download and compile or install lrslib and PHCpack which are not packaged with Gambit. This should include how to:

  • [ ] Install each program in a way recommended for use with Gambit
  • [ ] Pass the path to the executable (via the lrsnash_path and phcpack_path arguments, respectively)

General TODOs:

  • [ ] Decide how many tutorials are required to cover the methods (perhaps open separate issues for each)

edwardchalstrey1 avatar Sep 11 '25 09:09 edwardchalstrey1

@tturocy @rahulsavani I have re-written this issue based on the discussion today, you may wish to check I have the right idea and add extra details

edwardchalstrey1 avatar Nov 11 '25 15:11 edwardchalstrey1

Just thinking about all possible tutorials and how they should be structured in the docs and I came up with this list

  • Introductory
    • PyGambit API & game theory basics
  • Advanced
    1. Existing userguide topics: starting points, QRE
    2. Interoperability with other packages: OpenSpiel, SageMath?
    3. Which algorithms to use when and why: (see above in this GH issue)
    4. Domain specific projects: MAS, Cyber, Economics etc https://github.com/gambitproject/gambit/issues/570
    5. Game theory theory: e.g. mathematical papers listed on Ted's board: https://github.com/orgs/gambitproject/projects/4/views/1
      • Do the board items also include iii & iv? If not perhaps lets add them, also ii.

edwardchalstrey1 avatar Nov 12 '25 14:11 edwardchalstrey1

@tturocy @rahulsavani based on discussion yesterday these tutorials would probably be for later and not part of 16.5?

edwardchalstrey1 avatar Nov 19 '25 09:11 edwardchalstrey1

Agreed, though if we already have the OpenSpiel one pretty-much ready we may want to have that one up sooner rather than later.

rahulsavani avatar Nov 19 '25 10:11 rahulsavani

Yes, anything that we can publish as a credible initial version would be good to do so.

tturocy avatar Nov 19 '25 10:11 tturocy