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

presentation player overlay
About This Presentation
Transcript and Presenter's Notes

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


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 lt 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
  • 221 2 3 0
  • 221 2 4 0
  • 221 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
  • 221 2 3 0
  • 221 2 4 0 in MAX-CSP(22,?).
    Highest value for ?
  • 221 3 4 0
  • 22 2 3 4 0

1in3 has number 22
5
Evergreen(3,2) game
P1 you P2 I
  • 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 P2s profit.
  • Take turns.

R2, P2
R1, P1
100 R1, 0 R2
100 R2, 0 R1
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 GR1,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 ExampleSAT 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) gt 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 Hk1, absH1(mb1) gt f
  • MAYBE, the closer absH1(mb1) comes to f, the
    better
  • NO, UP or clause learning

absH abstract representation of H
12
  • 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
3/9
H
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/77/9
H0
3/75/9
maximum assignment away from max bias blurry
0 1 2 3 4
5
13
  • 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
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/88/9
6/87/9
H1
maximum assignment away from max bias blurry
2/73/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/78/9
6/8 7/9
5/77/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/CAGDNot
es/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)
  • 221 2 3 0
  • 221 2 4 0
  • 221 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, egt0.
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 reductionsNeeded for implementation
1,0
2,0
22
60
240
3,0
2,1
3,1
1,1
3,0
2,0
3
15
255
3,1
2,1
22 is expanded into 6 additional relations.
0
34
The 22 N-MappingsNeeded 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, egt0.
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, egt0.
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 (0,1) assignments M
all CSP(G) instances H
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
(No Transcript)
47
The Game Evergreen(r,m) for Boolean MAX-CSP(G),
rgt1,mgt0
  • 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).

48
For Evergreen(3,2)
100 R1, 0 R2
100 R2, 0 R1
49
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.

50
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 P2s profit.

R2, P2
R1, P1
100 R1, 0 R2
100 R2, 0 R1
51
Problem with variant 2
  • P1 can just ignore relation R2.
  • Gives P1 too much control because the payoff for
    P2 depends only on R1 chosen by P1.

52
Protocol choice variant 3
  • Randomly choose symmetric R1 and symmetric R2
    (independently) between 1 and 255 (Throw two
    dice).

53
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? 4/9
  • What kind of algorithm should P1 use to maximize
    its payoff? compute optimal k best MAX-CSP
    solver.

symmetric instance with (1000 choose 3)
constraints
54
For Evergreen(3,2)
Tells us how to mix the two relations
100 R1, 0 R2
100 R2, 0 R1
55
Role of tG in the Evergreen(3,2) game
  • 1 Instance construction Choose a CSP(G)
    instance so that only the fraction tG can be
    satisfied symmetric formula.
  • 2 Choose an algorithm so that at least the
    fraction tG is satisfied. (2 gets paid tG from
    1).

56
Game strategy in a nutshell
  • 1. Best Choose tG instance
  • 2. Best Gets paid tG
  • etc.

57
Additional Information
  • Rich literature on clause learning in SAT and CSP
    solver domain. Superresolution is the most
    general form of clause learning with restarts.
  • Papers on look-ahead polynomials and
    superresolution http//www.ccs.neu.edu/resea
    rch/demeter/papers/publications.html

58
Additional Information
  • Useful unpublished paper on look-ahead
    polynomials http//www.ccs.neu.edu/research/demet
    er/biblio/partial-sat-II.html
  • Technical report on the topic of this talk
    http//www.ccs.neu.edu/research/demeter/biblio/POp
    tMAXCSP.html

59
Future work
  • Exploring best combination of look-forward and
    look-back techniques.
  • Find all maximum-assignments or estimate their
    number.
  • Robustness of maximum assignments.
  • Are our MAX-CSP solvers useful for reasoning
    about biological pathways?

60
Conclusions
  • Presented SPOT, a family of MAX-CSP solvers based
    on look-ahead polynomials and non-chronological
    backtracking.
  • SPOT has a desirable property P-optimal.
  • SPOT can be implemented very efficiently.
  • Preliminary experimental results are encouraging.
    A lot more work is needed to assess the practical
    value of the look-ahead polynomials.

61
Polynomials for rank 3
  • x3 x2 x1 x0 relation
  • -1 3 -3 1 1
  • 1 -2 1 0 2
  • 0 1 -2 1 3
  • 1 -2 1 0 4
  • 0 1 -2 1 5
  • For 2 x(1-x)2x3-2x2x
  • maximum at x1/3 1/3(2/3)24/27

62
Recall
  • (fg) fg fg
  • (f2) 2f f
  • For relation 2
  • x(1-x)2 (1-x)2 x2(1-x)(-1) (1-x)(1-3x)
  • x1 is minimum
  • x1/3 is maximum
  • value at maximum 4/27

63
Check 2 and 4 should be the same
64
Harold
  • concern intension, extension query, predicate
  • extension intension(software)
  • Harold Ossher confirmed pointcuts

65
The Game Evergreen(r,m) for Boolean MAX-CSP(G),
rgt1,mgt0
  • 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.
  • 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 by player 1 the fraction of
    constraints she can satisfy in H (100 seconds
    limit).
  • Take turns (go to 1).

66
Evergreen(3,2)
  • Rank 3 Represent relations by the integer
    corresponding to the truth table in standard
    sorted order 000 111.
  • choose relations between 1 and 254 (exclude 0 and
    255).
  • Dont choose two odd numbers All false would
    satisfy all constraints.
  • Dont choose both numbers above 128 All true
    would satisfy all constraints.

67
The Game Evergreen(r,m) for Boolean MAX-CSP(G),
rgt1,mgt0
  • 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.
  • 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 by player 1 the fraction of
    constraints she can satisfy in H (100 seconds
    limit).
  • Take turns (go to 1).

68
Requirements for algorithms and properties to work
  • Relative P-optimality
  • Absolute P-optimality
  • G needs to be closed under renaming and
    reductions and n-maps
  • Look-ahead polynomials

69
What happens during the solution process
  • Maximum of polynomial will be at the boundary,
    say 0. Can be achieved in P. Notice folding
    effect.
  • Many superresolvents will be learned until better
    assignment is found.
  • Most constraints use an odd relation, a few an
    even relation (if many constraints can be
    satisfied).

70
What happens
  • Because the polynomial only depends on a few
    numbers, it is not sensitive to the detailed
    properties of the instance.
  • But if one variable has a visible bias towards
    either 1 or 0, polynomials might detect it.
  • Adjust the weight of the constraints to bring the
    maximum of the polynomial into the middle so that
    abs(mb) increases.

71
Question for Daniel
  • p(x) t1p1(x)t2p2(x)
  • mb at 0
  • p(mb)
  • perturb t1,t2 so that p(x) gets a higher maximum.
    The fraction of t1 should go up if R1 is an
    unsatisfied relation.
  • How high can we bring the fraction of satisfied
    constraints this way?

72
Question
  • Does this solve the original problem?
  • If we get all all satisfied, yes.
  • Can force that, by deleting all but one
    unsatisfied and adding them later on.
  • Are forced to work with many relations.
Write a Comment
User Comments (0)
About PowerShow.com