I wrote a c++ program which uses libgambit. In the program I could create a
representation for the game using the GameRep object. However, I could not
figure out which functions/objects to use to calculate the Nash Equilibrium.
Can anyone help?
Computer Science Department,
University of Illinois at Urbana-Champaign
From: Christian Brumm <christian.brumm@go...> - 2010-03-18 10:54:40
To the best of my knowledge the API does not contain this functionality.
At least there is nothing sounding even remotely like it would do that
available in the documentation.
I am using the python binding of libgambit and I helped myself by
calling the executables from python and parsing the results (very
Maybe someone knows better?
I would be interested to hear how you solved the problem!
I just found this in the list archive:
> 1) I can't access the equilibrium solution tools via the API.
> Currently I'm doing it via writing files and calling gambit-logit as
> an external process. Yuck.
This is by design. Timothy and I have discussed this a little off-list.
The rationale behind using external calls to compute equilibria is that
for almost all applications, a call to a solution method will take a
significant amount of time. In an early prototype of the Python
bindings, I found that the solution algorithms interacted very poorly
with the Python interpreter. I've been of the mind for the last two
years or so that solution algorithms should (almost?) always be run as
separate processes, and this design has worked quite well for the
graphical interface, which now uses separate processes to compute
Unfortunately, Timothy's use case is exactly the worst-case scenario for
this design, since it involves a lot of small games which can be solved
quite quickly. Thus, the reading, writing, and parsing of text takes a
nontrivial percentage of the overall compute time.
I am willing to be convinced that equilibrium computation methods should
be directly accessible from the Python interface. What would really
convince me is if there are other packages out there who also have
function calls that take potentially a very long time to complete, and
who make the functions available directly in Python as opposed to using
an external process approach.
So at least for Python there seems to be no way. As for C++, this
doesn't answer the question.
Cheers and good luck,
On Sat, Mar 13, 2010 at 6:26 AM, Tanmay Khirwadkar
> I wrote a c++ program which uses libgambit. In the program I could create a
> representation for the game using the GameRep object. However, I could not
> figure out which functions/objects to use to calculate the Nash Equilibrium.
> Can anyone help?
> Tanmay Khirwadkar
> Graduate Student,
> Computer Science Department,
> University of Illinois at Urbana-Champaign
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> Gambit-devel mailing list