女士們,先生們,老少爺們兒們!在下張大少。
無邊的奇跡源于簡單規(guī)則的無限重復(fù)。
——本華·曼德博(Benoit Mandelbrot)
圖6.1.1是兩張取自自然界的照片,你能看出照片中是什么東西嗎?
a
b
圖6.1.1 a-b 兩張來自自然界的圖片
相信大多數(shù)人都會不屑一顧:"So easy!圖a是一株蕨類植物,圖b是一處峭壁。"
但實際上,現(xiàn)實不似你所見。圖a并不是一株蕨類植物,只是蕨類植物的一片葉子;圖b也不是峭壁,只是公園里的一塊石頭,只有不到1米高。
大多數(shù)人之所以會被欺騙,是因為許多物體在不同尺度下看起來是一樣的。蕨類植物的每個分支都和主造型一致;小石頭看起來像大石頭,而大石頭同一座山似乎也沒太大區(qū)別;小塊的云朵和一大團云的形狀和結(jié)構(gòu)是一樣的;餐盤中切好的一小片菜花依然酷似完整的菜花……
在20世紀70年代,數(shù)學家本華·曼德博(Benoit Mandelbrot)創(chuàng)造了"分形"這個詞來描述這種自相似的物體,這個名字來源于拉丁語詞根"fractus",意思是"斷裂"或"破碎"。也就是說,如果你折斷一個分形的一小部分,它看起來仍然像整體。分形這種特性令人望而生敬,因為造物主似乎只需要一遍遍地重復(fù)一個簡單的過程就能創(chuàng)造出世間萬物;分形還令人望而生畏,因為我們不知道分形何時是盡頭,一個小小的原子里是不是又隱藏著浩瀚的宇宙;當然,分形還令人望而迷惘,因為自相似的特性可以輕松地欺騙我們的眼睛,讓我們無從分辨眼前看到的是事物的整體還是部分。
敬畏與迷惘之中,我們隱隱感到,分形似乎集簡單和復(fù)雜于一身,而且往往帶有無限重復(fù)的規(guī)律。但是,分形究竟顛覆了我們的哪些傳統(tǒng)認知?
理一理凌亂的思路,我認為有兩點:一是尺度,二是維度。下面,我們就以"科赫雪花曲線"這個經(jīng)典的分形圖案為例子來分別談一談。
馮·科赫(Von Koch,1870-1924),瑞典數(shù)學家,貴族出身,家世顯赫。研究數(shù)學和哲學是當時瑞典貴族圈的流行風尚。如今舉世聞名的諾貝爾獎,就是誕生在那個時候的瑞典。科赫自然也跟他身邊的公子闊少一樣趕時髦,毅然投身數(shù)學,成了數(shù)學家。說來也怪,科赫的主要研究領(lǐng)域是數(shù)論,一生發(fā)表了很多篇關(guān)于數(shù)論的論文,但都沒什么影響。他留給世界的最廣為人知的成果,就是這個以他的名字命名的"科赫曲線",因為形狀酷似雪花,所以又稱為"科赫雪花曲線"。
科赫雪花曲線的構(gòu)造方法很簡單。如下圖6.1.2,任意畫一個正三角形,把每一條邊三等分;然后取三等分后的中間一段為邊向外作正三角形,并把這中間一段擦掉;一直重復(fù)這個步驟,畫出更小的三角形,直到無窮,由此畫出的曲線就是科赫雪花曲線。
圖6.1.2 科赫雪花曲線
粗粗一看,這條曲線不足為奇,它無疑是由基本的幾何方法構(gòu)造出來的,構(gòu)造過程也很簡單。但細看后你會發(fā)現(xiàn),它始于正三角形,正三角形由3條線組成,最后得到的雪花形狀依然由3部分組成,每一部分都是完全自相似的,也就是說,把每個局部放大看,你都會看到和原來一模一樣的形狀。如果你對高等數(shù)學稍有了解的話,就會發(fā)現(xiàn)更古怪的事情,正如科赫自己所言,它的古怪之處在于"無切線"??梢?,分形是對微積分的強烈反對。微積分的核心假設(shè)是,物體只要無限放大,看起來就很光滑。但是科赫曲線無論怎么放大都跟原來完全一樣,永遠曲曲折折,有棱有角,不是平滑曲線,它上面處處是尖點,處處不可導(dǎo),處處不可微。那么,由牛頓和萊布尼茨一手打造、后世無數(shù)數(shù)學天才們發(fā)展完善、被認為是現(xiàn)代科學基礎(chǔ)的宏偉的微積分大廈豈不是遭遇了前所未有的沖擊?
不過,對于我們蕓蕓大眾而言,高等數(shù)學畢竟距離我們的生活太過遙遠,也無需我們冥思苦想。正如前文所言,分形真正值得我們苦思冥想的主要在兩個方面:一是尺度,二是維度。
1 尺度之辯——雪花的周長超過地球半徑?
如果有人跟你說,雪花的周長超過地球半徑,那么你肯定認為他胡說八道。但觀察科赫雪花的構(gòu)造過程,你會發(fā)現(xiàn),每一次迭代變換都讓曲線的總長度變成原來的4/3倍。假設(shè),最初的正三角形周長為1,那么迭代一次之后就變成4/3,迭代n次之后就變成(4/3)^n。當n趨近無窮時,雪花曲線的周長必然趨近無窮,也就是無限長。而且,雪花曲線上任意兩點之間沿邊界的路程也是無限長。
而地球直徑卻是有限長的,假設(shè)你有一把巨大的游標卡尺,就能用兩個夾子把地球夾住,從而測出一個長度值。如此說來,雪花的周長顯然超過地球半徑!驚不驚喜?意不意外?
如此說來,曼德博當年創(chuàng)立分形時提出的"英國的海岸線無限長"還是太保守了。其實,海岸邊的一塊礁石、一顆砂礫、一片樹葉……無論什么東西,只要它是粗糙的,周長就全都無限長。
然而,另一件咄咄怪事是,科赫雪花雖然周長無限長,但它的面積卻是有限大的。因為整個雪花圖形被限制在了一個有限的范圍內(nèi),我們隨手畫一個圓圈就能把它圍住。
2 維度之辯——為什么維度可以不是整數(shù)?
常識告訴我們,直線是1維,平面是2維,立體是3維。那么科赫雪花曲線是幾維?
相信多數(shù)人的思維比較經(jīng)典:科赫曲線就是一條直線反復(fù)折疊形成的,折疊再多次,它也是由一條條小小的線段組成的嘛,到頭來還是線,那就應(yīng)該是1維圖形。
但有些人會思考的更細致些:既然迭代次數(shù)趨近無窮,那就不是光憑放大圖形就能看到的,只能憑想象來理解。迭代無窮次之后,小線段的長度趨近于0,也就是變成了一個點。這些點會覆蓋一部分的平面,所以你瞧,隨著迭代次數(shù)增加,雪花邊緣的顏色有些變深了不是?也就是說,它或許已經(jīng)不是一維的線了。如果你認為上圖不夠明顯,那請看下圖6.1.3,這同樣是按照科赫雪花曲線的構(gòu)造方式繪制的圖案,只是線段的夾角不再是60°。圖a是夾角為120°的結(jié)果,最后形成的曲線比較平緩;圖b的夾角為20°,形成的雪花輪廓更加尖銳、曲折;圖c比較極端,直接把夾角設(shè)為0°,最后的結(jié)果是曲線完全填滿了一個等腰直角三角形。如此說來,科赫雪花曲線豈不是變成了二維的平面圖形?
圖6.1.3a-c 科赫雪花曲線的變例
此時,對維度概念的擴展就顯得刻不容緩。維度或許可以不局限于1、2、3這些整數(shù),上面這些既不像一維,也不像二維的曲線大概就是介于1和2之間的某個非整數(shù)維度吧。但是非整數(shù)的維度有意義嗎?非整數(shù)維的圖形又該是什么樣子?記得我年少時第一次從課外書中看到英國的海岸線是1.21維時,感到一臉茫然。這就好比登臺階,你可以一步登一級,也可以步子邁大些一步登兩級;但如果有個人說他一步登1.5級臺階,那不是活見鬼?
的確,非整數(shù)維度的概念是數(shù)學家硬造出來的。畢竟,數(shù)學里的一切都是硬造的,關(guān)鍵在于它對描述世界是否有實際作用。硬造出非整數(shù)維度概念的數(shù)學家是德國猶太人費利克斯·豪斯多夫(Felix Hausdorff,1868-1942),和科赫一樣,這位豪斯多夫也是富二代,此人多才多藝,除了數(shù)學研究成果卓著,還發(fā)表繪畫作品和哲學論著。但是納粹當權(quán)之后,他這個猶太人的好日子就過到了頭,在得知自己和家人將被送往集中營后,他和妻子服毒自盡……
為了理解豪斯多夫提出的維度概念,我們先從普通的整數(shù)維圖形講起。如下圖6.1.4,一條線段可以從中間分成兩段,每一段都和原來一模一樣,只不過變成了原來的一半長。正方形可以從各條邊中點切開,分成4個小正方形,每一個的邊長都是原來的一半。同理,正方體可以從各條棱中點切開,分成8個小正方體,每一個的棱長仍然是原來的一半。豪斯多夫維數(shù)的關(guān)鍵在于,要理解整體如何隨著縮放而改變。線段縮小一半的話,整體也縮小到1/2,因為兩段小的正好組成一條長線。正方形縮小一半的話,整體縮小到1/4,因為4個小的組成一個大正方形。正方形縮小一半的話,整體縮小到1/8,因為8個小的才能組成原來的大正方體。由此,維數(shù)的計算方法就是,當把一個圖形縮小1/2之后,整體縮小到1/2的幾次方倍。由此法可以計算出:線段是一維的,因為(1/2)^1=(1/2);正方形是二維的,因為(1/2)^2=(1/4);正方體是三維的,因為(1/2)^3=(1/8)。與我們的常識完全契合。
當然,縮小的比例未必是1/2,你也可以把線段、正方形、正方體縮小到1/3、1/5試試,計算之后仍然會得出相同的維數(shù)。
圖6.1.4 線段、正方形、正方體的維數(shù)
現(xiàn)在,再看豪斯多夫的維數(shù)計算公式就很容易理解了,他提出的公式是:
其中,a是相似比,即將圖形縮小的倍數(shù);b是指原來的圖形可以由多少個縮小后的圖形拼成,n就是維數(shù)。
所以
現(xiàn)在,我們可以用這個公式計算科赫雪花曲線的維數(shù)了。如下圖6.1.5,科赫雪花曲線包含了4條一模一樣的縮小版曲線,每一條的尺寸都是原來曲線的1/3。所以,這個問題就是在問3的幾次方等于4。用計算器可以算出,科赫雪花曲線的維數(shù)是:
圖6.1.5 科赫雪花曲線的分形維數(shù)計算
因此,我們可以說科赫雪花曲線是1.26維的圖形。
當然,如果圖形出現(xiàn)變化,維數(shù)也會隨之變化,我們可以回過頭看看圖6.1.3a-c 科赫雪花曲線的變例的情況。它們依然包含了4條一模一樣的縮小版曲線,但由于頂角的度數(shù)不同,相似比也隨之發(fā)生變化。
圖a的頂角是120°,每一條的尺寸與原來曲線的比例都是
,所以維數(shù)
圖b的頂角是20°,每一條的尺寸與原來曲線的比例都是
,所以維數(shù)
圖c的頂角是0°,每一條的尺寸與原來曲線的比例都是1:2,所以維數(shù)
角度越尖銳,分形維數(shù)就越大,當曲線可以完全填充平面的時候,它就變成了二維圖形。
必須指出,這種算法只適用于嚴格自相似的情況。自然界中的萬事萬物顯然并非全都如此,因而分數(shù)維數(shù)的計算往往是一事一議,沒有統(tǒng)一的法則和公式,但是這種算法的思想?yún)s是有價值的。目前的研究已經(jīng)算出了許多自然分形的維數(shù):
海岸線的維數(shù):1~1.5
山地表面的維數(shù):2.1~2.9
河流水系的維數(shù):1.1~1.85
云的維數(shù):1.35
人的肺的維數(shù):2.17
人腦褶皺的維數(shù):2.73~2.79
所以,從分形學的角度看,科幻小說《三體》中的降維打擊或許并不需要二向箔這種外星人的高端產(chǎn)品,在分形構(gòu)造中做做手腳就能實現(xiàn)。
分形除了顛覆了我們的對于尺度和維度方面的傳統(tǒng)認知之外,還改變了我們觀察世界的方式。曼德博在《大自然的分形幾何學》中不是說過么?"云不只是球體,山不只是圓錐,海岸線不是圓形,樹皮不是那么光滑,閃電傳播的路徑更不是直線。它們是什么呢?它們都是簡單而又復(fù)雜的分形。"所謂簡單,是指分形的構(gòu)造方法極其簡單,就像科赫曲線一樣,只要把一條線段中間的一段擦去,邊向外作正三角形,然后機械地重復(fù)無限次即可。所謂復(fù)雜,是指構(gòu)造出的圖案極其復(fù)雜精致。如果說,歐氏幾何是用抽象的數(shù)學模型對大自然作了一個最粗略的近似,那么分形幾何就是對自然作了精細的描繪。對于萬千像筆者這樣在"996"魔咒中苦苦掙扎的程序員而言,分形似乎為我們指引了一條進軍高逼格藝術(shù)界的康莊大道,因為我們只需要敲上短短幾行代碼,就能創(chuàng)造出手繪家永遠無法匹敵的復(fù)雜圖案。而且就像前文中圖6.1.3一樣,只要把分形的構(gòu)造方法稍加改變,所得的圖案就大不相同。或許,程序員無意中把迭代函數(shù)中的參數(shù)隨手一改,得到的很可能就是完全不同的另一幅畫。
我們?nèi)匀灰钥坪昭┗ㄇ€為例。如下圖6.1.6,從正三角形開始,還是把每一條邊的中間一段擦掉,不過這次改成向內(nèi)作正三角形,最后就得到了"科赫反雪花曲線"。它的樣子已經(jīng)與雪花完全不同,而是由許多獨立的形狀組成,其分形維數(shù)仍然同科赫雪花曲線一樣是1.26。
圖6.1.6 科赫反雪花曲線
下圖6.1.7是將中間一段擦去,向外做正方形的例子。我稱之為"直角型科赫曲線",可以看到,迭代數(shù)次之后出現(xiàn)了很多像十字架一樣的形狀,酷似哥特式裝飾。圖6.1.8是把4條曲線拼接在一起形成的圖案。
圖6.1.7 直角型科赫曲線
圖6.1.8 直角型科赫曲線的拼接
當然,中央擦去的線段比例,以及取而代之的多邊形的邊數(shù)也可以任意改變。圖6.1.9展示了幾種變例,它們或像雪花,或像飾帶,或像花環(huán)……
圖6.1.9 科赫曲線的各類變種
我們的思路還可以進一步拓展,如果把中間的部分擦去之后,同時向內(nèi)外兩個部分作多邊形會如何。如圖6.1.10,把一條線段平均分成4份,中間兩段擦去,一段向外做正方形,另一段向內(nèi)做正方形,如此,4段就變成了8段,將其4條拼接在一起,迭代數(shù)次之后,就形成了一個形似魔鬼的旋轉(zhuǎn)對稱圖案。我稱之為"八段曲線"。除了樣子之外,這條曲線的另一個古怪之處在于它的分形維數(shù),
,恰好是有理數(shù)。
圖6.1.10 八段曲線
圖6.1.11的構(gòu)造依然延續(xù)了上面的思路,只不過復(fù)雜了很多。一條線段分了8份,然后用曲曲折折的32條線段取代它,最后形成了一個形似回旋鏢的分形圖案。巧合的是,這個圖案的分形維數(shù)
,仍然是有理數(shù)。
圖6.1.11 三十二段曲線
圖6.1.12的構(gòu)造更加放飛自我。一條線段分了10份,然后用50條線段取代它,最后形成的圖案有點像二維碼,不曉得掃一掃能不能贏大獎。你信不信它的分形維數(shù)還是有理數(shù)?才怪,它的分形維數(shù)
圖6.1.12 五十段曲線
如果繼續(xù)放寬規(guī)則,就會創(chuàng)作出更加千姿百態(tài)的圖案。圖6.1.13把一條線段分成6段,形成"VMV"的形狀,迭代5次之后得到了類似皇冠的圖案,我稱之為"皇冠曲線"。圖6.1.14把一條線段分成4段,中間出現(xiàn)了交叉點,迭代8次之后得到的圖案酷似"花籃",我稱之為"花籃曲線"。
圖6.1.13皇冠曲線
圖6.1.14花籃曲線
青山不改,綠水長流,在下告退。
轉(zhuǎn)發(fā)隨意,轉(zhuǎn)載請聯(lián)系張大少本尊,聯(lián)系方式請見公眾號底部菜單欄。
聯(lián)系客服