在之前的文章中,我介紹了爲了生成分形而迭代複數的歷史和基礎知識。從朱莉婭集合開始,我們通過定義和繪製曼德布羅特集合到達分形幾何的心臟。

我們最初的好奇心確實得到了滿足,就像數學中的許多發現一樣,曼德爾布羅特集合的發現只會把我們帶到一個新的問題領域,分形是否存在於不同的數系中?更具體地說,曼德爾布羅特集的三維對等物是什麼?

序言

魯迪·洛克一個叫魯迪·洛克是一位傑出的數學家、計算機科學家和科幻小說作家,也是賽博朋克文化運動的創始人之一,他一直走在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^8 + C。

結論

我們終於取得了分形幾何領域自1980年曼德布羅特首次發表他的集合以來可以說是最偉大的突破:曼德爾球。它是用更新的公式(Z + C)在三維空間中生成的,它確實包含了曼德爾布羅特集合中所展示的許多屬性。它無可爭議的視覺魅力和極其詳細的細節,正如許多視頻所顯示的,它還包含了無限的複雜性,就像曼德爾布羅特集一樣。

不可否認,它值得分形界的讚美和慶祝,但仍有很大的懷疑,這是否是聖盃?事實上,就連懷特也承認,這很可能只是漫長旅途中的又一步。

相關文章