Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

GRASP: A Search Algorithm for Propositional Satisfiability

Published: 01 May 1999 Publication History

Abstract

This paper introduces GRASP (Generic seaRch Algorithm for the Satisfiability Problem), a new search algorithm for Propositional Satisfiability (SAT). GRASP incorporates several search-pruning techniques that proved to be quite powerful on a wide variety of SAT problems. Some of these techniques are specific to SAT, whereas others are similar in spirit to approaches in other fields of Artificial Intelligence. GRASP is premised on the inevitability of conflicts during the search and its most distinguishing feature is the augmentation of basic backtracking search with a powerful conflict analysis procedure. Analyzing conflicts to determine their causes enables GRASP to backtrack nonchronologically to earlier levels in the search tree, potentially pruning large portions of the search space. In addition, by recording the causes of conflicts, GRASP can recognize and preempt the occurrence of similar conflicts later on in the search. Finally, straightforward bookkeeping of the causality chains leading up to conflicts allows GRASP to identify assignments that are necessary for a solution to be found. Experimental results obtained from a large number of benchmarks indicate that application of the proposed conflict analysis techniques to SAT algorithms can be extremely effective for a large number of representative classes of SAT instances.

References

[1]
M. Abramovici M.A. Breuer and A.D. Friedman, Digital Systems Testing and Testable Design. Computer Science Press, 1990.
[2]
P. Barth, “A Davis-Putnam Based Enumeration Algorithm for Linear Pseudo-Boolean Optimization,” Technical Report MPI-I-95-2-003, Max-Planck-Institut für Informatik, 1995.
[3]
C.E. Blair R.G. Jeroslow and J.K. Lowe, “Some Results and Experiments in Programming Techniques for Propositional Logic,” Computers and Operations Research, vol. 13, no. 5, pp. 633-645, 1986.
[4]
M. Bruynooghe, “Analysis of Dependencies to Improve the Behaviour of Logic Programs,” Proc. Fifth Conf. Automated Deduction, pp. 293-305, 1980.
[5]
S.T. Chakradhar V.D. Agrawal and S.G. Rothweiler, “A Transitive Closure Algorithm for Test Generation,” IEEE Trans. Computer-Aided Design, vol. 12, no. 7, pp. 1,015-1,028, July 1993.
[6]
J. Crawford and L. Auton, “Experimental Results on the Cross-Over Point in Satisfiability Problems,” Proc. 11th Nat'l Conf. Artificial Intelligence (AAAI-93), pp. 22-28, 1993.
[7]
M. Davis and H. Putnam, “A Computing Procedure for Quantification Theory,” J. ACM, vol. 7, pp. 201-215, 1960.
[8]
R. Dechter, “Enhancement Schemes for Constraint Processing: Backjumping, Learning, and Cutset Decomposition,” Artificial Intelligence, vol. 41, pp. 273-312, 1989/90.
[9]
J. de Kleer, “An Assumption-Based TMS,” Artificial Intelligence, vol. 28, pp. 127-162, 1986.
[10]
O. Dubois P. Andre Y. Boufkhad and J. Carlier, “SAT versus UNSAT,” Second DIMACS Implementation Challenge, D.S. Johnson and M.A. Trick, eds., 1993.
[11]
J.W. Freeman, “Improvements to Propositional Satisfiability Search Algorithms,” PhD dissertation, Dept. of Computer and Information Science, Univ. of Pennsylvania, May 1995.
[12]
G. Gallo and G. Urbani, “Algorithms for Testing the Satisfiability of Propositional Formulae,” J. Logic Programming, vol. 7, pp. 45-61, 1989.
[13]
M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman and Company, 1979.
[14]
J. Gaschnig, “Performance Measurement and Analysis of Certain Search Algorithms,” PhD dissertation, Dept. of Computer Science, Carnegie-Mellon Univ., CMU-CS-79-124, May 1979.
[15]
M.L. Ginsberg, “Dynamic Backtracking,” J. Artificial Intelligence Research, vol. 1, pp. 25-46, Aug. 1993.
[16]
J. Giraldi and M.L. Bushnell, “Search State Equivalence for Redundancy Identification and Test Generation,” Proc. Int'l Test Conf., pp. 184-193, 1991.
[17]
J.P. Hayes, Introduction to Digital Logic Design. Addison-Wesley, 1993.
[18]
D.S. Johnson and M.A. Trick, eds. Second DIMACS Implementation Challenge, 1993. DIMACS benchmarks available at ftp://Dimacs.Rutgers.EDU/pub/challenge/sat/benchmarks/cnf. UCSC benchmarks available at ftp://Dimacs.Rutgers.EDU/pub/challenge/sat/contributed/UCSC.
[19]
S. Kim and H. Zhang, “ModGen: Theorem Proving by Model Generation,” Proc. 12th Nat'l Conf. Am. Assoc. Artificial Intelligence (AAAI-94), pp. 162-167, 1994.
[20]
D.E. Knuth, “Estimating the Efficiency of Backtrack Programs,” Mathematics of Computation, vol. 29, no. 129, pp. 121-136, Jan. 1975.
[21]
W. Kunz and D.K. Pradhan, “Recursive Learning: An Attractive Alternative to the Decision Tree for Test Generation in Digital Circuits,” Proc. Int'l Test Conf., pp. 816-825, 1992.
[22]
T. Larrabee, “Efficient Generation of Test Patterns Using Boolean Satisfiability,” PhD dissertation, Dept. of Computer Science, Stanford Univ., STAN-CS-90-1302, Feb. 1990.
[23]
S. Mallela and S. Wu, “A Sequential Circuit Test Generation System,” Proc. Int'l Test Conf., pp. 57-61, 1985.
[24]
J.P. Marques-Silva and K.A. Sakallah, “Efficient and Robust Test Generation-Based Timing Analysis,” Proc. IEEE Int'l Symp. Circuits and Systems (ISCAS), pp. 303-306, London, June 1994.
[25]
J.P. Marques-Silva and K.A. Sakallah, “Dynamic Search-Space Pruning Techniques in Path Sensitization,” Proc. IEEE/ACM Design Automation Conf. (DAC), pp. 705-711, San Diego, Calif., June 1994.
[26]
J.P. Marques-Silva, “Search Algorithms for Satisfiability Problems in Combinational Switching Circuits,” PhD dissertation, Dept. of Electrical Eng. and Computer Science, Univ. of Michigan, May 1995.
[27]
J.P. Marques-Silva and K.A. Sakallah, “GRASP—A New Search Algorithm for Satisfiability,” Digest of IEEE Int'l Conf. Computer-Aided Design (ICCAD), pp. 220-227, San Jose, Calif., Nov. 1996.
[28]
D.A. McAllester, “An Outlook on Truth Maintenance,” AI Memo 551, MIT AI Laboratory, Aug. 1980.
[29]
P.C. McGeer A. Saldanha P.R. Stephan R.K. Brayton and A.L. Sangiovanni-Vincentelli, “Timing Analysis and Delay-Fault Test Generation Using Path Recursive Functions,” Proc. Int'l Conf. Computer-Aided Design, pp. 180-183, 1991.
[30]
D. Pretolani, “Efficiency and Stability of Hypergraph SAT Algorithms,” Second DIMACS Implementation Challenge, D.S. Johnson and M.A. Trick, eds., 1993.
[31]
T. Schiex and G. Verfaillie, “Nogood Recording for Static and Dynamic Constraint Satisfaction Problems,” Proc. Int'l Conf. Tools with Artificial Intelligence, pp. 48-55, 1993.
[32]
M.H. Schulz and E. Auth, “Improved Deterministic Test Pattern Generation with Applications to Redundancy Identification,” IEEE Trans. Computer-Aided Design, vol. 8, no. 7, pp. 811-816, July 1989.
[33]
B. Selman H.J. Levesque and D. Mitchell, “A New Method for Solving Hard Satisfiability Problems,” Proc. 10th Nat'l Conf. Artificial Intelligence (AAAI-92), 1992.
[34]
E.M. Sentovich, et al., “SIS: An Environment to Sequential Circuit Synthesis,” Memorandum no. UCB/ERL M92/41, Dept. of Electrical Eng. and Computer Sciences, Univ. of California at Berkeley, May 1992.
[35]
R.M. Stallman and G.J. Sussman, “Forward Reasoning and Dependency-Directed Backtracking in a System for Computer-Aided Circuit Analysis,” Artificial Intelligence, vol. 9, pp. 135-196, Oct. 1977.
[36]
P.R. Stephan R.K. Brayton and A.L. Sangiovanni-Vincentelli, “Combinational Test Generation Using Satisfiability,” Memorandum no. UCB/ERL M92/112, Dept. of Electrical Eng. and Computer Sciences, Univ. of California at Berkeley, Oct. 1992.
[37]
R.E. Tarjan, “Finding Dominators in Directed Graphs,” SIAM J. Computing, vol. 3, no. 1, pp. 62-89, Mar 1974.
[38]
A. Van Gelder and Y.K. Tsuji, “Satisfiability Testing with More Reasoning and Less Guessing,” Second DIMACS Implementation Challenge, D.S. Johnson and M.A. Trick, eds., 1993.
[39]
R. Zabih and D.A. McAllester, “A Rearrangement Search Strategy for Determining Propositional Satisfiability,” Proc. Nat'l Conf. Artificial Intelligence, pp. 155-160, 1988.

Cited By

View all

Recommendations

Reviews

Linda Pagli

This is yet another work on backtrack heuristics to solve the NP-complete satisfiability problem (SAT), without any attempt to analytically evaluate the quality of the results. Still, the proposed new GRASP algorithm is very interesting from the point of view of algorithm design and engineering. Some clever mechanisms allow pruning of the search tree to a point that the performance of GRASP on major benchmarks is outstanding. The paper is well organized and clearly written. The initial sections provide a review of SAT structure and its solution disciplines, with proper bibliographic pointers. The implemented procedure for conflict analysis is then discussed thoroughly. The great value of the paper is evident in section 4, where the organization and the results of a vast experiment are presented convincingly. We can fairly conclude that, on the average, GRASP practically outperforms all of the other known algorithms on a rich collection of major benchmarks. Because of its plain style and good organization, the paper can be read by nonspecialists, although it will probably raise a strong interest only in the community of SAT enthusiasts.

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Information & Contributors

Information

Published In

cover image IEEE Transactions on Computers
IEEE Transactions on Computers  Volume 48, Issue 5
May 1999
96 pages
ISSN:0018-9340
Issue’s Table of Contents

Publisher

IEEE Computer Society

United States

Publication History

Published: 01 May 1999

Author Tags

  1. Satisfiability
  2. conflict diagnosis
  3. conflict-based equivalence
  4. conflict-directed nonchronological backtracking
  5. failure-driven assertions
  6. search algorithms
  7. unique implication points.

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 13 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)A review on declarative approaches for constrained clusteringInternational Journal of Approximate Reasoning10.1016/j.ijar.2024.109135171:COnline publication date: 1-Aug-2024
  • (2024)Certified SAT solving with GPU accelerated inprocessingFormal Methods in System Design10.1007/s10703-023-00432-z62:1-3(79-118)Online publication date: 1-Jun-2024
  • (2024)Logic-Based Explainability: Past, Present and FutureLeveraging Applications of Formal Methods, Verification and Validation. Software Engineering Methodologies10.1007/978-3-031-75387-9_12(181-204)Online publication date: 27-Oct-2024
  • (2024)Avoiding the Shoals - A New Approach to Liveness CheckingComputer Aided Verification10.1007/978-3-031-65627-9_12(234-254)Online publication date: 24-Jul-2024
  • (2024)Boosting Constrained Horn Solving by Unsat Core LearningVerification, Model Checking, and Abstract Interpretation10.1007/978-3-031-50524-9_13(280-302)Online publication date: 15-Jan-2024
  • (2023)Certified CNF translations for pseudo-boolean solving (extended abstract)Proceedings of the Thirty-Second International Joint Conference on Artificial Intelligence10.24963/ijcai.2023/716(6436-6441)Online publication date: 19-Aug-2023
  • (2023)A new variable ordering for in-processing bounded variable elimination in SAT solversProceedings of the Thirty-Second International Joint Conference on Artificial Intelligence10.24963/ijcai.2023/220(1979-1987)Online publication date: 19-Aug-2023
  • (2023)SharpSSATProceedings of the Thirty-Seventh AAAI Conference on Artificial Intelligence and Thirty-Fifth Conference on Innovative Applications of Artificial Intelligence and Thirteenth Symposium on Educational Advances in Artificial Intelligence10.1609/aaai.v37i4.25509(3949-3958)Online publication date: 7-Feb-2023
  • (2023)Evolutionary Diversity Optimisation in Constructing Satisfying AssignmentsProceedings of the Genetic and Evolutionary Computation Conference10.1145/3583131.3590517(938-945)Online publication date: 15-Jul-2023
  • (2023)The Silent (R)evolution of SATCommunications of the ACM10.1145/356046966:6(64-72)Online publication date: 24-May-2023
  • Show More Cited By

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media