德州扑克AI

德州扑克:

1:outs数,就是所听的牌的数量。
  例子:
    1:听顺子      4567 outs数就是8,能够成顺子的牌为3和8。
              5689 outs数就是4,能够成顺子的牌只有7。
    2:听同花        359J outs数就是9,能够成牌的是同一种花色的'A','2','4','6','7','8','10','Q','K'。
    3:听同花顺     4567 outs数就是2,能够成牌的是同一种花色的'3','8'。
              5689 outs数就是1,能够成牌的是同一种花色的'7'。
    4:听同花或顺子   4567 outs数就是15,能够成牌的是同一种花色的'A','2','3'(4张),'8'(4张),'9','10','J','Q','K'。
    5:听对子        3  outs数就是3。
    6:听三条       33 outs数就是2。
    7:听四条       333 outs数就是1。
    6:听葫芦        332 outs数就是5('3','3','2','2','2)。



2: 成牌率,就是成为某一种牌型的概率
   1:听顺子 4567 outs数就是8,1手成牌概率 不讨论(因为只有2张手牌)
                  2手成牌概率 (1 - (39 * 38 / 46 / 47)) * 100% ——>>解释:39是47-8获取的, 38是46-8
                  3手成牌概率 8 / (46) * 100%

        5689 outs数就是4,1手成牌概率 不讨论(因为只有2张手牌)
                  2手成牌概率 (1 - (43 * 42 / 46 / 47)) * 100% ——>>解释:43是47-4获取的, 42是46-4
                  3手成牌概率 4 / (46) * 100%

  2:听同花 359J outs数就是9,  1手成牌概率 不讨论(因为只有2张手牌)
                  2手成牌概率 (1 - (38 * 37 / 46 / 47)) * 100% ——>>解释:38是47-9获取的, 37是46-9
                  3手成牌概率 9 / (46) * 100%

3:听同花顺 4567 outs数就是2,  1手成牌概率 不讨论(因为只有2张手牌)
                  2手成牌概率 (1 - (45 * 44 / 46 / 47)) * 100% ——>>解释:45是47-2获取的, 44是46-2
                  3手成牌概率 2 / (46) * 100%

      5689 outs数就是1,  1手成牌概率 不讨论(因为只有2张手牌)
                  2手成牌概率 (1 - (46 * 45 / 46 / 47)) * 100% ——>>解释:46是47-1获取的, 45是46-1
                  3手成牌概率 1 / (46) * 100%

4:听同花或顺子 4567 outs数就是15 1手成牌概率 不讨论(因为只有2张手牌)
                  2手成牌概率 (1 - (32 * 31 / 46 / 47)) * 100% ——>>解释:32是47-15获取的, 31是46-15
                  3手成牌概率 15 / (46) * 100%

5:听对子 3 outs数就是3。     1手成牌概率
                  2手成牌概率 (1 - (44 * 43 / 46 / 47)) * 100%
                  3手成牌概率 3 / (46) * 100%

6:听三条 33 outs数就是2。     1手成牌概率
                  2手成牌概率 (1 - (45 * 44 / 46 / 47)) * 100%
                  3手成牌概率 2 / (46) * 100%

7:听四条 333 outs数就是1。    1手成牌概率
                  2手成牌概率 (1 - (46 * 45 / 46 / 47)) * 100%
                  3手成牌概率 1 / (46) * 100%

6:听葫芦 332 outs数就是5      1手成牌概率
                  2手成牌概率 1:差两张 (1 - (43 * 42 / 46 / 47)) * 100% * (1 - (43 * 42 / 46 / 47)) * 100%
                        2:差一张 (1 - (43 * 42 / 46 / 47)) * 100%
                  3手成牌概率 1:差两张 0%
                        2:差一张 4 / (46) * 100%



3:德州扑克outs和成牌概率对照表 outs数 flop后未现张数 turn后未现张数 turn成牌概率 river成牌概率 turn+river成牌概率(不是加法)
1 47 46 2.1% 2.2% 4.3%
2 47 46 4.3% 4.3% 8.4%
3 47 46 6.4% 6.5% 12.5%
4 47 46 8.5% 8.7% 16.5%
5 47 46 10.6% 10.9% 20.4%
6 47 46 12.8% 13.0% 24.1%
7 47 46 14.9% 15.2% 27.8%
8 47 46 17.0% 17.4% 31.5%
9 47 46 19.1% 19.6% 35.0%
10 47 46 21.3% 21.7% 38.4%
11 47 46 23.4% 23.9% 41.7%
12 47 46 25.5% 26.1% 45.0%
13 47 46 27.7% 28.3% 48.1%
14 47 46 29.8% 30.4% 51.2%
15 47 46 31.9% 32.6% 54.1%



4:对其他玩家的outs数和成牌概率的计算和自己的算法一样,下边是对其他玩家的数据分析统计

1:比如自己的手牌数是 '3'和'A', 公共牌是'4','5','6','7','K'。那么对于别人牌型的估计
1:成顺子outs是7,需要去除自己手上的一张3。 成顺子的概率(1 - 38 * 37 / 45 / 44) * 100%

2: 成对子的概率 = 对方手中是对子的概率 + 成'44', '55', '66', '77', 'kk' 的概率 - 同时成两个以及以上的概率

对方手中是对子的概率,计算方法:从'A'到'K'一共13组牌,其中7组是3张,6组是4张
           2     2
成牌种类有 M = 7 * C + 6 * C
           3     4
         2
总共的总类 N = C
         45

所以对方手中是对子的概率A = M / N * 100%

            1
与公共牌成牌的概率B = C * (1 - 42 * 41 / 45 / 44)
            5

所以总的成对子的概率是 A + B

2:比如自己的手牌数是 '3'和'3', 公共牌是'4','5','6','7','K'。那么对于别人牌型的估计
1:成顺子outs是6,需要去除自己手上的两张3。 成顺子的概率(1 - 37 * 33 / 45 / 44) * 100%

2: 成对子的概率 = 对方手中是对子的概率 + 成'44', '55', '66', '77', 'kk' 的概率 - 同时成两个以及以上的概率

对方手中是对子的概率,计算方法:从'A'到'K'一共13组牌,其中7组是3张,6组是4张
          2      2    2
成牌种类有 M = 1 * C + 5 * C + 7 * C
          2     3     4
         2
总共的总类 N = C
         45

所以对方手中是对子的概率A = M / N * 100%

            1
与公共牌成牌的概率B = C * (1 - 42 * 41 / 45 / 44)
            5

所以总的成对子的概率是 A + B

3:通过上边的可以分析出自己手牌的不同是对结果分析有一些差别的,自己的手牌是对其他玩家的牌型分析有一定的影响结果。
有时候自己的手牌能够影响到对其他玩家成牌种类和成牌率的,实际情况远比举例子的复杂很多。

5:德州扑克弃牌,下注
1: 现在有3名玩家A,B,C,桌子内筹码6000,如果每一家的牌都差不多,那么2000以及一下就会下注,高于2000就会选择弃牌。
这时候假如一家选择弃牌,还有两家选择跟进,这时候桌子内的筹码就是10000,如果低于5000选择跟,大于5000选择放弃牌。

2: 选择弃牌还是下注,比如现在你能赢的概率是M(0<M<1),桌子内筹码N,如果需要筹码X>MN则弃牌,否则下注。

3: 例子 :假设现在只有2个人,桌子内筹码N,自己是跟注,还是弃牌,还是allin
自己手牌'K', '8'
对方手牌未知
公共牌是'6','6','7','9','Q'
不考虑对方加注等其他因数,单从概率上分析:
自己最大牌是'6','6','K','Q','9',为对子牌

计算对方能够大于自己的概率 P = P1 + P2
                2     2    2   2
P1 = 对方手牌是对子的概率 (1 * C + 5 * C + 7 * C ) / C
                2    3     4   45

P2 = 对方手牌是高牌 只考虑大于自己的 4 / 45 {有一张'A'} + 3 / 45 {有一张'K',因为自己有一张'K',所以上标是3} * 16 / 45{小于自己最小牌'8',但非7非6 }
+ 2 / 45 {有一张'6'} + 3 / 45 {有一张'7'} + 3 / 45 {有一张'9'} + 3 / 45 {有一张'Q'}

如果需要的筹码 M > N * (1 - P) 则弃牌,否则跟牌, 如果 P 小于某一个临界值就allin

如果有同花是需要考虑的,下边会有详细讨论

例子: 自己手牌'6', '6'
对方手牌未知
公共牌是'6','6','7','9','Q'

此种牌型,已经知道自己是金刚了
1:公共牌'6','7','9'如果不是一个花色 我们可以知道对方赢的概率P = 0
                                 2
2:公共牌'6','7','9'如果是一个花色 我们可以知道对方赢的概率P = 1 / C = 0.001
                                 45
3: 在P小于一个值的时候我们可以选择allin

4:实际情况远远比现在举的例子复杂的多,很多时候是有多个条件相互影响的,这种情况下就需要分清主要影响和次要影响,对于影响的可能性做一个优先级。
和人对战的时候还会参杂人的情绪等。

4: 在编写德州机器人的过程中不要想着每一局,你需要的是抓住10%左右的机会....

5: 后续...

6: 德州的资金管理机制
德州扑克的资金管理之所以那么重要,因为德州扑克除了各种知识、统计、打法等等可以学到的技术之外,最关键的心理部分,是来自人类对胜利的渴望,以及对财富得失的贪婪与恐惧。
1:对于德州来说底注的筹码远远少于在牌桌上赢的筹码,有时候你赢100次底注筹码,可能就在一次加注或者allin全部输完、
2:影响德州输赢是 分析+运气
3:做好筹码调整即时避免不必要的损失(在你想跟又不敢跟,想弃牌有不舍得的时候,一个冲动的决定就...)
4:对确定的牌型做好分析,根据确定的数据对不确定的做一些概率上的预测
5:资金管理是一个好的德州扑克机器人应该做的,没有一个良好的资金管

7: 现在德州中的数据基本都是理论值,与实际值可能相差较大,需要后续对数据的分析和优化。我们现在的德州机器人只完成了很小一部分,不过机器人的接口都是有预留的。

8: 一个好的德州机器人需要长时间的去维护改进,很多参数的值都是在不断的分析中去接近真值。让机器人像人一样思考,大家一起努力。。。
时间有限,文档整理大概只有30%左右。下边给一些文献,以方便查阅。

9:参考文献 https://sanwen8.cn/p/601Ct7J.html
http://www.poker90.com/3311.htm
http://www.poker90.com/731.htm
http://www.poker90.com/724.htm
http://www.poker90.com/717.htm
http://poker.sports.163.com/15/0504/15/AOPH4STU00050FOP.html
http://www.360doc.com/content/16/0229/18/31089460_538337596.shtml
http://www.cnblogs.com/ka200812/p/5852767.html
http://cowboyprogramming.com/2007/01/04/programming-poker-ai/


 

转载于:https://www.cnblogs.com/hailong88/p/6897813.html

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
德州扑克AI分析软件是一种专门设计用于分析德州扑克游戏的人工智能软件工具。它结合了先进的算法和机器学习技术,具备分析牌局和玩家决策的能力。 首先,德州扑克AI分析软件能够实时扫描并分析牌桌上的所有牌,并计算出每位玩家的牌型概率。它会根据手中的牌和牌桌上的公共牌,预测自己和其他玩家可能拥有的牌型,从而帮助玩家进行决策。 其次,该分析软件能够为玩家推荐最佳的策略。它会基于牌型概率和可能性,计算出不同决策的期望价值。例如,它会告诉玩家是否应该跟注、加注、弃牌或者全下。通过分析软件的建议,玩家可以更加准确地评估自己的牌手和对手的筹码状况,从而做出更明智的决策。 此外,德州扑克AI分析软件还可以通过学习玩家的行为模式来提升自己的性能。软件会记录并分析玩家的每一局游戏数据,包括筹码使用、下注大小和胜率等信息,以此来生成更准确的推荐策略。通过不断与玩家互动,软件能够逐渐优化自身的算法和决策能力。 总的来说,德州扑克AI分析软件具备了实时分析牌局和集成机器学习技术的能力,帮助玩家做出更明智的决策。它不仅可以提供牌型概率的计算,还能推荐最佳策略并通过学习玩家行为模式来提升自己的性能。这种软件对于德州扑克玩家提供了重要的辅助工具,使他们能够更好地分析游戏并制定优秀的决策策略。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值