A Tour of the Complexity Classes Between P and NP

A Tour of the Complexity Classes Between P and NP

A Tour of the Complexity Classes Between P and NP John Fearnley University of Liverpool Joint work with Spencer Gordon, Ruta Mehta, Rahul Savani Simple stochastic games T A two player game I Maximizer (box) wants to reach T I Minimizer (triangle) who wants to avoid T I Nature (circle) plays uniformly at random Simple stochastic games 0.5 1 1 0.5 0.5 0 Value of a vertex: I The largest probability of winning that max can ensure I The smallest probability of winning that min can ensure Computational Problem: find the value of each vertex Simple stochastic games 0.5 1 1 0.5 0.5 0 Is the problem I Easy? Does it have a polynomial time algorithm? I Hard? Perhaps no such algorithm exists This is currently unresolved Simple stochastic games 0.5 1 1 0.5 0.5 0 The problem lies in NP \ co-NP I So it is unlikely to be NP-hard But there are a lot of NP-intermediate classes... This talk: whare are these complexity classes? Simple stochastic games Solving a simple-stochastic game lies in NP \ co-NP \ UP \ co-UP \ TFNP \ PPP \ PPA \ PPAD \ PLS \ CLS \ EOPL \ UEOPL Simple stochastic games Solving a simple-stochastic game lies in NP \ co-NP \ UP \ co-UP \ TFNP \ PPP \ PPA \ PPAD \ PLS \ CLS \ EOPL \ UEOPL This talk: whare are these complexity classes? TFNP PPAD PLS CLS Complexity classes between P and NP NP P There are many problems that lie between P and NP I Factoring, graph isomorphism, computing Nash equilibria, local max cut, simple-stochastic games, ... PPAD PLS CLS Complexity classes between P and NP NP TFNP P FNP is the class of function problems in NP I Given polynomial time computable relation R and value x I Find y such that (x; y) 2 R PPAD PLS CLS Complexity classes between P and NP NP TFNP P TFNP is the subclass of problems that always have solutions I Contains factoring, Nash equilibria, local max cut, simple-stochastic games, ... CLS Complexity classes between P and NP NP TFNP PPAD PLS P PPAD and PLS are two subclasses of TFNP PPAD (Papadimitriou 1994) End-of-the-Line: start Given a graph G of in/out degree at most 1 and a source start vertex find another vertex of degree 1 end PPAD (Papadimitriou 1994) start Catch: 0000 The graph is exponentially large 0101 It is defined by I A circuit S that gives a successor I A circuit P that gives a predecessor S(0000) = 0101 P(0101) = 0000 end PPAD (Papadimitriou 1994) start A problem is in PPAD if it can be reduced to EOTL A problem is PPAD-hard if EOTL can be reduced to it I Convincing evidence of hardness? end Brouwer: A PPAD-complete problem Given a continuous function f : [0; 1]n ! [0; 1]n I find a fixpoint: a point x such that f (x) = x PPAD-complete problems I computing mixed equilibria in games I computing Brouwer fixed points I computing market equilibria Simple stochastic games are in PPAD 0.5 1 1 0.5 0.5 0 The vertex values satisfy optimality equations 8 >1 if v is the target > >0 if v is any other sink <> f (v) = max(u; w) if v is a max vertex with successors u and w > >min(u; w) if v is a min vertex with successors u and w > :>(u + w)=2 if v is a random vertex with successors u and w Simple stochastic games are in PPAD 0.5 1 1 0.5 0.5 0 f: [0; 1]n ! [0; 1]n is a Brouwer function When the game is stopping, the fixpoint of f gives the values for each vertex (Condon 1992) Polynomial Local Search (PLS) 8 9 Given start 9 a DAG 7 6 I 8 6 I a starting vertex 5 Find 2 5 4 I a sink vertex 3 2 1 1 10 60 Polynomial Local Search (PLS) 8 9 Catch: start 9 The graph is exponentially large 7 6 8 6 5 Defined by 2 A circuit S giving the 5 4 I successor vertices 3 2 I A circuit p giving a 1 potential 1 10 06 Every edge decreases the potential p(S(v)) < p(v) PLS-complete problems: I local max cut I computing pure equilibria in congestion games I computing stable outcomes in hedonic games 1. Maximizer picks a positional strategy 2. Compute a best response for the Minimizer 3. Determine switchable edges for Maximizer 4. Switch some switchable edges 5. Compute a new best response Simple stochastic games are in PLS A strategy improvement algorithm puts SSGs in PLS 2. Compute a best response for the Minimizer 3. Determine switchable edges for Maximizer 4. Switch some switchable edges 5. Compute a new best response Simple stochastic games are in PLS A strategy improvement algorithm puts SSGs in PLS 1. Maximizer picks a positional strategy 3. Determine switchable edges for Maximizer 4. Switch some switchable edges 5. Compute a new best response Simple stochastic games are in PLS 0 0 1 0 0.5 0 A strategy improvement algorithm puts SSGs in PLS 1. Maximizer picks a positional strategy 2. Compute a best response for the Minimizer 4. Switch some switchable edges 5. Compute a new best response Simple stochastic games are in PLS 0 0 1 0 0.5 0 A strategy improvement algorithm puts SSGs in PLS 1. Maximizer picks a positional strategy 2. Compute a best response for the Minimizer 3. Determine switchable edges for Maximizer 5. Compute a new best response Simple stochastic games are in PLS A strategy improvement algorithm puts SSGs in PLS 1. Maximizer picks a positional strategy 2. Compute a best response for the Minimizer 3. Determine switchable edges for Maximizer 4. Switch some switchable edges Simple stochastic games are in PLS 0.5 1 1 0.5 0.5 0 A strategy improvement algorithm puts SSGs in PLS 1. Maximizer picks a positional strategy 2. Compute a best response for the Minimizer 3. Determine switchable edges for Maximizer 4. Switch some switchable edges 5. Compute a new best response Simple stochastic games are in PLS 0.5 1 1 0.5 0.5 0 After switching any subset of switchable edges I No vertex decreases in value I At least one vertex strictly increases in value Simple stochastic games are in PLS 0.5 1 1 0.5 0.5 0 After switching any subset of switchable edges I No vertex decreases in value I At least one vertex strictly increases in value If a Maximizer strategy has no switchable edges I We have found the value of all vertices Simple stochastic games are in PLS 0.5 1 1 0.5 0.5 0 This puts simple-stochastic games in PLS I A vertex of the DAG is a strategy for Max I The neighbors are all strategies that can be switched to I The potential is the sum of the values CLS Complexity classes between P and NP NP TFNP PPAD PLS P Are there any other interesting problems in PPAD and PLS? Are there any other interesting problems in PPAD and PLS? Yes! 1. Solving a Simple Stochastic Game 2. Finding a mixed NE of a Team Polymatrix Game 3. Finding a mixed NE of a Congestion Game 4. Solving a P-matrix Linear Complementarity Problem 5. Finding a fixed point of a Contraction Map 6. Solving reachability on a switching network 7. ... Complexity classes between P and NP NP TFNP PPAD PLS CLS P CLS was defined to capture these problems (Daskalakis and Papadimitriou, 2011) Continuous Local Search (CLS) CLS is a Brouwer instance that also has a potential I Continuous direction function f : [0; 1]3 ! [0; 1]3 I Continuous potential function p : [0; 1]3 ! [0; 1] Continuous Local Search (CLS) Find a point x where the potential does not decrease p(f (x)) ≥ p(x) Continuous Local Search (CLS) CLS contains all of the problems we saw on the previous slide I It is now known to have complete problems (Daskalakis, Tzamos, Zampetakis, 2018) (FGMS, 2017) Contraction: a problem in CLS f is contracting if jf (x) − f (x0)j ≤ c · jx − x0j for c < 1 Contraction: a problem in CLS Banach's fixpoint theorem I Every contraction map has a unique fixpoint Contraction: a problem in CLS Problem: given a contraction map as an arithmetic circuit I Find a fixpoint or a violation of contraction No violations ) the problem has a unique solution Contraction: a problem in CLS Contraction is in CLS I Direction function: f I Potential function: p(x) = jf (x) − xj Simple stochastic games are in CLS 0.5 1 1 0.5 0.5 0 We can reduce SSG to contraction I At each step stop the game with probability δ I Otherwise continue If δ is sufficiently small, the optimal values can be recovered Simple stochastic games are in CLS 0.5 1 1 0.5 0.5 0 8 >1 if v is the target > >0 if v is any other sink <> f (v) = (1 − δ) · max(u; w) if v is a max vertex > >(1 − δ) · min(u; w) if v is a min vertex > :>(1 − δ) · (u + w)=2 if v is a random vertex f is contracting with c = 1 − δ Complexity classes between P and NP NP TFNP PPAD PLS CLS P Are we done? I Will all of our problems be CLS-complete? Is CLS a good complexity class? Positives I Contains lots of problems I Has complete problems Negatives I Currently has no natural complete problems Natural problem: did anyone care about it before you showed it was complete? Unique End of Potential Line Do we expect all of the problems in CLS to be complete? Our answer: no! We identify a new class of problems UEOPL ⊆ CLS containing I Finding the fixpoint of a Linear Contraction Map I Finding the sink of a Unique Sink Orientation I Solving the P-matrix Linear Complementarity Problem We believe that this is a distinct class of problems Problems in UEOPL UEOPL Unique Sink Orientation Fixpoint of P-matrix Linear Linear Contraction Map Complementarity Problem Simple Stochastic Games Discounted Games Mean-payoff games Parity games Complexity classes between P and NP NP TFNP PPAD PLS CLS UEOPL P UEOPL is the closest class to P among the subclasses of TFNP Our three problems I Contraction I Unique sink orientation I P-matrix LCP Each can be formulated so that there are I proper solutions I violation solutions When there are no violations there is a unique solution UEOPL is intended to capture problems like this End of Potential Line (EOPL) Combines the two canonical complete problems

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    67 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us