斯蒂芬·沃尔夫勒姆这个名字,在中文世界里可能远谈不上家喻户晓;但他的英文名Stephen Wolfram恐怕反而却要熟悉得多。大名鼎鼎的数学软件Mathematica每次启动的时候都会用大红字提醒你这是Wolfram出品;而“计算知识引擎” WolframAlpha更是每一个极客必备的网站。
何谓“计算知识引擎”?WolframAlpha的主界面看起来就像是一个搜索引擎,可是它的任务不是搜索网上的东西原样给你看,而是用这些东西计算出知识、回答你的问题。从直接了当的数学问题(对 x^2 sin^3x dx积分),到简单的逻辑问题(哪些书的名字里有“蓝”这个词),到物理和化学问题(ATP的电子式是什么,描述三维盒子中的自由粒子需要哪些变量和方程),甚至更一般性的知识问题(卡西尼探测器上携带了多少核燃料,林白单人飞越大西洋的起点和终点,1969年8月发生了哪些大事件),它都可以回答。更重要的是,这些问题都可以用自然语言提出,无需懂计算机语言——当然像Siri一样接受调戏的能力也是有的(其实它比Siri早得多)。数学家格里高利·蔡廷(Gregory Chaitin)说,这是“第一个真正实用的人工智能”。
而斯蒂芬·沃尔夫勒姆的野心,可远远不止于此。
沃尔夫勒姆1959年出生在英国伦敦,父母是当年从德国来英避难的犹太人。10岁的时候他立志要当科学家,然后几乎立刻发现自己和所有“科学家的摇篮”都合不来。12岁的时候他拿到了大名鼎鼎的伊顿公学的奖学金,却根本不屑于听老师指挥,还靠帮别的学生写作业来赚零花钱。17岁时,他还没从伊顿真正毕业就被牛津录取了,但是却没有真正“上”过牛津——开学第一天他听了一堂大一新生课,觉得“糟透了”。第二天和第三天他分别听了大二和大三的课,结论是“全都糟透了,我再也不去听课了”。自此他几乎就没有去上过课,并在短短两年之后就前往加州理工大学攻读理论物理博士生——牛津的一些老教授至今对此耿耿于怀。他拿到博士学位后立刻被加州理工聘用,当时他年仅20岁;仅仅一年之后他就获得了奖励年轻创新者的著名奖项“麦克阿瑟天才奖”,至今仍然是该奖最年轻的得主。
但是,这样一位少年天才此后的发展路线却出乎所有人的意料。在加州理工时,他发明了一种计算机语言,却因为学校规定他不能独享专利而和校方闹翻,转而前往普林斯顿高等研究院。在这里他放弃了理论物理,开始研究一个奇怪的新领域:“细胞自动机”。
想象一下,一望无际的大平面被分成了许许多多方格子。每个格子里正好能放下一个“细胞”。这个细胞不能运动,它可以是死的,也可以是活的;但它的状态,是由它周围8个细胞的死活决定。
至于决定的规则,在这个例子里只有这么几条:
1 “人口过少”:任何活细胞如果活邻居少于2个,则死掉。
2 “正常”:任何活细胞如果活邻居为2个或3个,则继续活。
3 “人口过多”:任何活细胞如果活邻居大于3个,则死掉。
4 “繁殖”:任何死细胞如果活邻居正好是3个,则活过来。
而下面这几张图,全是遵循这几条简单规则的产物。
"脉冲星":它的周期为3,看起来像一颗周期爆发的星星。
“滑翔者”:每4个回合“它”会向右下角走一格。虽然细胞早就是不同的细胞了,但它能保持原本的形态。
“轻量级飞船”:它的周期是4,每2个回合会向右边走一格。
“滑翔者枪”:它会不停地释放出一个又一个滑翔者。
“繁殖者”:它会向右行进,留下一个接一个的“滑翔者枪”。动图最后一帧定格时用三种颜色区分了繁殖者本体、滑翔者枪和它们打出来的滑翔者。
细胞自动机的想法可以追溯到冯·诺依曼,上面这几条规则别名“生命游戏”,可能是最出名的一套规则组。沃尔夫勒姆对细胞自动机着了迷,而他的同事们对此的评论是“我不太确定他搞的东西能叫科学”,“这更像是数学游戏,他显然已经不再是物理学家了”,还有“这个‘少年天才’其实没有穿衣服”。
可是沃尔夫勒姆却觉得自己发现了某种本质的东西。1983年,他做出了自己最得意的发现:“Rule 30”。这是一套规则组,处理的是更加简单的一维细胞自动机,每一次迭代的产物变成新的一行打印在下面。可是,从一个活细胞出发,它却生成了一套极其复杂的无尽花纹;后来Mathematica里使用的随机数生成器,就是基于Rule 30的。(顺便说,用Rule XX指代一维细胞自动机的规则组,这一用法是沃尔夫勒姆首创,沿用至今。)
如此简单的程序能生成如此复杂的行为,这意味着什么?沃尔夫勒姆认为,这正是我们宇宙的本质;我们的世界就是计算,就是一套简单的规则生成的复杂现象。这听起来有点像是“民科”的主张,所不同的是,他关于细胞自动机的研究获得了超过一万次引用;而他本人则在离开高等研究院、在伊利诺伊大学度过了两年时光(“在那里,他们指望我来筹钱,做研究的反而是别人”)之后,彻底离开了大学,成立了自己的公司。成立它的目的不是赚钱,而是以最大的自由来推广自己的软件和自己的观点。为了保持掌控力,他甚至拒绝了好几次上市机会。
其结果,就是Mathematica和WolframAlpha,还有一本名为《一种新科学》的奇书。在这本引发巨大争议的书里,沃尔夫勒姆完整地阐述了他的世界观:自然界的本质是计算,但计算的本质必须用实验探索。过去的研究者要么使用纯数学去研究计算,要么把计算看成工程的工具。但沃尔夫勒姆认为,我们需要从经验出发、为了计算本身而探究计算,这是一种新的路线,书名也因此而来。
最近两年里,沃尔夫勒姆又启动了一项更大的计划:Wolfram Language。其实它25年来一直是Mathematica所使用的计算机语言,但现在它独立了出来,希望成为“世界上最有效率的编程语言”。在2014年即将结束之时,沃尔夫勒姆来华访问,宣传他的思想与产品;新年第一天早晨,沃尔夫勒姆接受了果壳网科学人的专访,在访谈里他讲述了自己对宇宙本质、自由意志、人工智能和软件开源等许多问题的看法。
“我们能为宇宙建立一个完整的模型吗?我的工作假说是‘能’。”
科学人:你一直说,不含随机性的细胞自动机也可以产生无法预测的模式。现实世界如此多姿多彩,你觉得它是不是也不需要随机性?
沃尔夫勒姆:我觉得不需要。很多时候人们说的“随机性”,其实是建模时用的黑箱:我不了解一个系统的全部规则,所以我假定这个系统有某些额外的因素在提供“随机”的输入。这个意义上的“随机”,只是证明你还没为这个系统建立完整的模型而已。但我们能为宇宙建立一个完整的模型吗?我的工作假说是“能”。也许这假说是错的,也许出于什么原因我们就是无法为宇宙建立完整模型——但是我还没有见到相关的证据。所以我会朝这个目标而努力。一旦我们得到了完整模型,随机性就消失了,没有任何来自外部的不可预知的因素。我有个朋友名叫格里高利·蔡廷,他对于算法随机性这整个领域非常感兴趣,他有一个著名的发现叫做“欧米伽数”(即蔡廷常数),这个数字虽然是个确定的数,但任何图灵机都计算不出来。我和他观点的区别就是,我认为宇宙像pi一样,虽然无穷无尽但可以计算到任意精度;而他始终认为宇宙像欧米伽。我不知道为什么。
科学人:如果我们建立了宇宙的完整模型,是否意味着我们就没有自由意志了呢?
沃尔夫勒姆:我在我的书里讨论了一个概念,叫做“计算不可化约性”(Computational irreducibility)。这意味着,就算你知道了一切规则,你可能也无法提前预测这些规则将会做什么——唯一的办法是实地运行这些规则看看它们到底会做出什么来。
“自由意志”这个词包括很多层面,如果我们能预测我们将会做出什么事情来,那可以说我们没有自由意志。比如说,看一只蛾子反复地撞击玻璃窗,试图飞出去,我们会说它看起来没有自由意志,似乎是决定性的反射机制。但如果我们看到一个人在做一件非常复杂的行为,我们会说他看起来好像在作出选择,因为我们无法预测他将会怎么做——在这个意义上,我们拥有自由意志。
我们的历史必须按顺序逐渐上演,你不能说“我已经知道结局了,快进到头吧”;历史是必不可少的。世界的底层规则是简单的、决定性的,但是这些规则生成的人类行为却极端复杂,这之间的计算鸿沟无法化约,因此我们的行为是“自由”的。
科学人:会不会有一天,我们对大脑已经有足够的了解,可以监控到足够的信息,可以说“十秒钟之后这个人会想这件事情”?这时人们还有自由意志吗?
沃尔夫勒姆:我不知道。这一点已经部分地在鸟类中实现了,我们能大致预测出鸟类下一秒会唱什么样的歌。但我还是觉得,自由意志这个概念的根源,只是因为要预测未来所需的计算量太大。就算我们发现了宇宙的全部规律,要么我们得想办法进行和宇宙同样的运算,要么我们就看着宇宙自己这么算下去。
科学人:到那时,是否物理就变成了数学呢?物理条件会反过来限制我们对数学的理解吗?
沃尔夫勒姆:如果我们真的建立了宇宙的模型,一切都可计算,那么全部物理问题就都还原成了数学。但什么是数学呢?数学从公理系统出发,比如欧几里得的公理系统;在此基础上我们推导出一系列的形式知识。至于选择什么样的公理,可以是人为武断选择、得到纯粹抽象的数学知识,也可以选择那些和现实世界对应的公理。欧几里得认为他选择的公理是对应现实的,但后来数学家逐渐开始做出武断的抽象的选择。数学是个抽象的领域,它不会被现实的物理限制。
“模仿人类,既是错误的路线,又是唯一可行的路线”
科学人:我们之前采访过侯世达。对于他的人工智能(AI)路线——遵循类比、模仿人类思维——你怎么看待?
沃尔夫勒姆:我认识他,我无法评判他的具体研究内容,但对于他的大致方向——理解人类的智能——我的看法是:这既是错误的路线,又是唯一可行的路线。
一方面,如果说我们的目的是创造智能系统,那么这条路线与之无关,正如研究鸟类如何飞行与制造飞机无关一样。特别是在所谓“通用推理AI”上,人们曾经说它才是能够回答问题的系统,但沿这条路线没有人成功;而我们的WolframAlpha却成功地回答了许多问题。我们如何做到的?通用推理AI,所做的是推理。面对物理问题,从一个事实推理出下一个事实,就像中世纪的哲学家那样。而我们做的,则是计算。面对物理问题,我们在某种意义上是“作弊”了:使用我们文明积累下来的全部科学和数学确立一个方程,然后把结果计算出来。在这里,我们使用的方式和人类思考问题的方式截然不同,但效率要高很多。大部分眼下的智能系统都是这样。
但另一方面,如果我们的目的是真正的“终极”智能呢?我们现在的计算能力,和大脑比起来都可以说相当不错了,但是如果要为这些计算设定一个目的,必须有人类的参与。我们的系统可以想算什么就算什么,但没有人为它指明目标,它什么也做不了。世界上没有所谓“纯粹”的智能,它必须和人类目标紧密相连。侯世达的路线对解决任何具体的智能问题都没有什么帮助,但对理解我们的目的却至关重要。
科学人:为什么人类有目的,机器就没有呢?你觉得区别在哪里呢?
沃尔夫勒姆:这是个好问题。水有向下流的“目的”,你可以为物理世界赋予各种各样的“目的”,但所谓的目的其实有两种,一种是遵循物理机制自然会产生的结果,另一种则是努力要去实现的目标。自然界的计算能力完全可以和人脑像匹敌,但自然界的目的全都是前者,而如果我们希望得到类人智能,必须要有类人的目的。比如湍流,或者木星大气表面的漩涡,它在做各种各样繁复的计算,恐怕比我们的大脑更加复杂——至少是运算量更大,但它看起来并未获得我们所说的智能,因为我们唯一知道的智能,就是人类智能。
科学人:那么你相信智能爆炸会带来技术奇点吗?
沃尔夫勒姆:不相信,至少不是人们通常说的那种奇点。许多人说奇点的时候,想象的一个重要特征就是人类永生。这迟早是能实现的,也许部分技术来自生物学,部分技术来自数字世界。这时看起来也许就像是抵达了奇点一样——人类和智能有了无限的时间去发现新事物。但是每年新发现的东西就会因此而指数爆炸直到无限吗?我不这么认为。也许我有偏见吧,人类智能是个连续谱,而我很幸运,我自己位于这个谱的上面那一端;但是在我看来,这些智力并没有质的区别。就算你的智商有200甚至1000,恐怕也不会让你懂得一些别人不可能懂的东西。能不能把更多的知识整合起来?当然可以。假如说我们现在大脑每秒接收100兆的信息,我们当然可以想象一个智能系统每秒可以接收并处理上千兆的信息;但我不认为这谈得上是“更高的智能”。
“我把自己看成一个工具的制造者”
科学人:人们说WolframAlpha是第一个实用的AI。你在创造它的时候,觉得自己是一个AI研究者吗?
沃尔夫勒姆:“人工智能”是一个很模糊的概念。我和AI打交道的这些年里,它从让人激动的概念,变成了“毫无希望”的领域,现在它又东山再起,流行起来了。四十多年前,我就想做一个像WolframAlpha这样的东西。当时,我觉得要做一个这样的工具,必须先制造出通用AI,这很困难,所以我没有沿这个方向继续做下去。但后来,由于我所做的研究,我意识到其实不需要通用AI,也能提供计算性知识。这就是我发明WolframAlpha的原因。我们想制造出“聪明”的系统,而现在我们有了Wolfram语言作为平台,在这个基础上我们就能实现智能系统的目标。
我把自己看成一个工具的制造者,而拿这些工具做什么呢?把我们这个文明的一切知识汇聚起来,形成框架,让新的知识能够自动在它的基础上生产出来。WolframAlpha和Wolfram语言都是在帮助人思考,但和其他帮助人思考的工具不同,我们所做的是让知识变成可以用来计算的东西。
科学人:Wolfram语言未来会向免费和开源方向发展吗?
沃尔夫勒姆:开源在有些事情上是好的,另一些则不是。一般来说,当一个项目需要领导、需要整体设计的时候,开源是很难实现的;而我们过去二十年来做的正是这样的项目——创造从未有过的东西。另一个因素是,这种语言用到了很多很多的知识,其中有些知识属于我们,另一些知识则来自别人,我们不能就这么简单地说,“这一切都是免费的!”
的确,WolframAlpha是免费服务,我们提供这项服务本身是不赚一分钱的。这没问题,但光靠它自己无法长久维持,所以我们在它的基础上提供很多别的服务,并从中营利。我的信念是,建立一个经济-生态系统的最好办法,就是让那些从中获得价值的人们也为之付费。这是最简单的方式。
很多所谓的开源解决方案,其实是陷阱。最著名的陷阱就是安卓:系统本身是免费的,但你要支付专利费。还有些别的例子,东西本身是免费的,但你自己没法建立这个系统,你得求助专业人士,最后还是得付钱让他们在云端托管。所以我们做的,其实是在经济问题上坦诚相见:人们可以使用Wolfram语言在线版免费地学习和试用,但当创业公司在此基础上开始盈利的时候,就要为此付钱。其实这个模式和常见的模式差别也不是那么的大,但如果他们选择了开源的方案,那么就说不准什么时候要付专利费或者云端托管费。我们所做的只是让事情简单化,让人们预先清楚会发生什么。
科学人:你觉得你的产品受到了硬件计算能力的限制吗?
沃尔夫勒姆:不怎么觉得。我面临的挑战是在软件上找到巧妙的方法,我不觉得底层的硬件是什么限制——当然多年前我刚开始使用计算机的时候肯定是受限制的。其实真正的制约因素是,从一个想法到可运行的软件诞生,这个过程要花多长时间。软件本身运行所花的时间很少成为瓶颈。
我们确实有很多极端的例子:比如眼下像机器学习这样的程序,要运行很多个CPU年才能得到结果,如果能快一些固然很好。再比如,为了提供一个用户界面能让人类感到使用自如,硬件至少需要达到一定的水准;在一部分移动设备上我们还做不到这一点。但这都是相对次要的问题。当然还有别的因素,比如现在中国网络连接的不确定性———某种意义上这也算是硬件问题吧,不过这是另一个话题了。所以关键还是,我们人类能否做出好的软件。
“我对解决别人解决过的问题从来都没有兴趣”
科学人:你做了很多自我数据分析(比如统计自己都在啥时候打电话)的工作。你为什么要这样做?有没有从中发现一些有趣的东西呢?
沃尔夫勒姆:我搜集这些数据是因为我对数据感兴趣。我有几套系统,负责检查我昨天锻炼了多少、完成了多少工作这样的事情。我已经搜集了二十五年的数据,时不时地我会对这些数据分析一下,会发现各种各样的结果。但这些数据的真正宝贵之处是,当我对自己有什么问题的时候,我能很容易找到答案。比如有一次我买了个新键盘,我想知道有了它打字速度是快了还是慢了,只花几分钟我就得到了答案。眼下我正打算回答一个难一些的问题,就是对我发的电子邮件进行情绪分析,来判断哪些事情会让我开心,哪些会让我不开心。我所发现的大多数结果,都是事后想来“嗯,的确如此”的那种;但如果没有看到这些数据,我是不会往那个方向上思考的。
科学人:在自己的公司做研究和在大学做研究,你觉得有什么差异?
沃尔夫勒姆:公司的效率要高得多。对我来说,公司就像是把想法变成现实的机器,我会努力为了这个目的而优化这台机器,而在大学里你就没法做这样的优化。
科学人:你多次辍学,你觉得学历这个东西是什么意义呢?
沃尔夫勒姆:其实我不是真的“辍学”。我在英国去的是顶尖的中学,我离开的原因是我得到了顶尖大学的奖学金,所以我只是碰巧比别人离开得早几年而已。在大学里,我得到了直接进入研究生学习的机会,所以我想既然如此,为什么要花这么多年当本科生呢。我很幸运能在二十岁就完成我的学业阶段,因为我觉得我没有耐心再学那么多年。我对解决别人解决过的问题从来都没有兴趣,所以我一直很讨厌课本上的习题。也许这是我个人的傲慢吧,我只是希望我在做独一无二的事情,而不是别人做过的事情。在某些教育系统里,有很多的内容是围绕“循序渐进走过程”而展开的,但我觉得发挥人们潜力最好的方式,是让他们学习自己感兴趣的东西,而不是让他们沿着确定的道路前进。
科学人:你有粒子物理学博士学位,后来为什么不做物理了呢?
沃尔夫勒姆:我没有离开物理呀,我时不时地还会回到物理问题。我在《一种新科学》里就讨论了很多物理问题。我对各种各样的问题都感兴趣,特别是宇宙的最本质特性,这也是促使我学习粒子物理的原因,但我学了之后发现粒子物理的细节并不是宇宙的本质,而诸如复杂系统的特性这样的问题要比物理学更加基本。你可以把这些研究想象成一般性的物理原则。对于宇宙的具体物理特性我依然感兴趣,我希望有一天能把一般性的物理原则应用在上面。
当希格斯玻色子得奖的时候,我在美国起了个大早看视频直播,我意识到现场有很多好多年没见的老朋友,他们一直留在物理学界。他们介绍希格斯玻色子的时候我想,“这些我都知道呀,四十年前我就是在做这些东西。”我想我完全可以留在物理学界,四十年来一直就做这样的研究,我觉得我对此还算挺擅长的。但是因为我转行做了许多其他别的内容,我所弄明白的东西,哪怕限定在物理学里,也比留在物理学界做单一领域要多得多。我的人生有一条经验让我念念不忘,那就是研究许多不同的东西能让人学到更多,哪怕你的目标只是解决一个问题,也是如此。在这一点上我很幸运。
科学人:你说你最喜欢的发现是Rule 30,为什么呢?
沃尔夫勒姆:这是我发现的第一个元胞自动机规则,它是一个戏剧性的例子,表明一个简单的生成规则如何诞生出复杂的行为。我喜欢拿它和科学史上的案例对比:当伽利略发现木星的卫星的时候,这就是一个迹象,表明物理学的定律适用于整个宇宙。Rule 30让我意识到,在计算的宇宙中凭借简单规则可以出现一些非常复杂的现象,这并不是显然的;这是第一个明确的案例。
今天的科学和技术,很多都是依靠搜寻这个计算宇宙中的可能程序,寻找在行为上满足我们需求的那些。正是简单程序可以产生复杂行为这一特征使之成为可能。在我写《一种新科学》的时候,我做出了一个预测:审视一下新出现的关于自然界的模型,我们会看到,基于程序的发现,将逐渐取代基于方程的发现。我预测在五十年内,挖掘计算空间所产生的科技将会超过传统方式。那是十二年前的事情,我们还有三十八年。我们正站在这个趋势的开端。
评论