什么是P = NP?问题

2023-11-12


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

引言

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

天才基本法

 相信大家应该都知道最近有一部剧非常火——天才基本法,由雷佳音、张子枫、张新成主演的由同名小说改编的电视剧。
请添加图片描述
 该剧具体讲了什么内容我就不在这里详细说了,相信有好多小伙伴都已经刷完了(反正我已经刷完了,确实不错,值得推荐),没有看的小伙伴也很值得一看。
 我们今天只研究剧中提到的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成立,那么给这个世界带来些什么影响呢?

 如果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课程的学习,而是谈谈一个学术问题。之后的学习内容将持续更新!!!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

什么是P = NP?问题 的相关文章

随机推荐

  • 2021-07-26

    解决 Action client not connected arm gripper controller follow joint trajectory ERROR 1627267012 953273779 3804 152000000
  • cin中输入空格断开的解决方法

    cin中输入空格断开的解决方法 cin gt gt a 此时输入 hello world cout lt
  • LaTeX添加包

    将包文件夹放入 CTEX MiKTeX tex latex目录中
  • Head First的MVC之歌(英文版)

    MVC之歌 歌名 模型 视图 控制器 ModelViewController 词曲 James Dempsey https pan baidu com s 1PXDVDqRQVpKcZ1bQwCLNLQ 请大佬 翻译并唱 出来
  • 和为 K 的最少斐波那契数字数目(贪心)

    题目描述 给你数字 k 请你返回和为 k 的斐波那契数字的最少数目 其中 每个斐波那契数字都可以被使用多次 斐波那契数字定义为 F1 1 F2 1 Fn Fn 1 Fn 2 其中 n gt 2 数据保证对于给定的 k 一定能找到可行解 示例
  • 增强网关设计与使用

    增强网关 目的 整合错误码 对外显示友好 对内便于快速定位问题 记录出错请求 依照错误码制定处理策略 设计 状态码格式 示例 E01001B002 解析 E 统一前缀 表明异常 01 应用标识 001 功能域 B 错误类型 002 错误码
  • vue 3.0新特性之reactive与ref

    vue 3 0新特性 参考 https www cnblogs com Highdoudou p 9993870 html https www cnblogs com ljx20180807 p 9987822 html 性能优化 观察者机
  • Allegro自动备份PCB设计文件的方法

    受到误删原理图的影响 立刻把PCB的自动备份功能设置一下 和原理图备份不一样的是PCB备份文件和源文件的格式相同 只是名称不一样 这个名称是自己设置的 步骤如下 点击 Setup gt User Preferences 弹出 User Pr
  • Linux 端 Kaggle 数据集下载:API 下载

    Linux 端 Kaggle 数据集下载 API 下载 一 准备好 kaggle json 文件 1 登录 Kaggle 官网 2 点击右上角头像 gt Your Profile gt Account gt Create New Token
  • Pandas_设置单元格条件格式1——指定值字体变色、指定值设置背景色

    转载于 https www cnblogs com wodexk p 10801344 html
  • 普通工程师和高级工程师的差别在哪里?如何快速突破?

    作者 王拥军 编辑 迷鹿 王拥军 毕业于天津大学计算机系 拥有从计算机硬件到操作系统安全 从后台服务器到客户端的全平台工作经历 目前在腾讯自选股从事互联网证券软件研发管理 对上市公司及创业团队的产品 文化 经营等具有独到的见解 个人公众号
  • linux设置系统时间

    我们一般使用 date s 命令来修改系统时间 比如将系统时间设定成20066年10月19日的命令如下 date s 10 19 2006 将系统时间设定成下午1点12分0秒的命令如下 date s 13 12 00 注意 这里说的是系统时
  • 【字节面试题】小于n的最大数

    标题 小于n的最大数 题目描述 给定一个数你 入23121 给定一个数组A如 2 4 9 求由A中元素组成的 小于n的最大数 如小于23121的最大数是22999 思路 1 把数组排序 2 把int转换成字节数组 从第一个开始变量 如2 从
  • App6种常见的数据加载设计

    设计师在进行APP设计的设计时 往往会更加专注于界面长什么样 界面和界面之间怎么跳转 给予用户什么样的操作反馈 却偏偏特别容易忽略掉一个比较重要的环节 就是APP数据加载中的设计 所以会导致我们看到的APP 往往有着华丽的启动界面 然后就是
  • Python3, 19行代码,让微信登录页面地球转起来,涨见识了。

    19行代码动态展示微信地图 1 引言 2 代码实战 2 1 思路 2 2 示例 2 2 1 经纬度 2 2 2 制作gif 3 总结 1 引言 小屌丝 鱼哥 最近在干啥嘞 小鱼 干活呗 不然能干啥 小屌丝 嘿嘿 小鱼 你这笑的 怎么 那么
  • FPGA_分频(信号使能分频与计数器分频)(奇偶分频)

    时钟对于 FPGA 是非常重要的 但板载晶振提供的时钟信号频率是固定的 不一定满 足工程需求 所以分频和倍频还是很有必要的 一 计数器分频 这里通过计数的方式来实现分频 1 通过计数器来实现6分频 两种方式 第一种直接通过计数方式直接获取获
  • 华为OD机试 Java 实现【整型数组合并】【牛客练习题】

    一 题目描述 将两个整型数组按照升序合并 并且过滤掉重复数组元素 输出时相邻两数之间没有空格 二 输入描述 输入说明 按下列顺序输入 输入第一个数组的个数 输入第一个数组的数值 输入第二个数组的个数 输入第二个数组的数值 三 输出描述 输出
  • Qt添加第三方字体

    最近开发项目时 据说不能用系统自带的微软雅黑字体 于是找一个开源的字体 思源黑体 这个是google和Adobe公司合力开发的可以免费使用 本篇记录一下Qt使用第三方字体的方式 字体从下载之家下载http www downza cn sof
  • C#文件后缀名详解

    sln 解决方案文件 为解决方案资源管理器提供显示管理文件的图形接口所需的信息 csproj 项目文件 创建应用程序所需的引用 数据连接 文件夹和文件的信息 aspx Web 窗体页由两部分组成 视觉元素 HTML 服务器控件和静态文本 和
  • 什么是P = NP?问题

    文章目录 引言 天才基本法 什么是P NP问题 P NP 成立吗 总结 提示 以下是本篇文章正文内容 Java系列学习将会持续更新 引言 今天我们先放松一下 这篇文章并不是Java课程的学习 而是带大家认识一个学术问题 但是请大家放心 这里