國際跳棋小游戲(AI賭神靠什么稱霸德州撲克?都在科學這篇新論文里)
國際跳棋小游戲文章列表:
- 1、AI賭神靠什么稱霸德州撲克?都在科學這篇新論文里
- 2、2021年北京市國際跳棋錦標賽暨第五屆瑞德杯精英賽圓滿落幕
- 3、這款C++跳棋小游戲,用技術(shù)虐殺無數(shù)單身狗
- 4、上網(wǎng)下棋!國跳聯(lián)合杯網(wǎng)絡賽五一開戰(zhàn)
- 5、牛!15歲中國高中生登頂亞洲第一
AI賭神靠什么稱霸德州撲克?都在科學這篇新論文里
夏乙 問耕 發(fā)自 凹非寺
量子位 出品 | 公眾號 QbitAI
稱霸德州撲克賽場的賭神Libratus,是今年最矚目的AI明星之一。
剛剛,《科學》最新發(fā)布的預印版論文,詳細解讀了AI賭神背后系統(tǒng)的全貌。此前的NIPS 2017大會上,最佳論文就頒給了Libratus團隊,不過那篇會議論文只是重點講述這個德?lián)銩I中的子博弈求解算法。
在最新論文Superhuman AI for heads-up no-limit poker: Libratus beats top professionals中,卡內(nèi)基梅隆大學(CMU)的博士生Noam Brown和教授Tuomas Sandholm,詳細介紹了德?lián)銩I如何通過將游戲分解為可計算、可管理的部分,來實現(xiàn)超越人類的表現(xiàn),而且AI還能根據(jù)對手情況,修正潛在的戰(zhàn)略弱點。
Libratus所用到的技術(shù)既不需要領域?qū)<抑R,也沒有使用人類數(shù)據(jù),甚至不是專門為撲克設計的。換句話說,這些技術(shù)適用于多種不完美信息博弈。
不完美博弈正是德?lián)涞囊粋€主要特征。圍棋、國際象棋、跳棋等棋類游戲,屬于完美信息博弈,對戰(zhàn)的雙方,清楚每一時刻局面上的全部情況。相比之下,德州撲克存在大量的隱藏信息,包括:對手持有什么牌,對手是否在詐唬?
詳解Libratus
據(jù)最新論文介紹,Libratus主要包括三個模塊。
第一個模塊負責對牌面進行簡化計算,將包含10161種情況的一對一無限注德?lián)涑橄蟪梢粋€比較簡單的博弈。然后,這個模塊為前兩輪制定詳細的策略,并為后兩輪制定一個粗略的策略。這個抽象簡化版博弈的解決方法稱為藍圖策略(blueprint strategy)。
這種抽象體現(xiàn)在兩個方面,一是下注金額上,二是牌面上。
在下注金額上,100美元和101美元其實幾乎沒有差別,因此,算法可以對不到100美元的差異進行四舍五入。同時,將類似的牌面視為同一類,也能降低計算的復雜度。
需要說明的是,Libratus在后兩輪游戲中并不會按照抽象版的解決方法來玩,藍圖策略在這兩輪中的作用,只是用來估算玩家在子游戲中每一首牌應該得到的獎勵,然后參考這個估算值,在真正的牌局中做出更精確的策略。
這個“更精確的策略”,也就是第二個模塊:嵌套安全子博弈求解(Nested safe subgame solving)。在博弈后期,這個模塊會基于當前的牌面,構(gòu)建一個全新的、更精細的抽象,而且對這個子博弈的策略進行實時計算。
△ Subgame solving
上圖是Libratus的子博弈求解過程。頂部表示在對局過程中出現(xiàn)了一個子博弈,中間部分表示算法為這個子博弈制定了更詳細的策略,每次迭代中,對手隨機發(fā)放一手牌,可選的期望值可能來自舊的抽象(紅色),也可以來自新的、更精細的抽象(綠色)。如果期望值來自新的抽象,兩個玩家的策略都會改變。這就迫使Libratus制定更精細的策略。上圖底部表示用新的策略替代舊策略。
△ nested subgame solving圖解
Libratus的子博弈策略計算和那些完美信息博弈不太一樣,它需要確保這些子博弈的精細解決方法與整個博弈的大藍圖策略不沖突,而不能孤立地解決它。
第三個模塊的意義,是隨著比賽的進行,改進自身的藍圖策略。Sandholm教授表示,通常AI使用機器學習來發(fā)現(xiàn)對手的戰(zhàn)略錯誤并加以利用。但這也會讓AI暴露自身的弱點,并被對手加以利用。
不同之處在于,Libratus的自我改進模塊分析對手賭注大小,以檢測自身藍圖戰(zhàn)略中潛在的漏洞,然后彌補自身的不足之處。
在與人類高手對戰(zhàn)之前,Sandholm和Brown為了測試Libratus中所用的各項技術(shù),先用簡化版的撲克對整體流程進行了測試,然后把AI用到了完整版的一對一無限注德州撲克上,和他們自己之前開發(fā)的Baby Tartanian8進行比賽。
2016年,Baby Tartanian8曾經(jīng)贏得電腦德?lián)浯筚惞谲?,不過Libratus以63±28大盲注/千手(mbb/hand)的戰(zhàn)績擊敗了它。
“我們研發(fā)的技術(shù)在很大程度上是獨立于領域的,因此可以應用于其他不完美信息策略應用,不僅限于游戲領域”,Sandholm和Brown總結(jié)說:現(xiàn)實世界的戰(zhàn)略交鋒中,隱藏信息無處不在,Libratus引入的范式對AI未來的發(fā)展和引用至關重要。
目前,這項技術(shù)已經(jīng)授權(quán)給Sandholm創(chuàng)辦的公司。
論文地址
http://science.sciencemag.org/content/early/2017/12/15/science.aao1733
獨家對話
今年3月,量子位前往CMU專程拜訪過Sandholm和Brown。當時,他們就曾談及Libratus的理念,包括三個模塊的設計思路。
這里也把量子位之前報道的內(nèi)容摘錄如下。
無師自通
在德?lián)溥@件事上,Libratus沒有師父。
Sandholm和Brown只告訴AI基本的德州撲克規(guī)則,然后Libratus就開始通過“左右手互搏”的方式學習這個撲克游戲。和AlphaGo不同,在人機大戰(zhàn)之前Libratus沒有研究過人類如何打德州撲克,也沒有和人類職業(yè)玩家有過交手。
在投入實戰(zhàn)之前,Libratus自己對戰(zhàn)了幾百萬手牌,其中有不少是帶有特定目的的殘局,真正機器和機器之間的交手,大約是幾十萬手。
所以,AI形成了一種與人類迥然不同的牌風。
“在德?lián)浔荣愔?,頂級高手會嘗試尋找對手的弱點,并展開攻擊”,創(chuàng)新工場AI工程院技術(shù)VP李天放說。李天放既有技術(shù)背景,也是一名德?lián)涓呤帧?/p>
Dong Kim是今年1月德?lián)淙藱C大戰(zhàn)中的一位人類選手,這位28歲的韓裔美國人回憶說,每一天Libratus都會進步,人類選手很難找到它的弱點或漏洞。即便找到一個,第二天就會消失不見。這讓他感到絕望。
但也許他根本就感覺錯了。“有人類玩家說找到了漏洞,其實不一定”,Brown對量子位說:“這可能是Libratus的一種戰(zhàn)術(shù),去攪亂對手的策略”。
△ Brown身后是他的電腦
不能用人類的思維去衡量AI。讓Sandholm記憶猶新的是,1月的德?lián)淙藱C大戰(zhàn)進行到尾聲,當時AI早已遙遙領先,所有人都認為Libratus會趨近于保守。
“但它反而越來越激進”,Sandholm說特別是最后幾局,非常出人意料。
比方,為了一個很小的底池推了All in,或者下注額只有底池的十分之一。“有時候Libratus的策略會被認為是臭手”,但事后復盤Sandholm說這個德?lián)銩I嘗試了很多令人叫絕的方法,其中包括各種策略的詐唬。
詐唬也不是人教的,而是機器自己學會的。
怎么學?“詐唬是特別重要的技能,系統(tǒng)在學習中發(fā)現(xiàn),如果有一手爛牌,直接詐唬能贏更多,所以它就學會了”,Brown告訴量子位。
“這就是AI特別奇妙的地方”,Brown坐在自己CMU標配的上一代Aeron座椅上說,“很多人看到Libratus能詐唬,覺得很了不起”,但在這位博士的眼中,詐唬這種看似與心理有關的人類技能,機器是可以通過算法學會的。
三個模塊
為什么Libratus能比前代更厲害,進步在何處?Brown舉了兩個例子。
比如,對于K-High Flush(最大牌為K的同花)和Q-High Flush(最大牌為Q的同花),這兩手牌對于Claudico來說是等值的,而Libratus則會做一個精確的區(qū)分。實際上,Libratus會對每一手牌進行單獨的處理,根據(jù)不同的牌面制訂出不同的戰(zhàn)略。
再比如,對于250元的下注,是當成200元還是300元來計算?那么249或者251呢?實際上,Libratus不會嘗試聚類,而是馬上實時計算,得出勝算最大的策略。
△ Sandholm講解冷撲大師
Sandholm則從全局的角度,打開Libratus的大腦,向量子位逐一講解了構(gòu)成這個撲克AI的三個主要模塊。其中一個用于賽前,兩個用于賽中。
模塊一:Nash equilibrium approximation before competition(賽前納什均衡近似)
這個模塊把最重要的博弈信息進行抽取,比如針對某一手牌對應的戰(zhàn)略,然后再應用強化學習等方法,繼續(xù)尋求提高和改進。這里使用了一個新的算法:蒙特卡洛反事實遺憾最小化。在這個模型的幫助下,Libratus自己學會了德?lián)洌冶纫郧八俣雀臁?/p>
模塊二:Endgame solving(殘局解算)
這是Libratus最重要的部分,Sandholm說。實際上Claudico也有這個模塊,但那個版本幾乎不起作用。而新的版本不會再給對手留下漏洞,這個過程不斷進行,對手新出一招后,會繼續(xù)展開新的殘局解算,這被稱為Nested Endgame Solving。
德?lián)溥@類不完美信息博弈,不能拆解為可以獨立解決的子博弈。所以Libratus采用的殘局解算的方法應對,想進一步深究,可以查看Brown和Sandholm的論文。
模塊三:Continual self-improvement(持續(xù)自我強化)
比賽中人類高手會尋找Libratus的漏洞,并展開有針對性的攻擊。這個模塊的作用就是發(fā)現(xiàn)問題所在,找到更多細節(jié)進行自我強化,然后得到一個更好的納什均衡。
“三個模塊都用了新的算法”,Sandholm說第一個模塊的新算法能夠抽取更多的細節(jié),而且比原來的算法更快;第二個模塊的算法是全新的;而第三個模塊則有一個全新的理念,有點類似于:防守是最好的進攻。
Libratus不再尋求發(fā)現(xiàn)并利用人類對手的漏洞,相反,這個AI開始觀察人類發(fā)現(xiàn)了它什么弱點,然后有針對性的彌補和提升。于是Libratus的弱點越來越少,直到人類玩家沮喪的發(fā)現(xiàn),想要贏下比賽變成一件幾乎不可能完成的任務。
不主動進攻就很少露出破綻,李天放說跟Libratus對戰(zhàn)就像打一堵墻,最好的結(jié)果可能就是打個平手,基本不可能獲勝。納什均衡本身,追求的就是一種平衡。
Libratus是一個防守大師。
深度學習不是唯一
與圍棋大師AlphaGo相比,Libratus有很多不同之處。其中就包括:Libratus并沒有使用目前相當火熱的深度學習技術(shù)。
“深度學習是個非常好的技術(shù),但我們沒有在這個項目應用,是因為深度學習不能給出絕對的保證。比方識別貓的圖像,對于給定的圖片能得出95%是貓,但也不是絕對的保證,而我們的算法,能夠保證最優(yōu)異的結(jié)果”,Sandholm說。
當然也有團隊在用深度學習來搞德?lián)銩I。
來自加拿大阿爾伯塔大學、捷克布拉格查理大學和捷克理工大學的研究人員,基于深度學習技術(shù)開發(fā)出德州撲克人工智能DeepStack。
對于兩個德?lián)銩I來說,還沒有更好的比較方法,目前只能說Libratus擊敗的對手,要比DeepStack的對手水平更高。其他這里不展開討論了,這個團隊也發(fā)表了相關的論文。
“對這一類型的任務,我們的方案比深度學習更好”,Sandholm對量子位表示,目前深度學習的方案實際上沒有解決問題,而Libratus這個系統(tǒng)“時間越長,越能接近完美”。
對于這個問題,我們詢問了CMU機器學習系的邢波教授,他指出還不應過早的下結(jié)論說:深度學習就是機器學習的未來。
“Sandholm教授其實不是做深度學習的,他用的方法實際上被認為是是傳統(tǒng)的AI,但是可以達到這么強大的功能”,邢波對量子位表示這是一個有力的證明:人工智能并不等于深度學習,很多新的方法需要探索和了解。
Libratus戰(zhàn)績回顧
今年1月,在匹茲堡河流賭場舉辦了一場為期20天的Brains vs. AI比賽,Libratus在一對一、無限注的德?lián)淙藱C大戰(zhàn)中,擊敗四位頂級人類玩家,累計贏得176.6萬美元籌碼。按照德?lián)涞男g(shù)語,Libratus與人類高手的差距是147大盲注/千手(mbb/hand),也就是場均14.7個大盲注。
今年4月,創(chuàng)新工場董事長兼CEO、創(chuàng)新工場人工智能工程院院長李開復,邀請Libratus和團隊來到中國,以“冷撲大師”之名與“龍之隊”展開對決。
這場為期五天的對決中,冷撲大師以領先792327記分牌、每百手領先15.8大盲注的成績擊敗人類對手。贏得200萬獎金。
當時李開復表示,AI在征服了以不完美信息博弈為內(nèi)核的德州撲克后,AI在游戲領域比人類更強已經(jīng)沒有任何懸念了。人機大戰(zhàn)的結(jié)果證明AI比我們想象中來的更快,接下來要關注的應該就是AI在商業(yè)、醫(yī)療等領域的應用。
— 完 —
誠摯招聘
量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節(jié),請在量子位公眾號(QbitAI)對話界面,回復“招聘”兩個字。
量子位 QbitAI · 頭條號簽約作者
?'?' ? 追蹤AI技術(shù)和產(chǎn)品新動態(tài)
跳棋小游戲,用技術(shù)虐殺無數(shù)單身狗'>這款C 跳棋小游戲,用技術(shù)虐殺無數(shù)單身狗夠酷的VC 跳棋游戲源碼,完全公開,實現(xiàn)了電腦對戰(zhàn),網(wǎng)絡對戰(zhàn)暫不完善,因此去掉了該部分功能。
跳子棋游戲的實現(xiàn)不算太難,但有一點復雜。主要原因可能就是它的棋盤為一個不規(guī)則的圖形。
實現(xiàn)思路是:把棋盤121棋格分為7個區(qū),中間為0區(qū),上為1區(qū),逆時針至右上角。
定義一個棋格的屬性:坐標、棋格所屬區(qū)域、即7個區(qū)……
壓縮包內(nèi)有詳細實現(xiàn)說明,請下載查看。
代碼結(jié)構(gòu)截圖:
主要代碼截圖:
源碼測試截圖:
玩家可以有多種選擇,可以一人與計算機對戰(zhàn),也可以多人一起玩樂。困難度也有多種選擇,玩家可以選擇自己喜歡的模式來進行游戲。
最后,如果你想學C語言/C 可以私信小編“01”獲取素材資料以及開發(fā)工具和聽課權(quán)限!
上網(wǎng)下棋!國跳聯(lián)合杯網(wǎng)絡賽五一開戰(zhàn)
00:00
視頻:“聯(lián)合杯”第一屆青少年國際跳棋網(wǎng)絡公開賽官方宣傳片。提供/組委會
紅網(wǎng)時刻新聞5月1日訊(記者 符洹雨 實習生 喻武康)“5月1日至5月5日,‘聯(lián)合杯’第一屆青少年國際跳棋網(wǎng)絡公開賽將通過線上的方式進行。”4月30日,主管國際跳棋的湖南省棋類協(xié)會副秘書長李春梅在接受紅網(wǎng)體育記者采訪時,介紹了五一期間將舉行“聯(lián)合杯”國際跳棋線上賽事的消息。
本次比賽由吉林省國際跳棋協(xié)會、福建省國際跳棋協(xié)會、山東省棋類運動協(xié)會、湖南省棋類協(xié)會、香港國際跳棋協(xié)會、重慶兩江新區(qū)國際跳棋協(xié)會共同主辦,共吸引了國內(nèi)20個省市和香港特別行政區(qū)的200支參賽隊伍報名,累計人數(shù)達1393人。
資料圖:國際跳棋運動。攝影/符洹雨
比賽將執(zhí)行《中國國際跳棋競賽規(guī)則》,進行“瑞士制”比賽,比賽輪數(shù)視報名人數(shù)決定(原則上不超過9輪)。比賽分100格、64格進行,設立了U5、U6、U7、U8、U9、U10、U11、U13、U17年齡段進行。
國際跳棋是一種古老的棋類游戲,2007年,經(jīng)國家體育總局批準,由國家體育總局棋牌運動管理中心管理該項目并在全國開展國際跳棋活動。湖南是國內(nèi)開展國際跳棋項目最早的省份之一,1993年,在湖南韶山舉行的“紀念毛澤東同志誕辰100周年”全國邀請賽上,國際跳棋便被列為了正式比賽項目。
資料圖:小棋手們在比賽中。供圖/組委會
李春梅介紹,本次“聯(lián)合杯”湖南共有羅梓心、張子涵、喻心亦、張鯤鵬、王康平、顏懿軒、胡家俊、胡承宇、周芯童等20余名棋手報名參加,分別來自長沙和湘潭的6所學校。其中,羅梓心、張子涵、喻心亦是多次參加國內(nèi)大型賽事的實力悍將,在所有報名棋手當中具有爭奪好名次的實力。
“從報名的情況看,各個參賽隊伍都派出了自己的精英,競爭一定會非常激烈。”李春梅表示,通過高水平比賽的歷練,湖南棋手們的成長之路將走得更好更快,“成績上我不給孩子們太大的壓力,希望他們能將自己的水平很正常發(fā)揮出來,在這其中享受國際跳棋,用愉快的心情度過五一。”
牛!15歲中國高中生登頂亞洲第一
天才少年的故事總是很吸引人
他們擁有超高的天賦
和遠超同齡人的堅韌
今天我們要說的主人公
是武漢15歲天才高中生泮憶銘
在剛剛結(jié)束的
第60屆國際跳棋男子世界錦標賽上
他以銀牌得主的身份
站上了領獎臺
此次參賽選手中
泮憶銘不僅是年齡最小
也是亞洲唯一獲參賽資格的選手
他不負眾望沉著應戰(zhàn)
19輪比賽一場未輸
期間還經(jīng)歷“魔鬼賽程”
連續(xù)四輪對戰(zhàn)四名國際跳棋特級大師
獲得中國選手有史以來
在國際跳棋賽場上取得的最好成績
此役過后
泮憶銘國際排名已經(jīng)上升到第九位
是亞洲排名最高的選手
什么是國際跳棋?
國際跳棋,一種古老的棋類游戲。遠在古埃及法老時期就已存在,現(xiàn)代國際跳棋是在12世紀定型的。
國際跳棋是由各國的民族跳棋演變而來。其歷史源遠流長。據(jù)史學家研究,跳棋起源于古埃及、古羅馬、古希臘等一些國家和地區(qū)。
在法國盧浮宮博物館里至今珍藏著獅子和羚羊下跳棋的壁畫。但是由于學術(shù)的不同看法,考古學家們還無法準確地推斷出古跳棋的起源地和傳播途徑。
泮憶銘才15歲
就在專業(yè)領域登頂亞洲第一
14歲獲國際特級大師稱號
泮憶銘的國跳路,要追溯到他6歲時,當時父親泮中平帶著他看了一場國跳比賽。從此,泮憶銘走上國跳路,并一發(fā)不可收,在各級別的比賽中,同齡人已經(jīng)不是他的對手。
2017年全運會國際跳棋比賽,資料圖
2018年,泮憶銘前往山東省參加亞洲國際跳棋錦標賽,在男子組的比賽中他順利奪冠,經(jīng)世跳聯(lián)批準,成為了我國第三位男子國際特級大師,當時他才14歲。
今年上半年,2019年國際跳棋亞洲錦標賽在烏茲別克斯坦舉行,少年組的獎項他早已實現(xiàn)大滿貫,此次比賽泮憶銘參加的是成人組。沒想到進了成人組,也難不倒泮憶銘,他作為此次大賽年齡最小的參賽選手,拿下快棋賽和超快棋賽雙料冠軍。
泮憶銘告訴記者:“快棋賽和超快棋賽是最考驗人的,比賽固定時間,思維一定要快,不僅要部署自己的戰(zhàn)略,還要考慮對手的思路?!?/p>
今年9月,進入省實驗中學不久后,泮憶銘又前往科特迪瓦首都亞穆蘇克羅,參加2019年國跳男子世錦賽。
父親泮中平接受采訪時表示:“現(xiàn)在最關心的不是他的棋藝,而是他如何平衡下棋與學習之間的關系,沒想到的是,孩子其實每次考試前都把書本全背下來了。這次去比賽,他還把高中的課本隨身帶著,利用閑暇時間自學?!?/p>
國際排名已上升到第九
湖北省體育局棋牌運動管理中心譚東旗主任介紹,此次參加世錦賽的20名選手,均為各大洲冠軍、上屆世錦賽成績優(yōu)異者、即時等級分排名靠前者等頂尖好手,其中有13人為國際特級大師。而泮憶銘作為國際特級大師,也是亞洲唯一獲參賽資格的選手。
在前六輪比賽中,泮憶銘表現(xiàn)出色,同為國際特級大師,泮憶銘在比賽過程中并不慌張,取得三勝三和的不敗戰(zhàn)績。到了第七輪時,泮憶銘在擊敗對手后,已經(jīng)躍居積分榜首位。
消息傳回國內(nèi),泮憶銘的同學們都很激動。班主任雷蓓蕾告訴記者:“泮憶銘在比賽出發(fā)前夕,同學們還特意為他送行加油,而在比賽期間大家也都十分關心他,還有同學通過互聯(lián)網(wǎng)查詢他的賽程和比賽結(jié)果?!?/p>
然而泮憶銘的父親泮中平卻表示:“雖然前七輪孩子發(fā)揮不錯,但是第九輪開始,他連續(xù)迎戰(zhàn)四位國跳特級大師,比賽的強度前所未有。”
好在比賽經(jīng)驗豐富的泮憶銘,沉著應戰(zhàn)。最終全部比賽結(jié)束時,以8勝11和的不敗戰(zhàn)績奪下銀牌,創(chuàng)下我國國跳錦標賽最好成績。
(來源:楚天都市報微信公號)