斗地主,国民大众游戏,老少皆宜。。我编不下去了

下面进入正题,玩过腾讯的欢乐斗地主单机版吧,里面的机器人那是相当厉害,我严重怀疑这个机器人作弊,然而,也不可否认腾讯的强大,说不定人家有有整套机器人智能算法,再加上深度学习嘛的,机器人不智能也不可能。要做斗地主游戏,下面是我目前写的一套机器人算法逻辑。

斗地主AI机器人算法

上面是机器人出牌的基本思路

AI出牌思路分析:

  • 手牌分析。首先拿到一手牌先要分析这手牌怎样打出去,要几手出完,这就要对手牌分析了,分析出最佳的牌型组合。斗地主的牌型有一下几种:单张,对子,三张,单顺,双顺(连对),三顺,炸弹,王炸​​​​​​
  • 确定牌型之后就要找出最佳牌型,使得手牌数最少,以及手牌价值最大(手牌价值可暂时不考虑)

(一)炸弹为主

第一步:找出所有的炸弹

第二步:找出所有的最可能多的单顺

第三步:找出所有的三顺

第四步:找出所有的双顺

第五步:找出所有的三张

第六步:找出所有的对子

第七步:剩余的都是单牌

(二)单顺为主(分拆不拆炸弹两种)

第一步:找出所有的最可能多的单顺

第二步:找出所有的炸弹

第三步:找出所有的三顺

第四步:找出所有的双顺

第五步:找出所有的三张

第六步:找出所有的对子

第七步:剩余的都是单牌

(三)双顺为主(分拆不拆炸弹两种)

第一步:找出所有的炸弹

第二步:找出所有的双顺

第三步:找出所有的最可能多的单顺

第四步:找出所有的三顺

第五步:找出所有的三张

第六步:找出所有的对子

第七步:剩余的都是单牌

(四)三顺为主(一般为了尽快出完,可以拆炸弹)

第一步:找出所有的三顺

第二步:找出所有的炸弹

第三步:找出所有的最可能多的单顺

第四步:找出所有的双顺

第五步:找出所有的三张

第六步:找出所有的对子

第七步:剩余的都是单牌

手牌数 = 炸弹数 + 单顺数 + 双顺数 + 三顺数 + 三张数 + 对子数 + 单牌 - 三张数 - 三顺中的三张数

找出最少的手牌数并且手牌价值最大(假设手牌数加一,手牌价值减小某一个固定的值,手牌价值可暂不考虑)

 

 

 

 

 

相关文章: