智游城

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: Howard
打印 上一主题 下一主题

专门回答各类扑克概率问题

  [复制链接]
151#
同花顺 发表于 2013-6-25 04:12:17 | 只看该作者
本帖最后由 同花顺 于 2013-6-24 14:35 编辑

149楼这么多数据,看来现场只能概算

152#
老陈 发表于 2013-6-25 04:31:51 | 只看该作者
149楼提到,在Z等于1时,破产概率为:
P(N)=M/(M+N)
推导过程如下:
借用137楼的中间结果
P(N)=(1-P(1))(Z^N-Z^(N+M))/(1-Z)    (1)
1=(1-P(1))(1-Z^(N+M))/(1-Z)            (2)

(1)式除以(2)式得:
P(N)=(Z^N-Z^(N+M))/(1-Z^(N+M))
这是一个0/0的算式,应该没有意义,但我们可以把Z看成变量,这个变量无限趋近于1,求P(N)的极限得:
P(N)=M/(M+N)
(求极限可以用分别对分子和分母对Z分别求导数,然后把Z=1代入)
153#
mousoeng 发表于 2013-6-26 12:54:59 | 只看该作者
一个简易的问题...

主角手持AK,对手范围分别是霍氏可玩指数1.4以上在20BB/50BB/100BB/150BB/200BB,

1)分别有多少概率在翻牌上会是主角的顶对顶脚遇见对手的暗三?
2)分别有多少概率在翻牌上会是主角的顶对顶脚期望值(包括对手的成牌/强听牌)落后?
154#
 楼主| Howard 发表于 2013-6-26 23:04:18 | 只看该作者
这个问题可不简易,工作量还是挺大的,主要麻烦是要把霍式可玩指数1.4以上的找出来

20BB:  99+, A9s+, KTs+, QTs+, JTs,                                                            ATo+,KTo+, QTo+
占总底牌数14.2%

50BB:    TT+, A4s+, K9s+, QTs+, JTs,                                                            A9o,  KTo+, QJo,
占总底牌数15.5%

100BB:  88+, ATs+, KTs+, Q9s+, J8s+, T8s+, 97s+, 87s,  76s,  65s,   54s,           AQo+,KQo   
占总底牌数12.2%
   
150BB:22+, A2s+, K9s+, Q8s+, J8s+, T7s+, 97s+, 86s+, 75s+, 64s+, 54s,         AKo,                   JTo
占总底牌数18.3%

200BB:22+, A2s+, K2s+, Q7s+, J7s+, T6s+, 96s+, 86s+, 75s+, 64s+, 53s+, 43s, AKo,  KJo+, QTo+, JTo
占总底牌数25.8%

500BB:  22+, A2s+, K2s+, Q2s+, J2s+, T6s+, 95s+, 85s+, 74s+, 64s+, 53s+, 43s, AJo,  KJo+,  QTo+, JTo
占总底牌数31.5%


我觉得楼上是想问自己AK,已经翻牌TPTK的情况下,对手有set or better的概率。

20BB:3.4%
  1. select count(minFlopHandCategory(PLAYER_2,FLOPSET)) /* How often PLAYER_2 flop hand category at least set */
  2. from game='holdem', syntax='Generic',
  3.      PLAYER_1='AK',
  4.      PLAYER_2='AA-99,AxKx-Ax9x,AxKy-AxTy,KxQx-KxTx,KxQy-KxTy,QxJx,QxTx,QxJy,QxTy,JxTx'
  5. where exactFlopHandCategory(PLAYER_1,FLOPTOPPAIR) /* PLAYER_1 flop hand category is toppair */
复制代码
50BB:2.9%
  1. select count(minFlopHandCategory(PLAYER_2,FLOPSET)) /* How often PLAYER_2 flop hand category at least set */ as COUNT1
  2. from game='holdem', syntax='Generic',
  3.      PLAYER_1='AK',
  4.      PLAYER_2='AA-TT,AxKx-Ax4x,AxKy-Ax9y,KxQx-Kx9x,KxQy-KxTy,QxJx,QxTx,QxJy,JxTx'
  5. where exactFlopHandCategory(PLAYER_1,FLOPTOPPAIR) /* PLAYER_1 flop hand category is toppair */
复制代码
100BB:4.1%
  1. select count(minFlopHandCategory(PLAYER_2,FLOPSET)) /* How often PLAYER_2 flop hand category at least set */ as COUNT1
  2. from game='holdem', syntax='Generic',
  3.      PLAYER_1='AK',
  4.      PLAYER_2='AA-88,AxKx-AxTx,AxKy,AxQy,KxQx-KxTx,KxQy,QxJx-Qx9x,JxTx-Jx8x,Tx9x,Tx8x,9x8x,9x7x,8x7x,7x6x,6x5x,5x4x'
  5. where exactFlopHandCategory(PLAYER_1,FLOPTOPPAIR) /* PLAYER_1 flop hand category is toppair */
复制代码
150BB:4.4%
  1. select count(minFlopHandCategory(PLAYER_2,FLOPSET)) /* How often PLAYER_2 flop hand category at least set */ as COUNT1
  2. from game='holdem', syntax='Generic',
  3.      PLAYER_1='AK',
  4.      PLAYER_2='AA-22,AxKx-Ax2x,AxKy,KxQx-Kx9x,QxJx-Qx8x,JxTx-Jx8x,JxTy,Tx9x-Tx7x,9x8x,9x7x,8x7x,8x6x,7x6x,7x5x,6x5x,6x4x,5x4x'
  5. where exactFlopHandCategory(PLAYER_1,FLOPTOPPAIR) /* PLAYER_1 flop hand category is toppair */
复制代码
200BB: 3.4%
  1. select count(minFlopHandCategory(PLAYER_2,FLOPSET)) /* How often PLAYER_2 flop hand category at least set */ as COUNT1
  2. from game='holdem', syntax='Generic',
  3.      PLAYER_1='AK',
  4.      PLAYER_2='AA-22,AxKx-Ax2x,AxKy,KxQx-Kx2x,KxQy,KxJy,QxJx-Qx7x,QxJy,QxTy,JxTx-Jx7x,JxTy,Tx9x-Tx6x,9x8x-9x6x,8x7x,8x6x,7x6x,7x5x,6x5x,6x4x,5x4x,5x3x,4x3x'
  5. where exactFlopHandCategory(PLAYER_1,FLOPTOPPAIR) /* PLAYER_1 flop hand category is toppair */
复制代码
500BB: 3.0%
  1. select count(minFlopHandCategory(PLAYER_2,FLOPSET)) /* How often PLAYER_2 flop hand category at least set */ as COUNT1
  2. from game='holdem', syntax='Generic',
  3.      PLAYER_1='AK',
  4.      PLAYER_2='AA-22,AxKx-Ax2x,AxKy-AxJy,KxQx-Kx2x,KxQy,KxJy,QxJx-Qx2x,QxJy,QxTy,JxTx-Jx2x,JxTy,Tx9x-Tx6x,9x8x-9x5x,8x7x-8x5x,7x6x-7x4x,6x5x,6x4x,5x4x,5x3x,4x3x'
  5. where exactFlopHandCategory(PLAYER_1,FLOPTOPPAIR) /* PLAYER_1 flop hand category is toppair */
复制代码


可见对手翻牌出set or better,并不是随着筹码增加而单调增加。其原因在于,筹码越深,对手翻牌出draw增多。深筹码对抗AK不止需要set,也需要大量的draw牌
155#
 楼主| Howard 发表于 2013-6-26 23:22:46 | 只看该作者
接楼上,好像筹码深了也没多出来多少听牌。

20BB-500BB下,给定如下条件:
1. 我们手持AK,翻牌出顶对顶踢
2. 对手range是该筹码深度下可玩指数大于1.4的牌

则对手翻牌有听牌(flush draw,4-8 out straightdraw)的概率:

20BB:21.2%
50BB:19.5%
100BB:20.7%
150BB:17.8%
200BB:19.2%
500BB: 19.1%

不再一一列举PQL,仅贴上500BB的:
  1. select count(fourFlush(PLAYER_2,flop) or outsToHandType(PLAYER_2, flop, STRAIGHT)>=4 ) /* How often PLAYER_2 flop str8 draw or flush draw */ as COUNT1
  2. from game='holdem', syntax='Generic',
  3.      PLAYER_1='AK',
  4.      PLAYER_2='AA-22,AxKx-Ax2x,AxKy-AxJy,KxQx-Kx2x,KxQy,KxJy,QxJx-Qx2x,QxJy,QxTy,JxTx-Jx2x,JxTy,Tx9x-Tx6x,9x8x-9x5x,8x7x-8x5x,7x6x-7x4x,6x5x,6x4x,5x4x,5x3x,4x3x'
  5. where exactFlopHandCategory(PLAYER_1,FLOPTOPPAIR) /* PLAYER_1 flop hand category is toppair */
复制代码
156#
mousoeng 发表于 2013-6-26 23:57:18 来自手机 | 只看该作者
本帖最后由 mousoeng 于 2013-6-26 23:59 编辑

看来我还是没把提问讲很清楚...

给定主角是AK包括同花和不同花,翻牌有A或K,主角得到了顶对顶脚...

而对手的底牌是因应深度不同的范围,翻牌可能会得到:

1)请问仅仅只暗三的概率。因如牌面干燥如K83r,或成花或顺如7s8s9s,顶对顶脚要逃脱的机会还是有,牌面K83有听花或K87彩虹,甚至Kx5s4s,很可能主角会打得较激进,暗三就是最大的威胁...

2)请问强成牌的两对以上,或是半成半听的一对加听花,或是强听牌的花顺兼听等一切对手的期望值领先的概率。面对这些牌主角或者遥遥落后,或者稍微落后,尤其是后两种,给定牌面和深度,是很容易双方在翻牌血战的情况,比如对手持7d6d,在Ks4d5d的牌面,主角的AcKh在翻牌虽然是成牌,其实是以45:55落后的...
157#
Jsli 发表于 2013-6-27 12:29:24 来自手机 | 只看该作者
霍师糊帮算算看
翻前56/89一类小同花分别进3人锅,4人锅,5人锅
翻牌后遇到大同花概率

1是溜进
2是有人4bb加注
筹码100bb
158#
 楼主| Howard 发表于 2013-6-27 22:51:34 | 只看该作者
Jsli 发表于 2013-6-26 22:29
霍师糊帮算算看
翻前56/89一类小同花分别进3人锅,4人锅,5人锅
翻牌后遇到大同花概率

谢谢老李提问。有一句稍微有点歧义,“翻牌后遇到大同花的概率”,意思是Hero翻牌就中了同花吗?还是河牌前中了同花?先按照后一种理解,也就是河牌前Hero中花。

先列一下已知条件:
1. Hero 是56同花,假设56黑桃
2. Hero 的河牌牌型是同花。

求:遇到大同花的概率


3人锅溜进,假设另外2人 range 为随机牌。
  1. select count(handshaving(exactHandType,river,flush) >= 2) /* How often at least 2 players 5-card hand type is a flush by the river */ as COUNT1
  2. from game='holdem', syntax='Generic',
  3.      PLAYER_1='6s5s',
  4.      PLAYER_2='*',
  5.      PLAYER_3='*'
  6. where exactHandType(PLAYER_1,river,flush) /* PLAYER_1 5-card hand type is a flush by the river */
复制代码
计算结果为12.3%。真实结果应该比12.3%略小,因为这里面没有排除更小的flush。可能在11.8%左右吧。

我觉得这个结果意义不大,因为它包括了公牌有4-flush 和5-flush的情况,而那些情况相信不是老李的关注对象,应该是公牌面exactly 3-flush。不知我的理解对否。
159#
Jsli 发表于 2013-6-28 04:44:12 | 只看该作者
Howard 发表于 2013-6-27 22:51
谢谢老李提问。有一句稍微有点歧义,“翻牌后遇到大同花的概率”,意思是Hero翻牌就中了同花吗?还是河牌 ...

从问问题的准确程度与严密性就能看出一个牌手的水平
老霍真是服了

1.河牌前中同花.
2.公牌面三同花.

小同花超过10%概率遇上大同花还是有指导意义的.
就是小同花是不是最好3人锅以下才进锅?
超过3人以上的小同花要弃牌,除非目的是进锅瓜顺.

因为翻牌后
一旦公牌面出现两同花.
一旦有3人不顾死活开打

小同花瓜牌就瓜ing死了
160#
 楼主| Howard 发表于 2013-6-28 06:29:19 | 只看该作者
Jsli 发表于 2013-6-27 14:44
从问问题的准确程度与严密性就能看出一个牌手的水平
老霍真是服了

我好好想了想,觉得还是举特定的例子比较容易说明问题。

比如,公牌面上A K 9 X Y,其中X和Y不是黑桃,也没有公对。此时Hero的6 5 输的概率也就是撞上大flush的概率,因为当且仅当对手是大flush时Hero才输。(黑桃出现在flop仅为方便起见,跟顺序无关)

其他条件:3人桌,Hero 6s5s,另两人随机牌。
  1. sselect count(winsHi(PLAYER_1)) /* How often PLAYER_1 win hi */ as COUNT1
  2. from game='holdem', syntax='Generic',
  3.      board='{AsKs9sxy}',
  4.      PLAYER_1='6s5s',
  5.      PLAYER_2='*',
  6.      PLAYER_3='*'
复制代码
结果是Hero胜出 95.0%,所以撞上大flush概率是5%


如果是9人桌,另外8人随机牌,Hero赢率80.8%,撞大flush概率是19.2%
  1. select count(winsHi(PLAYER_1)) /* How often PLAYER_1 win hi */ as COUNT1
  2. from game='holdem', syntax='Generic',
  3.      board='{AsKs9sxy}',
  4.      PLAYER_1='6s5s',
  5.      PLAYER_2='*',
  6.      PLAYER_3='*',
  7.      PLAYER_4='*',
  8.      PLAYER_5='*',
  9.      PLAYER_6='*',
  10.      PLAYER_7='*',
  11.      PLAYER_8='*',
  12.      PLAYER_9='*'
复制代码
如果4人锅,一个对手top 20%,另外两个5%-30%, 5-30%  (模仿9人桌,有人raise 4bb,两人跟入),Hero赢率93.2%,所以撞大flush概率6.8%
  1. select count(winsHi(PLAYER_1)) /* How often PLAYER_1 win hi */ as COUNT1
  2. from game='holdem', syntax='Generic',
  3.      board='{AsKs9sxy}',
  4.      PLAYER_1='6s5s',
  5.      PLAYER_2='20%',
  6.      PLAYER_3='5%-30%',
  7.      PLAYER_4='5%-30%'
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|智游城论坛

GMT+8, 2024-11-20 23:32 , Processed in 0.145955 second(s), 7 queries , Redis On.

Powered by Discuz! X3.2

© 2001-2012 Comsenz Inc.

返回顶部