Download presentation

Presentation is loading. Please wait.

Published byHailee Stenner Modified over 2 years ago

1
Generating Hard Satisfiability Problems1 Bart Selman, David Mitchell, Hector J. Levesque Presented by Xiaoxin Yin

2
Generating Hard Satisfiability Problems 2 Can SAT be solved in polynomial time in average case? In Goldberg’s paper [Goldberg ‘79] it is claimed that SAT can be solved “on average” in polynomial time. Goldberg’s model of generating formulas m clauses, n variables, each literal has probability p to be in each clause Is SAT really easy?

3
Generating Hard Satisfiability Problems 3 Can SAT be solved in polynomial time in average case? Goldberg’s SAT formulas are easy to solve [Franco & Paull ‘83] Theorem 1: Number of truth assignments for a formula is greater than 2 n (1-ε) with probability 1 Theorem 2: By randomly guessing truth assignments w times, Pr(success)=1 – m/(2 αnw ) assume each clause has at least αr literals

4
Generating Hard Satisfiability Problems 4 K-SAT is a harder problem K-SAT: each clause has K literals

5
Generating Hard Satisfiability Problems 5 Problem Definition of K-SAT Generate formulas of N variables K literals per clause (K = 3 in this paper) M clauses To generate a clause Randomly choose K distinct variables Negate each with probability 0.5 Generate formulas with certain ratio of clauses-to-variables

6
Generating Hard Satisfiability Problems 6 DP Procedure DP: a backtracking depth-first search in the space of all truth assignments Procedure DP Given a set of clauses Σ defined over a set of variables V Set the value of a variable v and call DP on the simplified formula If this call returns “satisfiable”, then return “satisfiable” Set v to the opposite value, return the result of calling DP on the re-simplified formula

7
Generating Hard Satisfiability Problems 7 Three Common Rules for DP The unit clause rule If a clause contains only one literal, set it to true The pure literal rule If a formula contains a literal but not its complement, set it to true The smallest clause rule If none of the above rules applies, set a variable in a smallest clause The last two rules are not used in this paper

8
Generating Hard Satisfiability Problems 8 DP’s Performances on K-SAT Ratio of clauses-to-variables significantly affects the hardness of formulas

9
Generating Hard Satisfiability Problems 9 Ratio of Clauses-to-variables vs. Computational Cost Another example in [Mitchell & Levesque ‘96]

10
Generating Hard Satisfiability Problems 10 50% Point 50% point: given a certain N (# variables), the point that 50% of generated formulas are satisfiable 50% point is stable w.r.t. ratio of clauses-to- variables N2050100150 50% point4.554.364.314.3

11
Generating Hard Satisfiability Problems 11 50% Point – The Hardest Point (cont.) 50% point is close to the location of peak hardness

12
Generating Hard Satisfiability Problems 12 Satisfiable vs. Unsatisfiable Formulas Short formulas – under-constrained, have many satisfying assignments Long formulas – over-constrained, contradictions can often be easily found

13
Generating Hard Satisfiability Problems 13 Finding All Satisfying Assignments or Contradiction Let DP search the full space, until finding a contradiction Given a set of variables Ratio of clauses to variables increases →Search space decreases

14
Generating Hard Satisfiability Problems 14 Finding All Satisfying Assignments or Contradiction (cont.) Computational cost of DP – monotonically decreases for increasing ratios of clauses to variables

15
Generating Hard Satisfiability Problems 15 Satisfiablity when ratio of clause-to- variable is small Pure literal rule: if a formula contains a literal but not its complement Set this literal to 1 Remove all clauses containing this literal For 3-CNF with up to 1.63n clauses, pure literal rule by itself finds satisfying assignments with high probability [Broder, Frieze & Upfal ‘93]

16
Generating Hard Satisfiability Problems 16 Satisfiablity when ratio of clause-to- variable is small Smallest clause rule: Choose a (random) literal in a (random) smallest clause For 3-CNF with less than 3.003n clauses, by smallest clause rule one can find satisfying assignments with high probability [Frieze & Suen ‘92] By “high probability” we mean Pr → 1 as n → ∞

17
Generating Hard Satisfiability Problems 17 Satisfiablity when ratio of clause-to- variable is large When c>4.762, a random 3-SAT formula is unsatisfiable with high probability [Kamath et al ‘94]. Some intuitions of proof: Consider a certain assignment Z 1, each clause is true with probability 7/8. Let #F denote number of satisfying assignments on F. E[#F] = 2 n (7/8) cn. By Markov inequality, P[#F>0]≤E[#F]=(2∙(7/8) c ) n This probability is exponentially small when c > 5.191

18
Generating Hard Satisfiability Problems 18 DP vs. Resolution DP searches for satisfying assignments as well as contradictions Resolution searches for contradictions Some result about resolution In k-SAT problems of cn clauses, when k ≥ 3 and c2 –k ≥ 0.7, with probability tending to 1 as n goes to infinity, a randomly chosen formula of cn clauses is unsatisfiable, but there exists ε>0 such that every resolution proof must generate at least (1+ε) n clauses [Chvatal & Reed ‘92] c=5.6 when k=3

19
Generating Hard Satisfiability Problems 19 Satisfiability for Different K For a random formula F k (n, cn) c k = sup{ c : F k (n, cn) is satisfiable with high prob} c k * = inf{ c : F k (n, cn) is unsatisfiable with high prob} [Kirousis et al ‘98] c k * ≤ 2 k ln2 – (1+ln2)/2 [Achlioptas and Peres ‘03] c k = c k * (1 – o(1)) c k ≥ 2 k ln2 – (k+1)ln2/2 – 1 – δ k (for a certain sequence δ k →0) ckck ck*ck* satisfiableunsatisfiableundetermined

20
Generating Hard Satisfiability Problems 20 Satisfiability for Different K (cont.) Lower and upper bounds for different K

21
Generating Hard Satisfiability Problems 21 K-SAT with different K’s When K is larger → Higher satisfiability, larger search space when n is large

22
Generating Hard Satisfiability Problems 22 P-SAT with different K’s Each variable has certain probability to appear in each clause Each clause has K variables on average

23
Generating Hard Satisfiability Problems 23 Solving SAT by Local Search [B. Selman et al ‘92] “A new method for solving hard satisfiability problems” GSAT – greedily search in the space of assignments GSAT algorithm Repeat for MAX-TRIES times randomly generate an assignment repeat for MAX-FLIPS times flip a variable to get largest increase in number of satisfied clauses

24
Generating Hard Satisfiability Problems 24 Solving SAT by Local Search (cont.) Performance of GSAT Drawback – cannot prove unsatisfiability

25
Generating Hard Satisfiability Problems 25 Thank you!

26
Generating Hard Satisfiability Problems 26 Additional Contents Performances of other approaches for solving K-SAT are presented in [Larrabee & Tsuji ‘93], which shows similar results (easy-hard- easy pattern)

27
Generating Hard Satisfiability Problems 27 Solving 2-SAT in Linear Time Choose a variable x and assign a value (e.g. x=1) Remove all clauses that are true Set values to all variables whose values are decided Propagate in this way until nothing can be done If contradiction happens, return false A set of clauses are left that are independent with the removed ones If these clauses are satisfiable, return true Else return false

Similar presentations

OK

Sub Exponential Randomize Algorithm for Linear Programming Paper by: Bernd Gärtner and Emo Welzl Presentation by : Oz Lavee.

Sub Exponential Randomize Algorithm for Linear Programming Paper by: Bernd Gärtner and Emo Welzl Presentation by : Oz Lavee.

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google

Ppt on structure of chromosomes during prophase Ppt on paintings and photographs related to colonial period dates Ppt on natural numbers list Ppt on human resource department Download ppt on wildlife conservation in india Ppt on culture of goa Ppt on tata trucks Ppt on amplitude shift keying modem Ppt on unemployment in india free download Ppt on high level languages for computers