撰文 | 李家勁
過(guò)去二十年來(lái),有許多人工智能被設(shè)計(jì)出來(lái)玩各種類型的撲克牌游戲,但所有這些人工智能都只能玩一對(duì)一的游戲,如 Libratus 就是二人德州撲克的高手。由此多人撲克游戲,毫無(wú)懸念地成為了下一個(gè)里程碑式的目標(biāo)。

最近,美國(guó)卡內(nèi)基梅隆大學(xué) Noam Brown 和 Tuomas Sandholm 設(shè)計(jì)出了新的智能系統(tǒng) Pluribus,它能在六人無(wú)限注德州撲克中擊敗人類專業(yè)選手,相關(guān)研究發(fā)表在7月12日的Science 雜志上。
目前,很多超越人類的人工智能都是關(guān)于兩人零和游戲,如圍棋,游戲中只能有一方可以獲勝,用博弈論的術(shù)語(yǔ)來(lái)講,這些人工智能所做的都是在找到一個(gè)接近納什均衡的策略。所謂納什均衡策略就是指一系列能夠使自己預(yù)期收益最大化的策略,無(wú)論對(duì)手做什么行動(dòng),至少自己不會(huì)輸,另一個(gè)博弈者也會(huì)采取同樣的策略。
納什均衡由諾獎(jiǎng)得主約翰·納什1951年提出
納什均衡已經(jīng)被證明存在于所有有限次博弈中以及大部分無(wú)限次博弈中。只不過(guò),納什均衡策略并不是隨隨便便就能找到。第一,納什均衡策略可通過(guò)不斷觀察和利用對(duì)手的弱點(diǎn)來(lái)獲得,就好比見(jiàn)到一直出剪刀的對(duì)手,人工智能就一直出石頭。但對(duì)手也可根據(jù)你的策略來(lái)做調(diào)整,而且這種方法需要很多訓(xùn)練樣本;第二,目前還沒(méi)有足夠快的算法可以找到納什平衡;第三,在多人游戲中,就算每個(gè)玩家都獨(dú)自找到了納什均衡策略,這個(gè)總的策略集合也不一定是納什均衡策略。

上圖為四人檸檬水果攤游戲。玩家需要在圓環(huán)中找到一個(gè)位置,使自己與其他所有人的距離總和最遠(yuǎn)(左)。納什均衡策略是每個(gè)人都均勻分布在圓環(huán)上。但如果每個(gè)人都有自己的納什均衡策略,那么最終可能不會(huì)有納什均衡出現(xiàn)(右)。而如果是兩人游戲就不會(huì)有這樣的問(wèn)題。
但 Pluribus 系統(tǒng)并不打算找到這個(gè)博弈論意義上的最優(yōu)策略,而是采用一種能夠經(jīng)常打敗人類選手的策略。首先,Pluribus 通過(guò)自我博弈計(jì)算出自己的策略。換句話說(shuō),Pluribus 不斷跟自己的分身玩德州撲克,期間沒(méi)有任何人類或其他人工智能的參與。最初,Pluribus 作為新手,行動(dòng)完全隨機(jī),但它會(huì)不斷改進(jìn)自己的策略,逐漸提高自己的水平。自我訓(xùn)練得出的策略被稱為“藍(lán)圖”。然后,Pluribus 就和真實(shí)玩家對(duì)戰(zhàn),積累實(shí)戰(zhàn)經(jīng)驗(yàn),期間不斷改進(jìn)自己的策略。
這其中涉及到哪些技術(shù)細(xì)節(jié)呢?在德州撲克中,由于每一回合可以采取的行動(dòng)實(shí)在太多,為了減少問(wèn)題的復(fù)雜度,研究者采用了行動(dòng)抽象(Action abstraction)和信息抽象(Information abstraction)的簡(jiǎn)化技術(shù)。所謂成敗在于細(xì)節(jié),Pluribus 因此只會(huì)將信息抽象用于對(duì)未來(lái)幾個(gè)回合的預(yù)想中,而不會(huì)用在當(dāng)前回合的決策上。
為了計(jì)算出“藍(lán)圖”策略,Pluribus 采用了蒙特卡洛虛擬遺憾最小化算法(MCCFR)。MCCFR 會(huì)隨機(jī)考慮一部分行動(dòng),而不是所有可選行動(dòng),來(lái)選擇應(yīng)該采取的決定。在MCCFR的每一次迭代中,人工智能會(huì)根據(jù)在場(chǎng)玩家的策略模擬一盤游戲,然后找出自己在模擬游戲中的最優(yōu)策略。每一回合,人工智能都會(huì)被加入一個(gè)虛擬遺憾值,使它會(huì)后悔上次沒(méi)有用其他更好的策略,那么下一輪人工智能就會(huì)有傾向選擇上次后悔沒(méi)選的策略。就這樣,Pluribus每局都在學(xué)習(xí)如何擊敗以前的自己,從而不斷提高自己的水平。
“藍(lán)圖”策略只是一個(gè)粗略的策略?;?ldquo;藍(lán)圖”,Pluribus 在跟真正對(duì)手博弈的時(shí)候,用實(shí)時(shí)搜索(real-time search)技術(shù)尋找更好的策略。不同于圍棋等完全信息博弈(perfect-information games),六人德州撲克是不完全信息博弈(imperfect-information games)。人工智能對(duì)其他玩家的特征、策略和對(duì)應(yīng)收益都沒(méi)有完整的了解。所以,研究者獨(dú)創(chuàng)了一種新的方法,他們假設(shè)每個(gè)玩家會(huì)有自己的4種策略,包括“藍(lán)圖”策略和它的三個(gè)變種,并且會(huì)在游戲中選擇其中一種。由于對(duì)手會(huì)變換策略,Pluribus 就會(huì)計(jì)算出比較平衡的策略,而不會(huì)偏向于只采取某些決定。另外,為了防止被對(duì)手看穿自己的策略,Pluribus 會(huì)先計(jì)算如果手上的牌跟現(xiàn)在不一樣時(shí),會(huì)采取什么行動(dòng)。Pluribus 得出一個(gè)可以平衡各種情況的策略后才開(kāi)始該回合的行動(dòng)。
訓(xùn)練完成后,就到測(cè)試階段了。實(shí)際運(yùn)行中,Pluribus 平均每回合只需要20秒思考時(shí)間,足足比專業(yè)選手快一倍。如此快的速度,那實(shí)力如何呢?研究者設(shè)計(jì)了兩個(gè)比賽,分別是5H+1AI(H代表人類),以及1H+5AI,并且邀請(qǐng)世界各地的高手參加。結(jié)果發(fā)現(xiàn),在5H+1AI中,Pluribus 平均每局能贏 48mbb(milli big blinds),在六人德州撲克中是極好的成績(jī);在1H+5AI中,Pluribus 以平均每局32mbb 的成績(jī)擊敗人類。
Pluribus 擊敗人類,說(shuō)明人類的經(jīng)驗(yàn)性策略并不是最優(yōu),或許人類可以從中學(xué)習(xí)到新的技巧。另外,從人工智能的研究來(lái)講,Pluribus 的成功表明即使理論上沒(méi)法保證人工智能在多人游戲上的表現(xiàn),我們也可以通過(guò)精巧的算法設(shè)計(jì)來(lái)訓(xùn)練出超越人類的人工智能。