智游城

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

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

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

  [复制链接]
51#
 楼主| Howard 发表于 2013-3-31 09:50:54 | 只看该作者
本帖最后由 Howard 于 2013-3-30 19:54 编辑
notch 发表于 2013-3-30 05:39
假设9人桌,hero持KQo在sb,有效筹码100bb
utg+2 limp,co call, btn call
因为前3位都是limper,所以把他 ...

这个问题问的很成功。因为这种preflop multiway,而且ton postplop play尚未开始,几乎一定是无法解决的。但是notch问问题的方式,让这个问题变得基本可以解决。

但也只是基本可以解决,还差一点点。因为我无法知道KQo如果BB check之后,EV到底能有多大,即使知道有效筹码深度100BB。这里还是要取决于对手的打法和自己的打法。

我能做到的,只能是假定BB当真check放hero进锅看翻牌之后,每人再投入9BB,直接发到河牌比大小。锅里50BB。

PQL语句如下:
select avg(case  when inRange(BB,'QQ+, AK')   
                 then -1

           else Equity(hero, river)*50-1           
           end) as Hero_Limp_EV
from game = 'holdem', hero='KxQy',
     UTG2='JJ-22, KxQx-5x4x, KxQy-6x5y, KxJx-6x4x, AxQy-Ax2y, AxJx-Ax2x, Kx9x, KxTx, KxTy',
     CO = 'JJ-22, KxQx-5x4x, KxQy-6x5y, KxJx-6x4x, AxQy-Ax2y, AxJx-Ax2x, Kx9x, KxTx, KxTy',
     BTN= 'JJ-22, KxQx-5x4x, KxQy-6x5y, KxJx-6x4x, AxQy-Ax2y, AxJx-Ax2x, Kx9x, KxTx, KxTy',
     BB = '**'

结果是+11.9BB (站在Hero limp preflop之前的角度。如果limp后BB加注,hero value为-1BB。)

但是这个结果肯定是过于乐观的,因为没考虑位置劣势,只是硬性比大小
52#
 楼主| Howard 发表于 2013-3-31 10:46:11 | 只看该作者
notch 发表于 2013-3-30 05:50
同上例中各人的牌面,hero持KQo在sb call,bb check,锅底5bb
hero在flop牌面出K或者Q,且没有A,没有三花 ...

这道题超出我的水平,到到目前为止我还无法用比较简便的方法计算。问题出在打到河牌的玩家数目不固定。现在我还不会处理这类的问题,也许PQL语言本身都不能处理。

只能解决其中一个分问题:flop牌面出K或者Q,且没有A,没有三花(这样子的board有多少?)

select count(BoardinRange('K[K-][K-]!(xxx), Q[Q-][Q-]!(xxx)')) as KQo_Fav_Flop_Odds

from game= 'holdem', hero='KxQy',
     UTG2='JJ-22, KxQx-5x4x, KxQy-6x5y, KxJx-6x4x, AxQy-Ax2y, AxJx-Ax2x, Kx9x, KxTx, KxTy',
     CO = 'JJ-22, KxQx-5x4x, KxQy-6x5y, KxJx-6x4x, AxQy-Ax2y, AxJx-Ax2x, Kx9x, KxTx, KxTy',
     BTN= 'JJ-22, KxQx-5x4x, KxQy-6x5y, KxJx-6x4x, AxQy-Ax2y, AxJx-Ax2x, Kx9x, KxTx, KxTy',
     BB = '**!(QQ+,AK)'


答案:27.64%
53#
 楼主| Howard 发表于 2013-3-31 12:24:28 | 只看该作者
再深算一步,在BB check后,现在5人进翻牌,翻牌对KQo很友好:最高为K或者Q,且不是三花。

此时,四个对手中平均有几个人的牌型比我们更好?我们是顶对,也就是说他们有overpair或两对/set
结果是0.26个

注意此结果仅包括牌型比我们好,没包括顶对但踢脚比我们好的。

select avg(  handsHaving( minFlopHandCategory, flopoverpair)
           ) as how_many_better_hands_on_goodflop

from game= 'holdem', hero='KxQy',
     UTG2='JJ-22, KxQx-5x4x, KxQy-6x5y, KxJx-6x4x, AxQy-Ax2y, AxJx-Ax2x, Kx9x, KxTx, KxTy',
     CO = 'JJ-22, KxQx-5x4x, KxQy-6x5y, KxJx-6x4x, AxQy-Ax2y, AxJx-Ax2x, Kx9x, KxTx, KxTy',
     BTN= 'JJ-22, KxQx-5x4x, KxQy-6x5y, KxJx-6x4x, AxQy-Ax2y, AxJx-Ax2x, Kx9x, KxTx, KxTy',
     BB = '**!(QQ+,AK)'
where BoardinRange('K[K-][K-]!(xxx), Q[Q-][Q-]!(xxx)')

结果:0.26
54#
 楼主| Howard 发表于 2013-3-31 13:00:20 | 只看该作者
本帖最后由 Howard 于 2013-4-1 09:02 编辑

老邓@dengxianqi曾经说(大意):老货,弃掉的死牌我们多少能得到一些信息。比如里面含A的可能性最低,含K的可能性次之,。。。含2的可能性最高。能否将这些信息计算入内?

这个问题我着实想了一阵。首先死牌不能定义weighted range,其次,给某个对手设置range之后再计算hero equity时,该对手默认是参加竞争的。搞了好一阵,才发现他的Hand vs Perceived Range Equity函数可以解决这一问题。

例如:5人桌,我们在小盲。枪口、CO、纽扣均弃牌。我们的牌是KQo,求我们对大盲的equity。
大盲还没看牌,所以他是any2;
三位弃牌者,假设他们弃掉的牌满足以下特征:
1. 所有对子均不弃牌
2. AX概率40%弃牌,KX (K带小,下同) 45%,QX 50%,JX 55%,TX 60%,9X 65%,8X 70%,7X以及更小 75%

那么我们对大盲的equity 语句如下:

select avg(  hvPerceivedRangeEquity(hero,river,'**')
           ) as Herosb_vs_BB
from game= 'holdem', hero='KxQy',
muck1='A[K-]@40, K[Q-]@45, Q[J-]@50, J[T-]@55, T[9-]@60, 9[8-]@65, 8[7-]@70, [7-][6-]!RN@75',
muck2='A[K-]@40, K[Q-]@45, Q[J-]@50, J[T-]@55, T[9-]@60, 9[8-]@65, 8[7-]@70, [7-][6-]!RN@75',
muck3='A[K-]@40, K[Q-]@45, Q[J-]@50, J[T-]@55, T[9-]@60, 9[8-]@65, 8[7-]@70, [7-][6-]!RN@75'

结果是61%

如果不考虑这三位弃牌者,那么我们对大盲的equity语句是:
select avg(equity(hero,river)            ) as Herosb_vs_BBfrom game= 'holdem', hero='KxQy', bb='**'
结果也是61%

此影响可谓小到足矣忽略不计。
55#
riverismyfriend 发表于 2013-3-31 15:31:33 | 只看该作者
我来问一个PLO的,AA22r在Th7d3s这个牌面面对对手的range为20%!AA,SPR到多少的时候bet/stack off的ev要小于bet/fold。 bet size = 0.5和0.75是否会有很大影响。假设对方jam or fold, never call。
56#
 楼主| Howard 发表于 2013-4-1 11:52:07 | 只看该作者
本帖最后由 Howard 于 2013-3-31 21:53 编辑
riverismyfriend 发表于 2013-3-31 01:31
我来问一个PLO的,AA22r在Th7d3s这个牌面面对对手的range为20%!AA,SPR到多少的时候bet/stack off的ev要小 ...

这个问题我个人非常喜欢,谢谢river是朋友提出这样一个对我胃口的问题。它稍微有点复杂,先计算一个简单版本的。

假设:
1. 有效筹码SPR=1,也就是说剩余1个potsize bet
2. 对手把我们定位于AA但他不知道我们另外两张牌,他会精确地选择最佳玩法(他领先或odds够则call,不够则弃牌)
3. 设翻牌前的pot为单位1。

则Hero在翻牌全进的EV计算为:
select
  avg(case when HvPerceivedRangeEquity(Villain,flop,'AA!AAA') < 0.3333
               then 1
               else riverEquity(Hero)*(1+1+1) -1
               end) as Hero_EV
from
  game='omahahi',
  board='Th7d3s',
  Hero='AwAx2y2z',
  Villain='20%!AA'

计算结果是0.82


57#
riverismyfriend 发表于 2013-4-1 14:45:18 | 只看该作者
诸位帮我检查一下算术

EV(bet/jam) vs EV(bet/fold)

pot size = 1
remaining stack = SPR
equity vs jamming range = e
jamming frequency = J
cbet size = b

EV(bet/jam) = EV(allin) + EV(takedown)
                  =EV(allin and win) + EV(allin and lose) + EV(take down)
                  =(2xspr+1) * e * J - spr* (1-e) * J + (1-J)

EV(bet/fold) = EV(b/f) + EV(takedown)
                   = -bs * J + (1-J)
58#
notch 发表于 2013-4-1 15:40:50 | 只看该作者
Howard 发表于 2013-3-31 09:50
这个问题问的很成功。因为这种preflop multiway,而且ton postplop play尚未开始,几乎一定是无法解决的。 ...

else Equity(hero, river)*50-1   
为啥后面只是-1,如果大家再投入9bb,那么应该是-10吧?
59#
notch 发表于 2013-4-1 16:02:52 | 只看该作者
Howard 发表于 2013-3-31 10:46
这道题超出我的水平,到到目前为止我还无法用比较简便的方法计算。问题出在打到河牌的玩家数目不固定。现 ...

谢谢howard的计算
27.64%的概率不算小了

按照我之前的定义,那么(1-27.64%)=72.36%的概率会弃牌 ev = -0.5bb*72%

剩下的27.64%概率下 sb全进100bb
如果对手没好牌,那么会弃牌,从后面howard的计算来看74%的可能拿到5bb的锅,那么收益是4.5bb*74%

接下来要计算当有人有机会(26%)拿到好牌以后我们的胜率是多少
估计这个值会很低,顶对只有面对两对的时候还有3~5张的out
面对顺子,set,几乎是drawing dead
假设平均5%?
5%*205bb-100.5bb=-90bb,总的26%*(-90bb)

综合上述三个结果,总的ev=-20bb

意味着面对四人,sb中flop以后在100bb深度下,无法无脑推
计算下来的结果是13bb深度下,sb可以无脑推,这个时候spr=2.6,是非常低的

计算的目的是看KQo这样的牌,在sb位置下确定没有被dominate的情况下能否补齐
结论是很难打,除非你是一个很浅的筹码深度 <13bb

有效的做法可能是raise,减少对手
或者fold,远离危险
60#
 楼主| Howard 发表于 2013-4-1 22:13:48 | 只看该作者
本帖最后由 Howard 于 2013-4-1 08:15 编辑
riverismyfriend 发表于 2013-4-1 00:45
诸位帮我检查一下算术

EV(bet/jam) vs EV(bet/fold)

EV(bet/jam) = EV(allin) + EV(takedown)
                  =EV(allin and win) + EV(allin and lose) + EV(take down)
                  =(2xspr+1) * e * J - spr* (1-e) * J + (1-J)

上式的红色部分有点小问题。第一项是计算基础是whole pot(2spr+1),第二项是自己要输的部分spr,二者不能直接相加。

可以把第一项改成自己要赢的部分也就是spr+1,spr表示对手的剩余筹码,1表示preflop锅底。改后的公式为:
(spr+1) * e * J - spr* (1-e) * J + (1-J)

或者把红字部分采用 (new pot) * equity - (cost of bet) 方法来计算,这也是我习惯的办法:
J * [(2spr+1) * e  - spr] + (1-J)

两种方法结果一致。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|智游城论坛

GMT+8, 2024-12-25 10:21 , Processed in 0.046154 second(s), 7 queries , Redis On.

Powered by Discuz! X3.2

© 2001-2012 Comsenz Inc.

返回顶部