人和計算機的對弈

  ,歷史很久了,如果從紅白機時代算起,也許比那還早。下面小編給你介紹,歡迎閱讀。

  

  你和電腦下過棋嗎?不要以為能和電腦下棋的都是世界冠軍,像卡斯帕羅夫那樣的人物,其實我們很多人都曾和電腦下過棋。不信嗎?那我問問你,你在你的PC機上玩過圍棋、象棋、國際象棋的遊戲嗎***注意這裡說的可不是網路遊戲***?玩過,那其實就是在和電腦下棋。如果還沒有,那你當年在任天堂的紅白機上下過五子棋吧?那其實也是在和電腦下棋。

  和電腦下棋其實真沒什麼了不起的,只不過和卡斯帕羅夫下棋的是一個更高階的軟體,而和我們下棋的是一些簡單軟體而已,所以想和電腦下棋嗎,去市場上買張盤迴來,簡單。

  可是就這麼簡單的一件事,回回都動靜不小。從上個世紀到現在,“深藍”、“更深的藍”、“弗裡茨”、“更弗裡茨”等等,一時都成為明星。

  ,歷史很久了,如果從紅白機時代算起,也許比那還早。人們最早開始編寫下棋軟體的目的就是檢驗計算機的運算速度,拿出來和真人下棋,只是副產品。現在的下棋軟體已經不是副產品了,而是由專家研究出來的,專門拿出來難為世界冠軍的。到這裡,與人為難似乎成為了讓電腦下棋的惟一目標,下棋成為一場在人與電腦之間的競賽。真的是這樣嗎?

  實際上這並不是什麼人與電腦的競賽,確實地說應該是人與自己的創造力的競賽。不是嘛,電腦是人制造的,軟體是人編寫出來的,離開了人,這一切都不會存在。而比賽的輸贏更不會說明什麼問題,電腦有一天統治人腦的擔憂至少在現在還找不到什麼確實的依據。人贏了,則編寫程式的人要開拓自己的創造力;電腦贏了,則棋手要開拓自己的思路,終歸進步的都是人腦。

  所以說白了,現在和卡斯帕羅夫下棋的電腦並沒有什麼,也就是當年紅白機的後代而已,沒什麼了不起的。至於輸贏,當年任天堂的紅白機贏了你,你會耽心它要統治你了嗎?

  一、電腦挑選了國際象棋作為對手

  1946年,馮?諾伊曼博士授命製造一臺電腦,為美國軍方研究製造***服務。1950年,當電腦MANIAC I完工之後,工作人員用“沒有象的國際象棋”對它進行了測試,他們畫了一個6格乘6格的小棋盤***正常的國際象棋棋盤為8格乘8格***,當時電腦需要12分鐘來計算2個回合,而在有象的情況下,電腦需要計算3小時。第一局,電腦自己戰勝了自己;第二局,電腦輸給了一位大師;第三局,電腦戰勝了一位女士。從此,國際象棋就成為電腦挑戰的目標,這場“人類vs人工智慧”的較量一直持續到今天,成為全世界關注的熱點。

  對電腦來說,下棋的最大困難是計算。有人可能以為擅長高速計算的電腦可以毫不費力地算出雙方所有可能的棋步,從中選擇最優的方案,一直算到能把人類棋手的“王”將死,但事實上這是一個誤區。假如一個局面有40步棋可以走,那麼每一個回合就存在1600種可能性,因此當一局棋進行到40回合時,就有10的128次方那麼多的選擇,超過了宇宙中已知的原子數量***約10的80次方***。迄今為止宇宙大約存在了10的18次方秒鐘,以上估算出的數字表明,即使啟用最高速的電腦計算,恐怕算到宇宙毀滅的那一刻,還是算不出如何走第一步!顯然,要電腦來計算如此龐大的資料是不可能的,所以科學家試圖讓電腦變得可以像人類一樣“思考”、“選擇”。人類在對弈時,每步棋基本上只會計算10種以內可能性,他可以經驗和知識來判斷那一種方案對他最有利。依靠這種“搜尋最優”的方式,人類特級大師大概計算到可以15個回合以後的局面。於是,電腦必須解決這樣一個問題:它如何像人類一樣思考?能夠思考的關鍵是學會評價各種各樣的局面。所以,科學家必須建立一套嚴密的運算體系,使電腦具備“分析”的能力。

  1958年,卡耐基—梅隆大學的三位學者發明了一種運算規則“Alpha-Beta”,使得電腦有具備了選擇功能,計算能力有了第一次的突破。值得一提的是,“Alpha-Beta”運算規則純粹由數學公式推導,不包含任何國際象棋理論。那時候電腦可以計算到3個回合之後的局面。1979年美國底特律市舉行國際象棋錦標賽,有幾臺電腦棋手參加比賽,電腦的棋力等級分約為2000分,約為人類初級棋手的水平。1980年代,卡耐基梅隆大學的博林納製造了一臺64個並行晶片的電腦。後來,博林納的學生許峰雄加盟了IBM,研製了“深思”和“深藍”,這才真正達到了人類高手的水平。

  “深藍”的誕生是電腦發展歷史上具有里程碑意義的一件大事。它使用200塊特製晶片,每秒能夠計算2億個局面,為此IBM公司投資超過2000萬美金,耗時六年時間。“深藍”下棋的原理如下:把所有的可能性化成樹形圖,計算每種可能的走法,把分數付給樹形圖的每個端點,分數越高局面越好。然後把分類回送到起始局面。得分最高的樹杈對應著計算機的走法,而得分最低的樹杈則對應對手的走法,程式確定了一步“好”棋後,一旦算出其他著法會導致較差的局面,就終止考慮這一著法。

  有些人會疑惑,為什麼IBM公司會不惜重金來讓電腦挑戰國際象棋?即使電腦打敗了人腦,那又能證明什麼呢?其實,“藍色巨人”IBM的本意並不在於打敗人類世界冠軍,而是希望通過研發晶片來革新技術,製造無所不能的超級電腦。現在“深藍”的技術正被用於石油勘探、數字動畫、生命科學、太空探險等領域,併發揮重要的作用。所以,人機大戰只不過是IBM進行的一場大型實驗而已。

  二、戰鬥的序幕

  1996年:深藍vs卡斯帕羅夫

  說到“深藍”,有一個人不得不提。他就是華裔科學家許峰雄。他完成了博士學位後,加入了IBM,他和他的團隊日以繼夜地為工作,並且為特別設計的晶片編寫程式。此時這個程式已經命名為深藍。

  1996年,為紀念電腦誕生五十週年,世界上最偉大的棋手卡斯帕羅夫應邀和“深藍”進行六局的比賽,總獎金額為40萬美元,比賽地點在美國費城。

  首局電腦執白,以穩健的下法應對卡斯帕羅夫最拿手的西西里防禦。局中,“深藍”弈得非常出色,而卡斯帕羅夫似乎非常比較緊張,出現了失誤,把勝利拱手讓給了電腦。卡斯帕羅夫的失利讓全世界都震驚了,人們開始極度關注在人機大戰。幸好,卡斯帕羅夫沒有讓大家失望,他在第二局正常發揮,在殘局中擊敗了電腦,本局激戰73回合。接下來兩局是和棋。

  四局的比賽讓卡斯帕羅夫對“深藍”有了足夠的瞭解。此時,他想到了一個高明的主意,他知道“深藍”程式中帶有一個收集了20世紀各位著名國際象棋大師所下的數千個棋局的資料庫,電腦所有的分析資料都來自這些對局。如果他能夠出新出奇的話,那麼電腦就可能會找不到判斷局面的依據,而出現錯誤。胸有成竹的卡斯帕羅夫採取了聰明的策略,他在後兩局的較量中儘量走一些“模糊”的著法,讓電腦無從計算。此招果然奏效,他最後連勝兩局,贏得了人機大戰的第一場勝利。

  賽後的新聞釋出會上,卡斯帕羅夫得意洋洋地宣佈:“我在電腦身上看到了一些智慧,但這種智慧卻是怪異、低效和不穩定的。我相信自己還有幾年的安穩日子。”遺憾的是,僅僅過一年之後他就樂不起來了。

  三、電腦的勝利

  1997年:深藍vs卡斯帕羅夫***回敬賽***

  IBM很快捲土重來,他們組織了第二場比賽,這次地點移到了紐約。IBM的CEO葛士納在賽前信心十足:“我們世界最強棋手對戰卡斯帕羅夫。”

  這次,許峰雄的團隊有了新人的加入,他就是美國著名特級大師本傑明,此人多次獲得全美冠軍,棋力高超。

  首局,卡斯帕羅夫取勝。人們並不感到驚訝。但第二局電腦立即還以顏色,報了一箭之仇。這局棋的過程十分耐心尋味,IBM團隊臨時在賽前更換了程式,使電腦弈棋的風格與之前大相徑庭。卡斯帕羅夫向深藍連續送上兩個兵,以換取主動權。通常情況下,電腦有99%的可能會吃兵,因為任何程式都會將兩個兵視為巨大的優勢。然而出人意料的事情發生了!電腦在思考了15分鐘之後,拒絕了卡斯帕羅夫的“禮物”!這個事情非常反常,因為電腦基本都是勻速行棋,每三分鐘走一步,但這次居然花費了5倍的時間。於是,有人猜測這是本傑明在暗中指點電腦,雖然這樣的猜測有點牽強,因即使3個本傑明也不會是1個卡斯帕羅夫的對手。無論如何,電腦的反常行為還是給了卡斯帕羅夫造成很大的心理影響,以致於棋王在判斷上犯了重大失誤,在本應和棋的局面中過早認輸。

  這場戲劇性的失利對棋王來說是一場災難,他開始擔心電腦是不是真的“進化”到讓人生畏的地步。接著的3局雙方下和。關鍵的第6局,神經緊張的卡斯帕羅夫執黑棋時搞錯了走棋順序,僅僅17個回合就潰敗,令世界譁然。

  這是歷史上第一次電腦在對抗賽上打敗人類棋王。對計算機領域來說,這是十分振奮人心的。然而對國際象棋界來說,箇中滋味就很難說了。誠然,卡斯帕羅夫是輸在心理上,可以說他其實是敗給了自己,但電腦在比賽中的確表現出卓越的智慧。它的勝利預示著總有一天電腦將戰勝人類,也許人民不再需要下國際象棋了。對關心人類未來命運的人而言,這種趨勢是叫人悲哀的。

  當然也有些人持樂觀態度,比如前女子世界冠軍蘇珊?波爾加。她的見解十分有趣:“如果以為電腦戰勝人類,我們就不下棋的話,那麼就錯了。汽車比人的速度快,但我們還在堅持跑步,人在下棋中能獲得樂趣,而電腦卻不能。”

  四、戰鬥仍然繼續

  2002年: Fritz vs克拉姆尼克

  2003年:Deep Junior vs卡斯帕羅夫

  2003年:Fritz vs卡斯帕羅夫

  和“深藍”不同的是,Fritz來自德國。它於1991年問世,取名與德國二戰中的一種***相同,俚語中意為“德國人”。Fritz作為國際象棋軟體公司chessbase的經典產品,是目前最成功的用於商業的國際象棋軟體,大約能夠每秒計算500萬個局面。這個數字雖然不能與“深藍”的2億個相比,但它因為較精確的運算規則而獲得了比“深藍”更強大的實力。據測算其等級分在2760左右,是僅次於卡斯帕羅夫、克拉姆尼克兩位世界冠軍的“超級棋手”,許多一流棋手如小波爾加等等都不是它的對手。如果下5分鐘快棋的話,那麼它可能比任何人都更厲害——因為人類的反應永遠及不上它。

  在吸取1997年卡斯帕羅夫第二局輸給“深藍”的經驗之後,克拉姆尼克要求fritz不得臨時變更程式。這使他在較量中佔得了先機。而fritz方面表現得甚至更配合——比賽前半年,fritz程式的副本就預先交給了克拉姆尼克,讓他可以作針對性的研究。當然,克拉姆尼克的所有對局,fritz也全部研究過了。

  比賽選在了巴林,當地出資200萬美金作總獎金。前三局克拉姆尼克十分順利,兩勝一平,第四局下和,這樣克拉姆尼克以3比1領先。此時,Fritz發威了。

  第五局克拉姆尼克敗北,他輸得心服口服:“Fritz下得比任何人都好。局面似乎均等,但它就是能時刻保持壓力,並始終尋找最精確的著法,不讓我溜走。我必須承認它實在出色。”

  第六局是激動人心的大戰。Fritz執黑棋果斷反擊,獲得良好的局面。當時形勢很複雜,克拉姆尼克為他關鍵的第19步足足長考了四十二分鐘,然後決定孤注一擲地進攻,事實證明,電腦有精妙絕倫的手段打退克拉姆尼克,於是電腦成功扮平了比分。讓人難以置信的事情發生了,在與人對陣中從來不連輸的克拉姆尼克居然在電腦手中連敗兩次!後面的2局比賽以和氣告終,於是雙方下成了4比4平。

  2003年,迎來了人機大戰的高潮。一年之內,卡斯帕羅夫兩次接受電腦的挑戰。2月份,他與擁有IBM技術背景的電腦Deep Junior下成3比3平,卡斯帕羅夫贏了第一局,但輸了第三局,其餘都是和棋。11月,卡斯帕羅夫對壘Fritz,雙方以2比2握手言和,卡斯帕羅夫輸了第二局,但成功贏了第三局。這已經是人類世界冠軍連續三次與電腦戰平,看來“人和電腦究竟誰更強”的懸念仍然難以解開。

  2003年11月,又一場人機大戰牽動了全世界億萬人的心。對陣的雙方是有史以來最偉大的棋手卡斯帕羅夫和超級電腦fritz。巧合的是,本次比賽再度選擇了紐約,1997年卡斯帕羅夫負於“深藍”的比賽就是這裡舉行。紐約一向崇尚國際象棋,此次該市體育部長波茲巴更是說動了ESPN對比賽進行全程直播。

  預測比賽結果是件非常困難的事情,卡斯帕羅夫的技術無可挑剔,開局和殘局都比電腦強。然而電腦的計算能力則大大勝出,能夠每秒計算500萬次,而且表現穩定,不像人類受情緒左右。據研究表明,比賽盤數越長,電腦就越有利,因為技術小組可以根據卡斯帕羅夫的風格對軟體做更細微的改進,電腦會在比賽中越來越強大。

  比賽另一個引人注目的焦點在於:這是有史以來第一場在虛擬環境中進行的比賽。卡斯帕羅夫必須依靠三維眼鏡來比賽,而不是通常的棋盤、棋子,他甚至必須用聲音來移動棋子。從這一點看來,比賽似乎更像是一場贊助商X3D公司的技術展示會。X3D稱,比賽現場人們可以看到真正的虛擬三維效果,而無須藉助特殊的眼鏡。他們採用了最先進的硬體和軟體,通過每秒鐘計算9000萬次來把二維轉換成三維,這樣棋子不僅在螢幕裡、甚至在螢幕外都是三維的,堪稱效果驚人。製作方因為這項技術贏得了許多大獎,他們稱“如果你喜歡《黑客帝國》,那麼你一定會喜歡看這場比賽。”

  11日首局較量,卡斯帕羅夫經過37回合鏖戰與電腦Fritz弈和。賽後,卡斯帕羅夫對結果表示可惜,因為他一直以為自己可以先拔頭籌。他說:“對局的過程十分激烈。我在中局努力獲得優勢,但卻難以轉化成勝勢,因為Fritz的防守非常頑強。電腦程式再次證明了它的局面計算能力非常高超。”

  事實上,這次Fritz的確有備而來,技術小組研究了今年早些時候卡斯帕羅夫對電腦junior的所有開局,並改進了Fritz的風格。一般來說,電腦只喜歡接受人類的棄兵棄子,而很少主動向人類棄子。這次,Fritz就打破常規,在第17回合決定棄車換象,這樣的“下法”著實讓人震驚。雖然執白的卡斯帕羅夫臨危不亂,牢牢地把握著先行之利,但Fritz不時展開反擊,使得卡斯帕羅夫無暇進攻,最後只能接受和棋。

  從這一局的情況來看,電腦的發揮相當出色,這可能與工程師臨時調整了程式有關。在抵達紐約之前,Fritz工程師工作的大樓遭到一夥持械匪徒偷竊,損失相當嚴重,其中一臺裝載關鍵資料的膝上型電腦不翼而飛。此事在德國驚動很大,官方甚至調動了特種部隊來對抗匪徒。然而對Fritz技術小組來說,這場意外未必全是壞事,因為臨時修改的程式似乎對卡斯帕羅夫的適應性更強,變得更加“人性化”。

  反觀卡斯帕羅夫,他的表現不盡如人意。他擅長的開局新招沒有起到作用,而且在幾個關鍵局面的處理上都有消極之嫌。首局成和的另一個原因大概是卡斯帕羅夫對在虛擬環境中作戰不適應。由於現場沒有棋盤和棋子,卡斯帕羅夫必須頭戴眼鏡來看三維的虛擬棋盤,由電腦通過識別聲音而走棋,這讓他覺得彆扭。他說:“我依然不習慣沒有棋盤,這好象指揮家手裡沒有指揮棒一樣。”

  第二局是卡斯帕羅夫的滑鐵盧,他在前三個小時兢兢業業,基本掌握了局面節奏,執黑棋取得不錯的形勢,有望在鬥爭中贏取優勢。但就在第32回合,卡斯帕羅夫走出一步慘不忍睹的臭棋,形勢面臨分崩離析。當時他馬上意識到這一悲劇性的錯誤,為掩飾不安,他一陣風似的衝進了休息室,邊走邊搖頭。而此時電腦果斷抓住機會,撕裂了卡斯帕羅夫的防線,迫使棋王認輸。

  賽後,卡斯帕羅夫對輸棋十分懊惱,他抱怨道:“和電腦下棋就是這樣,它並不十全十美,甚至錯過了一些機會,但它從來不出大漏洞。而人類則總會在某個時刻疏忽,於是電腦就立即乘虛而入。”有趣的是,fritz的製造者莫什也表示了失望,“我們並不希望依靠對手的失誤而取勝。”

  比賽的轉折點發生在16日進行的第三局。卡斯帕羅夫出人意料地採用了一個罕見的佈局,很快讓電腦fritz迷失了方向。僅僅12個回合,卡斯帕羅夫就建立了一道兵的銅牆鐵壁,完全遏止了電腦的發展,佔據絕對的優勢。此時,任何人類對手都會孤注一擲謀求反擊,但電腦似乎仍然以為形勢不錯,慢吞吞地調兵遣將,期待卡斯帕羅夫會像第二局那樣犯錯。然而,卡斯帕羅夫這次表現得十分聰明,他在進攻的同時堵死了電腦的反擊路線,終於在45回合時完勝對手。從過程上看,使用Intel最新處理器Xeon的電腦fritz在本局中明顯判斷失誤,水平大打折扣,可見它的程式中存在漏洞,不善於應付封閉局面。Fritz的工程師承認,這種漏洞是幾乎所有電腦程式的通病,而且目前的技術還無法克服這個缺陷。但工程師同時表示,由於第四局由電腦執白先行,因此卡斯帕羅夫很難通過封閉局面來打敗電腦。

  隨後進行的第四局比賽對雙方來說至關緊要,因為這一局棋的勝負就決定了整個對抗賽的結果。卡斯帕羅夫因為執黑,似乎對取勝信心不足,他在開賽前比較低調:“我會盡力爭勝,但過於冒險是不明智的。”是役,電腦選擇了一個激烈的對攻開局,但卡斯帕羅夫防守得非常謹慎,逐漸化解了電腦的攻勢。弈至第27回合,雙方的棋子幾乎全部兌光,形成了和棋。這樣,對抗賽最後的比分鎖定在2:2,同時雙方也平分了35萬美元的總獎金。賽後,扳平比分的卡斯帕羅夫對結果表示滿意。他不無得意地說:“有些時候,電腦下的就像神一樣完美。但有些時候,它還得向人類多多學習。”當然他也有一絲失望,如果不是第二局的昏招葬送全域性,他滿可以贏得比賽的勝利。

  其實卡斯帕羅夫之所以能夠力挽狂瀾,最大的功臣也許是紐約小姐。這位美女在關鍵的第三局親臨現場為卡斯帕羅夫加油助威,使棋王終於擊敗電腦。從這個角度來說,電腦技術再先進也趕不上人類,因為它永遠無法“學會”欣賞美女。