数学的局限
还记得电影《本能》里的那个镜头吗?哦,我说的不是那些香艳场面,而是他们上楼梯的那场戏,他说“我非常难以捉摸”,然后她重复了一遍“难以捉摸?”。其实我们并不像自己想象的那样难以捉摸。
事实上,人类行为的许多方面都是相当容易预测的。例如,有时为了反应速度起见,神经反射会凌驾于意识之上掌控你的身体。如果你突然听到一声巨响,我可以预测你会抽搐一下,然后心率飙升。人类的其他行为可以通过群体均值来预测,这些行为的建立来源于经济状况、社会规范、法律以及教养等因素的制约,早晚高峰时期的交通堵塞就是个很好的例子。事实上,根据一项对手机用户的数据分析,受访者93%的移动模式都是可预测的。1我还可以预测,如果你在北美的公共场合裸奔,那一定会非常引人注目。英国人爱喝茶,爱看板球;如果你有外国口音,他们一定会向你解释英国开放水域中的天鹅全部归女王[1]个人所有[2]。
刻板印象之所以有趣,正是因为人类在某种程度上是可以预测的。但是人类行为可以完全预测吗?我们当然可以说,目前还不能完全预测,但是这个答案太没意思了。根据我们对自然规律的了解,这在理论上可能实现吗?如果你是一个相容论者,出于自己的决定无法被预测的信念而认定自己的意志是自由的,你是否害怕有一天自己的思维和行动可以被他人预测呢?
1965年,哲学家迈克尔·斯克里文(Michael Scriven)指出,这个问题的答案是否定的。斯克里文声称“人类行为存在本质上的不可预测性”2,这就是所谓的可预测性悖论:假设你现在有一个任务,是做出决定,例如我给你一块棉花糖,你要么接受,要么不接受。现在让我们想象一下,我预测了你的决定并告诉了你,那么你自然可以反其道而行之,这样我的预测就错了!因此,人类行为具有不可预测的要素。重要的是,即使人类行为完全由宇宙的初始状态决定,斯克里文的论述也同样成立。可预测性似乎并不遵从决定论。
这个结论是正确的,但它和人类的具体行为没什么关系。我举个例子你就明白了,假设我编写了一段计算机代码,它唯一的任务就是确认我输入的数字是否为偶数。然后我会添加一个子句,表示若输入信息中包含第一个问题的肯定回答,则输出对第一个答案的否定。这样一来,输入“44”得到的结果是“是”,但输入“44,是”则会得到“否”。根据斯克里文的说法,这段计算机代码中也包含一些本质上不可预测的要素。
事实的确如此,因为对代码输出的预测取决于输入,如果没有输入,那么我们的预测就无从下手。很多系统都有这样的特性,比如现在我递给你一根棉花糖,你的反应取决于我把棉花糖交给你的时候说了什么。但这并不意味着你的反应从根本上是无法预测的;这只能说明,你的反应在数据不足的情况下无法预测。如果把我们俩同时锁在一个与世隔绝的房间里,那么在一个决定论的世界里,你可以预测我们俩会做什么,也可以预测你会不会拿走我手上的棉花糖。
所以斯克里文的论证并不成立。但是如果你仔细观察,你就会知道人类行为在一定程度上是不可预测的,因为量子力学从根本上来说是随机的。我们目前还不清楚量子效应在人类大脑中发挥什么作用,但你也不需要知道这些。你可以用量子力学实验设备,或者打开手机上的“宇宙分裂器”来决定是否要吃棉花糖。而我,无法预测你会做出什么决定。
不过,我依旧可以预测你做出某些决定的概率,我可以反复进行实验来检验我的预测有多准,就像我们检验量子事件一样。所以,当我们问出人类行为是否可预测时,我们其实应该问得再具体一点儿,即决策的概率是否可预测。就我们目前掌握的自然规律而言,这一概率是可预测的——就它们不可预测的程度而言,你无法完全掌控自己的决策。
然而,这一结论似乎与计算机科学的一些结论相矛盾。在计算机科学中,某些类型的问题是不可判定的,这意味着在数学上已经证明没有任何算法可以解决这些问题。难道人类的大脑中就没有类似的情况吗?
王浩于1961年提出的多米诺问题是最著名的不可判定问题之一。3假如你有一套正方形纸牌,现在在每张牌上都画一个大大的×,这样就得到了4个三角形,然后再用颜色填满每个三角形(参见图18)。如果不允许旋转这些方块,也不允许留下空隙,那么你能否在让相邻色块的颜色完全相同的情况下,用这些纸牌覆盖一个无限大的平面?这就是多米诺问题。很容易看出,对于特定的拼块组合来说,答案是肯定的——我们能做到这一点。但王浩提出的问题是:如果向你提供任意一组拼块,你能告诉我它们能否覆盖这个平面吗?
图18 一组王氏拼块示例
事实证明,这个问题是无法判定的,我们无法编写计算机代码来回答任意一组拼块能否覆盖平面的问题。1966年,罗伯特·伯杰(Robert Berger)做出了证明,他指出王浩的多米诺问题是艾伦·图灵停机问题的变体。4停机问题指的是判断一个算法是能在有限时间内结束运算还是无限运算下去的问题。5图灵指出,问题在于不存在可以判定任何给定的算法是否会停止的元算法。同样,可以判定任何给定的拼块组合能否密铺平面的元算法也不存在。
然而,多米诺问题和停机问题的不可判定性都来自算法需要回答的问题与一个无穷大系统有关:多米诺问题涉及所有可能存在的拼块组合,停机问题则涉及所有可能输入的算法,这些对象都是无穷多的。我们在第6章已经讨论了复杂系统的某些涌现性质可计算与否的问题。这些不可计算的性质只在某些变量趋近于无限大时才会出现,而这在现实中永远不会发生——在人类的大脑中当然也不会发生。
那么,如果不能证明我们的决定可能在算法上是不可判定的,那么罗杰·彭罗斯提到的哥德尔不完备性定理又如何呢?彭罗斯与我讨论的其实并不是可预测性,而是可计算性,后者比前者稍弱。如果一个过程可以通过计算机算法产生,那么它就是可计算的。目前除量子力学的随机要素之外,自然规律都是可计算的。不过,如果它们是不可计算的,那就会为一些新的东西留出空间,甚至有可能正是不可预测性。
让我们采用彭罗斯提到的一种导出哥德尔定理的方法,他将此方法归功于斯托顿·斯蒂恩。我们从一个有限的公理集出发,想象一个计算机算法,它会从这些公理中一个接一个地生成定理。然后哥德尔表明,在这个公理系统中,总有一个真命题是算法无法证明其为真的。这一命题通常被称为该系统的哥德尔命题[3]。它的构造本身就默认它在系统中是不可证明的。于是,正因为其无法被证明,哥德尔命题才是真命题,但它的真实性只能从系统外才能观察到。
如此看来,似乎由于我们可以看清哥德尔命题的真实性而算法不能,所以人类的认知中存在一些计算机所不具备的东西。然而,关于哥德尔命题的这一特定见解仅仅对于这一特定的算法才是不可计算的。我们能看清其真实性的原因在于,我们对该系统的了解比生成所有这些定理的算法更加全面——我们知道算法本身是如何编写的。
如果我们把这些信息提供给一个新的算法,那么它就能像我们一样,看清前一个算法的哥德尔命题的真实性。但之后我们可以为这个新算法构造另一个哥德尔命题,然后再构造一个能够识别新的哥德尔命题的算法,以此类推。因此,彭罗斯认为,由于我们可以看清任意一个哥德尔命题的真实性,所以我们的能力比任何能构想出的算法都要强。
这一观点的问题在于,根据我们目前的判断,经过适当编程的计算机算法具有和我们一样的抽象推理能力。我们计算无穷大的能力肯定不比计算机强,但是我们可以分析无穷大系统,包括可数无穷大与不可数无穷大。可是算法也做得到这一点。于是,哥德尔定理本身就已经在算法上得到了证明。6因此,存在一些同样可以“看清所有哥德尔命题的真实性”的算法。
对于彭罗斯的主张,还有许多其他反对意见,但其中大多数都可以归结为:如果没有比计算机掌握更多的信息(比如哥德尔定理),那么人类也同样无法看清哥德尔命题的真实性。然而,我确实觉得,人类会认为∀x﹁PrfF(x,┍GF┑)[4]显然为真是一个很美妙的想法7,这是只有数学家才能想到的思路。
计算机能独立证明哥德尔定理吗?这是一个悬而未决的问题。但至少到目前为止,彭罗斯的观点并没有表明人类的思维是不可计算的。
到目前为止,我们还没有找到任何可以让人类行为变得不可预测的漏洞。但是混沌呢?混沌是决定论的,但仅仅只是决定论的,也并不意味着它可以被预测。事实上,混沌对可预测性的影响可能比我们想象中的还要大,因为存在蒂姆·帕尔默所说的“真正的蝴蝶效应”。8
一般的蝴蝶效应指的是混沌系统的时间演化对初始条件极其敏感,哪怕是小到不能再小的差异(中国的一只蝴蝶扇动翅膀)也有可能会在日后产生极大的影响(得克萨斯州的龙卷风)。而真正的蝴蝶效应指的是,即使初始数据再怎么精确,最终也只能在有限时间内进行预测。表现出这种行为的系统是决定论的,但同时也是不可预测的。
然而,尽管数学家已经确定了一些与这种行为相关的微分方程9,但我们仍不清楚真正的蝴蝶效应是否真的在自然中存在过。量子理论从最开始就不是混沌的10,因此不会被真正的蝴蝶效应所影响。在广义相对论中,奇点(比如黑洞内部或者大爆炸)可以限制我们无法做出超过有限时间的预测,然而,正如我们之前所讨论的,这些奇点可能只是表明理论失效了,我们需要用更好的理论来取代它。如果有一天,量子力学可以将广义相对论补充完整,那么后者也不可能会引发真正的蝴蝶效应。
打破可预测性的最佳候选者是天气预报(和“一般的”蝴蝶效应有些类似)。在这种情况下,我们采用的动力学定律是描述气体和流体行为的纳维-斯托克斯方程。该方程是否总是具有可预测的解?这依然是未解之谜。事实上,它在克莱数学研究所的千禧年难题[5]榜单上位列第四。11
但是纳维-斯托克斯方程并不是基础的,而是从组成气体或流体的粒子行为中涌现的。而我们已经知道,从根本上(最低层级)来说,气体是由量子理论描述的,所以其行为是可预测的,至少在原则上是可预测的。这并没有回答纳维-斯托克斯方程的解是否总是可预测的问题,但如果答案为否,那一定是因为方程没有考虑量子效应。
到目前为止,我们似乎没有理由认为人类的行为是不可计算的,也没有理由认为人类的决策在算法上是不可判定的,并且没有理由认为人类的行为只能在有限时间内可预测。尤其是考虑到第4章里有关替换神经元的内容,似乎我们完全可以在计算机上模拟大脑,从而预测人类行为。
然而,物理学在这条路上设置了一些障碍。也许其中最重要的一点是,替换神经元与复制神经元有所不同。我们如果想要预测一个人的行为,首先必须建立一个可靠的人脑模型。为此,我们必须以某种方式测量大脑的性质,然后将这些信息复制到我们的预测机器中。但是在量子力学中,我们不可能在不破坏原系统的情况下完美复制该系统的状态。这一不可克隆原理使得我们无法完全掌握别人的大脑里到底发生了什么,因为一旦掌握就意味着信息已经发生了变化。因此,如果任何与你的思想有关的细节都以量子的形式存在,那么它们就是“不可知的”,因此也是不可预测的。
然而,量子效应实际上可能对于准确定义你的大脑状态并不重要。但即使量子效应无关紧要,在预测人类行为的路径上也还有另外一重障碍。我们的大脑并不是特别擅长处理困难的数学问题,但是在做出复杂决定方面却表现得相当高效——而它的运行功率只有20瓦左右,相当于一台笔记本电脑的功耗。如果你能在电脑上模拟出人脑,那么电脑能否比它试图模拟的大脑运行得更快就要打上一个大大的问号了。用斯蒂芬·沃尔夫拉姆创造的术语来说,人类的思维可能是可计算的,但并不是“可计算还原”的,因此在某种意义上来说是不可预测的,因为计算可能是正确的,但是效率太低了。
我们的部分行为是不可计算还原的,这并不是一个难以置信的猜想。人类的大脑经历了数十万年的自然选择而得到了优化,如果有人想要预测它,那么首先就得造出一台能做同样事情的机器,而且运行速度还要更快。然而,同样出于自然选择的原因,人类大脑也不太可能真的就能以最快的速度完成我们的大脑所进行的计算。自然选择的目的并不是为了提出最好的整体解决方案,而是满足生存的需求即可。如果考虑到计算机并不需要像大脑这么节能,那么我估计它的运行速度有可能会超过人类的大脑。但这很困难。
出于同样的原因,我敢打赌,我们永远都不可能像萨姆·哈里斯(Sam Harris)所说的那样,从我们收集到的关于人脑的知识中推导出道德。即使这是有可能做到的,那也要花上太多时间。如果想要知道我们的政治、经济和金融体系是什么样,那么直接找一个人问一问他的想法比这要简单得多,至少也可以问出他们应该做出怎样的行为。
总而言之,我们没有理由认为人类行为在原则上是不可预测的,但有充分的理由认为在实践中做出这样的预测非常困难。