13
Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix game) (A,B): A R m×n - the row player’s payoff matrix B R m×n - the column player’s payoff matrix We denote the players’ pure strategies as and , respectively. M = {1,...,m} N = {m +1,...,m + n} We denote the rows of A by and the rows of by . a i ,i M, b j ,j N B T Mixed strategies are vectors from and . Components of are . X = x R m x 1 =1 Y = y R n y 1 =1 y Y y i ,i N

Algorithmic Game Theory - Heinz Nixdorf Institut · Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Algorithmic Game Theory - Heinz Nixdorf Institut · Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix

Algorithmic Game Theory

Lecture 3

04/27/10

1

2

Some notation

We consider a 2-player normal-form game given in matrix form (a bimatrix game) (A,B):

A ∈ Rm×n - the row player’s payoff matrix

B ∈ Rm×n - the column player’s payoff matrix

We denote the players’ pure strategies asand , respectively.

M = {1, . . . ,m}N = {m + 1, . . . ,m + n}

We denote the rows of A by and the rows of by .

ai, i ∈ M,bj , j ∈ NBT

Mixed strategies are vectors from and . Components of are .

X =�x ∈ Rm

�� �x�1 = 1�

Y =�y ∈ Rn

�� �y�1 = 1�

y ∈ Yyi, i ∈ N

Page 2: Algorithmic Game Theory - Heinz Nixdorf Institut · Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix

3

Some notationaiy - row player’s expected payoff for pure strategy

when column player is playing mixed strategy ybjx - column player’s expected payoff for pure strategy

when row player is playing mixed strategy x

Players’ payoffs given strategy profile (x,y) areand .

and likewise for .

We define the support of a mixed strategy as

Supp(x) =�i ∈ M

�� xi > 0�,

x ∈ Rm

y ∈ Rn

xT AyxT By

i ∈ M

j ∈ N

4

Some notation

Proposition 1The mixed strategy pair (x,y) is a Nash equilibrium of (A,B), if and only if for all and we havei ∈ M j ∈ N

j ∈ Supp(y) ⇒ bjx = maxk∈N

bkx.

i ∈ Supp(x) ⇒ aiy = maxk∈M

aky,

We say (A,B) is non-degenerate if to any mixed strategy z (of the row or column player), the number of pure best responses to z is at most the size of the support of z.

Page 3: Algorithmic Game Theory - Heinz Nixdorf Institut · Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix

5

Some geometry

A (convex) polyhedron H in is a setfor some , , i.e., an intersection of halfspaces.A bounded polyhedron is called a polytope.

Rd {z ∈ Rd |Cz ≤ q}C ∈ Rk×d q ∈ Rk

A face of H is a set , where the inequality holds for all .

{z ∈ H | cTz = α}

cT z ≤ α z ∈ H

A 0-dimensional face is called vertex, a 1-dimensional face an edge, a (d-1)-dimensional face a facet.

All faces of a polyhedron can be obtained by turning some of its defining inequalities into equalities. A facet is characterized by a single binding inequality.

6

Some geometry

A 3-dimensional polytope:

facetvertex

edge

Page 4: Algorithmic Game Theory - Heinz Nixdorf Institut · Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix

7

Some geometry

A polyhedron H is simple, if no point of H belongs to more than d of its facets.

Every vertex of a simple polyhedron is characterized by exactly d binding inequalities.

H ⊂ Rd

Not Simple: Simple:

8

Finding Nash equilibria

For our bimatrix game (A,B), we consider the following polyhedra:

H1 =�

(x, v) ∈ Rm × R��� x ∈ X, B

Tx ≤ (v, . . . , v)T

H2 =�

(y, u) ∈ Rn × R��� y ∈ Y,Ay ≤ (u, . . . , u)T

If (A,B) is non-degenerate, then the polyhedra aresimple.

H1, H2

Page 5: Algorithmic Game Theory - Heinz Nixdorf Institut · Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix

9

We label the vertices of these polyhedra with the indices of their binding inequalities (except ). Let (x,v) and (y,u) be vertices and

Finding Nash equilibria

L(x, v) =�i�� xi = 0

�∪

�j�� bjx = v

�j�� yj = 0

�∪

�i�� biy = u

�L(y, u) =

�x�1 = 1, �y�1 = 1

Theorem 1

A mixed strategy profile (x,y) is a Nash equilibrium of the game (A,B), if and only if there exist u,v such that

L(x, v) ∪ L(y, u) = M ∪N.

.

,

10

Mixed equilibria

3 3 1 0A = 2 5 B = 0 2

0 6 4 3

0x = 1/3 yT = 1/3 2/3

2/3

3Ay = 4 xTB = 8/3 8/3

4

only pure best responses can have probability > 0

Finding Nash equilibria

An example of a bimatrix game:

Page 6: Algorithmic Game Theory - Heinz Nixdorf Institut · Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix

11

Best response polyhedron H2 for player 2

= A�1�2�3

y4 y5

023

653

H2 = { (y4, y5, u) |�1 : 3y4 + 3y5≤ u�2 : 2y4 + 5y5≤ u�3 : 6y5≤ u

y4 + y5 = 1

y4 ≥ 0y5 ≥ 0

�4 :�5 : }

3

y

0 1

u

H

40

2

3

5

6

1

54

2

2

Best response polyhedron H2 for player 2

= A�1�2�3

y4 y5

023

653

H2 = { (y4, y5, u) |�1 : 3y4 + 3y5≤ u�2 : 2y4 + 5y5≤ u�3 : 6y5≤ u

y4 + y5 = 1

y4 ≥ 0y5 ≥ 0

�4 :�5 : }

3

y

0 1

u

H

40

2

3

5

6

1

54

2

2

Best response polyhedron H2 for player 2

= A�1�2�3

y4 y5

023

653

H2 = { (y4, y5, u) |�1 : 3y4 + 3y5≤ u�2 : 2y4 + 5y5≤ u�3 : 6y5≤ u

y4 + y5 = 1

y4 ≥ 0y5 ≥ 0

�4 :�5 : }

3

y

0 1

u

H

40

2

3

5

6

1

54

2

2

Finding Nash equilibria

12

Finding Nash equilibria

We define the following polytopes:

P =�

x ∈ Rm��� x ≥ 0, BT x ≤ (1, . . . , 1)T

Q =�

y ∈ Rn��� y ≥ 0, Ay ≤ (1, . . . , 1)T

Vertices of have exactly m labels.P

Analogous arguments apply to and .H2 Q

Note: and define bijections between and . Binding inequalities in correspond to binding inequalities in . In particular, vertices have the same labels.

(x, v)→ (1/v)x x →�(1/�x�1)x, (1/�x�1)

H1 H1

PP

Page 7: Algorithmic Game Theory - Heinz Nixdorf Institut · Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix

13

Projective transformation

H2,Q same face incidences

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

0 y j y j0

1

u

��

��

✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟

★★

★★★

★★

★★

★★

★★

★★

★★

★★

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✂✂✂✂

✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂

H2

y40

1

u

y5

�4

�3

�2

�1

�5

��

..................

............... �� � �

❇❇❇❇❇❇❇❇❇❇❇❇❆❆❆❆❆❆❆❆

❅❅

❅❅

Q

��

❅❅

❅❅

❅❅

❅❅

❅❅

❅❅

��

Projective transformation

H2,Q same face incidences

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

0 y j y j0

1

u

��

��

✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟

★★

★★★

★★

★★

★★

★★

★★

★★

★★

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✡✡

✂✂✂✂

✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂

H2

y40

1

u

y5

�4

�3

�2

�1

�5

��

..................

............... �� � �

❇❇❇❇❇❇❇❇❇❇❇❇❆❆❆❆❆❆❆❆

❅❅

❅❅

Q

��

❅❅

❅❅

❅❅

❅❅

❅❅

❅❅

��

Finding Nash equilibria

Projecting onto :H2 Q

Introduces extra vertex (0,0).

14

Best response polytope Q for player 2

= AQ = { y | Ay≤1, y≥0 }�1

�2�3

y4 y5

023

653

Q = { (y4, y5) |�1 : 3y4 + 3y5≤ 1�2 : 2y4 + 5y5≤ 1�3 : 6y5≤ 1

�4 : y4 ≥ 0�5 : y5 ≥ 0 }

y4

5y

4 1

23

5

Best response polytope Q for player 2

= AQ = { y | Ay≤1, y≥0 }�1

�2�3

y4 y5

023

653

Q = { (y4, y5) |�1 : 3y4 + 3y5≤ 1�2 : 2y4 + 5y5≤ 1�3 : 6y5≤ 1

�4 : y4 ≥ 0�5 : y5 ≥ 0 }

y4

5y

4 1

23

5

Best response polytope Q for player 2

= AQ = { y | Ay≤1, y≥0 }�1

�2�3

y4 y5

023

653

Q = { (y4, y5) |�1 : 3y4 + 3y5≤ 1�2 : 2y4 + 5y5≤ 1�3 : 6y5≤ 1

�4 : y4 ≥ 0�5 : y5 ≥ 0 }

y4

5y

4 1

23

5

Finding Nash equilibria

Page 8: Algorithmic Game Theory - Heinz Nixdorf Institut · Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix

15

B < 1P = { x | x > 0, x }

x3

x1

x2

x3

x1x2

4

1

52

3

1 02

4 30

!1!1

= B

Best response polytope P for player 1

4

5

4 5

x1

x2

x3

x1 + 4x3

2x2 + 3x3 ≤

≥ 0

1

≥≥

1

0

0

Best response polytope Q for player 2

= AQ = { y | Ay≤1, y≥0 }�1

�2�3

y4 y5

023

653

Q = { (y4, y5) |�1 : 3y4 + 3y5≤ 1�2 : 2y4 + 5y5≤ 1�3 : 6y5≤ 1

�4 : y4 ≥ 0�5 : y5 ≥ 0 }

y4

5y

4 1

23

5

Best response polytope Q for player 2

= AQ = { y | Ay≤1, y≥0 }�1

�2�3

y4 y5

023

653

Q = { (y4, y5) |�1 : 3y4 + 3y5≤ 1�2 : 2y4 + 5y5≤ 1�3 : 6y5≤ 1

�4 : y4 ≥ 0�5 : y5 ≥ 0 }

y4

5y

4 1

23

5

P = { (x1,x2,x3) |

}

B < 1P = { x | x > 0, x }

x3

x1

x2

x3

x1x2

4

1

52

3

1 02

4 30

!1!1

= B

Best response polytope P for player 1

4

5

Finding Nash equilibria

B < 1P = { x | x > 0, x }

x3

x1

x2

x3

x1x2

4

1

52

3

1 02

4 30

!1!1

= B

Best response polytope P for player 1

4

5

B < 1P = { x | x > 0, x }

x3

x1

x2

x3

x1x2

4

1

52

3

1 02

4 30

!1!1

= B

Best response polytope P for player 1

4

5

16

The Lemke-Howson Algorithm

Start at special vertices of polytopes , .

v = w = (0, . . . , 0)

In P, drop some label k (i.e., relax the corresp. binding inequality) and follow the edge defined by the remaining binding inequalities to an adjacent vertex .v

While {L(v) ∪ L(w) �= M ∪N

}

Alternatingly in Q and P, drop the labeland update or by following the edge of or defined by the remaining binding inequalities to an adjacent vertex.

� ∈ L(v) ∩ L(w)w v PQ

P Q

Page 9: Algorithmic Game Theory - Heinz Nixdorf Institut · Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix

17

The Lemke!Howson algorithm

2

3

5

4

4 1

2

1

5

3

The Lemke-Howson AlgorithmThe Lemke!Howson algorithm

2

Drop label 33

5

4

4 1

2

1

5

3

The Lemke!Howson algorithm

2

Drop label 33

5

4

4 1

2

1

5

3

The Lemke!Howson algorithm

2

Drop label 33

5

4

4 1

2

1

5

3

18

The Lemke-Howson AlgorithmThe Lemke!Howson algorithm

2

Drop label 33

5

4

4 1

2

1

5

3

The Lemke!Howson algorithm

2

Drop label 33

5

4

4 1

2

1

5

3

The Lemke!Howson algorithm

2

Drop label 33

5

4

4 1

2

1

5

3

The Lemke!Howson algorithm

2

Drop label 33

5

4

4 1

2

1

5

3

Page 10: Algorithmic Game Theory - Heinz Nixdorf Institut · Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix

19

The Lemke-Howson Algorithm

Let be the vertices of polytopes P, Q. We define a graph G on vertices with edges

V,WV ×W

�(v, w), (v�, w)

�, if

��L(v) ∩ L(v�)�� = m− 1,

�(v, w), (v, w�)

�, if

��L(w) ∩ L(w�)�� = n− 1.

Call completely labeled if , k-almost completely labeled if .

(v, w) L(v) ∪ L(w) = M ∪NL(v) ∪ L(w) = (M ∪N)\{k}

The LH algorithm follows a path through G along k-almost completely labeled vertices.

20

The Lemke-Howson Algorithm

Every completely labeled vertex of G is adjacent to exactly one k-almost completely labeled vertex.

Every k-almost completely labeled vertex of G has exactly two (k-almost) completely labeled neighbors.

G

0 NE

NE

NE

Page 11: Algorithmic Game Theory - Heinz Nixdorf Institut · Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix

21

Implementation: Pivoting

How do we traverse a polytope

P =�

x ∈ Rm��� x ≥ 0, BT x ≤ (1, . . . , 1)T

along its edges algebraically? Consider the system

BT x + Is = 1,

, where is a vector of slack variables, is the identity matrix and the all-ones vector.x, s ≥ 0 s ∈ Rn I ∈ Rn×n

1 ∈ Rn

Letβ(x, s) =

�i ∈ M

�� xi > 0�∪

�j ∈ N

�� sj > 0�.

22

Implementation: Pivoting

We are interested in those , where is a basis of .(x, s) β(x, s) Rn

Each basis corresponds to a a set of tight inequalities / labels:

j /∈ β(x, s)⇔ sj = 0⇔ bjx = 1⇔ j ∈ L(x)

i /∈ β(x, s)⇔ xi = 0⇔ i ∈ L(x)

Thus, dropping a label or is equivalent to switching to a new basis including the corresponding column vector or .

i jBT

i ej−m

TβLet consist of the column vectors defining the currently selected basis . We store the systemβ

T−1β

�BT x + Is

�= T−1

β 1.

Page 12: Algorithmic Game Theory - Heinz Nixdorf Institut · Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix

23

Implementation: Pivoting

In and , the columns corresponding to appear as unit vectors.

T−1β BT T−1

β I β

T−1β� TβA basis transformation corresponds to a Gaussian

elimination transforming the column vector entering the basis into a unit vector.

Let this vector be and .c k = argmini∈N :ci>0

(T−1β 1)i

ci

�T−1

β BT T−1β I

��� T−1β 1

�We call

a tableau.

Such an index exists by the boundedness of , and we obtain a new feasible basis (i.e., with ) by transforming into .

k Px, s ≥ 0 c ek

24

Implementation: Pivoting

B < 1P = { x | x > 0, x }

x3

x1

x2

x3

x1x2

4

1

52

3

1 02

4 30

!1!1

= B

Best response polytope P for player 1

4

5

4 5

x1

x2

x3

x1 + 4x3

2x2 + 3x3 ≤

≥ 0

1

≥≥

1

0

0

Best response polytope Q for player 2

= AQ = { y | Ay≤1, y≥0 }�1

�2�3

y4 y5

023

653

Q = { (y4, y5) |�1 : 3y4 + 3y5≤ 1�2 : 2y4 + 5y5≤ 1�3 : 6y5≤ 1

�4 : y4 ≥ 0�5 : y5 ≥ 0 }

y4

5y

4 1

23

5

Best response polytope Q for player 2

= AQ = { y | Ay≤1, y≥0 }�1

�2�3

y4 y5

023

653

Q = { (y4, y5) |�1 : 3y4 + 3y5≤ 1�2 : 2y4 + 5y5≤ 1�3 : 6y5≤ 1

�4 : y4 ≥ 0�5 : y5 ≥ 0 }

y4

5y

4 1

23

5

P = { (x1,x2,x3) |

}

1 0 4 1 0 10 2 3 0 1 1

x1 x2 x3

41 2 3 5s4 s5

Page 13: Algorithmic Game Theory - Heinz Nixdorf Institut · Algorithmic Game Theory Lecture 3 04/27/10 1 2 Some notation We consider a 2-player normal-form game given in matrix form (a bimatrix

25

Implementation: Pivoting

1 0 4 1 0 10 2 3 0 1 1

x1 x2 x3

41 2 3 5

drop 3

drop 1

s4 s5

1 2 3{ , , }

1 2 41/4 0 1 1/4 0 1/4

-3/4 2 0 -3/4 1 1/4{ , , }

2 3 4 1 0 4 1 0 10 2 3 0 1 1

{ , , }

P:

{ , }

26

Implementation: Pivoting

3 3 1 0 0 12 5 0 1 0 1

4 1 2 35

drop

1

4

Q:y4 y5 t1 t2 t3

50 6 0 0 1 1

41 1 1/3 0 0 1/3

0 3 -2/3 1 0 1/3

0 6 0 0 1 1{ , }5