gambit
gambit copied to clipboard
MAP: Standardise Nash equilibrium computation
This is an overarching roadmap item covering development of existing Nash equilibrium computation methods. Comments on this issue are the best place to express any views you might have on this topic broadly.
We are moving to standardising on an interface style based on how scipy handles algorithms. The two main characteristics of their style are:
- Algorithms are a function call - as opposed to a class. Where appropriate, callback functions can be provided that are triggered on specified conditions (e.g. a step of the algorithm).
- Algorithms return a data structure which includes not only the algorithm output but also relevant additional data/metadata.
- [x] #342
- [x] #348
- [x] Survey equilibrium methods to ensure all implemented algorithm parameters are documented
- [x] Deprecate and remove the use of the 'external' command-line solvers from Python.
- [x] Convert Nash equilibrium methods to return a data structure appropriate to the algorithm
- [ ] #451