哪些SAT问题很容易?


27

什么是可满足性的“容易区域”?换句话说,对于某些SAT求解器,如果存在,就能够找到令人满意的分配的足够条件。

一个例子是,当每个子句与其他几个子句共享变量时,由于LLL的结构性证明,沿着这些思路还有其他结果吗?

关于容易传播信仰的地区有大量文献,是否有一些令人满意的方法?


2
您是否对SAT随机相变感兴趣?
Suresh Venkat

充分条件是什么样的?彼得·索尔(Peter Shor)在另一篇文章中提到,SAT实例需要具有“随机结构”才能使子句与变量的比率相关。我想知道这是否可以编码为足够的条件
Yaroslav Bulatov

Answers:


33

我想您知道来自STOC'78的Schaefer的经典结果,但是以防万一。

10.1145 / 800133.804350

Schaefer证明,如果在任何情况下都通过一组允许的关系对SAT进行参数化,则只有6种易处理的情况:2-SAT(即每个子句都是二进制的),Horn-SAT,double-Horn-SAT,仿射SAT( GF(2)中线性方程的解),0-有效(由全0分配满足的关系)和1-有效(由全1分配满足的关系)。


3
最近有一篇论文对此结果进行了完善:可满足性问题的复杂性:“完善Schaefer定理” Eric Allender,Michael Bauland,Neil Immerman,Henning Schnoor和Heribert Vollmer
Vinicius dos Santos

1
谢谢您,以下是doi: dx.doi.org/10.1016/j.jcss.2008.11.001
Standa Zivny

请注意,这些是约束满足问题,而不是SAT(尽管它们可以重写为SAT实例,但是从技术上讲,SAT表示带有OR谓词的CSP)。
MCH

14

我不确定这是否是您要寻找的东西,但是关于3-SAT相变的文献很多。

Monasson,Zecchina,Kirkpatrcik,Selman和Troyansky在自然界中有一篇论文讨论了随机k-SAT的相变。他们使用了从句与变量之比的参数化方法。对于随机的3-SAT,他们从数字上发现过渡点约为4.3。在此之上,随机3-SAT实例过度受限,几乎可以肯定无法满足,在此之下,问题处于受限且可满足(概率很高)的问题。 Mertens,Mezard和Zecchina使用腔体方法程序以更高的精度估算相变点。

远离临界点的地方,“哑”算法对于可满足要求的实例(步行坐等)非常有效。据我了解,确定性求解器的运行时间在相变或相变附近呈指数增长(有关更多讨论,请参见此处)。

信念传播的近亲,布劳恩施泰因(Braunstein),梅扎德(Mezard)和Zecchina引入了调查传播,据报道,它可以解决数百万个变量中可满足的3-SAT实例,甚至非常接近相变。梅扎德(Mezard)在这里进行了有关自旋玻璃的演讲(他的理论已用于分析随机NP完全相变),而曼涅瓦(Maneva)在这里进行了关于测量传播的演讲。

从另一个方向看,我们最好的求解器似乎仍然需要花费大量时间来证明不满意。请参见此处此处此处,以了解/讨论一些证明不满意的常用方法(Davis-Putnam程序和解析方法)的指数性质。

对于随机NP-完全问题的“易用性”或“硬度”,必须非常小心。使NP-Complete问题显示相变并不能保证困难问题在哪里或什至不存在。例如,Erdos-Renyi随机图上的汉密尔顿循环问题即使在临界转变点处或附近也很容易证明。数字分区问题似乎没有任何算法可以很好地解决概率1或0范围内的问题,更不用说接近临界阈值了。据我了解,随机3-SAT问题的算法对于接近或低于临界阈值(调查传播,步行坐等)的可满足实例很好地起作用,但是没有高于临界阈值的有效算法来证明不满足要求。


我不知道这些“随机k-SAT”结果是否会转移到现实生活中的SAT实例中,换句话说,子句与变量的比率是否仍是硬度的有用指标
Yaroslav Bulatov

1
@Yaroslav,根据我的经验,不。许多现实世界中的问题(甚至减少)都具有(或引入)如此多的结构,以至于破坏了许多求解器已针对其进行优化的随机性。似乎在某个时候,我们也许能够以某种方式解释该结构,并且只专注于随机性部分(或随机性问题的“本质”),但是我看不到任何通用的方式来做到这一点。我真的知道采用这种策略的任何例子吗?
user834 2011年

R(F)Fr[0,1]F

5

有很多充分的条件。从某种意义上说,许多理论上的CS都致力于这些条件的收集-固定参数易处理性,2-SAT,不同密度的随机3-SAT等。


2
没错,任何一个容易解决的问题X都可以说“与问题X对应的任何公式都很容易”。我想我正在寻找足够的条件来比“已知的P中所有问题”更有效地概括易行区域,更像是建设性的Lovasz Local Lemma所做的事情
Yaroslav Bulatov

3

到目前为止,在文献中对该概念的了解还不是很多,但是SAT问题的子句图(每个子句有一个节点的图,如果子句共享变量,则节点是连通的),以及其他相关图关于SAT表示,似乎有很多基本的线索可以说明实例的平均难度。

该子句图可以通过各种图论算法进行分析,是“结构”的一种很自然的度量,并且与测量/估计硬度有很强的联系,并且看来对该结构及其含义的研究仍处于早期阶段阶段。过渡点研究(一种解决这一问题的传统方法和经过深入研究的方法)最终可能会桥接到此子句图结构中(某种程度上已经存在),这并非不可想象。换句话说,SAT中的过渡点可能是因为子句图的结构而存在的。

这是沿这方面的出色参考,赫尔维格(Herwig)的博士学位论文,还有很多其他内容。

[1] 分解可满足性问题或使用图更好地了解可满足性问题,Herwig 2006(83pp)


这是将lovasz局部引理和变量应用于可满足性时的依赖图。从这个意义上讲,子句图已被大量研究。希勒(Shearer)描述了局部引理所适用的图,而Kolipaka和Szegedy使Schaefer的结果具有建设性。当您不太了解时,请不要推断没有人知道!
Sasho Nikolov

Zivny的答案中提到了剃须刀细分为几个易于处理的类别,但是此子句图分析相对较新,更深入,更细微,并且更具经验性。至于您提到的引文,似乎在SAT硬度论文/研究中
并未

Schaefer是个错字,我是指Shearer。LLL及其变体是划定k-SAT困难实例的主要工具,谷歌搜索将发现大量参考文献。希勒定理表明,哪个从句图可以保证该图的任何SAT实例都可以满足。请查看此调查,了解与硬度阈值的详细联系,构造硬实例的难度,算法等。disco.ethz.ch/lectures/fs11/seminar/paper/barbara
Sasho Nikolov

1
一个普遍的想法:每当您说某事是隐姓埋名时,很有可能是隐姓埋名。在任何情况下,除非您是该领域的知名专家,否则这种评论都是无用的。如果将答案限制在您所知道的范围之内,而对您认为没人知道的内容进行评论,那会更好。
Sasho Nikolov

1
LLL一种用于分析SAT的工具,工具于1975年发明,此后可能进行了一些改进。它是足够容易或困难实例的秘诀,但并非必要。此后,确实存在其他方法,它们以新颖的方式(即扩展和绕过它)越来越多地填补了这一空白。您必须将这个答案与其他答案混淆,以上问题中没有使用“ terra incognita”一词。&建议将自己限制在实际的书面答案之内,而不要推测别人是否知道=)
vzn13年

1

可以很容易地将所有实例移至“过渡”点附近,并远离“过渡”点。运动涉及多项式时间/空间工作量。

如果远离“过渡”点的实例更容易解决,那么靠近过渡点的实例也必须同样容易解决。(多项式转换和所有。)


您可以详细说明一下吗,还是对此有一个参考?
vzn13年

1

κ

它找到了带有约束参数的硬实例的明显的分形 自相似结构,使得无论搜索分支旁边选择哪个变量,搜索过程中的DP(LL)求解器都倾向于找到具有相同临界约束的子问题。在[2,3]中,对SAT实例中的分形结构(例如SAT公式的Hausdorff维数以及与硬度的关系)进行了进一步分析。

这里的另一条相互关联的探究线是小世界图与(硬)SAT结构的关系,例如,[4,5]

=?

[1] Toby Walsh 1998年的约束刀刃

[2] 由Ni和Wen 绘制的图形直接迭代函数系统中描述可满足布尔表达式的自相似性

[3] 可视化SAT实例的内部结构(初步报告) Sinz

[4] 沃尔什(Walsh),1999年在一个小世界中搜寻

[5] 通过Slater 2002为更实际的SAT问题建模


3
顺便说一下,它是DPLL,而不是DP(LL)。另外,关于SAT相变的最新工作明显更多(例如,参见Achlioptas的工作)。
维杰D

在具有类似行为的DPLL之前有一种DP算法。user834的另一个答案主要是提到SAT过渡点研究的参考文献很多,但这个答案强调了一个不同的角度(但相互关联)
vzn 2013年

1
我知道这些算法。我只是指出了标准的印刷约定,即针对无量词的一阶情况编写DP或DPLL或DPLL(T)或DPLL(Join)。没有人写DP(LL),并且增加了对DPLL(T)和DPLL(Join)的困惑
Vijay D

DP(LL)就是DP + DPLL的意思
vzn
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.