0%
精神的湧現

精神的湧現

但儘管如此,荷蘭德卻並不想再回過頭去重做神經網路模擬。雖然從IBM701開始至今已有二十五年了,但計算機的功能仍然沒有強到能夠按他想達到的規模做完整的赫伯式的計算機模擬。在六十年代,神經網路研究在「視感控制」這個標題下確實有過一陣短暫的小高潮。視感控制是視覺研究中專門用來識別特徵的神經網路。但視感控制在赫伯實際所言的細胞集合中是一個極其簡化的版式。(即使在識別視覺特徵上,視感控制的功能也不強,這就是為什麼視感控制已經不再受人重視的原因。)荷蘭德對新一代的神經網路系統也並不十分欣賞。新一代的神經網路系統於七十年代末期開始流行,而且自此受到了很大關注。荷蘭德說,這些系統比視感控制系統要先進些,但卻仍然不能支持細胞集合的研究。確實,大多數版本根本就沒有共鳴。通過網路的信號瀑布只有從前到后的單一走向。他說:「這些關聯主義的網路在刺|激/反饋行為方面和模型識別方面的功能很強,但從總體上來說卻忽略了內部反饋的需要。而內部反饋正是赫伯認為細胞集合所不可或缺的。除了少數情況以外,神經網路研究人員基本上不在這個方面下功夫。」
從這個意義上來說,基因演算法也不算是對人類精神適應性的模仿。因為它在計算上太生物化了,無法由此看到複雜的概念是如何在人類頭腦中產生、進化和重新組合的。對荷蘭德來說,這一事實使他越來越感到沮喪。從他初次聽到赫伯的概念至今已有二十五年了,但他仍然堅信,精神的適應性和大自然中的適應性只不過是同類事物的兩個不同的方面。而且,他仍然相信,如果它們真是同樣的事情的話,它們就可以由一個同樣的理論描述出來。
當然,荷蘭德並沒有力陳他的觀點。他只發表了一些論文,相對而言他發表的論文很少,只是在有人邀請他時才去作演講,僅此而已。他並沒有在重大的學術會議上大肆渲染基因演算法,沒有將基因演算法用於醫學診斷這類能夠爭取到研究資金、吸引注意力的熱門應用領域,沒有去爭取巨額投資來創建基因演算法「實驗室」,也沒有出版一本暢銷書來呼籲為對付日本的威脅,採用基因演算法來調配聯邦基金已迫在眉睫。
對荷蘭德來說,最顯在的答案就是採用一種赫伯式的強化作用。每當一個作用者做對了什麼事,從環境中得到了一個正反饋,它就應該強化那些與此相關的分類器。而每當它做錯了什麼事,它就同樣應該削弱相關的分類器。無論採取強化的方法,還是採取削弱的方法,它同時應該不去理會那些不相干的分類器。
所以,從七十年代後期起,荷蘭德就開始了對該理論的研究。
七十年代中期,荷蘭德和學部里一群志同道合的同事開始了每周一次的自由討論,討論任何有關進化和適應性的問題。這群人里除了有勃克斯之外,還有政治科學家羅伯特·愛克思羅德(Robert Axelrod)。羅伯特力圖想理解人們為什麼和什麼時候會相互合作,而不再相互在背後涌刀子。另外還有專攻人類組織的社會動力學的政治科學家米歇爾·考亨(Michael Cohen)和威廉·漢密爾頓(WilliamHamilton)。威廉是一位進化生物學家,和愛克思羅德一起研究共生、社會行為和其他形式的生物合作。
另外,基於規則的系統對大腦的神經分佈來說具有很大的意義。比如說,一條規則就相當於計算機中赫伯式的細胞集合之一。他說:「用赫伯的理論來看,一個細胞集合就是一個簡單的聲明:如果事件如此這般地發生,那麼我就會被高速激發一陣子。」規則的相互作用,伴隨著一條規則激活后引起的對其他規則的整個連動,就像神經稠密相關聯的大腦的一個自然結果。「赫伯的每一個細胞集合都包含了大約一千個到一萬個神經元。」荷蘭德說。「每一個神經元又有一千到一萬個與其它神經元相連的突觸。所以每一個細胞集合就與其它許多細胞集合相互關聯。」大體上說,激活一個細胞集合,就等於在某種內部布告欄上張貼了一個布告,就會被大腦中大多數、或所有其他細胞集合看到。「細胞集合295834108現在正在行動!」當這個布告一出現,那些與這個細胞集合有適當關聯的細胞集合就會被激發起來,並把自己的布告貼到布告欄上,這就引起了不斷重複的循環。
「我覺得如果沒人願意聽我說,會使我很煩惱。但我總是非常幸運,總是有既聰明、又對我的研究課題興緻勃勃的研究生與我產生思想上的共鳴。」
他現在所要做的就是,將這個構想變為一個可以運作的軟體程序。
荷蘭德說,這樣的例子不盡其數。DNA本身就是一個內含的模型,基因說:「在這種條件下,我們期望我們特意選中的生物能有機會得到很好的發展。」人類文化是一個內含的模型,豐富而複雜的神話故事和象徵隱含著人們對他們所處的世界的信念和對他們的行為規則的正確性的信念。就這點而言,塞繆爾的計算機跳棋手也包含了內在的模式,隨著它對對方下棋風格越來越熟悉,它會不斷改變對各種棋路選擇賦予的期望值,從而形成自己內在的模式。
但荷蘭德卻認為,這種自上而來的爭議解決法恰恰是錯誤之所在。難道這個世界是如此簡單、如此可以預測,以致於你總是能夠在事先就知道什麼是最好的規則嗎?幾乎不可能。而如果這個系統被事先告知如何行動,那將之稱為人工智慧就是一個騙局:這樣的智能並不在程序之中,而是在程序員的腦子裡。不,荷蘭德要的是,讓控制由學習而來。他要控制從最底層湧現而出,就像大腦的神經基質中的湧現一樣。讓連續一貫性見鬼去吧。如果兩個分類器規則相互意見不能統一,那就讓它們在自己的表現的基礎上去競爭出一個結果來,這個結果就是被證實了的對完成任務的貢獻,而不是有一個軟體設計人員事先編好的程序的選擇。
你還會在各種不同的生物體中發現同樣的道理。荷蘭德說,就拿公司來說,設想一個工廠接受一個常規定單,比如說,一萬件小器具。既然這是一個常規定單,工廠職員也許就不會多想。他們只是遵循「常規的運行程序」,即一系列正式規程,來進行生產。「如果情況是ABC,那就採取XYZ行動。」就像細菌和繁色瑞蝴蝶一樣。這些規程中編入了這個工廠所模擬的世界和對這個世界的預測:「如果在ABC情況下,採取XYZ行動就會產生很好的效果。」按這些規程進行生產的職員們也許知道、也許不知道有這樣模擬的模型的存在。畢竟常規操作程序經常是死搬照抄學來的,沒有那麼多為什麼可問。如果這家工廠經營已有年頭了,那可能沒人會記得為什麼事情必須這麼做。但不管怎麼樣,因為常規的操作程序是由集體來發展和執行的,所以整個工廠的行為就會像是完全理解這個模擬模型似的。
但荷蘭德就是不買帳。他說:「符號處理是一個很好的開端,而且確實在理解有意識的思想過程上前進了一大步。」但就符號本身而言卻太呆板了,遺留下的內容也太多了。一個包含B-I-R-D(鳥的英文拼寫)數據的每個字母怎麼能夠真正抓住所有微妙而游移不定的細微差別呢?如果這些字母與外部世界的真正鳥類無法溝通的話,對這個程序來說又怎麼能具有任何真正的含義?就算撇開這個問題不談,首先這些符號概念從何而來?它們是如何進化和發展的?又是如何通過外界的反饋而形成的?
荷蘭德的研究成果並沒有在密西根大學之外更廣泛的計算機科學世界里引起任何反響。對那些喜歡優雅、簡明和被證明是正確的演算法的人來說,荷蘭德的基因演算法太離奇古怪了。人工智慧圈子對荷蘭德的基因演算法研究反應較為熱烈。在這個圈子裡,他的書的年銷量可達一百至二百本。但即使如此,即使對九_九_藏_書他的書偶有評論,最多不過是「約翰是個極聰明的人,但……」這類話。
「麥克·科恩(Mike Cohen)是個中介人。」荷蘭德回憶說。在他的適應性一書剛出版不久,科恩來旁聽他的課。有一天課後他走過來對荷蘭德介紹自己,並說:「你真應該去和愛克思羅德談談。」荷蘭德就照做了。通過愛克思羅德,他又結識了漢密爾頓。很快,BACH小組的人,勃克斯、愛克思羅德、科恩、漢密爾頓就攜手聯合了。(BACH是由他們四個人名字的頭一個字母組成。他們幾乎經常一起工作。在小組成立伊始,他們就想把斯圖爾特·考夫曼網羅進來,但考夫曼去了賓州大學。) 「把我們聯繫在一起的是我們都有很強的數學背景,都強烈地感覺到進化和適應性問題比任何一個單一的問題都涉獵廣泛。我們開始定期聚會:某個人會讀到一篇文章,然後大家一起討論,激發了許多探索性思考。」荷蘭德說。
對荷蘭德來說尤為如此。他已經完成了適應性一書,但他與BACH小組成員的討論卻涉及到書中未及涉獵、留待研究的地方。基因演算法和圖解定理緊緊抓住了進化的本質問題,對此他深信不疑。但即便如此,他仍然不免要遺憾,基因演算法對進化的赤|裸裸的解釋畢竟過於簡單了。他的理論把「生物體」直接當作由程序員設計出來的單純的DNA,這樣的理論一定存在缺憾。它對於在複雜環境中複雜的生物體的進化能向我們說明什麼呢?什麼也不能說明。基因演算法相當不錯,但僅僅是基因演算法本身,並非包括適應性作用者。
這些早期研究成績斐然,即使荷蘭德並不大肆渲染,其名聲也已使「分類器系統」這個詞開始流行了起來。比如1980年,匹茲堡大學的史蒂芬·史密斯(Stephen Smith)開發了一個能夠玩撲克的分類器系統,並用它來和一個也有學習功能的老一點的玩撲克牌的軟體對抗。這場對抗甚至不成其為比賽,分類器系統輕而易舉地就贏了。1982年,泊拉羅德公司的斯圖爾特·威爾遜(Stewart Wilson)用分類器系統來協調電視攝影機和機械手臂的動作。他的應用表明,水桶隊列和基因演算法能夠導致分類器規則的自發組織,從而自我分類成一個個小組,起到控制子規則的作用,產生我們所需要的特殊而協調的動作。1982年,荷蘭德的學生拉森·勃克(Lashon Booker)在他的博士論文中將分類者系統運用在一個模擬的環境,用它來尋找「食物」,避免「食物中毒」。這個系統很快就將自己的規則組織成這個環境的內化模型,就像一幅心智地圖。
荷蘭德從1977年左右開始為第一個分類器系統編碼。奇怪的是,這項工作並不像他期望的那樣直截了當。「我真以為只消幾個月時間我就可以編出能夠運作、對我有用的程序來。但實際上,我用了大半年的時間才做到令我自己滿意的地步。」他說。
確實,模式和預測隨處可見。但模式從何而來?所有自然的或人工的系統是如何對這個宇宙形成足夠的了解,從而對將來的事件做出預測的呢?他說,光是談論「意識」沒有用。大多數模型顯然並沒有意識:比如尋找營養的細菌,它甚至都沒有大腦。談論意識在任何情況下也是個用未經證明的假定來做的辯論。意識又是從哪裡來的?是誰設計了編程員的程序?
精神的湧現
這確實從一個側面反應了他和少年夥伴在地下室做遊戲的態度:在密西根大學,荷蘭德將極大的精力放在了和他最直接的圈子裡的夥伴共同工作之上了。尤其是在任何時候他手下都有六七個研究生,遠遠超過通常導師指導研究生的數額。事實上,從六十年代中期開始,他所指導的研究生每年都有不止一個人獲得博士學位。
確實,為什麼不呢?當他終於看到了這一點,就發現這與經濟非常相似。荷蘭德認識到,如果把張貼在布告欄上的布告當作是上市叫賣的貨物和市場上提供的服務,那麼就能把分類器想成是生產這些產品和提供這些服務的公司和廠家。當一個分類器看到有一個布告滿足了它的「如果條件」,它就會叫一個價,那麼就可以把它想成是一個正在求購生產所需供應的廠家。為使這一相似性更加完善,他要做的是,必須要使每一個分類器對自己消耗的供應付出報酬。他決定,當一個分類器贏得了張貼自己的布告的權力,它就得將自己的一部分力量轉給供應商,也就是那些觸發其張貼布告的分類器。在這個過程中,這些分類器就會被削弱。但在下一輪拍賣中,一旦它的布告上市,它會有重新聚集力量的機會,甚至能夠獲利。
荷蘭德說,最終的答案只能是「沒人操縱這一切。」因為如果真由一個編程員潛伏在幕後,就像「有鬼魂附於機器」,那麼你等於什麼都沒有解釋。你只是把這團謎推到別的地方去了。但幸運的是,還有一個選擇:從環境而來的反饋,這是達爾文的偉大洞見。一個作用者能夠改善自己的內在模式,並不需要任何超自然的指引。它只是不斷測試自己的模型,看看這些模型對真實世界的預測有多麼準確。如果它能夠在實踐中存活下來,它就調整自己的這些模型,以使自己下次做得更好。當然,在生物學上,作用者是獨個的生物體,反饋是由自然選擇提供的,模型的不斷改良被稱為進化。在認知學上,這個過程基本上是一樣的:作用者是獨立的心智,反饋自老師和直接經驗而來,改善被稱為學習。確實,這正是塞繆爾電腦跳棋手的運作機制。不管就生物學而言還是就認知學而言,一個適應性作用者都必須要利用這個世界告訴你的信息。
另一方面,這也要怪他自己讓自己做難。他以真正的荷蘭德的風格來編寫第一個分類器系統:完全依靠自己,而且是在家裡,用的是十三年前他用於旋風計劃的十六進位碼和他家的一台康莫多(Commodore)計算機。
為了使他的適應性作用者抓住湧現這個概念,荷蘭德決定,他的規則和布告不用具有特別意義的符號手段來編寫。它們將就是一排排1和0的二進位的任意序列。一個布告也許就是像10010100這樣的序列,與他的基因演算法中的染色體很類似。而一條規則,用英文來說,也許就像:「如果布告欄上有一個布告是 1###0#00的話,其中#表示『無所謂』,那就貼上01110101這個布告。」
煤氣管道的模擬不僅使高德勃格在1983年獲得了博士學位,而且使他獲得了1985年度的總統青年研究者獎。荷蘭德自己也將高德勃格的研究看作是分類器系統研究的一個裡程碑。「這非常有說服力,」他說。「它真正解決了一個實際問題,或者說,起碼是解決了一個實際問題的模擬。」而且,不無諷刺也不無欣慰的是,這個分類器系統最「實際」的一例,反過來對基本的認知理論也最具說服力。
荷蘭德將適應性作用者的這部分稱為「水桶隊列」演算法,因為其方法是將獎賞從一個分類者傳到前一個分類者。這有如希伯的強化神經突觸的大腦理論的直接翻版。或者,從這個意義上來說,與在計算機上調訓模擬的神經網路也如出一轍。當想到這些時,荷蘭德知道他快要觸及到問題的實質了。以利益為驅動力的經濟強化是一個極為強大的組織力量,就如亞當·斯密的那隻看不見的手在現實經濟中具有強大的力量一樣。荷蘭德認識到,從原則上說,你可以用一組完全隨意的分類器來啟動系統,這樣,作用者這個軟體就會像新生嬰兒一樣手舞足蹈地亂蹬亂踹。然後,隨著環境不斷強化某些行為,隨著水桶隊列發生作用,你可以看到分類器將自己組織為前後連貫的序列,從而產生預期的行為表現。一句話,學習從頭開始就被設入于系統之中了。
當然,下一個問題就是,怎樣做到這個?荷蘭德在BACH九*九*藏*書小組和夥伴們長時間地討論這個基本概念。但到最後只得出,有一個辦法能確定這個概念:必須建立一個計算機模擬的適應性作用者,就像他十五年前研究基因演算法一樣。
但荷蘭德對於應用性研究並不感興趣。他想要的是一個關於適應性作用者的基本理論。從他的角度來看,這二十年來人類在人工智慧領域取得進展的代價就是忽略了所有重要的方面,從對學習的研究到對來自環境的反饋的研究都受到了忽略,在荷蘭德看來,反饋是最根本的問題。但除了像塞繆爾這樣個別的人物之外,人工智慧領域的人似乎都認為,學習是可以放置一邊,不忙應付的。他們以為可以待他們將對語言的理解、人類問題解決法弄明白以後,或把對其他抽象推理問題的程序編完美后再來研究學習的問題。專家系統的設計者們甚至還為此而感到驕傲。他們談論「知識工程」,也就是和相關的專家交談幾個月後,為新的專家系統制定出成百條規則,來回答:「在這種情況下你該怎麼辦?在那種情況下你該怎麼辦?」這類的問題。
但這些財富究竟是從何而來的呢?當然是從最終消費者而來的:環境就是系統的所有報償之源。荷蘭德認識到,除此之外,對湊巧在頒獎的時候活躍異常的分類器給予獎賞是完全正確的。既然每一個分類器都對供應有所付出,那麼市場就會保證其獎賞普及到所有中選的分類器,從而產生他所尋求的某種自動報償和懲罰機制。他說:「如果你生產出對大家都合適的產品,那麼你就會獲利。如果不是這樣的話,那就沒人會買你的東西,你就會破產。」所有能夠產生有效行動的分類器都會被強化,任何參与布局的分類器都不會被忽略。隨著時間的日積月累,隨著整個系統不斷汲取經驗和從環境中獲得反饋,每一個分類器的強度就會與自己對作用者的真正價值相符。
「與主流人工智慧研究正相反,我認為競爭比連貫一致性更為本質。」連貫一致性是個幻想,因為在一個複雜的世界里,經驗的連貫一致性是沒有保障的。但對於與自己所處的環境玩遊戲的作用者來說,競爭是永恆的。「另外,除了經濟學和生物學對競爭有所研究之外,我們還沒有提煉出何為競爭之主要特質來。」對於競爭的豐富多采性,我們只剛剛開始認識。想一想神奇的競爭能夠產生出合作的巨大推動力,某些作用者為獲得相互支持而自髮結為聯盟,相互形成象徵性的關係。這種情形發生在所有複雜的適應性系統的每一個層次,從生物、經濟到政治。「競爭和合作看上去也許是對立面,但在某種深層次上,它們是相同事物的兩個方面。」
這確實是一個問題。不幸的是,赫伯式的強化作用是一個過於廣泛的一般性概念,無法提供解答。荷蘭德感到非常困惑,一直到有一天他偶然回想起他在麻省理工學院上的基本經濟學課程,那是著名的經濟學教科書撰寫人保爾·塞繆爾森上的課,他才意識到他幾乎已經解決了這個問題。他的布告欄前的拍賣已經為他在系統中建立了某種市場機制,通過允許分類器量力叫價的辦法,他已經創造出了通貨。所以,為什麼不採取下一步行動?為什麼不創造一個完整的自由市場經濟,讓強化能夠在利益驅動下發生作用呢?
正因為如此,所以他仍然堅持認為當時的康莫多計算機對他而言意義甚大。大學的計算機上是共享的,這令人頭痛,他解釋說:「我喜歡直接在計算機大忙小亂地編寫程序,但如果用大學的計算機,就不可能容許我一口氣上機八個小時不下來。」荷蘭德把個人電腦看作是上帝的恩典。「我發覺我可以在我的個人電腦上編寫程序,可以獨個擁有於家中,不用再依賴任何人。」
同時,荷蘭德還從基於規則的系統的中央控制的常規概念中找出了例外。根據常識,基於規則的系統過於靈活了,所以不得不設計某種形式的中央控制來避免無政府狀態。因為有成百上千條規則在爭看充斥著布告的布告欄,所以總會有好幾條規則突然躥起來,相互爭執誰來張貼下一條布告。假設認為,不可能所有的規則都張貼下一條布告,因為它們的布告可能完全不能連貫一致(「扣留人質」或「扣留其妻」),或者它們的布告也許會引起完全不同的規則瀑布,這樣就會導致整個系統完全不同的表現。所以,為了防止計算機的精神分裂症,大多數系統都實行了繁冗的「爭議解決」戰略,以保障每次只有一條規則能採取行動。
總之,他根本就沒有玩那套學術界自我推銷的把戲,這似乎不是他喜歡玩的遊戲。更確切地說,他並不真的介意他是贏是輸。打個比喻,他仍然情願和他的小夥伴們一起混在地下室里做遊戲。荷蘭德說:「這就好比是打棒球,只不過你參加了非主力隊,而沒有參加主力隊。但重要的是打棒球的樂趣,而不是參加哪個隊。我所從事的科學對我而言總是其樂無窮的。」
事實上,煤氣管道的問題之複雜,就連荷蘭德都發愁,擔心高德勃格的研究較之其它分類器系統運用小組,也許更可能失敗。但其實他根本不必擔心。高德勃格的系統非常圓滿地學會了控制這個模擬的煤氣管道系統:這個系統從一組完全隨意的分類器開始,在經過一千天的模擬試驗之後,達到了對控制煤氣管道的專家水平。而且,這個系統掌握操作煤氣管道的規則簡單得不可思議。它的布告僅為十六個二位數那麼長,它的布告欄上每次只有五條布告,總共只有六十條分類器規則。事實上,高德勃格在他家的蘋果二型機上只用了64千位元組的內存就運作了整個分類器系統和煤氣管道的模擬程序。荷蘭德笑著說:「高德勃格是我最緊密的追隨者。」
他們特別指出,這三項原則應能夠產生缺席的等級制度的自發湧現。確實,這正是人類所有知識的基本組織結構。一組規則形成缺席的等級制度,從根本上來說與荷蘭德所稱的內在模型是同一個意思。我們用較弱的一般性規則和較強的特例來預測事物該如何分類:「如果它是流線型的,有鰭,生活在水中,那它就是魚。」但「如果它同時還有毛髮,呼吸空氣,而且很大,那它就是鯨。」我們用同樣的結構來預測如何做事:「『i』總是在『e』之前,除非其後有『c』。」但「如果是 neighor、weigh、或weird這些字,則『e』總是在『 i』之前。」我們還用同樣的結構來預測因果關係:「如果你朝一條狗吹口哨,它就會向你跑來」,但「如果它向你嗥叫,並把頸背部的毛髮豎起來,那它也許不會向你跑來。」
荷蘭德說,事實上,在任何情況下都會有類似「如果……則」的規則。六十年代末,在人們遠還沒聽說過專家系統以前,基於規則的系統就已經作為人類用於認知的普通功能的計算機而被卡內奇-麥倫一派的愛倫·紐威爾和赫伯特·西蒙介紹進計算機編程里來了。紐威爾和西蒙把每一條規則都當作一個單一的知識包,或一個單一的技術組合。比如「如果吱吱的叫聲是來自一隻鳥,那麼吱吱叫的東西就有翅膀」,或「如果在扣留你的反對者的人質還是扣留反對者的夫人之間選擇,那就扣留反對者的夫人。」而且,這些規則指出,當程序員用這種方式來表達知識時,這個規則就自動獲得了認知的某種絕妙的靈活性。根據條件採取行動的規則,即「如果情況是這樣的,那就採取那種辦法」,意味著這樣的系統不在一個固定的系列,比如FORTRAN或PASCAL的某些子程序中運行。一條特定的規則只有在它的條件被滿足后才會被激活,這樣,它的反應對它所對應的情況而言就是恰如其分的。確實,當一條規則被激活后,它很可能會引起全部規則的連鎖反應:「如果情況是A,就採取B措施」、「如果情況是B,就採取C措施」、「如果情況是C,就採取D措施」,等等。大體上說,整個新的程序隨著這一系列的連https://read.99csw.com鎖反應而產生,並會按照所提出的問題給出完善的答案,與讓人興奮的遊戲式的盲目而僵硬的計算機行為相比,這才真的是智能系統所需要的機制。
當然,關鍵是要弄明白這些分類器所起的作用。作用者不能獎賞那些在頒獎的時候正巧表現活躍的分類器。那就會像把得分的一切功勞都歸於那個湊巧帶球衝過底線的隊員,而對操縱全局、把球傳給他的四分衛,對攔截了對方進攻、為他開路的前鋒,或任何替他傳球的隊員的功勞一筆勾銷了。這也像把贏得一盤國際象棋的全部功勞都歸於將住了對手的國王的最後一步棋,而無視為獲得全局勝利而布局中的許多關鍵的棋步。但還有其它替代辦法嗎?如果作用者為了獎賞正確的分類器而必須預期回報,在沒有被編入程序的情況下立該怎麼做呢?在事先一無所知的情況下,作用者如何得知這些布局的價值呢?
荷蘭德認為,搜索于可能性空間正是基因演算法可以承擔的工作。事實上,當你想到這一點時你就會看到,達爾文的比喻和亞當·斯密的比喻恰好可以相輔相成:企業能夠隨時間進化,為什麼分類器不能夠呢?
另外,為旋風和IBM701編寫程序的經驗使荷蘭德一點兒也不覺得這些桌面小電腦過於原始。事實上,當他買康莫多電腦時,他覺得已經前進了一大步。實際上他 1977年就買了被稱為「微心智」(Micromind)的電腦,當時這台電腦看上去像是嶄新的蘋果二型機的強勁對手。「那是一台很好的小型計算機。」他回憶說。確實,儘管那隻不過是一個黑匣子里的一堆電路板,可以與電報打字機連接后做信息輸入和輸出,而且沒有屏幕,但它有8000位元組和8位內存。價值三千美元。
複雜嗎?荷蘭德不予否認。而且,這種拍賣就是以任意可信值取代任意爭議解決戰略。但現在讓我們假設這個系統能夠從這些可信值中吸取經驗,那麼這種拍賣就會排除中央仲裁人,從而讓荷蘭德獲得他正想要的東西。並不是每一個分類器都能夠贏:布告欄非常大,但卻並非無限大。也並不是跑得最快的就一定能贏。如果時來運轉的話,即使「貓王還活著」也能得到張貼自己的布告的機會。但一般來說,總是那些最強健的和可信值最高的假設獲得系統表現的控制權,而那些離譜的假設時不時出現只增加了這個系統的一點兒自發性。而且如果有一些假設相互矛盾,那也不應該成為危機,而應該是一個機會,一個讓系統決定誰的可信度更大,從而吸取經驗的機會。
荷蘭德認為會發生兩件事:預測和反饋。這是他在IBM公司工作時他和塞繆爾談及跳棋時洞察到的。預測正如其詞意所示:想於事先。荷蘭德仍然記得塞繆爾一再重複這一點。「玩好一局跳棋或象棋的本質就是將寶押在不那麼明顯的布局上。」也就是走出的棋路要能夠使你在後來處於有利的地位。預測能夠助使你抓住機會或避免墮入陷阱。一個能夠想於事先的作用者顯然比不能想於事先的作用者要更具有優勢。
荷蘭德當然不會為這一洞見而大驚小怪:基因演算法一直存儲在他腦子裡。他剛開始對分類器做二進位的表述時就想到了基因演算法。分類器用英文來陳述就像:「如果有兩個布告,其模型分別是1###0#00和0#00####則張貼布告01110101。」但在計算機里,各部分信息會被串在一起,被寫成一連串的信息: 「1###0#000#00####01110101」。對基因演算法而言,這就像是數字染色體。所以可以完全用同一種方式來執行這個演算法。在大多數情況下,分類器會像以往一樣在市場上欣然買進或賣出。但系統會經常性地選擇最強的一對分類器來繁衍後代。這些中選的分類器會通過性|交換來產生一對後代,從而重組它們的數字化建設磚塊。而新生代會取代一對力弱的分類器。然後,新生代將有機會來證明自己的價值,通過水桶隊列演算法使自己越變越強壯。
比如,從標準的紐威爾-西蒙的角度來說,張貼在布告欄上的規則和備忘錄都應該用「鳥類」或「黃色」這樣的符號性語言來編寫,這樣做是因為我們特意要使之接近於人類頭腦中的概念。對人工智慧領域里的絕大多數人來說,用這樣的象徵來代表人類頭腦中的概念,其正確性已毋庸爭論,這是幾十年來的金科玉律,紐威爾和西蒙是這派觀點的最雄辯的代表人物。而且,這也確實抓住了我們的頭腦進行實際思考的很大特點。計算機中的象徵可以被結合到繁冗的數據結構中,來表現複雜的情況,就像概念是與心理學家頭腦中的各種模式相聯繫的,是從中產生的一樣。反過來,這些數據結構也能夠被程序用來與推理和問題解決這類的大腦活動競爭,就像我們頭腦中模擬的類型會在思考的過程中被重建和改變一樣。確實,如果你和許多研究人員一樣,從字面上去理解紐威爾-西蒙的觀點,你就會看到,這種符號處理就是思考。
巴奇小組的成員們至今在說到這一段故事時還帶著詫異的神情。當時滿校園都是計算機:VAX機、大型計算機、甚至高功能的繪圖工作站。為什麼要用康莫多機?為什麼要用十六進位碼?幾乎沒人還在用十六進位碼了。如果你真是個死心塌地的計算機高手,想方設法要從一台計算機的程序中榨出最後一點利用價值的話,你也可以用所謂組合語言來寫,那起碼能夠用像MOV、JMZ和SUB這樣的幫助記憶的符號來取代數字。或者,你也可以用PASCAL、C、FORTRAN或 LISP這樣的高級語言來編寫程序。這些語言是人類比較容易理解的。尤其是科恩,仍然記得為此與荷蘭德做過長時間的激烈爭論。如果用這些夾雜字母的數字將程序寫得雜亂無章,誰會相信它能運作呢?就算有人相信你,但如果你的分類器系統是在家用計算機上編寫成的,誰又會用它呢?
為實現競爭的機制,荷蘭德決定把張貼布告變成某種拍賣活動。他的基本想法是,不要把分類器當作是計算機指令,而當作對在特定情況下張貼什麼布告最好的假設和推測。通過每一條假設的數值來衡量其道理和力量,這樣就有了一個叫價的基礎。在荷蘭德的布告張貼觀念中,每一個循環開始時就像以往一樣,所有的分類器都在掃描布告欄,尋找與自己相關的布告。它們就像以往一樣,一發現與自己相關的分類器會站起來,準備張貼自己的布告。但與以往立即張貼自己的布告不同的是,每一個分類器都會先量力叫價。一個對「明天太陽會從東邊升起來」的經驗確信不疑的分類器也許出價一千,而一個確信「貓王還活著,晚上出現在華拉華拉汽車旅店 6號」的分類器也許出價一。然後這個系統就會收集所有的出價,用抽彩給獎法選擇一組贏家,叫價最高的最有可能贏。中選的分類器就會張貼它們的布告,就這樣循環往複。
荷蘭德說,在認知領域,任何我們稱為「技術」或「專業知識」的,都是一種內含的模型,或說得更精確些,是一組長期經驗積累和凝練而成的,即銘刻在神經系統的巨大而相互環扣的常規操作程序。讓一位有經驗的物理教師看課本練習題,他不會像個新手似的把時間浪費在抄錄眼所能及的所有公式。他腦中的程序總是會立刻就告訴他解題的方案:「啊哈,這是一道能量題。」發個球給網球名將艾芙特,她不會浪費任何時間爭辯這球該怎麼接,她頭腦中的程序會立刻就讓她本能地回手接球,打你個無從招架。
結果荷蘭德決定自己設計一個雜交的模擬適應性作用者,把神經網路和專家系統的長處相結合。為了加強計算機效率,他先用專家系統有名的「如果……則」規則開始入手。但他是從神經網路角度採用這個規則的。
儘管荷蘭德的同事對此非常惱火,但他的第一個分類器系統卻運轉得非常好,這足以能夠使他確https://read.99csw.com信,這個系統確實實現了他的意圖,而且確實為完整的認識理論播下了種子。這個系統的早期版本是他與密西根大學心理學教授裘迪·瑞特曼(Judy Reitman)共同研製的,發表於1978年。在對這個版本系統的測試中,其作用者學會了如何用基因演算法運行一個模擬的迷宮,運行速度要比沒有用基因演算法快十倍。這次測試同時也證實了,分類器系統能夠顯示心理學家所稱的「轉換」:它能夠把在前一個迷宮中學到的規則運用到后一個迷宮的運行中去。
這種表示法很不符合常規,荷蘭德只得給他的這些規則取一個新名稱,「分類器」,因為它們的辦法是根據布告的特殊類型來分別不同的布告。他認為這個抽象的表示法至關重要。因為他看到太多人工智慧研究人員自己愚弄自己,假裝他們基於符號的程序「知道」。在他的分類器系統中,布告的意義必須來自於它導致一條分類器規則激活了另一條分類器規則這種方式,或它具有意義是因為它的某一部分是直接被探測真實世界的感應器所編寫的。概念和頭腦中的模型就會作為自我支持的一群分類器湧現出來,它們應該能夠像自動催化組那樣自組和自我重組。
最終荷蘭德只好做出讓步。不過到他同意將分類器系統交給一個研究生,里克·里奧羅(Rick Riolo)時,早已是八十年代初了。里克將這個系統改編成一個一般性功能的、能夠在所有類型的計算機上運行的軟體系統。荷蘭德承認說:「只不過這不是出於我的本能。我總是喜歡將實驗做到能讓我看到它真的能夠運行的地步,然後就失去了興趣,又回到了理論。」
但不幸的是,他發現,到了1977年,人工智慧主流知識已經不如1962年那麼有助於他了。到了1977年,人工智慧的研究領域無疑已經取得了很大的進展。比如在斯坦福大學,人工智慧小組正在研製一系列被稱為專家系統的極富成效的程序。專家系統能夠模擬專業知識,比如可以通過運作成百條規則來模擬一個醫生: 「如果病人患的是細菌感染性腦膜炎,正在發高燒,那麼也許是某種細菌感染。」該項研究已經引起了投資者的興趣和注意。
從根本上來說,一個適應性作用者經常是在和它所處的環境做遊戲。而這又確切地意味著什麼呢?如果剝離到本質,這對遊戲的作用者的生存和發展來說,究竟會發生什麼?
荷蘭德說,這個理論說明,無論這些原則是作為分類器系統來執行,還是以別的形式來實行,缺席的等級制度都應該會湧現出來。(事實上,《歸納法》一書中引用的許多計算機模擬實驗都是用PI來做的。PI是查加德與赫力約克設計的更常規的基於規則的軟體程序。)不管怎麼說,看到等級制度能夠真的從高德勃格的煤氣管道模擬中湧現而出,真是非常令人激動。分類器系統總是從零起步,它最初的規則完全是在計算機模擬的太初混沌中隨意設置的,然而就在這混沌之中,美妙的結構湧現了出來,令人驚喜,讓人訝異。
荷蘭德說,這對美洲繁色瑞蝴蝶(viceroy butterfly)也同樣。這種蝴蝶是有著醒目的橘黃色和黑色的昆蟲。如果鳥類嘗過它的味道的話,無疑會對它垂涎三尺。但鳥類很少捕食這種蝴蝶,因為它們的翅膀的花紋演變得很像所有幼鳥都避之不及的味道難吃的王蝶(monarch butterfly)。因此就發生了這樣的情況:繁色瑞蝴蝶的DNA上編碼了一個模型,這個模型模擬的世界中有鳥類、有王蝶、以及王蝶味道難吃。每天繁色瑞蝴蝶在花叢中飛來飛去,無疑是在拿自己的生命做賭注,打賭它假設自己對外部世界的模擬是對的。
他無疑做到了這一點。1975年出版的《自然和人工系統中的適應性》一書羅列了大量的方程式和分析。該書總結了荷蘭德二十年來對學習、進化和創造性之間深刻的內在關聯的思考,對基因演算法做了周密的陳述。
講完這段故事後,荷蘭德說,微心智計算機公司這麼快就倒閉了,真是太令人遺憾了。他一直到感到八千內存實在不夠用時才開始轉用康莫多電腦。他說,當時康莫多電腦是一個最理想的選擇。它採用了與微心智同樣的微處理器晶元。這意味著,幾乎不用做任何改變就能夠讓它運行十六進位碼。康莫多的內存要大得多,帶屏幕顯示,而最大的好處是,「康莫多能讓我玩遊戲。」他說。
但對荷蘭德來說,預測和模擬模型的概念實際上要比有意識的思維深奧得多。從這點來說,也遠比大腦的存在要深奧得多。他宣稱:「所有複雜的適應性系統——經濟、精神、生物體等,都能建立能讓自己預測世界的模型。」就連細菌也如此。很多細菌都有特殊的誘導酶系統,這種誘導酶使它們游向葡萄糖濃度更強的方向。毫無疑問,這些誘導酶模擬了細菌世界的一個關鍵的方面:化學物質總是從源頭向外擴散,隨著離源頭越來越遠而濃度越來越小。誘導酶自然而然地就把這樣一個明確的預測編入了基因碼:如果你向濃度較高的方向游去,就可能找到有營養的東西。「這不是有意形成的模式,」荷蘭德說。「但遵循這個模式的生物要比不遵循這個模式的生物更具優勢。」
這麼說,荷蘭德幾乎就摸到門了,但還不盡然。荷蘭德把水桶隊列演算法建立在基本的基於法則的系統之上,並賦予了他的適應性作用者某種形式的學習功能。但適應性作用者還缺少另一種學習的形式,開採式學習與探險式學習之間是有區別的,水桶隊列演算法能夠強化作用者已有的分類器,可以打磨已有的技能,但它卻無法創新。僅僅只依靠水桶隊列演算法,會使系統趨於最大化的平庸狀態,因為這個演算法無法使系統在無限廣闊的可能性空間搜索到新的分類器。
荷蘭德說,紐威爾-西蒙式的基於規則的系統的內部組織與這個布告欄的比喻非常接近。這個系統的內部數據結構就相當於這種布告欄,其中包含了一系列數字布告。然後還有大量的規則,也就是計算機把上百、甚至上千的數字編碼成自身的部分。當整個系統處於運作狀態時,每一條規則都經常掃描布告欄,搜尋符合自己「如果」條件的布告。每當其中一條規則發現了符合自己條件的布告,它立刻就會張貼一條數據信息,來續接「則」這部分。
對荷蘭德來說,這正是人工智慧的主流方向缺乏對學習問題的研究興趣所導致的缺憾。「我們陷入的困境,與我們在不懂物種如何進化之前就對物種進行分類時所陷入的困境是同樣的。」荷蘭德說。「你可以從這類相似的系統中學到不少東西,但最終,這條道路是走不遠的。」他仍然堅信,必須從赫伯的角度來理解概念:湧現的結構是從某種更深層的、不斷在環境反饋中調整的神經基質中發展而來的。正如雲彩形成於水蒸氣的物理和化學變化,概念是模糊的、游移不定的、具有動力的。它們經常在重組和改變形狀。「在理解複雜的適應性系統上,最關鍵的是要弄清楚層次是怎麼出現的?」他說,「如果你忽略了下一個層次的規律,你就永遠不可能理解這個層次的問題。」
結果就是,這群規則會隨時間而改變和進化,在可能性空間中不斷發現新的領域。由此你就會達到目的:將基因演算法當作第三層,置於水桶隊列演算法和基本的基於規則的系統之上,荷蘭德終於構築成了一個不僅能夠吸取經驗,而且具有自發性和創造性的適應性作用者。
但預測的概念簡直就像建設磚塊的概念一樣微妙。比如說,我們通常將預測當作人類有意識的、基於對世界的大致模擬之上的思考。當然有許多這類通過模擬做出的預測。超級計算機對氣候的模擬就是一個例子,某公司開始一項商業計劃又是一例,美國聯邦儲備局所做的經濟規劃也是一例,就連英格蘭的巨石柱也是一個模擬的模型:巨石的環繞設計能讓占卜牧師像用一個read.99csw.com粗糙但有效的計算機一樣來預測春分和秋分的來臨。而且,各種各樣模擬的模型經常就在我們的頭腦里。逛商店的人極力想象新沙發擺在自家客廳里的情形,或一個膽小的僱員力圖想象冒犯老闆的後果。我們經常在使用這些「腦內模型」。事實上,許多心理學家都相信,有意識的思維都是基於「腦內模型」的思維。
說到十六進位碼,那是因為微心智計算機當時沒有其他語言可供使用,而荷蘭德又不願意等待。「我習慣了用組合程序,我用十六進位碼就像用組合程序一樣方便,所以用十六進位碼來寫程序對我來說並不困難。」
荷蘭德喜歡在談到內含的專業知識時舉中世紀創建了哥特式大教堂的建築師的技術為例。他們當時無法計算強度和承載力,或任何一個現代建築師能夠計算的事。十二世紀沒有當代物理學和結構分析。那些中世紀建築師建造那些高聳的拱形天花板和巨大的扶壁,靠的是師徒相傳的標準操作程序,是實際經驗給了他們哪種結構能夠支撐、哪種結構會坍塌的常識。在他們那裡,物理學的模型完全是內含的和直覺的。然而這些中世紀的工匠們發明的建築結構一千多年後仍然聳立於世。
荷蘭德原來以為能夠在一兩年內完成一本書,一本關於圖解定理、基因演算法、以及他對適應性的總的思考的彙編。但事實上,這本書的出版耗費了他十年的時間。他的撰寫和研究一直是齊頭並進,他不斷有新的想法需要探索,或理論上有新的方面需要分析。他指派他指導下的好幾個研究生去做計算機實驗,也就是證實基因演算法是否真正有用、是否是一個解決最優化問題的有效辦法。荷蘭德覺得他這是同時在提出和實踐他的適應性理論,他希望做得準確無誤,既深入細緻、又精確嚴謹。
「他們中有些人確實絕頂聰明,與他們相處給我帶來了很大的樂趣。」他說。荷蘭德看到有太多教授累計了長長的論文名單,其實這些論文都是他們和他們所指導的研究生共同研究的成果,甚至完全是由他們的學生寫的。所以他故意用相當放手的方式對研究生進行指導。「他們都按照自己的想法進行研究,做他們自己感興趣的事。然後我們所有的人每周一次圍聚在桌旁,其中有一個人就會告訴大家他的論文已經進行到什麼程度了,我們大家就會就此展開批評和討論。這對所有介入者來說都充滿了樂趣。」
「我們感到歡欣鼓舞,這是能夠真正被稱為湧現模型的首例。」荷蘭德說。
但對荷蘭德來說,最感欣慰的是1983年戴維·高德勃格(David Goldberg)的研究證明。高德勃格是一個攻讀博士學位的土木工程師,在此幾年前就選修荷蘭德的適應性系統課程,並一直對此深信不疑。高德勃格說服了荷蘭德成為他的博士論文答辯委員會的主持人之一。他的論文證明了,怎樣把基因演算法和分類器系統運用於對一個模擬的煤氣管網線的控制。當時,這是分類器系統對付過的最複雜的問題。任何一個煤氣管道系統的目的都是以儘可能小的成本來滿足終端用戶的需要。但每一條煤氣管道都有幾十個或幾百個壓縮機,將煤氣從幾千英里的大管徑管道抽出來。用戶的煤氣用量每一小時、每個季度都會有變化,而壓縮機和管道常會有滲漏,限制了整個系統在適當壓力下的供氣能力。安全控制要求煤氣的氣壓和運速保持在適當的程度,但任何一個因素都會影響到其它因素,即使想使一個簡單的煤氣管道發揮最大效益,都複雜到根本無法用數學來分析。管道操作者是通過長時間的「學徒」才學會用本能和感覺來控制煤氣管道系統的這門技術的,就像我們學開車一樣。
所以荷蘭德就把這個相似的布告欄比喻用於他的適應性作用者的設計之中,但同時他又在細節設計上返回到對傳統觀念的反抗。
荷蘭德說,這一點在高德勃格的系統如何學會控制滲漏的方法中表現得最為明顯。這個系統從一組隨意的分類器開始,首先掌握一系列對正常的煤氣管道的運行較為廣泛適用的規則。比如在一次傳送煤氣的操作中,出現了一條可以被解釋為「一直傳送『沒有滲漏』的信息」。很顯然,這是一條過於一般的規則,只適用於管道運行正常的情況。但在高德勃路開始在各種模擬的壓縮機上打出模擬的洞來的時候,這個系統很快就發現了這個問題,其操作立刻就失靈了。但通過基因演算法和水桶隊列,這個系統最終從自己的錯誤中反省了過來,開始產生了一些比較特殊的規則,比如「如果輸入氣壓很低,輸出氣壓也很低,氣壓轉換率是消極的,則傳送『滲漏 』信息」。而且,只要這條規則一經實行,就會產生比第一條規則高得多的叫價,把第一條規則從布告欄上取代下來。如此這般。大體上說,第一條規則在不出現非常規行為的正常情況下會發生作用,而一旦發生意外情況,第二條規則和其他規則就會取代第一條規則,對意外的行為做出校正反應。
當高德勃格告訴荷蘭德這些時,荷蘭德激動萬分。在心理學上,這種知識的組織被稱為缺席的等級制度(defulthierarchy),當時這正是荷蘭德久埋腦海的研究課題。自1980年起,他一直在與三位密西根大學的同事,心理學家凱瑟·赫力約電(Keith Holyoak)、里查德·尼斯伯特(Richard Nisbett)和哲學家保爾·查加德(Paul Thagard)密切合作,致力於創立一個關於學習、推理和知識發掘的認知理論。正如他們在1986年出版的《歸納法》一書中所說的那樣,他們四個人都相信,這個理論必須建立在三項基本原則上,而這三項基本原則也正是荷蘭德的分類器系統的原則:即,知識能夠以類似規則的思維結構來表達;這些規則始終處於競爭之中,經驗使得有用的規則越變越強,無用的規則越變越弱;具有說服力的新規則產生於舊規則的組合之中。這個有大量的觀察和實驗結果支持的觀點表明,這些原則可以解釋各種恍然大悟的洞見,包括從牛頓對蘋果落地的頓悟,到日常生活中對相似性的發現。
所以,我們又返回到學習這個問題上來了:分類器怎麼來證明自己的價值,又怎麼為自己獲取可信值呢?
荷蘭德說:「假如把這個系統當作某種辦公室,布告欄上有必須今天處理的備忘錄,每一條規則相當於辦公室里的一張辦公桌,負有處理某種特定的布告的責任。每一天開始的時候,每一個辦公桌都將自己負責處理的備忘錄集中起來。到一天結束的時候,每一張辦公桌都將處理結果的備忘錄再張貼到布告欄上。」當然,到了第二天早上又開始重複這個循環。另外,有些備忘錄是被探測器張貼上去的,以使這個系統保持與外界正在發生的事件的聯繫。還有一些備忘錄也許是被激活的效應器,也就是使系統能夠影響外部世界的子系統。荷蘭德說,探測器和效應器相當於眼睛和肌肉的計算機機制。所以,從原則上說,一個基於規則的系統很容易就能從它的環境中獲得反饋,這是它最首要的要求之一。
公平地說,就是知識工程師都不得不承認,如果程序真能夠像人一樣通過傳授和經驗學到他們的專業知識,如果有人能想出來如何在應用這些軟體時不至於像現在這麼複雜和麻煩的話,事情就會順利得多了。但對荷蘭德來說,這正是問題之所在。拿現存的「學習模型」草草拼湊成一個軟體解決不了任何問題。學習是認知的最根本的問題,正如進化是生物學的最根本的問題一樣。這意味著,學習的機制必須在一開始就投入到認知建築圖紙中去,而不是到最後才被草率加入。荷蘭德的理想模式仍然是赫伯式的神經網路,其最重要的一點是,每一次思維的神經衝動都強化了其神經連接,從而使思考成為可能。荷蘭德確信,思考和學習只是大腦中同件事物的兩個方面。他希望在他的適應性作用者的研究中能抓住這個根本的問題。