本課講 2014 年的一篇論文。科學家 Aaronson、Carroll 和 Ouellette 在電腦裡做了一杯「格子咖啡」,真的量出了第 6 課說的那座小山。
第 6 課說過:咖啡裡倒牛奶,亂的程度一直變大,有趣程度卻像一座小山,先升後降。今天看科學家怎麼真的把它量出來。先玩個看圖遊戲。
把紙湊到眼前看,再眯起眼睛(或者把紙拿遠)看。
湊近看,只有一堆亂點,要說很久。眯起眼睛,一座小房子就出來了,一句話就說完。眯眼就是抹掉小細節,只留下大樣子。這一招是今天的主角。
第 6 課說過,Aaronson 想用電腦做實驗。2014 年,他和物理學家 Sean Carroll、學生 Lauren Ouellette 把實驗做出來了。
他們在電腦裡畫了一大張方格圖。白格子是牛奶,黑格子是咖啡。開始時,牛奶在上半邊,咖啡在下半邊。然後,電腦一步一步地玩:
↻ 重複很多很多次
每一步只動兩個格子。重複很多次以後,分界線先變得毛毛糙糙,牛奶和咖啡再慢慢滲到對方那邊。最後,整張圖變成了亂點。第 3 節圖裡的上面一排,就是它在三個時刻的樣子。
每個格子只和鄰居打交道,大家守同一條簡單規則。這種格子游戲叫元胞自動機。「元胞」就是小格子,「自動機」就是按規則自己動的機器。所以論文叫「咖啡自動機」。
第 5、6 課講過:有規律的東西能壓縮,亂的壓不小。壓完的大小,可以粗略地代表「描述要多長」。科學家每隔一段時間給格子圖拍一張「照片」,用兩把尺子量一量。
| 尺子 | 怎麼量 | 量的是什麼 |
|---|---|---|
| 尺子 1 | 把原圖直接交給壓縮軟件,看壓完有多大 | 亂的程度(熵) |
| 尺子 2 | 先眯眼,再把眯眼後的圖交給壓縮軟件,看壓完有多大 | 有趣程度(複雜程度) |
電腦怎麼「眯眼」?它把一小塊格子合成一個大格子。大格子裡大多是白,就塗白。大多是黑,就塗黑。差不多一半一半,就塗灰。科學家把這一招叫粗粒化。
看「最後」那張原圖:全是亂點。壓縮軟件找不到規律,只能一格一格照抄,壓完最大。不眯眼的話,最亂的圖會被當成「最複雜」。可它一點也不有趣,只是亂。
眯眼以後,亂點抹成一片灰,一句話就說完。眯眼抹掉亂細節,留下大樣子。尺子 2 量的,就是大樣子有多複雜。
示意圖:只畫形狀,不是真實數據。
用尺子 1 量,亂的程度一路往上走,最後不再變。用尺子 2 量,有趣程度先上去,再下來,真的像一座小山。換別的壓縮軟件,小山的形狀也沒變。
格子圖越大,小山越高。換成更大的格子圖再做,小山更高,山頂也來得更晚。可以這樣想:大杯咖啡能冒出更多花紋,混勻也要更久。
要說清楚:這是電腦實驗,不是證明。科學家看到了小山,可是還沒有嚴格證明它一定會出現。
科學家還做了另一個版本,我們叫它「幽靈牛奶」。兩個版本比一比:
| 擠一擠版本(第 2 節那個) | 幽靈版本 | |
|---|---|---|
| 怎麼動 | 每格只放 1 個。牛奶和咖啡只能和鄰居換位置,互相擋路。 | 每顆牛奶自己亂走,不管別人。一個格子能疊好幾顆。 |
| 有沒有小山 | 有 | 幾乎沒有(科學家先修好了眯眼規則的小毛病,去掉了分界線上的「假花紋」) |
可以這樣想:幽靈牛奶互不打擾,眯眼看是從上到下慢慢變深,幾句話就說完。擠一擠的版本里大家互相擋路,會冒出不規則的形狀。結論是:粒子之間要互相影響,有趣的花紋才會明顯出現。
聊天 AI 要學的,也是「眯眼後的樣子」。ChatGPT、Claude 這些聊天 AI 讀過海量的文字。它們要學規律,不是背下每個字。第 5 課講過,會猜就會壓縮。2023 年,DeepMind 公司的科學家真的把這種猜字程序當壓縮軟件用,壓文字比普通壓縮軟件還小。
也要說清楚不足。這篇論文沒有造出 AI。它的壓縮軟件只會找「重複」,認不出漩渦。怎樣分清「有意義的樣子」和「亂細節」,科學家今天還在想。
1. 畫 6×6 方格(每格約 3 釐米)。上 3 行放白子(牛奶),下 3 行放黑子(咖啡)。
2. 擲兩次骰子定第幾行、第幾列。這個格子有不同色的鄰居,就交換,記 1 步(不止一個時,讓同伴閉眼指一個)。沒有就重擲。
3. 走到 10、20、30 步時,描下棋盤,寫下描述它要幾句話。
| 10 步 | 20 步 | 30 步 |
|---|---|---|
要句話 | 要句話 | 要句話 |
你會發現:0 步時 1 句話就夠。後來分界線彎彎曲曲,要說好幾句。再走下去,黑白越來越亂。
1. 橙色粗線把每張圖分成 16 個 2×2 小塊。數每塊的黑格:0–1 個塗白,2 個塗灰,3–4 個塗黑,塗進旁邊的 4×4 空格。
2. 一人描述,一人背過身照著畫。數一數原圖和眯眼後的圖各要幾句話。
| 圖 A | 圖 B | 圖 C | |
|---|---|---|---|
| 原圖 → 眯眼後 (右邊你塗) | |||
| 原圖要幾句 | |||
| 眯眼後要幾句 |
你會發現:原圖裡圖 C 最費話。眯眼後圖 C 是一片灰,最費話的變成圖 B。A、B、C 就像開始、中間、最後,眯眼後的句數是一座小山。
給家長和老師:本課講的是 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