我假设您是在CDSAT SAT求解器上参考SAT竞赛中使用的基准数据集。这些程序基于许多启发式方法和许多优化。2014年,在班夫的应用SAT解决理论理论基础研讨会上有一些很好的介绍
(视频)。
这些算法基于DPLL回溯算法,该算法试图通过在找到冲突时将值设置为变量和回溯来找到令人满意的分配。人们已经在研究这些启发式方法的影响。例如看
- Hadi Katebi,Karem A. Sakallah和Joao P. Marques-Silva,“ 现代卫星解算器解剖学的实证研究 ”,2011年
这些SAT求解器在基准上的效率似乎主要来自两种两种启发式方法(及其变体):
- VSIDS启发式冷杉选择下一个要分支的变量。
- CDCL:冲突驱动的子句学习启发式,可从冲突中学习新的子句。
众所周知,DPLL证明与分辨率证明相对应。没有CDCL,我们只能获得的分辨率证明是比一般分辨率证明要弱得多的树分辨率证明。
CDCL的结果表明,我们可以获得任何一般的分辨率证明。但是有一些警告,它们需要许多人工重启,人工分支和/或特定的预处理,因此尚不清楚它们与这些程序在实践中有多接近。有关更多详细信息,请参见例如以下论文:
CDCL本质上是在搜索领域中削减分支机构。有多种方法可以从冲突中得出新的学习条款。理想情况下,我们将添加一组暗示冲突的最小子句,但实际上这可能会很大并且计算起来会很昂贵。顶级SAT求解器通常会定期删除学到的条款,这在实践中会有所帮助。
αF(v,i)i0<α<1vn
∑i<nF(v,i)α(n−i)
直觉上可以说这试图强调最近冲突中始终存在的变量
。您也可以将其视为预测下一个冲突将涉及哪些变量的一种简单但极其廉价的方法。因此,VSIDS首先在这些变量上分支。可以说该算法本质上是一种快速失败算法,可以快速找到冲突。快速与较少数量的变量集有关,这意味着阻塞搜索树的大子树。但这主要是直觉,afaik尚无人将其正式化为非常仔细的在SAT数据集上进行测试的方法。在其中一个数据集上运行SAT解算器并不便宜,更不用说将其与最佳决策(当前赋值到变量的最小扩展,否则会违反条款之一)进行比较。VSIDS还取决于每次冲突时我们碰撞哪些变量,有多种方法来定义变量何时涉及冲突。
结果表明,这些思想的特定实现对应于动态图中顶点的时间加权中心。
还有建议建议排除对抗实例,例如基于NP难题和密码基元的实例以及随机实例(CDCL SAT求解器不擅长的随机实例),其余实例来自结构良好的事物,例如软件和硬件验证,以及某种程度上CDCL SAT求解器利用了结构(提到了很多想法,例如后门,冻结变量等),但afaik大多是想法,没有足够的理论或实验证据来支持它们。我认为必须严格定义正确的方法,并证明这些算法可以很好地运行的实例具有该属性,然后证明这些算法可以利用这些属性。
有些人一直坚持认为子句比率和阈值是该镇唯一的游戏。这绝对是错误的,因为任何对工业SAT求解器的工作原理略有了解或对证明复杂性有任何了解的人都会知道。在实践中,有很多因素会使SAT解算器在实例上无法正常工作,子句比率只是其中可能涉及的事情之一。我认为以下调查是了解证明复杂性与SAT解算器和透视图之间的联系的一个很好的起点:
有趣的是,甚至阈值现象也比大多数人想象的要复杂,Moshe Vardi在他的演讲“ 相变和计算复杂性 ”中指出,对于阈值之后的随机3SAT公式,GRASP的中值运行时间仍保持指数级,但指数却降低了(afaik,尚不清楚它的下降速度有多快)。
我们为什么要研究SAT求解器(作为复杂性理论家)?我认为答案与其他算法相同:1.比较它们,2.找到它们的局限性,3.设计更好的算法,4.回答复杂性理论的基本问题。
在对启发式模型进行建模时,我们经常用不确定性代替启发式。问题就变成了“公平”的替代?公平地说,我的意思是该模型在帮助我们回答上述问题方面有多接近。
当我们将SAT求解器建模为证明系统时,我们在某种程度上证明了它的局限性,因为该算法对于证明系统中具有较低边界的语句效率不高。但是,算法实际发现的内容与证明系统中的最佳证明之间仍然存在差距。因此,我们还需要证明反向,即算法可以找到与证明系统中的证明一样好的证明。我们尚未回答这个问题,但是被不确定性取代的启发式方法的数量定义了模型与证明系统的接近程度。我不希望我们完全放弃使用不确定性来代替启发式算法,否则会得到自动化结果,从而对加密等方面的开放性问题产生影响。
因此,查看模型时的问题变成:这些模型对解释SAT解算器A优于SAT解算器B的原因有多少帮助?他们在开发更好的SAT解算器方面有多大帮助?SAT求解器在实践中是否找到与模型中的最佳证明接近的证明?...我们还需要对实际实例进行建模。
关于CDCL SAT求解器“利用实际实例的结构”(无论结构是什么)的直觉,我认为是公认的直觉。真正的问题是对这意味着什么给出令人信服的解释,并证明它确实是真实的。
另请参阅Jakob Nordstrom自己的答案,以获取更多最新动态。