自私的基因是什麼?它不僅僅是dna的一個單個的有形片斷。正像在原始湯裡的情況一樣,它是dna的某個具體片斷的全部複製品,這些複製品分佈在整個世界上。如果我們可以把基因理解為似乎具有自覺的目的,同時我們又有把握在必要時把我們使用的過分通俗的語言還原為正規的術語,那麼我們就可以提出這樣一個問題:一個自私基因的目的究竟是什麼?它的目的就是試圖在基因庫中擴大自己的隊伍。從根本上說,它採用的辦法就是幫助那些它所寄居的個體編製它們能夠賴以生存下去並進行繁殖的程式。不過我們現在需要強調的是,「它」是一個分佈在各處的代理機構,同時存在於許多不同的個體之內。本章的主要內容是,一個基因有可能幫助存在於其他一些個體之內的其自身的複製品。如果是這樣,這種情況看起來倒像是個體的利他主義,但這樣的利他主義是出於基因的自私性。
讓我們假定有這樣一個基因,它是人體內的一個白化基因(albino)。事實上有好幾個基因可能引起白化,但我講的只是其中一個。它是隱性的,就是說,必須有兩個白化基因同時存在才能使個體患白化病。大約在兩萬人中有一個會發生這種情況,但我們當中,每七十個人就有一個體記憶體在單個的白化基因。這些人並不患由化病。由於白化基因分佈於許多個體之中,在理論上說,它能為這些個體編製程式,使之對其他含有白化基因的個體表現出利他行為,以此來促進其自身在基因庫的存在,因為其他的白化體含有同樣的基因。如果白化基因寄居的一些個體死去,而它們的死亡使含有同樣基因的一些其他個體得以存活下去,那麼,這個白化基因理應感到相當高興。如果一個白化基因能夠使它的一個個體拯救十個白化體的生命,那麼,即使這個利他主義者因之死去,它的死亡也由於基因庫中白化基因的數目得以增加而得到充分的補償。
我們是否因此可以指望白化體相互特別友好?事實上情況大概不會是這樣。為了搞清楚這個問題,我們有必要暫時放棄把基因視為有自覺意識的行為者這個比喻。因為在這裡,這種比喻肯定會引起誤會。我們必須再度使用正規的、即使是有點冗長的術語。白化基因並不真的「想」生存下去或幫助其他白化基因。但如果這個白化基因碰巧使它的一些個體對其他的一些白化體表現出利他行為,那麼不管它情願與否,這個白化基因往往因此在基因庫中自然而然地興旺起來。但為了促使這種情況的發生,這個基因必須對它的一些個體產生兩種相互獨立的影響。它不但要對它的一些個體賦予通常能產生非常蒼白的膚色的影響,它還要賦予個體這樣一種傾向,使它們對其他具有非常蒼白膚色的個體表現出有選擇的利他行為。具有這兩種影響力的基因如果存在的話,它肯定會在種群中取得很大的成功。
我在第三章中曾強調指出,基因確實能產生多種影響,這是事實。從純理論的角度上說,出現這樣的基因是可能的,它能賦予其個體以一種明顯可見的外部「標誌」,如蒼白的皮膚、綠色的鬍鬚,或其他引人注目的東西,以及對其他帶有這些標誌的個體特別友好的傾向。這樣的情況可能發生,儘管可能性不大。綠鬍鬚同樣可能與足趾甲往肉里長或其他特徵的傾向有關,而對綠鬍鬚的愛好同樣可能與嗅不出小蒼蘭的生理缺陷同時存在。同一基因既產生正確的標誌又產生正確的利他行為,這種可能性不大。可是,這種我們可以稱之為綠鬍鬚利他行為效果的現象在理論上是可能的。
像綠鬍鬚這種任意選擇的標誌不過是基因藉以在其他個體中「識別」其自身複製的一個方法而已。還有沒有其他方法呢?下面可能是一個非常直接的方法。單憑個體的利他行為就可以識別出擁有利他基因的個體。如果一個基因能「說」相當於這樣的話,「喂!如果a試圖援救溺水者而自己快要沒頂,跳下去把a救起來」,這個基因在基因庫中就會興旺起來,因為a體內多半含有同樣的救死扶傷的利他基因。a試圖援救其他個體的事實本身就是一個相當於綠鬍鬚的標誌。儘管這個標誌不像綠鬍鬚那樣荒誕不經,但它仍然有點令人難以置信。基因有沒有一些比較合乎情理的辦法「識別」存在於其他個體中的其自身的複製呢?
回答是肯定的。我們很容易證明,近親多半共有同樣的基因。人們一直認為,這顯然是親代對子代的利他行為如此普遍存在的理由,菲希爾,霍爾丹(j.b.s.haldanc),尤其是漢密爾頓認為。這種情況同樣也適用於其他近親——兄弟、姐妹、侄子侄女和血緣近的堂(表)兄弟或姐妹。如果一個個體為了拯救十個近親而犧牲,操縱個體對親屬表現利他行為的基因可能因此失去一個複製,但同一基因的大量複製卻得到儲存。
「大量」這種說法很不明確,「近親」也是如此。其實我們可以講得更確切一些,如漢密爾頓所表明的那樣。他在一九六四年發表的兩篇有關社會個體生態學的論文,是屬於迄今為止最重要的文獻之列。我一直難以理解,為什麼一些個體生態學家如此粗心,竟忽略了這兩篇論文(兩本一九七○年版的有關個體生態學的主要教科書甚至沒有把漢密爾頓的名字列入索引)。幸而近年來有跡象表明,人們對他的觀點又重新感到興趣。他的論文應用了相當深奧的數理,但不難憑直覺而不必通過精確的演算去掌握其基本原則,儘管這樣做會把一些問題過度簡單化。我們需要計算的是機率,亦即兩個個體,譬如兩姐妹共有一個特定基因的機會。
為了簡便起見,我假定我們講的是整個基因庫中一些稀有的基因。大多數人都共有「不形成白化體的基因」,不管這些人有沒有親緣關係。這類基因之所以普遍存在的原因是,自然界裡白化體比非白化體更易於死亡。這是由於,譬如說、陽光使它們目眩,以致有更大的可能看不清逐漸接近的捕食者。我們沒有必要解釋基因庫中不形成白化體的,這類顯然是「好的」基因所以取得優勢的理由。我們感興趣的是,基因為什麼因為表現了利他行為而取得成功。因此,我們可以假定,至少在這個進化過程的早期,這些基因是稀有的。值得注意的是,在整個種群中是稀有的基因,在一個家族中卻是常見的。我體內有一些對整個種群來說是稀有的基因,你的體內也有一些對整個種群來說是稀有的基因。我們兩人共有這些同樣的稀有基因的機會是微乎其微的。但我的姐妹和我共有某一具體的稀有基因的機會是很大的。同樣,你的姐妹和你共有同一稀有基因的機會同樣也是大的。在這個例子裡,機會剛好是百分之五十。其所以如此是不難解釋的。
假定你體內有基因g的一個複製,這一複製必然是從你的父親或母親那裡繼承過來的(為了方便起見,我們不考慮各種不常見的可能性——如g是一個新變種,或你的雙親都有這一基因,或你的父親或母親體內有兩個複製)。假如說是你的父親把這個基因傳給你,那麼他體內每一個正常的體細胞都含有g的一個複製。現在你要記住,一個男人產生一條精子時,他把他的半數的基因給了這一精子。因此,培育你的姐姐或妹妹的那條精子獲得基因g的機會是百分之五十。在另一方面,如果你的基因g是來自你的母親,按照同樣的推理,她的卵子中有一半含有g。同樣,你的姐姐或妹妹獲得基因g的機會也是百分之五十。這意味著如果你有一百個兄弟姐妹,那麼其中大約五十個會有你體內的任何一個具體的稀有基因。這也意味著如果你有一百個稀有基因,你的兄弟或姐妹中任何一個體內都可能合有大約五十個這樣的基因。
你可以通過這樣的演算方法計算出任何親緣關係的等次。親代與子代之間的親緣關係是重要的。如果你有基因h的一個複製,你的某一個子女體內含有這個基因複製的可能性是百分之五十,因為你一半的性細胞含有h,而任何一個子女都是由一個這樣的性細胞培育出來的。如果你有基因j的一個複製,那麼你父親體內含有這個基因複製的可能性是百分之五十,因為你的基因有一半是來自他的,另一半是來自你母親的。為了計算的方便,我們採用一個親緣關係(relatedness)的指數)用來表示兩個親屬之間共有一個基因有多大的機會。兩兄弟之間的親緣關係指數是一/二,因為他們之間任何一個的基因有一半為其他一個所共有。這是一個平均數:由於減數分裂的機遇,有些兄弟所共有的基因可能大於一半或少於一半。但親代與子代之間的親緣關係永遠是一/二,不多也不少。不過,每次計算都要從頭算起就未免令人太麻煩了。這裡有一個簡便的方法供你運用,以算出任何兩個個體a和b的親緣關係。如果你要立遺囑或需要解釋家族中某些成員之間為何如此相像,你就可能發覺這個方法很有用。在一般情況下,這個方法是行之有效的,但在發生血族相互交配的情況下就不適用。某些種類的昆蟲也不適用這個方法,我們在下面要談到這個問題。
首先,查明a和b所有的共同祖先是誰。譬如說,一對第一代堂兄弟的共同祖先是他們共有的祖父和祖母。找到一個共同的祖先以後,他的所有祖先當然也就是a和b的共同祖先,這當然是合乎邏輯的。不過,對我們來說,查明最近一代的共同祖先就足夠了。在這個意義上說,第一代堂兄弟只有兩個共同的祖先。如果b是a的直系親屬,譬如說:是他的曾孫,那麼我們要找的「共同祖先」就是a本人。
找到a和b的共同祖先之後,再按下列方法計算代距(generationdistance)。從a開始,沿其家譜上溯其歷代祖先,直到你找到他和b所共有的那一個祖先為止,然後再從這個共同祖先往下一代一代數到b。這樣,從a到b在家譜上的世代總數就是代距。譬如說,a是b的叔父,那麼代距是三,共同的祖先是a的父親,亦即b的祖父。從a開始,你只要往上追溯一代就找到共同的祖先,然後從這個共同的祖先往下數兩代便是b。因此,代距是一+二=三。
通過某一個共同的祖先找到a和b之間的代距後,再分別計算a和b與這個共同祖先相關的那部分親緣關係。方法是這樣的,每一代距是一/二,有幾個代距就把幾個一/二自乘。所得乘積就是親緣關係指數。如果代距是三,那麼指數是一/二x一/二x一/二或(一/二)三;如果通過某一個共同祖先算出來的代距是九,同該祖先的那部分的親緣關係指數就是(一/二)九。
但這僅僅是a和b之間親緣關係的部分數值。如果他們的共同祖先不只一個,我們就要把通過每一個祖先的親緣關係的全部數值加起來。在一般情況下,對一對個體的所有共同祖先來說,代距都是一樣的。因此,在算出a和b同任何一個共同祖先的親緣關係後,事實上你只要乘以祖先的個數就行了。譬如說,第一代堂兄弟有兩個共同的祖先,他們同每一個祖先的代距是四,因此他們親緣關係指數是二(一/二)四=一/八。如果a是b的曾孫,代距是三,共同「祖先」的數目是一(即b本身),因此,指數是一x(一/二)三=一/八。就遺傳學而言,你的第一代堂兄弟相當於一個曾孫。同樣,你「像」你叔父的程度〔親緣關係是二x(一/二)三=一/四〕和你「像」你祖父的程度〔親緣關係是一x(一/二)二=一/四〕相等。
至於遠如第三代堂兄弟或姐妹的親緣關係〔二x〔(一/二)八=一/一百二十八〕,那就要接近於最低的機率,即相當於種群中任何一個個體擁有a體內某個基因的可能性。就一個利他基因而言,一個第三代的堂兄弟姐妹的親緣關係和一個素昧平生的人差不多。一個第二代的堂兄弟姐妹(親緣關係一/三十二)稍微特殊一點,第一代堂兄弟姐妹更為特殊一點(一/八),同胞兄弟姐妹、父母和子女十分特殊(一/二),同卵孿生兄弟姐妹(一)就和自己完全一樣。叔伯父和叔伯母、侄子或外甥和侄女或外甥女、祖父母和孫子孫女,異父或異母兄弟和異父或異母姐妹的親緣關係是一/四。
現在我們能夠以準確得多的語言談論那些表現近親利他行為的基因。一個操縱其個體拯救五個堂兄弟或姐妹,但自己因而犧牲的基因在種群中是不會興旺起來的,但拯救五個兄弟或十個第一代堂兄弟姐妹的基因卻會興旺起來。一個準備自我犧牲的利他基因如果要取得成功,它至少要拯救兩個以上的兄弟姐妹(子女或父母),或四個以上的異父異母兄弟姐妹(叔伯父,叔伯母,侄子,侄女,祖父母,孫子孫女)或八個以上的第一代堂兄弟姐妹,等等。按平均計算,這樣的基因才有可能在利他主義者所拯救的個體記憶體在下去,同時這些個體的數目足以補償利他主義者自身死亡所帶來的損失。
如果一個個體能夠肯定某一個人是他的同卵孿生兄弟或姐妹,他關心這個孿生兄弟或姐妹的福利應當像關心自己的福利完全一樣。任何操縱孿生兄弟或姐妹利他行為的基因都同時存在於這一對孿生兄弟或姐妹的體內。因此,如果其中一個為援救另外一個的生命而英勇犧牲,這個基因是能夠存活下去的。九帶犰狳(nine—bandedarmadillos)是一胎四隻的。就我所知,從未聽說過小犰狳英勇獻身的事蹟。但有人指出它們肯定有某種強烈的利他行為。如果有人能到南美去一趟,觀察一下它們的生活,我認為是值得的。
我們現在可以看到,父母之愛不過是近親利他行為的一種特殊情況。從遺傳學的觀點來看,一個成年的個體在關心自己父母雙亡的幼弟時,應和關心自己子女一樣。對它來說,小弟弟和子女的親緣關係指數是完全一樣的,即一/二。按照基因選擇的說法,種群中操縱個體表現大姐姐利他行為的基因和操縱個體表現父母利他行為的基因應有同等的繁殖機會。事實上,從幾個方面來看,這種說法未免過分簡單化,我們在下面將要談到,而且在自然界裡,兄弟姐妹之愛遠不及父母之愛來得普遍。但我要在這裡闡明的一點是,從遺傳學的觀點看,父母/子女的關係並沒有比兄弟/姊妹關係來得特殊的地方。儘管實際上是父母把基因傳給子女,而姐妹之間並不發生這種情況。然而,這個事實與本題無關。這是因為姐妹兩個都是從同一個父親和同一個母親那裡繼承相同基因的全似複製品。
有些人用近親選擇(kinselection)這個名詞來把這種自然選擇區別於群體選擇(群體的差別性生存)和個體選擇(個體的差別性生存)。近親選擇是家族內部利他行為的起因。關係越密切,選擇越強烈。這個名詞本身並無不妥之處;不幸的是,我們可能不得不拋棄它,因為近年來的濫用已產生流弊,會給生物學家在今後的許多年代裡帶來混亂。威爾遜(e.o.wilson)的《社會生物學:新的合成》一書,在各方面都堪稱一本傑出的作品,但它卻把近親選擇說成是群體選擇的一種特殊表現形式。書中一張圖表清楚地表明,他在傳統意義上——即我在第一章裡所使用的意義上——把近親選擇理解為「個體選擇」與「群體選擇」之間的中間形式。群體選擇——即使按威爾遜自己所下的定義——是指由個體組成的不同群體之間的差別性生存。誠然,在某種意義上說,一個家族是一種特殊型別的群體。但威爾遜的論點的全部含義是,家族與非家族之間的分界線不是一成不變的,而是屬於數學機率的問題。漢密爾頓的理論並沒有認為動物應對其所有「家族成員」都表現出利他行為。而對其他的動物則表現出自私行為。家族與非家族之間並不存在著明確的分界線。我們沒有必要決定,譬如說,第二代堂兄弟應否列入家族範圍之內。我們只是認為第二代的堂兄弟可以接受的利他行為相當於子女或兄弟的一/十六。近親選擇肯定不是群體選擇的一個特殊表現形式,它是基因選擇所產生的一個特殊後果。
威爾遜關於近親選擇的定義有一個甚至更為嚴重的缺陷。他有意識地把子女排除在外:他們竟不算近親!他當然十分清楚,子女是他們雙親的骨肉,但他不想引用近親選擇的理論來解釋親代對子代的利他性關懷。他當然有權利按照自己的想法為一個詞下定義,但這個定義非常容易把人弄糊塗。我倒希望威爾遜在他那本立論精闢的具有深遠影響的著作再版時把定義修訂一下。從遺傳學的觀點看,父母之愛和兄弟/姐妹的利他行為的形成都可以用完全相同的原因來解釋:在受益者體記憶體在這個利他性基因的可能性很大。
我希望讀者諒解上面這個有點出言不遜的評論。而且我要趕快掉轉筆鋒言歸正傳。到目前為止,我在一定程度上把問題過分簡單化了,現在開始,我要把問題說得更具體一些。我在上面用淺顯易懂的語言,談到了為援救具有一定親緣關係的一定數目的近親而準備自我犧牲的基因。顯然,在實際生活中我們不能認為動物真的會點一下它們正在援救的親屬到底有幾個。即使它們有辦法確切知道誰是它們的兄弟或堂兄弟,我們也不能認為動物在腦子裡進行過漢密爾頓式的演算。在實際生活中,必須以自身以及其他個體的死亡的統計學上的風險(statisticalrisks)來取代肯定的自殺行為和確定的「拯救」行為。如果你自己所冒的風險是非常微小的話,即使是第三代的堂兄弟也是值得拯救的。再說,你和你打算拯救的那個親屬有朝一日總歸都要死的,每一個個體都有一個保險統計師估算得出的「估計壽命」,儘管這個估計可能有誤差。如果你有兩個血緣關係同樣接近的親屬,其中一個已屆風燭殘年,而另一個卻是血氣方剛的青年,那麼對未來的基因庫而言,挽救後者的生命所產生的影響要比挽救前者來得大。
我們在計算親緣關係指數時,那些簡潔的對稱演算還需要進一步加以調整。就遺傳學而言,祖父母和孫子孫女出於同樣的理由以利他行為彼此相待,因為他們體內的基因有一/四是共同的。但如果孫輩的估計壽命較長,那麼操縱祖父母對孫輩的利他行為的基因,比起操縱孫輩對祖父母的利他行為的基因,具有更優越的選擇條件。由於援助一個年輕的遠親而得到的純利益,很可能超過由於援助一個年老的近親而得到的純利益(順便說一句,祖父母的估計壽命當然並不一定比孫輩短。在嬰兒死亡率高的物種中,情況可能恰恰相反)。
把保險統計的類比稍加引伸,我們可以把個體看作是人壽保險的保險商。一個個體可以把自己擁有的部分財產作為資金對另一個個體的生命進行投資。他考慮了自己和那個個體之間的親緣關係,以及從估計壽命的角度來看該個體同自己相比是不是一個「好的保險物件」。嚴格地說,我們應該用「預期生殖能力」這個詞,而不是「估計壽命」,或者更嚴格一些,我們可以用「使自己的基因在可預見的未來獲益的一般能力」。那麼,為了使利他行為得以發展,利他行為者所承擔的風險必須小於受益者得到的淨收益和親緣關係指數的乘積。風險和利益必須採取我所講的複雜的保險統計方式來計算。
可是我們怎能指望可憐的生存機器進行這樣複雜的運算啊!尤其是在匆忙間,那就更不用說了。甚至偉大的數學生物學家霍爾丹(他在一九五五年發表的論文裡,在漢密爾頓之前就作出了基因由於援救溺水的近親而得以繁殖的假設)也曾說,「——我曾兩次把可能要淹死的人救起(自己所冒的風險是微乎其微的),在這樣做的時候,我根本沒有時間去進行演算。」不過:霍爾丹也清楚地知道,幸而我們不需要假定生存機器在自己的頭腦裡有意識地進行這些演算。正像我們使用計算尺時沒有意識到我們實際上是在運用對數一樣。動物可能生來就是如此,以致行動起來好像是進行過一番複雜的演算似的。
這種情況其實是不難想像的。一個人把球投入高空,然後又把球接住,他在完成這個動作時好像事先解算了一組預測球的軌道的微分方程。他對微分方程可能一竅不通,也不想知道微分方程是什麼玩意兒,但這種情況不影響他沒球與接球的技術。在某個下意識的水平上,他進行了某種在功能上相當於數學演算的活動。同樣,一個人如要作出某項困難的決定,他首先權衡各種得失,並考慮這個決定可能引起的他想像得到的一切後果。他的決定在功能上相當於一系列加權演算過程,有如計算機進行的那種演算一樣。
如果要為一臺計算機編製程式,使之模擬一個典型的生存機器如何作出應否表現利他行為的決定,我們大概要這樣進行:開列一份清單,列出這隻動物可能做的一切行為,然後為這些行為的每一種模式分別編製一次加權演算程式。各種利益都給以正號,各種風險都給以負號。接著進行加權(weighted),即把各項利益和風險分別乘以適當的表示親緣關係的指數。然後再把得出的數字加起來,為了演算的方便,在開頭的時候我們不考慮其他方面如年齡、健康狀況之類的權重。由於一個個體對自己的親緣關係指數是一(就是說,他具有他自己的一百%的基因——這是不言自明的),對他的一切風險和利益都不需要打拆扣,即在演算時給以全部權重。這樣,每一種可能的行為模式的總和大體上是這樣的:行為模式的淨收益=對自己的利益—對自己的風險+一/二對兄弟的利益—一/二對兄弟的風險+一/二對另一個兄弟的利益—一/二對另一個兄弟的風險+一/八對堂兄弟的利益—一/八對堂兄弟的風險+一/二對子女的利益—一/二對子女的風險+——。
這個總和就稱為那個行為模式的淨收益得分。接著,這個模式動物算出清單上每一種可供選擇的行為模式的得分。最後,它決定按淨收益最大的行為模式採取行動。即使是所有的得分都是負數,它還是應該按這個原則進行選擇,即擇其害處最小的一種行為模式。應當記住,任何實際行動必然牽涉到精力和時間的消耗,這些精力和時間可以用於做其他事情。如果演算的結果表明不做任何事情的淨益最大,那麼,這個模式動物就什麼也不做。
下面是個十分簡單的例子,以自我獨白的形式而不是以計算機模擬的形式來說明問題。我是一隻動物,發現了八隻長在一起的蘑菇。我心中首先盤算一下它們的營養價值,同時考慮到它們可能有毒的這個不大的風險,我估計每個蘑菇約值+六單位(像前面一章一樣,這些單位是任意選定的)。由於蘑菇很大,我最多隻能吃三個。我要不要發出「有食物」的喊聲,把我的發現告訴其他動物呢?誰能聽到我的喊聲?兄弟b(它和我的親緣關係是一/二),堂兄弟c(親緣關係是一/八)和d(並不算親戚,因此它和我的親緣關係指數是如此之小,以致事實上可以作為)。如果我不聲張,我能吃掉的每個蘑菇都為我帶來淨收益+六,全部吃掉是+十八。如發出「有食物」的喊聲,那麼我還有多少淨收益可要盤算一下了。八個蘑菇四份平分,對我而言,我自己吃的一份摺合淨收益+十二,但我的兄弟和堂兄弟各吃掉的兩個蘑菇也會給我帶來好處,因為它們體內有和我一樣的基因。事實上的總分是(一x十二)+(一/二x十二)+(一/八x十二)+(x十二)=十九.五,而自私行為帶來的淨收益是十十八。儘管差別不大,但得失是分明的。因此,我將發出「有食物」的喊聲。在這種情況下,我的利他行為給我的自私基因帶來好處。
在上面這個簡化的例子裡,我假設個體動物能夠盤算它的基因的最大利益是什麼。實際的情況是,基因庫中充滿對個體施加影響的基因,由於這種影響,個體在採取行動時好像事先進行過這種演算。