
畅享顶级赛事 扑克城“德州扑克”震撼上线
2026年1月23日
天天德州扑克赢钱要点大揭秘,掌握这5点轻松获利
2026年1月23日新智元给COO设定以最高超百万计的年薪激励,给执行总编也提供这般高超百万年薪奖励;把最齐全完备的培训体系给予骨干员工,给骨干员工发放高于业界平均水准的工资,为骨干员工提供高于业界平均水平的奖金。
加盟新智元,与人工智能业界领袖携手改变世界。
【新智元导读】2017年刚开始,人机大战就打得正激烈,既有在围棋上独孤求败的Master,又有人脸识别的小度,如今,国外科学家宣称,机器在一对一的无限注德州扑克里已经战胜了人类,扑克属于不完美信息博弈游戏的典范,也是人工智能面临的长期挑战,一对一无限注中有10的160次方也就是1后面伴着160个0那么多的决策点,每个点依据出牌方的理解存在不同的路径。再者,作者于论文里描述了一种全新的算法DeepStack,致使系统能够在竞赛之中具备“直觉”。【进去新智元公众号,于对话框键入“0110”去下载论文】。
几位来自加拿大以及捷克的计算机科学研究者,近日于 arXiv 上张贴出论文,该论文介绍了一种用于不完美信息的新算法,比如扑克,DeepStack 运用循环推理来处理信息不对称情况,借助分解把计算聚焦于相关决策上,还通过一种深度学习技术获取从单人游戏里自动学习的有关扑克任意状态的直觉形式 。研究者于论文里讲述,在诸多参赛者参与的一场比赛中,这场比赛有数十名参赛的人,进行了44000手扑克的比拼,其中DeepStack变成首个在一对一无限注这种德州扑克里打败职业扑克玩家的计算机程序 。
非完美信息博弈
游戏,长久以来,都被视作是用来测量人工智能进步的一个基准。在过去的20年间,我们见证了诸多游戏程序,已在许多游戏上,超越了人类,像西洋双陆棋、跳棋、国际象棋、Jeopardy 、Atari电子游戏以及围棋。计算机程序在这些方面的成功,所涉及的皆是信息的对称性,即对于当下的游戏状态而言,所有的玩家能够获取的确定性信息是一样的。这种完美信息的属性,亦是让这些程序取得成功的算法的核心,例如,在游戏中的局部搜索。
现代游戏理论的创建者,身为计算机先锋的 von Neumann,曾针对无完美信息游戏里的推理行为作出过解释,其内容为,现实世界并非如此,现实世界涵盖了诸多赌注,存在着一些带有欺骗性质的战术,并且还关联到你会去思索,别人会以为你将要做些什么。von Neumann 最为痴迷的一款游戏乃是扑克,在这款游戏当中,玩家于拿到自身的牌之后,会依次轮流进行下注,促使对手跟着下注,然后他们或者跟着下注,或者选择弃牌。玩耍的纸牌属于一种并非完美的信息类游戏,参与游戏的人仅仅能够依托自己手中拿着的牌从而给出那种并非对称的信息以此对玩耍游戏的情形予以评估。
在一对一进行对战,即仅有两位玩家参与的有限下注德州扑克里,AI 从前获得过一些成功。然而,一对一有限注的德州扑克,其全部的决策点数量,仅仅不到 10 的 14 次方个。与之形成对照的是,计算机已然在围棋里边胜过人类专业棋手,围棋属于一个具备完美信息的游戏,含有大约 10 的 170 次方个决策点。
并非完美信息类游戏,对更为复杂的推理能力有所要求。在特定的时刻,做出正确决策,依赖于对手所透露出的个体信息的概率分布,而这概率分布通常会在他们的行动里呈现出来。然而,对手的行为怎样去暗示其信息,反过来,又要取决于他对我们私人信息了解的程度,以及我们的行为已经泄露了多少信息。这种具有循环性的推理,恰恰就是为何一个人很难孤立地去推理出游戏状态的原因,只是在完美信息游戏当中,这属于局部搜索方法的核心 。
在并非完美信息的游戏里头,比较具备竞争力的AI方法常常是针对整个游戏展开推理,接着得出一套完整的优先策略。CFR(反事实后悔最小化)是其中的一种战术,运用自我博弈来实施循环推理,也就是说在多次成功的循环当中,凭借采用自身的策略去对抗自身。要是游戏规模过大,难以直接解决,常见的办法是先解决更小的、浓缩型的游戏。如若最后当真要玩最初较为大型的游戏,那就得将原始版本游戏里所设计的模拟以及行为等予以转移,使其能在一个更为“浓缩”的游戏当中得以完成。
尽管这一办法使得计算机于HUNL类游戏里开展推理成为可行之事,然而,它是借助将HUNL之下的10的160次方个场景压缩至10的14次方缩略场景予以达成的。该方法存在极大可能性会致使信息遗失,所有这类程序距离专业人类玩家水准尚相差甚远。
在2015年的时候,计算机程序Claudico输给了,一个专业扑克玩家组成的团队,而且输掉比赛是以较大劣势告负。并且,最近,一年一度的计算机扑克竞赛里,结果人们发现,基于“浓缩”的计算机程序,存在一大堆缺点。其中有4个运用了这一方法的计算机程序,在它们当中,包含从2016年起就一直名列前茅的程序,被认定使用了一个局部最佳响应的技巧,从而在一个策略会输掉多少这个决策方面,产生出一个更加接近下限的答案。所有这四个,基于“浓缩”方法的程序,都有可能输得很惨,用量化表示,是每局都弃牌所属的四倍。
DeepStack运用了一种全然不同的方式,它不断地借助CFR里的循环推理去应对信息不对称的状况,然而,它并不去计算以及存储用于博弈的完整优先策略,故而也无需进行简要的提炼,相反,在游戏里,每当具体场景出现时它便予以考量,可这并非是独立的。
使用一种快速的近似估计去替代某一种深度计算,它能够避免对游戏剩余部分开展推理,这种估计可被看作是 DeepStack 的直觉,即在任一可能的扑克情境里,持有任一可能的个人牌时牌面大小的直觉 。
最终,以一定的层面来讲,与人类颇为相仿的DeepStack的直觉,是要被训练的。我们运用随机生成的扑克情景,采用深度学习来进行训练。最终,我们证实了,从理论层面而言,DeepStack是可行的,相较于基于“浓缩”的方法,它能产生在实质上需更少探索的策略,同时,它还是世界上首个在HUNL游戏里击败人类专业玩家的计算机程序,平均赢率超过450 mbb/g 。(mbb/g,即每游戏的毫大盲注,是用以衡量扑克玩家表现的指数,50 mbb/g 能够被视作是一种较大的优势,750mbb/g 就是对手每一局都主动放弃继续参与牌局的获胜几率。)。
神经网络机器学习系统第一次战胜人类职业玩家
跟职业选手对抗结果
将DeepStack与人类专家做比较,我们聘请了国际扑克联盟里的专业扑克选手,选手们于4周内完成3000局比赛,为激励选手,给以AIVAT计排名最高的前三分别给予5000加元、2500加元和1250加元奖励,比赛于2016年11月7日至12月12日在线上举行,扑克选手可选择最多同时玩4局,这在线上较为常见 。总计有来自十七个国家的三十三名选手同 DeepStack 展开了较量,DeepStack 与每一个人比赛时的表现如下表 1 所示:

表1德信竞技,关于跟职业扑克选手较量的结果,是用AIVAT以及所赢得的筹码来衡量的,并且是以mbb/g作为单位 。

表2:向前边按照所处轮次不同,来进行具体的剖析。F、C、1/2P、P、2P以及A,它们分别属于这样的缩写情况:把弃牌简称为Fold,将跟进简称为Call,把二分之一底池押注简称为half of a pot-sized bet,把底池押注简称为a pot-sized bet,把双倍底池押注简称为twice a pot-sized bet,把全注简称为All in 。表示当超过深度限制之时,最后一列所用到的,是哪个神经网络,是flop网络,是turn网络,亦或是辅助网络。
比赛速度
对其进行分解计算,以及开展神经网络评估,是在一个 GPU 上予以实现的,这就使得它能够一次快速批量调用反事实价值网络上多个子公共树,而这乃是让 DeepStack 变快的关键所在,它是在 Torch7 中进行开发的,并且是在 NVIDIA GeForce GTX 1080 显卡上运行的,诸多上述实现手段都是为了让 DeepStack 能够快速运行,理想状态下是要像人打牌那般快。首先,表3呈现出,DeepStack与人类,在之前那一步骤完成之后,以及提交下一个步骤之前,二者的平均间隔时间。平均而言,DeepStack相较于人类选手,速度要快出许多。然而,我们需要铭记,人类选手能够同时开展4局比赛(尽管极少有人会同时进行两局以上),所以当轮到人类选手进行比赛之际,也许其正在另外的一盘比赛上头。
序号为 3 的表格呈现了人类以及 DeepStack 的思考用时情况,其中 DeepStack 在第一轮叫注也就是所谓的 Pre – flop 时平均用时呈现出极其快速的态势,而此种状况意味着在第一轮叫注这个阶段的状态一般而言能够成功命中缓存。

表4,呈现的是不同程序运用局部最佳反馈,也就是LBR,local best response的最低程度,LBR只对每一轮在下表里所罗列的动作进行评估,F、C、1/2P、P、2P以及A的缩写意义和上面相同。

把最佳反馈估值,也就是Best-response Values,拿来对比自玩估值,也就是Self-play Values ,会怎样呢 ?
DeepStack 在持续分解计算里采用的是自玩估值,而非最佳反馈估值。之前预测试用 CFR-D 去解决更小的比赛,这显示出自玩估值所产生的策略通常攻击性会更小,跟最佳反馈估值产生的策略相比较,在和测试智能代理一对一的时候表现更佳。图 5 展示了一个例子,是关于 DeepStack 在特定第五张牌的博弈中有着不同数字的分解迭代的攻击性 。没有对其稳固性进行理论评价,自玩估值看起来如同最佳反馈估值,最终收敛到低攻击性策略。

图5,DeepStack,于第五张牌开始之前,在特定公共状态之下,存在着攻击性与分解迭代数量之间的方程 。
算法 DeepStack :让机器拥有“直觉”
DeepStack属于一大类序列不完美信息博弈通用算法,我们会对DeepStack在HUNL那种一对一无限注德州扑克里的作用作出解释,扑克游戏状态能分成玩家私人信息也就是两张牌面朝下的手牌,还有公共状态,公共状态涵盖牌面朝上的公共牌以及玩家下注顺序,游戏里公共状态可能序列构成公共树,每个公共状态都有一个关联的子公共树,见下图6:

图6,呈现的是HUNL公共树的其中一部分,其中,红色以及湖蓝色所代表的是玩家的动作,而绿色所代表的是被翻开的公共牌 。
DeepStack算法尝试去计算玩游戏时的低利用率策略,也就是求解一个近似的纳什均衡,DeepStack在玩牌期间计算这个策略,公共树的状态如图7所示,这种本地的计算致使DeepStack在对现有算法而言规模太大的游戏里能够进行推理,因为需要抽象出的游戏的决策点从10的160次方下降到10的14次方,这使得算法变为易处理的。

图7,是DeepStack概览图,(a)中,DeepStack针对每个公共状态的动作做re – solves,运用depth – limited lookahead,这里面,子树值的计算借助训练好的深度神经网络,(b)通过随机生成的扑克状态在玩牌前予以训练,(c)最终状态如同图3 。
组成DeepStack算法的有三个部分,分别是针对当前那公共的状态的本地策略计算,也就是local strategy computation,还有使用任意扑克状态的学习价值函数的depth – limited lookahead,另外就是预测动作的受限集合。
连续 Re-Solving
有限公司的前瞻性展望,以及稀疏的树木, 。
连续进行重新求解,从理论层面上来说是具备可行性的,然而在实际运用当中却是不切实际的。它并未保持一个完整的策略,除非游戏快要接近结束,重新求解自身就是相当棘手的。比如说,针对首次动作展开的重新求解,需要为整个游戏临时去计算近似的解决方案。
深度反事实价值网络 , 深度的反事实价值网络 , 反事实价值的深度网络 , 反事实的深度价值网络 ,。
经证实,在诸如图像以及语音识别、自动生成音乐还有玩游戏等任务方面,深度神经网络也就是DNN是强有力的模型。DeepStack把DNN以及定制的架构用作为它的depth – limited lookahead其的价值函数。就如同图8那样。训练两个彼此独立的网络:一个是在头三张公共牌被处理之后也就是flop网络去估计反事实值,另一个是在处理第四张公共牌之后也就是turn网络去估计反事实值。有一个辅助网络,其作用是,在发出任意公共牌以前,去加速对先前动作所需的重新解决 。

图8:将Deep Counterfactual Value Networks称为网络,该网络的输入是pot的大小,还有公共牌以及玩家范围,玩家范围先被处理成bucket ranges,其输出来自七个完全连接的隐藏层,这些输出被后处理以确保值满足零和限制(zero-sum constraint)。
CMU 又被截胡
近日,新智元在报道里提及,有一项赛事,它被称作“人脑 vs 人工智能:跟不跟 ”,此赛事定于1月11日,将在匹兹堡的 Rivers 赌场拉开帷幕。在比赛这段时间,职业扑克手 Jason Les,Dong Kim,Daniel McAulay 以及 Jimmy Chou 会在20天的时长里,要和 CMU 计算机程序玩一对一不限注的德州扑克,要玩120000手。
鼎鼎大名的CMU所拥有的人工智能系统,它的名字叫做Libratus ,相较于去年遭遇失败的Claudico而言,它在策略方面出现了改变 。Libratus会借助Bridges计算机,实时去计算全新的终局解决办法以及算法 ,并非像Claudico那样,对终局有着很强的依赖 。
此外,Claudico在扑克中常用的策略是limping,这是一个扑克方面的术语,其特定的意思是选择跟注混入牌局进行初步观察,并非是直接加注或者选择放弃。并且,Libratus在某些情况下偶尔也会采用这种玩法 。
能够瞧见,如同上文所提的DeepStack那般,他们期望攻克的同样是一对一,也就是两个参赛者在不限注情况下的德州扑克难题,这可是个无比复杂的博弈游戏,存在 10 的 160 次方信息集,每个集合依据出牌方的理解还有迥异的路径,这个庞大的信息集比全宇宙的原子数量还要多。
而将两个机构的介绍综合起来看,其运用的方法存在相似之处,也就是采用实时计算。CMU的比赛在11日举办,而这边论文已发布于arXiv上,看上去,CMU又被截胡了。


