人和計算機的對弈
人和計算機的對弈
人和計算機的對弈,歷史很久了,如果從紅白機時代算起,也許比那還早。下面學(xué)習(xí)啦小編給你介紹人和計算機的對弈,歡迎閱讀。
人和計算機的對弈
你和電腦下過棋嗎?不要以為能和電腦下棋的都是世界冠軍,像卡斯帕羅夫那樣的人物,其實我們很多人都曾和電腦下過棋。不信嗎?那我問問你,你在你的PC機上玩過圍棋、象棋、國際象棋的游戲嗎(注意這里說的可不是網(wǎng)絡(luò)游戲)?玩過,那其實就是在和電腦下棋。如果還沒有,那你當(dāng)年在任天堂的紅白機上下過五子棋吧?那其實也是在和電腦下棋。
和電腦下棋其實真沒什么了不起的,只不過和卡斯帕羅夫下棋的是一個更高級的軟件,而和我們下棋的是一些簡單軟件而已,所以想和電腦下棋嗎,去市場上買張盤回來,簡單。
可是就這么簡單的一件事,回回都動靜不小。從上個世紀到現(xiàn)在,“深藍”、“更深的藍”、“弗里茨”、“更弗里茨”等等,一時都成為明星。
人和計算機的對弈,歷史很久了,如果從紅白機時代算起,也許比那還早。人們最早開始編寫下棋軟件的目的就是檢驗計算機的運算速度,拿出來和真人下棋,只是副產(chǎn)品?,F(xiàn)在的下棋軟件已經(jīng)不是副產(chǎn)品了,而是由專家研究出來的,專門拿出來難為世界冠軍的。到這里,與人為難似乎成為了讓電腦下棋的惟一目標,下棋成為一場在人與電腦之間的競賽。真的是這樣嗎?
實際上這并不是什么人與電腦的競賽,確實地說應(yīng)該是人與自己的創(chuàng)造力的競賽。不是嘛,電腦是人制造的,軟件是人編寫出來的,離開了人,這一切都不會存在。而比賽的輸贏更不會說明什么問題,電腦有一天統(tǒng)治人腦的擔(dān)憂至少在現(xiàn)在還找不到什么確實的依據(jù)。人贏了,則編寫程序的人要開拓自己的創(chuàng)造力;電腦贏了,則棋手要開拓自己的思路,終歸進步的都是人腦。
所以說白了,現(xiàn)在和卡斯帕羅夫下棋的電腦并沒有什么,也就是當(dāng)年紅白機的后代而已,沒什么了不起的。至于輸贏,當(dāng)年任天堂的紅白機贏了你,你會耽心它要統(tǒng)治你了嗎?
一、電腦挑選了國際象棋作為對手
1946年,馮?諾伊曼博士授命制造一臺電腦,為美國軍方研究制造原子彈服務(wù)。1950年,當(dāng)電腦MANIAC I完工之后,工作人員用“沒有象的國際象棋”對它進行了測試,他們畫了一個6格乘6格的小棋盤(正常的國際象棋棋盤為8格乘8格),當(dāng)時電腦需要12分鐘來計算2個回合,而在有象的情況下,電腦需要計算3小時。第一局,電腦自己戰(zhàn)勝了自己;第二局,電腦輸給了一位大師;第三局,電腦戰(zhàn)勝了一位女士。從此,國際象棋就成為電腦挑戰(zhàn)的目標,這場“人類vs人工智慧”的較量一直持續(xù)到今天,成為全世界關(guān)注的熱點。
對電腦來說,下棋的最大困難是計算。有人可能以為擅長高速計算的電腦可以毫不費力地算出雙方所有可能的棋步,從中選擇最優(yōu)的方案,一直算到能把人類棋手的“王”將死,但事實上這是一個誤區(qū)。假如一個局面有40步棋可以走,那么每一個回合就存在1600種可能性,因此當(dāng)一局棋進行到40回合時,就有10的128次方那么多的選擇,超過了宇宙中已知的原子數(shù)量(約10的80次方)。迄今為止宇宙大約存在了10的18次方秒鐘,以上估算出的數(shù)字表明,即使啟用最高速的電腦計算,恐怕算到宇宙毀滅的那一刻,還是算不出如何走第一步!顯然,要電腦來計算如此龐大的數(shù)據(jù)是不可能的,所以科學(xué)家試圖讓電腦變得可以像人類一樣“思考”、“選擇”。人類在對弈時,每步棋基本上只會計算10種以內(nèi)可能性,他可以經(jīng)驗和知識來判斷那一種方案對他最有利。依靠這種“搜索最優(yōu)”的方式,人類特級大師大概計算到可以15個回合以后的局面。于是,電腦必須解決這樣一個問題:它如何像人類一樣思考?能夠思考的關(guān)鍵是學(xué)會評價各種各樣的局面。所以,科學(xué)家必須建立一套嚴密的運算體系,使電腦具備“分析”的能力。
1958年,卡耐基—梅隆大學(xué)的三位學(xué)者發(fā)明了一種運算規(guī)則“Alpha-Beta”,使得電腦有具備了選擇功能,計算能力有了第一次的突破。值得一提的是,“Alpha-Beta”運算規(guī)則純粹由數(shù)學(xué)公式推導(dǎo),不包含任何國際象棋理論。那時候電腦可以計算到3個回合之后的局面。1979年美國底特律市舉行國際象棋錦標賽,有幾臺電腦棋手參加比賽,電腦的棋力等級分約為2000分,約為人類初級棋手的水平。1980年代,卡耐基梅隆大學(xué)的博林納制造了一臺64個并行芯片的電腦。后來,博林納的學(xué)生許峰雄加盟了IBM,研制了“深思”和“深藍”,這才真正達到了人類高手的水平。
“深藍”的誕生是電腦發(fā)展歷史上具有里程碑意義的一件大事。它使用200塊特制芯片,每秒能夠計算2億個局面,為此IBM公司投資超過2000萬美金,耗時六年時間。“深藍”下棋的原理如下:把所有的可能性化成樹形圖,計算每種可能的走法,把分數(shù)付給樹形圖的每個端點,分數(shù)越高局面越好。然后把分類回送到起始局面。得分最高的樹杈對應(yīng)著計算機的走法,而得分最低的樹杈則對應(yīng)對手的走法,程序確定了一步“好”棋后,一旦算出其他著法會導(dǎo)致較差的局面,就終止考慮這一著法。
有些人會疑惑,為什么IBM公司會不惜重金來讓電腦挑戰(zhàn)國際象棋?即使電腦打敗了人腦,那又能證明什么呢?其實,“藍色巨人”IBM的本意并不在于打敗人類世界冠軍,而是希望通過研發(fā)芯片來革新技術(shù),制造無所不能的超級電腦?,F(xiàn)在“深藍”的技術(shù)正被用于石油勘探、數(shù)字動畫、生命科學(xué)、太空探險等領(lǐng)域,并發(fā)揮重要的作用。所以,人機大戰(zhàn)只不過是IBM進行的一場大型實驗而已。
二、戰(zhàn)斗的序幕
1996年:深藍vs卡斯帕羅夫
說到“深藍”,有一個人不得不提。他就是華裔科學(xué)家許峰雄。他完成了博士學(xué)位后,加入了IBM,他和他的團隊日以繼夜地為工作,并且為特別設(shè)計的芯片編寫程序。此時這個程序已經(jīng)命名為深藍。
1996年,為紀念電腦誕生五十周年,世界上最偉大的棋手卡斯帕羅夫應(yīng)邀和“深藍”進行六局的比賽,總獎金額為40萬美元,比賽地點在美國費城。
首局電腦執(zhí)白,以穩(wěn)健的下法應(yīng)對卡斯帕羅夫最拿手的西西里防御。局中,“深藍”弈得非常出色,而卡斯帕羅夫似乎非常比較緊張,出現(xiàn)了失誤,把勝利拱手讓給了電腦。卡斯帕羅夫的失利讓全世界都震驚了,人們開始極度關(guān)注在人機大戰(zhàn)。幸好,卡斯帕羅夫沒有讓大家失望,他在第二局正常發(fā)揮,在殘局中擊敗了電腦,本局激戰(zhàn)73回合。接下來兩局是和棋。
四局的比賽讓卡斯帕羅夫?qū)?ldquo;深藍”有了足夠的了解。此時,他想到了一個高明的主意,他知道“深藍”程序中帶有一個收集了20世紀各位著名國際象棋大師所下的數(shù)千個棋局的數(shù)據(jù)庫,電腦所有的分析數(shù)據(jù)都來自這些對局。如果他能夠出新出奇的話,那么電腦就可能會找不到判斷局面的依據(jù),而出現(xiàn)錯誤。胸有成竹的卡斯帕羅夫采取了聰明的策略,他在后兩局的較量中盡量走一些“模糊”的著法,讓電腦無從計算。此招果然奏效,他最后連勝兩局,贏得了人機大戰(zhàn)的第一場勝利。
賽后的新聞發(fā)布會上,卡斯帕羅夫得意洋洋地宣布:“我在電腦身上看到了一些智慧,但這種智慧卻是怪異、低效和不穩(wěn)定的。我相信自己還有幾年的安穩(wěn)日子。”遺憾的是,僅僅過一年之后他就樂不起來了。
三、電腦的勝利
1997年:深藍vs卡斯帕羅夫(回敬賽)
IBM很快卷土重來,他們組織了第二場比賽,這次地點移到了紐約。IBM的CEO葛士納在賽前信心十足:“我們世界最強棋手對戰(zhàn)卡斯帕羅夫。”
這次,許峰雄的團隊有了新人的加入,他就是美國著名特級大師本杰明,此人多次獲得全美冠軍,棋力高超。
首局,卡斯帕羅夫取勝。人們并不感到驚訝。但第二局電腦立即還以顏色,報了一箭之仇。這局棋的過程十分耐心尋味,IBM團隊臨時在賽前更換了程序,使電腦弈棋的風(fēng)格與之前大相徑庭??ㄋ古亮_夫向深藍連續(xù)送上兩個兵,以換取主動權(quán)。通常情況下,電腦有99%的可能會吃兵,因為任何程序都會將兩個兵視為巨大的優(yōu)勢。然而出人意料的事情發(fā)生了!電腦在思考了15分鐘之后,拒絕了卡斯帕羅夫的“禮物”!這個事情非常反常,因為電腦基本都是勻速行棋,每三分鐘走一步,但這次居然花費了5倍的時間。于是,有人猜測這是本杰明在暗中指點電腦,雖然這樣的猜測有點牽強,因即使3個本杰明也不會是1個卡斯帕羅夫的對手。無論如何,電腦的反常行為還是給了卡斯帕羅夫造成很大的心理影響,以致于棋王在判斷上犯了重大失誤,在本應(yīng)和棋的局面中過早認輸。
這場戲劇性的失利對棋王來說是一場災(zāi)難,他開始擔(dān)心電腦是不是真的“進化”到讓人生畏的地步。接著的3局雙方下和。關(guān)鍵的第6局,神經(jīng)緊張的卡斯帕羅夫執(zhí)黑棋時搞錯了走棋順序,僅僅17個回合就潰敗,令世界嘩然。
這是歷史上第一次電腦在對抗賽上打敗人類棋王。對計算機領(lǐng)域來說,這是十分振奮人心的。然而對國際象棋界來說,個中滋味就很難說了。誠然,卡斯帕羅夫是輸在心理上,可以說他其實是敗給了自己,但電腦在比賽中的確表現(xiàn)出卓越的智慧。它的勝利預(yù)示著總有一天電腦將戰(zhàn)勝人類,也許人民不再需要下國際象棋了。對關(guān)心人類未來命運的人而言,這種趨勢是叫人悲哀的。
當(dāng)然也有些人持樂觀態(tài)度,比如前女子世界冠軍蘇珊?波爾加。她的見解十分有趣:“如果以為電腦戰(zhàn)勝人類,我們就不下棋的話,那么就錯了。汽車比人的速度快,但我們還在堅持跑步,人在下棋中能獲得樂趣,而電腦卻不能。”
四、戰(zhàn)斗仍然繼續(xù)
2002年: Fritz vs克拉姆尼克
2003年:Deep Junior vs卡斯帕羅夫
2003年:Fritz vs卡斯帕羅夫
和“深藍”不同的是,F(xiàn)ritz來自德國。它于1991年問世,取名與德國二戰(zhàn)中的一種炸彈相同,俚語中意為“德國人”。Fritz作為國際象棋軟件公司chessbase的經(jīng)典產(chǎn)品,是目前最成功的用于商業(yè)的國際象棋軟件,大約能夠每秒計算500萬個局面。這個數(shù)字雖然不能與“深藍”的2億個相比,但它因為較精確的運算規(guī)則而獲得了比“深藍”更強大的實力。據(jù)測算其等級分在2760左右,是僅次于卡斯帕羅夫、克拉姆尼克兩位世界冠軍的“超級棋手”,許多一流棋手如小波爾加等等都不是它的對手。如果下5分鐘快棋的話,那么它可能比任何人都更厲害——因為人類的反應(yīng)永遠及不上它。
在吸取1997年卡斯帕羅夫第二局輸給“深藍”的經(jīng)驗之后,克拉姆尼克要求fritz不得臨時變更程序。這使他在較量中占得了先機。而fritz方面表現(xiàn)得甚至更配合——比賽前半年,fritz程序的副本就預(yù)先交給了克拉姆尼克,讓他可以作針對性的研究。當(dāng)然,克拉姆尼克的所有對局,fritz也全部研究過了。
比賽選在了巴林,當(dāng)?shù)爻鲑Y200萬美金作總獎金。前三局克拉姆尼克十分順利,兩勝一平,第四局下和,這樣克拉姆尼克以3比1領(lǐng)先。此時,F(xiàn)ritz發(fā)威了。
第五局克拉姆尼克敗北,他輸?shù)眯姆诜?ldquo;Fritz下得比任何人都好。局面似乎均等,但它就是能時刻保持壓力,并始終尋找最精確的著法,不讓我溜走。我必須承認它實在出色。”
第六局是激動人心的大戰(zhàn)。Fritz執(zhí)黑棋果斷反擊,獲得良好的局面。當(dāng)時形勢很復(fù)雜,克拉姆尼克為他關(guān)鍵的第19步足足長考了四十二分鐘,然后決定孤注一擲地進攻,事實證明,電腦有精妙絕倫的手段打退克拉姆尼克,于是電腦成功扮平了比分。讓人難以置信的事情發(fā)生了,在與人對陣中從來不連輸?shù)目死纺峥司尤辉陔娔X手中連敗兩次!后面的2局比賽以和氣告終,于是雙方下成了4比4平。
2003年,迎來了人機大戰(zhàn)的高潮。一年之內(nèi),卡斯帕羅夫兩次接受電腦的挑戰(zhàn)。2月份,他與擁有IBM技術(shù)背景的電腦Deep Junior下成3比3平,卡斯帕羅夫贏了第一局,但輸了第三局,其余都是和棋。11月,卡斯帕羅夫?qū)綟ritz,雙方以2比2握手言和,卡斯帕羅夫輸了第二局,但成功贏了第三局。這已經(jīng)是人類世界冠軍連續(xù)三次與電腦戰(zhàn)平,看來“人和電腦究竟誰更強”的懸念仍然難以解開。
2003年11月,又一場人機大戰(zhàn)牽動了全世界億萬人的心。對陣的雙方是有史以來最偉大的棋手卡斯帕羅夫和超級電腦fritz。巧合的是,本次比賽再度選擇了紐約,1997年卡斯帕羅夫負于“深藍”的比賽就是這里舉行。紐約一向崇尚國際象棋,此次該市體育部長波茲巴更是說動了ESPN對比賽進行全程直播。
預(yù)測比賽結(jié)果是件非常困難的事情,卡斯帕羅夫的技術(shù)無可挑剔,開局和殘局都比電腦強。然而電腦的計算能力則大大勝出,能夠每秒計算500萬次,而且表現(xiàn)穩(wěn)定,不像人類受情緒左右。據(jù)研究表明,比賽盤數(shù)越長,電腦就越有利,因為技術(shù)小組可以根據(jù)卡斯帕羅夫的風(fēng)格對軟件做更細微的改進,電腦會在比賽中越來越強大。
比賽另一個引人注目的焦點在于:這是有史以來第一場在虛擬環(huán)境中進行的比賽??ㄋ古亮_夫必須依靠三維眼鏡來比賽,而不是通常的棋盤、棋子,他甚至必須用聲音來移動棋子。從這一點看來,比賽似乎更像是一場贊助商X3D公司的技術(shù)展示會。X3D稱,比賽現(xiàn)場人們可以看到真正的虛擬三維效果,而無須借助特殊的眼鏡。他們采用了最先進的硬件和軟件,通過每秒鐘計算9000萬次來把二維轉(zhuǎn)換成三維,這樣棋子不僅在屏幕里、甚至在屏幕外都是三維的,堪稱效果驚人。制作方因為這項技術(shù)贏得了許多大獎,他們稱“如果你喜歡《黑客帝國》,那么你一定會喜歡看這場比賽。”
11日首局較量,卡斯帕羅夫經(jīng)過37回合鏖戰(zhàn)與電腦Fritz弈和。賽后,卡斯帕羅夫?qū)Y(jié)果表示可惜,因為他一直以為自己可以先拔頭籌。他說:“對局的過程十分激烈。我在中局努力獲得優(yōu)勢,但卻難以轉(zhuǎn)化成勝勢,因為Fritz的防守非常頑強。電腦程序再次證明了它的局面計算能力非常高超。”
事實上,這次Fritz的確有備而來,技術(shù)小組研究了今年早些時候卡斯帕羅夫?qū)﹄娔Xjunior的所有開局,并改進了Fritz的風(fēng)格。一般來說,電腦只喜歡接受人類的棄兵棄子,而很少主動向人類棄子。這次,F(xiàn)ritz就打破常規(guī),在第17回合決定棄車換象,這樣的“下法”著實讓人震驚。雖然執(zhí)白的卡斯帕羅夫臨危不亂,牢牢地把握著先行之利,但Fritz不時展開反擊,使得卡斯帕羅夫無暇進攻,最后只能接受和棋。
從這一局的情況來看,電腦的發(fā)揮相當(dāng)出色,這可能與工程師臨時調(diào)整了程序有關(guān)。在抵達紐約之前,F(xiàn)ritz工程師工作的大樓遭到一伙持械匪徒偷竊,損失相當(dāng)嚴重,其中一臺裝載關(guān)鍵資料的筆記本電腦不翼而飛。此事在德國驚動很大,官方甚至調(diào)動了特種部隊來對抗匪徒。然而對Fritz技術(shù)小組來說,這場意外未必全是壞事,因為臨時修改的程序似乎對卡斯帕羅夫的適應(yīng)性更強,變得更加“人性化”。
反觀卡斯帕羅夫,他的表現(xiàn)不盡如人意。他擅長的開局新招沒有起到作用,而且在幾個關(guān)鍵局面的處理上都有消極之嫌。首局成和的另一個原因大概是卡斯帕羅夫?qū)υ谔摂M環(huán)境中作戰(zhàn)不適應(yīng)。由于現(xiàn)場沒有棋盤和棋子,卡斯帕羅夫必須頭戴眼鏡來看三維的虛擬棋盤,由電腦通過識別聲音而走棋,這讓他覺得別扭。他說:“我依然不習(xí)慣沒有棋盤,這好象指揮家手里沒有指揮棒一樣。”
第二局是卡斯帕羅夫的滑鐵盧,他在前三個小時兢兢業(yè)業(yè),基本掌握了局面節(jié)奏,執(zhí)黑棋取得不錯的形勢,有望在斗爭中贏取優(yōu)勢。但就在第32回合,卡斯帕羅夫走出一步慘不忍睹的臭棋,形勢面臨分崩離析。當(dāng)時他馬上意識到這一悲劇性的錯誤,為掩飾不安,他一陣風(fēng)似的沖進了休息室,邊走邊搖頭。而此時電腦果斷抓住機會,撕裂了卡斯帕羅夫的防線,迫使棋王認輸。
賽后,卡斯帕羅夫?qū)斊迨职脨溃г沟溃?ldquo;和電腦下棋就是這樣,它并不十全十美,甚至錯過了一些機會,但它從來不出大漏洞。而人類則總會在某個時刻疏忽,于是電腦就立即乘虛而入。”有趣的是,fritz的制造者莫什也表示了失望,“我們并不希望依靠對手的失誤而取勝。”
比賽的轉(zhuǎn)折點發(fā)生在16日進行的第三局。卡斯帕羅夫出人意料地采用了一個罕見的布局,很快讓電腦fritz迷失了方向。僅僅12個回合,卡斯帕羅夫就建立了一道兵的銅墻鐵壁,完全遏止了電腦的發(fā)展,占據(jù)絕對的優(yōu)勢。此時,任何人類對手都會孤注一擲謀求反擊,但電腦似乎仍然以為形勢不錯,慢吞吞地調(diào)兵遣將,期待卡斯帕羅夫會像第二局那樣犯錯。然而,卡斯帕羅夫這次表現(xiàn)得十分聰明,他在進攻的同時堵死了電腦的反擊路線,終于在45回合時完勝對手。從過程上看,使用Intel最新處理器Xeon的電腦fritz在本局中明顯判斷失誤,水平大打折扣,可見它的程序中存在漏洞,不善于應(yīng)付封閉局面。Fritz的工程師承認,這種漏洞是幾乎所有電腦程序的通病,而且目前的技術(shù)還無法克服這個缺陷。但工程師同時表示,由于第四局由電腦執(zhí)白先行,因此卡斯帕羅夫很難通過封閉局面來打敗電腦。
隨后進行的第四局比賽對雙方來說至關(guān)緊要,因為這一局棋的勝負就決定了整個對抗賽的結(jié)果??ㄋ古亮_夫因為執(zhí)黑,似乎對取勝信心不足,他在開賽前比較低調(diào):“我會盡力爭勝,但過于冒險是不明智的。”是役,電腦選擇了一個激烈的對攻開局,但卡斯帕羅夫防守得非常謹慎,逐漸化解了電腦的攻勢。弈至第27回合,雙方的棋子幾乎全部兌光,形成了和棋。這樣,對抗賽最后的比分鎖定在2:2,同時雙方也平分了35萬美元的總獎金。賽后,扳平比分的卡斯帕羅夫?qū)Y(jié)果表示滿意。他不無得意地說:“有些時候,電腦下的就像神一樣完美。但有些時候,它還得向人類多多學(xué)習(xí)。”當(dāng)然他也有一絲失望,如果不是第二局的昏招葬送全局,他滿可以贏得比賽的勝利。
其實卡斯帕羅夫之所以能夠力挽狂瀾,最大的功臣也許是紐約小姐。這位美女在關(guān)鍵的第三局親臨現(xiàn)場為卡斯帕羅夫加油助威,使棋王終于擊敗電腦。從這個角度來說,電腦技術(shù)再先進也趕不上人類,因為它永遠無法“學(xué)會”欣賞美女。
看了“人和計算機的對弈 ”的人還看了:
1.國際象棋從入門到精通
2.國際象棋故事
3.為什么下國際象棋