您当前的位置:首页 > 学习 > 阅览室

3 分钟读懂曼德博集合:迭代公式、逃逸时间与朱利亚集合的关联逻辑

时间:12-13来源:作者:点击数:
CDSY,CDSY.XYZ

曼德博集合(Mandelbrot set)到底是个什么东西呢?简单来说,它是一个二维点的集合。要定义它,我们需要先来到一个叫作复平面(complex plane)的数学世界里。

我们把复平面上的每一个点,也就是每一个复数\(c\),都拿来做一场“迭代测试”。测试的规则是这样的:我们从一个初始值\(z=0\)开始,然后反复地套用这个函数公式\(f_c(z)=x^2+c\)。也就是说,我们先算出\(f_c(0)\),得到一个结果,然后再把这个结果带入函数,算出\(f_c(f_c(0))\),再把新结果带进去……如此循环往复。

如果在这一连串的迭代过程中,产生出来的数值序列 )始终被“束缚”在一个有限的范围内,其绝对值不会奔向无穷大,那么,恭喜你,这个复数\(c\)就是曼德博集合的一员。

比如\(c=-1,-2,i,1,0.5\)时,所产生的序列如下表格所示:

图片

说起来,这个集合最早并非由曼德博本人发现。在 1978 年,数学家罗伯特·W·布鲁克斯和彼得·马特尔斯基在研究克莱因群时已经定义并画出了它的草图。但真正让它惊艳世人的,而是两年后。

▲1978 年, 罗伯特·W·布鲁克斯 (Robert W. Brooks) 和彼得·马特尔斯基 (Peter Matelski) 首次发表了曼德布洛特集的图片
▲1978 年, 罗伯特·W·布鲁克斯 (Robert W. Brooks) 和彼得·马特尔斯基 (Peter Matelski) 首次发表了曼德布洛特集的图片

1980 年,本华·曼德博(Benoit Mandelbrot)在 IBM 的研究中心,第一次用计算机为它绘制出了一张图像。而当那张图像生成时,它那令人难以置信的视觉复杂性与美感,才第一次完整地展现在人类眼前。

曼德博集合的图像,拥有一个复杂到令人难以置信的边界。当你不断放大这个边界时,总能看到层出不穷、越来越精细的递归细节;从数学上讲,曼德博集合的边界其实是一条分形曲线(fractal curve)。更有意思的是,这些递归细节的“风格”还各不相同,具体长什么样,取决于你放大的是边界的哪个区域。

那么,这些绚丽的图像是怎么画出来的呢?其实原理并不复杂,用所谓的“逃逸时间”来选择颜色。

图片

你可以想象计算机像一个勤劳的画家,在复平面这块画布上,对密密麻麻的像素点逐一进行测试,判断每个点\(c\)生成的序列会不会奔向无穷远。

我们可以把\(c\)的实部和虚部当作图像的坐标。如果一个点生成的序列很快就“逃”了出去,我们就给它涂上一种颜色;如果多花了一些时间才逃出去,就涂上另一种颜色。那要是有些点迭代了很久很久都还没逃出去呢?它们大概率就是属于曼德博集合了,如上图所示会把它们涂成深邃的黑色。

这里有个小窍门:我们怎么判断一个点算不算“逃逸”了呢?数学家已经证明,只要序列里任何一个点的模长\(|z_n|\)超过了 2,它就注定会一去不复返,奔向无穷远。所以,2 就成了一个绝佳的“逃生门槛”。

实际计算中,迭代 100 次或 1000 次就足够判断了,当然次数越多越精确。

更有意思的是,如果我们换个玩法:固定住参数\(c\)不变,而是去改变迭代的初始值\(z_0\),我们会得到什么呢?答案是另一族同样绚丽的分形图像,它们被称为朱利亚集合(Julia set)。

尽管规则很简单,曼德博集合却因其视觉上无限的复杂性而闻名于世,甚至在数学圈外都成了一个标志,常常被当作“数学之美”的典范。

更为严格的定义

现在不妨用更严谨的数学语言来描述一下。曼德博集合\(M\)指的是这样一类复数\(c\)的集合:对于这些\(c\)值,二次多项式\(P_c(z)=z^2+c\)的临界点\(z=0\)所生成的轨道(orbit)始终保持有界。

换句话说,一个复数\(c\)能不能入选,就看从\(z_0=0\)开始反复迭代\(z_{n+1}=z^2_n+c\)后,得到的整个序列\(z_n{^\infty_{n=0}}\)是不是始终“安分守己”的被圈在一个有限的范围里。

举两个例子:

如果我们取\(c=1\),迭代序列是\(0,1,2,5,26,...\),这个序列显然会奔向无穷大。所以,数字不属于曼德博集合。

反过来,如果我们取\(c=-1\),迭代序列则是\(0,-1,0,-1,0,...\),这个序列明显是有界的。因此,数字\(-1\)确实属于曼德博集合。

除了这个基本定义,数学家还从另外两个视角来看待它。

第一个视角是“连通性”。它和另一个神奇的数学对象——朱利亚集合(Julia set)密切相关。对于我们选定的每一个\(c\)值,都会对应一个独一无二的朱利亚集合。有的朱利亚集合是一整块连在一起的完整图案,我们称之为连通的(connected);而有的则是碎裂成无数个小点的“尘埃”。

从这个角度看,曼德博集合就可以被定义为所有那些能生成连通的朱利亚集合的\(c\)值的集合。换句话说,它像是一个“参数地图”,标出了所有能产生“完整”朱利亚图案的\(c\)点。

第二个视角是“分岔”。曼德博集合的边界称为这个二次函数族的分岔轨迹(bifurcation locus)。“分岔”是什么意思呢?想象一下,在这些边界点\(c\)附近,系统的动态行为会发生剧烈的、戏剧性的变化。也就是说,你只要把\(c\)的值稍微挪动一点点,迭代序列的长期行为(比如是保持有界还是奔向无穷)就会突然从一种状态跳转到另一种状态,就共同勾勒出了那条我们看到的、无限复杂的边界线。

CDSY,CDSY.XYZ
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐