on the complexity of search problems george pierrakos
Download
Skip this Video
Download Presentation
On the Complexity of Search Problems George Pierrakos

Loading in 2 Seconds...

play fullscreen
1 / 55

On the Complexity of Search Problems George Pierrakos - PowerPoint PPT Presentation


  • 122 Views
  • Uploaded on

On the Complexity of Search Problems George Pierrakos. Mostly based on: On the Complexity of the Parity Argument and Other Insufficient Proofs of Existence [Pap94] On total functions, existence theorems and computational complexity [MP91] How easy is local search? [JPY88]

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' On the Complexity of Search Problems George Pierrakos' - havily


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
on the complexity of search problems george pierrakos

On the Complexity of Search ProblemsGeorge Pierrakos

Mostly based on:

On the Complexity of the Parity Argument and Other Insufficient Proofs of Existence [Pap94]

On total functions, existence theorems and computational complexity [MP91]

How easy is local search? [JPY88]

Computational Complexity [Pap92]

The complexity of computing a Nash equilibrium [DGP06]

The complexity of pure Nash equilibria [FPT04]

slides and scribe notes from many people…

outline
Outline
  • Generally on Search Problems
  • The Class TFNP
  • Subclasses of TFNP part I: PPA, PPAD
    • Problems in PPA, PPAD
    • Completeness in PPAD
  • Subclasses of TFNP part II: PPP, PLS
  • PPAD-completeness of NASH & the complexity of computing equilibria in congestion games
outline1
Outline
  • Generally on Search Problems
  • The Class TFNP
  • Subclasses of TFNP part I: PPA, PPAD
    • Problems in PPA, PPAD
    • Completeness in PPAD
  • Subclasses of TFNP part II: PPP, PLS
  • PPAD-completeness of NASH & the complexity of computing equilibria in congestion games
decision problems vs search or function problems
Decision Problems vs Search (or “function”) Problems
  • SAT
    • Input: boolean CNF-formula φ
    • Output: “yes” or “no”
  • FSAT
    • Input: boolean CNF-formula φ
    • Output: satisfying assignment or “no” if none exist
are search problems harder
Are search problems harder?

They are definitely not easier:

a poly-time algorithm for FSAT can be easily tweaked to give a poly-time algorithm for SAT

…and vice versa, FSAT “reduces” to SAT:

we can figure out a satisfying assignment by running poly-time algorithm for SAT n-times

are search problems harder1
Are search problems harder?
  • SAT is self-reducible but TSP is not…
  • Here is how we solve FTSP using TSP:
    • Use binary search to figure out the cost C of the optimum tour, using TSP algorithm
    • Run TSP algorithm n2 times, always with cost parameter C, each time setting the weight of some edge to C+1
the classes fp and fnp
The Classes FP and FNP
  • L €NP iff there exists poly-time computable RL(x,y) s.t.

X € L  y { |y| ≤ p(|x|) & RL(x,y) }

    • Note how RL defines the problem-language L
  • The corresponding search problem ΠR(L) €FNP is:

given an x find any y s.t. RL(x,y) and reply “no” if none exist

    • FSAT € FNP… what about FTSP?
    • Are all FNP problems self-reducible like FSAT? [open?]
  • FP is the subclass of FNP where we only consider problems for which a poly-time algorithm is known
reductions and completeness
Reductions and completeness
  • A function problem ΠR reduces to a function problem ΠS if there exist log-space computable string functions f and g, s.t.

R(x,g(y))  S(f(x),y)

    • intuitively f reduces problem ΠR to ΠS
    • and g transforms a solution of ΠS to one of ΠR
  • Standard notion of completeness works fine…
fp fnp
FP <?> FNP
  • A proof a-la-Cook shows that FSAT is FNP-complete
  • Hence, if FSAT € FP then FNP = FP
  • But we showed self-reducibility for SAT, so the theorem follows:
  • Theorem: FP = FNP iff P=NP
  • So, why care for function problems anyway??
outline2
Outline
  • Generally on Search Problems
  • The Class TFNP
  • Subclasses of TFNP part I: PPA, PPAD
    • Problems in PPA, PPAD
    • Completeness in PPAD
  • Subclasses of TFNP part II: PPP, PLS
  • PPAD-completeness of NASH & the complexity of computing equilibria in congestion games
on total functions the class tfnp
On total “functions”: the class TFNP
  • What happens if the relation R is total?

i.e., for each x there is at least one y s.t. R(x,y)

  • Define TFNP to be the subclass of FNP where the relation R is total
    • TFNP contains problems that always have a solution, e.g. factoring, fix-point theorems, graph-theoretic problems, …
    • How do we know a solution exists?

By an “inefficient proof of existence”, i.e. non-(efficiently)-constructive proof

  • The idea is to categorize the problems in TFNP based on the type of inefficient argument that guarantees their solution
basic stuff about tfnp
Basic stuff about TFNP
  • FP TFNP FNP
  • TFNP = F(NP coNP)
    • NP = problems with “yes” certificate y s.t. R1(x,y)
    • coNP = problems with “no” certificate z s.t. R2(x,y)
    • for TFNP F(NP coNP) take R = R1 U R2
    • for F(NP coNP) TFNP take R1 = R and R2 = ø
  • There is an FNP-complete problem in TFNP iff NP = coNP
    • : If NP = coNP then trivially FNP = TFNP
    • : If the FNP-complete problem ΠR is in TFNP then:FSAT reduces to ΠR via f and g, hence any unsatisfiable formula φ has a “no” certificate y, s.t. R(f(φ),y) (y exists since ΠR is in TFNP) and g(y)=“no”
  • TFNP is a semantic complexity class  no complete problems!
    • note how telling whether a relation is total is undecidable (and not even RE!!)
outline3
Outline
  • Generally on Search Problems
  • The Class TFNP
  • Subclasses of TFNP part I: PPA, PPAD
    • Problems in PPA, PPAD
    • Completeness in PPAD
  • Subclasses of TFNP part II: PPP, PLS
  • PPAD-completeness of NASH & the complexity of computing equilibria in congestion games
subclasses of tfnp ppa ppad
Subclasses of TFNP: PPA, PPAD
  • PPA stands for polynomial parity argument:
    • Every graph has an even number of odd-degree nodes
    • Every graph of degree two or less has an even number of leaves
    • Both arguments turn out to be equally generic
  • PPAD stands for polynomial parity argument directed 
    • Parity argument in directed graphs, where we now seek for a sink or a source
ppa another hamilton cycle
PPAANOTHER HAMILTON CYCLE
  • Thm: any graph with odd degrees has an even number of HC through edge xy
  • Proof Idea:
    • take a HC
    • remove edge (1,2) & take a HP
    • fix endpoint 1 and start “rotating” from the other end
    • each HP has two “valid” neighbors (d=3) except for those paths with endpoints 1,2
    • Evoke the parity argument: at least two (different) such HPs must exist: add edge (1,2) et voila!
  • time: worst case exponential…
ppad 2d sperner
PPAD2D-SPERNER
  • Given a triangulation of a triangle (castle) s.t.
    • each original vertex obtains its own color
    • no vertex on edge ij contains color 3-i-j

there exists a trichromatic triangle

  • Proof Idea:
    • add external 0-1 edges
    • traverse triangles (“rooms”) using 0-1 edges (“doors”)
    • If a “room” has no “door” out then it is trichromatic
  • Note that
    • the process cannot exit the castle and cannot fold upon itself
    • our tour leaves 0 nodes to the right, hence direction, hence PPAD…
definition of ppa
Definition of PPA
  • Let A be a problem and M the (associated) poly-time TM
  • Let x be an input of A
  • Let Cx= Σp(|x|) be the configuration space of x, i.e. the set of all strings of length at most p(|x|)
  • On input c € Cx machine M outputs in time O(p(n)) a set of at most two configurations M(x,c)
    • M(x,c) may well be empty if c is “rubbish”
  • c and c’ are neighbors ([c,c’] € G(x)) iff c € M(x,c) and c’ € M(x,c’)
    • G(x) is symmetric with degree at most 2
    • It is the implicit search graph of the problem
  • Let M(x, 0…0) = {1…1} and 0…0 € M(x, 1…1), hence 0…0 is the standard leaf
  • PPA is the class of problems defined as follows:

“Given x, find a leaf of G(x) other than the standard leaf 0…0”

definition of ppa an example
Definition of PPA (an example)

Take A to be ANOTHER HAMILTON CYCLE. We show that A € PPA

  • x is the input of A:
    • a graph and a Hamilton Cycle
  • Cxis the configuration space of x:
    • Cxcontains encodings of “valid” Hamilton Paths (poly-space) and other irrelevant stuff
  • On input c € Cx machine M outputs in time O(p(n)) a set M(x,c) of:
    • the at most two neighbors of a valid Hamilton Path, or possibly nothing
  • c and c’ are neighbors ([c,c’] € G(x)) iff c € M(x,c) and c’ € M(x,c’)
    • remember the graph of neighboring “valid” Hamilton Paths
  • the standard leaf is the initial Hamilton Path (from removal of (1,2))
definition of ppad
Definition of PPAD
  • Same as PPA but…
    • M(x,c) = In(x,c) U Out (x,c)is an ordered pair of configurations with|In(x,c)| ≤ 1 & |Out (x,c)| ≤ 1
    • G(x) is now directed:[c, c’] € G(x) iff c € In(x,c’) and c’ € Out(x,c)
    • We search for a node (other than the standard leaf) with |In(x,c)| + |Out (x,c)| = 1,i.e. any source or sink other than the standard one
definition of ppad an example
Definition of PPAD (an example)

Take A to be 2D-SPERNER. We show that A € PPAD

  • x is the input of A:
    • a triangle, a triangulation and a valid color assignment
    • CAUTION: restricted input  “promise” problems: we usually need some sort of syntactic guarantee of the validity of the input
  • Cxis the configuration space of x:
    • Cxcontains encodings of all sub-triangles in the triangulation
  • M(x,c) = In(x,c) U Out (x,c) where:
    • In(x,c) is the castle room where we came from
    • Out(x,c) is the castle room where we are heading to
  • c and c’ are neighbors ([c,c’] € G(x)) iff c € M(x,c) and c’ € M(x,c’)
    • remember our tour through the triangular castle
  • the standard leaf is the node lying outside the triangle
couple of theorems
Couple of Theorems
  • PPA as defined above makes use of the “even leaves” argument
  • Why not modify the definition as follows (PPA’):
    • …on input c € Cx machine M outputs in time O(p(n)) a set M(x,c) s.t. |M(x,c)| = poly(n)…
    • …“Given x, find an odd-degree node of G(x) other than the standard leaf 0…0”…

and make use of the (more general?) parity argument?

  • Quite surprisingly: PPA’ = PPA
theorem 1 ppa ppa the chessplayer algorithm
Theorem 1: PPA’ = PPA(The Chessplayer Algorithm)
  • Obviously PPA PPA’
  • For the inverse:
    • For each node c of degree k ≥ 1, we create new nodes (c,i), where i = 0,…,k div 2
    • each node (c,i) is connected to the two nodes (c’,j) s.t. the lexicographically 2i, 2i+1 edges out of c are the 2j, 2j+1 edges into c’
    • nonstandard leaves of the new graph correspond to nonstandard odd-degree nodes of the former
two more propositions
Two more propositions
  • Proposition 1: FP PPAD PPA FNP
  • Proposition 2:
    • Consider the more natural definition of PPA, where the leaf we search for is the one connected to the standard leaf (PPA’’)
    • Then PPA’’ = PPAD’’ = FPSPACE
      • just show FPSPACE PPA’’
      • any problem in FPSPACE can be solved by a reversible TM, i.e. one where each configuration has at most one predecessor and one successor [Be84]
      • define M(x,c) to return the (at most) two configurations that are the predecessor and successor of c on input x
      • hence, the nonstandard leaf on the same component as the standard leaf is the halting configuration with the desired output
ppad brouwer fix point
PPADBROUWER FIX POINT
  • Brouwer’s fix-point theorem: let S be any n-dimensional simplex and let φ: SSbe a continuous function. Then φ has a fix point, i.e. an x* s.t. φ(x*) = x*
    • Proof for the special case of a triangle, using Sperner lemma
    • Let T1, …, Ti,… be a sequence of finer triangulations
    • Define labels L1, …, Li,… for the triangulations as depicted: Li is a valid labeling for Ti
    • Consider the sequence of centers c1, …, ci,… of the resulting trichromatic triangles t1, …, ti,…(guaranteed by Sperner’s Lemma)
      • This is an infinite sequence in a closed convex space, hence it has a subsequence converging at x*: a point which is arbitrarily closed to the centroid of a trichromatic triangle
    • x* is a fix point of φ: if not, then we can find a small triangle containing x* but not φ(x*). Because of the continuity of φ, we can show that this cannot be labeled with 3 colors
    • Also need to take care of continuity for representation in TM
ppad nash linear compl rity
PPAD NASH & LINEAR COMPL/RITY
  • Theorem[Nash51]: every game has a mixed Nash equilibrium
    • Original proof of Nash uses Kakutani’s fix point theorem; KAKUTANI is in PPAD by a reduction from BROWER
    • Nash’s theorem can be proved using Brower’s fix-point theorem too
    • In [Pap94] they show that NASH is in PPAD by a reduction from LINEAR COMPLENTARITY
ppad nash linear compl rity1
PPAD NASH & LINEAR COMPL/RITY
  • LINEAR COMPLEMENTARITY
    • We are given an nxn matrix A and an n-vector b
    • We are seeking vectors x,y ≥ 0 s.t.
      • Ax + b = y
      • x·y = 0, i.e. at least one of xi, yi is 0
    • Solved by Lemke’s algorithm:
      • some times it does not even converge
      • if it converges it might well be (worst case) exponential
    • In general, the problem is NP-complete (?)
    • For the case of P-matrices A (matrices satisfying det(AS) > 0 for all non-empty subsets S of {1,…,n}) the problem has a unique solution and Lemke’s algorithm converges to it.
    • Is checking for the P-property for general matrices in P? Open…
  • PPAD formulation of L-COMPL: Given A and b, find a solution x, y to the linear complementarity problem or a subset S s.t. det(AS) ≤ 0
ppad nash linear compl rity2
PPAD NASH & LINEAR COMPL/RITY
  • Example: from bimatrix games to a linear complementarity problem
    • Let
    • are the probability and payoff of player 1 for row i
    • are the probability and payoff of player 2 for column j
    • is the payoff of player 1
    • is the payoff of player 2
ppad nash linear compl rity3
PPAD NASH & LINEAR COMPL/RITY
  • Approach 1:
    • implies that the player has equal expected payoff from both his choices (else he would pick the one maximizing his profit with probability 1 and drop the other)
    • Hence we can write down the following linear system:
    • To compute all equilibria we need to solve a linear system (in poly-time) for all different supports of players 1 and 2 in time 2n2mP(n,m)(support = subset of strategies played with p>0)
ppad nash linear compl rity4
PPAD NASH & LINEAR COMPL/RITY
  • Approach 2: reduce to L-COMPL
ppad nash linear compl rity5
PPAD NASH & LINEAR COMPL/RITY

Use Lemke’s algorithm: “double pivoting”

ppa another hamilton path
PPAANOTHER HAMILTON PATH
  • Given a graph G and a HP in it, find either another HP in G or in its complement Gc
    • Construct a bipartite graph, whose odd-degree nodes are HP of G and Gc
    • “left” nodes: all HP of the complete graph on the nodes of G
    • “right” nodes: all subgraphs of Gc -including the empty subgraph
    • Edge from h (hpath) on left side to s (subgraph) on the right side iff s is a proper subgraph of h
    • Claim: the only odd-degree nodes are the HP of G and Gc on the left side
      • If node on the left is not a HP of G or Gc then it contains a non-empty subset of edges of Gc and will be adjacent to all proper subsets of this set: these are 2k
      • A HP of G on the left will only be adjacent to the empty subgraph
      • A HP of Gc on the left will be adjacent to its 2n-1-1 proper subgraphs (excluding itself) and will also have odd degree
      • Any subgraph (node on the right) will be connected to all its possible connections to a HP (usually 0): for graphs with more than 5 nodes this number is even (can be proved via an easy calculation…)
other problems
Other problems
  • PPA:
    • HAMILTON DECOMPOSITION
    • TSP NONADJACENCY
    • CHEVALLEY MOD 2
    • TOTALLY EVEN SUBGRAPH
    • CUBIC SUBGRAPH
  • PPAD:
    • k-D SPERNER
    • KAKUTANI
    • COMPETITIVE & EXCHANGE EQUILIBRIUM
    • TUCKER
    • BORSUK-ULAM, DISCRETE HAM SANDWICH, NECKLAGE SPLITTING…
outline4
Outline
  • Generally on Search Problems
  • The Class TFNP
  • Subclasses of TFNP part I: PPA, PPAD
    • Problems in PPA, PPAD
    • Completeness in PPAD
  • Subclasses of TFNP part II: PPP, PLS
  • PPAD-completeness of NASH & the complexity of computing equilibria in congestion games
the class ppp
The Class PPP
  • PPP stands for Polynomial Pigeonhole Principle
  • Definition:
    • A problem A is in PPP if it is defined in terms of a poly-time TM M
    • Given input x define the set of “solutions” S(x) = Σp(|x|)and
    • For any y € S(x), M(x,y) € S(x)
    • Desired output:
      • y € S(x), s.t. M(x,y) = 0…0 or
      • y, y’ € S(x) s.t. M(x,y) = M(x,y’)
    • One of the two is guaranteed to exist by pigeonhole principle
a ppp complete problem pigeonhole circuit
A PPP-complete problem:PIGEONHOLE CIRCUIT
  • Input: Boolean circuit C with n inputs and n output
  • Output: either find an input y s.t. C(y) = 0n or find two inputs y, y’ s.t. C(y) = C(y’)
  • Obviously PIGEONHOLE CIRCUIT € PPP:
    • M is the poly-time TM that simulates circuit C on input y
    • Input x is the description of the circuit C
    • S(x) = {0,1}n and for any y € S(x), M(x,y) € S(x)
  • And any problem in PPP can be evaluated by such a circuit: just tweak the proof of CIRCUIT-VALUE P-completeness
pigeonhole circuit for monotone circuits
PIGEONHOLE CIRCUITfor MONOTONE circuits?
  • Monotone circuits are the circuits that do not contain “no” gates
  • Property of monotone circuits:swapping xi from false to true cannot change any output bit from true to false
    • Proof: trivial by induction on the depth of the tree
  • MONOTONE PIGEONHOLE CIRCUIT € FP
    • Proof:
      • We need to consider only the input sequences of the form 0i1n-i, i=0,…,n, i.e. only n input sequences
      • Start with 1n and start swapping bits to 0. The only way to have n distinct outputs is if: output starts at 0n and each time one output bit swaps to 1
      • Hence, either output = 0n for some input, or two inputs have same output
ppp equal sums
PPPEQUAL SUMS
  • Input: n positive integers with sum less than 2n-1
  • Output: two subsets with the same sum
  • EQUAL SUMS in PPP:
    • Two such subsets trivially exist since there are more subsets than possible sums
    • The formal definitions utilizes a TM M that given the input x (set of all sets) and the description of a set y, outputs in polynomial time the sum of the set’s elements. Since the sum of all elements is less than 2n-1 we cannot have M(x,y) = 0…0
    • Is EQUAL SUMS PPP-complete?
two more propositions1
Two more propositions
  • One-way permutation π is a poly-time algorithm mapping Σn to itself, such that for all x≠y, π(x) ≠ π(y), s.t. it is hard to recover x from π(x).
  • Prop1: If PPP=FP then one-way permutations do not exist
    • Proof:
      • suppose PIGEONHOLE CIRCUIT is in FP
      • We wish to invert an alleged one-way permutation π, i.e. given y, find x s.t. y=π(x)
      • Turn the algorithm for π into a circuit (CIRCUIT VAL is P-complete) and add bitwise XOR gates between output y and x; call this circuit C
      • Apply the poly-time algorithm for PIGEONHOLE CIRCUIT to C. Since π is a permutation, the algorithm cannot return two inputs giving the same output, hence it returns y, s.t. C(y) = 0, i.e. π(x) = y
two more propositions2
Two more propositions
  • Prop2: PPAD PPP
    • Proof:
      • Reformulate any problem in PPAD with graph G as a problem in PPP by use of π(x) defined as
        • π(x) = x if x is a sink
        • π(x) = G2(x) if x is a nonstandard source
        • π(x) = G(x) otherwise
      • Trivially, from any confluence of values of π we can recover a nonstandard source or a sink of G
the class pls
The class PLS
  • PLS originally defined in [Johnson, et. al. ‘88]: “find some local optimum in a reasonable search space”.
  • Basic ingredient: a problem with a search space, i.e. a set of feasible solutions which has a neighborhood structure
    • Every problem L (e.g. TSP) in PLS has a set of instances DL (e.g. encodings of adjacency matrix)
    • Every instance x in DL has a finite set of solutions FL(x) (e.g. tours) considered wlog polynomial in size
    • For each solution s in FL(x) we have
      • A poly-time cost function c(x,s) that given an instance x and a solution s, it computes its cost (e.g. length of a tour)
      • A poly-time neighbor function N(x,s) FL(x) that given an instance x and a solution s, returns its neighboring solutions (e.g. a tour that differs from the original one in at most two edges)
the class pls1
The class PLS
  • Remaining constraints are expressed in terms of 3 polynomial time algorithms AL, BL, CL
    • AL, given an instance x in DL produces a particular standard solution of L, AL(x) € FL(x) (e.g. a standard tour for TSP)
    • BL, given an instance x in DL and a string s determines whether s is a solution (s € FL(x)?) and if so, it computes its cost c(x,s)
    • CL, given an instance x € DL and a string s € FL(x) has two possible outcomes, depending on s:
      • If there is any solution s’ € N(x,s) s.t. c(x,s’) < c(x,s) it outputs s’
      • Otherwise it outputs “no”, which implies that s is locally optimal
the class pls2
The class PLS
  • The sense of local searching is obvious: starting at some arbitrary solution start searching locally for a better solution and move towards it.
  • Standard local search algorithm:

Given x, use AL to produce a starting solution s= AL(x)

Repeat until locally optimal solution is found:

Apply algorithm CL to x and s

If CL yields a better cost neighbor s’ of then set s=s’

  • Since the solution space is finite the above algorithm always halts
  • If FL(x) is polynomially bounded then the above algorithm is polynomial
  • However, things can turn out pretty bad:
    • Finding a local optimum reachable from a specific state can be proven PSPACE-complete
    • There are instances with states exponentially far from any local optimum
  • Correct question to ask: “Given x, find some locally optimum solution s”
the class pls3
The class PLS
  • PLS-reduction: we must map the local optima of one problem to those of another, thus pairtaining the neighboring structure. Hence problem L reduces to K if there exist poly-time functions f and g s.t.
    • f maps instances x of L to instances f(x) of K
    • g maps (solutions of f(x), x) pairs to solutions of x
    • for all instances x of L, if s is a local optimum for instance f(x) of K, then g(s,x) is a local optimum for x
  • Basic PLS-complete problem:
    • weighted CIRCUIT – SAT under input bitflips
    • some relatives of TSP, MAXCUT and:
  • POS-NAE-3SAT: [Shaeffer&Yannakakis-91]

Given an instance of NAE-3SAT with weights on its clauses and with positive literals only, find a truth assignment, whose total weight (i.e. the weight of the unsatisfied and totally satisfied clauses) cannot be improved by flipping a variable

outline5
Outline
  • Generally on Search Problems
  • The Class TFNP
  • Subclasses of TFNP part I: PPA, PPAD
    • Problems in PPA, PPAD
    • Completeness in PPAD
  • Subclasses of TFNP part II: PPP, PLS
  • PPAD-completeness of NASH & the complexity of computing equilibria in congestion games
congestion games definitions
Congestion GamesDefinitions
  • Idea: generalization of Selfish Task Allocation
  • Intuition:
    • Route traffic through a network
    • Resource allocation
  • We have
    • a set of resources E (network edges…?)
    • a set of players N
    • the resource delays de
  • For each player i
    • an action set Ai 2E
    • a weight (traffic demand) wi
congestion games definitions1
Congestion GamesDefinitions
  • let A=(a1,…, an), ai€ Ai, be a strategy profile
  • denote by
    • Pe(A) the set of players picking resource e in profile A
    • ne(A) the number of players picking resource e in profile A, ne(A)=|Pe(A)|
  • define the load of resource e to be

L(e) = Σiin P(e)wi

  • for each strategy profile A, each player incurs a total delay/cost

ci(A) = Σein aiL(e)

congestion games equilibria and potential functions
Congestion GamesEquilibria and Potential Functions
  • A Pure Nash Equilibrium (PNE) is a strategy profile A=(a1,…, an), s.t. for all i € N and for all ai’ € Ai

c(a1,…, ai,…, an) ≤ c(a1,…, ai’,…, an)

    • Notice the local optimality flavor of a PNE
  • Exact Potential for a c.g. is a function Φ:Ε→R s.t. for all i € N, ai’ € Ai and A

ci(A) - ci(A-i, ai’) = Φ(A) - Φ(A-i, ai’)

  • It is easy to verify that every game that admits an exact potential possesses a PNE
types of congestion games
Types of Congestion Games
  • Symmetric vs AsymmetricPlayers have the same action set and the same weights, i.e. they are indistinguishable
  • Network vs General Congestion Games
    • the resources are graph edges
    • each player has a source and a sink vertex (si,ti)
    • the action sets Ai are si-ti paths
  • Single vs multi-commodity (network) games
    • the (si,ti) pairs are common for all players
congestion games existence of pne
Congestion GamesExistence of PNE
  • Theorem [Rosenthal ’73]:Every unweighted congestion game is an exact potential game
  • The inverse holds [Mondere&Shapley]:

Every finite exact potential game is isomorphic to an unweighted c.g.

  • So it is only for c.g. that we can find an exact potential
    • Does this mean that the potential technique (for guaranteeing existence of a local minimum) can be used only for c.g.?
congestion games potential functions
Congestion GamesPotential Functions
  • We need to be less strict about the potential function.
  • Consider the party affiliation game (HAPPYNET):
    • n players (nodes in graph)
    • Symmetric preference relations between players-nodes
    • 2 actions per player: {-1,1}
    • State S is a mapping V{-1,1} (players pick sides)
    • payoff of i: sgn[S(i) ΣjS(j)wij] (if the payoff is positive then we say “node i is happy”)
    • The problem: “Find a state in which all nodes are happy”
    • intuition: everyone wants to be with his friends
    • application: convergence of Hopfield NN
congestion games potential functions1
Congestion GamesPotential Functions
  • HAPPYNET always admits a solution
    • Proof: by use of a (general) potential function
      • φ[S] = Σi,jS(i)S(j)wij
      • Suppose that node i is unhappy, i.e. S(i) ΣjS(j)wij = - δ < 0
      • Consider the state S’ where S is flipped, i.e. S’(i) = S(i)Obviously φ[S’] = φ[S] +2δ, i.e. the potential function is increased by at least two when we flip any unhappy node
      • Since φ takes values in [-W, W] where W is the sum of all weights, and it is increased by two in each iteration, this process has to end at a state with no unhappy nodes, i.e. at a solution
    • How many steps? Polynomial in W, exponential in |W|
  • Connection with congestion games:
    • The party affiliation game is NO congestion game therefore it admits NO exact potential; it admits a general potential s.t. sgn( ci(A) - ci(A’) ) = sgn( Φ(A) – Φ(A’) )
    • Using thiswe proved that the problem always has a solution, i.e. the underlying game always admits a PNE, which can be derived from the local optima of siΣjsj wij.
congestion games complexity of pne
Congestion GamesComplexity of PNE
  • Main results here from [Fabrikant/ Papadimitriou/ Talwar STOC 2004]
  • They proved that the problem of finding a PNE of unweighted games:
    • is in P for symmetric network c.g. [irrelevant]
    • is PLS-complete for
      • General asymmetric c.g.
      • General symmetric c.g.
      • Asymmetric network c.g. [too damn hard]
congestion games general asymmetric c g
Congestion GamesGeneral Asymmetric c.g.
  • POS-NAE-3SAT ≤PLS General Asymmetric c.g.
    • variable x → player x
    • clause c → resources ec, ec’
    • Ax→ {{ec|x in ec}, {ec’|x in ec’}}
      • x plays ec if x=0 in POS-NAE-3SAT
      • x plays ec’ if x=1 in POS-NAE-3SAT
    • de(1)=de(2)=0, de(3)=w(c)
    • Every PNE of the c.g. corresponds to a local minimum of POS-NAE-3SAT, since bitflip corresponds to single-player deviation
congestion games general symmetric c g
Congestion GamesGeneral Symmetric c.g.
  • General Asymmetric c.g. ≤PLS General Symmetric c.g.
    • Augment the network by adding n additional resources e1,…, en
      • dei(k)=0 if k=1 and
      • dei(k)=M otherwise (M suff. large number)
    • A = Ux { sU{ex} | s in Ax}
    • same number of players so any solution that uses a ex twice has an unused ex, so it is no PNE
    • at PNE players arbitrarily take on the “roles” of the players in the general asymmetric game
ad