真實旅館 vs. 虛擬旅館#
想想真實世界與虛擬世界的差別。
- 要蓋一間真實旅館,你得投入大量時間、精力與材料,安排各種隔音措施,好讓相鄰房間的人聽不見彼此。
- 要蓋一間虛擬旅館,這種隔音是免費附贈的——什麼都不用做,房間之間本來就互不干擾。
有趣的是,在虛擬旅館裡,如果你反而希望相鄰房間的人能夠互相聽見,你得額外「加進」這種能力,也就是加進「非隔音」。同理,陰影、氣味、震動、灰塵、腳印、磨損——這些不具功能的細節,在真實而具體的世界裡全都免費俱備;到了虛擬世界,卻通通得手動補上。
為了讓虛擬世界更逼真而必須額外加上的東西,通用術語叫做碰撞偵測(collision detection)。凡是做過電玩遊戲的人大概很快就會發現:把圖形放到螢幕上移動還不夠,圖形之間會直接彼此穿過、毫無反應,除非你在更新迴圈(update loop)裡加入碰撞偵測——一段不斷介入、反覆詢問「我撞到什麼了嗎?」的程式循環。
虛擬世界的「安靜」#
侯世達(Doug Hofstadter)在《Le Ton Beau de Marot》(1997)中指出「自發闖入(spontaneous intrusions)」在創造過程中的角色。在真實世界裡,幾乎每一件發生的事都會留下痕跡、投下陰影、散出氣味、發出聲響——這提供了大量讓「自發闖入」得以發生的機會。而這,正是虛擬世界所極度缺乏的。
從電腦模型建構者的角度看,虛擬世界最大的優點之一,恰恰就是這份安靜:除了你親手安排的事之外,什麼都不會發生。這讓你能從一張白紙開始,一次加一個特徵,觀察能產生目標效果的最小模型是什麼。
但這份「無噪音」的乾淨,也讓電腦模擬演化受到極大侷限。因為天擇演化正是以噪音為食:它把偶然遇上的噪音轉成訊號,把垃圾轉成工具,把 bug 轉成 feature。
Sims 的虛擬生物:模擬演化的極限#
早期一項至今仍最令人印象深刻的演化模擬,是 Karl Sims 的《Evolved Virtual Creatures》(1994)。
- Sims 從隨機組裝的虛擬關節方塊出發,用虛擬肌肉驅動關節,讓它們在具有虛擬物理的虛擬世界裡演化。
- 程式自動挑出在測試中移動最遠的組合體,讓它們進行虛擬交配,再用後代重複整個循環。
- 於是越來越優秀的泳者、行走者、跳躍者演化出來,全程沒有任何智慧設計者出手。這些遠非隨機的設計,展示了(虛擬的)演化能多有效率地「勉強算是」發現好的設計原則,並「勉強算是」重新發明出自然界中各式各樣的特徵。
這是「用相對簡單的模型換得大量成果」的絕佳範例,但它同時也暴露了虛擬世界演化的狹窄邊界。
延伸說明:為什麼 Sims 生物演化不出新染色體
Sims 設計了一套簡單的「發育」系統:以整組基因體為輸入、產出新生物為輸出。但這套過程全在「後台」進行,並不屬於被模擬的虛擬世界本身。
後果是:一次意外的碰撞、衝擊,或撞上一小塊(虛擬的)碎屑,都無法縮短或加長基因體,也無法改變基因表現的規則。所有這些機制根本不在那個「有虛擬物質的虛擬世界」裡,因此它是不可變的。舉例來說,Sims 的生物沒有任何辦法演化出一條新的染色體——它整套遺傳系統位於模型之外,並不親身面對天擇,只是按既定規則在世代之間傳遞遺傳資訊而已。(另一個同類現象的例子見第 51 章。)
創造力需要「可以撞上的垃圾」#
一個關於創造力的電腦模型裡,理應有一堆散落的垃圾,讓你的創造歷程能不小心撞上;有各種噪音,讓你的創造歷程忍不住偷聽到。隔壁房間傳來的那一點點噪音自發闖入,可能會以某種意外湊巧的方式撥動這些歷程,也可能以某種破壞性的方式撥動它——但無論哪一種,都打開了新的可能性。
先釐清我不是在說什麼:Sims 演化生物的問題,不在於它們不是碳做的、不含蛋白質或血紅素。問題在於它們是虛擬的。正因虛擬,它們所居住的世界,比生物演化的世界簡單了好幾個數量級。Cope 的 EMI 也是一樣:儘管它很精彩,卻比人類音樂創作的世界簡單了好幾個數量級。而這兩個案例真正令人愉悅之處,正是發現:從如此乾淨、如此無噪音、如此抽象的東西裡,竟能得到這麼多。
遞減報酬與一種恆定狀態#
我們可以想像去「改進」Cope 的 EMI、Sims 的作品,或任何其他人工生命/人工創造力的專案:不斷往世界裡加進更多垃圾、更多碰撞機會。這會給那些 sim 更多虛擬材料去應付,而你永遠說不準——只要給機會,意外湊巧何時會降臨。但想想這樣的建議會顯得多麼反直覺:
不管你在模擬什麼,務必讓那個世界裡的每一個現象、每一個副程式、每一件發生的事,都向世界廣播各式各樣不具功能的效應:發出無關的聲響、留下痕跡、掉落灰塵、引起震動,諸如此類。
為什麼?這些噪音是為了什麼?它不為任何目的;它就只是在那裡,好讓每一個其他歷程都能把它當成潛在的訊號來源——當成某種可能被創造演算法的煉金術,轉化為功能、轉化為藝術、轉化為意義的東西。
宇宙中每一分設計的增長,都始於一個意外湊巧的時刻:兩條軌跡未經設計的交會,產生出某種事後回顧起來「不只是一次單純碰撞」的東西。
但電腦模型建構者越是遵循上述建議,就越是揮霍掉「讓電腦成為絕佳工具」的那份效率。這裡存在一種恆定狀態(homeostasis)。
於是我們看到——不是出於任何神祕的理由——對創造力的電腦模擬,終將面臨遞減報酬。為了越來越貼近一位人類作曲家的創造力,模型就得越來越具體,得模擬越來越多衝擊著一個「有身體的作曲家」的偶然碰撞。