You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Since 34d4a56, we have implemented the heuristic recommended by Porter et al. to enumerate potential Nash sub-supports of a (strategic) game.
The algorithm is in the class of backtracking algorithms, and the implementation we currently have (which mirrors the one in the paper) uses a recursive approach. However, as a result, the implementation first enumerates all supports, and only then does it proceed to checking for equilibria on those supports. This largely defeats one of the benefits of the heuristic search, which is that it is designed to lower the "typical" time to finding one (or two, if they exist) equilibria.
The task
It is straightforward to express a backtracking algorithm using a stack and iteration, instead of recursion. By doing so, it would become straightforward to write the algorithm as a C++ iterator, and, having done that, to be able to solve support-by-support rather than waiting for all supports to be computed, both in C++ and in Python.
The text was updated successfully, but these errors were encountered:
Overview
Since 34d4a56, we have implemented the heuristic recommended by Porter et al. to enumerate potential Nash sub-supports of a (strategic) game.
The algorithm is in the class of backtracking algorithms, and the implementation we currently have (which mirrors the one in the paper) uses a recursive approach. However, as a result, the implementation first enumerates all supports, and only then does it proceed to checking for equilibria on those supports. This largely defeats one of the benefits of the heuristic search, which is that it is designed to lower the "typical" time to finding one (or two, if they exist) equilibria.
The task
It is straightforward to express a backtracking algorithm using a stack and iteration, instead of recursion. By doing so, it would become straightforward to write the algorithm as a C++ iterator, and, having done that, to be able to solve support-by-support rather than waiting for all supports to be computed, both in C++ and in Python.
The text was updated successfully, but these errors were encountered: