为什么NP-hard不等于NP-complete?
我对正在使用的定义的非正式理解:
NP - 可以在多项式时间内验证的所有问题
NP-complete - 所有NP和NP难的问题
决策问题 - 一个问题,询问有关输入的问题并输出bool值
混乱:
P与NP的未知解决方案的问题源于这样一个事实:我们无法证明或证明NP中的所有问题都可以在多项式时间内求解。感觉类似的问题来自NP-complete与NP-hard。我们如何知道NP-hard中的所有问题都无法在多项式时间内得到验证,从而导致NP-hard = NP-complete?
这是我的推理线
从在线研究来看,区别似乎与决策问题有关(这个概念我很新,但看起来很简单)。我认为这意味着NP中的问题具有互补的决策问题,询问输入是否是问题的解决方案。让我们说问题是找到一个最佳解决方案。我认为补充决策问题是给定输入的最优解?"我相信如果这个决策问题在多项式时间内是可验证的那么问题就是NP完全(或在NP中)。因此,这意味着那些不是NP完全问题的NP难问题是那些没有决策问题的问题(我认为这是不可能的,因为任何暴力解决方案都可以解决这个问题)或者问题是NP难以解决的问题。如果它具有在多项式时间内不可验证的决策问题,则不是NP完全的。如果是后者那么感觉就像P和NP一样有问题。也就是说,我们如何确认NP-hard中的所有决策问题都没有多项式时间解?
对不起,如果上面的措词很奇怪。我将尝试澄清我的问题中的任何混淆。
备注
我对直观的解释和正式的解释感兴趣(证明它是一个复杂的答案)。正式的解释当然可以成为学术论文的链接。我不希望任何人投入大量时间进入一个过于复杂的证据,这可能超出了我的理解范围(我发现复杂性理论变得非常快......复杂)。
如果它有助于解释我已经完成了旅行商问题的工作,我目前正在编写一份关于护士安排问题的论文(我相信这些是NP难题)。
答案 0 :(得分:0)
NP-Hard包括所有问题,其解决方案可用于推导出具有多项式开销的NP问题的解决方案。
这包括在NP 中没有的许多问题。例如,暂停问题 - 一个不可判定的问题 - 是NP-Hard,因为NP中的任何问题都可以在多项式时间内减少到它: