game theory and computational complexity

146
Game Theory and Computational Complexity Paul W. Goldberg 1 1 Department of Computer Science University of Liverpool, U. K. EWSCS’09 Winter School, Estonia March 2009 Goldberg Game Theory and Computational Complexity

Upload: vokien

Post on 14-Feb-2017

230 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Game Theory and Computational Complexity

Game Theory and Computational Complexity

Paul W. Goldberg1

1Department of Computer ScienceUniversity of Liverpool, U. K.

EWSCS’09 Winter School, EstoniaMarch 2009

Goldberg Game Theory and Computational Complexity

Page 2: Game Theory and Computational Complexity

Topics

Problem statements, Nash equilibrium

NP-completeness of finding certain Nash equilibria1

Total search problems, PPAD and related complexity classes

PPAD-completeness of finding unrestricted Nash equilibria[Daskalakis, G and Papadimitriou, CACM Feb’09]

The quest for fast algorithms to compute approximate Nashequilibria

and I really ought to mention “Potential games” and thecomplexity class PLS, but won’t have time to do the details.

1I will give you definitions soon!Goldberg Game Theory and Computational Complexity

Page 3: Game Theory and Computational Complexity

Topics

Problem statements, Nash equilibrium

NP-completeness of finding certain Nash equilibria1

Total search problems, PPAD and related complexity classes

PPAD-completeness of finding unrestricted Nash equilibria[Daskalakis, G and Papadimitriou, CACM Feb’09]

The quest for fast algorithms to compute approximate Nashequilibria

and I really ought to mention “Potential games” and thecomplexity class PLS, but won’t have time to do the details.

1I will give you definitions soon!Goldberg Game Theory and Computational Complexity

Page 4: Game Theory and Computational Complexity

Topics

Problem statements, Nash equilibrium

NP-completeness of finding certain Nash equilibria1

Total search problems, PPAD and related complexity classes

PPAD-completeness of finding unrestricted Nash equilibria[Daskalakis, G and Papadimitriou, CACM Feb’09]

The quest for fast algorithms to compute approximate Nashequilibria

and I really ought to mention “Potential games” and thecomplexity class PLS, but won’t have time to do the details.

1I will give you definitions soon!Goldberg Game Theory and Computational Complexity

Page 5: Game Theory and Computational Complexity

Goldberg Game Theory and Computational Complexity

Page 6: Game Theory and Computational Complexity

Game Theory and Computer Science

Modern CS and GT originated with John von Neumann atPrinceton in the 1950s [Yoav Shoham, CACM Aug’08]

Common motivations:

modeling rationality (interaction of selfish agents on Internet);AI: solve cognitive tasks such as negotiation

It turns out that GT gives rise to problems that pose veryinteresting mathematical challenges, e.g. w.r.t. computationalcomplexity. Complexity classes PPAD and PLS.

Goldberg Game Theory and Computational Complexity

Page 7: Game Theory and Computational Complexity

Game Theory and Computer Science

Modern CS and GT originated with John von Neumann atPrinceton in the 1950s [Yoav Shoham, CACM Aug’08]

Common motivations:

modeling rationality (interaction of selfish agents on Internet);AI: solve cognitive tasks such as negotiation

It turns out that GT gives rise to problems that pose veryinteresting mathematical challenges, e.g. w.r.t. computationalcomplexity. Complexity classes PPAD and PLS.

Goldberg Game Theory and Computational Complexity

Page 8: Game Theory and Computational Complexity

Game Theory and Computer Science

Modern CS and GT originated with John von Neumann atPrinceton in the 1950s [Yoav Shoham, CACM Aug’08]

Common motivations:

modeling rationality (interaction of selfish agents on Internet);AI: solve cognitive tasks such as negotiation

It turns out that GT gives rise to problems that pose veryinteresting mathematical challenges, e.g. w.r.t. computationalcomplexity. Complexity classes PPAD and PLS.

Goldberg Game Theory and Computational Complexity

Page 9: Game Theory and Computational Complexity

Example 1: Prisoners’ dilemma

e.g. Oil cartel

cooperate

0cut production

defect

1raise production

cooperate defect

cut production raise production0 1

88

010

100

11

There’s a row player and a column player.

Solution: both players defect. Numbers in red are probabilities.

Nash equilibrium: no incentive to change

Goldberg Game Theory and Computational Complexity

Page 10: Game Theory and Computational Complexity

Example 1: Prisoners’ dilemma

e.g. Oil cartel

cooperate 0

cut production

defect 1

raise production

cooperate defect

cut production raise production

0 1

88

010

100

11

There’s a row player and a column player.Solution: both players defect. Numbers in red are probabilities.Nash equilibrium: no incentive to change

Goldberg Game Theory and Computational Complexity

Page 11: Game Theory and Computational Complexity

Example 1: Prisoners’ dilemma e.g. Oil cartel

cooperate

0cut production

defect

1raise production

cooperate defect

cut production raise production0 1

88

010

100

11

There’s a row player and a column player.Solution: both players defect. Numbers in red are probabilities.Nash equilibrium: no incentive to change

Goldberg Game Theory and Computational Complexity

Page 12: Game Theory and Computational Complexity

Example 2: Rock-paper-scissors

2008 Rock-paper-scissors Championship (Las Vegas, USA)

Goldberg Game Theory and Computational Complexity

Page 13: Game Theory and Computational Complexity

Rock-paper-scissors: payoff matrix

rock

1/3

paper

1/3

scissors

1/3

rock paper scissors

1/3 1/3 1/3

00

-11

1-1

1-1

00

-11

-11

1-1

00

Solution: both players randomize: probabilities are shown in red.

Goldberg Game Theory and Computational Complexity

Page 14: Game Theory and Computational Complexity

Rock-paper-scissors: payoff matrix

rock 1/3

paper 1/3

scissors 1/3

rock paper scissors1/3 1/3 1/3

00

-11

1-1

1-1

00

-11

-11

1-1

00

Solution: both players randomize: probabilities are shown in red.

Goldberg Game Theory and Computational Complexity

Page 15: Game Theory and Computational Complexity

Rock-paper-scissors: a non-symmetrical variant

rock

1/3

paper

1/3

scissors

1/3

rock paper scissors

1/3 5/12 1/4

00

-11

-1

1-1

00

-11

-11

1-1

00

2

What is the solution?

(thanks to Rahul Savani’s on-line Nash equilibrium solver.)

Goldberg Game Theory and Computational Complexity

Page 16: Game Theory and Computational Complexity

Rock-paper-scissors: a non-symmetrical variant

rock 1/3

paper 1/3

scissors 1/3

rock paper scissors1/3 5/12 1/4

00

-11

-1

1-1

00

-11

-11

1-1

00

2

What is the solution?(thanks to Rahul Savani’s on-line Nash equilibrium solver.)

Goldberg Game Theory and Computational Complexity

Page 17: Game Theory and Computational Complexity

Example 3: Stag hunt

2 hunters; each chooses whether to hunt stag or rabbit...

It takes 2 hunters to catch a stag, but only one to catch a rabbit.

Goldberg Game Theory and Computational Complexity

Page 18: Game Theory and Computational Complexity

Example 3: Stag hunt

2 hunters; each chooses whether to hunt stag or rabbit...It takes 2 hunters to catch a stag,

but only one to catch a rabbit.

Goldberg Game Theory and Computational Complexity

Page 19: Game Theory and Computational Complexity

Example 3: Stag hunt

2 hunters; each chooses whether to hunt stag or rabbit...It takes 2 hunters to catch a stag, but only one to catch a rabbit.

Goldberg Game Theory and Computational Complexity

Page 20: Game Theory and Computational Complexity

Stag hunt: payoff matrix

hunt stag 1

0 1/8

hunt rabbit 0

1 7/8

hunt stag hunt rabbit1

0 1/8

0

1 7/8

88

01

10

11

Solution: both hunt stag (the best solution).

Or, both playershunt rabbit. Or, both players randomize (with the rightprobabilities).

Goldberg Game Theory and Computational Complexity

Page 21: Game Theory and Computational Complexity

Stag hunt: payoff matrix

hunt stag

1

0

1/8

hunt rabbit

0

1

7/8

hunt stag hunt rabbit

1

0

1/8 0

1

7/8

88

01

10

11

Solution: both hunt stag (the best solution). Or, both playershunt rabbit.

Or, both players randomize (with the rightprobabilities).

Goldberg Game Theory and Computational Complexity

Page 22: Game Theory and Computational Complexity

Stag hunt: payoff matrix

hunt stag

1 0

1/8

hunt rabbit

0 1

7/8

hunt stag hunt rabbit

1 0

1/8

0 1

7/8

88

01

10

11

Solution: both hunt stag (the best solution). Or, both playershunt rabbit. Or, both players randomize (with the rightprobabilities).

Goldberg Game Theory and Computational Complexity

Page 23: Game Theory and Computational Complexity

Definition and notation

Game: set of players, each player has his own set of allowedactions (also known as “pure strategies”). Any combination ofactions will result in a numerical payoff (or value, or utility) foreach player. (A game should specify the payoffs, for every playerand every combination of actions.)

Number the players 1, 2, ..., k .Let Sp denote player p’s set of actions. e.g. in rock-paper-scissors,S1 = S2 = rock,paper, scissors.n denotes the size of the largest Sp. (So, in rock-paper-scissors,k = 2, n = 3.) If k is a constant, we seek algorithms polynomial inn. Indeed, much work studies special case k = 2, where a game’spayoffs can be written down in 2 matrices.S = S1 × S2 × . . .× Sk is the set of pure strategy profiles. i.e. ifs ∈ S , s denotes a choice of action, for each player.Each s ∈ S gives rise to utility or payoff to each player. up

s willdenote the payoff to player p when all players choose s.

Goldberg Game Theory and Computational Complexity

Page 24: Game Theory and Computational Complexity

Definition and notation

Game: set of players, each player has his own set of allowedactions (also known as “pure strategies”). Any combination ofactions will result in a numerical payoff (or value, or utility) foreach player. (A game should specify the payoffs, for every playerand every combination of actions.)Number the players 1, 2, ..., k .

Let Sp denote player p’s set of actions. e.g. in rock-paper-scissors,S1 = S2 = rock,paper, scissors.n denotes the size of the largest Sp. (So, in rock-paper-scissors,k = 2, n = 3.) If k is a constant, we seek algorithms polynomial inn. Indeed, much work studies special case k = 2, where a game’spayoffs can be written down in 2 matrices.S = S1 × S2 × . . .× Sk is the set of pure strategy profiles. i.e. ifs ∈ S , s denotes a choice of action, for each player.Each s ∈ S gives rise to utility or payoff to each player. up

s willdenote the payoff to player p when all players choose s.

Goldberg Game Theory and Computational Complexity

Page 25: Game Theory and Computational Complexity

Definition and notation

Game: set of players, each player has his own set of allowedactions (also known as “pure strategies”). Any combination ofactions will result in a numerical payoff (or value, or utility) foreach player. (A game should specify the payoffs, for every playerand every combination of actions.)Number the players 1, 2, ..., k .Let Sp denote player p’s set of actions. e.g. in rock-paper-scissors,S1 = S2 = rock,paper, scissors.

n denotes the size of the largest Sp. (So, in rock-paper-scissors,k = 2, n = 3.) If k is a constant, we seek algorithms polynomial inn. Indeed, much work studies special case k = 2, where a game’spayoffs can be written down in 2 matrices.S = S1 × S2 × . . .× Sk is the set of pure strategy profiles. i.e. ifs ∈ S , s denotes a choice of action, for each player.Each s ∈ S gives rise to utility or payoff to each player. up

s willdenote the payoff to player p when all players choose s.

Goldberg Game Theory and Computational Complexity

Page 26: Game Theory and Computational Complexity

Definition and notation

Game: set of players, each player has his own set of allowedactions (also known as “pure strategies”). Any combination ofactions will result in a numerical payoff (or value, or utility) foreach player. (A game should specify the payoffs, for every playerand every combination of actions.)Number the players 1, 2, ..., k .Let Sp denote player p’s set of actions. e.g. in rock-paper-scissors,S1 = S2 = rock,paper, scissors.n denotes the size of the largest Sp. (So, in rock-paper-scissors,k = 2, n = 3.) If k is a constant, we seek algorithms polynomial inn. Indeed, much work studies special case k = 2, where a game’spayoffs can be written down in 2 matrices.S = S1 × S2 × . . .× Sk is the set of pure strategy profiles. i.e. ifs ∈ S , s denotes a choice of action, for each player.

Each s ∈ S gives rise to utility or payoff to each player. ups will

denote the payoff to player p when all players choose s.

Goldberg Game Theory and Computational Complexity

Page 27: Game Theory and Computational Complexity

Definition and notation

Game: set of players, each player has his own set of allowedactions (also known as “pure strategies”). Any combination ofactions will result in a numerical payoff (or value, or utility) foreach player. (A game should specify the payoffs, for every playerand every combination of actions.)Number the players 1, 2, ..., k .Let Sp denote player p’s set of actions. e.g. in rock-paper-scissors,S1 = S2 = rock,paper, scissors.n denotes the size of the largest Sp. (So, in rock-paper-scissors,k = 2, n = 3.) If k is a constant, we seek algorithms polynomial inn. Indeed, much work studies special case k = 2, where a game’spayoffs can be written down in 2 matrices.S = S1 × S2 × . . .× Sk is the set of pure strategy profiles. i.e. ifs ∈ S , s denotes a choice of action, for each player.Each s ∈ S gives rise to utility or payoff to each player. up

s willdenote the payoff to player p when all players choose s.

Goldberg Game Theory and Computational Complexity

Page 28: Game Theory and Computational Complexity

Definition and notation

Two parameters, k and n.normal-form game: list of all up

s ’s

2-player: 2 n × n matrices; so 2n2 numbers

k-player: knk numbers

Thus, only good for games with few players, but OK to allow largen. (fix k ; size of game is poly(n).)

General issue:

run-time of algorithms (to solve a game) in terms of nk is small constant; often we consider the case of k = 2.When can it be polynomial in n?

Goldberg Game Theory and Computational Complexity

Page 29: Game Theory and Computational Complexity

Definition and notation

Two parameters, k and n.normal-form game: list of all up

s ’s

2-player: 2 n × n matrices; so 2n2 numbers

k-player: knk numbers

Thus, only good for games with few players, but OK to allow largen. (fix k ; size of game is poly(n).)

General issue:

run-time of algorithms (to solve a game) in terms of nk is small constant; often we consider the case of k = 2.When can it be polynomial in n?

Goldberg Game Theory and Computational Complexity

Page 30: Game Theory and Computational Complexity

Some comments

This basic model may not always capture details of a situation. Ina Bayesian game, up

s could be probability distribution over p’spayoff, allowing one to represent uncertainty about a payoff.

This is not really intended combinatorial games like chess, whereplayers take turns. One could define a strategy in advance, but itwould be impossibly large to represent...

Goldberg Game Theory and Computational Complexity

Page 31: Game Theory and Computational Complexity

Some comments

This basic model may not always capture details of a situation. Ina Bayesian game, up

s could be probability distribution over p’spayoff, allowing one to represent uncertainty about a payoff.This is not really intended combinatorial games like chess, whereplayers take turns. One could define a strategy in advance, but itwould be impossibly large to represent...

Goldberg Game Theory and Computational Complexity

Page 32: Game Theory and Computational Complexity

Nash equilibrium

standard notion of “outcome of the game”

it should specify a strategy for each player, suchthat each player is receiving optimal payoff inthe context of the other players’ choices.

A pure Nash equilibrium is one in which eachplayer chooses a pure strategy — problem: forsome games, there is no pure Nash equilibrium!

A mixed Nash equilibrium assigns, for eachplayer, a probability distribution over his purestrategies, so that a player’s payoff is hisexpected payoff w.r.t. these distributions —Nash’s theorem shows that this always exists!

John ForbesNash

Goldberg Game Theory and Computational Complexity

Page 33: Game Theory and Computational Complexity

Nash equilibrium

standard notion of “outcome of the game”

it should specify a strategy for each player, suchthat each player is receiving optimal payoff inthe context of the other players’ choices.

A pure Nash equilibrium is one in which eachplayer chooses a pure strategy — problem: forsome games, there is no pure Nash equilibrium!

A mixed Nash equilibrium assigns, for eachplayer, a probability distribution over his purestrategies, so that a player’s payoff is hisexpected payoff w.r.t. these distributions —Nash’s theorem shows that this always exists!

John ForbesNash

Goldberg Game Theory and Computational Complexity

Page 34: Game Theory and Computational Complexity

Nash equilibrium

standard notion of “outcome of the game”

it should specify a strategy for each player, suchthat each player is receiving optimal payoff inthe context of the other players’ choices.

A pure Nash equilibrium is one in which eachplayer chooses a pure strategy — problem: forsome games, there is no pure Nash equilibrium!

A mixed Nash equilibrium assigns, for eachplayer, a probability distribution over his purestrategies, so that a player’s payoff is hisexpected payoff w.r.t. these distributions —Nash’s theorem shows that this always exists!

John ForbesNash

Goldberg Game Theory and Computational Complexity

Page 35: Game Theory and Computational Complexity

Nash equilibrium

standard notion of “outcome of the game”

it should specify a strategy for each player, suchthat each player is receiving optimal payoff inthe context of the other players’ choices.

A pure Nash equilibrium is one in which eachplayer chooses a pure strategy — problem: forsome games, there is no pure Nash equilibrium!

A mixed Nash equilibrium assigns, for eachplayer, a probability distribution over his purestrategies, so that a player’s payoff is hisexpected payoff w.r.t. these distributions —Nash’s theorem shows that this always exists!

John ForbesNash

Goldberg Game Theory and Computational Complexity

Page 36: Game Theory and Computational Complexity

Computational problem

Pure Nash

Input: A game in normal form, essentially consisting of allthe values up

s for each player p and strategy profile s.Question: Is there a pure Nash equilibrium.

That decision problem has corresponding search problem thatreplaces the question with

Output: A pure Nash equilibrium.If the number of players k is a constant, the above problems are inP. If k is not a constant, you should really study “conciserepresentations” of games.

Goldberg Game Theory and Computational Complexity

Page 37: Game Theory and Computational Complexity

Computational problem

Pure Nash

Input: A game in normal form, essentially consisting of allthe values up

s for each player p and strategy profile s.Question: Is there a pure Nash equilibrium.

That decision problem has corresponding search problem thatreplaces the question with

Output: A pure Nash equilibrium.If the number of players k is a constant, the above problems are inP. If k is not a constant, you should really study “conciserepresentations” of games.

Goldberg Game Theory and Computational Complexity

Page 38: Game Theory and Computational Complexity

Another computational problem

Nash

Input: A game in normal form, essentially consisting of allthe values up

s for each player p and strategy profile s.Output: A (mixed) Nash equilibrium.

By Nash’s theorem, intrinsically a search problem, not a decisionproblem.

3+ players: big problem: solution may involve irrational numbers.So we will change the problem a bit:

Useful Analogy

(total) search for root of (odd-degree) polynomial: look forapproximation

Replace “no incentive to change” by “low incentive”

Goldberg Game Theory and Computational Complexity

Page 39: Game Theory and Computational Complexity

Another computational problem

Nash

Input: A game in normal form, essentially consisting of allthe values up

s for each player p and strategy profile s.Output: A (mixed) Nash equilibrium.

By Nash’s theorem, intrinsically a search problem, not a decisionproblem.3+ players: big problem: solution may involve irrational numbers.So we will change the problem a bit:

Useful Analogy

(total) search for root of (odd-degree) polynomial: look forapproximation

Replace “no incentive to change” by “low incentive”

Goldberg Game Theory and Computational Complexity

Page 40: Game Theory and Computational Complexity

Re-state the problem

ε-Nash equilibrium: Expected payoff +ε ≥ exp’d payoff of bestpossible response

Approximate Nash

Input: A game in normal form, essentially consisting of allthe values up

s for each player p and strategy profile s.ups ∈ [0, 1].

small ε > 0Output: A (mixed) ε-Nash equilibrium.

Notice that we restrict payoffs to [0, 1] (why?)Formulate computational problem as: Algorithm to be polynomialin n and 1/ε.If the above is hard, then it’s hard to find a true Nash equilibrium.

Goldberg Game Theory and Computational Complexity

Page 41: Game Theory and Computational Complexity

Computational complexity

A key feature of these lectures is the distinction between searchproblems and decision problems.We still have decision problems like: Does there exist a mixed Nashequilibrium with total payoff ≥ 2

3 ?

Goldberg Game Theory and Computational Complexity

Page 42: Game Theory and Computational Complexity

Polynomial-time reductions

I(X ) denotes instances of problem XFor decision problems, where x ∈ I(X ) has output(x) ∈ yes, no,to reduce X to X ′,poly-time computable function f :I(X ) −→ I(X ′)

output(f (x)) = output(x)

Search problems:Given x ∈ I(X ), y = output(x) is a poly-length string.Poly-time computable functions

f : I(X ) −→ I(X ′) and g : solutions(X ′) −→ solutions(X )

If y = f (x) then g(output(y)) = output(x).This achieves aim of showing that if X ′ ∈ P then X ∈ P;equivalently if X 6∈ P then X ′ 6∈ P.

Goldberg Game Theory and Computational Complexity

Page 43: Game Theory and Computational Complexity

Polynomial-time reductions

I(X ) denotes instances of problem XFor decision problems, where x ∈ I(X ) has output(x) ∈ yes, no,to reduce X to X ′,poly-time computable function f :I(X ) −→ I(X ′)

output(f (x)) = output(x)

Search problems:Given x ∈ I(X ), y = output(x) is a poly-length string.Poly-time computable functions

f : I(X ) −→ I(X ′) and g : solutions(X ′) −→ solutions(X )

If y = f (x) then g(output(y)) = output(x).This achieves aim of showing that if X ′ ∈ P then X ∈ P;equivalently if X 6∈ P then X ′ 6∈ P.

Goldberg Game Theory and Computational Complexity

Page 44: Game Theory and Computational Complexity

All NP decision problems have corresponding NP search problemswhere y is certificate of “output(x) = yes”e.g. given boolean formula Φ, is it satisfiable? y is satisfyingassignment (which is hard to find but easy to check)Total search problems (e.g. Nash and others) are more tractablein the sense that for all problem instances x , output(x) = yes.So, every instance has a solution, and a certificate.

Goldberg Game Theory and Computational Complexity

Page 45: Game Theory and Computational Complexity

NP-Completeness of finding “good” Nash equilibria

2-player game: specified by two n × n matrices; look for solutionsthat can be found in time polynomial in n.

Gilboa and Zemel ’89; Conitzer and Sandholm ’03: it is NP-hardto find (for 2-player games) the NE with highest social welfare. CSpaper gives a class of games for which various restricted NE arehard to find, e.g. NE that guarantees player 1 a payoff of α.

The following is a brief sketch of their construction (note: afterthis, I will give 2 simpler reductions in detail)

Goldberg Game Theory and Computational Complexity

Page 46: Game Theory and Computational Complexity

NP-Completeness of finding “good” Nash equilibria

2-player game: specified by two n × n matrices; look for solutionsthat can be found in time polynomial in n.

Gilboa and Zemel ’89; Conitzer and Sandholm ’03: it is NP-hardto find (for 2-player games) the NE with highest social welfare. CSpaper gives a class of games for which various restricted NE arehard to find, e.g. NE that guarantees player 1 a payoff of α.

The following is a brief sketch of their construction (note: afterthis, I will give 2 simpler reductions in detail)

Goldberg Game Theory and Computational Complexity

Page 47: Game Theory and Computational Complexity

NP-Completeness of finding “good” Nash equilibria

2-player game: specified by two n × n matrices; look for solutionsthat can be found in time polynomial in n.

Gilboa and Zemel ’89; Conitzer and Sandholm ’03: it is NP-hardto find (for 2-player games) the NE with highest social welfare. CSpaper gives a class of games for which various restricted NE arehard to find, e.g. NE that guarantees player 1 a payoff of α.

The following is a brief sketch of their construction (note: afterthis, I will give 2 simpler reductions in detail)

Goldberg Game Theory and Computational Complexity

Page 48: Game Theory and Computational Complexity

NP-Completeness of finding “good” Nash equilibria

Reduce from Satisfiability: Given a CNF formula Φ with nvariables and m clauses, find a satisfying assignmentConstruct game GΦ having 3n + m + 1 actions per player (hence ofsize polynomial in Φ)

Goldberg Game Theory and Computational Complexity

Page 49: Game Theory and Computational Complexity

NP-Completeness of finding “good” Nash equilibria

01

01

01

10

10

10

εε

f

fx

x+x

+x-x

-xC

C

1

n

1

n

1

n

1

m

x x +x +x -x -x C C1 n 1 n 1 n 1 m

Goldberg Game Theory and Computational Complexity

Page 50: Game Theory and Computational Complexity

NP-Completeness of finding “good” Nash equilibria

01

01

01

10

10

10

εε

f

fx

x+x

+x-x

-xC

C

1

n

1

n

1

n

1

m

x x +x +x -x -x C C1 n 1 n 1 n 1 m

(f , f ) is a Nash equilibrium.

Various other payoffs between 0 and n apply when neither playerplays f . They are chosen such that

if Φ is satisfiable, so also is a uniform distribution over asatisfying set of literals.

No other Nash equilibria!

Goldberg Game Theory and Computational Complexity

Page 51: Game Theory and Computational Complexity

NP-Completeness of finding “good” Nash equilibria

01

01

01

10

10

10

εε

f

fx

x+x

+x-x

-xC

C

1

n

1

n

1

n

1

m

x x +x +x -x -x C C1 n 1 n 1 n 1 m

(f , f ) is a Nash equilibrium.

Various other payoffs between 0 and n apply when neither playerplays f . They are chosen such that

if Φ is satisfiable, so also is a uniform distribution over asatisfying set of literals.

No other Nash equilibria!

Goldberg Game Theory and Computational Complexity

Page 52: Game Theory and Computational Complexity

NP-Completeness of finding “good” Nash equilibria

Comment: This shows it is hard to find “best” NE, but clearly(f , f ) is always easy to find.

Should we expect it to be NP-hard to find unrestricted NE?

General agenda of next lectures is to explain why we believe this isstill hard, but not NP-hard.

Goldberg Game Theory and Computational Complexity

Page 53: Game Theory and Computational Complexity

NP-Completeness of finding “good” Nash equilibria

Comment: This shows it is hard to find “best” NE, but clearly(f , f ) is always easy to find.

Should we expect it to be NP-hard to find unrestricted NE?

General agenda of next lectures is to explain why we believe this isstill hard, but not NP-hard.

Goldberg Game Theory and Computational Complexity

Page 54: Game Theory and Computational Complexity

NP-Completeness of finding “good” Nash equilibria

Comment: This shows it is hard to find “best” NE, but clearly(f , f ) is always easy to find.

Should we expect it to be NP-hard to find unrestricted NE?

General agenda of next lectures is to explain why we believe this isstill hard, but not NP-hard.

Goldberg Game Theory and Computational Complexity

Page 55: Game Theory and Computational Complexity

Reduction between 2 versions of search for unrestrictedNE: A simple example

In a zero-sum game, the total payoff of all the players is equal to 0.So, for 2-player games, the better the result for me, the worse it isfor you. (example: rock-paper-scissors)(Some background: General 2-player games are believed to be hardto solve, but zero-sum 2-player games are in P.)

Simple theorem

3-player zero-sum games are at least as hard as 2-player games.

To see this, take any n × n 2-player game G.Now add player 3 to G, who is “passive” — he has just one action,which does not affect players 1 and 2, and player 3’s payoff is thenegation of the total payoffs of players 1 and 2. So, players 1 and 2behave as they did before, and player 3 just has the effect ofmaking the game zero-sum. Any Nash equilibrium of this 3-playergame is, for players 1 and 2, a NE of the original 2-player game.

Goldberg Game Theory and Computational Complexity

Page 56: Game Theory and Computational Complexity

Reduction between 2 versions of search for unrestrictedNE: A simple example

In a zero-sum game, the total payoff of all the players is equal to 0.So, for 2-player games, the better the result for me, the worse it isfor you. (example: rock-paper-scissors)(Some background: General 2-player games are believed to be hardto solve, but zero-sum 2-player games are in P.)

Simple theorem

3-player zero-sum games are at least as hard as 2-player games.

To see this, take any n × n 2-player game G.Now add player 3 to G, who is “passive” — he has just one action,which does not affect players 1 and 2, and player 3’s payoff is thenegation of the total payoffs of players 1 and 2. So, players 1 and 2behave as they did before, and player 3 just has the effect ofmaking the game zero-sum. Any Nash equilibrium of this 3-playergame is, for players 1 and 2, a NE of the original 2-player game.

Goldberg Game Theory and Computational Complexity

Page 57: Game Theory and Computational Complexity

Reduction between 2 versions of search for unrestrictedNE: A simple example

In a zero-sum game, the total payoff of all the players is equal to 0.So, for 2-player games, the better the result for me, the worse it isfor you. (example: rock-paper-scissors)(Some background: General 2-player games are believed to be hardto solve, but zero-sum 2-player games are in P.)

Simple theorem

3-player zero-sum games are at least as hard as 2-player games.

To see this, take any n × n 2-player game G.Now add player 3 to G, who is “passive” — he has just one action,which does not affect players 1 and 2, and player 3’s payoff is thenegation of the total payoffs of players 1 and 2.

So, players 1 and 2behave as they did before, and player 3 just has the effect ofmaking the game zero-sum. Any Nash equilibrium of this 3-playergame is, for players 1 and 2, a NE of the original 2-player game.

Goldberg Game Theory and Computational Complexity

Page 58: Game Theory and Computational Complexity

Reduction between 2 versions of search for unrestrictedNE: A simple example

In a zero-sum game, the total payoff of all the players is equal to 0.So, for 2-player games, the better the result for me, the worse it isfor you. (example: rock-paper-scissors)(Some background: General 2-player games are believed to be hardto solve, but zero-sum 2-player games are in P.)

Simple theorem

3-player zero-sum games are at least as hard as 2-player games.

To see this, take any n × n 2-player game G.Now add player 3 to G, who is “passive” — he has just one action,which does not affect players 1 and 2, and player 3’s payoff is thenegation of the total payoffs of players 1 and 2. So, players 1 and 2behave as they did before, and player 3 just has the effect ofmaking the game zero-sum. Any Nash equilibrium of this 3-playergame is, for players 1 and 2, a NE of the original 2-player game.

Goldberg Game Theory and Computational Complexity

Page 59: Game Theory and Computational Complexity

Reduction: 2-player to symmetric 2-player

A symmetric game is one where “all players are the same”: they allhave the same set of actions, payoffs do not depend on a player’sidentity, only on actions chosen.For 2-player games, this means the matrix diagrams (of the kindwe use here) should be symmetric (as in fact they are in theexamples we saw earlier).

A slightly more interesting theorem

symmetric 2-player games are as hard as general 2-player games.

Goldberg Game Theory and Computational Complexity

Page 60: Game Theory and Computational Complexity

Reduction: 2-player to symmetric 2-player

Given a n × n game G, construct a symmetric 2n × 2n gameG′ = f (G), such that given any Nash equilibrium of G′ we canefficiently reconstruct a NE of G.

First step: if any payoffs in G are negative, add a constant to allpayoffs to make them all positive.

Example:

4-1

01

23

-25

72

34

56

18

Nash equilibria are unchanged by this (game is “strategicallyequivalent”)

Goldberg Game Theory and Computational Complexity

Page 61: Game Theory and Computational Complexity

Reduction: 2-player to symmetric 2-player

Given a n × n game G, construct a symmetric 2n × 2n gameG′ = f (G), such that given any Nash equilibrium of G′ we canefficiently reconstruct a NE of G.

First step: if any payoffs in G are negative, add a constant to allpayoffs to make them all positive.

Example:

4-1

01

23

-25

72

34

56

18

Nash equilibria are unchanged by this (game is “strategicallyequivalent”)

Goldberg Game Theory and Computational Complexity

Page 62: Game Theory and Computational Complexity

Reduction: 2-player to symmetric 2-player

So now let’s assume G’s payoffs are all positive. Next stage:

G′ =

(0 GGT 0

)

Example:

72

34

56

18

00

00

72

34

00

00

56

18

27

65

00

00

43

81

00

00

Goldberg Game Theory and Computational Complexity

Page 63: Game Theory and Computational Complexity

Reduction: 2-player to symmetric 2-player

Now suppose we solve the 2n × 2n game G′ =

(0 GGT 0

)Let p and q denote the probabilities that players 1 and 2 use theirfirst n actions, in some given solution.

q 1− qp

1− p

(0 GGT 0

)If p = q = 1, both players receive payoff 0, and both haveincentive to change their behavior, by assumption that G’s payoffsare all positive. (and similarly if p = q = 0).So we have p > 0 and 1− q > 0, or alternatively, 1− p > 0 andq > 0.Assume p > 0 and 1− q > 0 (the analysis for the other case issimilar).

Goldberg Game Theory and Computational Complexity

Page 64: Game Theory and Computational Complexity

Reduction: 2-player to symmetric 2-player

Let p1, ..., pn be the probabilities used by player 1 for his first nactions, q1, . . . qn the probs for player 2’s second n actions.

q (q1...qn)(p1, ...pn)

1− p

(0 GGT 0

)Note that p1 + . . .+ pn = p and q1 + . . .+ qn = 1− q.

Then (p1/p, . . . , pn/p) and (q1/(1− q), . . . , qn/(1− q)) are aNash equilibrium of G!To see this, consider the diagram; they form a best response toeach other for the top-right part.

Goldberg Game Theory and Computational Complexity

Page 65: Game Theory and Computational Complexity

Reduction: 2-player to symmetric 2-player

Let p1, ..., pn be the probabilities used by player 1 for his first nactions, q1, . . . qn the probs for player 2’s second n actions.

q (q1...qn)(p1, ...pn)

1− p

(0 GGT 0

)Note that p1 + . . .+ pn = p and q1 + . . .+ qn = 1− q.

Then (p1/p, . . . , pn/p) and (q1/(1− q), . . . , qn/(1− q)) are aNash equilibrium of G!To see this, consider the diagram; they form a best response toeach other for the top-right part.

Goldberg Game Theory and Computational Complexity

Page 66: Game Theory and Computational Complexity

NP Search Problems

NP decision problems: answer yes/no to questions that belong tosome class. e.g. Satisfiability: questions of the form Is booleanformula Φ satisfiable?

Given the question Is formula Φ satisfiable? there is a fundamentalasymmetry between answering yes and no.If yes, there exists a small “certificate” that the answer is yes,namely a satisfying assignment. A certificate consists ofinformation that allows us to check (in poly time) that the answeris yes.A NP decision problem has a corresponding search problem: e.g.given Φ, find x such that Φ(x) = true (or say “no” if Φ is notsatisfiable.

Goldberg Game Theory and Computational Complexity

Page 67: Game Theory and Computational Complexity

NP Search Problems

NP decision problems: answer yes/no to questions that belong tosome class. e.g. Satisfiability: questions of the form Is booleanformula Φ satisfiable?Given the question Is formula Φ satisfiable? there is a fundamentalasymmetry between answering yes and no.

If yes, there exists a small “certificate” that the answer is yes,namely a satisfying assignment. A certificate consists ofinformation that allows us to check (in poly time) that the answeris yes.A NP decision problem has a corresponding search problem: e.g.given Φ, find x such that Φ(x) = true (or say “no” if Φ is notsatisfiable.

Goldberg Game Theory and Computational Complexity

Page 68: Game Theory and Computational Complexity

NP Search Problems

NP decision problems: answer yes/no to questions that belong tosome class. e.g. Satisfiability: questions of the form Is booleanformula Φ satisfiable?Given the question Is formula Φ satisfiable? there is a fundamentalasymmetry between answering yes and no.If yes, there exists a small “certificate” that the answer is yes,namely a satisfying assignment. A certificate consists ofinformation that allows us to check (in poly time) that the answeris yes.

A NP decision problem has a corresponding search problem: e.g.given Φ, find x such that Φ(x) = true (or say “no” if Φ is notsatisfiable.

Goldberg Game Theory and Computational Complexity

Page 69: Game Theory and Computational Complexity

NP Search Problems

NP decision problems: answer yes/no to questions that belong tosome class. e.g. Satisfiability: questions of the form Is booleanformula Φ satisfiable?Given the question Is formula Φ satisfiable? there is a fundamentalasymmetry between answering yes and no.If yes, there exists a small “certificate” that the answer is yes,namely a satisfying assignment. A certificate consists ofinformation that allows us to check (in poly time) that the answeris yes.A NP decision problem has a corresponding search problem: e.g.given Φ, find x such that Φ(x) = true (or say “no” if Φ is notsatisfiable.

Goldberg Game Theory and Computational Complexity

Page 70: Game Theory and Computational Complexity

Example of Total search problem in NP

Factoring

Input number NOutput prime factorisation of N

e.g. Input 50 should result in output 2× 5× 5.Given output N = N1 × N2 × . . .Np, it can be checked inpolynomial time2 that the numbers N1, . . . ,Np are prime, and theirproduct is N.Hence, Factoring is in FNP. But, it’s a total search problem —every number has a prime factorization.It also seems to be hard! Cryptographic protocols use the beliefthat it is intrinsically hard. But probably not NP-complete

2polynomial in the number of digits in NGoldberg Game Theory and Computational Complexity

Page 71: Game Theory and Computational Complexity

Example of Total search problem in NP

Factoring

Input number NOutput prime factorisation of N

e.g. Input 50 should result in output 2× 5× 5.

Given output N = N1 × N2 × . . .Np, it can be checked inpolynomial time2 that the numbers N1, . . . ,Np are prime, and theirproduct is N.Hence, Factoring is in FNP. But, it’s a total search problem —every number has a prime factorization.It also seems to be hard! Cryptographic protocols use the beliefthat it is intrinsically hard. But probably not NP-complete

2polynomial in the number of digits in NGoldberg Game Theory and Computational Complexity

Page 72: Game Theory and Computational Complexity

Example of Total search problem in NP

Factoring

Input number NOutput prime factorisation of N

e.g. Input 50 should result in output 2× 5× 5.Given output N = N1 × N2 × . . .Np, it can be checked inpolynomial time2 that the numbers N1, . . . ,Np are prime, and theirproduct is N.

Hence, Factoring is in FNP. But, it’s a total search problem —every number has a prime factorization.It also seems to be hard! Cryptographic protocols use the beliefthat it is intrinsically hard. But probably not NP-complete

2polynomial in the number of digits in NGoldberg Game Theory and Computational Complexity

Page 73: Game Theory and Computational Complexity

Example of Total search problem in NP

Factoring

Input number NOutput prime factorisation of N

e.g. Input 50 should result in output 2× 5× 5.Given output N = N1 × N2 × . . .Np, it can be checked inpolynomial time2 that the numbers N1, . . . ,Np are prime, and theirproduct is N.Hence, Factoring is in FNP. But, it’s a total search problem —every number has a prime factorization.

It also seems to be hard! Cryptographic protocols use the beliefthat it is intrinsically hard. But probably not NP-complete

2polynomial in the number of digits in NGoldberg Game Theory and Computational Complexity

Page 74: Game Theory and Computational Complexity

Example of Total search problem in NP

Factoring

Input number NOutput prime factorisation of N

e.g. Input 50 should result in output 2× 5× 5.Given output N = N1 × N2 × . . .Np, it can be checked inpolynomial time2 that the numbers N1, . . . ,Np are prime, and theirproduct is N.Hence, Factoring is in FNP. But, it’s a total search problem —every number has a prime factorization.It also seems to be hard! Cryptographic protocols use the beliefthat it is intrinsically hard. But probably not NP-complete

2polynomial in the number of digits in NGoldberg Game Theory and Computational Complexity

Page 75: Game Theory and Computational Complexity

Another NP total search problem

Equal-Subsets

Input positive integers a1, . . . , an; Σiai ≤ 2n − 1Output Two distinct subsets of these numbers that add up

to the same total

Example:42, 5, 90, 98, 99, 100, 64, 70, 78, 51

Solutions include 42 + 78 + 100 = 51 + 70 + 99 and42 + 5 + 51 = 98.Equal-subsets∈NP (usual “guess and test” approach). But it isnot known how to find solutions in polynomial time. The problemlooks a bit like the NP-complete problem Subset sum.

Goldberg Game Theory and Computational Complexity

Page 76: Game Theory and Computational Complexity

Another NP total search problem

Equal-Subsets

Input positive integers a1, . . . , an; Σiai ≤ 2n − 1Output Two distinct subsets of these numbers that add up

to the same total

Example:42, 5, 90, 98, 99, 100, 64, 70, 78, 51

Solutions include 42 + 78 + 100 = 51 + 70 + 99 and42 + 5 + 51 = 98.Equal-subsets∈NP (usual “guess and test” approach). But it isnot known how to find solutions in polynomial time. The problemlooks a bit like the NP-complete problem Subset sum.

Goldberg Game Theory and Computational Complexity

Page 77: Game Theory and Computational Complexity

Another NP total search problem

Equal-Subsets

Input positive integers a1, . . . , an; Σiai ≤ 2n − 1Output Two distinct subsets of these numbers that add up

to the same total

Example:42, 5, 90, 98, 99, 100, 64, 70, 78, 51

Solutions include 42 + 78 + 100 = 51 + 70 + 99 and42 + 5 + 51 = 98.

Equal-subsets∈NP (usual “guess and test” approach). But it isnot known how to find solutions in polynomial time. The problemlooks a bit like the NP-complete problem Subset sum.

Goldberg Game Theory and Computational Complexity

Page 78: Game Theory and Computational Complexity

Another NP total search problem

Equal-Subsets

Input positive integers a1, . . . , an; Σiai ≤ 2n − 1Output Two distinct subsets of these numbers that add up

to the same total

Example:42, 5, 90, 98, 99, 100, 64, 70, 78, 51

Solutions include 42 + 78 + 100 = 51 + 70 + 99 and42 + 5 + 51 = 98.Equal-subsets∈NP (usual “guess and test” approach). But it isnot known how to find solutions in polynomial time. The problemlooks a bit like the NP-complete problem Subset sum.

Goldberg Game Theory and Computational Complexity

Page 79: Game Theory and Computational Complexity

So, should we expect EQUAL SUBSETS to be NP-hard?

No we should not. [Megiddo (1988)].If any total search problem (e.g. EQUAL SUBSETS) isNP-complete, then it follows that NP=co-NP, which is generallybelieved not to be the case.To see why, suppose it is NP-complete, that Sat≤pEqualsubsets.Then there is an algorithm A for SAT that runs in polynomialtime, provided that it has access to poly-time algorithm A′ forEqual subsets.Now suppose A is given a non-satisfiable formula Φ. Presumably itcalls A′ some number of times, and receives a sequence ofsolutions to various instances of Equal subsets, and eventuallythe algorithm returns the answer “no, Φ is not satisfiable”.

Goldberg Game Theory and Computational Complexity

Page 80: Game Theory and Computational Complexity

So, should we expect EQUAL SUBSETS to be NP-hard?

No we should not. [Megiddo (1988)].If any total search problem (e.g. EQUAL SUBSETS) isNP-complete, then it follows that NP=co-NP, which is generallybelieved not to be the case.

To see why, suppose it is NP-complete, that Sat≤pEqualsubsets.Then there is an algorithm A for SAT that runs in polynomialtime, provided that it has access to poly-time algorithm A′ forEqual subsets.Now suppose A is given a non-satisfiable formula Φ. Presumably itcalls A′ some number of times, and receives a sequence ofsolutions to various instances of Equal subsets, and eventuallythe algorithm returns the answer “no, Φ is not satisfiable”.

Goldberg Game Theory and Computational Complexity

Page 81: Game Theory and Computational Complexity

So, should we expect EQUAL SUBSETS to be NP-hard?

No we should not. [Megiddo (1988)].If any total search problem (e.g. EQUAL SUBSETS) isNP-complete, then it follows that NP=co-NP, which is generallybelieved not to be the case.To see why, suppose it is NP-complete, that Sat≤pEqualsubsets.Then there is an algorithm A for SAT that runs in polynomialtime, provided that it has access to poly-time algorithm A′ forEqual subsets.Now suppose A is given a non-satisfiable formula Φ. Presumably itcalls A′ some number of times, and receives a sequence ofsolutions to various instances of Equal subsets, and eventuallythe algorithm returns the answer “no, Φ is not satisfiable”.

Goldberg Game Theory and Computational Complexity

Page 82: Game Theory and Computational Complexity

So, should we expect EQUAL SUBSETS to be NP-hard?

Now suppose that we replace A′ with the natural “guess and test”non-deterministic algorithm for Equal-subsets.We get a non-deterministic polynomial-time algorithm for SAT.Notice that when Φ is given to this new algorithm, the “guess andtest” subroutine for EQUAL SUBSETS can produce the samesequence of solutions to the instances it receives, and as a result,the entire algorithm can recognize this non-satisfiable formula Φ asbefore. Thus we have NP algorithm that recognizes unsatisfiableformulae, which gives the consequence NP=co-NP.

Goldberg Game Theory and Computational Complexity

Page 83: Game Theory and Computational Complexity

Classes of total search problems

TFNP: total function problems in NP. We are interested inunderstanding the difficulty of TFNP problems.Nash and Equal-subsets do not seem to belong to P but areprobably not NP-complete, due to being total search problems.Papadimitriou (1994) introduced a number of classes of totalsearch problems.

General observation:

proofs that various search problems are total use anon-constructive step that is hard to compute.

PPP stands for “polynomial pigeonhole principle”; used to provethat Equal-subsets is a total search problem.“A function whose domain is larger than its range has 2 inputswith the same output”

Goldberg Game Theory and Computational Complexity

Page 84: Game Theory and Computational Complexity

Classes of total search problems

TFNP: total function problems in NP. We are interested inunderstanding the difficulty of TFNP problems.Nash and Equal-subsets do not seem to belong to P but areprobably not NP-complete, due to being total search problems.Papadimitriou (1994) introduced a number of classes of totalsearch problems.

General observation:

proofs that various search problems are total use anon-constructive step that is hard to compute.

PPP stands for “polynomial pigeonhole principle”; used to provethat Equal-subsets is a total search problem.“A function whose domain is larger than its range has 2 inputswith the same output”

Goldberg Game Theory and Computational Complexity

Page 85: Game Theory and Computational Complexity

A very general problem in TFNP

Definition:

Pigeonhole circuit is the following search problem:

Input: boolean circuit C , ninputs, n outputsOutput: A boolean vector xsuch that C (x) = 0, oralternatively, vectors x and x′

such that C (x) = C (x′).

The “most general” computational total search problem for whichthe pigeonhole principle guarantees an efficiently checkablesolution.

Goldberg Game Theory and Computational Complexity

Page 86: Game Theory and Computational Complexity

Various equivalent definitions of Pigeonhole circuit

With regard to questions of polynomial time computation, thefollowing are equivalent

n inputs/outputs; C of size n2

Let p be a polynomial; n inputs/outputs, C of size p(n)

n is number of gates in C , number of inputs = number ofoutputs.

Proof of equivalences: If version i is in P then version j is in P.

Goldberg Game Theory and Computational Complexity

Page 87: Game Theory and Computational Complexity

The complexity class PPP

Definition

A problem X belongs to PPP if X reduces to Pigeonholecircuit (in poly time).Problem X is PPP-complete is in addition, Pigeonhole circuitreduces to X .

AnalogyThus, PPP is to Pigeonhole circuit as NP is tosatisfiability (or circuit sat, or any other NP-completeproblem).

Pigeonhole circuit seems to be hard (it looks like Circuitsat) but (recall) probably not NP-hard.

Goldberg Game Theory and Computational Complexity

Page 88: Game Theory and Computational Complexity

The complexity class PPP

Definition

A problem X belongs to PPP if X reduces to Pigeonholecircuit (in poly time).Problem X is PPP-complete is in addition, Pigeonhole circuitreduces to X .

AnalogyThus, PPP is to Pigeonhole circuit as NP is tosatisfiability (or circuit sat, or any other NP-completeproblem).

Pigeonhole circuit seems to be hard (it looks like Circuitsat) but (recall) probably not NP-hard.

Goldberg Game Theory and Computational Complexity

Page 89: Game Theory and Computational Complexity

What we know about Equal-subsets

Equal-subsets belongs toPPP...

but it is not known whether itis complete for PPP. (this isunsatisfying.)

Goldberg Game Theory and Computational Complexity

Page 90: Game Theory and Computational Complexity

What we know about Equal-subsets

Equal-subsets belongs toPPP...but it is not known whether itis complete for PPP. (this isunsatisfying.)

Goldberg Game Theory and Computational Complexity

Page 91: Game Theory and Computational Complexity

Cryptographic hashing

A cryptographic hash function f has a parameter n;f : 0, 1∗ −→ 0, 1n; f should satisfy:

Given “message” M, f (M) is easy to compute.

Given b ∈ 0, 1n, it is hard3 to find M such that f (M) = b.

Given M, it is hard to modify M to get a different messagewith the same hash value f (M)

It is very unlikely that 2 random messages have the same hasvalue.

Usage: message authentication, digital signatures etc. (There is anice Wikipedia page on this topic.) Suppose I solve a puzzle andwant to prove to you I’ve solved it, without giving you any hintimmediately, I should be able to use f on my solution.

3can’t be done in time polynomial in nGoldberg Game Theory and Computational Complexity

Page 92: Game Theory and Computational Complexity

Cryptographic hashing

Birthday attack: Find 2 distinct strings M and M ′ such thatf (M) = f (M ′).(so-called because it’s like the birthday problem of finding 2 peoplein a room who have the same birthday)

Resistance to birthday attack is a stronger property than the oneslisted previously. Notice that birthday attack is in PPP. But, as faras I know it’s not known to be complete for PPP.

Goldberg Game Theory and Computational Complexity

Page 93: Game Theory and Computational Complexity

Cryptographic hashing

Birthday attack: Find 2 distinct strings M and M ′ such thatf (M) = f (M ′).(so-called because it’s like the birthday problem of finding 2 peoplein a room who have the same birthday)Resistance to birthday attack is a stronger property than the oneslisted previously. Notice that birthday attack is in PPP. But, as faras I know it’s not known to be complete for PPP.

Goldberg Game Theory and Computational Complexity

Page 94: Game Theory and Computational Complexity

Subclasses of PPP

Problem with PPP: no interesting PPP-completeness results.PPP fails to “capture the complexity” of apparently hardproblems, such as Nash.Here is a specialisation of the pigeonhole principle:

“Suppose directed graph G has indegree and outdegree at most 1.Given a source, there must be a sink.”

Why is this the pigeonhole principle?G = (V ,E ); f : V → V defined as follows:For all e = (u, v), let f (u) = v . If u is a sink, let f (u) = u.Let s ∈ E be a source. So s 6∈ range(f ). The pigeonhole principlesays that 2 vertices must be mapped by f to the same vertex.

Goldberg Game Theory and Computational Complexity

Page 95: Game Theory and Computational Complexity

Subclasses of PPP

Problem with PPP: no interesting PPP-completeness results.PPP fails to “capture the complexity” of apparently hardproblems, such as Nash.Here is a specialisation of the pigeonhole principle:

“Suppose directed graph G has indegree and outdegree at most 1.Given a source, there must be a sink.”

Why is this the pigeonhole principle?G = (V ,E ); f : V → V defined as follows:For all e = (u, v), let f (u) = v . If u is a sink, let f (u) = u.Let s ∈ E be a source. So s 6∈ range(f ). The pigeonhole principlesays that 2 vertices must be mapped by f to the same vertex.

Goldberg Game Theory and Computational Complexity

Page 96: Game Theory and Computational Complexity

Subclasses of PPP

G = (V ,E ), V = 0, 1n.G is represented using 2 circuits P and S (“predecessor” and“successor”) with n inputs/outputs.G has 2n vertices (bit strings); 0 is source. (x, x′) is an edge iffx′ = S(x) and x = P(x′).Thus, G is a BIG graph and it’s not clear how best to find a sink,even though you know it’s there!

Goldberg Game Theory and Computational Complexity

Page 97: Game Theory and Computational Complexity

Subclasses of PPP

G = (V ,E ), V = 0, 1n.G is represented using 2 circuits P and S (“predecessor” and“successor”) with n inputs/outputs.G has 2n vertices (bit strings); 0 is source. (x, x′) is an edge iffx′ = S(x) and x = P(x′).Thus, G is a BIG graph and it’s not clear how best to find a sink,even though you know it’s there!

Goldberg Game Theory and Computational Complexity

Page 98: Game Theory and Computational Complexity

Search the graph for a sink

“brute-force” search will work but could easily take exponentialtime.But, if you find a sink, it’s easy to check it’s genuine! So, search isin FNP.

Goldberg Game Theory and Computational Complexity

Page 99: Game Theory and Computational Complexity

Parity argument on a graph

A weaker version of the “there must be a sink”:

“Suppose directed graph G has indegree and outdegree at most 1.Given a source, there must be another vertex that is either asource or a sink.”

Definition:End of the line

INPUT: graph G , source v ∈ GOUTPUT: v ′ ∈ G , v ′ 6= v is either a source or a sink

PPAD is defined in terms of End of the line the same waythat PPP is defined in terms of Pigeonhole circuit.

Equivalent (more general-looking) formulation: If G (notnecessarily of in/out-degree 1) has an “unbalanced vertex”, then itmust have another one. “parity argument on a directed graph”

Goldberg Game Theory and Computational Complexity

Page 100: Game Theory and Computational Complexity

Subclasses of PPP

and returning to the stronger version of this principle:

Definition:Find a sink

INPUT: graph G , source v ∈ GOUTPUT: v ′ ∈ G , v ′ is a sink

This problem is clearly at least as hard. But we still believe Endof the line is hard.PPADS is the complexity class defined w.r.t. Find a sink

Goldberg Game Theory and Computational Complexity

Page 101: Game Theory and Computational Complexity

So, we have discussed 3 complexity classes

PPAD ⊆ PPADS ⊆ PPP

because

End of the line ≤p Find a sink ≤p Pigeonhole circuit.

If we could e.g. reduce Find a sink back to End of the line,then that would show that PPAD and PPADS are the same, butthis has not been achieved...

In the mean time, it turns out that PPAD is the sub-class of PPPthat captures the complexity of Nash and related problems.

Goldberg Game Theory and Computational Complexity

Page 102: Game Theory and Computational Complexity

So, we have discussed 3 complexity classes

PPAD ⊆ PPADS ⊆ PPP

because

End of the line ≤p Find a sink ≤p Pigeonhole circuit.

If we could e.g. reduce Find a sink back to End of the line,then that would show that PPAD and PPADS are the same, butthis has not been achieved...In the mean time, it turns out that PPAD is the sub-class of PPPthat captures the complexity of Nash and related problems.

Goldberg Game Theory and Computational Complexity

Page 103: Game Theory and Computational Complexity

And by the way...

Given a graph G (in terms of these two circuits S and P) withsource 0, there exists a sink x such that x = S(S(. . . (S(0)) . . .)).this is a total search problem, but completely different...

not a member of NP (apparently)

In fact, PSPACE-complete — the search for this x iscomputationally equivalent to search for the final configuration ofa polynomially space-bounded Turing machine.

Goldberg Game Theory and Computational Complexity

Page 104: Game Theory and Computational Complexity

And by the way...

Given a graph G (in terms of these two circuits S and P) withsource 0, there exists a sink x such that x = S(S(. . . (S(0)) . . .)).this is a total search problem, but completely different...

not a member of NP (apparently)

In fact, PSPACE-complete — the search for this x iscomputationally equivalent to search for the final configuration ofa polynomially space-bounded Turing machine.

Goldberg Game Theory and Computational Complexity

Page 105: Game Theory and Computational Complexity

And by the way...

Given a graph G (in terms of these two circuits S and P) withsource 0, there exists a sink x such that x = S(S(. . . (S(0)) . . .)).this is a total search problem, but completely different...

not a member of NP (apparently)

In fact, PSPACE-complete — the search for this x iscomputationally equivalent to search for the final configuration ofa polynomially space-bounded Turing machine.

Goldberg Game Theory and Computational Complexity

Page 106: Game Theory and Computational Complexity

Nash is PPAD-complete

Finally, here is why we care about PPAD. It seems to capture thecomplexity of a number of problems where a solution is guaranteedby Brouwer’s fixed point Theorem.

Two parts to the proof:

1 Nash is in PPAD, i.e. Nash≤pEnd of the line

2 End of the line≤pNash

Done for 4, then 3 players by Daskalakis, G and Papadimitriou,then for 2 players by Chen, Deng and Teng.

Goldberg Game Theory and Computational Complexity

Page 107: Game Theory and Computational Complexity

Nash is PPAD-complete

Finally, here is why we care about PPAD. It seems to capture thecomplexity of a number of problems where a solution is guaranteedby Brouwer’s fixed point Theorem.

Two parts to the proof:

1 Nash is in PPAD, i.e. Nash≤pEnd of the line

2 End of the line≤pNash

Done for 4, then 3 players by Daskalakis, G and Papadimitriou,then for 2 players by Chen, Deng and Teng.

Goldberg Game Theory and Computational Complexity

Page 108: Game Theory and Computational Complexity

Reducing Nash to End of the line

We need to show Nash≤pEnd of the line.That is, we need two functions f and g such that given a game G,f (G) = (P,S) where P and S are circuits that define an End ofthe line instance...Given a solution x to (P, S), g(x) is a solution to G.

Notes

Nash is taken to mean: find an approximate NE

Reduction is a computational version of Nash’s theorem

Nash’s theorem uses Brouwer’s fixed point theorem, which inturn uses Sperner’s lemma; the reduction shows how theseresults are proven...

Goldberg Game Theory and Computational Complexity

Page 109: Game Theory and Computational Complexity

Reducing Nash to End of the line

For a k-player game G, solution space is compact domain (∆n)k

Given a candidate solution (p11 , ...p

1n, . . . , p

k1 , ...p

kn ), a point in this

compact domain, fG displaces that point according to the directionthat player(s) prefer to change their behavior.fG is a Brouwer function, a continuous function from a compactdomain to itself.Brouwer FPT: There exists x with fG(x) = x — why?

Goldberg Game Theory and Computational Complexity

Page 110: Game Theory and Computational Complexity

Reduction to Brouwer

domain (∆n)k

divide into simplices of size ε/n

Arrows show direction of

Brouwer function, e.g. fG

If fG is constructed sensibly, look for simplex where arrows go in alldirections — sufficient condition for being near ε-NE.

Goldberg Game Theory and Computational Complexity

Page 111: Game Theory and Computational Complexity

Reduction to Sperner

Color “grid points”:

red direction away fromtop;

green away from bottomRH corner

blue away from bottomLH corner

(∆n)k : polytope in Rnk ; nk + 1 colors.

Goldberg Game Theory and Computational Complexity

Page 112: Game Theory and Computational Complexity

Reduction to Sperner

Sperner’s Lemma (in 2-D):promises “trichomatictriangle”

If so, trichromatic triangles at increasingly higher and higherresolutions should lead us to a Brouwer fixpoint...

Goldberg Game Theory and Computational Complexity

Page 113: Game Theory and Computational Complexity

Reduction to Sperner

Let’s try that out (and thenwe’ll prove Sperner’s lemma)

Goldberg Game Theory and Computational Complexity

Page 114: Game Theory and Computational Complexity

Reduction to Sperner

Black spots show thetrichromatic triangles

Goldberg Game Theory and Computational Complexity

Page 115: Game Theory and Computational Complexity

Reduction to Sperner

Higher-resolution version

Goldberg Game Theory and Computational Complexity

Page 116: Game Theory and Computational Complexity

Reduction to Sperner

Again, black spots showtrichromatic triangles

Goldberg Game Theory and Computational Complexity

Page 117: Game Theory and Computational Complexity

Reduction to Sperner

Once more — again we findtrichromatic triangles!

Next: convince ourselves they always can be found, for anyBrouwer function.

Goldberg Game Theory and Computational Complexity

Page 118: Game Theory and Computational Complexity

Sperner’s Lemma

Suppose we color the gridpoints under the constraintshown in the diagram. Whycan we be sure that there is atrichromatic triangle?

Goldberg Game Theory and Computational Complexity

Page 119: Game Theory and Computational Complexity

Reduction to Sperner

Add some edges such that onlyone red/green edge is open tothe outside

Goldberg Game Theory and Computational Complexity

Page 120: Game Theory and Computational Complexity

Reduction to Sperner

red/green edges are“doorways” that connect thetriangles

Goldberg Game Theory and Computational Complexity

Page 121: Game Theory and Computational Complexity

Reduction to Sperner

Keep going — we end up at atrichromatic triangle!

Goldberg Game Theory and Computational Complexity

Page 122: Game Theory and Computational Complexity

Reduction to Sperner

We can do the same trickw.r.t. the red/blue edges

Goldberg Game Theory and Computational Complexity

Page 123: Game Theory and Computational Complexity

Reduction to Sperner

Now the red/blue edges aredoorways

Goldberg Game Theory and Computational Complexity

Page 124: Game Theory and Computational Complexity

Reduction to Sperner

Keep going through them —eventually find a panchromatictriangle!

Goldberg Game Theory and Computational Complexity

Page 125: Game Theory and Computational Complexity

Reduction to Sperner

Degree-2 Directed Graph

Each little triangle is a vertex

Graph has one known source

Essentially, Sperner’slemma converts thefunction into an End ofthe line graph!

Goldberg Game Theory and Computational Complexity

Page 126: Game Theory and Computational Complexity

Reduction to Sperner

Degree-2 Directed Graph

Each little triangle is a vertex

Graph has one known source

Other than the known source,there must be an odd numberof degree-1 vertices.

Goldberg Game Theory and Computational Complexity

Page 127: Game Theory and Computational Complexity

Reducing End of the line to Nash

End of the line ≤p Brouwer

Brouwer ≤p Graphical Nash

Graphical Nash ≤p Nash

Some details in handouts; let me try to do some on thewhiteboard...

Goldberg Game Theory and Computational Complexity

Page 128: Game Theory and Computational Complexity

Graphical games

Players 1, ..., nPlayers: nodes of graphG of low degree dstrategies 1, ..., tutility depends onstrategies inneighborhoodn.t(d+1) numbersdescribe game

Compact representation of game with many players.

Goldberg Game Theory and Computational Complexity

Page 129: Game Theory and Computational Complexity

Graphical Nash ≤pNash

Color the graph s.t.

proper coloring

each vertex’sneighbors getdistinct colors

Normal-form game:

one “super-player”for each color

Each super-playersimulates entire setof players havingthat color

Naive bound of d2 + 1 on number of colors needed

Goldberg Game Theory and Computational Complexity

Page 130: Game Theory and Computational Complexity

Graphical Nash ≤pNash

So we have a small number of super-players (given that d is small).Problem: If blue super-player chooses an action for each memberof his “team” he has tn possible actions — can’t write that downin normal form!

Solution: Instead, he will just choose one member v of his teamat random, and choose an action for v , just t.n possible actions!so what we have to do is: Incentivize each super-player to pick arandom team member v ; and further, incentivize him to pick abest response for v afterwardsThis is done by choice of payoffs to super-players (in our graph,red , blue, green, brown)

Goldberg Game Theory and Computational Complexity

Page 131: Game Theory and Computational Complexity

Graphical Nash ≤pNash

So we have a small number of super-players (given that d is small).Problem: If blue super-player chooses an action for each memberof his “team” he has tn possible actions — can’t write that downin normal form!Solution: Instead, he will just choose one member v of his teamat random, and choose an action for v , just t.n possible actions!

so what we have to do is: Incentivize each super-player to pick arandom team member v ; and further, incentivize him to pick abest response for v afterwardsThis is done by choice of payoffs to super-players (in our graph,red , blue, green, brown)

Goldberg Game Theory and Computational Complexity

Page 132: Game Theory and Computational Complexity

Graphical Nash ≤pNash

So we have a small number of super-players (given that d is small).Problem: If blue super-player chooses an action for each memberof his “team” he has tn possible actions — can’t write that downin normal form!Solution: Instead, he will just choose one member v of his teamat random, and choose an action for v , just t.n possible actions!so what we have to do is: Incentivize each super-player to pick arandom team member v ; and further, incentivize him to pick abest response for v afterwardsThis is done by choice of payoffs to super-players (in our graph,red , blue, green, brown)

Goldberg Game Theory and Computational Complexity

Page 133: Game Theory and Computational Complexity

Graphical Nash ≤pNash

If we have coloring red , blue, green, brownThe actions of the red super-player are of the form: Choose a redvertex on the graph, then choose an action in 1, ..., s.Payoffs:

If I choose a node v , and the other super-players choose nodesin v ’s neighborhood, then red gets the payoff that v wouldreceive

Also, if red chooses the i-th red vertex (in some givenordering) and blue chooses his i-th vertex, then red receives(big) payoff M and blue gets penalty −M (and simialrly forother pairs of super-players)

The 2nd of these means a super-player will randomize amongstnodes of his color in G . The first means that when he his chosenv ∈ G , his choice of v ’s action should be a best response.

Goldberg Game Theory and Computational Complexity

Page 134: Game Theory and Computational Complexity

Graphical Nash ≤p Nash

Why did we need a proper coloring?Because when a super-player chooses v , there should be somepositive probability that v ’s neighbors get chosen; AND thesechoices should be made independently.

Goldberg Game Theory and Computational Complexity

Page 135: Game Theory and Computational Complexity

Approximate Nash equilibria

Hardness results apply to ε = 1/n; generally ε = 1/p(n) forpolynomial pWhat if e.g. ε = 1/3?

2 players - let R and C be matrices of row/column players’sutils

let x and y denote the row and column players’ strategies; letei be vector with 1 in component i , zero elsewhere.

For all i , xTRy ≥ eTi Ry − ε.

For all j , xTCy ≥ xTCej − ε.Remember: payoffs are re-scaled into [0, 1].

Goldberg Game Theory and Computational Complexity

Page 136: Game Theory and Computational Complexity

A simple algorithm

Daskalakis, Mehta and Papadimitriou, WINE’06: compute 12 -NE

12

12

1

00.2

0.10.9

0.20.2

0.30.2

0.40.1

0.50.2

0.60.2

0.70.2

0.80.8

1 Player 1 chooses arbitrary strategy i ; gives it probability 12 .

2 Player 1 chooses best response j ; gives it probability 1.

3 Player 1 chooses best response to j ; gives it probability 12 .

Goldberg Game Theory and Computational Complexity

Page 137: Game Theory and Computational Complexity

A simple algorithm

Daskalakis, Mehta and Papadimitriou, WINE’06: compute 12 -NE

12

12

1

00.2

0.10.9

0.20.2

0.30.2

0.40.1

0.50.2

0.60.2

0.70.2

0.80.8

1 Player 1 chooses arbitrary strategy i ; gives it probability 12 .

2 Player 1 chooses best response j ; gives it probability 1.

3 Player 1 chooses best response to j ; gives it probability 12 .

Goldberg Game Theory and Computational Complexity

Page 138: Game Theory and Computational Complexity

A simple algorithm

Daskalakis, Mehta and Papadimitriou, WINE’06: compute 12 -NE

12

12

1

00.2

0.10.9

0.20.2

0.30.2

0.40.1

0.50.2

0.60.2

0.70.2

0.80.8

1 Player 1 chooses arbitrary strategy i ; gives it probability 12 .

2 Player 1 chooses best response j ; gives it probability 1.

3 Player 1 chooses best response to j ; gives it probability 12 .

Goldberg Game Theory and Computational Complexity

Page 139: Game Theory and Computational Complexity

How to find approximate solutions with ε < 12?

The previous algorithm was so simple that it looks like we shouldeasily be able to improve it!

But, it’s not so easy... next we will see that an algorithm for ε < 12

would need to find mixed strategies having more than a constantsupport size.The support of a probability distribution is the set of events thatget non-zero probability — for a mixed strategy, all the purestrategies that may get chosen. In the previous algorithm, player1’s mixed strategy had support ≤ 2 and player 2’s had support 1.

Goldberg Game Theory and Computational Complexity

Page 140: Game Theory and Computational Complexity

How to find approximate solutions with ε < 12?

The previous algorithm was so simple that it looks like we shouldeasily be able to improve it!But, it’s not so easy... next we will see that an algorithm for ε < 1

2would need to find mixed strategies having more than a constantsupport size.The support of a probability distribution is the set of events thatget non-zero probability — for a mixed strategy, all the purestrategies that may get chosen. In the previous algorithm, player1’s mixed strategy had support ≤ 2 and player 2’s had support 1.

Goldberg Game Theory and Computational Complexity

Page 141: Game Theory and Computational Complexity

Why you need more than constant support size to getε < 1

2 :

Feder, Nazerzadeh and Saberi (EC’07) consider random zero-sumwin-lose games of size n × n:

1

0.4

0.6

1 1

10

10

01

01

10

10

01

10

10

10

01

01

10

01

01

01

10

01

01

01

10

10

01

10

01

10

01

10

10

01

10

01

01

10

01

01

1 With high probability, forany pure strategy byplayer 1, player 2 can“win”

2 Indeed, as n increases,this is true if player 1 maymix 2 of his strategies

Goldberg Game Theory and Computational Complexity

Page 142: Game Theory and Computational Complexity

Why you need more than constant support size to getε < 1

2 :

Feder, Nazerzadeh and Saberi (EC’07) consider random zero-sumwin-lose games of size n × n:

1

0.4

0.6

1

1

10

10

01

01

10

10

01

10

10

10

01

01

10

01

01

01

10

01

01

01

10

10

01

10

01

10

01

10

10

01

10

01

01

10

01

01

1 With high probability, forany pure strategy byplayer 1, player 2 can“win”

2 Indeed, as n increases,this is true if player 1 maymix 2 of his strategies

Goldberg Game Theory and Computational Complexity

Page 143: Game Theory and Computational Complexity

Why you need more than constant support size to getε < 1

2 :

Feder, Nazerzadeh and Saberi (EC’07) consider random zero-sumwin-lose games of size n × n:

1

0.4

0.6

1

1

10

10

01

01

10

10

01

10

10

10

01

01

10

01

01

01

10

01

01

01

10

10

01

10

01

10

01

10

10

01

10

01

01

10

01

01

1 With high probability, forany pure strategy byplayer 1, player 2 can“win”

2 Indeed, as n increases,this is true if player 1 maymix 2 of his strategies

Goldberg Game Theory and Computational Complexity

Page 144: Game Theory and Computational Complexity

Why you need more than constant support size to getε < 1

2 :

1/n

1/n

1/n

1/n

1/n

1/n

10

10

01

01

10

10

01

10

10

10

01

01

10

01

01

01

10

01

01

01

10

10

01

10

01

10

01

10

10

01

10

01

01

10

01

01

1 But, for large n, player 1can guarantee a payoff ofabout 1/2 by randomizingover his strategies (w.h.p.,as n increases)

2 Given any constantsupport size κ, there is nlarge enough such thatthe other player can winagainst any mixedstrategy that uses κ purestrategies. So,small-support strategiesare 1/2 worse than thefully-mixed strategy.

Goldberg Game Theory and Computational Complexity

Page 145: Game Theory and Computational Complexity

How big a support do you need?

If less than log(n) strategies are used by player 1, there is a highprobability that player 2 can win...Hence Ω(log(n)) is a lower bound on support size needed.

And in fact, O(log(n)) is also sufficiently large...

Goldberg Game Theory and Computational Complexity

Page 146: Game Theory and Computational Complexity

Final comments

Work on approximate equilibria for the 2-player case has led tosome interesting algorithms, obtaining ε-values of about 1/3. (Thisseems surprisingly weak; and also, since ε-NE can be found insub-exponential time for any fixed ε > 0, we suspect there shouldbe a PTAS). For k > 2 players, even less is known.

Work by Daskalakis and Papadimitriou on anonymous games:PPAD-complete to solve exactly, but they do find a PTAS.

Goldberg Game Theory and Computational Complexity