我有兴趣用Java构建Texas Hold'Em AI引擎.这是一个长期项目,我计划投资至少两年.我还在上大学,还没有建立任何雄心勃勃的东西,并希望解决一个长期存在我兴趣的问题.我是人工智能领域的新手.从我在大学的数据结构课程中,我知道基本的构建模块,如BFS和DFS,回溯,DP,树,图等.我正在学习正则表达式,为SCJP和SCJD学习,我将很快采取(密集) )统计课程.
问题:
- 我从哪里开始?我应该选哪些书?玩扑克游戏程序的人工智能是什么样的?我可以从哪个开源项目中获取页面?Java中有哪些优秀的AI资源?我也有兴趣学习Lisp,Jatha好吗?
以下可能有用:
阿尔伯塔大学计算机扑克研究组
OpenHoldem
扑克牌识别,比较,枚举和评估
扑克理论
扑克数学
SpecialKPokerEval
众所周知,扑克AI很难做到正确,因为人类无法预测.它通常分为两部分.
1)计算你手牌成为胜利者的几率.
2)制定基于1的投注策略.
我建议从第1部分的大量统计读数开始.乍一看似乎很容易,但它实际上非常复杂(并且错误会让你的AI崩溃).然后转到第2部分的遗传算法.投注策略主要是遗传算法.他们根据过去的成功和失败以及一些随机化来调整自己,以免变得可预测.