1 / 42

A signment

A signment. tack. SAT’10 Conference Edinburgh, Scotland, UK July 11, 2010 . hrinking. Alexander Nadel, Intel, Israel Vadim Ryvchin, Intel&Technion , Israel. Agenda. Introduction Algorithm Description Heuristics Experimental Results Conclusions. What is Shrinking?.

istas
Download Presentation

A signment

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A signment tack SAT’10 ConferenceEdinburgh, Scotland, UK July 11, 2010 hrinking Alexander Nadel, Intel, Israel Vadim Ryvchin, Intel&Technion, Israel

  2. Agenda • Introduction • Algorithm Description • Heuristics • Experimental Results • Conclusions

  3. What is Shrinking? Shrinking is an algorithm that boosts modern DPLL-based SAT solvers on difficult industrial benchmarks by dynamically filtering out irrelevant assignments

  4. The History • Shrinking was • introduced in the Jerusatsolver (Nadel’02). • enhanced in the Chaff’04 solver (Mahajan&Fu&Malik’04) . • Jerusat and Chaff’04 are the SAT’04 competition winners in industrial categories.

  5. Goals of this Work • Empirically demonstrate that shrinking is critical for solving difficult industrial families in modern solvers. • Provide a thorough description of the shrinking algorithm. • We also discuss shrinking heuristics and introduce some new ones.

  6. Explanation: a SAT Solver Run Snapshot after a Conflict First assigned variable Assigned variables Variable to be flipped Parent resolution: a resolution proof forthe validity of the flip (Each rectangle is a clause)

  7. Explanation: a SAT Solver Run Snapshot after a Conflict Yellow variables are the asserting clause variables Parent resolution: a resolution proof forthe validity of the flip (Each rectangle is a clause)

  8. Explanation: a SAT Solver Run Snapshot after a Conflict • The assignments to all the blue variables were irrelevant: • Unnecessary for generating the parent resolution. • The blue variables might had been used for resolution proof that was subsequently pruned.

  9. Explanation: a SAT Solver Run Snapshot after a Conflict • Irrelevant assignments arebad: • Theyslow down BCP. • They violate the locality principle: proof should be dependent on as few assignments as possible. • Shrinking: remove irrelevant assignments before flipping.

  10. Example: Standard Backtracking and Flipping w/o Shrinking

  11. Example: Standard Backtracking and Flipping w/o Shrinking Non-chronological backtracking will remove this assignment (if it defines a new decision level).

  12. Example: Standard Backtracking and Flipping w/o Shrinking Backtrack! Non-chronological backtracking removed an assignment.

  13. Example: Standard Backtracking and Flipping w/o Shrinking Flip

  14. Example: Shrinking in Action Shrink on this area. Shrinkingwill remove all the irrelevant assignments here.

  15. Example: Shrinking in Action Shrink and backtrack! Shrinking removed many irrelevant assignments.

  16. Example: Shrinking in Action Flip

  17. The Shrinking Algorithm • After a conflict: • Recorda conflict clause as usual! • If the shrinking condition holds, shrinkas follows: • Backtrack to the shrinking backtrack level. • Assign the unassigned literals of the conflict clause to false. Propagate each assignment with BCP. • The order of variable assignments is defined by the sorting scheme.

  18. The Three Elephants that Support Clever Shrinking The shrinking condition The sorting scheme The shrinking backtrack level

  19. Intuition behind Shrinking Heuristics • Intuition behind the shrinking condition: • Shrink when the search halts to be useful. • Usefulness is estimated by looking at the asserting clause: • Shortmeansuseful • The most intuitive widely used measure: short clauses should prune the search space better • Few decision levels means useful • Variables of the same decision level are interrelated: if one is assigned, the others have good chances to be assigned soon • Localityprinciplerules

  20. Intuition behind Shrinking Heuristics • Intuition behind the sorting scheme: • It is advantageous to locally reshuffle the VSIDS scores from time to time. • Intuition behind the shrinking backtrack level determination • Quite straightforward: subject for future work

  21. Shrinking in Jerusat • Jerusat’s shrinking condition • The conflict clause contains no more than one variable from each decision level. • Adecision-level-based scheme • Jerusat’s sorting scheme • Same order as before shrinking. • Jerusat’s shrinking backtrack level • Highest possible decision level where all the literals of the conflict clause become unassigned.

  22. Shrinking in Chaff’04 • Chaff’s shrinking condition • The conflict clause length exceeds x. • x is initialized with 95 and is changed dynamically. • The goal is to be close to the mean length of the conflict clauses. • Secondary condition • Chaff’s sorting scheme • Reverses the order. • Empirically better than using the same order. • Dynamic reshuffling to VSIDS scores. • Chaff’s shrinking backtrack level • Lowest possible decision level in the conflict clause that is less than the next higher decision level by at least 2. If no such level exists, shrinking is not performed.

  23. New Heuristics for Shrinking • Decision-level-based shrinking condition • Generalization of Jerusat’s shrinking condition in the spirit of Glucose’s clause deletion scheme (Audemard&Simon’09) • The algorithm • d the number of decision levels in the asserting clause. • Shrink if d > x’ • x’ is similar to Chaff’s threshold on clause length, but it is applied to the number of decision levels in the clauses instead of to clause length.

  24. New Heuristics for Shrinking • Activity ordering sorting scheme • Sort the variables of the conflict clause by VSIDS’s scores, from highest to lowest. • Should work well, if no corrections to VSIDS scores are required.

  25. Experimental Results • We implemented shrinking in Eureka and an enhanced version of Minisat. • Time threshold was 3 hours. • We used 8 benchmark families: • 4 of Miroslav Velev’s families. • 2 families from the SAT’04 competition: • Goldberg; Maris • 2 SAT-Race’06 families. • 166 instances overall

  26. Experimental Results: the Algorithms • No shrinking • Base shrinking • Eureka’s version: similar to Chaff with two minor changes • Base with the decision-level-based shrinking condition • Base with the activity ordering sorting scheme

  27. Eureka: Solved Instances per Family

  28. Eureka: “Base“Beats “No Shrinking”!

  29. Minisat: Solved Instances per Family

  30. Minisat: “Dec. Level-based“Beats “No Shrinking”!

  31. Performance Summary: Solved Instances Overall (out of 166)

  32. Impact of the Decision Level-Based Shrinking Condition • Empirical recommendations: • Recommended asthe default for Minisat • Solves more instances overall and faster for 6/8 families • Very useful for particular families for both solvers. • Resulting intuition: • The number of decision levels in the clauses appears to be a good way of measuringusefulness. • But using the clause size measure is sometimes advantageous.

  33. Experimental Results: Impact of the Activity Ordering Sorting Scheme • Empirical recommendations: • Not recommended as the default • Causes a serious deterioration of Minisat performance on two Velev families. • Yet, improves the performance for SAT Race families. • Not helpful for most of the families and overall for Eureka. • Resulting intuition • A local reshuffling of VSIDS scores is usually helpful. • Reminder: the base scheme reverses the order

  34. Future Work • Study the interplay between restarts and shrinking. • Improve the heuristics further

  35. Conclusions • Shrinking is a dedicated technique for filtering out irrelevant assignments in modern DPLL-based SAT solvers • Shrinking is empirically critical • Many families couldn’t be solved without shrinking (within Minisat and Eureka). • Shrinking improves the performance for almost all the considered families for both solvers.

  36. Thanks for Your Attention!

  37. Backup Slides

  38. Shrinking vs. Modern Techniques • Consider the following three techniques: • Frequent restarts • A clause-based heuristic • RSAT’s phase saving • Is the combined effect of these techniques similar to shrinking? • No! Empirically, shrinking is highly beneficial in Eureka, which applies all these techniques.

  39. Why isn't the Effect of Shrinking Achieved by Other Techniques • Because of the simultaneous effect of the following: • The shrinking condition differs from the restart conditions. • Shrinking restarts the search only partially. • Unlike clause-based heuristics, shrinkingcontinues selecting variables from the top-most conflict clause, even if it was satisfied. • Shrinking uses a dedicated sorting (re-ordering) of the variables in the top-most conflict clause.

  40. Calculation of the Threshold on Conflict Clause Length in Chaff • x is initialized with 95 • Do the following each 800 conflicts • (mean, stdev) := mean and standard deviation of last 800 learned clause lengths • center := mean + 0.5 * stdev; • ulimit := mean + stdev • if x ≥ center then • x := x − 5 • if x < center then • x := x + 5 • if x > ulimit then • x := ulimit • if x < 5 then • x := 5 • return x

  41. Performance Summary

  42. Another Type of Shrinking

More Related