2017年是AI在撲克上取得突破的一年,在AI的發展歷史上,具有裡程碑的意義。
1月,卡耐基梅隆大學的 AI 程序在「一對一不限注」的撲克比賽中,擊敗了一組世界級的德州撲克職業選手。出乎所有人的意外,這一程序對人類專業撲克手的勝利幾乎是壓倒性的:14bb/h。
(注,德州撲克中,線下按bb/h,超過15bb/h,你已經完全統治這個級別的桌子了,能打到5bb/h-10bb/h已經很不錯了。線上按bb/100手,超過5bb/100已經非常厲害了。)
比賽一共打了12萬手,最後 AI 程序贏得170萬籌碼,也就是約 1.7 萬大盲注,接近 90 個買入。對職業撲克玩家來說,還好這不是真正的錢,雖然他們在這場比賽中潰不成軍。團隊裡每個人都敗給了機器。
這個 AI 程序被稱為 Libratus,它的開發者之一,CMU 博士生 Noam Brown 稱它是「撲克AI的聖杯」。Libratus 是 Noam Brown 和 CMU 教授 Tuomas Sandholm 一起開發的,而它只是 CMU 研發的一系列撲克 AI 程序中最新的一個。此前,從來沒有機器能在一對一不限注德州撲克遊戲中擊敗世界級的人類職業玩家。
卡耐基梅隆大學的 AI 程序 Libratus 的開發者Tuomas Sandholm 教授(右)與 Noam Brown 博士
根據 Brown 的說法,後續版本的 Libratus 還能有很大的提升空間,升級後的程序理論上能贏 50bb/h。
而在驚人的 Libratus 之前,來自加拿大和捷克的幾位計算機科學研究者近日在 arXiv 上貼出論文,介紹了一種用於不完美信息(例如撲克)的新算法,DeepStack 結合使用循環推理來處理信息不對稱,使用分解將計算集中在相關的決策上,並且使用一種深度學習技術從單人遊戲中自動學習的有關撲克任意狀態的直覺形式。研究者在論文中稱,在一項有數十名參賽者進行的44000手撲克的比賽中,DeepStack 成為第一個在一對一無限注德州撲克中擊敗職業撲克玩家的電腦程式。
隨後,Science以封面文章的方式,對這一AI 在不完美信息博弈中堪稱裡程碑式的突破進行了報導。
撲克網站pokersites.me.uk近日發布了一篇文章,以信息圖的方式,完整地介紹了人類開發AI程序以對抗撲克玩家的裡程,從1984年開始,我們已經在這一方向上探索了30多年,在2017年獲得最值得驕傲的成功。冷撲大師「 Libratus」 和DeepStack 不僅僅意味著在撲克上的突破,更多的是深度學習和人工智慧綜合性的成就和技術高度。
下文,我們將從歷史、技術原理、對戰細節、AI 的優勢、撲克AI的延伸應用以及未來等多個方面,介紹以撲克為攻克的目標的這一人工智慧突破路徑。不完美信息博弈上,AI技術的成熟與應用,將會進一步擴展AI的應用邊界,比如,在商業談判、醫療健康、網絡安全、拍賣等等領域得到廣泛應用。
撲克AI標誌著AI研究歷史上的又一個裡程碑。
撲克AI背後的科學家:
1. 1984年,Mike Caro 創建的基礎撲克AI軟體Orac參加了WSOP的比賽。
註:世界撲克大賽(World Series of Poker,簡稱WSOP)是世界上具有重要影響力的撲克錦標賽,每年在美國拉斯維加斯舉辦。此項賽事的起源可以追溯到1970年,當時奔尼·比尼恩(Benny Binion)邀請了六位知名撲克選手在馬蹄鐵賭場(Binion’s Horseshoe Casino)舉辦了第一屆比賽,當時的冠軍是由投票選出的。(來源:維基百科)
2. 1997年,阿爾伯塔大學(UoA)發布了撲克AI Loki,專攻有限下注的德州撲克比賽。
3. 2003年,撲克AI開發者開始從西洋棋方法論的模型中轉移,尋找新的辦法。
4. 2005年,在Golden Palace舉辦了撲克機器人世界系列賽。
5. 2006年,年度計算機撲克競賽(ACPC)開始舉辦。
6. 2008年,UoA的撲克機器人Polaris 6位人類玩家進行了一對一的無限下注競賽,成績為3勝2負一平。
7. 2009年,奧克蘭大學發布 Sartres 。
8. 2012年,拉斯維加斯Bellagio 賭場啟動了2/4美元有限下注的機器人,每個人都能嘗試與之進行對抗。
9.2015年,有限下注的比賽以及被阿爾伯塔大學的撲克機器人Cepheus攻克。
10. 2016年,在ACPC上出現了兩個頂級的AI:1)前谷歌工程師Eric Jackson 開發的Slumbot,在WSOP上大賺一筆;2)CMU 博士生開發的「Act1」數年來在線上撲克對戰中保持常勝。
11. 2017年,阿爾伯塔大學開發的DeepStack擊敗了撲克專業玩家。同時,來自CMU的神秘AI也完勝最好的人類撲克玩家。
Libratus 基於匹茲堡超級計算中心1500萬小時核心計算制定自己的撲克策略。
Libratus的策略:
Libratus三大模塊。Libratus有三大模塊,每一個都在執行不同的任務:
1. 學習撲克遊戲規則,嘗試找到能解決每一個場景的對應不同策略;
2. 在每一手牌中,為每一次行動進行決策;
3. 持續地更新,對進入到系統中的每一個新信息進行記錄和存檔。
Libratus:沒有深度神經網絡,從頭開始學習規則,所運用的策略完全獨立於人類玩家。
其他AI:有深度神經網絡,對舊的玩法進行分享以學習規則,所運用的策略不獨立於人類玩家。
人腦 VS AI
Claudico
2015年,Tuomas Sandholm和CMU的同事發布了一個超級智能的撲克AI Claudico,用於無限注的撲克對抗。
四名最好的玩家:Doug Polk,Bjorn Li,Dong Kim 和 Jason Les 在Rivers 賭場完成了與Claudico的對抗。
在為期13天的比賽中,一共進行了8萬手的比賽,下注的虛擬貨幣數量總額為1.7億美元。
四名玩家一起擊敗了Claudico,贏了732713美元。
2017年,UoA發布了DeepStack,專攻無限下注的德州撲克。DeepStack採用了深度神經網絡,來模仿人類在圍棋遊戲中的「直覺」和學習能力。DeepStack將遊戲的場景「壓縮」到10的14次方,由此一來,兩個玩家的對抗產生的可能的遊戲場景就是10的160次方。
結果:整個研究涉及了幾十名參與者,包含了44萬手撲克。DeepStack的平均獲勝率是450 mbb/g,在專業撲克玩家中,50 mbb/g的贏率就可以稱得上是優秀了。與DeepStack對戰的都是優秀的玩家,但是,它還沒有與頂級玩家過招。
2017年,CMU的冷撲大師 Libratus 橫空出世,創造了撲克AI與人類玩家對抗最為壓倒性的勝利。
2017年1月,四位人類最頂級的玩家與Libratus 進行對抗,一共進行了12萬手的比賽。
每一手對抗中,人類玩家和AI各自擁有2萬籌碼,盲注為50/100。
Libratus 分別擊敗了四位玩家,並且贏率為14.72美元每一手。
Libratus的贏率為14.7 bb 每一百手,這對AI來說是一個非常優秀的結果了。
所有的四名人類玩家都輸掉了自己的3萬手對抗,等於輸掉了176萬6250美元。
AI 的優勢在哪?
不完美信息的應用:商業談判、醫療健康、網絡安全、拍賣等等。
參考資料: