【发布时间】:2011-04-18 02:50:05
【问题描述】:
据我了解,所有 NP 完全问题都是 NP 难题,但已知一些 NP 难题不是 NP 完全问题,而 NP 难题至少与 NP 完全问题一样难。
这是否意味着不是 NP-complete 的 NP-hard 问题更难?以及它有多难?
【问题讨论】:
标签: computer-science complexity-theory p-np
据我了解,所有 NP 完全问题都是 NP 难题,但已知一些 NP 难题不是 NP 完全问题,而 NP 难题至少与 NP 完全问题一样难。
这是否意味着不是 NP-complete 的 NP-hard 问题更难?以及它有多难?
【问题讨论】:
标签: computer-science complexity-theory p-np
【讨论】:
图灵停机问题是不可判定的,属于 NP-Hard 集。对于图灵停止问题,我们没有任何决定器,因为它是一种 RE 语言。所以我们没有任何算法来解决它。因此很明显,无法解决的问题也在 NP-Hard 集中。所以 NP-Hard 集还包含我们没有任何算法要解决的语言或问题。
【讨论】:
图灵机停机问题在图灵机和 NP-hard 上是不可判定的,但不是 NPC。显然它更难;)
【讨论】:
要回答这个问题,您首先需要了解哪些 NP-hard 问题也是 NP-complete。如果一个 NP-hard 问题属于集合 NP,那么它是 NP-complete。要属于集合NP,需要有一个问题
(i) 一个决策问题,
(ii) 问题的解决方案的数量应该是有限的,并且每个解决方案应该是多项式长度,并且
(iii) 给定一个多项式长度解,我们应该能够说出问题的答案是是/否
现在,很容易看出可能存在许多不属于集合 NP 且更难解决的 NP 难题。作为一个直观的例子,我们需要找到实际时间表的旅行商的优化版本比我们只需要确定长度
【讨论】:
来自http://en.wikipedia.org/wiki/NP-hard#Examples
还有一些 NP-hard 但不是 NP-complete 的决策问题,例如停机问题。这就是询问“给定程序及其输入,它会永远运行吗?”的问题。这是一个是/否的问题,所以这是一个决策问题。很容易证明停机问题是 NP-hard 但不是 NP-complete。
【讨论】: