分享一个德州扑克的 solver

2021-02-25 00:23:46 +08:00
 icybee

我对于德州扑克 ai 的接触始于 2019 年,那个时候我还在上研究生,当时有个挺有意思的老板通过 icyChessZero 这个项目找到我,问我有没有兴趣为他开发德州扑克的 ai,他可以给我报销机器钱,还可以有一点点的报酬,当时我正好在看很多关于德扑 ai 的论文,本来也有这个打算,于是想都没想就接了这个活,也开始了我和德州扑克 ai 真正的交集。虽然到 2020 年最后我写的德州扑克 solver 并没有被采用,最后老板还是选择了名声更大的一个项目进行合作,但是这中间构建德州扑克 solver 的过程是有趣的,这个 solver 我也终于在今年春节期间把代码整理清楚并且开源,算是不旺我花费在德扑 ai 上的这些时间,开源的这个项目也是目前据我所知最完善的德州扑克开源 solver,虽然它没有界面,功能也不能称得上尽善尽美,但是比起 1000 刀的 piosolver,它不要钱啊:

https://github.com/bupticybee/TexasHoldemSolverJava

国内用 solver 打德州的应该还比较少,但是国外现在如果不用 solver 去打线上德州基本就是“鱼”,就是送钱天使,但是专业的 solver 又很贵(便宜的上百刀),于此同时市面上有没有一个好的德州扑克的开源 solver,所以这个项目应该来说是有点价值的。

我甚至还专门做了一个 B 站视频介绍这个开源项目:

https://www.bilibili.com/video/BV1s5411N7gf

由于国外目标用户也很多,我甚至操着塑料英语厚着脸皮做了一个英文油管的视频:

https://www.youtube.com/watch?v=tf34v0fCvi0

我甚至还到专门的德州论坛上去介绍自己的软件,还是收获了一些鼓励的,请允许我得瑟一下摘抄几句:

如果有玩德州比较深的应该知道这个项目的意义,如果你不玩德州,也没关系~哈哈留下你的 star 就好~

7319 次点击
所在节点    分享创造
28 条回复
PMR
2021-02-25 07:49:36 +08:00
前面 本想点 star fork



后面来个球 star? 让了
kop1989
2021-02-25 09:24:17 +08:00
关于这个我有一个问题请教 lz 。

德州扑克是不是每局完成后重新洗牌的?如果重新洗牌,是不是对应桌面上所有牌(明牌、暗牌、未发的牌)的概率就是每局固定的?那么既然牌面概率是每局固定的,其他人的筹码分配策略也未知(假设这个 ai 没有针对对方 id 的学习功能)那么 ai 的统计学意义在哪?或者说这个 ai 与发牌概率计算器的区别在哪里?
CallMeReznov
2021-02-25 09:36:39 +08:00
java shell python,好家伙,搁这套娃呢
anzu
2021-02-25 09:37:48 +08:00
需要猜对手的手牌概率然后求解,对高玩比较有用。
doveyoung
2021-02-25 10:07:27 +08:00
想知道,AI 能判断出来对方是在诈唬吗
bigtan
2021-02-25 10:08:15 +08:00
牛逼啊,难怪各种平台 pgo 越来越多
icybee
2021-02-25 11:05:14 +08:00
@CallMeReznov 哈哈用 py 写的原型然后代码迁移到 java,结果没全部迁移完
icybee
2021-02-25 11:05:29 +08:00
@PMR 让了是啥意思呀⊙_⊙
icybee
2021-02-25 11:06:04 +08:00
@doveyoung cfr 的算法原理保证长远不会输,所以从数学原理上是可以的
icybee
2021-02-25 11:08:41 +08:00
@kop1989 差别非常大,但是一两句话说不完,建议看下 An introduction to counterfactual regret minization 这篇文章,总的来说德州扑克 solver 的算法求的是纳什均衡策略而不是胜率,这是完全不同的两个东西
kop1989
2021-02-25 11:09:30 +08:00
@icybee #10 非常感谢提点,有方向了
icybee
2021-02-25 11:12:49 +08:00
@kop1989 你要是想要方向的话我可以整理一个我自己看的论文 list 给你
icybee
2021-02-25 11:36:14 +08:00
@bigtan 怎么说呢,国内国外平台都是,没有点工具就上基本会被认为是送钱天使,其实对德州发展很不好
wzb0909
2021-02-25 11:36:17 +08:00
@icybee 啊我也想要论文。
然后,@kop1989,你想要的应该更多是玩法和规则,网上有个入门教程还不错,https://hopkinspokercourse.com
icybee
2021-02-25 11:36:45 +08:00
@wzb0909 好的我中午整理一下
wzb0909
2021-02-25 11:39:40 +08:00
@icybee 哎以前有一阵子我也很感兴趣,但是学理论没有打牌好玩,就一直玩一直玩,然后输了钱也不爱学理论了。。。
icybee
2021-02-25 11:43:34 +08:00
@wzb0909 我其实不这么觉得,因为德州扑克本身就是一个很有挑战的问题,可以说是近几年来算法的一个桂冠,自己打起来不一定觉得好玩,但是让机器去做这个事情,其实是蛮有意思的
icybee
2021-02-25 13:35:30 +08:00
@wzb0909 @kop1989 主要看的是这么几篇论文:
cfr 算法本身:An introduction to counterfactual regret minization
mccfr(在开源项目里也有实现):Monte Carlo Sampling for Regret Minimization in Extensive Games.
cfr+(在开源项目里也实现了) :Solving Large Imperfect Information Games Using CFR+
discounted cfr(在开源项目里也实现了) : Solving Imperfect-Information Games via Discounted Regret Minimization
Libratus(冷扑论文) : Superhuman AI for heads-up no-limit poker: Libratus beats top professionals
Pluribus(德州六人扑克):Superhuman AI for multiplayer poker
deepstack(加入了神经网络):DeepStack: Expert-Level Artificial Intelligence in No-Limit Poker
123jiayue
2021-02-25 13:57:58 +08:00
以前看那些打十几桌的低级别的基本也和机器人差不多 风格紧一点等鱼就是很累资金管理正常也是能赚 不过现在玩家水平高了不少没那么多鱼了😄
pkwenda
2021-02-25 16:17:52 +08:00
晚上打两把试试

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/756016

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX