P vs. NP:从一则数学家谋杀案说起.doc
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
1 0人已下载
| 下载 | 加入VIP,免费下载 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vs. NP:从一则数学家谋杀案说起 vs NP 一则 数学家 谋杀案 说起
- 资源描述:
-
1、P vs. NP:从一则数学家谋杀案说起美剧基本演绎法(也就是美版“福尔摩斯”)第 2 季第 2 集中,两位研究 NP 问题的数学家被谋杀了,凶手是同行,因为被害者即将证明“P=NP 问题”,她为独吞成果而下了毒手。然而凶手的动机,并不是千禧年大奖难题那100万美元的奖金解决了 P=NP 问题,就能够破译世界上所有的密码系统,这里面的利益比100万美元多多了。剧中只用了一句话来介绍 P=NP 的意义:“能用电脑快速验证一个解的问题,也能够用电脑快速地求出解”。这句过于简单的话可能让大家一头雾水,今天我们就来讲一讲 P vs. NP。什么是P和NP?基本演绎法S02E02 截图。计算机科学的一个
2、主要研究方向是提高各种算法的速度。尤其在当前火热的“大数据”概念下,算法速度更显重要。很容易理解,处理的数据越大,计算的耗时就越多。对于一个算法,人们能够分析出运算时间与数据量之间的大致函数关系,这个关系被称为时间复杂度,它定量描述了该算法的运行时间。假设有 n 个数要排序。一个初级的冒泡排序算法所需时间可能与 n2 成正比,快一点的算法所需时间与 nlog(n) 成正比。在某些条件下,桶排序算法所需时间甚至只和 n 成正比。最不实用的算法就是输入的数字随机排列,直到出现完全有序的情况为止记前三个算法的时间复杂度分别记为 O(n2)、O(nlogn) 和 O(n),最后的“猴子排序”(Bogo
3、sort)算法平均时间复杂度则达到了 O(n*n!)。在上面的例子中,前三种算法的复杂度是 n 的多项式函数;最后一种算法的复杂度是 n 的阶乘,根据斯特林公式,n! 相当于指数级别的增长。当 n 特别小时,多项式级的算法已经快过指数级的算法。当 n 非常大时,人类根本看不到指数级复杂度算法结束的那天。自然的,大家会对多项式级别的算法抱有好感,希望对每一个问题都能找到多项式级别的算法。问题是每个问题都能找到想要的多项式级别的算法吗?在一个由问题构成的集合中,如果每个问题都存在多项式级复杂度的算法,这个集合就是 P 类问题(Polynomial)。这意味着,即使面对大规模数据,人们也能相对容易地
4、得到一个解,比如将一组数排序。“NP”的全称为“Nondeterministic Polynomial”,而不是“Non-Polynomial”。NP 类问题指的是,能在多项式时间内检验一个解是否正确的问题。比如我的机器上存有一个密码文件,于是就能在多项式时间内验证另一个字符串文件是否等于这个密码,所以“破译密码”是一个 NP 类问题。NP 类问题也等价为能在多项式时间内猜出一个解的问题。这里的“猜”指的是如果有解,那每次都能在很多种可能的选择中运气极佳地选择正确的一步。不妨举个例子:给出 n 个城市和两两之间的距离,求找到一个行走方案,使得到达每个城市一次的总路程最短。我们可以这样来“猜测”
5、它的解:先求一个总路程不超过 100 的方案,假设我们可以依靠极好的运气“猜出”一个行走路线,使得总长度确实不超过 100,那么我们只需要每次猜一条路一共猜 n 次。接下来我们再找总长度不超过 50 的方案,找不到就将阈值提高到75 假设最后找到了总长度为 90 的方案,而找不到总长度小于 90 的方案。我们最终便在多项式时间内“猜”到了这个旅行商问题的解是一个长度为 90 的路线。它是一个 NP 类的问题。也就是说,NP 问题能在多项式时间内“解决”,只不过需要好运气。显然,P 类问题肯定属于 NP 类问题。所谓“P=NP”,就是问是不是所有的 NP 问题,都能找到多项式时间的确定性算法?P
6、会不会等于NP?基本演绎法S02E02 截图。这个问题目前还没有定论,当下学术界的大多数意见是 P≠NP。一个主要原因是,这么多年过去了,人们仍然没有找到解决上千个 NPC 问题中任何一个的多项式复杂度的算法。等等,NPC 又是什么?在与数不尽的问题搏斗的过程中,人们有时候会发现,解决问题 A 的算法可以同时用来解决问题 B。例如问题 A 是对学生的姓名与所属班级同时排序,问题 B 是对人们按照姓名做排序。这时候,我们只需要让班级全都相同,便能照搬问题 A 的算法来解决问题 B。这种情况下,数学家就说,问题 B 能归约为问题 A。人们发现,不同的 NP 问题之间也会出现可归约的关系,甚至
展开阅读全文
课堂库(九科星学科网)所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。


鄂教版七年级语文下册第8课《诗两首》精题精练.doc
2022四年级英语下学期期中测试卷习题课件 湘少版.ppt
