Catalog of games#

Below is a complete list of games included in Gambit’s catalog. Check out the pygambit API reference for instructions on how to search and load these games in Python, and the Updating the games catalog guide for instructions on how to contribute new games to the catalog.

Extensive form games

Bagwell (GEB 1995) commitment and (un)observability

This is a Stackelberg-type game with imperfectly observed commitment, following the analysis of Bag1995. The outcomes and payoffs are the same as in Bagwell’s model. This example sets the probability that the follower ‘correctly’ observes the leader’s action as .99 (99/100). The key result is that the only pure-strategy equilibrium that survives if observability is imperfect is the one in which players choose the actions that would form an equilibrium if the game was a simultaneous-move game. There is an equilibrium in which the ‘Stackelberg’ action is played with high probability, but strictly less than one.

Load in PyGambit:

pygambit.catalog.load("bagwell1995")

Download game and image files:

bagwell1995.efg bagwell1995.ef bagwell1995.tex bagwell1995.png bagwell1995.pdf

Figure made with TikZ

Gilboa (1997) Two-Selves Absent-Minded Driver

A reformulation of the absent-minded driver problem from Gil97 using a multi-self approach. A chance move determines the order in which two selves act, each facing a binary choice. Neither self knows the order of play, capturing absent-mindedness through information sets that cross the chance branches rather than through imperfect recall.

Load in PyGambit:

pygambit.catalog.load("gilboa1997/fig2")

Download game and image files:

gilboa1997/fig2.efg gilboa1997/fig2.ef gilboa1997/fig2.tex gilboa1997/fig2.png gilboa1997/fig2.pdf

Figure made with TikZ

Jakobsen, Sorensen, Conitzer (2016) Figure 1(a)

An example from JakSorCon16 illustrating a game that is not exactly timeable. A coin toss determines which player moves first. Each player guesses whether she went first, without distinguishing going first from going second. Each player receives a payoff of 1 for a correct guess and 0 otherwise. No deterministic or randomized timing can implement this game without leaking information.

Load in PyGambit:

pygambit.catalog.load("jakobsen2016/fig1a")

Download game and image files:

jakobsen2016/fig1a.efg jakobsen2016/fig1a.ef jakobsen2016/fig1a.tex jakobsen2016/fig1a.png jakobsen2016/fig1a.pdf

Figure made with TikZ

Jakobsen, Sorensen, Conitzer (2016) Figure 1(b)

An example from JakSorCon16 illustrating a game that has an exact deterministic timing. A coin toss determines the flow of the game; player 1 only plays if the coin comes up Heads, and if so plays first. Player 2 always plays, but cannot distinguish whether the coin came up Heads or Tails. Each player receives a payoff of 1 for a correct guess and 0 otherwise. This game can be timed by letting player 1 play at time 1 and player 2 at time 2.

Load in PyGambit:

pygambit.catalog.load("jakobsen2016/fig1b")

Download game and image files:

jakobsen2016/fig1b.efg jakobsen2016/fig1b.ef jakobsen2016/fig1b.tex jakobsen2016/fig1b.png jakobsen2016/fig1b.pdf

Figure made with TikZ

Jakobsen, Sorensen, Conitzer (2016) Figure 1(c)

An example from JakSorCon16 illustrating a game that is not exactly timeable. A coin toss determines the order of players. The player moving second is only offered a bet if the player moving first guessed correctly. Each player receives a payoff of 1 for a correct guess and 0 otherwise. No deterministic or randomized timing can implement this game without leaking information.

Load in PyGambit:

pygambit.catalog.load("jakobsen2016/fig1c")

Download game and image files:

jakobsen2016/fig1c.efg jakobsen2016/fig1c.ef jakobsen2016/fig1c.tex jakobsen2016/fig1c.png jakobsen2016/fig1c.pdf

Figure made with TikZ

Jakobsen, Sorensen, Conitzer (2016) Figure 3

An example from JakSorCon16 illustrating the extensive form of an onion routing game that is not exactly timeable. Chance chooses a sender by drawing a signal from {0, 1, 2, 3} with equal probability. The sender does not make a strategic choice; only the two intermediary players act. For signal i: (a) the sender is the player whose index (mod 4) equals i, (b) the recipient is the player whose index (mod 4) equals i-1. The first intermediary is Player i+2 (mod 4) and the second is Player i+1. The full mapping is as follows: Signal 0: Player 4 sends to Player 3. Player 2 acts first, then Player 1. Signal 1: Player 1 sends to Player 4. Player 3 acts first, then Player 2. Signal 2: Player 2 sends to Player 1. Player 4 acts first, then Player 3. Signal 3: Player 3 sends to Player 2. Player 1 acts first, then Player 4. Each player has one information set with two member nodes, that is, they cannot distinguish which position they are at. Each intermediary chooses to either forward the envelope or obstruct by keeping it. Each player wants to obstruct the protocol if they are the first intermediary, but wants to help if they are the second. If both intermediaries forward, the message is delivered. In that case, the first intermediary receives -1 and the second intermediary receives 1+epsilon. All other players receive 0. If either intermediary obstructs, the message is not delivered and all players receive 0. With epsilon set to 0.01, the payoffs for successful delivery are: Signal 0: (1.01, -1, 0, 0). Signal 1: (0, 1.01, -1, 0). Signal 2: (0, 0, 1.01, -1). Signal 3: (-1, 0, 0, 1.01).

Load in PyGambit:

pygambit.catalog.load("jakobsen2016/fig3")

Download game and image files:

jakobsen2016/fig3.efg jakobsen2016/fig3.ef jakobsen2016/fig3.tex jakobsen2016/fig3.png jakobsen2016/fig3.pdf

Figure made with TikZ

A simple Poker game

This is a simple game of one-card poker from Mye91, used as the introductory example for game models.

Note that as specified in the text, the game has the slightly unusual feature that folding with the high (red) card results in the player winning rather than losing.

See also Rei2008

Another one-card poker game where folding with the high card is a loss rather than a win.

Load in PyGambit:

pygambit.catalog.load("myerson1991/fig2_1")

Download game and image files:

myerson1991/fig2_1.efg myerson1991/fig2_1.ef myerson1991/fig2_1.tex myerson1991/fig2_1.png myerson1991/fig2_1.pdf

Figure made with TikZ

Myerson (1991) Figure 4.2

An example from Mye91 which illustrates the distinction between an equilibrium of an extensive form game and an equilibrium of its (multi)agent representation. The actions B1, Z1, and W2 form a behavior profile which is an equilibrium in the (multi)agent representation. However, it is not a Nash equilibrium of the extensive game, because Player 1 would prefer to switch from (B1, Z1) to (A1, Y1); the (multi)agent representation rules out such coordinated deviations across information sets.

Load in PyGambit:

pygambit.catalog.load("myerson1991/fig4_2")

Download game and image files:

myerson1991/fig4_2.efg myerson1991/fig4_2.ef myerson1991/fig4_2.tex myerson1991/fig4_2.png myerson1991/fig4_2.pdf

Figure made with TikZ

Stripped-down poker (Reiley et al 2008)

This is a one-card poker game used in Rei2008 as a teaching exercise.

See also Mye91

Another one-card poker game with slightly different rules.

Load in PyGambit:

pygambit.catalog.load("reiley2008/fig1")

Download game and image files:

reiley2008/fig1.efg reiley2008/fig1.ef reiley2008/fig1.tex reiley2008/fig1.png reiley2008/fig1.pdf

Figure made with TikZ

Selten’s horse (Selten IJGT 1975, Figure 1)

This is a three-player game presented in Sel75, commonly referred to as “Selten’s horse” owing to the layout in which it can be drawn. It is the motivating example for his definition of (trembling-hand) perfect equilibrium, by showing a game that has an equilibrium which is “unreasonable”, but which is not ruled out by subgame perfection because this game has no proper subgames.

Load in PyGambit:

pygambit.catalog.load("selten1975/fig1")

Download game and image files:

selten1975/fig1.efg selten1975/fig1.ef selten1975/fig1.tex selten1975/fig1.png selten1975/fig1.pdf

Figure made with TikZ

Selten (IJGT 1975) Figure 2

This is a counterexample presented in Sel75, to show that extensive and normal form concepts of perfectness do not coincide. This game has one perfect equilibrium in the extensive from, but a distinct (pure) strategy equilibrium is also perfect in the normal form.

Load in PyGambit:

pygambit.catalog.load("selten1975/fig2")

Download game and image files:

selten1975/fig2.efg selten1975/fig2.ef selten1975/fig2.tex selten1975/fig2.png selten1975/fig2.pdf

Figure made with TikZ

Selten (IJGT 1975) Figure 3

This is a counterexample presented in Sel75, to show that extensive and normal form concepts of perfectness do not coincide. Specifically, there are two equilibria which are perfect in the normal form but not perfect in the extensive form.

Load in PyGambit:

pygambit.catalog.load("selten1975/fig3")

Download game and image files:

selten1975/fig3.efg selten1975/fig3.ef selten1975/fig3.tex selten1975/fig3.png selten1975/fig3.pdf

Figure made with TikZ

Princess Bride signaling game (from Watson)

This game is Exercise 29.6 from Watson Wat13, based on a scene from the Rob Reiner film, The Princess Bride:

Wesley (the protagonist) confronts the evil prince Humperdinck. Wesley is one of two types: weak or strong. Wesley knows whether he is weak or strong, but the prince only knows that he is weak with probability 1/2 and strong with probability 1/2. Wesley is lying in a bed in the prince’s castle when the prince enters the room. Wesley decides whether to get out of bed or stay in bed. The prince observes Wesley’s action but does not observe Wesley’s type. The prince then decides whether to fight or surrender to Wesley. The payoffs are such that the prince prefers to fight only with the weak Wesley, because otherwise the prince is an inferior swordsman. Also, the weak Wesley must pay a cost to get out of bed.

In the game in this file, the cost the weak Wesley pays to get out of bed is set to 2.

Load in PyGambit:

pygambit.catalog.load("watson2013/exercise29_6")

Download game and image files:

watson2013/exercise29_6.efg watson2013/exercise29_6.ef watson2013/exercise29_6.tex watson2013/exercise29_6.png watson2013/exercise29_6.pdf

Figure made with TikZ

Job-market signaling game (version from Watson)

This is a version of Spence’s classic model of education being a job-market signal, as presented in Figure 29.1 of Watson Wat13.

Load in PyGambit:

pygambit.catalog.load("watson2013/fig29_1")

Download game and image files:

watson2013/fig29_1.efg watson2013/fig29_1.ef watson2013/fig29_1.tex watson2013/fig29_1.png watson2013/fig29_1.pdf

Figure made with TikZ