NP完全问题
NP完全问题概述
NP完全问题是不确定性图灵机在P时间内能解决的问题,是世界七大数学难题之一。 NP完全问题排在百万美元大奖的首位,足见他的显赫地位和无穷魅力。 数学上著名的NP问题,完整的叫法是NP完全问题,也即“NP COMPLETE”问题,简单的写法,是 NP=P?的问题。问题就在这个问号上,到底是NP等于P,还是NP不等于P。证明其中之一,便可以拿百万美元大奖。 这个奖还没有人拿到,也就是说,NP问题到底是Polynomial(意思是多项式的),还是Non-Polynomial,尚无定论。 NP里面的N,不是Non-Polynomial的N,是Non-Deterministic(意思是非确定性的),P代表Polynomial倒是对的。NP就是Non-deterministic Polynomial的问题,也即是多项式复杂程度的非确定性问题。
非确定性问题详解
什么是非确定性问题呢?有些计算问题是确定性的,比如加减乘除之类,你只要按照公式推导,按部就班一步步来,就可以得到结果。但是,有些问题是无法按部就班直接地计算出来。比如,找大质数的问题。有没有一个公式,你一套公式,就可以一步步推算出来,下一个质数应该是多少呢?这样的公式是没有的。再比如,大的合数分解质因数的问题,有没有一个公式,把合数代进去,就直接可以算出,它的因子各自是多少?也没有这样的公式。 这种问题的答案,是无法直接计算得到的,只能通过间接的“猜算”来得到结果。这也就是非确定性问题。而这些问题通常有个算法,它不能直接告诉你答案是什么,但可以告诉你,某个可能的结果是正确的答案还是错误的。这个可以告诉你“猜算”的答案正确与否的算法,假如可以在多项式时间内算出来,就叫做多项式非确定性问题。而如果这个问题的所有可能答案,都是可以在多项式时间内进行正确与否的验算的话,就叫完全多项式非确定问题。 完全多项式非确定性问题可以用穷举法得到答案,一个个检验下去,最终便能得到结果。但是这样算法的复杂程度,是指数关系,因此计算的时间随问题的复杂程度成指数的增长,很快便变得不可计算了。
解释
人们发现,所有的完全多项式非确定性问题,都可以转换为一类叫做满足性问题的逻辑运算问题。既然这类问题的所有可能答案,都可以在多项式时间内计算,人们于是就猜想,是否这类问题,存在一个确定性算法,可以在多项式时间内,直接算出或是搜寻出正确的答案呢?这就是著名的NP=P?的猜想。
方法
解决这个猜想,无非两种可能,一种是找到一个这样的算法,只要针对某个特定NP完全问题找到一个算法,所有这类问题都可以迎刃而解了,因为他们可以转化为同一个问题。另外的一种可能,就是这样的算法是不存在的。那么就要从数学理论上证明它为什么不存在。 前段时间轰动世界的一个数学成果,是几个印度人提出了一个新算法,可以在多项式时间内,证明某个数是或者不是质数,而在这之前,人们认为质数的证明,是个非多项式问题。可见,有些看来好象是非多项式的问题,其实是多项式问题,只是人们一时还不知道它的多项式解而已。 如果判定问题π∈NP,并且对所有其他判定问题 π∈NP,都有π'多项式变换到π(记为π'∞π),则称判定问题π 是NP完全的。 对P类,NP类及NP完全问题的研究推动 了计算复杂性理论的发展,产生了许多新概念,提出了许多新方法。但是还有许多难题至今没有解决,P=NP?就是其中之一。许多学者猜想P≠NP,但无法证明。
|
转自: http://hi.baidu.com/%C4%AB%D4%C2%C7%E5%C7%EF/blog/item/63bbef80f6ad84b26d81190e.html
分享到:
相关推荐
NP完全问题、霍奇猜想、庞加莱猜想、黎曼假设、杨-米尔斯理论、纳卫尔-斯托可方程、BSD猜想
难题”之一:P(多项式算法)问题对NP(非多项式算法)问题 难题”之二: 霍奇(Hodge)猜想 难题”之三: 庞加莱(Poincare)猜想 难题”之四: 黎曼(Riemann)假设 难题”之五: 杨-米尔斯(Yang-Mills)存在性...
算法设计与分析:第10章 NP完全问题.ppt
这是算法导论中最难的一个章节,特地选择了英文版的课件,很不错的
NP完全问题(NP-C问题),是世界七大数学难题之一。 NP的英文全称是Non-deterministic Polynomial的问题,即多项式复杂程度的非确定性问题。简单的写法是 NP=P?,问题就在这个问号上,到底是NP等于P,还是NP不等于P。
通过该课件的学习能够掌握NP完全问题的原理和对应用问题的加深理解
NP完全问题证明 CNF-SAT 3-SAT CLIQUE VERTEX-COVER 均分
NP完全问题的概述,包括P类、NP类、CNP类问题的介绍。
NP完全问题(NP-C问题),是世界七大数学难题之一。 NP的英文全称是Non-deterministic Polynomial的问题,即多项式复杂程度的非确定性问题。简单的写法是 NP=P?,问题就在这个问号上,到底是NP等于P,还是NP不等于P。
算法设计技巧与分析:第九讲 NP完全问题.ppt
2.NP(Nondeterministic Polynominal)问题–非确定多项式问题 能在多项式时间内验证得出一个正确解的问题。 关于P是否等于NP是一个存在了很久的问题,这里不做讨论。 通俗的理解这两个问题的话:在借助计算机的前提...
基于贪心算法近似求解一个NP完全问题c++源码(含详细项目说明+实验报告).zip基于贪心算法近似求解一个NP完全问题c++源码(含详细项目说明+实验报告).zip基于贪心算法近似求解一个NP完全问题c++源码(含详细项目说明+...
大学算法课件,包括分治法,动态规划,集合算法,随机算法,计算模型,NP完全问题
NP完全问题 NP完全问题 NP完全问题 NP完全问题
详细介绍了npc问题的证明思路,并拿顶点覆盖问题做了例子
根据维基百科整理的NP问题相关材料,涉及计算复杂性分析,最优化技术等等。
论文《若干NP完全问题的特殊情形》
算法是指完成一个任务所...如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。
[总结]算法中的P问题、NP问题、NP完全问题和NP难问题 - CSDN博客.html