0%
第十七章 開放的宇宙 17.2 生成圖像的基元組

第十七章 開放的宇宙

17.2 生成圖像的基元組

形成開放基因組的方法不止一種。1990年,卡爾·西姆斯利用二代連接機(CM2)的超級計算能力設計了一個由長度可變基因組成的新型人工世界,比他設計的植物圖像世界更為先進。西姆斯的妙招是創造一個由小方程而非長串數碼組成的基因組。他原來的基因庫中每個固定長度的基因各控制著植物的一個視覺參數;這個新基因庫則擁有長度不定且可自由擴展的方程,籍此繪製各種曲線、色彩和形狀。
而這就是西姆斯的發現。他的方程進化出全新的圖像,並把它們顯示到計算機屏幕上。這個新的空間是如此之豐富,使西姆斯大為震驚。由於基元組只包含邏輯部件,西姆斯的LISP字母表確保了大部分方程所繪出的圖像都具有某種模式。屏幕上不會再充斥著模糊灰暗的圖像,無論西姆斯「漫步」到哪裡,都能看到令人驚艷的風景。「藝術」彷彿成了信手拈來之物。一開始,屏幕上布滿了狂野的紅色和藍色之字形線條。下一刻,屏幕的上部點綴著黃色的斑斑點點。之後,斑點下read.99csw.com出現一條朦朧的水平線,再接著,是重筆墨的波浪伴著藍色的海天一線。再然後,斑點洇成毛莨花般嫩黃的圓暈。幾乎每一輪畫面都展現出驚人的創意。一小時內,上千張美輪美奐的圖像被從其藏身之所喚起,第一次也是最後一次展現在我們面前。這好比站在世上最偉大的畫家身後,觀看他創作從不重複主題和風格的速描。
方程基因庫還有個意外的好處。在西姆斯的原版世界(以及在湯姆·雷的「地球」和丹尼·希利斯的共同進化的寄生蟲世界中),有機體是一串串每次隨機轉換一個數字的數碼,就像博爾赫斯圖書館里的書那樣,一次改變一個字母。而在西姆斯的改良版世界里,有機體成了一串串每次隨機轉換一個基元的邏輯基元組。仍以博爾赫斯圖書館為例的話,這次被調換的是詞而不是字母。每本書里每個詞的拼寫都正確,每本書的每一頁由此就更有實際意義。但是,對於以詞為原料的博爾赫斯圖書館來說,要煮這鍋湯至少需要數以萬計的詞,而西姆斯僅用一打左右的數學基元就能列出所有可能的方程。九_九_藏_書
(cos (round (atan (log (invert y) (+ (bump (+ (round x y) y) #(0.46 0.82 0.65) 0.02 #(0.1 0.06 0.1) #(0.99 0.06 0.41) 1.47 8.7 3.7) (co九_九_藏_書lor-grad (round (+ y y) (log (invert x) (+ (invert y) (round (+ y x) (bump (warped-ifs (round y y) y 0.08 0.06 7.4 1.65 6.1 0.54 3.1 0.26 0.73 15.8 5.7 8.9 0.49 7.2 15.6 0.98) #(0.46 0.82 0.65) 0.02 #(0.1 0.06 0.1) #(0.99 0.06 0.41) 0.83 8.7 2.6))))) 3.1 6.8 #(0.95 0.7 0.59) 0.57))) #(0.17 0.08 0.75) 0.37) (vector y 0.09 (cos (round y y)))))
這個方程在西姆斯的彩色屏幕上繪出了一幅引人注目的圖畫:北極的落日餘輝映照在兩根冰柱上,冰柱晶瑩剔透;遠方https://read•99csw•com的地平線淡然而寧靜。這可堪比一個業餘畫家的大作哩。西姆斯告訴我說:「這個方程的進化從頭到尾僅用了幾分鐘時間——如果是人類有意為之的話,可比這個費功夫多了。」
對邏輯單元而不是數字位元做進化,最根本的優勢還在於它能馬上將系統引上通往開放宇宙的大道。邏輯單元本身就是功能,而不象數字位元那樣僅僅是功能的數值。在任意一個地方增加或交換一個邏輯基元,程序的整體功能就會產生轉變或得到擴展,從而在系統中湧現出新功能和新事物。
西姆斯的方程——或著說基因——是一種計算機語言(LISP)的小型自包含邏輯單元。每一個模塊都是一個算數指令,諸如加、減、乘、餘弦、正弦。西姆斯把這些單元統稱為「基元組」——它們構成了一個邏輯的字母表。只要有一張恰當的邏輯字母表在手,就可以建立任何方程,就像用適當多樣的語音元素表就能合成任何語音句子一樣。加、乘、餘弦等的相互組合能產生任何我們想得出的數學方程。既然任何形狀都可以用方程來表達,這一基元字母表也就可以畫出任何一種圖像。增加方程的複雜性也就神奇地擴大了所生成圖像的複雜性。https://read•99csw•com
但是西姆斯卻無從解釋方程背後的邏輯以及它為何會繪出一幅冰的圖畫。在這個方程面前,西姆斯和我們一樣茫然無知。方程所隱藏的邏輯已經無法用簡單明了的數學來破解。
當西姆斯選中一幅圖畫,繁衍出其變種,再從中選取另一幅時,他所進化的不只是圖像。撇開表象,西姆斯進化的是邏輯。一個相對較小的邏輯方程能繪製出一幅讓人眼花繚亂的複雜圖畫。西姆斯的系統曾經進化出下面這段邏輯代碼: