今天不发技术文章了。

假期看了一部电影《模仿游戏》,讲的是人工智能之父图灵的故事。

说起图灵,可能你知道他是计算机科学之父、人工智能之父。计算机领域最负盛名的奖项「图灵奖」都用他的名字命名。

但你可能不知道,二战期间,他和他的团队扭转了欧洲乃至整个世界的战局,改变了人类命运的走向。

ONE. 情报之战1939 年,伦敦被笼罩在一片阴霾之中,英国正面临着与德国的全面战争。

同年 9 月 1 日,德国入侵波兰,第二次世界大战,爆发。

影响一场战争胜负的因素有很多,兵力、军备、战略都是非常重要的因素。相比这些,情报反而更加关键,能截获敌军情报胜过千军万马。

为了防止机密被对手得知,战时国家都会对自己的情报进行加密处理。

第二次世界大战期间,德国为了加强自己情报的隐秘性,花费了大量精力,研发出了当时被认为最安全的加密系统 :恩尼格玛密码机(Enigma)

这就是恩格尼码密码机,小小的木匣子威力无穷。

键入一个字母,出来的可以是任意一个字母。即便有人截获了加密情报,看到的也只是一串串天文数字。只有配备相应的破译机,才能轻易的翻译出来。

二战期间,这个小木匣子被德军广泛使用。

大西洋运输线上,一艘艘船载满物资,为战争前线的英国士兵运送补给。德军借助恩尼格玛密码机下达加密命令,部署潜艇对补给船进行打击。

杀人如麻的潜艇出没于大西洋的运输线上,以令人心惊胆战的速度击沉英军的船只。

英国首脑丘吉尔知道,如果不阻止德军的潜艇战术,英军会出现补给短缺的局面。防止胜利的天平向德军倾斜,截取破译情报变得刻不容缓。

如果英军能截获并破译潜艇战术的部署情报,就可以确定其位置击毁潜艇。

破译情报之路上最大的 Boss 就是恩尼格玛,整整 13 年,英国人都认为恩尼格玛是不可破译的。

面对这种局面,英国政府成立了一个秘密组织,坐落于历史悠久的布莱切利园,这儿就是进行密码破译的大本营。

该组织秘密招募了大量数学天才、逻辑学家专门负责恩尼格码的破译工作,大名鼎鼎的人工智能之父艾伦·麦席森·图灵(Alan Mathison Turing)就是这一群天才中的一员。

TWO.  艾伦·图灵

牛逼的人,从小就牛逼。

23 岁,图灵就被选为剑桥大学国王学院院士。24 岁,提出了图灵机的构想。在随后的两年里,图灵在美国普林斯顿大学做博士研究,涉及逻辑学、代数和数论等领域。

对一般人来说,这些成就可能是一辈子难以企及的高度。但是对于图灵,这只是一个开始。

1938 年 9 月,图灵应招加入了破译密码的组织,专门负责恩尼格玛的密码分析。

破译工作并不顺利,恩尼格码机可以产生的加密方案共 1.5 种,看到这你可能会懵逼,是什么东西?

类似于万、亿一样,也是一个计数单位。当我们听到亿级的数字,就感觉大到不行,而垓所表征的数字到底有多大呢?可以看下面:

个、十、百、千、万、十万、百万、千万、亿、十亿、百亿、千亿 、兆、十兆、百兆、千兆、京、十京、百京、千京、、十垓、百垓、千垓

可想而知,破译工作的难度之大。

如果军方进行暴力破解,破译当天截获情报需要 2000 万年。更让人绝望的是,德国人每一天都会用不同的加密方案,在一天内穷举出所有的可能性几乎为零。

图灵意识到,暴力穷举是一条死路。他想创造一台机器,一台比人算得更快的东西,用机器来对抗机器。

在《模仿游戏》中,他创造了一台计算机雏形,命名为"克里斯托弗"。相比于现在的笔记本电脑,这台机器有一堵墙那么大。

通过他和团队的努力,终于在 1941 年,这台机器运转了起来。相比于人力计算,克里斯托福的计算速度大大提升。

即便是计算速度得到了巨幅提升,破译一份情报也得需要数年的时间。

战争是残酷且无情的,人命关天,这样的效率肯定不行。

THREE. 出现转机

图灵分析了大量的德国电文,他发现许多电报有固定的格式。只要找到情报中出现频率最高的词,优先破译,就能排除大量无意义的排列组合,从而大大加快破译速度。

图灵和他的团队开始仔细分析德国电文,他们发现每封电报中都会出现“天气”和“希特勒万岁”。

他们立即将这个猜想运用到刚刚截获的情报中,没过多久,克里斯托福就计算出了结果,他们顺利的拿到了真实情报。

德国人做梦也没有想到会输在一句希特勒万岁上。

英国为了不让德国人发现已经成功破译恩尼格码,不得不“装不知道”,这也做出了很多牺牲。

破译了恩尼格码密码机,就像打开了上帝视角。他们成功扭转了欧洲战局,没过多久,德国战败了。

因为这,二战至少提前 2 年结束,间接拯救了 1400 万条生命。

FORE. 一个苹果

真正的历史中,这台机器并不是图灵发明的,甚至不叫克里斯托福,而是叫炸弹(bombe)。波兰数学家发明,但波兰人还没有破译成功,德国就把波兰给灭了。

在后续整个破译过程中,图灵起到了关键作用,他基于波兰人的研究成果,用自己的理论,升级了 bombe,才换来了第二次世界大战的胜利。

二战结束,图灵回归了平静的生活。

敌军情报的破译工作属于军事机密,战胜后并没有公开表彰。在当时,图灵的所作所为也鲜有人知晓。

1952 年的一天,图灵的同性伴侣和一名同谋,闯进了图灵的房间实施盗窃。图灵报警,却被警方以同性恋的罪名逮捕定罪。

在那个狭隘的时代,人们认为这是堕落的象征。图灵为了免于牢狱之灾,甘愿接受激素治疗,进行化学阉割。

药物注射给图灵生理和心理上带来了双重打击,他无法忍受这份折磨。

17世纪,一个苹果成就了牛顿。

20世纪,一个苹果杀死了图灵。

1954 年,6 月 7 日,在图灵接受化学阉割一年后,他服食了一个带有氰化物的苹果在房间中自杀,终年 41 岁。

2013 年 12 月 24 日,英国女王伊丽莎白二世赦免了图灵。

关于这件事,知乎上一个帖子这样说:" 然而,我并不觉得他需要谁的赦免,也没有谁有资格赦免他。"

参考资料

[1] 《艾伦·图灵传》

[2] 《模仿游戏》

[3] 天才简史-图灵:旷世奇才,图灵的传奇

[4] 人工智能之父阿兰图灵的一生

[5] sohu.com/a/316856982_646439

[6] zhihu.com/question/28397034

[7] hzhihu.com/question/29122052

一个苹果成就了牛顿,一个苹果杀死了图灵。相关推荐

  1. 怎样把一个价值5毛钱的苹果卖到100万?

    2019独角兽企业重金招聘Python工程师标准>>> 第一次公共关系课上,老师给同学们拿出一个苹果说,这个苹果是早上在家门口的市场上买来的,大约 0.5元钱,如果不考虑客观条件,给 ...

  2. 苹果ipad如何横向_苹果iPad的阵容是一个完整的混乱

    苹果ipad如何横向 In the last two months Apple has released three new iPads, first was the iPad Pro, which ...

  3. java定义苹果类Apple_定义一个水果接口Fruit,里面定义一个表示吃水果的eat方法。定义一个苹果类Apple和一个橘子...

    importjava.util.Scanner;interfaceFruit{publicvoideat();//创建一个Fruit接口,里面包含一个eat方法}classAppleimplement ...

  4. 有12个苹果,其中一个苹果只有质量与其他苹果不一样,现要求用天平秤3次,找出与其他苹果不一样的那个苹果。

    题目: 有12个苹果,其中一个苹果只有质量与其他苹果不一样,现要求用天平秤3次,找出与其他苹果不一样的那个苹果.

  5. android类似苹果clips,【赛后】苹果发布会汇总:越来越像安卓的 iOS 14,还有憋出一个 ARM 大招...

    今天凌晨,一年一度的苹果 WWDC 大会揭幕,在两个小时的时间里,为我们带来了包括 iOS 14.iPadOS 14.watchOS 7.macOS 11.0 等在内的众多系统更新,另外还有传闻中自研 ...

  6. 另一个角度看世界:苹果眼镜,下一个重磅产品

    全文共1830字,预计学习时长5分钟 图源:unsplash 增强现实和虚拟现实行业在过去几年已经渐趋成熟.苹果公司正准备发布其首款增强现实技术的智能眼镜,配备着苹果神秘的增强现实镜头的苹果眼镜即将亮 ...

  7. 问题 B: 给苹果分级  直径达到15cm及以上的苹果定为A级,直径达到10cm及以上的苹果定为B级,其他苹果定为C级。请写一个程序帮华逢春实现苹果分级。

    问题 B: 给苹果分级 时间限制: 1 Sec 内存限制: 128 MB 提交: 2421 解决: 1772 [提交] [状态] [讨论版] [命题人:admin] 题目描述 华逢春种的苹果获得了大丰 ...

  8. 苹果会成为下一个诺基亚吗?

    写下这个标题,我不由得想起了10多年前苹果在中关村大街的iPod广告,大概就是这个样子: 那个时候我送给女朋友一个iriver mp3, 64M,已经能存不少mp3歌曲了,但是一看到这个能存一万首歌的 ...

  9. 三星被“峰终定律”打败,苹果会是下一个?

    文|佘凯文 来源|智能相对论(aixdlun) 日前,三星再次陷入关闭工厂的传闻.有消息称,最快9月,三星将关闭在中国的最后一家手机工厂,从今年5月就开始跟工人沟通关闭事宜,目前该公司已在做最后的清算 ...

最新文章

  1. 巧用360加快您的开机速度
  2. RabbitMQ (四)实现延迟消息
  3. 统计学习方法笔记(三)-朴素贝叶斯原理及python实现
  4. linux c 获取进程 cpu占用率 内存占用情况
  5. 学python最好的方式-Python 学习怎样开始比较好?
  6. spring cloud 2.3.x 注册中心eureka 配置
  7. python csv使用_python CSV模块的使用
  8. 没想到,我都来阿里5年了!
  9. Django3Vue3前后端分离项目
  10. python 3教程_Python 3 教程
  11. DP-代理模式(Proxy Pattern)
  12. 产业研发用房是什么意思_【企业】米东中小微创业产业园:筑巢引凤栖 花开蝶自来...
  13. 使用凤凰在6303C里开启Java软件在后台运行!
  14. 使用SecOC打造的CAN网络依旧很不安全
  15. Codeforces Round #393 (Div. 2) B. Frodo and pillows
  16. 小白也能看懂的手机配置攻略
  17. tp5 以及网站架构个人心得
  18. 记 Linux 学习知识总结 -- 寒江老师视频(七) - SHELL 讲解
  19. 熱銷商品查詢php,ecshop首页调用指定商品分类下推荐热销最新商品
  20. javancss中的NCSS和CCN

热门文章

  1. ztack怎么生成虚拟服务器,在ZStack中使用ISO文件安装虚拟机模板
  2. 软件自动化测试框架STAF
  3. 手把手教你解决PL2303驱动在Win10无法使用
  4. [licode cs交互] 4 erizo controller对 android client鉴权通过
  5. HTTP Status 500 - Servlet.init() for servlet DispatcherServlet threw exception
  6. 测试需要掌握的一些技能
  7. 【腾讯TMQ】我们在外包资源池化管理走过的弯路
  8. 怎样在python安装open cv_python 安装+open cv
  9. 2020年遥感类期刊SCI期刊影响因子排名—遥感, 地理, 水文类
  10. JavaScript根据用户输入动态计算周数