假设你打算买辆新车 , 销售人员说:“你知道吗 , 这款车不光可以在路上开 。 ”
“喔?”
“真的 , 你还可以用它做其他事 。 比如 , 这样折叠起来就是一辆不错的自行车 。 打开能变成一架一流的飞机 。 浸在水里的时候就是潜水艇 。 还能变身宇宙飞船哟!”
你肯定以为销售在逗你玩 。 不过世界上确实存在着可塑性如此高的事物 , 那就是计算机 。 我们用飞行模拟器飞跃自由女神像 , 用电子表格进行财务分析 , 用Facebook和朋友聊天 , 除此之外计算机还有各种各样其他用途 。 计算机就如同一台既是汽车又是自行车还是宇宙飞船的万能神器 。
文章插图
这还要归功于计算机的两种特性 。 首先 , 计算机是可程控的 。 输入一串指令 , 计算机的行为就会改变 。 第二 。 计算机是通用的 。 只要内存足够 , 时间充裕 , 运用合适的程序 , 我们就可以让计算机执行任何算法流程 。
计算机的程控性和通用性已经深植于人类的文化中 , 成为了童叟皆知的常识 。 然而在其诞生伊始 , 可是了不起的大突破 。 1937年 , 艾伦·图灵在一篇论文中明确道:“任何算法都可以被一通用的、可程控的计算机所执行 。 ”图灵描述的这种抽象模型通常被称为图灵机 , 是现代计算机的始祖 。
文章插图
为了实现自己的理念 , 图灵需要证明他的通用计算机能执行任何可以想到的算法 。 这可不容易 。 在图灵所处的时代 , 还没有真正的算法的概念 , 对算法还没有严格的数学定义 。 在此之前数学家们就发现了很多针对诸如加法、乘法和辨别质数的特定算法 , 图灵把它们都用上了 。 这些还不够 。 图灵还需要证明他的通用计算机可以执行任何算法 , 包括未来可能出现的那些 。 为了达到这个目的 , 图灵酝酿出了几套思路 , 每条思路都非正式地论证了图灵机可以执行任何一种算法 。 尽管如此 , 他仍然对自己非正式的论证感到异常不安 。 他说:“所有可提出的论证归根结底都要付诸于直觉 。 正因如此 , 在数学上往往不能令人满意 。 ”
1985年 , 物理学家大卫·多伊奇在理解算法本质的道路上迈出了重要的一步 。 他观察到算法需要以实体系统为依托 。 算法流程可能以多种不同面貌出现:用算法做乘法的人类与执行飞行模拟器的硅质芯片明显是截然不同的 。 但它们都是实体系统 , 都受物理定律的支配 。 所以多伊奇得出了如下结论:每个可知的实体系统都可以被通用模型计算机以可知的方式完美模拟 。
换言之 , 选择任意的实体流程 , 你都可以用通用计算机将其模拟出来 。 一台机器可以成功地将遵循物理定律的一切包含在内 , 这是一个何其动人而独特的见解 。 想模拟一颗超新星或者黑洞的形成 , 甚至宇宙大爆炸?多伊奇的原理告诉你 , 通用计算机可以模拟所有这些 。 从某种意义上说 , 如果你可以对通用计算机完全理解透彻 , 你就理解了所有的物理过程 。
多伊奇的原理较图灵早先的非正式论证进步了许多 。 如果这则原理是正确的 , 那么它就自动符合了通用计算机可以模拟任何算法的理论 , 因为算法流程究其极也是一种物理过程 。 你可以用通用计算机模拟算盘上的加减乘除 , 也可以在硅质芯片上运行飞行模拟器 , 或者你选择的任何其他事 。
文章插图
更进一步的是 , 不同与图灵的非正式论证 , 多伊奇的原理可以通过修改来证明 。 我们可以想象用物理定律来演绎该原理 。 那将会使图灵的非正式论证在物理定律中站住脚 , 也为算法的本质提供一个更坚实的基础 。
推荐阅读
- 仙人掌的养殖方法和注意事项
- 如何才能成为受大家欢迎的人?
- 无线网络可以用来充电吗?
- 疯狂的厄尔尼诺“圣婴”有多恐怖?
- 女性阴毛常识,你真的懂吗?
- 为什么有人长了一双奇特的蓝色眼睛?
- 男女大脑真的差异巨大么?
- 入侵脑细胞:你的身体中真的存在另一个自己?
- 飞机紧急撤离,真的存在黄金90秒吗?
- 多肉可以用煤渣养吗,可以/煤渣土的优点与缺点