计算皇家同花顺
尼格尔紧张地咬了一口魔法蘑菇。他正在OpenAI办公室值班,回答不断涌来的ChatGPT问题。电脑又崩溃了。这份工作压力很大。如果他无法在几秒钟之内回答问题,他只能幻想出一些东西。任何东西。蘑菇给了他帮助。
这个问题的要求是,我想要循环遍历几十个文件夹和成千上万个文本文件,寻找关键词“皇家同花顺”。噢,简单。尼格尔既是Kaggle数据科学竞赛的获胜者,也是WSOP扑克手镯的获得者。
这位用户Mike注意到他们的在线扑克小组在2023年期间已经发到了4个同花顺,但没有皇家同花顺。皇家同花顺是从A到10,同一花色的五张牌:扑克中最好的手牌。或者更准确地说,没有皇家同花顺是Mike能回忆起或亲自参与的:他们使用的扑克应用程序具有非常基础的数据库功能。Nigel轻蔑地嗤之以鼻。通过账簿应用程序,Mike也知道截至12月中旬,俱乐部共发了85,897副起始手牌(即两张底牌,可能是约15,000局)。因此,四个同花顺大约代表着每21,000手牌中有一个。
根据统计,我们预计每玩3.1万手牌能得到1手皇家同花顺,每玩3.6千手牌能得到1手同花顺,或者两者之间的任意一种每玩3.2千手牌出现1次。因此,他们看到的同花顺数量比如果玩家将每个初始手牌一直进行到摊牌的话少了6.5倍(21千/3.2千)。(虽然这个俱乐部的牌运并不差,尼格尔再次嗅了嗅)。或者说,幸运之神对他们有利或不利。对于这些罕见事件来说,即使85000个玩家参与的牌局实际上并不算太多。
迈克一直在寻找一个免费的在线手牌数据库以获取更多的人口统计数据。最终,他支付了5美元,在过去的三周内,在扑克之星上以25NL无限德州扑克规则进行的一百万手牌中,购买了一个名为hhdealer的网站。他今年的扑克赢利轻松地覆盖了这笔开销。购买的文件以26个文件夹的形式送到,一共包含4977个文本文件,每个文件都是一个. txt 文件,其中包含一百多手历史的文字记录,总计1.58千兆字节的数据。
然后,他需要一个扑克数据库来分析它们。迈克买了他能找到的最便宜的一个(drivehud,23美元每年),虽然后来发现这个版本只能读取微额赌注的手牌历史。真是个笨蛋。迈克简单考虑了一下运行一个Python脚本,将文本“($0.05/$0.10美元)”替换为“($0.10/$0.25美元)”。当然,他想让ChatGPT的尼格尔写一个Python脚本来替换这段文字。尼格尔觉得这很简单。但是花4美元,迈克可以再买一百万手牌玩10NL。尼格尔稍微觉得有趣的是,10NL只要4美元,但如果想要更高质量的25NL,需要支付5美元。
无论如何,当将一个文件夹(大约1天的游戏)导入到DriveHUD后,它显示了一些有趣的人口倾向,如下所示:
软件除了显示其他许多统计数据外(例如3Bet%,翻看后弃牌%,甚至是河牌注注超过底池总值的百分比%。有趣的是,“紧缩式保守派”玩家类型在河牌注注超过底池总值的情况下比“疯狂古怪”玩家类型更频繁地下注总值的>100%...)。这些统计数据也可以通过起手手牌来深入研究。请注意,大多数玩家类型都会输钱,因为扑克网站会抽取平均每100个大盲注8.2个大盲注的费用。但是迈克无法回答那个至关重要的问题,即如何计算皇家同花顺的数量!
Nigel 在 ChatGPT 上欣然提供了循环遍历文件夹和文本文件以搜索相关关键词的 Python 代码。嗯,差不多吧。Nigel 不想让事情变得太容易,并要求进一步的准确提示,在他解释如果一个文本文件包含无法读取的字符,或者是应该读取每个文件的全部内容还是逐行阅读时,我们需要进行的操作。许多玩家都称自己为 "Bob_royal_flush"。等等。然而,经过多次尝试和艰难困苦,Mike 完成了计数:
所以这两个数据库中有69个皇家同花顺和340个同花顺,这可能是一个统计上可靠的数字。结果是约为总数的10%(1/11.9),如果每个玩家持有牌直到摊牌,那么你预期的数量差不多是这个数。所以,如果有人每年在线玩1万手牌,很多年下来,他们预期每4年左右会获得一次同花顺或更高级别的牌型,而皇家同花顺则每23年(一代人)出现一次。迈克的扑克小组在每2.1万手中实际上能看到一次同花顺或更高级别的牌型(相比于人口数据库中每3.8万手中的一次)。
请注意,在一手牌中,如果有多名玩家获得同花顺,所有的情况都会被计算。只有当牌桌上有皇家同花顺时,才有可能出现多路皇家同花顺;在270万次发牌中,没有出现这种情况。在两次特别罕见的情况下,11月25日的一手10NL牌局中,牌桌上依次出现了*** RIVER *** [8c 5c 7c 6c] [4c],出现了一个三路同花顺。一周后,12月1日,牌桌上依次出现了*** RIVER *** [7c 8c 4c 6c] [5c],再次出现了一个三路同花顺,且花色都是梅花,从3梅花到8梅花。
另一方面,翻牌时出现了*** FLOP *** [6s 4s 7d]。一个拿着2s 3s的玩家进行了全押,持有组合牌型,并被另一位拿着7s 8s的玩家跟注。当转牌出现5s时,第一位玩家可能正在数他的赢钱,因为他获得了2s到6s的同花顺,然而却败给了拿着更大的4s到8s的同花顺的第二位玩家。
不,这并不意味着扑克之星的随机数生成器存在问题。在270万手中会发生很多事情。
计算同花顺是在扑克世界中考察最罕见的情况。大多数所谓的“糟糕的背运”更常见,比如拥有80%赢面的起手牌却未能保持胜势,或者对手在河牌阶段打出2张牌将你击败(大约4%的概率)。玩足够多的局面,你很快就会经历多次糟糕的背运(如果你是个乐观的人,也会有多次侥幸逃脱的经历)。
与物理世界中罕见事件相比,这个情况是如此之少。有一种粒子叫做中微子:每秒有一百万亿个中微子穿过你的身体。然而,中微子与物质的相互作用非常微弱,以至于你需要等待大约一百年才能在一个与人体大小相当的探测器中探测到一个中微子。幸运的是,科学家在南极洲建造了一个被称为“冰立方”的探测器,其大小相当于一百万个(冰凉的)游泳池。冰立方每天能探测到275个大气中微子。
使观察到皇家同花顺似乎变得绝对平常!