推对子有没有高科技?

晁嘉罄晁嘉罄最佳答案最佳答案

我是做游戏开发的,我们以前开发一个类似的游戏的时候遇到这种问题。 首先肯定是不能用最原始的手段去计算概率的,因为只要数据量足够大,那么任何方法都会变成概率算法,最终无法实现最优解(其实也就是不可能算出最可能出来的对子)。所以当时我们的办法是,把各种打法的收益都列出来然后算出期望值,最后通过模拟的方式让机器自己去试。这个就是所谓的“穷举”,当然这个“穷举”也不是真正的把所有情况都列举出来,而只是抽取了其中一部分(用到了蒙特卡罗的方法)。

不过后来我们发现一种更高级的办法,就是用深度学习去预测对手的下一句牌。原理也很简单,就是把所有的牌局都记录下来然后输入到深度学习中让计算机去学习,最后输出的是每一手牌的可能性(或者是每打出一手牌的概率)。这样最后就不需要再去枚举每一手的打法然后计算其收益了,直接根据概率去执行最佳策略即可。

当然这仍然是一种基于数值分析的方法,需要大量的样本数据进行训练。而且我认为这种方法只能用在类似牌九这类有公平性问题但又不至于太严重的游戏中,如果赌注不大可以无视这一点。如果是麻将这样的话,就必须进行额外的处理来避免作弊的可能(比如让两个人分别持牌打几圈然后交换牌据再进行计算)。

事实上现在有一些手机软件就采用了这样的方法去给用户推荐下一把应该打的牌,只不过没有经过太多优化而已(据说这些软件都是基于同一套源码改过来的,也就是说只改变了部分参数而已)。

我来回答
请发表正能量的言论,文明评论!