40
Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions Algorithms for finding Nash Equilibria Ethan Kim School of Computer Science McGill University Algorithms for finding Nash Equilibria

Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

  • Upload
    halien

  • View
    218

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Algorithms for finding Nash Equilibria

Ethan Kim

School of Computer ScienceMcGill University

Algorithms for finding Nash Equilibria

Page 2: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Outline

1 Definition of bimatrix games

2 Simplifications

3 Setting up polytopes

4 Lemke-Howson algorithm

5 Lifting simplifications

Algorithms for finding Nash Equilibria

Page 3: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Bimatrix Games

• Given a bimatrix game (A,B) with m × n payoff matrices Aand B, a mixed strategy for player 1 is a vector x ∈ Rm withnonnegative components that sum to 1. For player 2, a mixedstrategy is a vector y ∈ Rn.

• The support of a mixed strategy is the set of pure strategiesthat have positive probability. A best response to y is amixed strategy x that maximizes the expected payof xTAy ,and vice versa. A Nash equilibrium is a pair of mutual bestresponses.

Algorithms for finding Nash Equilibria

Page 4: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Best Response Condition

Lemma

A mixed strategy x is a best response to a mixed strategy y if andonly if all pure strategies in its support are pure best responses toy (And vice versa).

Proof.

Let (Ay)i be the ith component of Ay , which is the expectedpayoff to player 1 when playing row i . Let u = maxi (Ay)i . Then,

xTAy =∑i

xi (Ay)i =∑i

xi (u−(u−(Ay)i )) = u−∑i

xi (u−(Ay)i ).

Since the sum∑

i xi (u − (Ay)i ) is nonnegative (for xi ≥ 0,u − (Ay)i ≥ 0), xTAy ≤ u. The expected payoff xTAy achievesthe maximum u iff that sum is 0. So if xi > 0, then (Ay)i = u.

Algorithms for finding Nash Equilibria

Page 5: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Some simplifications..

• Symmetry assumption:We first assume that the game is symmetric. So the payoffmatrix C is an n × n matrix C = A = BT .

• Nondegeneracy assumption:A bimatrix game is nondegenerate if the # of pure bestresponses to any mixed strategy never exceeds the size of itssupport.→ the submatrices induced by the supports are full-rank.

• So in a symmetric, nondegenerate game, a NE has supportsize equal to the # of pure best responses.

Algorithms for finding Nash Equilibria

Page 6: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Some simplifications..

• Symmetry assumption:We first assume that the game is symmetric. So the payoffmatrix C is an n × n matrix C = A = BT .

• Nondegeneracy assumption:A bimatrix game is nondegenerate if the # of pure bestresponses to any mixed strategy never exceeds the size of itssupport.→ the submatrices induced by the supports are full-rank.

• So in a symmetric, nondegenerate game, a NE has supportsize equal to the # of pure best responses.

Algorithms for finding Nash Equilibria

Page 7: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Some simplifications..

• Symmetry assumption:We first assume that the game is symmetric. So the payoffmatrix C is an n × n matrix C = A = BT .

• Nondegeneracy assumption:A bimatrix game is nondegenerate if the # of pure bestresponses to any mixed strategy never exceeds the size of itssupport.→ the submatrices induced by the supports are full-rank.

• So in a symmetric, nondegenerate game, a NE has supportsize equal to the # of pure best responses.

Algorithms for finding Nash Equilibria

Page 8: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

An Example of Symmetric Games

Consider the payoff matrices:

C =

0 3 00 0 32 2 2

= A = BT

Algorithms for finding Nash Equilibria

Page 9: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Best Response Condition gives a polyhedron..

• By the Best Response Condition, an equilibrium is given if anypure strategy is either a best response (to a mixed strategy)or is played with probability 0.

• This can be captured by polytopes whose facets representpure strategies, either as best responses, or having probabilityzero.

Algorithms for finding Nash Equilibria

Page 10: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Best Response Condition gives a polyhedron..

• By the Best Response Condition, an equilibrium is given if anypure strategy is either a best response (to a mixed strategy)or is played with probability 0.

• This can be captured by polytopes whose facets representpure strategies, either as best responses, or having probabilityzero.

Algorithms for finding Nash Equilibria

Page 11: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Best Response Polyhedron

• Define the maximum expected payoff for a strategy xk fork ∈ N as:

u = max{(Ay)k |k ∈ N}

• A best response polyhedron of a player is the set of theplayer’s mixed strategies with the upper envelop of expectedpayoffs to the opponent.

• E.g. For player 2, it is (y4, y5, y6, u) that fulfill the following:

0y4 + 3y5 + 0y6 ≤ u

0y4 + 0y5 + 3y6 ≤ u

2y4 + 2y5 + 2y6 ≤ u

y4, y5, y6 ≥ 0

y4 + y5 + y6 = 1

Algorithms for finding Nash Equilibria

Page 12: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Best Response Polyhedron

In general, the set of mixed strategies are represented by thepolyhedron:

P = {(x , u) ∈ RN ×R|x ≥ 0, 1T x = 1,CT x ≤ 1u}

We can simplify this polyhedron, first by assuming:

• C is nonnegative and has no zero column.

• (We can do this by adding a constant to C )

Then, we will elimiate the payoff variable u.

Algorithms for finding Nash Equilibria

Page 13: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

From P to P ..

• For P, we divide each inequaility∑

i∈N cijxi ≤ u by u, whichgives

∑i∈N cij(xi/u) ≤ 1.

• Treat each zi = xi/u as new variable, and call the resultingpolyhedron P. We then have:

P = {z ∈ RN |z ≥ 0,CT z ≤ 1}.

• In effect: (1) the expected payoffs u are normalized to 1, and(2) the conditions 1T x = 1 are dropped.

• Non-zero vectors z ∈ P are converted back to probabilityvectors by multiplying u = 1∑

i zi, and this scaling factor u is

the expected payoff to the opponent.

Algorithms for finding Nash Equilibria

Page 14: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

From P to P ..

• The set P is in 1-1 correspondence with P − {0} with themap (x , u) 7→ x · (1/u). (“projective transformations”)

• Since binding inequality in P corresponds to a bindinginequality in P, the transformation preserves face incidences.

Algorithms for finding Nash Equilibria

Page 15: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Best Response Polytope

• Because C is nonnegative & has no zero column, P is abounded, fully dimensional polytope.

• Because of nondegeneracy assumption, P is simple, i.e. everyvertex lies on exactly N facets of the polytope.

• A facet is obtained by making one of the inequalities binding,i.e. converting it to an equality.

Algorithms for finding Nash Equilibria

Page 16: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Best Response Polytope

We say a strategy i is represented at a vertex z , if either zi = 0, orCiz = 1, or both (i.e. At least one of the two inequalities forstrategy i is tight at z .). Then:

Theorem

If a vertex z represents all strategies, then either z = 0, or thecorresponding (x , x) is a symmetric Nash.

Proof.

Assume z 6= 0. Then, the corresponding x = u · z is well defined,and xi ’s are nonnegative numbers adding to 1. To see (x , x) is aNash, observe that x satisfies the Best Response Condition: forevery positive xi ’s, Ciz = 1. Thus, every support is a bestresponse.

Algorithms for finding Nash Equilibria

Page 17: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lemke-Howson Algorithm

• Finds a vertex z 6= 0, where everystrategy is represented.

• First, we label each facet of P by thestrategy it represents: note that thereare two facets (one for (Cz)i = 1 andthe other for zi = 0).

• Then, label each vertex by the labelsof adjacent facets.

Algorithms for finding Nash Equilibria

Page 18: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lemke-Howson Algorithm

• Finds a vertex z 6= 0, where everystrategy is represented.

• First, we label each facet of P by thestrategy it represents: note that thereare two facets (one for (Cz)i = 1 andthe other for zi = 0).

• Then, label each vertex by the labelsof adjacent facets.

Algorithms for finding Nash Equilibria

Page 19: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lemke-Howson Algorithm

• Finds a vertex z 6= 0, where everystrategy is represented.

• First, we label each facet of P by thestrategy it represents: note that thereare two facets (one for (Cz)i = 1 andthe other for zi = 0).

• Then, label each vertex by the labelsof adjacent facets.

Algorithms for finding Nash Equilibria

Page 20: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lemke-Howson Algorithm

• Due to nondegeneracy, each vertexhas precisely N adjacent facets, i.e.representing strategies.

• → Each vertex has precisely N labels,while for each strategy i , bothinequalities can be tight.

• So a vertex can be labeled withduplicate copies of strategy i , whilemissing some other strategy j .

Algorithms for finding Nash Equilibria

Page 21: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lemke-Howson Algorithm

• Due to nondegeneracy, each vertexhas precisely N adjacent facets, i.e.representing strategies.

• → Each vertex has precisely N labels,while for each strategy i , bothinequalities can be tight.

• So a vertex can be labeled withduplicate copies of strategy i , whilemissing some other strategy j .

Algorithms for finding Nash Equilibria

Page 22: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lemke-Howson Algorithm

• Due to nondegeneracy, each vertexhas precisely N adjacent facets, i.e.representing strategies.

• → Each vertex has precisely N labels,while for each strategy i , bothinequalities can be tight.

• So a vertex can be labeled withduplicate copies of strategy i , whilemissing some other strategy j .

Algorithms for finding Nash Equilibria

Page 23: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lemke-Howson Algorithm

1 Set the starting vertex v0 = 0. (This is a vertex of P.)

2 Choose an arbitrary strategy i , and relax the correspondinginequality. We are then taken to an adjacent vertex v1. Thisvertex has zi 6= 0 for the previously chosen strategy i .

3 At v1, all strategies are represented except i , and one otherstrategy j is represented “twice” (i.e. both zj = 0 and(Cz)j = 1). By relaxing one of these two inequalities, we canreach two new vertices (one being v0, and the other being v2).

4 If v2 again represents a strategy twice, repeat Step 3.Otherwise, we have reached a vertex that represents allstrategies, each exactly once.

Algorithms for finding Nash Equilibria

Page 24: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lemke-Howson Algorithm

1 Set the starting vertex v0 = 0. (This is a vertex of P.)

2 Choose an arbitrary strategy i , and relax the correspondinginequality. We are then taken to an adjacent vertex v1. Thisvertex has zi 6= 0 for the previously chosen strategy i .

3 At v1, all strategies are represented except i , and one otherstrategy j is represented “twice” (i.e. both zj = 0 and(Cz)j = 1). By relaxing one of these two inequalities, we canreach two new vertices (one being v0, and the other being v2).

4 If v2 again represents a strategy twice, repeat Step 3.Otherwise, we have reached a vertex that represents allstrategies, each exactly once.

Algorithms for finding Nash Equilibria

Page 25: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lemke-Howson Algorithm

1 Set the starting vertex v0 = 0. (This is a vertex of P.)

2 Choose an arbitrary strategy i , and relax the correspondinginequality. We are then taken to an adjacent vertex v1. Thisvertex has zi 6= 0 for the previously chosen strategy i .

3 At v1, all strategies are represented except i , and one otherstrategy j is represented “twice” (i.e. both zj = 0 and(Cz)j = 1). By relaxing one of these two inequalities, we canreach two new vertices (one being v0, and the other being v2).

4 If v2 again represents a strategy twice, repeat Step 3.Otherwise, we have reached a vertex that represents allstrategies, each exactly once.

Algorithms for finding Nash Equilibria

Page 26: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lemke-Howson Algorithm

1 Set the starting vertex v0 = 0. (This is a vertex of P.)

2 Choose an arbitrary strategy i , and relax the correspondinginequality. We are then taken to an adjacent vertex v1. Thisvertex has zi 6= 0 for the previously chosen strategy i .

3 At v1, all strategies are represented except i , and one otherstrategy j is represented “twice” (i.e. both zj = 0 and(Cz)j = 1). By relaxing one of these two inequalities, we canreach two new vertices (one being v0, and the other being v2).

4 If v2 again represents a strategy twice, repeat Step 3.Otherwise, we have reached a vertex that represents allstrategies, each exactly once.

Algorithms for finding Nash Equilibria

Page 27: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lemke-Howson AlgorithmGoing back to the example above..

Algorithms for finding Nash Equilibria

Page 28: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Proof of CorrectnessWhy does the algorithm terminate?

• No internal vertex vi can be revisited:Repeating vi would mean that there are 3 vertices adjacent tovi that are reachable by relaxing a constraint with doublyrepresented strategy.

Algorithms for finding Nash Equilibria

Page 29: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Proof of CorrectnessWhy does the algorithm terminate?

• The initial vertex v0 cannot be revisited:Let i denote the strategy we initially relaxed to depart fromv0. Along the path, the algorithm never picks up strategy iuntil it terminates. But all vertices adjacent to v0 representsstrategy i , except v1. Since v1 cannot be revisited, v0 cannotbe revisited.

Algorithms for finding Nash Equilibria

Page 30: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Proof of Correctness

Why does the algorithm terminate?

• No internal vertex vi can be revisited:

• The initial vertex v0 cannot be revisited:

• ⇒ Note that P has a finite number of vertices. If a vertexrepresents a strategy twice, there is always a new vertex toreach, other than the one we came from. Therefore, LHalgorithm finds a vertex represents all strategies.

Algorithms for finding Nash Equilibria

Page 31: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Linear Complimentarity Problem(LCP)

• The polytope P doesn’t provide us a NE; it simply gives usthe set of mixed strategies.

• For a point z ∈ P to be a NE, it needed to represent allstrategies, i.e. all strategies with positive probabilities are bestresponses.

• This can be captured by the complimentarity condition:

zT (1− Cz) = 0

, which is equivalent to xi = 0 or (Cx)i = u. By the BRC, thisimplies that x is a best response to itself.

• (See von Stengel 2002 for more detailed treatment of LCP.)

Algorithms for finding Nash Equilibria

Page 32: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Edge Traversal

• Edge traversal between two vertices is implemetedalgebraically by pivoting with variables entering and leaving abasis, while nonbasic variables represents the current facets.(Same as in Simplex algorithm!)

• The difference from Simplex algorithm is the rule for choosingthe next entering variable: in Simplex Alg, the objectivefunction dictates this choice. In LH algorithm, thecomplementary pivoting rule chooses the nonbasic variablewith duplicate label to enter the basis.

Algorithms for finding Nash Equilibria

Page 33: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lifting Symmetry

• To handle non-symmetric bimatrix games, one can constructtwo polytopes P and Q, one for each player.

• Each “move” in the algorithm can be achieved by finding anew vertex from the polytope P and Q in an alternatingfashion.

• In fact, this is a path on the product polytope P × Q, givenby the set of pairs (x , y) of P × Q.

Algorithms for finding Nash Equilibria

Page 34: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lifting Symmetry

• To handle non-symmetric bimatrix games, one can constructtwo polytopes P and Q, one for each player.

• Each “move” in the algorithm can be achieved by finding anew vertex from the polytope P and Q in an alternatingfashion.

• In fact, this is a path on the product polytope P × Q, givenby the set of pairs (x , y) of P × Q.

Algorithms for finding Nash Equilibria

Page 35: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lifting Symmetry

• To handle non-symmetric bimatrix games, one can constructtwo polytopes P and Q, one for each player.

• Each “move” in the algorithm can be achieved by finding anew vertex from the polytope P and Q in an alternatingfashion.

• In fact, this is a path on the product polytope P × Q, givenby the set of pairs (x , y) of P × Q.

Algorithms for finding Nash Equilibria

Page 36: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lifting Symmetry

• To formulate a non-symmetric game into a symmetric game:

z =

(xy

), C =

(0 A

BT 0

)• Then the normalization is done separately for x and y rather

than the vector z as a whole.

• The edges in the product graph P × Q is then traversedalternatively.

Algorithms for finding Nash Equilibria

Page 37: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Lifting Nondegeneracy

• The complementary path computed by LH is unique only ifthe leaving variable (dropping strategy) is unique. If not, thenthe system has degenerate basic feasible solutions, and LHalgorithm may cycle unless the leaving variable is chosen in asystematic way.

• Degeneracy can be resolved by the standard lexicographicperturbation techniques from linear programming: (1) replaceBT x ≤ 1 by BT x ≤ 1 + (ε, . . . , εn) (2) when choosing theleaving variable by pivoting rule, use the lexico-minimum rules.

• See von Stengel 2002 for a more detailed exposition.

Algorithms for finding Nash Equilibria

Page 38: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Consequences of LH algorithm

• Lemke-Howson algorithm always finds a Nash equilibrium forany 2-player bimatrix games.⇒ Proof for existence of Nash, with an algorithm to find one.

• A nondegenerate bimatrix game has an odd number of Nashequilibria.Why? The LH algorithm can start at any Nash equilibrium,not just at 0. When LH is started at a NE not on the pathstarting from 0, it would terminate at another NE. Since theremay be such disjoint paths with both endpoints being NE,there are odd # of NE (excluding the 0).

Algorithms for finding Nash Equilibria

Page 39: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

Concluding remarks..

• LH finds a NE in a finite number of steps, but how fast doesit run?Savani & von Stengel (2006) gave a class of square bimatrixgames for which LH algorithm takes an exponential number ofsteps in the dimension d of the game.

• What is the complexity of finding a Nash Equilibrium in abimatrix game?The usual class of NP doesn’t apply – there is always a NE!Daskalakis, Goldberg and Papadimitriou showed that it isPPAD-Complete. (in another lecture)

Algorithms for finding Nash Equilibria

Page 40: Algorithms for finding Nash Equilibria - McGill University · IntroductionSimpli cationsSetting up polytopesLemke-Howson AlgorithmLifting simpli cationsConclusions Algorithms for

Introduction Simplifications Setting up polytopes Lemke-Howson Algorithm Lifting simplifications Conclusions

References

• Lemke and Howson, Equilibrium points of bimatrix games,SIAM Journal of Applied Mathematics, 12, pp413-423, 1964.

• Papadimitriou, Chapter 2 “The complexity of finding NashEquilibria”, Algorithmic Game Theory

• von Stengel, Chapter 3 “Equilibrium Computation forTwo-Player Games”, Algorithmic Game Theory

• Savani and von Stengel, Hard-To-Solve Bimatrix Games,Econometrica, Vol 74, No. 2 (March 2006)

• C. Daskalakis, P. Goldberg and C. Papadimitriou, TheComplexity of Computing a Nash Equilibrium, to appearSIAM Journal on Computing.

Algorithms for finding Nash Equilibria