什么是P = NP?问题

文章目录

  • 引言
    • 天才基本法
    • 什么是P/NP问题?
    • P = NP 成立吗?
  • 总结


提示:以下是本篇文章正文内容,Java系列学习将会持续更新

引言

 今天我们先放松一下,这篇文章并不是Java课程的学习,而是带大家认识一个学术问题。但是请大家放心,这里并不是学术的探讨,因为我也不懂,我只是搜集一些相关的资料带大家了解一下这个问题。更多的是出于满足一下各位的好奇心。。。

天才基本法

 相信大家应该都知道最近有一部剧非常火——天才基本法,由雷佳音、张子枫、张新成主演的由同名小说改编的电视剧。
什么是P = NP?问题_第1张图片
 该剧具体讲了什么内容我就不在这里详细说了,相信有好多小伙伴都已经刷完了(反正我已经刷完了,确实不错,值得推荐),没有看的小伙伴也很值得一看。
 我们今天只研究剧中提到的P=NP?问题,芝士世界的老林和裴之共同证明了P=NP完全成立,这也使得芝士世界的计算机、医疗、环保等多个领域得到了跨越式的发展。
 而草莓世界的老林用尽二十多年的时间都没有能够证明,最后也只是在芝士裴之的帮助下证明了图同构是NP类问题的证明,这只是证明P=NP的一个阶段性胜利。。。
 那我们就了解一下究竟P=NP?是个什么样的问题?

回到目录…

什么是P/NP问题?

 P/NP问题是克雷数学研究所高额悬赏的七个千禧年难题之一,同时也是计算机科学领域的最大难题,关系到计算机完成一项任务的速度到底有多快。

 P/NP问题是Steve Cook于1971年首次提出。

 P指多项式时间(Polynomial),一个复杂问题如果能在多项式时间内解决,那么它便被称为P问题,这意味着计算机可以在有限时间内完成计算;

 NP指非确定性多项式时间(nondeterministic polynomial),一个复杂问题不能确定在多项式时间内解决。

 假如NP问题能找到算法使其在多项式时间内解决,那说明它转变成了P类问题。

有点难以理解,那就拿股市举个例子:

 昨天某只股票收盘价为10元,今天收盘价为11元。涨幅是多少?
 我们很容易就可以通过公式计算出来,(11-1)/10=10%,这就是P类问题

 那再请问,明天的收盘价是多少?是涨还是跌?
 这个问题我们不能通过一个具体的算法得到答案,只有等到了明天才能验证得到正确答案,这就是NP类问题

P/NP问题就是研究能否把NP类问题转变为P类问题。如果能,则P = NP 成立;否则,P != NP。

回到目录…

P = NP 成立吗?

什么是P = NP?问题_第2张图片

 我们先假设P = NP成立,那么给这个世界带来些什么影响呢?

 如果P=NP真的成立,那么对于任何一件随机的事件,我们都可以找出针对性的算法来计算或控制事件的走向。还是刚刚那个股市的例子,我们就可以计算出每支股票在未来的涨跌情况,这样岂不成了“股票之神”?在医疗上,我们可以解决很多目前无法攻克的疾病如癌症;在科技上,我们可以通过特定的算法来解决我们无法实现的技术难题;总之无论在哪个领域都会取得很大的突破。毫不夸张地说,甚至有可能做到跨越时间、空间,知晓未来、洞察于千里之外。
 当然,也存在一定的弊端,如对密码学的影响,破译密码会变得很容易。甚至会对计算机网络安全构成巨大的威胁。

 这虽然听起来好像很扯淡!但确实有很大一部分数学家和科学家在一直研究这个问题。那到底 P = NP 能否成立?有没有人证明了它的成立?或是证明了它不可能成立?

学术界的最新消息:

公元2010年:
 8 月 6 日,HP LAB的 Vinay Deolalikar 教授宣布证明了P!=NP,并且公布了证明过程。
 8 月 8 日,Lipton 在博客上讨论了这篇论文,给出了略显乐观的评价:这是一个值得认真对待的证明。这篇文章引来大量严肃的学术性回复,大多来自业内人士,各方看法不一。
 8 月 9 日,Lipton 写了一篇新的博客文章,指出了 Deolalikar 证明思路中的一些重大漏洞。
 8 月 10 日,Lipton 写了新的博客文章,试图将各方讨论的结果以更清晰的方式呈现出来。同日,Deolalikar 在自己的网站上撤下了论文初稿的链接,稍后放上了新一稿。
 8 月 11 日,Lipton 贴出了 Deolalikar 对一部分学术质疑的答复。Vinay Deolalikar 贴出了论文的第三稿。
 8 月 12 日,Lipton 贴出了一封来自 Neil Immerman 的信,指出了两个此前未被认真讨论的漏洞。
 8 月 13 日,Deolalikar 贴出了一篇关于自己的证明的解释性文档。
 8 月 14 日,在很多科学家的共同讨论中,人们逐渐理清 Deolalikar 的论文的根本问题在于把两个没有在论文中被严格定义出来的直观概念混淆在一起,从而做出了不完善的论证
 8 月 15 日,Lipton 贴出了他对于一周以来讨论的总结:Deolalikar的证明不能成立。随后的发言越来越多地集中于更抽象的层面,并且仍在继续。

回到目录…

总结

 截至到目前为止,P = NP? 问题的讨论还没有停止。没有人能拿出有力的证据证明等式成立。虽然有科学家拿出自己的论据来证明了P != NP,但是随后也发现了论据的漏洞,依然不能证明等式不成立。现在 P = NP? 依然是个谜!
 也许在很多人看来这个问题的讨论没有任何意义,觉得可能会走在一条错误的道路上。但就是有那么一部分数学家像“老林”一样,穷尽几十年来研究这个问题。可能这就是数学的魅力吧!

 OK! OK! 文章到此结束了。今天写这篇文章并不是想要真正探讨这个学术问题,一是为了缓解一下学习压力(毕竟最近一直学习Java),二是为了满足一下自己和大家的求知欲 (好奇心)。最后再次推荐一下这部剧——“天才基本法”,真的好看!

回到目录…


提示:这里对文章进行总结: 以上就是今天的学习内容,这篇文章不是Java课程的学习,而是谈谈一个学术问题。之后的学习内容将持续更新!!!

你可能感兴趣的:(学习方法,算法)