/
ChangeLog
63 lines (49 loc) · 2.85 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# Changelog
## [16.1.0a3] - 2023-09-29
### Changed
- The `refine` and `leash` parameters to simpdiv have been made available and documented in
pygambit.
- Repackage logit solver in src/solvers; make pygambit.nash.logit_solve available as a
method for finding a Nash equilibrium.
- Additional game transformation operations have been moved to the Game class, and old versions
deprecated.
- Accessing payoffs of outcomes and pure strategy profiles is now standardized to use player
references, and accessing by index has been removed.
- Game.num_nodes has been removed in favor of Game.nodes, which returns a list of the nodes
in the game.
## [16.1.0a2] - 2023-09-22
### Changed
- Most operations which modify games have been moved to being operations on `Game` instead of
being operations on classes representing elements of games. For the most part old versions
have been retained with a deprecation warning; these old versions will be removed in 16.2.0.
- `pygambit.supports` has been introduced to organise algorithms which operates on sets
of pure strategies or actions, such as finding undominated strategies.
- `.payoff()` on mixed strategy and mixed behavior profiles now takes either a Player or string label.
`.infoset_value()` and `.action_value()` have been introduced to replace calling `.payoff()` on
these objects.
- The implementation of mixed strategy profiles and mixed behavior profiles has been thoroughly rewritten
for improved consistency in behavior across members and between the two types of profile.
- The experimental concept of a `StrategicRestriction` has been removed from `pygambit`.
Instead, calling `restrict` on a `StrategySupportProfile` creates a deep copy of its
game with only the strategies specified.
## [16.1.0a1] - 2023-09-14
### Changed
- Cython 3.0 is now used for pygambit.
- Documentation of the pygambit API has been moved into docstrings.
- Chance action probabilities are now enforced to sum to exactly one at an information
set. This is accomplished by changing the API to set probabilities for all actions
simultaneously; it is no longer possible to assign an action probability individually.
### Added
- Documented support in Python for estimating quantal response equilibria using
either fixed-point or empirical payoff methods
### Fixed
- Corrected reference counting for C++ Game objects which could result in objects
never being deallocated (see #331)
- Corrected Lyapunov function minimisation returning critical points that are
not global minima (i.e. not equilibria) (#329)
- Corrected a regression in accessing contingencies of a game in Python.
- Removed use of explicit StopIteration (a holdover from Python 2.x support).
## [16.0.2] - 2022-01-28
### Fixed
- Updated build and packaging systems for current compilers across all platforms
- Refactored Python implementation to make pygambit PyPI-installable