智游城
标题: 德州扑克要素之三十:牌力排名 [打印本页]
作者: Howard 时间: 2016-10-26 21:57
标题: 德州扑克要素之三十:牌力排名
-----本文已发表于2015年4月版《扑士》杂志--------
-----转载请注明作者:Howard 智游城-----
任何扑克初学者,在第一次学习德州时,都要先学习牌型的大小:皇家同花顺最大;葫芦比同花大;同花又比顺子大;一对很小仅仅高过Acehigh。这本身没错,但是德州扑克是一个公共牌游戏,公共牌面的成分会极大得影响到最终牌型的分布。如果忽视公共牌面,仅以绝对牌型来决定牌力,就很可能会判断失误。
比如,初学者爱说的一句话是:“我有某某某牌型,实在扔不掉!”在只有一个公对的牌面,比如K8744,葫芦很厉害;然而,有三条的牌面,比如KKK87,手里拿着55形成的葫芦,已经差出好几条街了。
还有人喜欢用“第几坚果”来表达牌的大小。比如,在K8732无花牌面上,第一坚果是暗三K,第二坚果就是暗三8,第三坚果就是暗三7。有第二坚果和第三坚果,一般是很大的牌,但这条也不能拿来就用,比如在Q9742四红桃的牌面上,有红桃K虽然是第二坚果,但这个第二坚果可不算特别结实。在KQJT3无花的牌面上,9X是第二坚果,这个第二坚果就差得更远了。
可见,用牌型、第几坚果来给表述一手牌的牌力,是不准确的。有没有更准确的方法?有,那就是直接按照“牌力”的定义,用它能打败的牌和它不能打败的牌的数量来表述,也就是说,我们可以把一手牌进行“排名”。
要表述清楚这个排名,要有一点排列组合的知识。写这篇文之前,我已经下定决心要让基本没有数学基础的朋友们也能看懂,所以你不必害怕,我担心的就是自己有没有这个本事。
一副牌总共有52张。发完河牌5张公共牌面后,加上自己手里两张底牌,一共就是7张。那么,对手手里的牌绝无可能在从这7张里面出,只能从剩下的52-7=45张里面出。
45张牌里面取两张,第一张可以随便取,有45种可能性。第二张可以在剩下的44张里面取,有44种可能性。两者相乘,得到45×44 =1980。
但是这种算法有重复,因为两张牌的顺序是无关的。比如第一张红桃A第二张黑桃K,跟第一张黑桃K第二张红桃A完全一样。每一把起手牌都这样重复了两次,所以我们要把结果除以2,得到1980/2= 990。
所以,45张牌里面凑出一副起手牌,一共有990种可能。这个计算过程我们可以简单表示为C(45,2)= 990. 其中C表示choose。
注意这是针对河牌5张牌出来之后的情况。如果是发flop之前,那么我们仅仅看到了2张牌,还有50张没有看到,对手所有牌的组合是50×49/2 =1225种,或C(50,2)= 1225。这种情况暂时不表。
知道对手起手牌的所有可能组合之后,要想知道自己的牌力,只需数一数看比自己的牌更好的有多少组合即可。比如,在K8732无花牌面上,我们手持88;则对手只有KK才比我们大,然而KK一共有三种可能的组合,这时因为我们已经看到一个K(在公牌上),还有三个没有看到的K。这三个K里面挑出两个来,用我们刚才的组合符号表示,就是C(3,2)= 3。那么我们的88,就排在第四名,也就是排名4/990。
再比如,Q9742四红桃的牌面上,我们拿着两红桃的K5,所谓“第二坚果”。那么,对手有红桃A则比我们大,无红桃A则比我们小。如果他有A,那他另外一张牌随意。我们已经见到7张,再加上他手里的一张红桃A,另一张牌的选择可以有52-7-1=44张,所以他一共有44个组合含红桃A,所以我们的K5红桃排名第45名,也就是45/990。
注意990这个数字跟1000非常接近,为了方便起见,也可以用1000来代替,这样可以把排名折算成百分数。4/990就是大约0.4%,45/990就是4.5%。
最不结实的第二坚果,要算那种仅需要一张特定rank的牌就能做成坚果的情况。比如KQJT3无花面,有A无论花色,都是坚果。这样的话,如果我们起手牌是97s也就是“第二坚果”,那么对手第一张牌需要一张A,有4种选择;第二张牌是任何牌都可以,有44种选择,一共就有4×44=176种组合。但是且慢,这176种当中有几个重复计数,也就是两张都是A的情况。第一张是红桃A,第二张是方片A;以及第一张是方片A,第二张是红桃A,这是同一个起手牌却被统计了两次。所以要减去所有重复的AA。AA共有C(4,2)= 6种,所以最终的坚果数目是176-6= 170种。我们用97s做成的K高顺子是排名第171位的,按百分比算大概是第17%。
上述坚果数目也可以这么算。第一张取任何一个A,有4种选择;第二张取不是A的任意一张牌,共有48张非A牌,我们看到了7张,还有41张,所以第二张有41种选择。两者相乘,就得到有且仅有一张A的所有组合4×41 =164种。再加上6个AA,一共就是170种。
当一个所谓的第二坚果,有时候排名0.1%,有时候排名到了17%的时候,我们可以知道,不是所有的第二坚果都性质一样的,他们的差距可是太大了。
不仅仅第二坚果,事实上任意一手牌我们都可以按照这个办法算出它的排名。很多时候我们有顶对,牌面有点湿滑但也不算太恐怖,这是个很常见的情况,我们来看看这时候牌力能排多少。比如这个公牌面:QsTs9d6d 2s。我们的底牌是KcQc,牌力排名如何?
这个公牌面上,同花是最好的牌。所有的同花有多少呢?总共有13张黑桃,公牌上有3张,我们手里没有,也就是说还剩余13-3= 10张。这10张里面,随便挑出两张来都是同花,总共有C(10,2) = 45个。如果要展开的话,就是第一张黑桃10种选择,第二张9种,然而多算了一倍要处以2,10×9/2 =45。这里可以把这个结果记住:三同花面总共有45个同花底牌组合。
算完同花,第二大的是顺子。在这个牌面,KJ、J8、87都能做成顺子。我们占了一张K,还剩3张K,J则还剩4个,总共3×4 = 12个KJ。但是别忘了,KdJd算作同花我们已经统计过了,刨去它,总共11个KJ顺子。4个J和4个8一共组成16个J8组合,减去Jd8d已经算作同花,共有15个。87也是有15个组合。所有的顺子加起来,共有11+15+15= 41个组合。
顺子完了是所有的暗三,暗三Q只剩下唯一的一个组合,因为我们占了一张Q。暗三T、9、6和2各有3个组合,C(3,2)= 3。总共有1+ 4×3=13个组合。
暗三完了是两对。带Q的两对,比如Q9,每手有6个组合,算法是2个Q乘以3个9;不带Q的两对,比如T9,每手有9个组合,算法是3个T乘以3个9。带Q的两对有4个,不带Q的两对有6个,总共两对组合数是4×6 + 6×9 = 78个。
暗三和两对加起来就是13+78 = 91个。
暗三和两对,也可以这么统计:Q、T、9、6、2这五个点数的牌,所有花色共有20张。我们已经看到了6张(牌面5张加我们手里一张),还有14张。只要对手的牌在这14张里面,那他肯定不是暗三就是两对,一共有C(14,2)= 14×13/2= 91个。与上面的计算吻合。
91这个数字可以单独记住,因为很常用。“河牌上我们只做成一对时,对手暗三和两对共有91个组合。”
然后我们必须要在暗三两对里排除同花和顺子。顺子是不可能的,因为没有额外的点数牌出来。在三同花牌面,暗三也不可能是同花;但是两对有可能同时是同花,也就是9s6s这一手牌。减去这一个“伪两对”,剩下的暗三两对个数为90。
牌力再往下走,就是超对。AA有C(4,2)= 6个组合,KK有C(3,2)= 3 个组合,一共9个。这9个里面,不可能有同花、顺子、暗三和两对,所以不同排除。
超对再往下,却仍然比KQ要强的,是顶对顶踢脚AQ。4个A乘以两个Q,共有8个可能的AQ组合。这些AQ,没有做成同花、顺子、暗三、两对、超对的可能性,因此也不用排除。注意如果公牌面的Q不是三同花之一,那么就有一个AQ同时也是同花,要排除。
到此为止,我们已经统计了所有比KQ更好的牌。这些全部加起来,是:
45 + 41 + 90 + 9 + 8 = 193
对手所有990手牌,有193手比KQ要好,KQ的排名是194/990,大约19.6%。
可见,这个不怎么样的顶对次踢,其牌力堪比KQJT3无花面的第二坚果。
最为结束语,有必要说明一下,这里的牌力排名,跟所有其他信息一样,只能对如何打这手牌起到数据输入的作用。其他的信息,比如这手牌的发展历程、对手马脚、对手风格等等,都是不可忽视的。决策过程要综合考虑各种信息,同样面对对手的河牌potsizebet,top1%的牌可能扔掉,top30%的牌也可能拿来跟注。
作者: 990122851 时间: 2016-10-26 22:19
顶顶,霍师付就是好。问下您打德扑圈吗,感觉打不过丫。
作者: 990122851 时间: 2016-10-26 22:42
我打德扑圈最低级,都深筹码,追牌的人多,还常追到,小三又用不了,各种松凶,无从下手,头痛。
作者: hummel_l 时间: 2016-10-27 10:56
同感,等回复
作者: 捕顺捉花 时间: 2016-10-27 20:29
受教
作者: 4space 时间: 2016-11-1 07:56
数学牌力组合计算浅显易懂,顶下
作者: 修道 时间: 2016-11-1 09:59
赞霍爷,通俗易懂,编程的人有福了!
作者: Howard 时间: 2016-11-1 22:20
德扑圈我也打,经常被各种badbeat搞到怀疑人生,这还不算各种卡,卡奇诺,卡尔波夫,卡斯帕罗夫,卡萨布兰卡。
但是看到记账软件的真实数据,我只能说,还是得靠数据说话,否则我肯定认为全德扑圈的人联合起来耍我一个。
作者: kyleluyao 时间: 2016-11-8 16:47
先赞一下Howard的帖子,非常用心,帖子里阐述的理论貌似懂的人很多(包括我自己),但能总结出来写出来的我想没几个人(不包括我自己)
顺便在请教楼主个问题,如果在flop或turn 如何做到牌力的排序呢,因为有很多draw牌的因素改变了当前牌力的绝对值,这里的变化如何考虑呢,恳请Howard赐教
作者: Howard 时间: 2016-11-8 23:12
谢谢捧场。flop/turn的排名,一直是个大难题,关键就是听牌。很难把找到一个完善的系统,把听牌混合进成牌。
但你这问题的时机也巧了。哥最近恰好想到一个方式,可以完成此任务。
这方法就是:针对某公牌面,计算某一起手牌对随机牌的equity,然后再根据此equity排名。
举例说明:
1. 公牌面J 9 2 。采用"hot or cold",A K会排在Q T的前面,这跟我们心里对这两手牌的期望值严重不符。
采用对随机牌equity方式,
A K vs Any2 = 51.4%
Q T vs Any2 = 72.8%
显然Q T排在前面,而且遥遥领先。
2. 牌面越干燥,这种排名的结果跟"hot or cold"就越接近。世界上最干燥的翻牌是2 2 2
在这个面,48个2X组合都排在最前面的top 4.1% (总组合数是 49 choose 2 = 1176。48/1176 = 4.1%)
排名第49-54的是6个AA;
排名第55-60的是6个KK;
....
A-K排名在第121-136名,大约是top 10%,列于33之后,AQ之前。
...
3-4是最后的16名。bottom 1%
-----------------------------------------------
这种方式不但能解决听牌vs成牌的排名问题,还有更大的意义,因为一切都排好名,计算机就能发挥作用计算GTO了。
这是后话,暂时不表。
其实用这种排名方式,楼主贴里的河牌排名也可以包含进来,只不过它是特例而已。因为河牌没有听牌,所有的都是成牌。牌力和equity成完全的线性关系。这话怎么讲?
这话意思是,top 5%的牌力,对随机牌的equity就是严格的95%。top 25%的牌,equity就是75%。top 100%也就是nut low,它的equity是0。
回头看看J 9 2牌面,即使top 1%的当前坚果J J,其equity也只不过93.2%而已。当然,equity不是100%不妨碍它当老大。
现在问题就来了,把所有底牌的equity按照排名给做一个图表,是否有意义?答案是非常有意义,这也是后话,暂时不表
作者: 990122851 时间: 2016-11-10 09:54
这个有意义,打成牌好,还是打听牌好一直纠结
作者: gaosi 时间: 2016-11-10 12:30
看得我好爽 谢谢!
作者: kyleluyao 时间: 2016-11-10 14:52
感谢Howard老师这么详细的回复,非常感动,万分崇拜
言归正传,Howard老师提出的用equity算牌例排名的方法小弟之前也有想到过(不要脸的马后炮),但毕竟水平有限,考虑的也没有Howard老师那么深刻,所以心中对这个方法总是充满了困惑,质疑和不确定性,直到Howard老师回复小弟后才有种拨开云雾见明月的赶觉,明确了这个思路方向的正确性。有高人指点确实能少走很多弯路。
既然Howard老师提到了这个排名对计算GTO的作用,我又想后着脸皮和Howard老师再深入请教下,用equity这个方法等于把牌力在flop或turn进行了完美的量化,但我比较困惑的是单一的量化排序运用到GTO上还是有一些因素没考虑进去(也有可能是我自己没想明白),我来举例说明下我的想法:
Hero JJ
1. FLOP J62 VsRandomEquity=97.15%
2. FLOP JT6 VsRandomEquity=92.17%
Hero 在两种flop的牌型上同样都是第一名的牌力,但由于第二种flop牌型有flushdraw和straightdraw的组合,hero的牌力并没有第一种flop那么安全,这个因素在很多情况影响了hero最后的决策,比如hero在第二种flop上没有位置的情况下slowplay可能就不是一个好选择,但换到第一种flop就看起来问题不大。 再简单的说就是两手牌除了flop三张牌有区别,其他变量都完全一致(人数,potsize,有效筹码,对手范围,bettingsize等等),Hero拿着Top1的牌力,可最终的决策却有可能不一样。 所以在这里单一的牌力排名貌似没能完全解决问题。 我个人感觉应该需要另外一个数值才能解决。 比如同样都是topOne的牌力,还需要考虑下equity的数值, 但具体如何考虑我也不情况
最后希望Howard老师能看懂我写的乱七八糟的问题, 如果是太小白的问题请放心的打击我
作者: Howard 时间: 2016-11-11 01:40
您老师。
这个排名,对计算GTO有作用,但确实不能只用它来计算,equity本身大小也肯定是考虑因素。除了你说的JJ在J-high的干面和湿面的考虑不同之外,其他的情况也会不同。比如AA在KKK面虽然equity高达94.4%,排名也是top 5%,但却不适合套牢spr 10以上,原因就是对方一旦有K自己就死,而有K的概率大概只小到可以套牢spr 6以下。99在987面,虽然equity只有84.5%,排名也在5%,二者排名相仿,equity这个还不如前者,却可以放心打进去spr 15。要计算GTO需要使用的数据太多,可以说排名、equity都只是一小部分,虽然是很重要的部分。
作者: 吹牛无罪 时间: 2016-11-11 07:44
请问霍师傅,这个spr 6 和spr 15 是怎么算出来的?
作者: Howard 时间: 2016-11-11 23:57
这不是计算出来的,就是纯凭经验估计了一下子。别较真啊,较真我带200个会算GTO的去你家吃饭。
作者: 吹牛无罪 时间: 2016-11-12 02:00
本帖最后由 吹牛无罪 于 2016-11-12 02:16 编辑
嗯,理由是不是:
例1,KKK,我方持AA,敌人一旦愿意跟我们拼命,他手里有K的概率极大,而我们约等于兆死,
例2,987,我方持99,敌人愿意跟我们拼命,他手里可能有各种两对三条兆牌,即使他们有天顺,我们仍然可能反兆出葫芦来?这个理由使得spr大到15的地步,我还是有点意外的。
可能我这里低级别的对手们可能偏老实,不是天顺不拼命。
作者: kyleluyao 时间: 2016-11-12 17:03
Howard老师说的太有道理了,这个GTO计算太复杂了。 我也读过Bill Chen和Jerrod Ankenman 的 The Mathematics of poker。 但书里面的计算理论貌似也只是解决了部分问题, 比如要假设牌力值在flop到river是没有变化的才能完美计算。 这里要更进一步了解学习 Howard老师有什么建议吗??
作者: Howard 时间: 2016-11-12 17:36
kyleluyao 发表于 2016-11-12 03:03
Howard老师说的太有道理了,这个GTO计算太复杂了。 我也读过Bill Chen和Jerrod Ankenman 的 The Mathemat ...
推荐一本书 Expert Heads Up No Limit Hold'em, Volume1: Optimal and Exploitative Strategies by Will Tipton.
虽然全书只涉及单挑的GTO,但是我们都明白,单挑gto尚未解决 直接弄三人以上gto的都是耍流氓
这是我看到的关于GTO最实用的一本书,比bill chen的学院味少一点
作者: kyleluyao 时间: 2016-11-12 18:08
哈哈,和 Howard老师交流总是有收货, 我这去找找看,再次感谢,以后要多多关注老师的帖子
作者: 修道 时间: 2016-12-16 23:24
为何不见了奥马哈牌力排名这篇帖子呢?
作者: an son 105 时间: 2017-1-4 19:59
Howard 发表于 2016-11-1 22:20
德扑圈我也打,经常被各种badbeat搞到怀疑人生,这还不算各种卡,卡奇诺,卡尔波夫,卡斯帕罗夫,卡萨布 ...
请问霍师父用什么记账软件?求名字
作者: Howard 时间: 2017-1-5 01:39
本帖最后由 Howard 于 2017-1-4 11:41 编辑
你这是逼着我给陈爷做广告啊
老陈独立开发的记账软件,Monopoly (formerly Poker Manager)
中文名:大富翁扑克记账软件
我刚在app store搜索"monopoly poker",排结果第三个。
其实我觉得这俩名字都不好,到不了搜索第一名的名字都不是好名字。陈爷是软件高手和数学天才,但是市场这方面咱有一说一,差点意思。
作者: xin_yan 时间: 2017-1-5 12:31
纯随机的算法是不是有些不太准确呢?
是不是要考虑有些完全不可能在范围里的牌的比例呀?
。。。人的大脑算这个好复杂。要是可以有程序自动算就好了。。。背,我也背下来了
欢迎光临 智游城 (http://zhiyoucheng.co/) |
Powered by Discuz! X3.2 |