IBM Labs in Haifa © 2005 IBM Corporation Adaptive Application of SAT Solving Techniques Ohad Shacham and Karen Yorav Presented by Sharon Barner.

Slides:



Advertisements
Similar presentations
Exploiting SAT solvers in unbounded model checking
Advertisements

Hybrid BDD and All-SAT Method for Model Checking Orna Grumberg Joint work with Assaf Schuster and Avi Yadgar Technion – Israel Institute of Technology.
The Project Problem formulation (one page) Literature review –“Related work" section of final paper, –Go to writing center, –Present paper(s) to class.
Chaff: Engineering an Efficient SAT Solver Matthew W.Moskewicz, Concor F. Madigan, Ying Zhao, Lintao Zhang, Sharad Malik Princeton University Modified.
Presented by Monissa Mohan 1.  A highly optimized BCP algorithm  Two watched literals  Fast Backtracking  Efficient Decision Heuristic  Focused on.
Chaff: Engineering an Efficient SAT Solver Matthew W.Moskewicz, Concor F. Madigan, Ying Zhao, Lintao Zhang, Sharad Malik Princeton University Presenting:
1 Local Restarts in SAT Solvers Vadim Ryvchin and Ofer Strichman Technion, Haifa, Israel.
Proofs from SAT Solvers Yeting Ge ACSys NYU Nov
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View SAT.
1/30 SAT Solver Changki PSWLAB SAT Solver Daniel Kroening, Ofer Strichman.
© 2002 Fadi A. Aloul, University of Michigan PBS: A Pseudo-Boolean Solver and Optimizer Fadi A. Aloul, Arathi Ramani, Igor L. Markov, Karem A. Sakallah.
Weizmann Institute Tuning SAT-checkers for Bounded Model-Checking A bounded guided tour Ofer Shtrichman Weizmann Institute & IBM (HRL)
Methods for SAT- a Survey Robert Glaubius CSCE 976 May 6, 2002.
1 Boolean Satisfiability in Electronic Design Automation (EDA ) By Kunal P. Ganeshpure.
On-The-Fly Resolve Trace Minimization Ohad Shacham and Karen Yorav IBM Haifa Research Laboratory.
Presented by Ed Clarke Slides borrowed from P. Chauhan and C. Bartzis
Chaff: Engineering an Efficient SAT Solver Matthew W.Moskewicz, Concor F. Madigan, Ying Zhao, Lintao Zhang, Sharad Malik Princeton University Presenting:
Constraint Satisfaction Problems
GRASP-an efficient SAT solver Pankaj Chauhan. 6/19/ : GRASP and Chaff2 What is SAT? Given a propositional formula in CNF, find an assignment.
SAT-Based Decision Procedures for Subsets of First-Order Logic
IBM Labs in Haifa Software and Verification Technologies Supporting SAT based BMC on Finite Path Models Daniel Geist Mark Ginzburg Yoad Lustig Ishai Rabinovitz.
State-of-the-art in SAT solvers
GRASP SAT solver Presented by Constantinos Bartzis Slides borrowed from Pankaj Chauhan J. Marques-Silva and K. Sakallah.
1 A theory-based decision heuristic for DPLL(T) Dan Goldwasser Ofer Strichman Shai Fine Haifa university TechnionIBM-HRL.
Identifying Conflicts in Overconstrained Temporal Problems Mark H. Liffiton, Michael D. Moffitt, Martha E. Pollack, and Karem A. Sakallah University of.
A Probabilistic Method to Determine the Minimum Leakage Vector for Combinational Designs Kanupriya Gulati Nikhil Jayakumar Sunil P. Khatri Department of.
1 Abstraction Refinement for Bounded Model Checking Anubhav Gupta, CMU Ofer Strichman, Technion Highly Jet Lagged.
MAE 552 – Heuristic Optimization Lecture 5 February 1, 2002.
GRASP: A Search Algorithm for Propositional Satisfiability EE878C Homework #2 2002/11/1 KAIST, EECS ICS Lab Lee, Dongsoo.
1 Paul Beame University of Washington Phase Transitions in Proof Complexity and Satisfiability Search Dimitris Achlioptas Michael Molloy Microsoft Research.
SAT Solving Presented by Avi Yadgar. The SAT Problem Given a Boolean formula, look for assignment A for such that.  A is a solution for. A partial assignment.
Ratio Games and Designing Experiments Andy Wang CIS Computer Systems Performance Analysis.
Boolean Satisfiability and SAT Solvers
IBM Labs in Haifa © Copyright IBM SVRH: Non-local stochastic CSP solver with learning of high-level topography characteristics Yehuda Naveh Simulation.
Large-scale Hybrid Parallel SAT Solving Nishant Totla, Aditya Devarakonda, Sanjit Seshia.
MBSat Satisfiability Program and Heuristics Brief Overview VLSI Testing B Marc Boulé April 2001 McGill University Electrical and Computer Engineering.
CHAPTERS 7, 8 Oliver Schulte Logical Inference: Through Proof to Truth.
INTRODUCTION TO ARTIFICIAL INTELLIGENCE COS302 MICHAEL L. LITTMAN FALL 2001 Satisfiability.
Solvers for the Problem of Boolean Satisfiability (SAT) Will Klieber Aug 31, 2011 TexPoint fonts used in EMF. Read the TexPoint manual before you.
1 Agenda Modeling problems in Propositional Logic SAT basics Decision heuristics Non-chronological Backtracking Learning with Conflict Clauses SAT and.
Stocs – A Stochastic CSP Solver Bella Dubrov IBM Haifa Research Lab © Copyright IBM.
Heavy-Tailed Phenomena in Satisfiability and Constraint Satisfaction Problems by Carla P. Gomes, Bart Selman, Nuno Crato and henry Kautz Presented by Yunho.
Fitting a Function to the Difficulty of Boolean Formulas Greg Dennis NMM Final Project.
Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp Springer-
On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda Rolf Drechsler Alex Orailoglu Computer Science & Engineering Dept. University.
Performance Prediction and Automated Tuning of Randomized and Parametric Algorithms: An Initial Investigation Frank Hutter 1, Youssef Hamadi 2, Holger.
Boolean Satisfiability Present and Future
SAT 2009 Ashish Sabharwal Backdoors in the Context of Learning (short paper) Bistra Dilkina, Carla P. Gomes, Ashish Sabharwal Cornell University SAT-09.
Finding Models for Blocked 3-SAT Problems in Linear Time by Systematical Refinement of a Sub- Model Gábor Kusper Eszterházy Károly.
Efficient SAT Solving Under Assumptions Alexander Nadel 1 and Vadim Ryvchin 1,2 1 – Intel, Haifa, Israel 2 – Technion, Haifa, Israel SAT’12, Trento, Italy.
Heuristics for Efficient SAT Solving As implemented in GRASP, Chaff and GSAT.
SAT Solving As implemented in - DPLL solvers: GRASP, Chaff and
1 Boolean Satisfiability (SAT) Class Presentation By Girish Paladugu.
Tommy Messelis * Stefaan Haspeslagh Burak Bilgin Patrick De Causmaecker Greet Vanden Berghe *
A Decision-Making Procedure for Resolution-Based SAT-solvers Eugene Goldberg Cadence Research Labs (USA) SAT-2008, Guangzhou, P.R. China.
REU 2007-ParSat: A Parallel SAT Solver Christopher Earl, Mentor: Dr. Hao Zheng Department of Computer Science & Engineering Introduction Results and Conclusions.
Heuristics for Efficient SAT Solving As implemented in GRASP, Chaff and GSAT.
Hybrid BDD and All-SAT Method for Model Checking
Inference and search for the propositional satisfiability problem
Parallelism in SAT Solvers
A theory-based decision heuristic for DPLL(T)
Simple Circuit-Based SAT Solver
SAT-Based Area Recovery in Technology Mapping
ECE 667 Synthesis and Verification of Digital Circuits
Decision Procedures An Algorithmic Point of View
A Progressive Approach for Satisfiability Modulo Theories
Canonical Computation without Canonical Data Structure
Decision heuristics based on an Abstraction/Refinement model
GRASP-an efficient SAT solver
Faster Extraction of High-Level Minimal Unsatisfiable Cores
Presentation transcript:

IBM Labs in Haifa © 2005 IBM Corporation Adaptive Application of SAT Solving Techniques Ohad Shacham and Karen Yorav Presented by Sharon Barner

IBM Labs in Haifa © 2005 IBM Corporation 2 Agenda  DPLL SAT Solvers – Terms  Motivation  Performance Metrics  Adaptive Solving  Experimentation  Conclusion

IBM Labs in Haifa © 2005 IBM Corporation 3 DPLL SAT Solvers  Input: Boolean Formula, in CNF  Output: Satisfying assignment / Unsatisfiable  Iterative exhaustive search  Decisions  Assign a value to a single variable – Decision Heuristic  increment decision level  BCP  propagate effect of assignment  Learning  when a conflict occurs, add a “conflict clause” to the database so that the same combination of assignments will not happen again  backtrack appropriately, decrement decision level

IBM Labs in Haifa © 2005 IBM Corporation 4 Motivation  SAT solving is based on heuristics and strategies  There is no winning strategy  Best choice cannot be determined beforehand Previous Solutions  Learning from a training set  does not work well for BMC – no representative set  Choosing on-the-fly according to biased random function  applicable only to decision heuristic  does not stabilize on best option Herbstritt & Becker 2003 Lagoudakis & Littman 2001, Nudelman et al 2004

IBM Labs in Haifa © 2005 IBM Corporation 5 Solution – Adaptive Solving  Switching options when not progressing well  Track the progress of the search on-the-fly  Decision Heuristic  Clause Deletion  Conflict Clause Generation Algorithm  Clause Replication ...

IBM Labs in Haifa © 2005 IBM Corporation 6 Performance Metrics  Produces a numerical score  Calculated On-The-Fly  Every fixed number of decisions evaluate the metric  Cheap to evaluate  Calculating the space to be searched is not an option... [SATometer]  Must rely on readily available information  Corresponds (roughly) to the effectiveness of the search

IBM Labs in Haifa © 2005 IBM Corporation 7 Metrics  Average Decision Level  Too high - implies the solver may be “stuck” on a small space with no solution  Acceptable level varies between solvers  Average Conflict Clause Size  Smaller clauses potentially reduce the space more significantly  Percentage of Binary Conflict Clauses  Binary clauses are beneficial because they cause implications with little overhead

IBM Labs in Haifa © 2005 IBM Corporation 8 More Metrics  BCP Ratio  Average number of steps per clause v 1  0 v1v1  A high BCP Ratio means the solver makes less decisions per second

IBM Labs in Haifa © 2005 IBM Corporation 9 More Metrics  Unary Clause Learning  Permanent values for variables  Each one reduces the search space by half And others...

IBM Labs in Haifa © 2005 IBM Corporation 10 Adaptive Solving  Evaluate the performance metric every fixed number of decisions  Given the metric score, decide whether to make a switch  Can have different switching conditions for different options  Adaptive Solving requires tuning !  Choose the parameters wisely  Tune the metric to the chosen parameter  Tune the metric to the solver structure  Tune according to the chosen domain

IBM Labs in Haifa © 2005 IBM Corporation 11 Insights  The Parameter to control  capable of high impact on performance – both ways  easy to switch  The Sample Size  Large enough to allow a change to take effect  Switching  Better to disable switches for a while after a switch is performed  Switching condition becomes stronger after each switch  Total limit on the number of switches

IBM Labs in Haifa © 2005 IBM Corporation 12 Experimentation  IBM benchmarks  Time out set to seconds  No time outs to prevent the time out constant from influencing speedup results  Parameter controlled – the value given to a decision variable  first the decision variable is chosen, and only then the value  by default - value is according to the literal with the higher score  attempting to satisfy more clauses  -sign option switches the choice to the literal with the lower score  attempting to generate more conflicts  In general, the default is much better  in some cases “-sign” improves run times significantly

IBM Labs in Haifa © 2005 IBM Corporation 13 Experimentation NativeSignDLCCSBINBCPUNARY SAT Time Speedup Min Max UNSAT Time Speedup Min Max ALL Time Speedup Min Max Works better on UNSAT instances Maximum Speedup is on larger example Detrimental effect more pronounced on smaller examples Global Runtime Native Global Runtime Adaptive

IBM Labs in Haifa © 2005 IBM Corporation 14 Conclusion  Adaptive solving enables making use of ideas that don’t always work  Enabling an option on parts of the search space can give better results than enabling it or disabling it all of the time!  Even when the option is inherently bad for this example  Need more and better metrics  Combine metrics  Relate metrics to the parameter they control  Can also be applied in-between BMC instances  be careful – the “best configuration” for short instances is not the best for long ones (experimentation found no correlation)