56
Purpose Usage Client/Server Algorithms Future Game Theory Explorer - Software for the Applied Game Theorist Rahul Savani University of Liverpool Bernhard von Stengel London School of Economics May 2016 1

Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Game Theory Explorer -Software for the Applied Game Theorist

Rahul Savani

University of Liverpool

Bernhard von Stengel

London School of Economics

May 2016

1

Page 2: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Overview

Explain and demonstrate GTE (Game Theory Explorer),

open-source software, under development, for

creating and analyzing non-cooperative games

in strategic form:B

I

II

l

1

4

3

r

6

5

4

2T

3

and extensive form:l

2 4

r r

II

l

6

B

3

3

5

I

T

1

4

2

Page 3: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Intended users

Applied game theorists:• experimental economists (analyze game before running experiment)

• game-theoretic modelers in biology, political science, . . .

• in general: non-experts in equilibrium analysis

⇒ design goal: ease of use

Researchers in game theory:• testing conjectures about equilibria

• as contributors: designers of game theory algorithms

Educators:

• interactive tool to explain solution concepts and algorithms

3

Page 4: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

History: GambitGTE now part of the Gambit open-source software development,http://www.gambit-project.org

2011, 2012, 2014, and 2016 supported by Google Summer ofCode (GSoC)

Gambit software started ∼1990 with Richard McKelvey (Caltech)to analyze games for experiments, developed since 1994 withAndy McLennan into C++ package, since 2001 maintained byTed Turocy (UEA, Norwich, UK).

• Gambit must be installed on PC/Mac/Linux, with GUI(graphical user interface) using platform-independentwxWidgets

• has collection of algorithms for computing Nash equilibria

• offers scripting language, now developed using Python4

Page 5: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Features of GTEGTE independent browser-based development:

• no software installation needed, low barrier to entry

• nicer GUI than Gambit

• export to graphical formats

Disadvantages:

• manual storing / loading of files for security reasons

• long computations require local server installation (same GUI)

Other Contributors: David Avis (lrs), Mark Egesdal (2011),Alfonso Gomez-Jordana, Martin Prause, Christian Pelissier(GSoC 2011, 2012, 2014), Cesar de la Vega (2015),Harkirat Singh, Jaume Vives, Amelie Heliou (GSoC 2016)

5

Page 6: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Features of GTEGTE independent browser-based development:

• no software installation needed, low barrier to entry

• nicer GUI than Gambit

• export to graphical formats

Disadvantages:

• manual storing / loading of files for security reasons

• long computations require local server installation (same GUI)

Other Contributors: David Avis (lrs), Mark Egesdal (2011),Alfonso Gomez-Jordana, Martin Prause, Christian Pelissier(GSoC 2011, 2012, 2014), Cesar de la Vega (2015),Harkirat Singh, Jaume Vives, Amelie Heliou (GSoC 2016)

5

Page 7: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Features of GTEGTE independent browser-based development:

• no software installation needed, low barrier to entry

• nicer GUI than Gambit

• export to graphical formats

Disadvantages:

• manual storing / loading of files for security reasons

• long computations require local server installation (same GUI)

Other Contributors: David Avis (lrs), Mark Egesdal (2011),Alfonso Gomez-Jordana, Martin Prause, Christian Pelissier(GSoC 2011, 2012, 2014), Cesar de la Vega (2015),Harkirat Singh, Jaume Vives, Amelie Heliou (GSoC 2016)

5

Page 8: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Example of a game

2× 2 game in strategic form:

B

I

II

l

1

4

3

r

6

5

4

2T

3

with pure best responses

and equilibrium probabilities

6

Page 9: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Example of a game

2× 2 game in strategic form:

B

I

II

l

1

4

3

r

6

5

4

2T

3

with pure best responses

and equilibrium probabilities

6

Page 10: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Example of a game

2× 2 game in strategic form:

B

I

II

l

1

4

3

r

6

5

4

2T

3

0

1

0 1

with pure best responses

and equilibrium probabilities

6

Page 11: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Extensive (= tree) form of the game

Players move sequentially,

information sets show lack of information about game state:

l

2 4

r r

II

l

6

B

3

3

5

I

T

1

4

7

Page 12: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Commitment (leadership) game

Changed game when player I can commit:

2

l

3

r

5

4

II

b

T

1

I

a

II

46

B

3

Subgame perfect equilibrium: (T , l-b)

Other equilibria:

8

Page 13: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Commitment (leadership) game

Changed game when player I can commit:

2

l

3

r

5

4

II

b

T

1

I

a

II

46

B

3

Subgame perfect equilibrium: (T , l-b)

Other equilibria:

8

Page 14: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Commitment (leadership) game

Changed game when player I can commit:

2

l

3

r

5

4

II

b

T

1

I

a

II

46

B

3

1

B4

I

6 4

l−a

43

2

5

l−b r−a

3

4

5 3

II

2 1

3

T

6

r−b

Subgame perfect equilibrium: (T , l-b)

Other equilibria:

8

Page 15: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Commitment (leadership) game

Changed game when player I can commit:

2

l

3

r

5

4

II

b

T

1

I

a

II

46

B

3

1

B4

I

6 4

l−a

43

2

5

l−b r−a

3

4

5 3

II

2 1

3

T

6

r−b

Subgame perfect equilibrium: (T , l-b)

Other equilibria:

8

Page 16: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Commitment (leadership) game

Changed game when player I can commit:

2

l

3

r

5

4

II

b

T

1

I

a

II

46

B

3

1

B4

I

6 4

l−a

43

2

5

l−b r−a

3

4

5 3

II

2 1

3

T

6

r−b

0010

1

0

Subgame perfect equilibrium: (T , l-b)

Other equilibria:

8

Page 17: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Commitment (leadership) game

Changed game when player I can commit:

2

l

3

r

5

4

II

b

T

1

I

a

II

46

B

3

1

B4

I

6 4

l−a

43

2

5

l−b r−a

3

4

5 3

II

2 1

3

T

6

r−b

1000

0

1

Subgame perfect equilibrium: (T , l-b)

Other equilibria: (B, r -b)

8

Page 18: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Commitment (leadership) game

Changed game when player I can commit:

2

l

3

r

5

4

II

b

T

1

I

a

II

46

B

3

1

B4

I

6 4

l−a

43

2

5

l−b r−a

3

4

5 3

II

2 1

3

T

6

r−b

1/201/20

0

1

Subgame perfect equilibrium: (T , l-b)

Other equilibria: (B, r -b), (B, 12 l-b 1

2r -b)

8

Page 19: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Commitment (leadership) game

Changed game when player I can commit:

2

l

3

r

5

4

II

b

T

1

I

a

II

46

B

3

1

B4

I

6 4

l−a

43

2

5

l−b r−a

3

4

5 3

II

2 1

3

T

6

r−b

001/21/2

1

0

Subgame perfect equilibrium: (T , l-b)

Other equilibria: (B, r -b), (B, 12 l-b 1

2r -b), (T , 12 l-a 1

2 l-b)

8

Page 20: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

GTE output for the commitment game

9

Page 21: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Demonstration of GTE

Preceding games:

• 2× 2 game in strategic form

• extensive form of that game

• commitment game, extensive and strategic form

Next: create from scratch a more complicated extensive game

• imperfectly observable commitment

10

Page 22: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Demonstration of GTE

Preceding games:

• 2× 2 game in strategic form

• extensive form of that game

• commitment game, extensive and strategic form

Next: create from scratch a more complicated extensive game

• imperfectly observable commitment

10

Page 23: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Game with imperfectly observable commitment

l

II

6

II

3

r

63

1

1

a

3

4

l

1/100 99/100

a

I

r

b

4

5

B

4

b

2

99/100

5

4

T

1/100

3

2

11

Page 24: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Game tree drawn left to right

l

T

,

6

II

,

3

r

,

1

II3 1

,

6

,

3

4

l

1/100

b

a

,

I

r

b

4

5

a

4

,

99/100

2

1/100B

5

4

,

99/100

3

2

12

Page 25: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

GTE output for imperfectly observable commitment

13

Page 26: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

More complicated signaling game, 5 equilibria

0

1/2

−2

yifN

1/2

0

8

1

yifY

yifN

yifY

10

−3 −1

1/2

nifY

1/2

Nn

1

0

−3

Yn

2

1

nifN

nifY

1/2

5

1/2

−210

−1

−1

1/2

Ni

0

1/2

0

Yi

1/2

2

0

−2

−1

−5

0

−4

nifN

1/2

−3

14

Page 27: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Some more strategic-form games

For studying more complicated games:

generate game matrices as text files, copy and paste intostrategic-form input.

Future extension:

Automatic generation via command lines or “worksheets” forscripting, connection with Python and Gambit

15

Page 28: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

GTE software architecture

Client (your computer with a browser):

• GUI: JavaScript (Flash’s variant called ActionScript)

• store and load game described in XML format

• export to graphic formats (.png or XFIG→ EPS, PDF)

• for algorithm: send XML game description to server

Server (hosting client program and equilibrium solvers):

• converts XML to Java data structure (similar to GUI)

• solution algorithms as binaries (e.g. C program lrs), sendresults as text back to client

16

Page 29: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

GTE software architecture

Client (your computer with a browser):

• GUI: JavaScript (Flash’s variant called ActionScript)

• store and load game described in XML format

• export to graphic formats (.png or XFIG→ EPS, PDF)

• for algorithm: send XML game description to server

Server (hosting client program and equilibrium solvers):

• converts XML to Java data structure (similar to GUI)

• solution algorithms as binaries (e.g. C program lrs), sendresults as text back to client

16

Page 30: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

High usage of computation resources

Finding all equilibria takes exponential time

⇒ for large games, server should run on your computer, not apublic one

achieved by local server installation (“Jetty”), requiresinstallation, but offers same user interface.

17

Page 31: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Algorithm: Finding all equilibria

For two-player games in strategic form, all Nash equilibria can befound as follows:

• payoffs define inequalities for “best response polyhedra”

• compute all vertices of these polyhedra (using lrs by DavidAvis, requires arbitrary precision integers)

• match vertices for complementarity (LCP)

• find maximal cliques of matching vertices for equilibriumcomponents

18

Page 32: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Example

II

B0

1

2

3

1

I

0

l

3

r

2

T

T

2

II1

0

0

3l

B

r

I

2

19

Page 33: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Best response polyhedron of player I

B0

1

2

3

1

0

l

3

r

2

T

III

prob(r)10

payoff player I

20

Page 34: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Best response polyhedron of player I

B0

1

2

3

1

0

l

3

r

2

T

III

Tprob(r)

10

payoff player I

20

Page 35: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Best response polyhedron of player I

B0

1

2

3

1

0

l

3

r

2

T

III

B

prob(r)10

payoff player I

20

Page 36: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Best response polyhedron of player I

B0

1

2

3

1

0

l

3

r

2

T

III

B

Tprob(r)

10

payoff player I

20

Page 37: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Best response polyhedron of player II

B0

1

2

3

1

0

l

3

r

2

T

III

l

payoff player II

10prob(B)

B

Tprob(r)

10

payoff player I

20

Page 38: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Best response polyhedron of player II

B0

1

2

3

1

0

l

3

r

2

T

III

r

payoff player II

10prob(B)

B

Tprob(r)

10

payoff player I

20

Page 39: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Best response polyhedron of player II

B0

1

2

3

1

0

l

3

r

2

T

III

r

l

payoff player II

10prob(B)

B

Tprob(r)

10

payoff player I

20

Page 40: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Label with best responses and unplayed strategies

B0

1

2

3

1

0

l

3

r

2

T

III

l=0r=0B=0 T=0

r

l

payoff player II

10prob(B)

B

Tprob(r)

10

payoff player I

20

Page 41: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Equilibrium = all labels T ,B, l, r present

B0

1

2

3

1

0

l

3

r

2

T

III

l=0r=0B=0 T=0

r

l

payoff player II

10prob(B)

B

Tprob(r)

10

payoff player I

20

Page 42: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Equilibrium with multiple label r (degeneracy)

B0

1

2

3

1

0

l

3

r

2

T

III

l=0r=0B=0 T=0

r

l

payoff player II

10prob(B)

B

Tprob(r)

10

payoff player I

20

Page 43: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Equilibrium with multiple label B (degeneracy)

B0

1

2

3

1

0

l

3

r

2

T

III

l=0r=0B=0 T=0

r

l

payoff player II

10prob(B)

B

Tprob(r)

10

payoff player I

20

Page 44: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

⇒ equilibrium component with labels T and B, l, r

B0

1

2

3

1

0

l

3

r

2

T

III

l=0r=0B=0 T=0

r

l

payoff player II

10prob(B)

B

Tprob(r)

10

payoff player I

20

Page 45: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Equilibrium components via cliques

In degenerate games (= vertices with zero basic variables, occurfor game trees), get convex combinations of “exchangeable”equilibria. Recognized as cliques of matching vertex pairs:

1 2 3 4

1

2

3

4

v v v v

u

u

u

u

table of extreme equilibria geometry

21

Page 46: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Algorithm: Sequence form for game trees

Example of game tree:

10

L

V

2

a

q

C

20

c

U

ts

d

20 50

b

15

t

15

V

s

1

2

D

U

R

20

1

p

10

30

2

DC

5

15 −5

22

Page 47: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Exponentially large strategic formStrategy of a player:specifies a move for every information set of that player(except for unspecified moves ∗ at unreachable information sets)

⇒ exponential number of strategies

ap∗ aq∗ b∗∗ c∗s c∗t d∗∗

L∗C 5 5 10 20 50 5L∗D 5 5 20 30 15 5RUC 10 20 10 20 50 5RUD 10 20 20 30 15 5RVC 15 –5 10 20 50 5RVD 15 –5 20 30 15 5

23

Page 48: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Sequences instead of strategies

Sequence specifies moves only along path in game tree⇒ linear number of sequences, sparse payoff matrix A

∅ a b c d ap aq cs ct

∅ 5L 5RRU 10 20RV 15 –5C 10 20 50D 20 30 15

Expected payoff x>Ay , play rows with x ≥ 0 subject to Ex = e,

play columns with y ≥ 0 subject to Fy = f .24

Page 49: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Play as behavior strategy

Given: x ≥ 0 with Ex = e.

Move L is last move of unique sequence,say PQL, where one row of Ex = e saysxPQL + xPQR = xPQ

⇒ behavior-probability(L) =xPQL

xPQ

P

RL R

1

1

2

L

Q

1

Required assumption of perfect recall[Kuhn 1953, Selten 1975]:Each node in an information set ispreceded by same sequence, here PQ,of the player’s own earlier moves.

25

Page 50: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Play as behavior strategy

Given: x ≥ 0 with Ex = e.

Move L is last move of unique sequence,say PQL, where one row of Ex = e saysxPQL + xPQR = xPQ

⇒ behavior-probability(L) =xPQL

xPQ

P

RL R

1

1

2

L

Q

1

Required assumption of perfect recall[Kuhn 1953, Selten 1975]:Each node in an information set ispreceded by same sequence, here PQ,of the player’s own earlier moves.

25

Page 51: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Linear-sized sequence form

Input: Two-person game tree with perfect recall.

Theorem [Romanovskii 1962, von Stengel 1996]

The equilibria of a zero-sum game are the solutions to a LinearProgram (LP) of linear size in the size of the game tree.

Theorem [Koller/Megiddo/von Stengel 1996, vonStengel/Elzen/Talman 2002]

The equilibria of a non-zero-sum game are the solutions to aLinear Complementarity Problem (LCP) of linear size.

A sample equilibrium is found by Lemke’s algorithm.

This algorithm mimicks the Harsanyi–Selten tracing procedure andfinds a normal-form perfect equilibrium.

26

Page 52: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Linear-sized sequence form

Input: Two-person game tree with perfect recall.

Theorem [Romanovskii 1962, von Stengel 1996]

The equilibria of a zero-sum game are the solutions to a LinearProgram (LP) of linear size in the size of the game tree.

Theorem [Koller/Megiddo/von Stengel 1996, vonStengel/Elzen/Talman 2002]

The equilibria of a non-zero-sum game are the solutions to aLinear Complementarity Problem (LCP) of linear size.

A sample equilibrium is found by Lemke’s algorithm.

This algorithm mimicks the Harsanyi–Selten tracing procedure andfinds a normal-form perfect equilibrium.

26

Page 53: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Google Summer of Code 2016

Three GSoC students currently working on:

• Improve and convert GUI to pure JavaScript

• Advanced game tree layout e.g. drawing information sets ingames without time structure

• Educational features (example next)

27

Page 54: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Example of educational feature

28

Page 55: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Planned Extensions

Further solution algorithms:

• EEE [Audet/Hansen/Jaumard/Savard 2001]

• Path-following algorithms (Lemke-Howson, variants of Lemke)

• n-player games: simplicial subdivision, polynomial inequalities

Scripting features:

• connect with Gambit and Python

• database of reproducible computational experiments

Educational features:

• teaching algorithms interactively

29

Page 56: Game Theory Explorer - Software for the Applied Game Theoristgambit.sourceforge.net/games2016/gte-talk.pdf · PurposeUsageClient/ServerAlgorithmsFuture Game Theory Explorer - Software

Purpose Usage Client/Server Algorithms Future

Summary

GTE – Game theory explorer

• helps create, draw, and analyze game-theoretic models

• user-friendly, browser-based, low barriers to entry

• open-source, work in progress, welcomes contributors

https://github.com/gambitproject/gte/

https://github.com/gambitproject/jsgte/

Rahul Savani and Bernhard von Stengel (2016)Game Theory Explorer – Software for the Applied Game TheoristComputational Management Science 12, 5-33.

30