Repository navigation
Add is_degenerate for bimatrix games
#961
Replies: 2 comments 1 reply
|
Hello, sorry for the delay, and thank you for your patience. I've finished a draft implementation. I did it in a similar way to SageMath. The problem is NP-hard. Basically I check every pair of supports (S, T) to see whether there exists a mixed strategy whose support is S and for which the opponent's best responses are exactly T. The size of S is k and T is k+1 — so the opponent having k+1 best responses to a size-k support is what makes the game degenerate. To check each pair I solve a linear feasibility problem (an LP) using scipy.optimize.linprog. Before opening a pull request I wanted to check a few things:
|
|
Hi Uveys: Thanks for your patience -- we've been busy getting Gambit 17 ready. It's not in beta in case you want to check it out.
|
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
This feature request is for...
Other
Requested enahancement or feature
Add a
is_degeneratecheck for 2-player games, similar to SageMath's implementation:is_degenerate(certificate=False)[source]
A function to check whether the game is degenerate or not.
Will return a boolean.
A two-player game is called nondegenerate if no mixed strategy of support size
has more than
pure best responses [NN2007]. In a degenerate game, this definition is violated, for example if there is a pure strategy that has two pure best responses.
The implementation here transforms the search over mixed strategies to a search over supports which is a discrete search. A full explanation of this is given in [CK2015]. This problem is known to be NP-Hard [Du2009]. Another possible implementation is via best response polytopes, see Issue #18958.
All reactions