可以从DPLL算法M返回最大值的MAX-SAT问题?:

我有一个样本:

https://gist.github.com/davefernig/e670bda722d558817f2ba0e90ebce66f

我们可以修改复发性以返回MAX-SAT的结果?

资源: https://en.wikipedia.org/wiki/dpll_algorithm

有帮助吗?

解决方案

DPLL算法不尝试满足尽可能多的子句。如果有令人满意的分配,DPLL将找到它。否则,DPLL将尝试一系列部分分配,直到它耗尽可能性,然后它将声明不良的公式。但在不可挑离的公式的情况下,无法保证DPLL将在证明不可起作用的方式中发现最有满足条款的最大数量。

MaxSAT问题与查找实例的最低缺失的子统计数据(Muses)有关。确定一组条款是否是MUS是一个DP完整问题。这预计比仅仅是NP完整性更难,因此修改DPLL不太可能返回部分解决方案将是富有成效的。鉴于Class DP包含在 $ \ delta ^ p_2 $ 中,您可以设计一个调用DPLL(或相关算法)的方案来产生MaxSAT的多项式次数结果。

许可以下: CC-BY-SA归因
不隶属于 cs.stackexchange
scroll top