2
$\begingroup$

I am working on a Bayesian game with a finite number of players and discrete types, but the complexity of the equations is not allowing me to find the BNEs by hand.

I read a paper describing algorithms to find approximate BNE in such games but could not understand how to implement it using code.

It would be a great help if someone could inform me about any program for the purpose, or help me with code if possible. Thank you!

$\endgroup$
  • 1
    $\begingroup$ Seems like you already have your algorithm, and your question is about programming, not economics. $\endgroup$ – Giskard Jan 13 at 6:17
  • 2
    $\begingroup$ I'm voting to close this question as off-topic because it is about programming languages. $\endgroup$ – Giskard Jan 15 at 9:55
2
$\begingroup$

A brute-force algorithm might not be the right way to go. Sometimes it is not even feasible for finding Nash equilibria with perfect information. This is because even if players and types are finite, BNE's are a profile of (possibly mixed) strategies that maximize the expected payoff. If the game is sequential, this expectation may depend on the own strategies and the strategies of other players. So the space over which you are looking for best responses is quite large. Moreover, the equilibrium is a fixed point for which, in general, we don't know a lot. For example:

Do you know if the equilibrium exists? is it unique? can you define a contraction operator to update players' strategies that will take you to the equilibrium?

Coding will only work if equilibrium exists, and it will work nicely if your game defines a contraction. In contrast, if it is not unique, you will have to be more careful about the algorithm you use to find/approximate a fixed point.

A more useful approach would be to make assumptions (informed guesses) on how the equilibrium will look like and then verify that such an equilibrium exists. Some common assumptions are: "Symmetry": similar players playing similar strategies in equilibrium, "naive strategies": the equilibrium strategies are relatively simple (for example maximizing instantaneous payoff even though the game is dynamic), etc.

This is no simple task, but often you learn more this way. Keep in mind that often you have a multiplicity of equilibria and BNE must be refined to perfect BNE or sequential BNE or other refinements depending on the application.

$\endgroup$

Not the answer you're looking for? Browse other questions tagged or ask your own question.