This note introduce a novel method for improving CDCL-based SAT solvers by relaxing backtrack and integrating local search techniques, and we use this method to improve four state of the art CDCL solvers.
译文:本文介绍了一种通过放松回溯和集成局部搜索技术来提高基于CDCL的SAT求解器性能的新方法,并对现有的四种CDCL求解器进行了改进。
主要技术:
1. relaxing the backtracking 松弛回溯
2. CCAnr solver——一种随机局部搜索求解器
S. Cai, C. Luo, and K. Su, “CCAnr: A configuration checking based local search solver for non-random satisfiability,” in Proceedings of18th
International Conference on Theory and Applications of Satisfiability Testing, SAT 2015, Austin, TX, USA, September 24-27, 2015, 2015, pp.1–8.
3. 两者结合改进2018年的四个CDCL求解器
基本思想:
The idea is to relax the backtrack process,by allowing some promising branches to be extended to
the leaf (corresponding to a complete assignment) without backtracking, even if conflicts are met during extending the assignment.
译文:其思想是放松回溯过程,通过允许一些有前途的分支扩展到叶(对应于一个完整的赋值)而不进行回溯,即使在扩展赋值期间遇到了冲突。
所依据(猜测的)依据是:以这种方式获得的完整的分配结果是高度一致的,有可能与真正所求解的模型之间有较小的距离(只需要少量翻转即可一致)
实施步骤:
首先,找到分支扩展;
其次,交给SLS求解器去 find a model nearby。(a local search solver is called to find a model nearby)
最后, 如果在规定翻转次数或时间内找不到最终sat模型,就回到CDCl继续正常求解。
相关叙述原文:
The idea is to relax the backtrack process, by allowing some promising branches to be extended to the leaf (corresponding to a complete assignment) without
backtracking, even if conflicts are met during extending the assignment.
译文:其思想是放松回溯过程,通过允许一些有前途的分支扩展到叶(对应于一个完整的赋值)而不进行回溯,即使在扩展赋值期间遇到了冲突。
The resulting complete assignments obtained in this way are highly consistent and are more likely to have small distances to a model (satisfying assignment).
译文:以这种方式获得的完整的分配结果是高度一致的,并且更有可能与模型有较小的距离(令人满意的分配)。
If the local search cannot find a model within a short time limit, the CDCL search process continues as normal from the node where the algorithm enters the non-backtracking phase.
译文:如果局部搜索在短时间内无法找到模型,则从算法进入非回溯阶段的节点开始,CDCL搜索过程将正常进行。
核心技术:
1.实施放松回溯中,如何找到有希望的部分分配?如何确保不被修剪?
Specifically,during the search of CDCL, whenever reaching a node corresponding to a promising assignment, the algorithm enters a non-backtracking phase (with some condition), which uses unit propagation and heuristics in CDCL to assign the remaining variables without backtracking, even an empty clause is detected.
译文:具体来说,在CDCL的搜索过程中,每当到达一个有希望的赋值对应的节点时,该算法就进入一个非回溯阶段(带有一些条件),该阶段使用CDCL中的单元传播和启发式算法来分配剩余的变量而不进行回溯,甚至检测到一个空子句。
At the end, this leads to a complete assignment β,which is fed to a local search solver to search for a model nearby.
译文:最后,这将导致一个完整的指派β,提供给本地搜索求解搜索附近的一个模型。
If the local search fails to find a model within a certain time budget, then the algorithm goes back to the normal CDCL search from the node where it was interrupted (we call this a breakpoint).
译文:如果局部搜索在一定的时间内没有找到模型,那么算法将从中断的节点(我们称之为断点)返回到正常的CDCL搜索。
The non-backtracking phase does not change the data structures used for CDCL search process.
译文:非回溯阶段不改变CDCL搜索过程中使用的数据结构。
So, if all calls of local search fail to find a solution, the modified solver works in the same way just as the original CDCL solver, but it may have a lower speed due to the time consumption of local search.
译文:因此,如果所有的局部搜索调用都不能找到一个解决方案,那么修改后的求解器的工作方式与原来的CDCL求解器相同,但是由于局部搜索的时间消耗,它的速度可能会降低。
2.将SLS类型的先进求解器嵌入到CDCL求解过程中的方法和技术要点
(1)学习使用求解器
(2)结合过程算法涉及到的参数
CCAnr solver.有3个参数:the average weight threshold parameter γ, and the two factor parameters ρ and q.
对由函数ReasonLS调用花费在SLS阶段所用时间限制有2个参数:每次调用本地搜索过程的时间不超过300秒、本地搜索的所用总时间在总运行时中的所占比例小于ξ。
--------------------------------
There is one parameter p for controlling the cooperation of the backtracking style procedure and the local search solver.
译文:有一个参数p用来控制回溯式过程和局部搜索解算器的配合。
Meanwhile, we limit the time of Local search procedure no more than 300 seconds every time ReasonLS call it, and limit the sum of all Local search time no more than a propotion ξ of the total runtime.
译文:同时,我们限制由ReasonLS每次调用本地搜索过程的时间不超过300秒,并限制本地搜索的所用总时间在总运行时中的所占比例小于ξ。
(3)阀值的平滑加权加权方案
There are three parameters in the local search solver :the average weight threshold parameter γ, and the two factor parameters ρ and q.。
All of the three parameters are for the Threshold-based Smoothed Weighting (TSW) weighting scheme.
For all our relaxed CDCL solvers, the parameters are set as follows with only one exception (p is 0.9 for Relaxed LCMDistChronoBT p9).
p = 0.5; ξ = 0.3; γ = 50; ρ = 0.3; q = 0.7.