An Empirical Study of Branching Heuristics Through the Lens of Global Learning Rate
Liang J.H., V.K. H.G., Poupart P., Czarnecki K., Ganesh V. (2017) An Empirical Study of Branching Heuristics Through the Lens of Global Learning Rate. In: Gaspers S., Walsh T. (eds) Theory and Applications of Satisfiability Testing – SAT 2017. SAT 2017. Lecture Notes in Computer Science, vol 10491. Springer, Cham
Abstract
In this paper, we analyze a suite of 7 well-known branching heuristics proposed by the SAT community and show that the better heuristics tend to generate more learnt clauses per decision, a metric we define as the global learning rate (GLR).(定义为全局学习率的度量标准) Like our previous work on the LRB branching heuristic, we once again view these heuristics as techniques to solve the learning rate optimization problem. First, we show that there is a strong positive correlation between GLR and solver efficiency for a variety of branching heuristics. Second, we test our hypothesis further by developing a new branching heuristic that maximizes GLR greedily(贪婪分支启发式).
首先揭示GLR与各种决策策略是正相关; 其次提出了maximizes GLR greedily. 第三提出机器学习算法是一个很好的廉价逼近贪婪GLR最大化启发式的方法——SGDB决策分支算法 We show empirically that this heuristic achieves very high GLR and interestingly very low literal block distance (LBD) over the learnt clauses. 译文:我们的经验表明,这种启发式获得非常高的GLR和非常有趣的非常低的文字块距离(LBD)学习子句。
In our experiments this greedy branching heuristic enables the solver to solve instances faster than VSIDS, when the branching time is taken out of the equation.译文:在我们的实验中,当分支时间从方程中去掉时,这种贪婪分支启发式使求解者比VSIDS更快地解决实例。
This experiment is a good proof of concept that a branching heuristic maximizing GLR will lead to good solver performance modulo the computational overhead.译文:该实验很好地证明了最大化GLR的分支启发式算法在计算开销的基础上可以获得较好的求解性能。
Third, we propose that machine learning algorithms are a good way to cheaply approximate the greedy GLR maximization heuristic as already witnessed by LRB. 译文:第三,我们提出机器学习算法是一个很好的廉价逼近贪婪GLR最大化启发式的方法,LRB已经证明。
In addition, we design a new branching heuristic, called SGDB, that uses a stochastic gradient descent online learning method to dynamically order branching variables in order to maximize GLR. We show experimentally that SGDB performs on par with the VSIDS branching heuristic. 译文:此外,我们还设计了一种新的分支启发式算法,称为SGDB,它使用随机梯度下降在线学习方法对分支变量进行动态排序,以使GLR最大化。我们通过实验证明,SGDB的性能与VSIDS的分支启发式相当。 |
1 Introduction
Searching through a large, potentially exponential, search space is a reoccurring problem in many fields of computer science. Rather than reinventing the wheel and implementing complicated search algorithms from scratch, many researchers in fields as diverse as software engineering [7], hardware verification [9], and AI [16] have come to rely on SAT solvers as a general purpose tool to efficiently search through large spaces. By reducing the problem of interest down to a Boolean formula, engineers and scientists can leverage off-the-shelf SAT solvers to solve their problems without needing expertise in SAT or developing special-purpose algorithms. |
译文:在计算机科学的许多领域中,搜索一个巨大的潜在指数搜索空间是一个反复出现的问题。译文:在软件工程[7]、硬件验证[9]和AI[16]等不同领域的许多研究人员并没有重新发明*并从头开始实现复杂的搜索算法,而是开始依赖于SAT求解器作为通用工具来在大空间中高效搜索。译文:通过将感兴趣的问题简化为一个布尔公式,工程师和科学家可以利用现成的SAT解决方案来解决他们的问题,而不需要SAT方面的专业知识或开发特殊用途的算法。 |
Modern conflict-driven clause-learning (CDCL) SAT solvers can solve a wide-range of practical problems with surprising efficiency, thanks to decades of ongoing research by the SAT community. Two notable milestones that are key to the success of SAT solvers are the Variable State Independent Decaying Sum (VSIDS) branching heuristic (and its variants) [23] and conflict analysis techniques [22]. The VSIDS branching heuristic has been the dominant branching heuristic since 2001, evidenced by its presence in most competitive solvers such as Glucose [4], Lingeling [5], and CryptoMiniSat [26]. |
译文:现代冲突驱动的clause-learning (CDCL) SAT解决器能够以惊人的效率解决广泛的实际问题,这要归功于SAT社区进行了几十年的持续研究。 译文:两个值得注意的里程碑是SAT求解成功的关键是变量状态独立衰减和(VSIDS)分支启发式(及其变体)[23]和冲突分析技术[22]。 译文:自2001年以来,VSIDS分支启发式一直是占主导地位的分支启发式,其存在于大多数竞争性求解程序中,如葡萄糖[4]、Lingeling[5]和CryptoMiniSat[26]。 |
One of the challenges in designing branching heuristics is that it is not clear what constitutes a good decision variable. We proposed one solution to this issue in our LRB branching heuristic paper [19], which is to frame branching as an optimization problem. We defined a computable metric called learning rate and defined the objective as maximizing the learning rate. Good decision variables are ones with high learning rate. Since learning rate is expensive to compute a priori, we used a multi-armed bandit learning algorithm to estimate the learning rate on-the-fly as the basis for the LRB branching heuristic [19]. |
译文:在我们的LRB分支启发式论文[19]中,我们提出了一个解决方案,即将框架分支作为一个优化问题。译文:设计分支启发式的挑战之一是不清楚什么构成了一个好的决策变量。 译文:我们定义了一个可计算的度量称为学习率,并将目标定义为最大化学习率。译文:好的决策变量是学习率高的决策变量。由于先验计算学习率代价高昂,因此我们使用多武装匪徒学习算法来实时估计学习率,作为LRB分支启发式[19]的基础。 |
In this paper, we deepen our previous work and our starting point remains the same, namely, branching heuristics should be designed to solve the optimization problem of maximizing learning rate. In LRB, the learning rate metric is defined per variable. In this paper, we define a new metric, called the global learning rate (GLR) to measure the solver’s overall propensity to generate conflicts, rather than the variable-specific metric we defined in the case of LRB. Our experiments demonstrate that GLR is an excellent objective to maximize. |
译文:在本文中,我们深化了之前的工作,但我们的出发点是相同的,即设计分支启发式来解决学习率最大化的优化问题。译文:在LRB中,每个变量定义了学习速率度量。译文:在本文中,我们定义了一个新的度量,称为全局学习率(GLR)来度量求解者产生冲突的总体倾向,而不是我们在LRB情况下定义的变量特定度量。译文:我们的实验证明,GLR是一个极好的目标最大化。 |
Contributions |
译文:一种新的分支启发式优化目标:我们定义了一个称为全局学习率(GLR)的度量指标,它度量求解器每次决策生成的学习子句的数量,直观上,它是一个更好的度量指标,因为它度量的是求解器作为一个整体。 译文:我们表明,最大化GLR的目标与我们对现有分支启发式的认识是一致的,即越快的分支启发式越容易获得更高的GLR。我们对7个众所周知的分支启发式进行了广泛的实验,以建立高GLR和更好的求解器性能之间的相关性(第3节)。 |
译文:贪婪地最大化GLR的新分支启发式:译文:我们设计了一种新的分支启发式,通过总是选择导致直接冲突的决策变量来贪婪地最大化GLR。 译文:它是贪婪的,因为它优化了眼前的冲突,而不考虑未来的冲突。尽管这种启发式的计算开销非常大,但它选择的变量“更好”于VSIDS。 译文:更准确地说,如果我们忽略计算分支变量的计算时间,贪婪分支启发式算法通常比VSIDS更快地解决更多的实例。 译文:贪婪分支启发式的另一个积极的副作用是,相对于VSIDS,它学习的子句文字块距离(LBD)[3]更低,表明它学习的子句质量更高。 译文:学习更快(由于较高的GLR)和学习更好(由于较低的LBD)子句的结合解释了贪婪分支启发式的威力。 译文:全局优化GLR,考虑所有可能的未来场景,求解者可以采取简直是太禁止。因此,我们的实验限于贪心方法。尽管在实践中,这种贪婪的分支启发式在选择变量方面花费了太长的时间,但它为我们应该追求的目标提供了一个黄金标准。在我们的第三篇文章(第4节)中,我们试图尽可能地接近它。 |
译文:一种新的最大化GLR的机器学习分支启发式算法:译文:我们设计了第二个启发式,称为随机梯度下降分支(SGDB),使用机器学习来近似我们的黄金标准,贪婪分支启发式。译文:SGDB通过观察CDCL算法解决实例时的冲突分析过程,训练一个在线逻辑回归模型。 译文:当冲突产生时,SGDB将更新模型以更好地适应其观察结果。同时,SGDB也使用这个模型根据变量在分支时产生冲突的可能性来对变量进行排序。译文:同时,SGDB也使用这个模型根据变量在分支时产生冲突的可能性来对变量进行排序。 |
References
- 1. https://sites.google.com/a/gsd.uwaterloo.ca/maplesat/
- 2. https://sites.google.com/a/gsd.uwaterloo.ca/maplesat/sgd
-
3.
Audemard, G., Simon, L.: Predicting learnt clauses quality in modern SAT solvers. In: Proceedings of the 21st International Joint Conference on Artificial Intelligence, IJCAI 2009, pp. 399–404. Morgan Kaufmann Publishers Inc., San Francisco (2009)
-
4.
Audemard, G., Simon, L.: Glucose 2.3 in the SAT 2013 Competition. In: Proceedings of SAT Competition 2013, pp. 42–43 (2013)
-
5.
Biere, A.: Lingeling, Plingeling, PicoSAT and PrecoSAT at SAT Race 2010. FMV Report Series Technical Report 10(1) (2010)
-
6.
Bottou, L.: On-line Learning in Neural Networks. On-line Learning and Stochastic Approximations, pp. 9–42. Cambridge University Press, New York (1998)
-
7.
Cadar, C., Ganesh, V., Pawlowski, P.M., Dill, D.L., Engler, D.R.: EXE: automatically generating inputs of death. In: Proceedings of the 13th ACM Conference on Computer and Communications Security, CCS 2006, pp. 322–335. ACM, New York (2006)
-
8.
Carvalho, E., Silva, J.P.M.: Using rewarding mechanisms for improving branching heuristics. In: Online Proceedings of The Seventh International Conference on Theory and Applications of Satisfiability Testing, SAT 2004, 10–13 May 2004, Vancouver, BC, Canada, (2004)
-
9.
Clarke, E., Biere, A., Raimi, R., Zhu, Y.: Bounded model checking using satisfiability solving. Formal Meth. Syst. Des. 19(1), 7–34 (2001)
-
10.
Cox, D.R.: The regression analysis of binary sequences. J. Roy. Stat. Soc.: Ser. B (Methodol.) 20(2), 215–242 (1958)
-
11.
Eén, N., Sörensson, N.: An extensible SAT-solver. In: Giunchiglia, E., Tacchella, A. (eds.) SAT 2003. LNCS, vol. 2919, pp. 502–518. Springer, Heidelberg (2004). doi: 10.1007/978-3-540-24605-3_37
- 12. Fisher, R.A.: Frequency distribution of the values of the correlation coefficient in samples from an indefinitely large population. Biometrika 10(4), 507–521 (1915
-
13.
Goldberg, E., Novikov, Y.: BerkMin: a fast and robust SAT-solver. Discrete Appl. Math. 155(12), 1549–1561 (2007)
-
14.
Jeroslow, R.G., Wang, J.: Solving propositional satisfiability problems. Ann. Math. Artif. Intell. 1(1–4), 167–187 (1990)
-
15.
Katebi, H., Sakallah, K.A., Marques-Silva, J.P.: Empirical study of the anatomy of modern SAT solvers. In: Sakallah, K.A., Simon, L. (eds.) SAT 2011. LNCS, vol. 6695, pp. 343–356. Springer, Heidelberg (2011). doi: 10.1007/978-3-642-21581-0_27
-
16.
Kautz, H., Selman, B.: Planning as satisfiability. In: Proceedings of the 10th European Conference on Artificial Intelligence, ECAI 1992, pp. 359–363. Wiley Inc., New York (1992)
-
17.
Lagoudakis, M.G., Littman, M.L.: Learning to select branching rules in the DPLL procedure for satisfiability. Electron. Notes Discrete Math. 9, 344–359 (2001)
-
18.
Liang, J.H., Ganesh, V., Poupart, P., Czarnecki, K.: Exponential recency weighted average branching heuristic for SAT solvers. In: Proceedings of the Thirtieth AAAI Conference on Artificial Intelligence, AAAI 2016, pp. 3434–3440. AAAI Press (2016)
- 19. Liang, J.H., Ganesh, V., Poupart, P., Czarnecki, K.: Learning rate based branching heuristic for SAT solvers. In: Proceedings of the 19th International Conference on Theory and Applications of Satisfiability Testing, SAT 2016, Bordeaux, France, 5–8 July 2016, pp. 123–140 (2016)r
-
20.
Luby, M., Sinclair, A., Zuckerman, D.: Optimal speedup of Las Vegas algorithms. Inf. Process. Lett. 47(4), 173–180 (1993)
-
21.
Marques-Silva, J.P.: The impact of branching heuristics in propositional satisfiability algorithms. In: Barahona, P., Alferes, J.J. (eds.) EPIA 1999. LNCS, vol. 1695, pp. 62–74. Springer, Heidelberg (1999). doi: 10.1007/3-540-48159-1_5
-
22.
Marques-Silva, J.P., Sakallah, K.A.: GRASP-a new search algorithm for satisfiability. In: Proceedings of the 1996 IEEE/ACM International Conference on Computer-aided Design, ICCAD 1996, pp. 220–227. IEEE Computer Society, Washington, D.C. (1996)
-
23.
Moskewicz, M.W., Madigan, C.F., Zhao, Y., Zhang, L., Malik, S.: Chaff: engineering an efficient SAT solver. In: Proceedings of the 38th Annual Design Automation Conference, DAC 2001, pp. 530–535. ACM, New York (2001)
-
24.
Murphy, K.P.: Machine Learning: A Probabilistic Perspective. The MIT Press, Cambridge (2012)
-
25.
Pipatsrisawat, K., Darwiche, A.: A lightweight component caching scheme for satisfiability solvers. In: Marques-Silva, J., Sakallah, K.A. (eds.) SAT 2007. LNCS, vol. 4501, pp. 294–299. Springer, Heidelberg (2007). doi: 10.1007/978-3-540-72788-0_28
-
26.
Soos, M.: CryptoMiniSat v4. SAT Competition, p. 23 (2014)
-
27.
Spearman, C.: The proof and measurement of association between two things. Am. J. Psychol. 15(1), 72–101 (1904)
- 28. Stump, A., Sutcliffe, G., Tinelli, C.: StarExec: a cross-community infrastructure for logic solving. In: Demri, S., Kapur, D., Weidenbach, C. (eds.) IJCAR 2014. LNCS, vol. 8562, pp. 367–373. Springer, Cham (2014). doi: 10.1007/978-3-319-08587-6_28