← 返回第 7 天导读(大人版) 下载打印:PDF 简体 · PDF 繁體 · 繁體網頁
第 7 课

电脑里的格子咖啡

本课讲 2014 年的一篇论文。科学家 Aaronson、Carroll 和 Ouellette 在电脑里做了一杯“格子咖啡”,真的量出了第 6 课说的那座小山。

适合 10 岁左右约 40 分钟需要:铅笔、彩笔、一位同伴、2 个骰子、黑白棋子各 18 颗(或两色纸片)

1热身:凑近看,站远看

第 6 课说过:咖啡里倒牛奶,乱的程度一直变大,有趣程度却像一座小山,先升后降。今天看科学家怎么真的把它量出来。先玩个看图游戏。

把纸凑到眼前看,再眯起眼睛(或者把纸拿远)看。

凑近看,我看到
眯眼看,我看到
哪种看法更好描述?

凑近看,只有一堆乱点,要说很久。眯起眼睛,一座小房子就出来了,一句话就说完。眯眼就是抹掉小细节,只留下大样子。这一招是今天的主角。

2电脑里的格子咖啡

第 6 课说过,Aaronson 想用电脑做实验。2014 年,他和物理学家 Sean Carroll、学生 Lauren Ouellette 把实验做出来了。

他们在电脑里画了一大张方格图。白格子是牛奶,黑格子是咖啡。开始时,牛奶在上半边,咖啡在下半边。然后,电脑一步一步地玩:

1随便挑一个格子
2再随便挑它旁边的一个格子
3两格颜色不同,就交换
4两格颜色一样,就不动

↻ 重复很多很多次

每一步只动两个格子。重复很多次以后,分界线先变得毛毛糙糙,牛奶和咖啡再慢慢渗到对方那边。最后,整张图变成了乱点。第 3 节图里的上面一排,就是它在三个时刻的样子。

每个格子只和邻居打交道,大家守同一条简单规则。这种格子游戏叫元胞自动机。“元胞”就是小格子,“自动机”就是按规则自己动的机器。所以论文叫“咖啡自动机”。

3两把尺子:直接压,眯眼再压

第 5、6 课讲过:有规律的东西能压缩,乱的压不小。压完的大小,可以粗略地代表“描述要多长”。科学家每隔一段时间给格子图拍一张“照片”,用两把尺子量一量。

尺子怎么量量的是什么
尺子 1把原图直接交给压缩软件,看压完有多大乱的程度(熵)
尺子 2先眯眼,再把眯眼后的图交给压缩软件,看压完有多大有趣程度(复杂程度)

电脑怎么“眯眼”?它把一小块格子合成一个大格子。大格子里大多是白,就涂白。大多是黑,就涂黑。差不多一半一半,就涂灰。科学家把这一招叫粗粒化。

原图(凑近看)眯眼后(站远看)开始中间最后眯眼:把 6×6 个小格子合成 1 个大格子。大多是白涂白,大多是黑涂黑,一半一半涂灰。

为什么一定要眯眼?

看“最后”那张原图:全是乱点。压缩软件找不到规律,只能一格一格照抄,压完最大。不眯眼的话,最乱的图会被当成“最复杂”。可它一点也不有趣,只是乱。

眯眼以后,乱点抹成一片灰,一句话就说完。眯眼抹掉乱细节,留下大样子。尺子 2 量的,就是大样子有多复杂。

4结果:真的有一座小山

步数(时间) 尺子 1:乱的程度 尺子 2:有趣程度 一张格子图 步数(时间) 小格子图 大格子图 小图和大图的有趣程度

示意图:只画形状,不是真实数据。

用尺子 1 量,乱的程度一路往上走,最后不再变。用尺子 2 量,有趣程度先上去,再下来,真的像一座小山。换别的压缩软件,小山的形状也没变。

格子图越大,小山越高。换成更大的格子图再做,小山更高,山顶也来得更晚。可以这样想:大杯咖啡能冒出更多花纹,混匀也要更久。

要说清楚:这是电脑实验,不是证明。科学家看到了小山,可是还没有严格证明它一定会出现。

5一定要“挤一挤”

科学家还做了另一个版本,我们叫它“幽灵牛奶”。两个版本比一比:

挤一挤版本(第 2 节那个)幽灵版本
怎么动每格只放 1 个。牛奶和咖啡只能和邻居换位置,互相挡路。每颗牛奶自己乱走,不管别人。一个格子能叠好几颗。
有没有小山有几乎没有(科学家先修好了眯眼规则的小毛病,去掉了分界线上的“假花纹”)

可以这样想:幽灵牛奶互不打扰,眯眼看是从上到下慢慢变深,几句话就说完。挤一挤的版本里大家互相挡路,会冒出不规则的形状。结论是:粒子之间要互相影响,有趣的花纹才会明显出现。

6这和今天有什么关系

聊天 AI 要学的,也是“眯眼后的样子”。ChatGPT、Claude 这些聊天 AI 读过海量的文字。它们要学规律,不是背下每个字。第 5 课讲过,会猜就会压缩。2023 年,DeepMind 公司的科学家真的把这种猜字程序当压缩软件用,压文字比普通压缩软件还小。

也要说清楚不足。这篇论文没有造出 AI。它的压缩软件只会找“重复”,认不出漩涡。怎样分清“有意义的样子”和“乱细节”,科学家今天还在想。

7动手:方格纸上的格子咖啡

玩法(2–3 个人,约 20 分钟)

1. 画 6×6 方格(每格约 3 厘米)。上 3 行放白子(牛奶),下 3 行放黑子(咖啡)。

2. 掷两次骰子定第几行、第几列。这个格子有不同色的邻居,就交换,记 1 步(不止一个时,让同伴闭眼指一个)。没有就重掷。

0 步

3. 走到 10、20、30 步时,描下棋盘,写下描述它要几句话。

10 步20 步30 步
要句话
要句话
要句话

你会发现:0 步时 1 句话就够。后来分界线弯弯曲曲,要说好几句。再走下去,黑白越来越乱。

8动手:眯眼打分

玩法(2 个人,约 15 分钟)

1. 橙色粗线把每张图分成 16 个 2×2 小块。数每块的黑格:0–1 个涂白,2 个涂灰,3–4 个涂黑,涂进旁边的 4×4 空格。

2. 一人描述,一人背过身照着画。数一数原图和眯眼后的图各要几句话。

图 A图 B图 C
原图 → 眯眼后
(右边你涂)
原图要几句
眯眼后要几句

你会发现:原图里图 C 最费话。眯眼后图 C 是一片灰,最费话的变成图 B。A、B、C 就像开始、中间、最后,眯眼后的句数是一座小山。

9词语小卡片

元胞自动机格子游戏:每个格子只看邻居,按同一条规则变化。
眯眼看(粗粒化)把小格子合成大格子,抹掉乱细节,留下大样子。
熵(乱的程度)原图直接压缩后的大小。越乱,压完越大。
复杂程度(有趣程度)先眯眼再压缩后的大小。太整齐、太乱都小。

10想一想

  1. 不眯眼,直接压缩原图,为什么最乱的图会被当成“最复杂”?
  2. 如果眯眼时把整张图合成 1 个大格子,开始、中间、最后三张图还分得出谁有趣吗?为什么?
  3. 挤一挤的版本有小山,幽灵版本几乎没有。你身边还有什么花样,是大家互相挡路才出现的?
一句话记住:直接压缩量出乱的程度,眯眼再压缩量出有趣程度,它像一座小山。

给家长和老师:本课讲的是 Scott Aaronson、Sean M. Carroll、Lauren Ouellette 2014 年的论文 Quantifying the Rise and Fall of Complexity in Closed Systems: The Coffee Automaton。论文用 gzip 压缩精细状态估计熵,粗粒化后再压缩估计“表观复杂度”:熵单调上升,复杂度先升后降;3 档阈值有边界伪影,改用 7 档加行多数修正后,非交互模型(讲义的“幽灵牛奶”)几乎不出现复杂度;网格越大,峰值越高、出现越晚。作者承认这还没有严格证明。

示意与简化:第 3 节格子图是我们按交互模型规则在 48×48 网格上自己跑的模拟(6×6 粗粒化、3 档),不是论文原图,“最后”一张挑了没有边界伪影的时刻;第 4 节曲线只示意形状;房子点图随机生成;图 A、B、C 是设计的例子(图 C 每个 2×2 块正好 2 个黑格);动手 1 只在有异色邻居的格子上交换,比论文规则快;“幽灵版本眯眼后很平滑”是帮助理解的说法。规模关系的具体比例见 第 7 天中文导读,代码见 30u30 第 7 天目录(英文)。

极客教育 jikejiao.com 原创讲义 · 2026-10