24

“這是什麽?”彼得指著鏡像公司計算機實驗室的監測器問。

監測器上是一群在橘黃色的海洋中遊來遊去的藍色小魚圖案。

薩卡停止敲打鍵盤,擡起頭說:“人工生命。我今年冬天在裏爾森講授這門課。”

“進展如何?”

“還可以。就像我們在計算機裏模擬了你的思想一樣,模擬包括繁衍和生命進化的其他方面也是可能的。的確,當模擬變得相當復雜時,一些人說,模擬只不過是一個關於模擬物是否真正活著的問題。那些魚從非常簡單的生命歷程的數學模擬物進化而來。而且,就像真魚一樣,他們展示了許多突然出現的行為,例如成群地遊。”

“你怎麽從簡單的數學中得到行為像真魚的信息?”

薩卡放下了手中的活,走到彼得身邊。“漸增的進化是關鍵——它使混沌快速走向復雜變得可能。”他伸手按了幾個鍵。“我給你做個簡單的示範。”

屏幕清除。

“現在,輸入一句話。當然,不要標點——只是詞語。”薩卡說。

彼得想了一會兒,然後用食指輸入了一句。

“And where hell is there must we ever be。”[9]計算機上打出來的全是小寫字母。

薩卡湊過去,從他的肩膀上看了一眼。“馬洛。”

彼得很驚訝。“你知道這句?”

薩卡點點頭。“當然。私立學校教育嘛,記住了吧。來自《浮士德博士的悲劇》:‘Hell hath no limist,nor is circumscribed in one self place,for where we are is hell,and where hell is there must we ever be’。”[10]

彼得一句話都沒說。

“看你輸入的句子——它由三十九個符號構成,”薩卡沒有數;彼得一錄完計算機就把數字計算出來了,還有其他的統計數據。“好,把那些符號中的每一個看做一個基因。每一個基因可能有二十七種等級:從A到Z,另加一個空白。既然你能打出一串三十九個字母的語符列,那就意味著總共可能有二十七的三十九次方種不同的那麽長的語符列。換句話說就是大量的語符列。” 薩卡伸手按了幾個鍵。他說:“這個智能終端每秒鐘能產生十萬個任意的三十九個字母的語符列。”他指著屏幕上的一個數字。“但是即便以這個速度,錄完你剛才隨便打出來的馬洛的那句話的準確的所有語符列,需要二乘以十的四十三次方年——比宇宙的整個生命要長一兆倍。”

彼得點頭。“就像是猴子的進化。”

薩卡唱道:“我們現在來到……”

不是猴子。“數不清的猴子敲打鍵盤。不管它們努力多久,它們永遠也不會生產出與莎士比亞作品一模一樣的復制品。”

薩卡笑著說:“那是因為它們任意地工作。但是進化不是任意的,它是漸增的。在環境帶來的選擇標準的基礎上,每一代都比它的上一代要進步。通過漸增進化,你可以以驚人的速度把文理不通的話發展成詩歌——或者從方程式到魚,甚至從泥模型到人類。”他敲了一個鍵,然後指著屏幕說:“這是一個由三十九個字母構成的完全任意語符列。我們把它看作一個遠古的生命。”

屏幕上顯示:

000 wtshxowlveamfhiqhqdiigjmh rpeqwursudnfe

“通過漸增進化,計算機可以在幾分鐘之內從最開始的任意狀態達到預想的狀態。”

“怎麽做?”彼得問。

“比如說每一代。一個語符列的文本可以產生三十九個後代。但是,正像在真實生活中一樣,後代與父母並不是真的一模一樣。相反,每一個後代中,有一個基因——一個字母——將是不同的,它在字母表中上下移動:例如,y可以變成x或者z。”

“哦。”

“計算機會從這三十九個後代中找出一個最適合環境的——最接近馬洛句子的那個,也就是我們理想中完美的最有適應性的生命形式。最適合環境的那個形式就是惟一能夠繁衍下一代的形式。明白了嗎?”

彼得點點頭。

“好。我們讓進化進行一代。”薩卡按了另一個鍵。三十九個相似的語符列出現在屏幕上。過了一會,其中的三十八個被刪掉了。“這就是最合適的後代。”他指著屏幕:

000 wtshxowlveamfhiqhqdiigjmh rpeqwursudnfe

001 wtshxowlvdamfhiqhqdiigjmh rpeqwursudnfe

“這不明顯,”薩卡說,“不過接下來的語符列比原來的稍稍更接近你的目標語符列。”

“我看不出區別,”彼得說。

薩卡瞥了一眼屏幕。“第十個字母已經從E變成了D。目標語符列的第十個字母是一個空格——‘where’和‘hell’之間的空格。 我們用的是循環的字母表,把空格當做Z和A之間的字母。D比E更接近空格,因此這個語符列是個小小的改進——更適合一些。”他按了另一個鍵。“現在,我們要讓它運行到最後——喏,已經完成了。”