Download presentation
Presentation is loading. Please wait.
1
It’s all about the support: a new perspective on the satisfiability problem Danny Vilenchik
2
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 ) Æ … x6x6 x5x5 x4x4 x3x3 x2x2 x1x1 TFFTFF x 5 supports this clause w.r.t. Ã The supporter (if exists) is always unique Goal: algorithm that produces optimal result, efficient, and works for all inputs
3
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 results on typical instances Heuristic is a polynomial time algorithm that produces optimal results on typical instances
4
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 3CNF s are not satisfiable (4.506) m/n < d : most 3CNF s are satisfiable (3.42) Near-threshold 3CNF s are apparently “hard” for many SAT heuristics Possible reason: complicated structure of solution space (clustering)
5
Motivation – part 1 Experimental results show: takes super-polynomial time for m/n ¸ 2.65 RWalkSAT( F ) [Papa91] 1.Set à à random assignment 2.While( à doesn't satisfy F ) a.Pick a random unsatisfied clause C b.Flip a random variable in C RWalkSAT( F ) [Papa91] 1.Set à à random assignment 2.While( à doesn't satisfy F ) a.Pick a random unsatisfied clause C b.Flip a random variable in C Simulated annealing WalkSAT( F ) 1.Set à à random assignment 2.While( à doesn't satisfy F ) a.Pick a random unsatisfied clause C b.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 assignment 2.While( à doesn't satisfy F ) a.Pick a random unsatisfied clause C b.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
6
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.
7
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 ¸ c 0, c 0 some sufficiently large constant. Theorem: the algorithm SupportSAT finds whp a satisfying assignment for 3CNF formulas in the planted 3SAT distribution with m/n ¸ c 0, c 0 some sufficiently large constant.
8
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 ¸ c 0 SupportSAT finds whp a satisfying assignment in polynomial time
9
The Algorithms RWalkSAT( F ) 1.Set à à random assignment 2.While( à doesn't satisfy F ) a.Pick a random unsatisfied clause C b.Flip a random variable in C RWalkSAT( F ) 1.Set à à random assignment 2.While( à doesn't satisfy F ) a.Pick a random unsatisfied clause C b.Flip a random variable in C WalkSAT( F ) 1.Set à à random assignment 2.While( à doesn't satisfy F ) a.Pick a random unsatisfied clause C b.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 assignment 2.While( à doesn't satisfy F ) a.Pick a random unsatisfied clause C b.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
10
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
11
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 ’s x is suspicious
12
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
13
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
14
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 3CNF s with same ratio) Single cluster of satisfying assignments Size of the cluster is exponential in n (1-e -(m/n) )n variables are frozen
15
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
16
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 ?
17
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 E F (Ã)= 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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.