探索谢尔宾斯基地毯

试试看自己调整参数: : : :

谢尔宾斯基地毯:一块不断被挖空的数学地毯

如果给你一块完整的正方形地毯:

□

然后每次都做一件非常简单的事情:把它分成 9 个相同的小正方形,拿掉正中央的那个,然后对剩下的每一块继续做同样的事情。一次,两次,十次,甚至无限次。最后,你得到的将不再是一块普通的地毯,而是一种充满孔洞、层层嵌套、无论放大多少都能发现新结构的奇妙分形:谢尔宾斯基地毯。

一切从一个正方形开始

谢尔宾斯基地毯的起点非常简单,只有一个完整的正方形。如果用分形构造的语言来说,它就是最初的 起始图形。现在还没有任何复杂结构,没有孔洞,没有纹理,没有分形,只有一块完整的“数学地毯”。

第一次:挖掉正中央

接下来,把这个正方形平均分成 3 × 3 = 9 个完全一样的小正方形,就像一个九宫格。

┌───┬───┬───┐

│   │   │   │

├───┼───┼───┤

│   │   │   │

├───┼───┼───┤

│   │   │   │

└───┴───┴───┘

现在,把正中央的那个小正方形去掉。于是,一个小小的正方形孔洞出现了。

┌───┬───┬───┐

│ █ │ █ │ █ │

├───┼───┼───┤

│ █ │   │ █ │

├───┼───┼───┤

│ █ │ █ │ █ │

└───┴───┴───┘

这就是谢尔宾斯基地毯的第一步。

第二次:继续挖

现在我们还有 8 个小正方形。那么,对这 8 个正方形分别重复刚才的操作:每一个正方形分成 9 个,去掉中央 1 个,于是,1 个变成 8 个,这样 8 个正方形就一共变成 64 个正方形。再下一次,64 个变成 512 个。继续,变成 4096 个。……

这就是递归

谢尔宾斯基地毯的核心是 递归

它的意思其实非常简单:刚刚做完的事情,再对新的对象做一次。

第一次,对整个正方形挖一个洞。第二次,对剩下的 8 个小正方形分别挖洞。第三次,对剩下的 64 个更小的正方形继续分别挖洞。……。规则从头到尾没有改变,一直是 分成 9 个,去掉中央 1 个。

让我们计算一下每次出现的洞的数量。

第一次,1 个洞。第二次,新出现 8 个洞,现在一共有 9 个洞。第三次,新出现 64 个洞,现在一共有 73 个洞。第四次,新出现 512 个洞,现在一共有 585 个洞。所以你在画面上看到的孔洞数量会非常快地增加。

当你把图案迭代几次以后,它看起来很像一块被打了很多孔的地毯。而且这些孔洞不是随机出现的,它们大小不同,但排列非常有规律。大的孔洞里面有小的孔洞,小的孔洞里面还有更小的孔洞。所以它看起来就像 一块拥有无限层次的数学地毯。这就是 谢尔宾斯基地毯 这个名字的由来。

如果你看整个图案,你看到的是一块巨大的地毯。但是,放大其中任意一个保留下来的小正方形,你又会看到一个缩小版的地毯。继续放大,还有。再放大,还是有。理论上,这个过程可以无限继续。这就是 自相似。

什么叫“自相似”?

其实很好理解:整体看起来像局部。

谢尔宾斯基地毯就是一个非常典型的例子。整个地毯由 8 个更小的地毯结构组成。每一个小地毯又由 8 个更小的地毯组成。以无论你站在大尺度还是小尺度,都能发现相似的结构。

一些有趣的事情

谢尔宾斯基地毯的面积会怎么变化?

这是谢尔宾斯基地毯一个非常有趣的数学性质。最开始,面积 = 100%。第一次,我们把正方形分成 9 个,去掉其中 1 个,所以剩下 8/9 ≈ 89%。第二次,剩下的区域再次保留 8/9,所以总面积变成 (8/9)² ≈ 79%。第三次,(8/9)³ ≈ 70%。……。经过 n 次迭代,剩余面积 = (8/9)ⁿ。当 n 越来越大,这个数字会越来越小。所以如果无限次重复,谢尔宾斯基地毯的面积趋近于 0。

可是它明明看起来还这么“大”?

这就是分形非常有趣的地方。你在屏幕上看到一个巨大的、非常复杂的图案,但是从数学极限来看,它的面积却趋近于 0。换句话说,看起来非常“丰富”的结构,却可以拥有趋近于零的面积。这是一种非常反直觉的数学现象。

但它并没有变成“一堆点”

虽然面积趋近于 0,但谢尔宾斯基地毯并不是简单地变成几个孤零零的点。它依然拥有 无限多层结构。你可以放大,再放大,继续放大,仍然能够发现新的几何关系。所以,面积和结构复杂程度是两件不同的事情。一个图形可以 面积越来越小,同时结构越来越复杂。

如果你想稍微深入一点数学,可以了解一下,谢尔宾斯基地毯的分形维数是 log(8) / log(3) ≈ 1.893。为什么?因为每一次,一个正方形被缩小为原来的 1/3,同时,我们保留 8 个这样的正方形。因此,8 = 3ᴰ,于是,D = log(8) / log(3),约等于 1.893。这个数字告诉我们,谢尔宾斯基地毯比一条普通的线复杂得多,但又没有一个完整的二维平面那么“填满空间”。

如果你只是想欣赏图案,完全不需要理解这个数字。但它很好地展示了 分形可以拥有介于整数维度(例如,一维直线、二维平面、三维立体空间)之间的几何结构。

一个非常简单的“数学机器”

谢尔宾斯基地毯不是随机打孔。如果让一个人随机地在正方形上打很多孔,最终得到的图案可能也很复杂,但是,那不是谢尔宾斯基地毯。谢尔宾斯基地毯的每一个孔洞,都有自己的位置,都有自己的大小,也都有自己的层级。它们全部来自同一个规则:3 × 3 分割,去掉中央,再递归。所以,谢尔宾斯基地毯看起来虽然复杂,却拥有非常强的秩序。

你可以把谢尔宾斯基地毯想象成一台机器。机器拿到一个正方形,然后执行这些操作:分成 9 个,去掉中央;接下来,对剩下的 8 个,再次分成 9 个,再次去掉中央;然后,继续,继续,继续。……

机器从头到尾 从来没有改变过自己的规则,但,经过足够多次迭代以后,它制造出了一个极其复杂的图案。

这就是分形最迷人的地方。谢尔宾斯基地毯并没有一张复杂的“设计图”,没有人告诉计算机:“这里画一个大洞。”“那里画一个小洞。”“这里再画一个更小的洞。”所有这些细节,都是递归规则自己产生的。我们只需要告诉它,“每次分成 9 个,拿掉中央的那个。”,剩下的,交给数学。

谢尔宾斯基地毯和普通的地毯有什么区别?

普通地毯是一块完整的二维区域。

而谢尔宾斯基地毯 不断把自己的内部挖掉。第一次,挖一个洞。第二次,在剩余区域继续挖。第三次,继续挖。……。结果,孔洞越来越多,结构越来越复杂,但是,规则始终只有一个。

它和谢尔宾斯基三角形有什么不同?

如果你看过 谢尔宾斯基三角形,那么你一定会发现,这两个图形真的很像。它们的共同点是:简单图形 → 分割 → 去掉一部分 → 对剩下的部分重复 → 无限递归。但它们从不同的图形开始。

谢尔宾斯基三角形 从 三角形 开始,每次分成 4 个小三角形,然后去掉中间 1 个,留下 3 个。它的变化过程是 1 → 3 → 9 → 27 → …。

谢尔宾斯基地毯 从 正方形 开始,每次分成 9 个小正方形,然后去掉中央 1 个,留下 8 个。它的变化过程是 1 → 8 → 64 → 512 → …。

简单的对比是这样,谢尔宾斯基三角形 是三角形里挖三角形,而 谢尔宾斯基地毯 是正方形里挖正方形。它们使用的是非常相似的递归思想,但因为起始图形不同以及分割方式不同,最终形成了完全不同的分形世界。

它和科赫雪花有什么不同?

它们也有一个非常有趣的对比。

谢尔宾斯基地毯 核心是 不断删除。正方形 → 挖掉中央 → 继续挖 → 越来越多孔洞。

科赫雪花 核心则是 不断增加。从一条边开始 → 向外增加新的线段 → 继续增加 → 边缘越来越复杂。

所以可以把它们想成这样,谢尔宾斯基地毯,向里面挖,科赫雪花,向外生长。两者的生成方式不一样,但是都是 通过简单的重复规则,最终创造出无限复杂的几何结构。

从一个正方形,到一个无限世界

如果把整个过程想象成真正的地毯,你似乎一直在挖洞。挖一个,再挖八个,再挖六十四个,再挖五百一十二个。……

洞越来越多,每一个洞越来越小,地毯的面积越来越少。但是,你永远无法真正完成最后一次。因为,没有最后一次。只要还能继续,就还有下一层。这就是谢尔宾斯基地毯最迷人的地方,它是一块永远挖不完的地毯。

最开始,□,只是一个普通正方形。

然后,分成 9 个,挖掉中央。然后,对剩下的 8 个继续做同样的事情。再继续。再继续。……

最终,一个简单的正方形,变成了一个拥有无限层次的分形世界。

它告诉我们:复杂性不一定来自复杂的设计,有时候,只需要一个非常简单的规则,然后让它重复足够多次。

继续探索分形世界

谢尔宾斯基地毯 是分形世界中非常经典的一种结构。

如果你喜欢这种 简单规则 → 不断递归 → 无限复杂,还可以继续探索 谢尔宾斯基三角形,看看同样的“不断挖洞”思想,如何从正方形换成三角形,最终形成完全不同的几何结构。或者 科赫雪花,看看一条简单的边缘,如何不断增加新的细节,最终形成一片无限复杂的数学雪花。或者 列维 C 曲线,看看一条普通的直线,如何通过一个简单的生成元,不断递归、折叠,最终形成复杂的分形曲线。以及 分形龙,看看一条简单的线,如何经过不断折叠,最终形成神秘的龙形结构。

它们的规则各不相同,有的在增加,有的在删除,有的在折叠,有的在铺设。但它们共同展示了分形世界最迷人的秘密之一:一个非常简单的规则,只要重复足够多次,就可以创造出远远超出想象的复杂结构。

你还可以继续欣赏更多奇妙的数学图形,或者查看维基百科上更多关于 谢尔宾斯基地毯 的介绍。

想要在每次打开新标签页时都能看到这些精美的数学视觉效果吗?立即安装 Chrome 插件,将“数学盲盒”设为您的新标签页。🚀

了解详情