探索德容吸引子
四个数字,创造无数种数学纹理
如果让你设计一幅抽象画,你可能会需要:画笔、颜料、颜色,并且需要很长时间才能完成。
但如果告诉你:这幅画只需要四个数字,你可能不会相信。
德容吸引子 就是这样一种奇妙的数学图形。它从一个简单的点开始,让这个点按照一套固定的数学规则不断移动,而控制这一切的,主要就是四个参数:a、b、c、d。
只需要稍微改变这四个数字,原本的图案就可能变成完全不同的样子:有时候像烟雾,有时候像云彩,有时候像墨水,有时候又像细密交织的丝绸。
这就是 德容吸引子 最迷人的地方:四个数字,可以打开一个充满无限可能的数学纹理世界。
先不要管公式
第一次看到德容吸引子,你完全不需要知道它的数学公式
只需要想象:画布上有一个点,这个点现在在某个位置。数学规则看了一眼它的位置,然后告诉它:“下一步去这里。”
点移动。到了新的位置之后,规则再次计算:“下一步去这里。”
于是它再次移动。然后再计算,再移动,不断重复。
第一步:点 → 计算 → 移动
第二步:点 → 计算 → 移动
第三步:点 → 计算 → 移动
……
一开始,你可能什么都看不到,只有几个零散的点。
但是计算次数越来越多,轨迹开始积累。最后,一幅复杂的图案慢慢出现。
它不是随机生成的
看到这里,你可能会产生一个疑问:“这不就是随机生成的噪点吗?”
其实不是。德容吸引子的每一步,都由确定的规则决定。如果初始位置相同,参数相同,计算规则相同,那么最终得到的结果也会相同。
所以它并不是随机扔点,而是 按照规则不断走。这也是它和普通随机噪声最重要的区别。
但为什么看起来又这么“随机”?
这正是它有趣的地方。
一个点只做一件非常简单的事情:根据当前位置计算下一步。
可是这个过程会重复成千上万次,而这一次的结果,又会成为下一次计算的输入。于是,第一步影响第二步,第二步影响第三步,第三步影响第四步……经过几十万次计算以后,简单的规则就能够产生非常复杂的整体结构。
所以,复杂的图案,并不一定需要复杂的规则。有时候,只需要让一个简单的规则重复足够多次。
四个数字,就是四个“旋钮”
德容吸引子最有趣的地方之一,就是它的参数非常简单。主要有四个:a、b、c、d
你可以把它们想象成四个旋钮。转动其中一个,点的运动方式就会发生变化。点的运动发生变化,最终留下的轨迹也会发生变化。于是:图案就变了。
只改变一个数字,会发生什么?
这是最值得自己尝试的实验。
先选择一组参数,记住现在的图案。然后,只修改 a,其他三个数字完全不动,重新生成。你可能会发现,原本的图案已经发生了明显变化。
然后恢复 a,再只修改 b,又会得到另一种结构。
这时候你会发现:你修改的只是一个数字,改变的却是整个数学世界。
为什么四个数字有这么大的力量?
因为它们并不是直接决定:“这里画一条线。”“那里画一个圆。”它们改变的是:点下一步如何运动。而下一步的位置,又决定再下一步的位置,所以参数的影响会不断传递下去。
可以简单理解成:参数改变 → 运动方式改变 → 下一步位置改变 → 之后的每一步都改变 → 最终轨迹改变 → 整个图案改变。
这就是德容吸引子最核心的生成过程。
看起来像云,但没有人画云
德容吸引子经常会产生非常柔和的视觉效果:大量点聚集在一起,形成密度不同的区域,有些地方非常密集,有些地方比较稀疏。
于是我们会看到:☁️ 云雾、🖋️ 墨迹、🌀 旋涡、🎗️ 丝带、🌫️ 烟雾等等。
但这些东西都不是数学公式直接指定的,公式没有说:“现在画一朵云。”它只是在不断计算:“下一步去哪里?”。云一样的图案,只是大量简单运动叠加之后自然产生的结果。
这才是德容吸引子和普通图片最大的区别
一张普通的图片,无论它看起来多么复杂,本质上都是 已经存在的像素。
而德容吸引子不一样。你看到的图案,是计算过程中一点一点产生的,它更像 一幅正在被数学绘制出来的画。
所以当你点击重新生成,你并不是从图库里换了一张图片,而是 重新运行了一遍数学规则。
这也是为什么它特别适合自己探索
你可以提前知道:规则是什么。但你不一定知道:下一次会得到什么图案。
这就很像打开一个盲盒,你选择一组参数,点击生成,然后:看看数学会给你什么。
有时候,平平无奇,有时候,非常漂亮。有时候,甚至会得到一种完全没有预料到的结构。
从图案,再回到数学
现在我们已经知道:德容吸引子 是一个不断运动的点。那么,它背后的数学到底是什么?
它通常使用下面两条递推关系:
xn+1 = sin(ayn) - cos(bxn)
yn+1 = sin(cxn) - cos(dyn)
乍一看可能有些吓人,但其实它表达的事情非常简单。
第一条公式:根据现在的 x 和 y,计算下一步的 x。
第二条公式:根据现在的 x 和 y,计算下一步的 y。
然后得到新的 x、y。
再把新的 x、y 放回公式,继续计算,如此重复。
于是,一个点变成了一幅画。
整个过程可以浓缩成:一个点 → 计算下一步 → 移动 → 再次计算 → 再次移动 → 重复很多很多次 → 留下大量轨迹 → 形成复杂图案。
这就是 德容吸引子,它没有直接告诉我们:“我要画什么。”它只规定:“下一步怎么走。”而最终的图案,是这些运动长期积累之后自然出现的。
为什么它叫 吸引子?
你可以先把它理解成:一个点长期运动之后,会被限制在某种结构附近。
这个点不会停下来,它一直运动。但它也不会无限跑向远方,长期来看,它的轨迹会集中在一个特定的区域和结构中。大量轨迹叠加之后,我们就看到了 吸引子。
所以,我们看到的不是一张静态设计好的图,而是一个动态系统长期运动留下的“足迹”。
不同的吸引子,长得都有什么区别?
吸引子 有很多种类,它们并没有规定必须长成同一种样子。
例如:洛伦兹吸引子 更像一只在三维空间中运动的数学蝴蝶。
相泽吸引子 更像一个复杂的三维空间结构。
克利福德吸引子 经常产生细密的抽象纹理。
而 德容吸引子 则特别擅长产生 柔和、细密、充满层次的数学纹理。
所以相对于其他吸引子,德容吸引子 提供的是另一种探索方式:用四个数字,寻找新的纹理。
继续探索数学世界
德容吸引子 是吸引子世界中非常适合探索参数变化的一个例子。
如果你喜欢这种 “改变几个数字,看看数学会创造什么” 的体验,可以继续探索 克利福德吸引子。
如果你更喜欢观察三维空间中的运动,可以尝试 相泽吸引子。
如果你对混沌、天气预测和蝴蝶效应感兴趣,则可以探索 洛伦兹吸引子>。
它们都属于吸引子的世界,但每一个都有自己的性格:克利福德吸引子:参数创造抽象艺术,德容吸引子:参数创造数学纹理,相泽吸引子:规则创造三维结构,洛伦兹吸引子:规则创造混沌与数学蝴蝶。
而 德容吸引子 最值得记住的,就是那四个看似普通的数字:a、b、c、d。它们看起来只是参数。但稍微改变它们,一个完全不同的数学世界,就可能出现。
继续欣赏更多奇妙的数学图形。