1 / 72

The Evergreen Project: The Promise of Polynomials to Boost CSP/SAT Solvers*

The Evergreen Project: The Promise of Polynomials to Boost CSP/SAT Solvers*. Karl J. Lieberherr Northeastern University Boston. joint work with Ahmed Abdelmeged, Christine Hang and Daniel Rinehart. Title inspired by a paper by Carla Gomes / David Shmoys. Two objectives.

ariane
Download Presentation

The Evergreen Project: The Promise of Polynomials to Boost CSP/SAT Solvers*

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The Evergreen Project: The Promise of Polynomials to Boost CSP/SAT Solvers* Karl J. Lieberherr Northeastern University Boston joint work with Ahmed Abdelmeged, Christine Hang and Daniel Rinehart Title inspired by a paper by Carla Gomes / David Shmoys

  2. Two objectives • I want you to become • better writers of MAX-SAT/MAX-CSP solvers • UBCSAT (Tompkins/Hoos) can it be improved by what you learn today? • better players of the Evergreen game

  3. Introduction • Boolean MAX-CSP(G) for rank d, G = set of relations of rank d • Input • Input = Bag of Constraint = CSP(G) instance • Constraint = Relation + Set of Variable • Relation = int. // Relation number < 2 ^ (2 ^ d) in G • Variable = int • Output • (0,1) assignment to variables which maximizes the number of satisfied constraints. • Example Input: G = {22} of rank 3. H = • 22:1 2 3 0 • 22:1 2 4 0 • 22:1 3 4 0 1in3 has number 22 M = {1 !2 !3 !4} satisfies all

  4. Variation MAX-CSP(G,f): Given a CSP(G) instance H expressed in n variables which may assume only the values 0 or 1, find an assignment to the n variables which satisfies at least the fraction f of the constraints in H. Example: G = {22} of rank 3 MAX-CSP({22},f): H = 22:1 2 3 0 22:1 2 4 0 in MAX-CSP({22},?). Highest value for ? 22:1 3 4 0 22: 2 3 4 0 1in3 has number 22

  5. P1 = you P2 = I Evergreen(3,2) game Two players: They agree on a protocol P1 to choose a set of 2 relations (=G) of rank 3. • Player P1 chooses CSP(G)-instance H (limited). • Player P2 solves H and gets paid by P1 the fraction that P2 satisfies in H. • This gives nice control to P1. P1 will choose an instance that will minimize P2’s profit. • Take turns. R2, P2 R1, P1 100% R2, 0% R1 100% R1, 0% R2

  6. Protocol choice • Randomly choose symmetric R1 and symmetric R2 (independently) between 1 and 255 (Throw two dice choosing symmetric relations).

  7. Tell me • How would you react as player P1? • The relations 22 and 22 have been chosen. • You must create a CSP({22}) instance with 1000 variables in which only the smallest possible fraction can be satisfied. • What kind of instance will this be? • What kind of algorithm should P2 use to maximize its payoff?

  8. Game strategy in a nutshell • Choose G={R1,R2} randomly (both symmetric). • P1 chooses instance so that payoff is minimized. • P2 finds solution so that payoff is maximized (Solve MAX-CSP(G)) • Take turns: Choose G= … • P2. Choose instance so that payoff is minimized.

  9. Our approach by Example:SAT Rank 2 example 14 : 1 2 014 :       3 4 014 :           5 6 0  7 : 1    3            0 7 : 1        5      0 7 :       3   5      0 7 :   2    4         0 7 :   2         6   0 7 :         4   6   0 14: 1 2 = or(1 2) 7: 1 3 = or(!1 !3) = H Evergreen game: maximize payoff find maximum assignment

  10. excellent peripheral vision 0 1 2 3 4 5 6 = k 8/9 7/9 Blurry vision • What do we learn from the abstract representation absH? • set 1/3 of the variables to true (maximize). • the best assignment will satisfy at least 7/9 constraints. • very useful but the vision is blurry in the “middle”. appmean = approximation of the mean (k variables true)

  11. Our approach by Example • Given a CSP(G)-instance H and an assignment N which satisfies fraction f in H • Is there an assignment that satisfies more than f? • YES (we are done), absH(mb) > f • MAYBE, The closer absH() comes to f, the better • Is it worthwhile to set a certain literal k to 1 so that we can reach an assignment which satisfies more than f • YES (we are done), H1 = Hk=1, absH1(mb1) > f • MAYBE, the closer absH1(mb1) comes to f, the better • NO, UP or clause learning absH= abstract representation of H

  12. 8/9 7/9 abstract representation 14 : 1 2 014 :       3 4 014 :           5 6 0  7 : 1    3            0 7 : 1        5      0 7 :       3   5      0 7 :   2     4          0 7 :   2         6   0 7 :         4   6   0 H 3/9 0 1 2 3 4 5 6 14 : 2 014 :       3 4 014 :           5 6 0  7 : 1    3            0 7 : 1        5      0 7 :       3   5      0 7 :   2     4          0 7 :   2         6   0 7 :         4   6   0 6/7 = 8/9 5/7=7/9 H0 3/7=5/9 maximum assignment away from max bias: blurry 0 1 2 3 4 5

  13. 8/9 7/9 14 : 1 2 014 :       3 4 014 :           5 6 0  7 : 1    3            0 7 : 1        5      0 7 :       3   5      0 7 :   2     4          0 7 :   2         6   0 7 :         4   6   0 3/8 H 0 1 2 3 4 5 6 clearly above 3/4 14 : 1 2 014 :       3 4 014 :           5 6 0 7 :     3            0 7 :         5      0 7 :       3   5      0 7 :   2     4          0 7 :   2         6   0 7 :         4   6   0 7/8=8/9 6/8=7/9 H1 maximum assignment away from max bias: blurry 2/7=3/8 0 1 2 3 4 5

  14. 14 : 1 2 014 :       3 4 014 :           5 6 0  7 : 1    3            0 7 : 1        5      0 7 :       3   5      0 7 :   2     4          0 7 :   2         6   0 7 :         4   6   0 8/9 7/9 abstract representation guarantees 7/9 H 7/8 = 8/9 6/7=8/9 6/8 = 7/9 5/7=7/9 abstract representation guarantees 7/9 abstract representation guarantees 8/9 H0 UBCSAT H1 NEVER GOES DOWN: DERANDOMIZATION

  15. rank 2 10: 1 = or(1) 7: 1 2 = or(!1 !2) 4/6 4/6 10 : 1 0 10 : 2 0 10 : 3 0 7 : 1 2 0 7 : 1 3 0 7 : 2 3 0 3/6 3/6 abstract representation guarantees 0.625 * 6 = 3.75: 4 satisfied. Evergreen game: G = {10,7} How do you choose a CSP(G)-instance to minimize payoff? 0.618 … 0 1 2 3 4/6 4/6 4/6 4/6 5 : 1 0 10 : 2 0 10 : 3 0 13 : 1 2 0 13 : 1 3 0 7 : 2 3 0 3/6 3/6 rank 2 5: 1 = or(!1) 13: 1 2 = or(1 !2) The effect of n-map

  16. First Impression • The abstract representation = look-ahead polynomials seems useful for guiding the search. • The look-ahead polynomials give us averages: the guidance can be misleading because of outliers. • But how can we compute the look-ahead polynomials? How do the polynomials help play the Evergreen(3,2) game?

  17. Where we are • Introduction • Look-forward • Look-backward • SPOT: how to use the look-ahead polynomials together with superresolution.

  18. Look Forward • Why? • To make informed decisions • To play the Evergreen game • How? • Abstract representation based on look-ahead polynomials

  19. Look-ahead Polynomial(Intuition) • The look-ahead polynomial computes the expected fraction of satisfied constraints among all random assignments that are produced with bias p.

  20. Consider an instance: 40 variables,1000 constraints (1in3) 1, … ,40 22: 6 7 9 0 22: 12 27 38 0 Abstract representation: reduce the instance to look-ahead polynomial 3p(1-p)2 = B1,3(p) (Bernstein)

  21. 3p(1-p)2 for MAX-CSP({22})

  22. Look-ahead Polynomial(Definition) • H is a CSP(G) instance. • N is an arbitrary assignment. • The look-ahead polynomial laH,N(p) computes the expected fraction of satisfied constraints of H when each variable in N is flipped with probability p.

  23. The general case MAX-CSP(G) G = {R1, … }, tR(F) = fraction of constraints in F that use R. appSATR(x) over all R is a super set of the Bernstein polynomials (computer graphics, weighted sum of Bernstein polynomials) x = p

  24. Rational Bezier Curves

  25. Bernstein Polynomials http://graphics.idav.ucdavis.edu/education/CAGDNotes/Bernstein-Polynomials.pdf

  26. all the appSATR(x) polynomials

  27. Look-ahead Polynomial in Action • Focus on purely mathematical question first • Algorithmic solution will follow • Mathematical question: Given a CSP(G) instance. For which fractions f is there always an assignment satisfying fraction f of the constraints? In which constraint systems is it impossible to satisfy many constraints?

  28. Remember? MAX-CSP(G,f): Given a CSP(G) instance H expressed in n variables which may assume only the values 0 or 1, find an assignment to the n variables which satisfies at least the fraction f of the constraints in H. Example: G = {22} of rank 3 MAX-CSP({22},f): 22:1 2 3 0 22:1 2 4 0 22:1 3 4 0 22: 2 3 4 0

  29. Mathematical Critical Transition Point MAX-CSP({22},f): For f ≤ u: problem has always a solution For f≥ u + e: problem has not always a solution, e>0. 1 not always (solid) u = critical transition point always (fluid) 0

  30. The Magic Number • u = 4/9

  31. 3p(1-p)2 for MAX-CSP({22})

  32. Produce the Magic Number • Use an optimally biased coin • 1/3 in this case • In general: min max problem

  33. The 22 reductions:Needed for implementation 1,0 2,0 22 60 240 3,0 2,1 3,1 1,1 2,0 3,0 3 15 255 3,1 2,1 22 is expanded into 6 additional relations. 0

  34. The 22 N-Mappings:Needed for implementation 1 41 134 2 2 0 0 1 1 22 73 146 104 2 2 0 0 97 148 1 22 is expanded into 7 additional relations.

  35. General Dichotomy Theorem MAX-CSP(G,f): For each finite set G of relations closed under renaming there exists an algebraic number tG : For f ≤ tG: MAX-CSP(G,f) has polynomial solution For f≥ tG+ e: MAX-CSP(G,f) is NP-complete, e>0. 1 hard (solid) NP-complete polynomial solution: Use optimally biased coin. Derandomize. P-Optimal. tG = critical transition point easy (fluid) Polynomial 0 due to Lieberherr/Specker (1979, 1982) implications for the Evergreen game? Are you a better player?

  36. Context • Ladner [Lad 75]: if P !=NP, then there are decision problems in NP that are neither NP-complete, nor they belong to P. • Conceivable that MAX-CSP(G,f) contains problems of intermediate complexity.

  37. General Dichotomy Theorem(Discussion) MAX-CSP(G,f): For each finite set G of relations closed under renaming there exists an algebraic number tG For f≤ tG: MAX-CSP(G,f) has polynomial solution For f≥ tG+ e: MAX-CSP(G,f) is NP-complete, e>0. 1 hard (solid), NP-complete exponential, super-polynomial proofs ??? relies on clause learning tG = critical transition point easy (fluid), Polynomial (finding an assignment) constant proofs (done statically using look-ahead polynomials) no clause learning 0

  38. min max problem sat(H,M) = fraction of satisfied constraints in CSP(G)-instance H by assignment M tG = min max sat(H,M) all CSP(G) instances H all (0,1) assignments M

  39. Problem reductions are the key • Solution to simpler problem implies solution to original problem.

  40. min max problem sat(H,M,n) = fraction of satisfied constraints in CSP(G)-instance H by assignment M with n variables. tG = lim min max sat(H,M,n) all (0,1) assignments M to n variables n to infinity all SYMMETRIC CSP(G) -instances H with n variables

  41. Reduction achieved • Instead of minimizing over all constraint systems it is sufficient to minimize over the symmetric constraint systems.

  42. Reduction • Symmetric case is the worst-case: If in a symmetric constraint system the fraction f of constraints can be satisfied, then in any constraint system the fraction f can be satisfied.

  43. Symmetric the worst-case n variables n! permutations If in the big system the fraction f is satisfied, then there must be a least one small system where the fraction f is satisfied . .

  44. min max problem sat(H,M,n) = fraction of satisfied constraints in system S by assignment I tG = lim min max sat(H,M,n) all (0,1) assignments M to n variables where the first k variables are set to 1 n to infinity all SYMMETRIC CSP(G) -instances H with n variables

  45. Observations • The look-ahead polynomial look-forward approach has not been used in state-of-the-art MAX-SAT and Boolean MAX-CSP solvers. • Often a fair coin is used. The optimally biased coin is often significantly better.

  46. The Game Evergreen(r,m) for Boolean MAX-CSP(G), r>1,m>0 Two players: They agree on a protocol P1 to choose a set of m relations of rank r. • The players use P1 to choose a set G of m relations of rank r closed under renamings. • Player 1 constructs a CSP(G) instance H with 1000 variables and at most 2*(1000 choose r) constraints and gives it to player 2 (1 second limit). • Player 2 gets paid the fraction of constraints she can satisfy in H (100 seconds limit). • Take turns (go to 1).

  47. For Evergreen(3,2) 100% R1, 0% R2 100% R2, 0% R1

  48. Evergreen(3,2) protocol possibilities • Variant 1 • Player P2 chooses both relations G • Player P1 chooses CSP(G) instance H. • Player P2 solves H and gets paid by P1. • This gives too much control to P2. P2 can choose two odd relations which guarantees P2 a pay of 1 independent of how P1 chooses the instance H.

  49. Evergreen(3,2) protocol possibilities • Variant 2: • Player P1 chooses a relation R1 (e.g. 22). • Player P2 chooses a relation R2. • Player P1 chooses CSP(G) instance H. • Player P2 solves H and gets paid by P1. • This gives nice control to P2. P2 will choose a relation R2 that will maximize P2’s profit. R2, P2 R1, P1 100% R2, 0% R1 100% R1, 0% R2

More Related