Edward N. Lorenz · 1917–2008

洛伦茨

三个方程、一台每秒走一步的电子管计算机,他证明了天气的精确超长期预报是做不到的

X˙=−σX+σY,Y˙=−XZ+rX−Y,Z˙=XY−bZ\dot X = -\sigma X + \sigma Y,\quad \dot Y = -XZ + rX - Y,\quad \dot Z = XY - bZ
《确定性的非周期流》(1963)式 25–27 · σ = 10、b = 8/3、r = 28 · 右边对三个变量的偏导之和恒为 −41/3,所以相体积缩成零,轨道却永不重复

爱德华·诺顿·洛伦茨 1917 年 5 月 23 日生于康涅狄格州西哈特福德。他是学数学出身的:1938 年在达特茅斯学院拿到数学学士,1940 年在哈佛拿到数学硕士,第一篇论文是 1941 年登在《美国科学院院刊》上的《狄拉克方程的一种推广》。战时他在陆军航空队做天气预报,由此转去麻省理工学院读气象,1943 年得硕士、1948 年得博士,此后一辈子没离开过那里:1962 年升气象学教授,1977 到 1981 年任系主任,1987 年退休。他的主业是大气环流与统计预报,可他写成的那几篇最出名的文章,论证全是数学的——相空间、有界性、稳定性的定义、一张极大值对极大值的图。

据 MacTutor 的传记转述,1961 年他在一台电子计算机上跑一个十二个变量的大气模型,想把某一段重看一遍,就从打印出来的中间结果重新起算——可打印的位数比机器里存的少,初值差在第四位小数上,重算的结果不久就与原先的面目全非。他没有把这当作机器的毛病,而是去问:什么样的方程会这样?1963 年的《确定性的非周期流》把答案压到了三个方程:在一个解始终有界的系统里,一条不带过渡成分的非周期轨道,对初值的微小改动一定是不稳的。这件事庞加莱在三体问题里已经看见过,而他把它放进了一个会耗散、会收缩的系统里,并由此断言「精确的超长期预报似乎是不存在的」。据 MacTutor,这篇文章刚发表时反响很小,后来成了被引最多的论文之一。1972 年他在美国科学促进会年会上讲「巴西的一只蝴蝶」,这个说法从此有了名字。1983 年获克拉福德奖,1991 年获京都奖。2008 年 4 月 16 日卒于剑桥的家中,女儿说,两个半星期前他还在远足,一周前刚和同事写完一篇论文。

洛伦茨肖像
《可预报性:巴西一只蝴蝶扇动翅膀,会在得克萨斯引起一场龙卷风吗?》讲稿第一页,美国科学促进会第 139 届年会,1972 年 12 月 29 日 · 麻省理工学院地球、大气与行星科学系曾在网上刊出的扫描件(互联网档案馆 2020 年存档)。页首是会务格式的题录:讲题、作者、时间、地点、所属分会「全球大气研究计划」,右下印着新闻稿的「发布时间」;正文头两段就是那两个命题——蝴蝶能促成一场龙卷风,也就同样能阻止一场

生平

  1. 1917
    生于康涅狄格州西哈特福德

    5 月 23 日。

  2. 1938
    达特茅斯学院数学学士

    两年后在哈佛拿到数学硕士。

  3. 1941
    第一篇论文

    《狄拉克方程的一种推广》,《美国科学院院刊》。随后入陆军航空队做天气预报。

  4. 1948
    麻省理工学院气象学博士

    1943 年先在那里拿了气象学硕士;此后一辈子在麻省理工。

  5. 1961
    从打印出来的中间结果重新起算

    十二个变量的大气模型,初值只差在第四位小数上,重算的结果不久面目全非(据 MacTutor 转述)。

  6. 1962
    萨尔茨曼的对流方程

    萨尔茨曼截断过的对流方程组里,除三个变量之外全都衰减到零,那三个却不规则地起伏;他把方程截到只剩这三个。

  7. 1963
    《确定性的非周期流》

    《大气科学杂志》第 20 卷第 130–141 页,1962 年 11 月 18 日收稿。见本页第一至第四件。

  8. 1969
    罗斯比研究奖章

    美国气象学会。

  9. 1972
    「巴西的一只蝴蝶」

    12 月 29 日上午十点,美国科学促进会第 139 届年会,华盛顿喜来登公园酒店。见本页第六件。

  10. 1983
    克拉福德奖

    瑞典皇家科学院。

  11. 1987
    退休

    麻省理工学院荣休教授。

  12. 1991
    京都奖

    稻盛基金会,授奖理由是发现了确定性混沌。

  13. 1995
    《可预报性:一个解决了一部分的问题》

    欧洲中期天气预报中心讲习班的开场报告,36 个格点围成一圈的那个模型。见本页第五件。

  14. 2008
    卒于马萨诸塞州剑桥

    4 月 16 日,癌症。

展品厅

绝大多数展品都可以亲手把玩——这是本馆的立馆之本;少数以叙述为主的,做成故事展签。

镇馆之宝 · 亲手玩

三个方程,一只永不重复的蝴蝶

三个变量、两个乘积项,从 (0, 1, 0) 出发推六千步:它绕着一个点转几圈、跳到另一个点、再转几圈,永远不重复,也永远不离开那一小块地方。

rc=σ(σ+b+3)σ−b−1=47019≈24.74r_c = \frac{\sigma(\sigma + b + 3)}{\sigma - b - 1} = \frac{470}{19} \approx 24.74

1963 年 3 月《大气科学杂志》第 20 卷上的《确定性的非周期流》。起点是萨尔茨曼 1962 年的一组对流方程:底下加热、上面冷却的一层流体,展开成傅里叶级数、截成有限项,数值积分下去,除三个变量之外全都衰减到零,那三个却不规则地起伏。他干脆只留这三个:X 正比于对流的强度,Y 正比于上升与下沉两股气流的温差,Z 正比于垂直温度廓线偏离直线的程度,σ = 10 是普朗特数,r 是瑞利数与临界值之比,b = 8/3。r 小于 1 时静止是稳的;过了 1,出现两个定常对流点 C 与 C′;r 过了 σ(σ + b + 3)/(σ − b − 1) = 470/19 ≈ 24.74,这两个点也不稳了。他取略超临界的 r = 28,在一台皇家麦克比 LGP-30 上每秒走一步,推了六千步:「Y 在不规则的间隔上变号,有时一个极值、有时两个、有时三个或更多,才换一次号。」这张图后来被叫作洛伦茨吸引子,名字不是他起的;他在文中只说轨道最终被关在一片体积为零的地方。

看轨道从 (0, 1, 0) 出发一步步长出来;右边每格是一圈,记它绕的是哪一个点。换几个 r 看看

前 6000 步里 Z 有 83 个极大值;头 40 圈里换边 9 次。它绕着一边转几圈、跳到另一边、又转几圈,永远不重复,也永远不离开这一小块地方。

印在论文里的那张表,今天重跑一遍

同一个格式、同一个步长、同一个起点,头三十一圈绕哪一边全都对得上,第三十二圈起两份各走各的——那两张表自己就成了他那条结论的证据。

Xn+1=12(Xn+X((n+2))),X(n+1)=Xn+F(Xn) ΔτX_{n+1} = \tfrac{1}{2}\big(X_n + X_{((n+2))}\big),\quad X_{(n+1)} = X_n + F(X_n)\,\Delta\tau

原刊第 136 页印着两张 LGP-30 打出来的表:表 1 是前 160 步、每五步一行;表 2 是前 6000 步里 Z 取极大值的那 83 步。他交代过打印的约定:X、Y、Z 都乘十,只印小数点左边的数字。今天照他第 4 节写明的「双重近似」格式(先走一步欧拉、在那里再走一步、两头取平均,今天叫 Heun 法),Δτ = 0.01,从 (0, 1, 0) 起用双精度重跑。表 1 的 99 格里 86 格逐位相同,12 格差在末位的一个单位——他那台机器的算术与今天的不同,至于是哪一种舍入,试了好几种都复原不出来。剩下一格是 N = 105 的 Z,印作 297,重算 287.13:同表前后两行是 283 与 286,而表 2 说 Z 在第 107 步取到极大值 287,两步之前不可能是 297——这一格是印错。表 2 重跑出来也恰好是 83 个极大值;头 27 个的 Z 相差不过末位一个单位,绕哪一边头 31 圈全同,从第 32 圈起分岔:原表第 2110 步绕 C,重算第 2103 步绕 C′。83 圈里同侧的只剩 50 圈,与瞎猜差不多。方程、步长、起点一样都没改,差的只是两台机器做算术的方式。

表 1 的 99 格里 86 格逐位相同、12 格差末位一个单位,剩下一格是印错;表 2 头 27 个极大值对得上,绕哪一边头 31 圈全同,第 32 圈起两份各走各的。方程、步长、起点一样都没变,差的只是两台机器做算术的方式。

这一圈的最高点,定下一圈的最高点

只记每一圈 Z 的极大值,把「这一圈」对「下一圈」画成点,点落在一条尖顶的细线上;他把它理想化成一个帐篷,由此证明每一条周期轨道都不稳。

Mn+1={2Mn,Mn<122−2Mn,Mn>12M_{n+1} = \begin{cases} 2M_n, & M_n < \tfrac12 \\ 2 - 2M_n, & M_n > \tfrac12 \end{cases}

原刊第 138–140 页。他注意到轨道似乎要超过某个临界距离才会离开一边的螺旋,而离开时甩得多远又决定下一圈绕多少——那么一圈里的某个特征量应当能预报下一圈的同一个量。他挑的是 Z 的极大值 M_n,用表 2 的数把 (M_n, M_n+1) 画出来(图 4):在舍入误差的范围内,那是一条尖顶的曲线,尖顶约在 385。他把它理想化成 M_n+1 = 2M_n(M_n < 1/2)、2 − 2M_n(M_n > 1/2),即今天说的帐篷映射。由此一环扣一环:分母是 2 的幂的那些初值一头撞进无对流的静止态;分母是奇数的分数给出周期序列,2/3;2/5、4/5;2/7、4/7、6/7;2/9、4/9、8/9——只有可数多个;而斜率处处是 ±2,差每走一步翻一倍,所以周期序列全都不稳,其余的轨道就是非周期的。他在实际那条线上读出了近似的周期序列 398;377、410;369、391、414;362、380、419。今天用同一个格式推四十万步重画那条线,四组依次是 398.0;377.2、409.4;369.5、391.7、414.4;363.2、380.3、419.2,与他当年从八十来个点里读出的最多差 1.2。

实际那条线上重算出的周期点 377.2、409.4,与他当年从 83 个点里读出的 377、410 对得上。右边同一个周期从精确的分数出发永远转下去;初值只差 0.0001,8 步后差 0.0256。帐篷的斜率处处是 ±2,实际那条线看上去也处处陡过 45°,所以他断定每一条周期轨道都不稳。

体积缩成零,轨道却不重复

三个方程右边对三个变量的偏导加起来恒等于 −41/3:任何一团点的体积都按指数缩小,绕一圈只剩十万分之七;可它又被拉长、铺开,贴着两片「翅膀」永不重复。

∂X˙∂X+∂Y˙∂Y+∂Z˙∂Z=−(σ+b+1),V(τ)=e−41τ/3 V(0)\frac{\partial \dot X}{\partial X} + \frac{\partial \dot Y}{\partial Y} + \frac{\partial \dot Z}{\partial Z} = -(\sigma + b + 1),\qquad V(\tau) = e^{-41\tau/3}\,V(0)

原刊第 135 页式 30、31:把相空间里的运动看成流体,它的散度是 −(σ + b + 1),与 X、Y、Z 无关。所以每一小块体积都以同一个速率缩向零——「这并不意味着每一小块都缩成一个点,它可能只是被压扁成一张曲面」。第 140 页他算了一笔:绕 C 或 C′ 一圈约 70 步,τ 增加 0.7,体积只剩 0.00007。于是一个矛盾:轨道最后待的那一片看上去是两张在下沿合在一起的曲面,可两条轨道不能合并。他的解答是那只是看上去合在一起——每一张其实是两张,再往下是四张、八张,「一个无穷的曲面复合体」,每一张都极贴近另外一张;它与 0 到 1 之间只用 0 和 1 写的小数一一对应,不可数,测度却是零。今天管这种东西叫分形。这一件与庞加莱那一页的「回归定理」正好相反:那里体积守恒,所以几乎每个初态都会回来;这里体积缩到零,那条定理的前提就不成立了。演示用两条互不相干的路算体积:一条是闭式,一条是把方程和它的变分方程一起积分、取行列式,绕一圈时两者相差不到一亿分之一。

τ = 0.70 时体积只剩原来的 7.002×10−5(变分方程独立算出 7.002×10−5),最长的方向却被拉长到 14.72 倍:这一团点被压成越来越薄的一片,贴着那两片「翅膀」铺开。

误差小十倍,只多换来一周

误差按指数长,所以把观测误差缩小十倍,可预报的期限只往后推一个固定的天数;他 1972 年就说过,小尺度的误差长得更快,这个期限连这点余地都未必有。

dXkdt=−Xk−2Xk−1+Xk−1Xk+1−Xk+F,k=1,…,36\frac{dX_k}{dt} = -X_{k-2}X_{k-1} + X_{k-1}X_{k+1} - X_k + F,\qquad k = 1, \ldots, 36

1972 年那篇讲稿列了四条结果:大尺度的小误差约三天翻一倍,单凭这一条,观测误差每减半就能多报三天;小尺度的误差(比如一朵朵云的位置)几小时甚至更快就翻倍;小尺度的误差长大之后会带动大尺度的误差——所以把小尺度的观测误差减半只能多换来几个小时,「两周以上的预报希望因此大为渺茫」。1995 年他在欧洲中期天气预报中心的讲习班上给了一个能亲手算的模型:36 个格点围成一圈,每格十个经度,时间单位定为五天,每个格点只与左右四个邻居相牵连(式子见上)。F = 8 时他报的误差倍增时间是 2.1 天,F = 10 时 1.5 天;照他的四阶龙格-库塔、6 小时一步,由首个李雅普诺夫指数复算得 2.09 与 1.51 天,演示里一百次实验的误差曲线前段拟合约 2 天。同一篇里还排了一份大气模式的账:六十年代查尼委员会估的是 5 天,1969 年斯马戈林斯基的九层模式降到 3 天,八十年代初欧洲中心的业务模式是 2.1 到 2.4 天,1995 年西蒙斯等人估到 1.5 天——模式越细,倍增越快;他认为主要是分辨率,以前根本抓不到的小尺度特征,误差也许长得比最粗的那些快。

误差先是一条斜直线(倍增 …),然后在饱和处放平。

巴西的一只蝴蝶

1972 年 12 月 29 日上午十点,华盛顿的一间酒店会议室里,一个讲题问:巴西一只蝴蝶扇一下翅膀,会在得克萨斯引起一场龙卷风吗?讲稿最后并没有回答。

那是美国科学促进会第 139 届年会上「环境科学」分会的一场,属于「全球天气的新路子:全球大气研究计划」那个专题;讲稿按会务的格式打字,页首写着讲题、作者、时间、地点,右下角印着新闻稿的「发布时间」。开头他先给自己解围:「为免我连提出这个题目都显得轻浮,更不必说还暗示它可能有肯定的答案……」接着是两个命题——一只蝴蝶扇一下翅膀若能促成一场龙卷风,它此前此后的每一下、千百万只别的蝴蝶、还有包括我们自己在内的无数更有力的生灵,也都能;它若能促成,也就同样能阻止。所以微小的扰动既不增加也不减少龙卷风的次数,至多改变它们出现的先后。真正的问题是那种不稳定性。他承认没法拿大气做对照实验:扰动了它,就永远不知道不扰动会怎样。然后列了数值模拟的四条结果,又补了两个未经证实的疑点:一只蝴蝶的影响局限在很小的一块,也许只在湍流里扩散、在静稳的空气里不会;巴西与得克萨斯分在赤道两侧,热带大气几乎像另一种流体,误差也许过不了赤道。「我们只好把原来的问题再搁几年不答,同时申明我们相信大气是不稳定的。」最后一句说全球大气研究计划的目标「不是精确的预报,而是大气愿意让我们做出的最好的预报」。

故事展签

传承

他的工作没有留在十八世纪——每条链的终点,都是你今天正在使用的东西。

1963:三个方程在有界的相空间里不重复地走下去→奇怪吸引子与混沌成为一门学问:从对流槽、激光到心律→天气预报、气候模式与一切非线性系统的数值模拟,都要先问这个系统混沌不混沌
1963:印在论文里的两张表,同一个格式重跑,几十圈后分岔→舍入误差不只是误差:同一个程序换一台机器、换一种编译,长时间的结果就不一样→数值模拟的可复现性从此成了专门的问题:同一个模式换一台机器重跑,长时间的结果只能在统计上比
1963:每一圈的极大值定下一圈的,理想化成帐篷映射→一维映射成了研究混沌最省事的模型:逻辑斯谛映射、倍周期分岔、费根鲍姆常数→用一张简单的图读懂复杂的非线性系统——从电路振荡到人口模型,都这样做第一步
1969 与 1972:小尺度的误差先长大,再带动大尺度→单一的预报换成一组略有不同的初值一起算:集合预报→今天各大预报中心每天都跑几十个成员的集合天气预报,用它们散开的程度估计这一份预报能信几天
1995:36 个格点围成一圈的洛伦茨-96 模型→资料同化与集合卡尔曼滤波的新方法,常常先在这个模型上试→天气预报的业务模式把全球观测揉进初值之前,那套算法多半先在它身上做过数值模拟

语录

「鉴于天气观测不可避免地不准确、不完全,精确的超长期预报似乎是不存在的。」

—— 《确定性的非周期流》第 8 节,《大气科学杂志》第 20 卷第 141 页(1963);据原文译出

「对于真实的大气,如果别的办法都不行,我们还可以等一个相似态出现。」

—— 同上,全文末段;据原文译出

「一只蝴蝶扇一下翅膀,若能促成一场龙卷风,也就同样能阻止一场龙卷风。」

—— 《可预报性:巴西一只蝴蝶扇动翅膀,会在得克萨斯引起一场龙卷风吗?》,美国科学促进会第 139 届年会讲稿(1972 年 12 月 29 日);据原文译出,大意

「不是精确的预报,而是大气愿意让我们做出的最好的预报。」

—— 同上,讲稿末句,说的是全球大气研究计划的目标;据原文译出