(斗地主人工智能.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(斗地主人工智能

?? “人工智能”(Artificial Intelligence)简称AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能研究如何用计算机去模拟、延伸和扩展人的智能;如何把计算机用得更聪明;如何设计和建造具有高智能水平的计算机应用系统;如何设计和制造更聪明的计算机以及智能水平更高的智能计算机等 出牌手数:在假设别人都不要并且满足出牌规则的情况下,最多几次能把所有的牌出完,这几次就叫做出牌手数,你可千万别理解成这个手术哟。 首先我们可以将地主AI算法分成2部分来讨论。 今天我们来讨论第一部分: ? 拆牌 拆牌是地主AI中比较重要的一部分,拆牌的好坏直接影响着地主AI算法的高效问题。 我们首先还是上一张图片,这样比较直观,有利于我们以后的讨论。 为每一种牌型定义权值的大小: 单张?????????????????????????? ?? 1 对子??????????????????????????? ? 2 三带??????????????????????????? ? 3 连牌?????????????????????????? ?? 4? (每多一张牌权值+1) 连对????????????????????????? ??? 5(每多一对牌,权值+2) 飞机????????????????????????? ? ?6(每对以飞机,权值在基础上+3) 炸弹??????????????????????????? ?7(包括对王在内)? ? 看到这副牌,我们先按照人的正常思路来拆牌看是怎么样的。 QQQ?? 222 AA? 小鬼 6,4 我们现在就来讨论一种方案,看最终能达到这样的拆牌方案吗? 我们把拆牌的过程分几个步骤来讨论。 第一步:找牌 定义对应的牌型vector vectorthree //3条 vectorlianzi //连子 vectorduizi//对子 vectordanzhang //单张 vectorfly //飞机 ? ???????首先?找出一副牌中只能组成一种牌型的牌(3条,对子,单张为一种牌型。)意思就是有一张牌和剩余牌中的任何一张牌没有联系。当然是否和剩余的牌有联系是需要定义一个规则的:是否和剩余的牌能组成连子,连队。如果这2个条件都不满足那么我们称这张牌和剩余的牌没有任何联系。一般情况下通过这个步骤就能找出几张牌,这样能为以后的拆牌减轻任务量。 ? 比如上面我们就能找出:小鬼,2,A,接下来找出牌值和他们一样的牌。即小鬼,222,AA,剩下的牌就是:QQQJ1098766544,可能有人会问为什么没有找出QQQ了,这是因为Q除了能组成3条,对子以外,还能和剩余的牌组合成连牌。这里找出来是对子最终的拆牌方案中就为对子,是连3条就是3条。3条对单张 于是有了我们接下来的结论。 vectorthree 222 vectorduizi AA vectordanzhang? 小鬼 ? 接下来我们就来拆分剩余的牌:QQQJ1098766544 找出牌中所有的炸弹 找出牌中所有的3个 找出牌中所有的对子 根据剩余的牌我们首先提出? QQQ??????????????66??? 44 ? 我们这里可以定义对应的vector来存入我们临时找出的牌,注意里定义的vector和上面的vector是不一样的。 vectorthree QQQ vectortwo66,44 第二步:计算每一种牌的手数和权值问题(拆牌中的难点) 分几种情况来讨论,每次只找出剩余牌中的5张连牌,然后拿这5张连牌和剩余牌依次拼接看能否组合成更长的连牌 提出牌之后,剩余的全部牌全部看做为单牌,不管是炸弹,3条,还是对子。 1 在剩余牌中提出QQQ ,J1098766544? 首先找出5张单牌,从最小还是最大由你来决定。我们这里就以最小来讨论。 第一次:45678? 剩余牌为 4 6 9 10 J 第二次? 46 最后拆出来的2组牌都没有联系,拆牌结束。 方案为???????4?? 6? ?QQQ 对应的权值和手数:7+1+1+3?=12?????? 3(因为3个可以带一张或者是1对,当有对子和单张张的时候手数要减去1) 以下的几种方案也是同样的步骤,我就不写过程了,直接写最终的方案。 2在剩余牌中提出 QQQ 66? 方案为: QQQ 66?? 78910j?? 5?? 44 ?对应的权值和手数:? 3+2+4+1+2=12??????????? 4 ? 3.在剩余牌中提出 QQQ 44 方案为: QQQ?? 44? 678910j??? 6 对应的权值和手数:3+2+5+1?=11?????????????3 ? 4 .在剩余

文档评论(0)

saity3 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档