- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
NPC类:是NP的一个子集,且其中每一个问题均能由NP
中的任何问题在多项式时间内转化成.
NPH问题:若问题A不属于NP类,已知某一NPC问题可在
多项式时间内转化为问题A,则称A为NPH.
要理解NPH问题,请参看TSP(旅行商问
题):/view/1162183.htm
作者:peterwind_PhDing日期:2015-06-0305:45
对NP-Hard问题和NP-Complete问题的一个直观的理解
就是指那些很难(很可能是不可能)找到多项式时间算法的
问题。因此一般初学算法的人都会问这样一个问题:NP-Hard
和NP-Complete有什么不同?简单的回答是根据定义,如果
所有NP问题都可以多项式归约到问题A,那么问题A就是
NP-Hard;如果问题A既是NP-Hard又是NP,那么它就是
NP-Complete。从定义我们很容易看出,NP-Hard问题类包含
了NP-Complete类。但进一步的我们会问,是否有属于
NP-Hard但不属于NP-Complete的问题呢?答案是肯定的。
例如停机问题,也即给出一个程序和输入,判定它的运行是
否会终止。停机问题是不可判的,那它当然也不是NP问题。
但对于SAT这样的NP-Complete问题,却可以多项式归约到
停机问题。因为我们可以构造程序A,该程序对输入的公式
穷举其变量的所有赋值,如果存在赋值使其为真,则停机,
否则进入无限循环。这样,判断公式是否可满足便转化为判
断以公式为输入的程序A是否停机。所以,停机问题是
NP-Hard而不是NP-Complete。
NP问题就是指其解的正确性可以在多项式时间内被检
查的一类问题。比如说数组求和,得到一个解,这个解对不
对呢,显然是可以在多项式时间内验证的。再比如说SAT,
如果得到一个解,也是能在多项式时间内验证正确性的。所
以SAT和求和等等都是NP问题。然后呢,有一部分NP问题
的解已经可以在多项式时间内找到,比如数组求和,这部分
问题就是NP中比较简单的一部分,被命名为P类问题。那
么P以外的NP问题,就是目前还不能够在多项式时间内求
解的问题了。会不会将来某一天,有大牛发明了牛算法,把
这些问题都在多项式时间内解决呢?也就是说,会不会所有
的NP问题,其实都是P类问题呢,只是人类尚未发现呢?
NP=P吗?
可想而知,证明NP=P的路途是艰难的,因为NP问题实
在太多了,要一一找到多项式算法。这时StephenA.Cook
这位大牛出现了,写了一篇TheComplexityofTheorem
ProvingProcedures,提出了一个NP-complete的概念。NPC
指的是NP问题中最难的一部分问题,所有的NP问题都能在
多项式时间内归约到NPC上。所谓归约是指,若A归约到B,
B很容易解决,则A很容易解决。显然,如果有任何一道NPC
问题在多项式时间内解决了,那么所有的NP问题就都成了P
类问题,NP=P就得到证明了,这极大的简化了证明过程。那
么怎样证明一个问题C是NP完全问题呢?首先,要证明C
是NP问题,也就是C的解的正确性容易验证;然后要证明
有一个NP完全问题B,能够在多项式时间内归约到C。这就
要求必须先存在至少一个NPC问题。这时Cook大牛就在1971
年证明了NP完全问题的祖先就是SAT。SAT问题是指给定一
个包含n个布尔变量的逻辑式,问是否存在一个取值组合,
使得该式被满足。Cook证明了SAT是一个NPC问题,如果
SAT容易解决,那么所有NP都容易解决。Cook是怎样做到
的呢?
他通过非确定性图灵机做到的。非确定性图灵机是一类
特殊的图灵机,这种机器很会猜,只要问题有一个解,它就
能够在多项式时间内猜到。Cook证明了,SAT总结了该机器
在计算过程中必须满足的所有约束条件,任何一个NP问题
在这种机器上的计算过程,都可以描述成一个SAT问题。所
以,如果你能有一个解决SAT的好算法,你就能够解决非确
定性图灵机的计算问题,因为NP问题在非图机上都是多项
式解决的,所以你解决了SAT,就能解决所有NP,因此——
SAT是一个NP完全问题。感谢Cook,我们已经有了一个NPC
问题,剩下的就好办了,用归约来证明就可以了。目前人们
已经发现了成千上万的NPC问题,解决一个,NP=P就得证,
可以得千年大奖(我认
您可能关注的文档
- 《空》-以期货实盘交易讲解什么是_道_-- 一生二,二生三,三生万物_1-20.pdf
- 《空》-以期货实盘交易讲解什么是_道_-- 一生二,二生三,三生万物_21-40.pdf
- 《空》-以期货实盘交易讲解什么是_道_-- 一生二,二生三,三生万物_41-60.pdf
- 《空》-以期货实盘交易讲解什么是_道_-- 一生二,二生三,三生万物_61-80.pdf
- 《空》-以期货实盘交易讲解什么是_道_-- 一生二,二生三,三生万物_81-100.pdf
- 《空》-以期货实盘交易讲解什么是_道_-- 一生二,二生三,三生万物_101-120.pdf
- 《空》-以期货实盘交易讲解什么是_道_-- 一生二,二生三,三生万物_121-140.pdf
- 《空》-以期货实盘交易讲解什么是_道_-- 一生二,二生三,三生万物_141-160.pdf
- 《空》-以期货实盘交易讲解什么是_道_-- 一生二,二生三,三生万物_161-180.pdf
- 《空》-以期货实盘交易讲解什么是_道_-- 一生二,二生三,三生万物_181-200.pdf
文档评论(0)