四名世界上最好的職業撲克玩家一月份的大部分時間都貓在位於匹茲堡的大河賭場,品味著失敗。他們會在上午11點前準時出現,身穿時髦的運動褲和有型的球鞋坐在電腦屏幕前。每個人在夜裡回到賓館房間前差不多要打1500手在線無限級德州撲克的 1 對 1 單挑。這通常意味著每天工作都會超過晚上 10 點。在這漫長的一天裡,星巴克杯和水樽散亂堆放在玩家鍵盤旁,Chipotle墨西哥卷餅快餐包裝袋散落在他們腳邊。
每當一個人類玩家打出一手牌,動作將會被傳送到 5 英裡外的卡內基梅隆大學(Carnegie Mellon University)的計算機伺服器。從那裡,一個指令將會再傳遞另外 12 英裡才能到達玩家的對手那,這是運行與位於近郊Monroeville的匹茲堡超級計算中心的軟體名為Libratus。Libratus 立即打了 8 手牌 --- 其中針對每個對手打兩手牌。它以一個刻意的,足夠讓人發狂的緩慢速率驅動著它人類對手之一的 Jason Les。「這讓日子變得更漫長,」Les 說,這個熱忱的,有著運動範的男人,,似乎急切渴望能在上個星期的這個下午休息幾分鐘。「漫長的等待不應該影響我才對,但有時你就像是感覺,『好吧,這是已經快要結束了?』「
Libratus,當然是不需要休息的。它與人類玩家在其他方面也有所不同。當賭注更高的時候,人類往往會思考更長時間。而電腦玩家在小彩池上出牌最慢,這是因為必須根據手頭所剩更多的籌碼而遍歷所有的附加可能性而引起的。Libratus 也傾向於做出巨大的,突然的賭注,違反標準的投注慣例而把它的賭資以一種不規則的金額和奇特的間隔押到彩池中。
從人類玩家的角度來看,這樣的舉止是令人氣憤和魯莽的,從長期來看還不 「便宜」。但是 Libratus 作為撲克電腦玩家的主要屬性就是 「壕無人性」。當這場在大河賭場舉行的 20 日比賽周一落下帷幕時,人類已經損失了 180 萬美元。(實際上並不需要真正付出現金,錢是作為在撲克中計算得分的方式。)Tuomas Sandholm 和 Noam Brown,兩位身為卡內基 · 梅隆大學的計算機科學家創造了人工智慧 Libratus,共同慶祝電腦首次在無限德州撲克 -- 這個世界上最卓越的撲克遊戲中打敗了頂級的人類玩家。
人工智慧專家一直使用遊戲作為開發和測試他們的 「創造物」 的一種方式。計算機們已經擊敗了西洋棋,國際跳棋,西洋雙陸棋和圍棋遊戲中最傑出的人類選手。因為機會的因素和玩家也不知道他們的對手持有什麼牌,所以撲克遊戲是一種獨特的挑戰。這種所謂的非完美信息博弈需要某種人類的狡詐 -- 例如欺騙對手並且能夠察覺到對方在欺騙你 -- 而這是電腦所欠缺的。
「你在比賽中所看到的撲克遊戲是無限德州撲克,它的聲譽更多的來自於藝術而更甚於科學,」Adam Kucharski 說,他是《完美賭註:科學和數學是如何從賭博中排除幸運》的作者。「有一種念頭是這個遊戲將會因為這些機器而更長久的安全。」
這種思想在近幾個星期取得突破性進展。在一月初,阿爾伯塔大學(University of Alberta )的研究人員發表了一篇文章,內容是他們自己開發的名為 DeepStack 的 AI 擊敗了 11 個職業撲克玩家。
對於 DeepStack 是否能夠擊敗 Libratus 是一個有爭議的問題。Sandholm 說,與他的機器人對陣的職業玩家比 DeepStack 擊敗的那些玩家更好。阿爾伯塔大學電腦程式負責人 Michael Bowling 承認這一點,但他也質疑這些人類玩家在連續奮戰了將近一個月時是否還處於最佳狀態。DeepStack 的獲勝優勢也是 Libratus 的三倍。
兩個人都認為撲克人工智慧剛剛跨過了一個重要的門檻。對他們而言,這與撲克本身關係甚少。德州撲克只是他們尋找人工智慧項目合作夥伴的一種方法,人工智慧通過玩遊戲的所得的收穫會傳回如網絡安全這樣的應用。「這是社區達成的主要基準數據,但這些算法並不是僅僅為了玩撲克而開發的,」Sandholm 說到,他曾經是世界頂級的風帆運動員之一,外表看起來有點像比爾蓋茨。「玩撲克只是一種通用的用途。」
Tuomas Sandholm 領導卡內基梅隆大學的撲克研究項目
DeepStack 和 Libratus 所玩的是一個特殊版本的撲克遊戲。計算機匹配與每個對手單挑,而不是對抗一組玩家。每個玩家持有的籌碼數量在每手牌之後會重置,從而消除了那種擁有大量籌碼的玩家通過脅迫低端玩家進行高額投注而產生複雜的心理遊戲。PokerStars-- 全球領先的在線撲克遊戲平臺的發言人 Eric Hollreiser 表示,這限制了 AI 給撲克產業所帶來的威脅。 「雖然它在一個手動功能性基礎上模仿撲克遊戲,這與現實中牌桌上所發生的一切差別甚遠,」 他說。
還有其他類似實驗在較少受控的環境中進行。自從科學家在實驗室建立它們以來,撲克機器人就一直在進行在線賭錢的遊戲。它們歷來只玩低賭注遊戲並從來沒有被認為是老手。但是賭博行業分析師和在線撲克行業報告的發布商 Chris Grove 說,撲克機器人正在向更高賭注的競賽中傳播。 「如果你是一個在線撲克運營商,這很可能是你的頭號欺詐憂慮,並且可能對相當大的利潤空間產生影響,」 他說。
撲克產業和學術撲克界已經悄然合作多年, 每個參與的人都對細節閉口不談。 但是商業撲克機器人製造者和試圖打擊他們的人都密切關注學術工作的進展。 Bowling 幾個的以前的弟子已經去為在線撲克公司打工,並且至少有一個在銷售用於在線博彩的機器人。
在撲克行話中,可以代替你玩遊戲的程序被稱之為 「夢境機器」。在線論壇的參與者交換關於何時的可疑活動可能說明你在跟機器人對戰 - 或關於他們如何製作自己的撲克機器人的 "戰爭故事"。
加拿大博彩公司 Amaya 旗下的撲克之星遊戲平臺(PokerStars),專門僱用 70 人打擊這種欺詐行為。 這些反欺詐員工直接聯繫可疑玩家並要求他們描述在某手牌上所採取的策略。 該公司還會向可疑玩家發送電子郵件,要求製作 360 度視頻以顯示其周圍環境,隨後玩超過一個小時的遊戲,並且在整個過程中手和鍵盤要確保完全可見。
機器人不必擁有豐富的撲克遊戲技巧就可以從遊戲運營商那裡獲得盈利 - 這對整個行業是危險的。一個程序通過榨取普通玩家而獲得一定利潤可能就會讓人鋌而走險。但是位於英國的在線遊戲公司 Gamesys 的撲克策略主管 Darse Billings 說,實際上 「夢境機器」 和學術界所研究的 AI 使用不一樣的技術,並試圖解決從根本上完全不同的挑戰。 打敗低端玩家的程序並不僅僅是一個打敗精英玩家程序的簡化版本, 這是兩個完全獨立的問題。
Billings 比任何人都了解這兩種撲克領域。 他在 20 世紀 90 年代獲得計算機科學碩士學位,然後成為一個職業撲克玩家,以償還學生貸款。 幾年後,他回到學校與阿爾伯塔大學(University of Alberta)的計算機科學家 Jonathan Schaeffer 合作,其最出名是編寫了可以完美進行國際跳棋比賽的軟體。 Billings 說服 Schaeffer 下一步專注於撲克。
為解開國際跳棋的問題,Schaeffer 使用了一種基本上試圖在任何情況下都計算最佳移動的方法,而並不去考慮到那一步發生了什麼。但把每一步視為一個孤立問題在撲克這樣的遊戲中是沒有意義的,因為這裡涉及運氣,而且並不是每個人都能獲取到完整的信息。阿爾伯塔大學的研究人員開始制定一個整體戰略,這需要採用在博弈理論中被稱為納什均衡(Nash equilibrium)的策略 -- 這是一種應用於雙人博弈的方法,從長期來看不管對手做出什麼反應都不會有損失。
納什均衡並不是一個理想的遊戲風格。 在撲克遊戲中執行均衡戰略的關鍵是打出最強和最有潛力的一手牌的同時還保持不可琢磨。「當你賭上你最強的一手牌的時候還是需要一絲謹慎的,」Billings 說。該團隊開發了一個謹慎風格的 AI,被稱為 Pink 先生,而另一個 AI 是積極進取風格,被稱為 Agent Orange。很難描述一個電腦程式的所作所為, 這聽起來不像你談論的東西卻實際上是你所思考的。
均衡策略吸引了阿爾伯塔大學的 Bowling,其專長是博弈理論,並在 2003 年開始應用於撲克領域。Sandholm,作為卡內基梅隆大學 Bowling 的論文委員會一員,在接下來的一年轉向撲克領域,採取了類似的方法。 Sandholm 和 Bowling 從 2006 年開始共同舉行年度的計算機撲克比賽,定期對頂尖的人類玩家。 撇開他們這種競爭關係,實驗室一直在關注彼此的研究成果。
這兩個項目在過去幾年大幅進化到了最終階段。 在 2015 年 1 月,Bowling 的團隊發表了一篇文章,顯示它如何解決有限德州撲克單挑玩法 -- 一種比無限制德州撲克簡單的雙人撲克遊戲,因為玩家可以限制投注。 Sandholm 和 Brown(在過去五年裡一直在撲克 AI 領域上與他一起工作的博士學生),在幾個月後在大河賭場舉行了他們第一次 「人腦 vs AI」 比賽。他們的機器,起名為 Claudico,對抗四名職業玩家,在打了超過 8 萬手牌之後損失了 $ 73.2 萬。 Sandholm 說,比賽勢均力敵可以稱之為平局,但至少有一個玩家對此表示有異議。
Sandholm 和 Brown 說有自從那次比賽以來他們的 AI 在多個常規的方面有所改善。 Claudico 在比賽的前期表現良好,但往往快結束時犯錯。 它在錯誤的時刻虛張聲勢,並且根據桌上所打的牌計算牌局的時候總會遇到麻煩。最簡單的情況,如果牌桌上有兩張王,而你手頭也有兩張王,這可以推斷出你的對手沒有王卡在手。 Libratus 在所有這些方面都有改進,它的創造者仍然在其他方面保持謙虛的態度,尤其是在如何根據一天的比賽過程中所學習而進行調整。
Libratus 所有的細節最終將會在其創造者發表成果時一一揭曉。這種學術研究成果往往以各種方式滲透到現實世界的撲克比賽中。 據布朗說,年度的電腦撲克比賽(The Annual Computer Poker Competitions)也包括了進入現金遊戲的參賽者。 Bowling 說他的研究論文在留言板上受到造機器人者的歡迎。 「有整個獨立的團隊閱讀並且試圖理解這些論文,」 他說。
Billings 在 2008 年加入了撲克行業。他是少數之一離開阿爾伯塔大學項目之後這麼做的人,而大多數人都加入了運行遊戲平臺的公司。 Richard Gibson 則自立門戶,創辦了一個名為機器人鯊魚遊戲公司(Robot Shark Gaming ),其主要業務是構建 AI 程序學習和打戰略遊戲,還創建了一個稱之為 Sportsbid 的幻想體育公司。
Gibson 在 2013 年完成了博士學位,當時一群職業玩家提出讓他提供可用於培訓的軟體並為此付費。 Gibson 手頭只有其中一個人的名字而從來沒有私自會見過其中任何一個客戶,並不確認這群玩家到底有多少人。「即使他們不將軟體用於在網上賭博,這仍然是一個汙點,」 他說。
Gibson 開發了多個程序,並說他設計的軟體來演示各種策略的有效性; 程序並不能自己運行。 在他最賺錢的一年裡,Gibson 在那個項目上賺了大約 10 萬美元,客戶又額外在運行軟體相關的計算能力上花了 2 萬到 3 萬美元。
匿名專業人士並不是 Gibson 的唯一客戶。 在有一個案例中,他說有人支付他幾萬美元花約 6 個月建立一個輕量級的撲克機器人。 他沒有詢問客戶將如何使用它 - 而且他並不想知道 - 但是設計方向指向一個特定的應用場景。 「我的客戶想要一個獨立運行的程序以便可以加載到他們的筆記本電腦,」 他說。 「我想他們試圖利用它玩在線遊戲 「。
在大河賭場每個夜晚結束的時候,Les 和他的撲克專家同伴將訂購外賣和仔細研究白天對戰的數據以便儘可能尋找 Libratus 的弱點。在月初,他們每天早上醒來的時候都充滿樂觀的情緒,因為他們有了一些新的訣竅。 「我們在頭幾天發現了一些特定的漏洞,」Les 說。 「我們利用漏洞反覆攻擊他們,但現在這些漏洞消失了。"
Libratus 也在做出調整。 在白天,程序將其計算能力一部分分配在前臺進行博弈出牌,另一部分能力分配在 Sandholm 所說的 「持續戰略改進」 計算上。在晚上,程序完全側重於戰略分析,利用超級計算機的 600 個節點,相當於約 3,330 臺高端 MacBook 協同工作。
在撲克和其他一些遊戲中,AI 在頂層博弈,電腦制定的策略反饋給人類玩家。 Les 說他試圖弄清楚如何將一些 Libratus 的不規則投注行為適用於自己的比賽中。 」 這非常困難,我們基本上沒有足夠心智容量去做這個,」 他說。
如果人類已經到達了對於他們來說電腦對手太過於完美這個節骨眼,像 Sandholm 和 Bowling 所運營的實驗室卻面臨著幾乎相反的問題。與專業玩家一對一比賽是一回事。但將 Libratus 和 DeepStack 變成玩家有信心擊敗一群存在缺陷的人卻並沒有明確的演進路線。這是因為當其他人遊戲的要點不是為了完美博弈而是為了識別和利用缺點,那 AI 使用的均衡策略在多人遊戲中就會崩潰。
幾年前 Bowling 做了一個實驗,其中三個機器人互相對抗。 其中兩個使用他的實驗室最接近完美的機器人,而第三個機器人編程提高了魯莽特性。 在比賽結束時,最笨的機器人僅僅丟失了少量的錢。 其中一個完美的機器玩家獲得大勝,而另一個輸的很徹底。
「這真的很困難。 如果你知道你要坐下來與不太優秀的人類玩家或其他程序一起比賽,你該採取何種策略?「Bowling 說。 「你必須為此做好準備。"
關注網易智能菌(微信公眾號:smartman163),獲取專業人工智慧資訊與AI報告。
本文來源:雷鋒網 責任編輯: 丁廣勝_NT1941