使用简单的多项时间缩减,真的可以显示出强大的NP硬度吗?


17

我最近读了一个证明,旨在证明问题是强NP困难的,只需将其从强NP困难问题简化为多项式时间即可。这对我来说毫无意义。我本以为您必须证明减少量中使用的任何数字以及要减少到的问题的实例在问题大小上均呈多项式限制。

然后,我看到Wikipedia 针对此类证明给出了相同的一般说明,但是直到我看到Garey&Johnson说基本相同的内容时,我才真正确信。具体而言,他们说,“如果是NP难的意识强,有来自存在伪多项式变换ΠΠ ',然后Π '是NP难的意识强,”和“需要注意的是,根据定义,多项式时间算法也是伪多项式时间算法。”ΠΠΠΠ

当然,我会用Garey&Johnson的话说-我只是不明白它是如何正确的,这是我想要的帮助。这是我的(可能是有缺陷的)推理…

存在很强的NP完全性问题,并且所有这些(从定义上来说)都是很强的NP难性以及NP完全性的问题。每个NP完全问题都可以(根据定义)在多项式(因此是伪多项式)时间内减少到任何其他问题。考虑到Garey&Johnson的陈述,因此在我看来,每个NP完全问题都是强NP完全问题,因此,每个NP困难问题都是NP强烈问题。当然,这使强NP硬度的概念变得毫无意义…那我还缺少什么?

编辑/更新(基于伊藤刚的回答):

Garey&Johnson对(伪)多项式变换的定义(从严格意义上讲,赋予NP硬度所需的归约类型)的要求(d)是,在所得实例中,最大的数值幅度是多项式有界函数问题大小和原件的最大数值。当然,这意味着,如果从严格意义上讲,原始问题是NP难题的(也就是说,即使其数值幅度是问题大小的多项式边界),对于您要简化为的问题也是如此。这并不一定是一个普通的polytime减少(即一个没有这种额外的要求)的情况下。


大!我的数学助教昨天做了这个,尽管我很可疑。现在我可以给他链接。
拉斐尔

Answers:


14

根据Garey和Johnson的论文中的术语,多项式时间变换不一定是伪多项式变换,因为它可能违反定义4中的(d)项。


1
是的,因此多项式算法必须是伪多项式,但是多项式约简不一定是G&J所谓的伪多项式变换。实际上,他们的项目(d)正是我认为所缺少的(即,对数字大小的一些限制)。谢谢。
Magnus Lie Hetland

9

为了扩展Tsuyoshi的答案:

在Garey和Johnson的背景下,考虑从PARTITION(第47页,第3.1节)到多处理器调度(第65页,3.2.1,第(7)条)的转换。

D=12aAl(a)l(a)q2IDΠ[f(I)]q2[I],[I]) (即伪多项式转换定义中的(d)项)。

l(a)l(a)|A|

您可能需要阅读Wikipedia上的相关主题。例如,我们有一个基于动态编程的多项式时间算法来解决NP完全KNAPSACK问题-至少只要数量足够小即可。当数字太大时,此“多项式时间”算法将显示“指数行为”。(G&J,第91页,第4.2节)

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.