我正在尝试用Java构建扑克机器人。我已经编写了手评估课,并且即将开始学习神经网络,但是我遇到了问题。我需要每一步的每一局获胜赔率:翻牌前,翻牌圈,转牌,河牌。

我的问题是,有52张卡,五张卡的组合为2,598,960。所以我需要为每只可能的手存储2,598,960点赔率。这个数字很大,而这些只是我需要这条河的几率。

所以我有两个选择:


找到每只可能的牌和每张牌的赔率,每当我启动应用程序时,就加载它们并杀死我的记忆。
快速计算赔率并且缺乏处理能力。


有没有更好的第三种选择来解决这个问题?

最佳答案

第三种选择是使用磁盘...但是我的第一选择是根据需要计算赔率。

您为什么需要计算5张牌的所有组合,所以很多手牌价值相同,因为有4张西服,每只手之间有重复。

就个人而言,我会根据有多少手拍打和有多少手拍打来对您的手进行排名。据此,您可以乘以有效手牌的数量来计算出赢得表的可能性。

关于java - 计算获胜赔率-扑克机器人,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34434573/

10-09 02:04