如何计算德州扑克或奥马哈手牌对8个随机对手的获胜概率的软件是如何工作的?

use*_*092 5 algorithm approximation

所以有德州扑克电脑游戏,你可以玩8个对手,据说这些电脑游戏中的一些可以告诉你,如果你的对手都是随机的,你的获胜概率.如果有人不知道,在德州扑克中,每个玩家获得2张私人牌,然后最终在中间发出5张公共牌(前3个,然后是1个,然后是1个),获胜者是能够玩牌的玩家.他们可以使用他们的2张私人卡和5张社区卡的任意组合制作最好的5张牌扑克牌.在奥马哈,每位玩家获得4张私人牌,还有5张公共牌,而获胜者是能够使用2张私人牌和3张公共牌制作最佳5张牌扑克牌的玩家.

所以,在德州扑克中,对于任何一个玩家的私人手牌,有超过10 ^ 24种方式可以处理8个对手的私人手牌和5张社区牌.那么假设你的8个对手是随机的,他们如何计算/估计你在开始时获胜的概率呢?在奥马哈,情况甚至更糟,尽管我从未见过奥马哈电脑游戏实际上可以让你对8个随机对手的手牌.但无论如何,是否有任何编程技巧可以完成这些获胜概率计算(或者说,在3或4位小数点内正确),比蛮力更快?我希望有人可以在这里回答谁在编写这样一个程序之前运行得足够快,因此为什么我在这里问.而且我希望答案不涉及随机抽样估计,因为总是有一个很小的可能性.

fai*_*dox 5

正如您所确定的那样,预期的赢率是一个难以置信的大概率,必须近似.标准方法是使用蒙特卡罗方法,该方法包括模拟各种手一遍又一遍并采用经验平均值:#wins /#games.

有趣的是,这种近似方法的(MSE)误差与维度(组合数)无关,如果你赢了就让X = 1,如果你输了就让0,MSE = var(X)/ N = p*(1- p)/ N其中p = Prob(X = 1)(未知),N是样本数.

有不同的蒙特卡洛技术,可以提高香草抽样方法的差异,诸如重要抽样,常见的随机数,饶Blackwellization,控制变元和分层抽样,以仅举几例一大堆.

编辑:刚看到你正在寻找一种非随机近似方法,我怀疑你对确定性近似方法会有多少运气,我知道计算扑克研究中目前的技术水平使用蒙特卡罗方法来计算这些概率,尽管有几个方差减少技巧.

关于"因为总是有一个很小的机会可以离开",你总是可以通过Hoeffding的不等式获得错误率的高概率.