AI研究和實用化,為何從棋牌開始?
為什么在人工智能領(lǐng)域,科學(xué)家總是熱衷于讓AI跟人類下棋,玩游戲?從簡單的跳棋、五子棋,到更加復(fù)雜的中國象棋、國際象棋,以及最近非常熱門的圍棋和德州撲克。每次AI在某個智力游戲上成功地?fù)魯∪祟愡x手,便會讓大家唏噓不已,慨嘆AI會在不久的將來取代人類…
幸運的是,AI接手地球還并未發(fā)生。我們不僅不需要如此杞人憂天,而且還會欣喜地發(fā)現(xiàn)人工智能的技術(shù)進(jìn)步給生活帶來了更多便利。一個會下棋的AI也并非科學(xué)家的終極目標(biāo),其更積極的意義在于,AI算法在研究棋藝的過程中不斷精進(jìn)和提升,會帶來更多設(shè)計上的創(chuàng)新,從而在根本上提升人工智能算法的能力和適用范圍。
而科學(xué)家之所以樂于選擇棋類游戲,一方面是因為它們自古以來就被認(rèn)為是人類智力活動的象征,模擬人類活動的AI自然要以此為目標(biāo)。成功達(dá)到人類甚至高于人類水平,可以吸引更多人關(guān)注并投身于人工智能的研究和應(yīng)用中來。
另一方面,棋類也很適合作為新的AI算法的標(biāo)桿(Benchmark)。棋類游戲的規(guī)則簡潔明了,輸贏都在盤面,適合計算機(jī)來求解。理論上只要在計算能力和算法上有新的突破,任何新的棋類游戲都有可能得到攻克。
除了棋類游戲,牌類游戲(比如德州撲克、橋牌、麻將、斗地主等)也逐漸成為人工智能研究的新方向。而在更加大型的電子游戲方面,比如星際爭霸、我的世界(Minecraft),科學(xué)家也開始了新一輪的AI算法的創(chuàng)新。這些不同的游戲在研究人員的眼里究竟有什么區(qū)別?這些研究成果對我們的生活又有什么意義呢?下面我們就為大家扒一扒這兩個問題。
棋牌類AI家族了解棋牌類AI,我們可以先從它的分類講起。這一家族按照牌面“坦誠”度的不同,可以分為兩支脈絡(luò):一支擅長“打開天窗說亮話”,另一支則是“猜測推理”的智能高手。
國際象棋、圍棋等盤面信息都是公開的,對弈雙方接收到的信息完全相同,因此也被稱為“完全信息類”的AI博弈;而德州撲克、橋牌、麻將等游戲,每個人無法看到對手手里的牌,所以稱之為“非完全信息類”的AI博弈。
完全信息類——看得到我就算得出
顧名思義,即棋面信息大家都可看到,博弈雙方接收到的信息是完全對等的,如國際象棋和圍棋。此類博弈中,AI每次只需要根據(jù)當(dāng)前盤面,搜索計算以后各種情況下自己的勝率。為了提高搜索效率,一般需要對搜索過程中產(chǎn)生的“博弈樹”進(jìn)行廣度和深度剪枝。就是我們平常下棋時常說的算多遠(yuǎn)和算多準(zhǔn)。為了算得遠(yuǎn),我們一般需要讓AI少看對手和自己不太可能走的地方,稱之為策略函數(shù)。為了算的準(zhǔn),我們需要更加準(zhǔn)確地評估多步后的盤面自己的勝率,稱之為價值函數(shù)。找到了合適的函數(shù),再加上計算機(jī)的強(qiáng)大計算力,讓AI達(dá)到或超過人類成為可能。在博弈樹和策略價值函數(shù)的選擇上,“完全信息類”棋類AI算法經(jīng)歷了從“AlphaBeta剪枝算法”、“蒙特卡洛樹搜索”到“深層神經(jīng)網(wǎng)絡(luò)”的迭代更新,功能也不斷“進(jìn)化”。
跳棋、五子棋 | 難度指數(shù) ★
跳棋和五子棋的空間復(fù)雜度較低。甚至在不需要對博弈樹剪枝的情況下,計算機(jī)憑借強(qiáng)大的計算能力便可以計算所有盤面的可能。所以在這種相對簡單的棋類游戲中,人類已經(jīng)不存在戰(zhàn)勝AI的可能。
中國象棋、國際象棋 | 難度指數(shù) ★★★
象棋的空間復(fù)雜度較高,暴力求解的方法并不可行。但是相對而言容易找到適合的價值函數(shù)。以國際象棋為例,可以根據(jù)棋盤上殘留棋子的類型和位置給出一個大致的評分。比如,棋盤上如還有皇后加10分,有車加5分,有馬加3分,以此為基礎(chǔ)計算函數(shù)。為了提高效率,國際象棋還有巨大的開局和終局?jǐn)?shù)據(jù)庫來保證殘局計算的準(zhǔn)確度。依靠這些規(guī)則,1997年“深藍(lán)”第一次戰(zhàn)勝了人類國際象棋冠軍。其后,電腦象棋程序甚至可以在PC上運行并擊敗頂級人類選手。
圍棋 | 難度指數(shù) ★★★★
圍棋的空間復(fù)雜度高,據(jù)估計圍棋的決策點大概有10的170次方之多。找到合適的策略和價值函數(shù)一直是圍棋AI的核心問題。蒙特卡洛樹搜索算法用概率的方法幫助圍棋AI找到了一個較為準(zhǔn)確的價值函數(shù),并幫助程序達(dá)到了業(yè)余高段的水平。而借助深度神經(jīng)網(wǎng)絡(luò),研究員尋找到了更好的策略和價值函數(shù)的計算方法。通過增強(qiáng)學(xué)習(xí),AI還可以無限模擬各種對弈情境,生成上億數(shù)據(jù),用來訓(xùn)練生成更準(zhǔn)確的函數(shù)。集大成的 “AlphaGo”在2016年以4:1歷史性戰(zhàn)勝了世界頂級圍棋棋手李世石。而正在進(jìn)行的AlphaGo新版本與柯潔之戰(zhàn),不知道又給我們帶來何種新算法和啟示。
非完全信息類——三缺一也不怕了嗎在博弈過程中,如果雙方得到的信息是不完全、不對等的,需要通過猜測對方底牌計算概率,就屬于非完全信息類,如德州撲克、橋牌、麻將等。
非完全信息博弈要求更為復(fù)雜的推理能力,不僅要看別人打了什么牌,還要猜測別人手里有什么牌,并根據(jù)對手行動暗示出的信息,來計算自己的最優(yōu)出牌出法。由于對手的行為不僅暗示他的信息,也取決于他對我們的私人信息有多少了解,我們的行為透露了多少信息。所以,這種“循環(huán)推理”,導(dǎo)致一個人很難孤立地推理出游戲的狀態(tài)。
現(xiàn)代博弈理論創(chuàng)建者、計算機(jī)先鋒馮·諾依曼有句名言,用來形容非完全信息類對弈再合適不過:“現(xiàn)實世界有很多假象、騙術(shù),需要你去思考別人對你的策略到底看穿了多少。這就是我提出的理論所涉及的博弈。”
德州撲克 | 難度指數(shù) ★★★★
德州撲克的搜索復(fù)雜度是10的160次方,和國際圍棋接近。博弈中主要采用“納什均衡”原理——在一個特定時刻,尋找相對于其他參與人的最優(yōu)反應(yīng)。與圍棋相比,撲克不僅要根據(jù)不完全信息進(jìn)行復(fù)雜決策,還要應(yīng)付對手的虛張聲勢、故意示弱等招數(shù)。去年年底,來自阿爾伯塔大學(xué)、查爾斯大學(xué)和布拉格捷克理工大學(xué)的計算機(jī)科學(xué)家開發(fā)的DeepStack在二人無限注德州撲克中打敗了人類職業(yè)玩家;今年年初,卡內(nèi)基?梅隆大學(xué)所開發(fā)的Libratus又擊敗了四個更加優(yōu)秀的職業(yè)選手,這是AI在不完全信息博弈中堪稱里程碑式的突破。對于人工智能而言,下一個挑戰(zhàn)是征服多人撲克。
麻將 | 難度指數(shù) ★★★
目前麻將主要風(fēng)靡于亞洲,所以國標(biāo)麻將和日本麻將都有比較強(qiáng)的AI,高于人類平均水平,但是和人類頂尖高手的水平還是有較大的距離。麻將的搜索復(fù)雜程度遠(yuǎn)遠(yuǎn)小于圍棋和德州撲克,但是由于(一般)是四人博弈,其對技術(shù)的要求和二人零和博弈(例如一對一德州撲克)很不相同。二人零和博弈的解法主要是尋找納什均衡策略或近似納什均衡策略,多人博弈中由于存在多個均衡的可能性以及多人的相互影響,納什均衡策略沒有任何性能的保證,從技術(shù)上來講這意味著大家?guī)缀跻獜念^再來,這在技術(shù)上帶來了新的挑戰(zhàn)(和多人撲克比較類似)。
星際爭霸,我的世界 | 難度指數(shù) ★★★★★
星際爭霸和我的世界這類游戲的復(fù)雜程度不僅在信息的不對稱,更在于其更加開放的游戲規(guī)則。此類游戲更加類似人們在現(xiàn)實世界中遇到的情況。游戲規(guī)則的開放性讓游戲世界會出現(xiàn)很多計算機(jī)很難處理的新情況。比如特殊的從未出現(xiàn)過的地形特點,對手長時間的密謀和規(guī)劃等。排除計算機(jī)在運行速度上的優(yōu)勢,計算機(jī)還未真正在這些游戲上證明自己的能力。
小貼士:與完全信息類對弈相比,有時候德州撲克、麻將對弈輸了,不全是因為打得不好,有可能從一開始牌不好,所以贏面比較低。運氣的成分在這類棋藝比賽中非常重,這一點與國際象棋和圍棋大不同。在圍棋中,專業(yè)選手和非專業(yè)選手的對決,從來不會因為運氣的存在而馬失前蹄或極其偶然地咸魚翻身。
棋牌類AI的意義在哪里?從社會層面的反饋看,有人會顧慮,機(jī)器對弈人類獲得成功,會破壞棋類藝術(shù)本身的意味,它們會讓專業(yè)棋手的價值受到挑戰(zhàn),甚至讓更多的人放棄學(xué)習(xí)棋類運動;有人卻覺得這樣的賽事可以普及各種棋類,讓更多人對這些棋類、游戲等產(chǎn)生興趣;還有人會夸大AI帶來的對人類的威脅……
可能在技術(shù)進(jìn)步的過程中,確實會引發(fā)一些社會問題,但這在人類每個歷史階段都會遇到,人類也不會因此而放慢技術(shù)進(jìn)步的步伐,一些現(xiàn)在看起來引發(fā)大眾不適的社會問題,一定會逐步解決。愛因斯坦說過:“科學(xué),究竟是給人帶來幸福還是帶來災(zāi)難,全取決于人自己。” 畢竟,在一場場人腦和AI的巔峰對決中,并不是機(jī)器打敗了人類,而是人類超越了自己!
未來AI更廣泛的用途一定會是在類似無人駕駛、智能安防以及人工智能助理這種真正意義上的非完全信息類的真實環(huán)境里。在真實世界,AI遇到的問題千變?nèi)f化,不會有一個統(tǒng)一的規(guī)則、統(tǒng)一的函數(shù)就能幫助其解釋相應(yīng)的行為。棋牌類AI只是人工智能非常早期的演練而已。
所以,AI在各種棋牌游戲和人類對戰(zhàn),其意義不在于輸贏本身,更重要的是人們對這類游戲都耳熟能詳,能夠通過比賽了解到AI的最新進(jìn)展,這對AI的發(fā)展有很大促進(jìn)作用,畢竟AI進(jìn)化的過程還相當(dāng)長,即便是圍觀群眾,也需要了解這個未來會與每個人的生活都息息相關(guān)的領(lǐng)域。
我們也期盼著棋牌類AI的成功和突破能夠啟發(fā)AI在其他方面的研究和應(yīng)用,并能將創(chuàng)新應(yīng)用到更多行業(yè)和領(lǐng)域,激勵更多的人投身于AI的研究和實用化,讓人類生活更加便捷、高效和智能化,使整個人類和大自然都能夠受益于AI。在對弈過程中,人工智能研究領(lǐng)域的技術(shù)、專家人才培養(yǎng)體系也得以更加完善,從而推動人工智能去攻克一個又一個技術(shù)和應(yīng)用的“高地”。
PS本文作者:微軟亞洲研究院資深研究員楊懋、主管研究員秦濤