17
It’s all about the support: a new perspective on the satisfiability problem Danny Vilenchik

It’s all about the support: a new perspective on the satisfiability problem

  • Upload
    brand

  • View
    16

  • Download
    0

Embed Size (px)

DESCRIPTION

It’s all about the support: a new perspective on the satisfiability problem. Danny Vilenchik. SAT – Basic Notions. 3CNF form: F = ( x 1 Ç x 2 Ç ¬x 5 ) Æ ( x 3 Ç ¬x 4 Ç ¬x 1 ) Æ ( x 1 Ç x 2 Ç x 6 ) Æ … Ã F = ( F Ç F Ç T ) Æ ( T Ç T Ç T ) Æ ( T Ç F Ç T ) Æ …. - PowerPoint PPT Presentation

Citation preview

Page 1: It’s all about the support:  a new perspective on the satisfiability problem

It’s all about the support: a new perspective on the satisfiability problem

Danny Vilenchik

Page 2: It’s all about the support:  a new perspective on the satisfiability problem

SAT – Basic Notions

3CNF form:

F = (x1Çx2Ǭx5) Æ (x3Ǭx4Ǭx1) Æ (x1Çx2Çx6) Æ…

Ã

F = ( F ÇF Ç T ) Æ ( T Ç T Ç T ) Æ ( T Ç F Ç T )Æ…

x1x2x3x4x5x6

FFTFFT

x5 supports this clause w.r.t. Ã

The supporter (if exists) is always unique

Goal: algorithm that produces optimal result, efficient, and works for all inputsGoal: algorithm that produces optimal result, efficient, and works for all inputs

Page 3: It’s all about the support:  a new perspective on the satisfiability problem

SAT – Some Background

Finding a satisfying assignment is NP Hard [Cook’71]

No approximation for MAX-SAT with factor better than 7/8 [Hastad’01]

How to proceed?

Hardness results only show that there exist hard instances

The heuristical approach - relaxes the universality requirement

Typical instance?

One possibility: random models

Heuristic is a polynomial time algorithm that produces optimal resultson typical instances

Heuristic is a polynomial time algorithm that produces optimal resultson typical instances

Page 4: It’s all about the support:  a new perspective on the satisfiability problem

Random 3SAT

Random 3SAT:

Fix m,n

Pick m clauses uniformly at random (over the n variables)

Threshold: there exists a constant d such that [Fri99]

m/n¸d: most 3CNFs are not satisfiable (4.506)

m/n<d : most 3CNFs are satisfiable (3.42)

Near-threshold 3CNFs are apparently “hard” for many SAT heuristics

Possible reason: complicated structure of solution space (clustering)

Page 5: It’s all about the support:  a new perspective on the satisfiability problem

Motivation – part 1

Experimental results show: takes super-polynomial time for m/n¸2.65

RWalkSAT(F) [Papa91]1. Set à à random assignment2. While(à doesn't satisfy F)

a. Pick a random unsatisfied clause Cb. Flip a random variable in C

RWalkSAT(F) [Papa91]1. Set à à random assignment2. While(à doesn't satisfy F)

a. Pick a random unsatisfied clause Cb. Flip a random variable in C

Simulated annealing

WalkSAT(F)1. Set à à random assignment2. While(à doesn't satisfy F)

a. Pick a random unsatisfied clause Cb. If C contains x s.t. supportÃ(x)=0, flip x

c. Else, - w.p. p flip variable with least support- w.p. (1-p) flip a random variable

WalkSAT(F)1. Set à à random assignment2. While(à doesn't satisfy F)

a. Pick a random unsatisfied clause Cb. If C contains x s.t. supportÃ(x)=0, flip x

c. Else, - w.p. p flip variable with least support- w.p. (1-p) flip a random variable

Page 6: It’s all about the support:  a new perspective on the satisfiability problem

Motivation cont.

WalkSAT was suggested by Seizt, Alava, Orponen, 2005.

For p=0.57, experimental results show polynomial time for m/n¸4.2

Already above the clustering threshold (~3.92)

What makes this possible?

We suggest: taking the support into account

WalkSAT is part of the Support Paradigm

Support Paradigm: a simulated-annealing heuristic H is part of

the Support Paradigm if it bases its greedy decisions (which variable

to flip) on the notion of support.

Support Paradigm: a simulated-annealing heuristic H is part of

the Support Paradigm if it bases its greedy decisions (which variable

to flip) on the notion of support.

Page 7: It’s all about the support:  a new perspective on the satisfiability problem

Our Result – Part 1

We present a simulated-annealing algorithm – SupportSAT

In some sense a variation on RWalkSAT that considers the support

The algorithm is part of the Support Paradigm

Proving rigorously that WalkSAT “works” is a very ambitious task

Improving lower bound on the sat threshold from 3.42 to 4.21

Theorem: the algorithm SupportSAT finds whp a satisfying assignment

for 3CNF formulas in the planted 3SAT distribution with m/n¸c0,

c0 some sufficiently large constant.

Theorem: the algorithm SupportSAT finds whp a satisfying assignment

for 3CNF formulas in the planted 3SAT distribution with m/n¸c0,

c0 some sufficiently large constant.

Page 8: It’s all about the support:  a new perspective on the satisfiability problem

Our Result cont.

RWalkSAT disregards the support – fails on such instances [AB04]

Staying at distance ¸ n/3 form any satisfying assignment

This rigorously mirrors the near-threshold picture for Random 3SAT

Experimental results show (random 3SAT):

RWalkSAT takes super-polynomial time for m/n¸2.65

WalkSAT (Support Paradigm) stays efficient until m/n¸4.21

Rigorous results show (Planted 3SAT) :

RWalkSAT takes super-polynomial time for m/n¸c0

SupportSAT finds whp a satisfying assignment in polynomial time

Page 9: It’s all about the support:  a new perspective on the satisfiability problem

The Algorithms

RWalkSAT(F)1. Set à à random assignment2. While(à doesn't satisfy F)

a. Pick a random unsatisfied clause Cb. Flip a random variable in C

RWalkSAT(F)1. Set à à random assignment2. While(à doesn't satisfy F)

a. Pick a random unsatisfied clause Cb. Flip a random variable in C

WalkSAT(F)1. Set à à random assignment2. While(à doesn't satisfy F)

a. Pick a random unsatisfied clause Cb. If C contains x s.t. supportÃ(x)=0, flip x

c. Else, - w.p. p flip variable with least support- w.p. (1-p) flip a random variable

WalkSAT(F)1. Set à à random assignment2. While(à doesn't satisfy F)

a. Pick a random unsatisfied clause Cb. If C contains x s.t. supportÃ(x)=0, flip x

c. Else, - w.p. p flip variable with least support- w.p. (1-p) flip a random variable

SupportSAT(F)

1. Start with a random assignment

2. Iteratively flip variables with low support (O(log n) steps)

3. Exhaustively search the subformula induced by “suspicious” variables

SupportSAT(F)

1. Start with a random assignment

2. Iteratively flip variables with low support (O(log n) steps)

3. Exhaustively search the subformula induced by “suspicious” variables

Page 10: It’s all about the support:  a new perspective on the satisfiability problem

The Planted Distribution

Planted 3SAT distribution with parameters m,n:

Fix an assignment

Pick u.a.r. m clauses out of all clauses that are satisfied by

We consider the case m/n=O(1)

Planted models also “fashionable” for graph coloring, max clique, max independent set, min bisection, SAT …

Planted 3SAT was analyzed in several papers

[Fla03] shows a spectral algorithm for solving sparse instances

We use the planted 3SAT as a case study for rigorous analysis to show:

“Simple” algorithms can be rigorously analyzed

Analysis of an algorithm in the Support Paradigm

Page 11: It’s all about the support:  a new perspective on the satisfiability problem

Analysis Sampler

Every variable x is expected to appear in 3m/n clauses

x supports (w.r.t. planted) a clause in which it appears w.p. 1/7

E[Support(x)]=3m/(7n) (O(1) in our setting)

Take à s.t. Ã(x)(x), but equal otherwise

SupportÃ(x)=0 then x will be flipped

After flip, SupportÃ(x) is typically large: x will not be flipped again

If Support(x) is small, then also after flip in à – remains small

In “reality”: Ã is random and therefore Ã(x)(x) for half of the x’sx is suspicious

Page 12: It’s all about the support:  a new perspective on the satisfiability problem

Analysis Sampler cont.

Step 1 sets correctly the typical variables (large support w.r.t. )

Step 2 completes the assignment of suspicious variables

There are whp e-£(m/n)n suspicious variables

They tpyically induce a “simple” formula (efficiently searchable)

One may not expect any “sophisticated” procedure to set them

SupportSAT(F)

1. Iteratively flip variables with low support (O(log n) steps)

2. Exhaustively search the subformula induced by “suspicious” variables

SupportSAT(F)

1. Iteratively flip variables with low support (O(log n) steps)

2. Exhaustively search the subformula induced by “suspicious” variables

Page 13: It’s all about the support:  a new perspective on the satisfiability problem

Motivation – part 2

Conjectured solution space of Random 3SAT just below the threshold:

(rigorously proved for k¸8, [AR06,MMZ05])

All assignments within a cluster are “close” A linear number of variables are “frozen”

Every two clusters are “far” from each other Exponentially many clusters

Page 14: It’s all about the support:  a new perspective on the satisfiability problem

Motivation – cont.

[A. Coja-Oghlan, M. Krivelevich, V. 2007]

Solution space of Planted 3SAT, m/n some constant above the threshold:

(and also uniformly random satisfiable 3CNFs with same ratio)

Single cluster of satisfying assignments Size of the cluster is exponential in n (1-e-(m/n))n variables are frozen

Page 15: It’s all about the support:  a new perspective on the satisfiability problem

Our Result – part 2

Observation: if 9Ã SupportÃ(x)=0, x can not be frozen in that

cluster

Going over the proof in [CKV07]:

Combinatorial characterization of the single frozen cluster is completely based on the support

The analysis of SupportSAT reveals:

The “WalkSAT” part of SupportSAT sets the frozen variables in the cluster correctly - (1-e-(m/n))n variables

The non-frozen variables induce a simple formula:

can be identified and searched efficiently

Page 16: It’s all about the support:  a new perspective on the satisfiability problem

Further Research

Rigorous analysis of “simple” and “practical” heuristics

WalkSAT on near-threshold random 3SAT

For starters, analyze it on the planted distribution

See if the components used in SupportSAT can be useful in practice

For example, for near-threhold random 3SAT

Any other interesting phenomena can be explained by the support ?

Page 17: It’s all about the support:  a new perspective on the satisfiability problem

Motivation – Part 3 (philosophical) 3CNF formulas can be seen as physical objects (spin glass system)

Every assignment corresponds to a an energy level of the system

EF(Ã)= the number of unsatisfied clauses by à (free energy)

Goal: reach 0 temperature (freeze)

Connection to support?

Flipping variable with 0 support: making a move that can only decrease energy

Flipping variable with lowest support: a move which incurs the least increment of free energy

Flipping a variable in an unsatisfied clause: if it reduces the energy of the system then it increases the support of this variable