310 likes | 539 Views
The Project. Problem formulation (one page) Literature review “Related work" section of final paper, Go to writing center, Present paper(s) to class Proposed method 2-3 pages. Possibly with figures Will become introductory section of final paper) Setting up the tool(s) necessary
E N D
The Project • Problem formulation (one page) • Literature review • “Related work" section of final paper, • Go to writing center, • Present paper(s) to class • Proposed method • 2-3 pages. Possibly with figures • Will become introductory section of final paper) • Setting up the tool(s) necessary • Tutorial on tool to class • Use cluster, DesignTech lab computer • Learning the appropriate description language • I'll help with this part • Final paper and presentation. • Conference format, up to 10 pages. ½ hour presentation • There MUST be results. • Grade will be significantly reduced otherwise.
The Project • Make an appointment with me • Problem formulation and proposed timeline due next Tuesday in class.
DPLL-style SAT solvers SATO,GRASP,CHAFF,BERKMIN • Objective: • Check satisfiability of a CNF formula • literal: v or Øv • clause: disjunction of literals • CNF: conjunction of clauses • Approach: • Branch: make arbitrary decisions • Propagate implication graph • Use conflicts to guide inference steps
a b Øc d Decisions The Implication Graph (BCP) (Øa Ú b) Ù (Øb Ú c Ú d) Assignment: a Ù b ÙØc Ù d
Resolution a Ú b ÚØc Øa ÚØc Ú d b ÚØc Ú d When a conflict occurs, the implication graph is used to guide the resolution of clauses, so that the same conflict will not occur again.
resolve (Øb Ú c ) a b Conflict! resolve Conflict! (Øa Ú c) Øc Conflict! Decisions Conflict Clauses (Øa Ú b) Ù (Øb Ú c Ú d) Ù (Øb ÚØ d) d Assignment: a Ù b ÙØc Ù d
Conflict Clauses (cont.) • Conflict clauses: • Are generated by resolution • Are implied by existing clauses • Are in conflict in the current assignment • Are safely added to the clause set Many heuristics are available for determining when to terminate the resolution process.
Basic SAT algorithm A = Æ empty clause? y UNSAT n conflict? Deduce conflict clause and backtrack y is A total? y Branch: add some literal to A SAT
Decision Tree x1 x1=0, x4=1 x3=1, x8=0, x12=1 x3 Conflict-Driven Learning Add Conflict Clause x2 x2=0, x11=1 x3’ + x7’ + x8 x3=1 x7 x7=1, x9=1, x9=0 x4=1 x9=1 x7=1 CONFLICT x1=0 x9=0 x11=1 x3=1 x7=1 x8=0 conflict x12=1 x8=0 Implication Graph x2=0 Review: Conflict-Driven Learning x1 + x4 x1 + x3’ + x8’ x1 + x8 + x12 x2 + x11 x7’ + x3’ + x9 x7’ + x8 + x9’ x7+ x8 + x10’ x7 + x10 + x12’
Review: Conflict-Driven Learning • Benefits of CDL • Allows non-chronological backtracking • Avoids same conflict in future • Decision heuristics using CDL information are more effective x1 x2 x3 x3 x4 x5 x5 Conflict clause: x1’ + x3 + x5’