Deepstack 扑克程序需要多少内存?

人工智能 游戏-ai 扑克 深栈
2021-10-22 08:53:14

我正在阅读一些有关 Deepstack 扑克程序的信息:

DeepStack是第一个在单挑无限德州扑克中胜过人类专业人士的计算机程序

DeepStack:单挑无限注扑克中的专家级人工智能

第一篇文章提到使用的处理器是 NVIDIA GeForce GTX 1080 显卡,但我试图了解这种类型的 AI 需要多少内存。

相关:最近在扑克数学分析方面的工作对 Deepstack 和其他强大的扑克 AI 有多大贡献?

1个回答

DeepStack 风格的算法只要求您有一种方法可以从其每个决策点为前瞻树的叶子处的子树近似平衡反事实值。因此,如果我在翻牌前开始行动,而我只有时间和内存来预测翻牌的开始,那么我需要在开始的每个子树的根部近似平衡反事实值在翻牌开始时。

在科学论文的研究中,DeepStack 使用了三个神经网络,一个用于翻牌前结束时的值,一个用于翻牌开始时的值,一个用于转牌开始时的值。这些,连同前瞻树数据结构,必须适应 1080 上 8GB 的​​ GPU 内存。虽然在玩游戏时不需要,但网络在数百万个示例上进行了训练(翻牌前和转牌网络为 1000 万个,以及一百万用于翻牌网络)。

如果您想更深入地了解一些编程细节,我们在 GitHub 上有一个可以玩 Leduc 德州扑克的 DeepStack 实现示例。Leduc hold'em 是扑克研究界常用的小型玩具扑克游戏。

DeepStack 算法源于一种数学上严格的方法,用于在两人、零和、不完美信息博弈中逼近纳什均衡。迄今为止,大多数强大的扑克 AI 都试图将纳什均衡逼近到某个程度。因此,我们通常不是专门分析扑克,而是更一般地使用对不完全信息博弈的性质的分析来得到一个通用算法,然后我们将这些技术应用到扑克中,作为不完全信息博弈的一个具体例子。