Statistics 如何以编程方式计算扑克赔率?

Statistics 如何以编程方式计算扑克赔率?,statistics,probability,poker,Statistics,Probability,Poker,我正在尝试编写一个简单的游戏/实用程序来计算扑克赔率。我知道有很多关于公式这样做的讨论,但我想我很难将其翻译成代码。特别是,我对德克萨斯州Hold em感兴趣 我知道有几种不同的方法,一种是你可以根据你能看到的牌来计算你抽到牌的几率。另一种方法是计算你赢得某一手牌的几率。第二种方法似乎要复杂得多,因为您必须输入更多数据(有多少玩家,等等) 我并不是要求你为我写这篇文章,但朝着正确的方向做一些努力会有所帮助:-)这里有一些文章的链接,可以作为起点:和 “此代码片段将让您使用C#和.NET以艰难的方

我正在尝试编写一个简单的游戏/实用程序来计算扑克赔率。我知道有很多关于公式这样做的讨论,但我想我很难将其翻译成代码。特别是,我对德克萨斯州Hold em感兴趣

我知道有几种不同的方法,一种是你可以根据你能看到的牌来计算你抽到牌的几率。另一种方法是计算你赢得某一手牌的几率。第二种方法似乎要复杂得多,因为您必须输入更多数据(有多少玩家,等等)


我并不是要求你为我写这篇文章,但朝着正确的方向做一些努力会有所帮助:-)

这里有一些文章的链接,可以作为起点:和

“此代码片段将让您使用C#和.NET以艰难的方式计算扑克概率。”

本节和本节给出了理论基础


在中可以找到用Objective-C、Java、C/C++或Python编写的完整项目的示例。更多的链接和阅读可以在这里找到。

蒙特卡罗模拟是一种获得扑克牌赔率计算的常用方法。在网络上实现holdem这种模拟的例子很多

看看你是否有相当强的C语言能力。恐怕这并不简单,但你要找的一些东西很复杂。如果输入格式正确(也不容易),使用该库的poker eval程序可能会做很多您想要做的事情。诸如或的网站也使用此库AFAIK


不过,情况可能更糟,你可能想计算一些棘手的事情,比如奥马哈Hi lo…

扑克来源和统计文章都是不错的建议。但这实际上最好通过蒙特卡罗模拟来实现,蒙特卡罗模拟是解决这类难题的一种有用、简单且强大的方法


它与Omaha Hi-lo的效果与Hold'em的效果一样好

德克萨斯Hold'em扑克游戏评估器的完整源代码可在此处找到:

它是为MATLAB构建的,GUI ID是M编码的,但计算引擎是C++。p> 它允许赔率和概率计算。在我的2.4Ghz笔记本电脑上,它可以在0.3秒内处理100000个10人的游戏计算


一台精确的实时计算机:-)

也可以看看这里:


Monte Carlo模拟通常比好的精确评估程序慢。

一旦成功,您是否会加入计算概率的过程,从而将其归结为呼叫/折叠情况的二元决策?不是答案,使其成为注释/推送-Objective-C(主要是C)和Java中的开源评估程序可在此处找到:(文章末尾链接到谷歌项目)。这相当快,但没有那么快——公共领域中有提供准确答案的评估者(即不抽样)至少快了10倍。我已经建立了一个手部评估器和扑克模拟器,我也使用蒙特卡罗进行模拟。我没有尝试用数学方法计算每个不同洞牌组合的获胜几率,但我认为这将是一项极其困难的任务。