打开网易新闻 查看精彩图片

在之前的文章中,我介绍了为了生成分形而迭代复数的历史和基础知识。从朱莉娅集合开始,我们通过定义和绘制曼德布罗特集合到达分形几何的心脏。

打开网易新闻 查看精彩图片

我们最初的好奇心确实得到了满足,就像数学中的许多发现一样,曼德尔布罗特集合的发现只会把我们带到一个新的问题领域,分形是否存在于不同的数系中?更具体地说,曼德尔布罗特集的三维对等物是什么?

序言

打开网易新闻 查看精彩图片

  • 鲁迪·洛克

一个叫鲁迪·洛克是一位杰出的数学家、计算机科学家和科幻小说作家,也是赛博朋克文化运动的创始人之一,他一直走在STEM世界的前沿(STEM是一门课程,其思想是通过跨学科和应用的方法对四个特定学科(科学,技术,工程和数学)的学生进行教育)。因此,在伯努瓦最初发表之后,他就敏锐地意识到了曼德尔布罗特集。富有创造力的洛克欣赏曼德尔布罗特集合,但是他的小说想象力将他推进到下一个步骤:存在一个数学上等价的曼德尔布罗特集合的3D结构。

不幸的是,洛克了解硬件的计算极限(80年代),知道所需的数十亿次计算可能是不可能的。受当时技术的限制,洛克做了他最擅长的事:他把它写下来。1987年,洛克以一篇题为《如上所述,如下所述》的短篇小说首次以3D的形式写出了寻找圣杯(数学上等价的曼德尔布罗特集合的3D结构)的证据,这是理所当然的。在这篇小说中,他想象了曼德尔布罗特的发现,并将其命名为:曼德尔球

打开网易新闻 查看精彩图片

打开网易新闻 查看精彩图片

打开网易新闻 查看精彩图片

早期的
尝试

寻找三维等价物的关键在于数字系统中的不确定性。曼德尔布罗特集适合二维空间,因为复数有两个分量。我们能在三维空间中找到类似的数字系统吗?

数字系统问题

遍历的曼德尔布罗特公式 (Z^2 + C)涉及两个操作:求和和复数的平方。创建一个可以进行加法运算的n元数组是很简单的,这就是线性代数中的向量空间。

但是,由于曼德尔布罗特公式还涉及到对数字进行平方,这需要在向量空间上使用乘法运算符(向量积),因此就产生了复杂性。具有向量乘积的向量空间称为域上的代数。为了了解为什么三维数字系统会有问题,让我们尝试创建一个。

我们从复数开始并引入第三个分量j。接下来,我们需要保证复数和实数的某些性质也适用于我们的新数字系统;因为我们需要加法和乘法,所以我们特别关注保持结合律(a(b+c)=(ab)+(ac))和交换律(ab=ba)不变。

我们已经知道在向量空间中进行加法时分配律是成立的,所以我们只需要明确三个分量的单位是如何相乘的(我们会用乘法表来说明这一点)。当乘以1时,这两个性质意味着一致性,这意味着我们的矩阵必须是对称的:

打开网易新闻 查看精彩图片

对于任何泛函数系统,任何数乘以1仍然是1,如果我们现在要求实虚分量以一种特定的方式表现,我们只剩下三个分量——上面矩阵中的问号。

很遗憾,我们上面的系统显然没有关联性,这可以从方程 i(ij)=(ii)jix=j看出,无论我们如何选择x,它都不能满足。

四维四元数

以上强调了在三维中创建一致的数字系统的最大障碍。然而,第一个突破在逻辑上绕过了这里列出的问题,利用了一个几十年前的定理:赫维茨定理。赫维茨定理是一个复杂的技术术语大杂烩,针对复杂性进行了优化:

该定理指出,如果二次形式在代数的非零部分将同态定义为正实数,那么代数必须与实数、复数、四元数或八元数同构。

上面简单的翻译为:对于我们的数字系统有某些操作(乘法/除法),他们必须在四个数学空间中的一个:实数(1D),复数(2D),四元数(4D)和八元数(8D)。

没有3维系统。

因此,基于这个理论,一个名叫艾伦·诺顿的人试图用四元数(4D)系统找到3D曼德尔布罗特等价。他的论文(发表于1982年)展示了通过展示4D空间的3D“切片”而完全实现的四元数朱莉娅集,这里有一个四元数朱莉娅分形的例子:

打开网易新闻 查看精彩图片

  • 四维四元朱莉娅集

自然地,为了使一个四维物体形象化,你必须进行某种形式的维度缩减。最常见的方法是制作一个三维横截面,只需将四个元素中的一个保持在一个固定的值。不幸的是,虽然上面设置的四维朱莉娅集确实很吸引人,但在搜索四维曼德尔布罗特时,将四个分量中的一个保持在一个固定的值会造成二阶问题。通过强制元素保持固定,任何曼德尔布罗特创建的四都会自动在至少一个轴上对称:

元数

打开网易新闻 查看精彩图片

曼德尔球

在接下来的20年里,几乎没有什么表现。因此,对3D曼德尔布罗特集合的搜索直到2007年才有进展,当时一位名叫丹尼尔·怀特的业余数学家在参考体系中提出了一个深刻的转变。

怀特的洞察力,他的贡献,是从几何学上解释了曼德尔布罗特的定义——这使得在3D中工作更加实用。他没有像在2D曼德尔布罗特中那样绕着圆旋转,而是在三维球坐标(x,y,z)中绕着φ和θ旋转。

回想一下,曼德尔布罗特集强调了转义行为,即从变化复杂常量开始并遍历Z^2 + C。怀特的目的是复制这种几何的边界—极限关系。与曼德尔布罗特一样,在概念上,怀特设想将一个超级复杂的点(Z)平方以得到一个新的点,然后添加剩下的常数(C)。实际上,它有点复杂,因为平方增加了量级或到新点的距离;然而,在加C之前这个新点的方向是什么?

2007年11月,丹尼尔·怀特在网上首次发布了以下著名公式:

打开网易新闻 查看精彩图片

下面,我们将提供一种视觉效果,希望能帮助你直观地理解怀特的方法。之后,我们将逐步遍历上面代码的逻辑。我们试图在函数Z中拟合一组超复数 Z + C。从第一原理出发,让我们画出一个3D平面并随机选择一个点(x,y,z):

打开网易新闻 查看精彩图片

double r = sqrt (x*x + y*y + z*z);
double yAng = atan2 (sqrt(x*x + y*y), z);
doubnt zAng = atan2 (y , x);

在(r)上方的起始线,就是3D中的距离公式。在分形世界中,这是原始公式Z的第一步。另一种看待这个的方法是r是向量的大小,它是旧点和新点之间的距离。然而,如上所述,这使我们缺乏方向——我们不知道这个新点在什么方向上。

这就是为什么接下来的两条线着重于提取角度。在上面的图中,yAng映射到φ,它是高度角;zAng映射到θ,作为x和y方向的夹角。

newX = (r*r) * sin( yAng*2 + 0.5*pi ) * cos(zAng*2 +pi);
newY = (r*r) * sin( yAng*2 + 0.5*pi ) * sin(zAng*2 +pi);
newZ = (r*r) * cos( yAng*2 + 0.5*pi );

接下来的内容要抽象得多。似乎每一行都是为了在二维复平面中再现曼德尔布罗特迭代的动力学,特别是使角度加倍。为什么这些三角恒等式有一半的偏移?尽管差异是一致的机制的3D数字系统,这意味着可能有整个家族的三维分形,取决于角度系数和偏移量的选择。

幸运的是,代码的其余部分非常简单,因为它包含了将常数(x,y,z)添加到新点(xNew,yNew,zNew);这是到达最后一点的简单添加,然后我们将使用它作为下一次迭代的输入。

正如上面所示,怀特没有用复杂的数学方法,而是用几何方法来解决这个问题。理论上,这种方法可能生成难以捉摸的3D曼德尔布罗特,然而,当它最终渲染时,最初的结果是令人失望的:

打开网易新闻 查看精彩图片

从上面可以看到,怀特方法的输出与添加了轴的曼德尔布罗特集非常相似。就像2D的任务一样,我们很难判断我们到底在寻找什么,这意味着很难判断什么是正确的。合理地说,我们期望3D-曼德尔布罗特在多个方向上包含极端的细节和对称。怀特确实有正确的公式,但他没有在正确的维度上进行搜索。

最初在分形几何中使用的公式,曼德尔布罗特、朱莉娅和法图集的关键,被定义为: Z + C。我们假设这个完全相同的公式会在不同的数字系统中产生相似的结果。另一个名叫保罗·尼兰德的狂热分子对怀特的逻辑很有信心,但对令人失望的输出结果感到失望,于是决定进行试验,将Z提高到不同的幂次。

经过多次尝试和极其缓慢的渲染,尼兰德和怀特终于偶然发现了今天被称为曼德尔球的东西。由于没有明显的客观原因,了这一对相信这是最接近曼德尔布罗特集合的等效物之外,没有明显的客观原因,曼德尔布罗特集合的公式是:Z + C。

打开网易新闻 查看精彩图片

结论

我们终于取得了分形几何领域自1980年曼德布罗特首次发表他的集合以来可以说是最伟大的突破:曼德尔球。它是用更新的公式(Z + C)在三维空间中生成的,它确实包含了曼德尔布罗特集合中所展示的许多属性。它无可争议的视觉魅力和极其详细的细节,正如许多视频所显示的,它还包含了无限的复杂性,就像曼德尔布罗特集一样。

不可否认,它值得分形界的赞美和庆祝,但仍有很大的怀疑,这是否是圣杯?事实上,就连怀特也承认,这很可能只是漫长旅途中的又一步。