人工智能 vs 扑克职业(优势🤖)

人工智能 vs 扑克职业(优势🤖)

原文:https://medium.com/hackernoon/ai-vs-poker-pros-advantage-c4e66a4baead

阅读我的后续报道了解比赛的最新消息。这是一个很好的起点,我的预测看起来相当不错,已经完成了 2/3。)

周三晚些时候,我去了匹兹堡,观看在匹兹堡河流赌场举行的大脑 vs 人工智能扑克挑战赛的第一天。游戏进行得很晚,我以为玩家会玩到晚上 7 点以后。记分牌告诉我们为什么他们按时结束了:

将有 120,000 手牌在两周内进行——以避免去年的争议,当时人类声称获胜,而 CMU 扑克集团注意到样本量小,因此在统计上出现平局。120,000 手牌对扑克来说太多了。

四名职业单挑扑克专家将与人工智能玩重复的扑克(两对每人得到相同的牌,人机交换角色,除了休息时间,玩家之间没有交流)。每位玩家下了 700 手牌,总共下了 2,800 手,计算机的筹码数量达到了惊人的 70,000 个。这相当于每手$25,或者在 50/100 盲注和 20,000 倍筹码的情况下相当于大盲注的四分之一。如果能在整场比赛中保持下去,这对人工智能来说将是一个非常稳固的胜利。

不难理解为什么玩家会选择按时结束,休息一下,并讨论他们未来几天的策略。这场比赛将在接下来的两周内每天举行,地点是匹兹堡市中心的里弗斯赌场。

与此同时,在网上,CMU 扑克研究小组的毕业生山姆·甘兹弗里德对电脑在第一天的表现印象深刻。

我看不到昨天比赛的重播,所以很难得到细节。但山姆似乎注意到人工智能修复了去年的两个主要弱点:

  • 考虑“替换牌”——玩家手中的牌,影响对手的牌的范围,主要用于诈唬
  • 将大玩家赌注映射到人工智能简化的游戏视图中效果不佳

让我解释一下这是什么意思。卡耐基梅隆大学的 Libratus poker AI 解决了单挑扑克游戏中无法利用的平衡解决方案(就像以前的 CMU 扑克 AI、Tartarian 和 Claudico 一样)。

整个扑克游戏的规模太大了,不像跳棋或单挑限注德州扑克这样的小游戏。因此,人工智能解决了一个更简单的游戏,在这个游戏中,一些游戏情况被组合成单一的状态。具体来说,它有一个“卡抽象”——类似的卡状态被视为完全相同的情况。它有一些“赌注抽象”——在有限的选择范围内,赌注被四舍五入到最接近的赌注大小。例如,人工智能考虑下注“底池”或“2 倍底池”,但不考虑 1.75 倍底池。舍入后,1.75 倍底池赌注可能会被视为更大的赌注,因此概率模型可能不太正确。

牌的抽象通常是好的,但在重要但罕见的情况下,它们可能会开始失效,比如一个玩家根据他手中的“阻挡者”诈唬,这些牌是他的对手不可能有的,因此不太可能做成顺子或同花,而更可能有一手像对子一样强大但可折叠的牌。山姆在上面的推文中链接的关于去年大脑与人工智能比赛的详细分析中解释了这一点。

更好抽象可能是一个更大的问题。一旦人类开始以不寻常的金额下注(对计算机而言),整个下注树就很难映射到存在于游戏中的状态,人工智能可以与自己对抗。

模拟

由研究生诺姆·布朗和教授托马斯·桑德霍尔姆组成的 CMU 团队用大量的在线计算解决了这两个问题。除了常见的早期手牌(翻牌前)情况,在这种情况下,平衡解已经非常稳定,后期的手牌决策对计算机来说需要大约 15 秒,正如你可以在现场抽搐流中看到的那样。

在这 15 秒钟内,人工智能正在向匹兹堡超级计算机中心分派一项“残局解算器”工作,正如《The Verge》和《麻省理工技术评论》所报道的那样。CMU 不会透露关于解算器的细节,直到比赛结束,但这似乎是去年的克劳迪奥和今年的 Libratus 球员之间的巨大差异。

残局解算器可以花时间用计算机的确切牌和确切的下注金额来模拟推出。这是计算上的穷举,因为求解器不仅要模拟牌局到牌局结束,还要从牌局开始…以建立足够的情况,让对手可信地达到现有的游戏状态。如果你不能先确定在之前下注的情况下,他有哪些牌可以达到当前的状态,那么观察对手会如何玩他所有的牌是没有意义的。

但是,一旦创建了这些路径,就有可能正确地计算出对手在平衡游戏中“应该”拥有的准确牌。这包括换牌效应,因为如果你有一张红心 k,你的对手就不太可能有两张 k,也不太可能在同花听牌板上拿到红心同花听牌。

在下注方面,人工智能仍然以一些固定的金额下注,但这些包括更多的下注金额,以至于人工智能实际上比大多数人更多地改变其下注金额。更快的处理器、更好的算法和超级计算机集群——这些优势是人类一生都无法利用的。伙计,我希望我能升级,或者至少买一些额外的内存,把生活中困难的计算卸载到一个。

机器人已经赢了吗?

今天早上的 700 手牌局结束时,扑克职业选手 Dong Kim 赢得了 30,000 筹码。我看了他在那场比赛后半段的比赛,注意到他稳步上升,尽管他两次被提前下注(一手输掉了全部 20,000 筹码的买入费)。

当被问及什么是大牌时,他告诉我有一个 allin for stacks,他用 AK 对 AI 的口袋 a 输掉了。在另一个位置,他自己有 a,但 AI 击败了他,用 42 同花做成同花。除了这一手牌,董认为他跑得很好,任何一个好的玩家都会比他拿到的牌快。

杰森·莱斯在楼上打出了同样的牌的“另一面”。Dong 担心 Jason 可能会输掉和他赢的一样多的钱,所以很高兴听到 Jason 只输了大约-15,000,而 Dong 赢了 30,000 的筹码。优势👨。

当 Jason 说他在 42 同花的翻牌圈弃牌,并且没有机会追上 AI 的 a 时,我们都笑了。会很好的。

在另一场重复的比赛中,两位选手都输了。因此,玩家的整体下滑幅度更大,比第一天设定的每手 25 美元的速度好不了多少。

Brains vs AI challenge, two sessions in.

有了这样的领先优势,考虑到 AI 的强劲表现,在这场比赛中击败它可能是徒劳的。可以肯定的是,人类仍然有一些优势,但我们也会犯错误。一个玩家在几秒钟内移动,他并不是真的试图解决一个最优策略。因此,除非人工智能在重要的奇怪的角落情况下有一致的错误,否则很难看到人们如何既能打得足够稳固而不失败,又能在可能的情况下充分利用人工智能。

这让我想起了一句谚语,一旦计算机像人一样好,它就已经更好了。

长城以外的🇨🇦

与此同时,阿尔伯塔大学的研究人员——北美另一个伟大的人工智能项目,也是 CMU 在扑克研究领域的竞争对手——发布了一份关于他们的 DeepStack poker AI 的论文草稿,也声称“无限注德州扑克中的专家级人工智能”。在同行评审期间,作者不会讨论他们的创作,但描述的结构使用在线模拟来解决个别游戏情况。它还包括一个 7 层深度神经网络作为算法的“大脑”,将手输入状态连接到模拟器。

DeepStack 系统——一个伟大的名字,我有点后悔没有使用它——声称对专业级玩家有很好的效果。他们实际上超过了 Libratus 目前超过 40,000 名在线玩家的速度。即使你注意到与 DeepStack 竞争的玩家没有经过严格的审查或得到很好的时间补偿,人们也有充分的理由相信这也是一个非常强大的系统。

神经网络+在线模拟方法与我会应用的方法完全相同,或者任何其他深度学习研究人员会尝试的方法,以创建类似 AlphaGo 的扑克游戏。这可能是阿尔伯塔省对他们的工作保密的原因,在正式的期刊评论和出版之前,他们不会对此发表评论。DeepStack 的论文声称,人工智能每次移动花费约 3 秒,比 Libratus 少得多,所以我想知道他们是否也做了一些聪明的事情来加快算法的在线模拟部分。或许,在 GPU 上批处理一些东西?或者只是考虑更少的模拟状态。很难知道。

超人 vs 深度超人?

如果能在今年的某个时候看到这两个旗舰人工智能相互较量,那将是一件非常棒的事情。这似乎不太可能,因为 Libratus 的设置相当复杂,而且相当昂贵,我预计 DeepStack 也同样难以运行。有人将不得不建立一个可观的奖金池,让两个人造地狱在同一个房间里。有人要吗?

与此同时,这两个网络可以像以往一样,以职业玩家为基准,也可以以前几年强大的扑克 ai 为基准。我们很快就会有一些参考点。一个会远远领先于另一个吗?

对抗训练

扑克的下一步是什么?当然,和最好的人类单挑一样打得好并不是终点。

有可能,如果新一代的研究生不玩扑克的话。与当前扑克系统的开发人员交谈,许多人都期待其他人工智能系统,以及超越扑克的未来工作。与此同时,随着解决单挑限注德州扑克的竞赛,以及在单挑无限注中击败人类的竞赛,为多人游戏构建良好的人工智能的工作并不多。

看到这种变化是很棒的。在与其他参加年度电脑扑克比赛的人的交谈中,有人对多人比赛感兴趣。我们会有足够的 6 人桌吗?会很艰难,但你总得从某个地方开始。阿马里洛·斯利姆击败其他七名玩家,赢得了第三届世界扑克锦标赛

当然,随着麻省理工学院(和其他大学)举办扑克人工智能课程和比赛,我们可以通过推广比赛和做更多的工作来帮助人们提交参赛作品,从而获得多个参赛作品。一些程序员提交扑克人工智能来赢得胜利。其他人只是想看看他们在与最好的电脑玩家的比赛中表现如何,并享受获取日志以供未来分析的乐趣,以防他们想要全力以赴构建一个坏蛋扑克人工智能。

均衡解不容易适用于 3 人以上的隐藏信息博弈。但它肯定会取得一些进展,也许会回到更小的卡抽象。即使是在单挑人工智能的基础上进行黑客攻击也可能走得很远,至少为构建多手方法提供了一个不错的起点。有了神经网络,一旦你有一个像样的对手(平衡,神经网络,或玩家手日志),它可能会建立一些像样的东西,并通过自我游戏来改善它。DeepMind 的 AlphaGo 就是这样开始的。

在视频游戏的人工智能中,你会看到像 DeepDrive 这样的项目,它们通过模仿计算机的自动驾驶功能,直接从屏幕像素学习驾驶《侠盗猎车手》视频游戏(圣安地列斯版)中的汽车——它可以获得更多信息。类似的“迁移学习”对于多人德州扑克来说是一个有趣的应用。

同时,在单挑无限注德州扑克中,我希望看到有人尝试对抗性的神经网络方法。有了一个像样的均衡对手,应该有可能尝试不同的策略,并开始挑选哪些做得最好,也许在 100,000 手比赛中。这些比赛需要与职业扑克玩家进行数周,但可以在电脑之间在线通宵进行。

一个简化的版本可以从超参数搜索开始。如果人工智能开始多诈唬 10%,它会怎么样?如果它在大底池中开始更频繁地盖牌呢?如果它开始以那些奇怪的“1.75 倍底池”金额下注会怎么样?对抗一个不适应对手模式的平衡方法,有可能偶然发现一个利用人工智能漏洞的策略,如果有的话。也许没有太多的弱点了。

训练一个敌对的网络来识别你是在和一个人类、一个虚弱的人工智能还是这些平衡怪物中的一个比赛,这可能会更有效。职业棋手似乎非常担心被伪装成人类的强大人工智能控制,就像 DeepMind 最近在一个中国围棋服务器上做的那样

更新

那天剩下的时间里,我和 CMU 扑克小组以及 Twitch stream 上的职业玩家一起闲逛。玩家们对电脑持续运行的方式印象深刻。他们在周四下午的交易中出现了小幅亏损,大大减少了之前每手 21 美元的损失。

人类似乎不太可能大获全胜。

只有一名玩家(Jimmy Chou)在比赛中遥遥领先,甚至他还评论说人工智能有多难读懂——扑克术语是将玩家放在特定范围的牌上。去年人工智能的明显错误似乎得到了修复,可能是超级计算机在转弯处和河上进行了模拟。早期的策略也比去年更加细致入微,部分原因是创造了更多的转弯和河流情况,一旦游戏开始在两个屏幕上持续出现 20 秒以上的等待,玩家就会有点抓狂。在我看来,这就像是很多手牌要摊牌了,或者在河牌圈被盖掉了——因此需要一分钟或更长的电脑思考时间。

对于一个强大但非专业的玩家来说,这看起来像是非常好的扑克。我还有幸在 Twitch 上观看了伟大的单挑玩家在良好的条件下尽最大努力,并分享了他们对这手牌的一些想法。我学到了很多关于单挑策略的知识,很容易就能看出有人会在单挑游戏中走得多远。

在某个时候,陷入一连串坏运气的丹·麦考利(他输了,吉米赢了,从另一方打出同样的牌)指出了人工智能的策略是如何“人性化”的。Libratus 确实用了一些人类不会考虑的牌来诈唬——很好的诈唬点,但是用不同寻常的牌来诈唬。但除此之外,它并不是靠在所有的底池中猛轰来压倒对手而获胜的。相反,它似乎在玩专家级的小球扑克,偶尔会有发人深省的超赌注。总是让球员陷入困境。

如果有足够的练习,我想知道人工智能是否能学会寻找那些困难点,并更努力地推动对手。目前,值得注意的是 Libratus 策略——在没有任何人类建议的情况下,在实验室的超级计算机上训练——变得非常像一个坚实、平衡的人类扑克玩家。

首先,也许这显示了人类在网上是多么接近均衡策略。

预言

我预测,通过两天的练习和一些时间来比较笔记,这四名职业选手将使人工智能接近收支平衡。我还认为,由于疲劳,他们的发挥会在比赛后期开始下滑。我希望最终的结果对玩家来说会在下面的某个地方结束,但是低于 AI 在前两次游戏中开始的-21 美元/手的速度。

我想以每手-15 美元结束。这对人类来说听起来很残酷,因为我认为他们最好比这更好。过去的人工智能挑战,最著名的是卡斯帕罗夫对深蓝,表明人类的表现在长时间的比赛中会受到影响,而计算机永远不会累。

在 Twitch stream 上,桑德霍尔姆教授告诉我们,如果球员们本周不能获胜,他们也不太可能在任何其他条件下获胜。的确,赌场是一个玩游戏的好地方,无论玩家能通过学习、现场平视展示或练习获得什么优势,在这一点上这些优势可能都是最小的。当 CMU 扑克团体为即将到来的胜利欢呼时,被提醒玩家有多想赢也是一件很棒的事情🤖统治!

我确实认为,未来的扑克人工智能可以在 Libratus 的基础上有所改进,无论是通过更多的在线求解,还是通过一个敌对的网络来找到平衡求解者的剩余弱点,并更直接地利用它们。人工智能当然可以在开发人类游戏模式方面做得更多。

很难开发出像无限德州扑克这样既有深度又简单的游戏。看完比赛,和球员聊了一会儿,让他们解释一些难点,我的脑子都快炸了。全押大牌之间的差距很大,但在单挑扑克中,几乎每手牌的策略都很吸引人。

结果/后果

比赛比我想象的更接近我的预测。两周后,120,000 手牌中有 100,000 手牌,玩家每手牌下跌了近$14,非常接近我上面的预测。

看到球员表现的图表会很棒,所以如果有人保存了每天的更新,请发微博给我或在下面发帖——我会把它添加到文章中。通过前 50k 手牌,您可以看到下图:

正如我预测的那样,玩家在调整时降低了人工智能最初的每手 25 美元的领先优势——这些人是最棒的——但后来他们累了。这就是我所预测的,这似乎正是所发生的。

这次算吗?

以这样的优势获胜在统计上意义重大。做一个粗略的计算,每天在大约 55000 手牌的游戏中,大约有$ 100000 的筹码。根据这些假设,一个标准差是每天 18 美元/手。将 18 天视为独立样本,匹配的两个标准偏差计算为约 8.3 美元/手。官方数据更加复杂,将在比赛结束后由 CMU 公布。但我可能超过了误差线,如果有的话。

我不会评论人工智能是如何适应玩家的,或者它是否在学习前几天的课程。我知道为什么会这样,但是 CMU 队已经答应在赛后解释他们的所作所为。当他们准备好的时候,他们应该有机会解释他们的方法,上演一场伟大的事件,以及一场具有历史意义的表演。

与此同时,随着人工智能#获胜变得越来越明显,这场比赛得到了越来越多的关注——无论是在主流媒体上,还是在推特上的扑克迷和人工智能粉丝中。

Libratus 正在成为 Twitter 上的名人,一个匿名的模仿账户就是其化身。在真正的美国风格中,它并不谦逊。

Not associated with Libratus, CMU, Noam, Professor Sandholm, or the Pittsburgh Supercomputer Center. In fact, I have no idea who is behind this fan art.

我们还学到了什么?

道格·波尔克在 YouTube 上对球员们进行了一次很棒的采访。一个常见的主题是 Libratus 向玩家展示了使用非标准下注规模在 200 场大盲注深度扑克中获胜的可能性。特别是,机器人做了很多超注,下注超过底池的大小。

Doug Polk (center) and the Human team: Jason, Dong, Jimmy and Daniel. All five gents are “top 10, maybe top 15” heads up poker players in the world.

这对我有意义。在过去的一年里,我一直在与slum bot——一个不太复杂但非常好的平衡解决单挑扑克 AI 比赛。Slumbot 总是超注底池,我已经学会了通过超注底池来获得优势(在玩了 10k+手牌后,我每手赢了$1)。

这不是关于我的,所以我会在以后的博客文章中保存一些例子,但希望这场比赛能让无限注德州扑克出现更多的 overbets。扑克中没有规则,要求标准赌注大约是底池大小的 2/3。

收听 Twitch,观看历史的创造!

在 www.twitch.tv 上观看 libratus_vs_jasonles 的现场视频

在 www.twitch.tv 上观看 libratus_vs_dongkim 的视频直播

在 www.twitch.tv 上观看 libratus_vs_jimmychou 的现场视频

在 www.twitch.tv 上观看 libratus_vs_danielmcaulay 的现场视频

黑客中午是黑客如何开始他们的下午。我们是 @AMI 家庭的一员。我们现在接受投稿并乐意讨论广告&赞助机会。

如果你喜欢这个故事,我们推荐你阅读我们的最新科技故事趋势科技故事。直到下一次,不要把世界的现实想当然!


本站为非盈利网站,作品由网友提供上传,如无意中有侵犯您的版权,请联系删除