蝴蝶效应是病吗?

强烈推荐卢昌海的个人主页。

一个我很喜欢的科普作家。

从巴西的蝴蝶到德克萨斯州的飓风

卢昌海

本文是回应《科幻世界》杂志的草稿而写,但内容比提交给《科幻世界》的版本(即已出版的草稿)略多,且包含了后者因篇幅所限而省略的注释。在写作结构上,这篇文章与已发表的草稿也有一些不同之处。

一.决定论

时间旅行:科学还是幻想?第四节我们提到了混沌理论中的一个概念:蝴蝶效应。这种效应又称对初始条件的敏感依赖,是指在一些(通常是非线性的)物理系统中,初始条件的细微变化都可能对系统未来的演化产生很大的影响。对它一个诗意的描述是,巴西一只蝴蝶扇动翅膀引起的空气扰动,可能会演变成美国得克萨斯州的飓风。这也是蝴蝶效应这个名字的主要由来。本文将简要介绍这一概念及其历史。

我们知道,人类描述自然的努力很大程度上体现在对自然现象时间演变的描述上。这种描述在很多方面都取得了巨大的成功。早在300多年前,I .牛顿就建立了一套被称为牛顿力学的理论体系,对从钟摆、陀螺仪到行星运动等各种自然现象的时间演化做出了极其精确的描述。1846年,天文学家在牛顿力学预言的位置发现了数十亿公里外的太阳系第八大行星海王星,这成为牛顿力学最辉煌的成就之一。

牛顿力学的成功不仅体现在对一些自然现象的精确描述上,还留下了一份非常重要的遗产,那就是决定论的思想。按照这个思路,从一个物理系统在某一时刻的状态,可以推算出其他任何时刻的状态。牛顿力学本身只适合描述一定范围内的力学现象,但这种确定性的思想适用于几乎所有已知的物理规律,甚至包括量子力学,它在某种程度上被公认为是不确定的[注2]。

那么,决定论的广泛适用性是否意味着我们可以在原理上对物理现象做出准确的预测呢?很长一段时间,人们认为答案是肯定的。但是,对比这种在原理上可以做到的准确预测,实际上能准确解决的物理问题却很少。以天体运动为例,只有两体问题才能精确求解。一旦把太阳、地球、月球这三个最熟悉的天体同时考虑进去,就不可能精确求解【注3】。再比如流体运动,只有在一些非常理想的情况下才能精确求解。一旦考虑到粘度等最常见的属性,就无法精确求解。物理学家能精确解决的问题,大多都附加了各种简化条件。但是真正的自然现象从来不满足那些条件,所以没有一个可以精确求解。

幸运的是,有些不能准确解决的问题,与有些可以准确解决的问题非常接近。比如地球绕着太阳转,其他所有天体的影响都相当小,所以这个问题非常接近可以精确求解的两体问题。两者之间的差异可以通过各种方式弥补。正是因为有了这些近似手段(包括数值近似),物理学家才能非常成功地描述许多自然现象的演化,尽管他们很少能准确地解决问题。

二。早期研究

但是任何逼近手段都必然会有误差,所以逼近手段的有效性取决于对误差的控制。随着研究的深入,物理学家开始遇到一些用近似手段无法有效处理的问题。这些问题很多都有蝴蝶效应,使得误差不可控。19世纪末,法国科学家h .庞加莱在对三体的研究中发现了这样一些问题。他在《科学与方法》一书中写道:“初始条件的微小差异可能导致最终现象的巨大差异”,“预测变得不可能”。这也许是对蝴蝶效应最早的清晰描述[注4]。除了三体,流体力学中的湍流问题也是一个无法用近似手段有效解决的问题。据说德国物理学家w·海森堡曾经说过,如果有机会问上帝,他想问问上帝为什么会有相对论。为什么会有湍流?他补充道:“我确信上帝知道第一个问题的答案”——言外之意是,上帝可能不知道为什么会有动荡。

当科学家接触到包括蝴蝶效应在内的现象时,科幻作家也在用自己独特的方式描述类似的现象。比如1955年,美国科幻作家阿西莫夫写了一部小说,叫做《永恒的终结》。在这部小说中,阿西莫夫描述了一群生活在物理时间之外的人,他们可以修改人类的历史,使之更加完善。但他们为人类创造完美历史的努力,无形中扼杀了人类的创造和探索能力,导致在与外星生命的竞争中一败涂地。幸运的是,人类后来发现了这一点,并最终通过时间旅行的方式成功拯救了一切。在这部小说中,阿西莫夫提到,历史上的每一个微小的变化,都可能以一种不可预知的方式改变数百万人的人生轨迹,这显然与蝴蝶效应的表达方式非常相似。这种出现在科幻小说中的近乎预言式的描述,乍一看令人惊讶,其实并不奇怪。因为现实世界本身就是最复杂的自然现象之一,像蝴蝶效应这样的东西早在成为科学研究对象之前就已经出现在人们的日常经验中了。人们常说的“毫厘之差,差之千里”、“牵一发而动全身”,都在一定程度上体现了这种效应。但从那些日常经验上升到清晰的理论表述,就困难得多了。

从19世纪末到20世纪中叶,经过庞加莱、李亚普诺夫、富兰克林、马尔科夫和伯克霍夫的一系列研究,人们终于对这个困难得多的问题有了一定的了解。发现对于满足一定条件的物理系统,只有周期或近周期运动不会因为初始条件的微小变化而发生剧烈变化。根据这个结果,如果运动是非周期的,那么初始条件的微小变化就会对系统的演化产生很大的影响。因此,这一结果不仅确立了蝴蝶效应的存在,而且对其产生条件给出了一定的描述。但当时人们最感兴趣的是周期运动,所以非周期运动的结果在当时的学术文献中很少提及,虽然可以推断。正因为如此,十几年后,当E. N .洛伦兹在数值计算中再次遇到蝴蝶效应时,他仍然感到无比的惊讶。也正因为如此,发现蝴蝶效应的荣誉很大程度上被后人归功于洛伦兹。

3.天气模拟

资深气象学家洛伦茨早在二战时期就在美国军事机构从事气象预报研究。战后,洛伦茨来到麻省理工学院(MIT)继续他的研究。从理论上预测气象变化——尤其是给出长期预测——是气象学家梦寐以求的目标,但要实现这个目标总是很难。这个难度不难理解,因为地球的大气是一个庞大的流体系统,所有流体力学系统的复杂性,包括连上帝都可能不知道其起源的湍流问题,都会出现在大气中。更何况,大气的行为与海洋、地表、阳光等各种复杂的外部条件密切相关。而且大气的成分相当复杂,有些成分的形态,比如水蒸气,经常在气体、液体、固体之间变化。所有这些都使得天气预报成为一项极其困难的任务。

洛伦茨从事气象研究时,理论上预测气象的方法主要有两种。一种叫动力气象学,主要是把大气看成一个流体系统,然后选取一些重要的物理量,比如温度、风速等进行研究。由于问题的复杂性,人们也像切蛋糕一样把大气分成许多区域,每个区域用一个点来表示。显然,这是一个极其粗略的近似,但即便如此,整个大气的状态往往需要数百万甚至更多的变量来描述[注5]。换句话说,即使是求解一个非常粗糙的气候模型,也往往需要处理有数百万个未知数的方程。这无疑是极其困难的(但并非完全没有希望)。除了动力气象学之外,还有一种方法叫天气学,其特点是直接以一些对气候影响最大的大气结构,如各种气旋为研究对象。气象学中使用的许多定律都是描述大气结构的经验定律,而不是像流体力学那样的系统物理理论。从这个意义上说,气象学不像动力气象学那样是基础的。而天气学的优势在于把一些从动力气象学角度看非常复杂的大气结构作为基本单位,有独特的简化。

洛伦茨的方法主要是天气。经过大量的简化,洛伦茨得到了一个有十四个变量的模型,一两个变量的影响可以忽略不计。即使这样的模型也很难手工计算,洛伦茨决定使用计算机的帮助。那是1959年,比个人电脑的出现早了二十年。洛伦茨使用的机器以今天的标准来看是极其简单的:它巨大而嘈杂,但它的内存只有今天普通个人电脑的几万分之一。经过几个月的努力(主要是编程),Lorenz终于在那台机器上运行了他的模拟天气。

四。奇怪的结果

日子悄悄地过去了,洛伦茨和他的同事们偶尔会在模拟天气的演变上打一些小赌来自娱自乐。终于有一天,洛伦茨决定更仔细地分析计算的某一部分。于是他从原来的输出计算结果中选了一行数据——相当于某一天的天气情况——作为初始条件,输入到程序中。机器从当天的数据开始运行,而洛伦茨离开办公室去悠闲地喝杯咖啡。在中国的童话里,有“洞中一日,人间千年”的传说,洛伦茨的一杯咖啡也达到了那种程度。一个小时后,当他回到实验室时,他的模拟世界已经运行了两个月。洛伦茨看到结果吃了一惊!因为新的计算结果和原来的差别很大。这有什么奇怪的?因为这次计算用的初始条件是旧数据,既然初始条件是旧的,结果怎么会相差很大呢?洛伦茨的第一反应是机器坏了,这在当时是常有的事。然而,当他更仔细地检查结果时,他很快排除了这种可能性。因为他发现新旧计算的结果到最后差别很大,但刚开始是相似的,经过一段时间的指数增长,两者之间的偏差完全破坏了相似性。如果机器坏了,这个“常规”过程就没有理由了。

既然机器没有问题,那么究竟是什么原因造成了如此巨大的偏差呢?洛伦茨很快找到了答案。原来,洛伦茨的程序在运行时保留了十几个有效数字,但为了在输出时将同一行中所有变量的值打印出来,他只保留了每个变量小数点后三位有效数字。因此,当洛伦兹以之前输出的数据作为初始条件时,与原来计算中保留了十几位有效数字的数据相比,略有偏差。洛伦茨的计算表明,在他的模拟系统中,这些微小的偏差每四天就会翻倍,直到新旧数据之间的相似性完全丧失。这就是蝴蝶效应。由于这种效应,洛伦茨意识到长期的天气预报注定不可能有高精度。因为我们永远无法得到绝对精确的初始条件,也因为任何计算设备的内存都是有限的,所以我们永远无法在计算过程中保持无限的精度。所有这些误差都会因为蝴蝶效应的存在而迅速扩大,不仅让所有高精度的长期气象预测化为乌有,也让基于决定论的精确预测物理现象的梦想破灭【注6】。蝴蝶效应的发现也让洛伦茨想起了他本科时发生的一件事。那是在20世纪30年代,当时他镇上的很多学生都迷上了弹球游戏,这是一种小球在有很多小针的倾斜桌子上经过多次碰撞后进入特定洞的游戏。当地政府试图以赌博为由禁止该游戏,但该游戏的支持者辩称,这不是赌博,而是一场关于击球准确度的技能比赛。他们的理由一度说服了政府官员,因为当时人们并不知道弹球其实包含了蝴蝶效应,再高明的技巧也无济于事。

洛伦兹奇怪吸引子

动词 (verb的缩写)从蝴蝶到飓风

1960年,即发现蝴蝶效应的第二年,洛伦茨在一次学术会议上粗略地提到了他的发现,但没有公布详细的结果。会后,Lorenz觉得他的模型还是太复杂了,他决定寻找一个更简单的模型。1961年,他从同事B. Saltzman那里得到了一个只有7个变量的流体动力学模型[注7]。洛伦茨很快发现,在萨尔茨曼的模型中,四个变量的值很快就会变得可以忽略不计。因此,这个模型的真实行为可以用一组只有三个变量的方程来描述,这些方程后来被命名为洛伦兹方程。利用这组方程组,洛伦兹再次证实了蝴蝶效应的存在[注8]。1963年,他在《大气科学杂志》上发表了题为《确定性非周期流》的论文,并正式发表了自己的成果。

但无论是洛伦茨的原始论文,还是随后几年的其他相关著作,都没有直接使用“蝴蝶效应”这个名称。洛伦茨本人有时也用海鸥引起的大气扰动来比喻初始条件的微妙变化。“蝴蝶”这个名字在9年后的1972年被使用。那年洛伦茨要在华盛顿的一个学术会议上发表演讲,但他没有及时提供报告的标题。于是会议组织者p·梅里利斯(P. Merilees)为洛伦茨拟定了一个题目:“巴西蝴蝶的扇动会不会在德克萨斯州引发飓风?”(巴西蝴蝶扇动翅膀会不会在德州掀起龙卷风?)。就这样,美丽的蝴蝶随着梅里利斯的想象飞进了科学术语里【注9】。此外,“蝴蝶效应”的命名还有另外一个原因,就是洛伦兹模型中存在一个所谓的奇怪吸引子,从某个角度看起来就像一只蝴蝶展开翅膀(见附图)。但“蝴蝶效应”这个名字的最终流行,很大程度上要归功于美国科普作家格瑞克的科普作品《混沌:创造一门新科学》。这部著作被翻译成多种语言,极大地推动了混沌理论(蝴蝶效应是混沌理论的一部分)在世界范围内的普及。这部作品第一章的标题是“蝴蝶效应”。2004年,蝴蝶效应甚至被搬上了银幕,成为一部科幻电影的片名——尽管这不是一部非常成功的电影。

蝴蝶效应和混沌理论在国际上的流行,一度让很多人产生一种错觉,认为物理学的又一次革命已经到来。在这种“激情”的激发下,这个领域涌现出大量的文章,其中不乏低级浮夸的工作。从物理学的角度来看,蝴蝶效应和混沌理论并不包含新的原理,它们对物理学最大的启示是,形式上很简单的物理定律可能蕴含着极大的复杂性,可能解释比我们曾经认为的更广泛的自然现象。早在洛伦茨的论文发表之前,一些物理学家就注意到了这一点。20世纪60年代初,美国物理学家r·费曼(R. Feynman)在给本科生讲课时非常清楚地阐述了这一点(那些课程的内容被收入了著名的《费曼物理学讲义》)。费曼曾希望人类的下一次智力启蒙能给我们带来理解物理定律复杂内涵的方法。混沌理论的发展部分反映了费曼的希望,但今天我们对这一领域的认识在很大程度上依赖于计算技术的发展,离真正的智力启蒙还很远。真正的智力启蒙会是什么时候?就像洛伦茨的天气,谁也无法准确预测,但我们会拭目以待。

2006年7月23日写于纽约。

http://www.changhai.org/

-

给…作注解

【注1】但后来的研究表明,海王星是在理论预测的位置被发现的(误差小于1),具有一定的偶然性。我将在另一篇文章中介绍这一点。

【注2】量子力学的态演化是确定性的,但量子测量过程是否也是确定性的,争议很大。

【注3】这还是在引力用牛顿万有引力定律描述的假设下。如果改用广义相对论,即使是两体问题也无法严格求解。

[注4]但是,《科学与方法》是一本科学哲学的书,庞加莱在他的学术论文中并没有明确表达类似的结论。

【注5】例如,如果将大气分为长、宽、高分别为100公里、100公里、100米的单元,那么描述整个大气的温度和风速(假设高度为30公里)所需的变量总数约为500万。细分越细,引入的物理量越多,所需变量的数量就越大。

严格来说,由于我们无法得到精确的初始条件,无法在计算过程中保持无限的精度,即使没有蝴蝶效应,绝对精确的预测也是不可能的。但是在没有蝴蝶效应的情况下,误差的影响往往是可控的,蝴蝶效应的出现使得误差的影响变得不可控。另外需要注意的是,这里所说的“基于决定论精确预测物理现象的梦想”并不等同于基于微分方程解的存在唯一性的决定论,后者并不会因为蝴蝶效应而破灭。

【注7】和二十世纪上半叶的那些科学家一样,萨尔茨曼对周期运动更感兴趣,所以他没能在自己的模型中做出类似洛伦兹的发现,尽管他也曾在自己的模型中发现过一些非周期解。

【注8】在这一点上,洛伦茨是很受幸运女神青睐的。他的方程中包含一个叫做普朗特常数的参数,对于水大约是10,对于空气大约是1。洛伦茨和萨尔茨曼都是气象学家,他们的值应该是1对应空气,但实际上他们都用了10对应水。后来的研究发现,如果他们采用了空气对应的普朗特常数,那么那个模型的解就是周期性的,洛伦兹就无法得到他需要的结果。

[注9]但那次讲话的全文当时没有发表。此外,需要提醒读者的是,蝴蝶效应的流行表述在一定程度上具有误导性,让人以为“蝴蝶拍动翅膀”与“德州飓风”之间存在直接的因果关系。其实“蝴蝶拍动翅膀”和“德州飓风”只是指初始条件的细微变化和系统未来演化的巨大变化。“德州飓风”的物理成因取决于无数因素,而不仅仅是“蝴蝶扇动翅膀”。

参考

E.a .杰克逊,《非线性动力学透视》第1卷(剑桥大学出版社,1989)。

E.n .洛伦茨《混沌的本质》(华盛顿大学出版社,1995)。