发明内容
基于此,本发明的目的是提出一种基于摸牌模式下的智能决策方法、系统、存储介质及计算机设备,以解决上述至少一种问题。
根据本发明提出的基于摸牌模式下的智能决策方法,应用于计算机设备,所述方法包括:
获取麻将胡牌规则,并根据所述麻将胡牌规则对当前手牌信息进行分析,以得到搭子牌组合、对子牌组合以及废牌集合;
以所述搭子牌和所述对子牌所需的有效牌作为摸牌结点进行递归扩展,以建立胡牌组合树;
遍历所述胡牌组合树以获取当前手牌信息对应的多条胡牌路径,并记录每条胡牌路径对应的出牌信息,所述废牌集合包括所述出牌信息;
分别获取每条胡牌路径下各个节点对应的摸牌信息,并计算出各个节点对应的摸牌信息的摸牌概率和摸牌权重;
获取每条胡牌路径的胡牌得分,并根据每条胡牌路径的胡牌得分、每条胡牌路径下各个节点对应的摸牌信息的摸牌概率和摸牌权重综合计算出所述出牌信息的期望值,选取最大期望值对应的出牌信息进行出牌决策。
综上,根据上述的基于摸牌模式下的智能决策方法,通过只保留摸牌的启发式信息搜索方式,使得搜索的深度降低一半,极大地提高了出牌决策的计算速度。具体为,首先获取麻将胡牌规则,并根据胡牌规则将获取到的手牌信息进行分析,以得到搭子牌组合和对子牌组合,仅以搭子牌和对子牌所需的有效牌作为摸牌结点,以迅速扩展出多条胡牌路径,并记录下每条胡牌路径对应的出牌信息,该出牌信息均出自于废牌集合,再获取每条胡牌路径下对应的摸牌信息的摸牌概率和摸牌权重,同时根据每条胡牌路径的胡牌得分、每条胡牌路径下各个节点对应的摸牌信息的摸牌概率和摸牌权重综合计算出所述出牌信息的期望值,以确定出牌决策,无需耗费大量的计算资源,在响应速度方面具有更加明显的优势,同时对摸牌概率和胡牌得分进行全面评估,具备了快速胡牌以及得分高的优点。
进一步地,所述获取麻将胡牌规则,并根据所述麻将胡牌规则对当前手牌信息进行分析,以得到搭子牌组合、对子牌组合以及废牌集合的步骤包括:
获取手牌信息,并对所述手牌信息进行拆分和组合,以得到多种手牌组合,所述手牌组合包括所有可能出现的刻子组合、顺子组合、搭子组合、对子组合以及无用牌组合;
获取每种手牌组合对应的向听数,并根据预设积分表获取每种手牌组合的当前总积分数,所述预设积分表由刻子组合、顺子组合、搭子组合、对子组合及各种组合对应的积分构成;
根据向听数以及总积分数对应的预设权重比计算每种手牌组合对应的组合分数,并选取其中最高组合分数对应的手牌组合作为目标手牌组合,将所述目标手牌组合按照麻将胡牌规则进行分析。
进一步地,所述摸牌概率的计算公式为:
其中,Movaluei表示胡牌路径下第i张摸牌信息的摸牌概率,Ni表示第i张摸牌前所述摸牌信息对应的剩余牌数,reamainnum表示总剩余牌数;
所述总剩余牌数的计算公式为:
remainnum=134-Ndiscards-Nop-Nhandscards
其中,reamainnum表示总剩余牌数,Ndiscards表示为四个玩家出牌的总张数,Nop表示四个玩家的副露包含的张数,Nhandscards自己的手牌数。
进一步地,胡牌路径下摸牌信息的摸牌权重的计算公式为:
其中,takeingvalue表示胡牌路径下摸牌信息的摸牌权重值,Movaluei表示胡牌路径下第i张摸牌信息的摸牌概率,takeingweighti表示第i张摸牌信息的获取权重, awardi表示第i张摸牌信息对应的奖励;
第i张摸牌信息对应的奖励的计算公式为:
其中,i的值为1~9,表示万、条、筒的牌值,a1、a2、a3分别表示不同的牌值对应的奖励;
摸牌信息的获取权重的计算公式为:
takingweight=2+G1+G2+G3+bias
其中,其中Gz表示所述有效牌从玩家z手中获取的概率,可获取记为2,不可获取记为0,其中z∈{1,2,3},bais表示校准偏差值。
进一步地,所述胡牌得分的计算公式为:
Pathvalue=takingvalue×fanscore
其中,Pathvalue表示胡牌路径对应的胡牌得分,takeingvalue表示胡牌路径下摸牌信息的摸牌权重值,fanscore表示胡牌路径包含的所有牌型得分总和;
胡牌路径包含的所有牌型得分总和的计算公式为:
其中,fanscore表示胡牌路径包含的所有牌型得分总和,fanscore表示胡牌路径下第i中牌型对应的番型得分。
进一步地,所述出牌信息的期望值的计算公式为:
其中,discardvalue表示出牌信息的期望值,Pathvaluei表示胡牌路径下出第i 张摸牌信息对应的胡牌得分;
从所有的出牌信息对应的期望值中筛选出最大的期望值作为目标期望值,并将所述目标期望值对应的出牌信息作为最佳出牌,以根据所述最佳出牌进行出牌决策;
获取目标期望值的计算公式为:
Optiamldiscard=max(discardsvalue)
其中,Optiamldiscard表示目标期望值,discardvalue表示出牌信息的期望值。
进一步地,所述以所述搭子牌和所述对子牌所需的有效牌作为摸牌结点进行递归扩展,以建立胡牌组合树的步骤还包括:
依次选取搭子组合和对子组合,并将搭子组合和对子组合对应的有效牌加入到摸牌集合中;
若搭子组合和对子组合均为空,则从剩余牌中逐次选取,并将选取的剩余牌对应的相邻牌加入到摸牌集合中,得到最终摸牌集合,并根据最终摸牌集合构建胡牌组合树。
根据本发明实施例的一种基于摸牌模式下的智能决策系统,应用于计算机设备,所述基于摸牌模式下的智能决策系统包括:
手牌分析模块,用于获取麻将胡牌规则,并根据所述麻将胡牌规则对当前手牌信息进行分析,以得到搭子牌组合、对子牌组合以及废牌集合;
摸牌扩展模块,用于以所述搭子牌和所述对子牌所需的有效牌作为摸牌结点进行递归扩展,以建立胡牌组合树;
出牌信息获取模块,用于遍历所述胡牌组合树以获取当前手牌信息对应的多条胡牌路径,并记录每条胡牌路径对应的出牌信息,所述废牌集合包括所述出牌信息;
摸牌信息分析模块,用于分别获取每条胡牌路径下各个节点对应的摸牌信息,并计算出各个节点对应的摸牌信息的摸牌概率和摸牌权重;
出牌决策模块,用于获取每条胡牌路径的胡牌得分,并根据每条胡牌路径的胡牌得分、每条胡牌路径下各个节点对应的摸牌信息的摸牌概率和摸牌权重综合计算出所述出牌信息的期望值,选取最大期望值对应的出牌信息进行出牌决策。
本发明另一方面还提供一种存储介质,所述存储介质存储一个或多个程序,该程序被执行时实现如上述的基于摸牌模式下的智能决策方法。
本发明另一方面还提供一种计算机设备,所述计算机设备包括存储器和处理器,其中:
所述存储器用于存放计算机程序;
所述处理器用于执行所述存储器上所存放的计算机程序时,实现如上述的基于摸牌模式下的智能决策方法。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实施例了解到。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的若干实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
需要说明的是,当元件被称为“固设于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
请参阅图1,所示为本发明基于摸牌模式下的智能决策方法的流程图,应用于计算机设备,该方法包括步骤S01至步骤S05,其中:
步骤S01:获取麻将胡牌规则,并根据所述麻将胡牌规则对当前手牌信息进行分析,以得到搭子牌组合、对子牌组合以及废牌集合;
需要说明的是,由于各个地区的文化差异,每个地方都有独立的麻将玩法,基于此,首先需要获取所属区域的新型麻将运营平台对应的胡牌规则,在该麻将胡牌规则下,计算机设备对获取到的手牌信息进行针对性的分析,以得到刻子牌组合(AAA型)、顺子牌组合(ABC型)、搭子牌组合(AB型)、对子牌组合(AA型),其他不能参与组合的单牌统一归入到废牌集合中。
步骤S02:以所述搭子牌和所述对子牌所需的有效牌作为摸牌结点进行递归扩展,以建立胡牌组合树;
需要说明的是,在麻将游戏中,唯一的目的就是胡牌,因此计算机设备进行扩展时只需要知道当前手牌需要哪些牌可以让手牌胡牌,对涉及到的有效牌进行扩展,有效牌即为所需要的牌。当手牌信息达到胡牌条件时,牌的数量大于14张,将没有参与到手牌胡牌组合中的牌放入到废牌集合中,而废牌集合中的牌即设定为最优先级出牌顺序,搭子牌和对子牌设定为二级有用牌,并作为次级出牌顺序,刻子牌和顺子牌设定为一级有用牌,作为最低级出牌顺序,从而再考虑胡牌目的的同时兼顾了麻将游戏中的出牌策略,而后通过对路径的评估可以得出最佳的出牌,具体为:
请参阅图2,所示为本实施例中构建的胡牌组合数示例图,图2左边的胡牌组合树是同时考虑了摸牌和出牌的搜索方案,该方案由于涉及到的树状节点更多,搜索工作更为繁琐,导致需要大量的计算资源和计算时间,基于此,本实施例采用图2右侧的搜索方式,该新型搜索方式只进行摸牌的搜索策略,搜索树的层数减少一半,搜索树的复杂度相应减少,对应的状态节点数呈指数下降。
具体地,如图2右侧的组合树所示,在手牌信息为【1万、2万、4万、8 万、8万】的情况下,基于手牌分析,得到12搭子组合、24搭子组合,88对子组合,由于12搭子组合和24搭子组合存在相同手牌,因此需要将相同的手牌合并以及移除,得到124搭子组合和88对子组合,从而得到当前手牌信息对应的有效牌为3万和8万,在有效牌为8万的情况下,进一步扩展得到下一结点还有三种摸牌方式,分别为1万、2万、4万,如此不断扩展,直至最后扩展到胡牌模式时停止,从而最终得到每条胡牌路径下分别对应的各种出牌信息。
步骤S03:遍历所述胡牌组合树以获取当前手牌信息对应的多条胡牌路径,并记录每条胡牌路径对应的出牌信息,所述废牌集合包括所述出牌信息;
需要说明的是,胡牌组合数各个摸牌节点的扩展是根据手牌信息中的搭子、对子对应的有效牌来进行扩展,以减少向听数直至胡牌为目的,而非无规则的随机扩展。在扩展的过程中将所有的胡牌可能都遍历到,同时可以对无效的摸牌进行剪枝。
进一步地,基于只考虑摸牌模式下构建的胡牌组合树,其下每条胡牌路径下对应的出牌信息均对应废牌集合中的一张或多张牌,以保证最佳出牌策略。
步骤S04:分别获取每条胡牌路径下各个节点对应的摸牌信息,并计算出各个节点对应的摸牌信息的摸牌概率和摸牌权重;
在本步骤中,所述摸牌概率的计算公式为:
其中,Movaluei表示胡牌路径下第i张摸牌信息的摸牌概率,Ni表示第i张摸牌前所述摸牌信息对应的剩余牌数,reamainnum表示总剩余牌数;
所述总剩余牌数的计算公式为:
remainnum=134-Ndiscards-Nop-Nhandscards
其中,reamainnum表示总剩余牌数,Ndiscards表示为四个玩家出牌的总张数, Nop表示四个玩家的副露包含的张数,Nhandscards自己的手牌数;
还需说明的是,摸牌概率的计算方式为从当前玩家的视角能够获取的信息计算的所摸牌剩余牌数、以及总的剩余牌数相除。由于胡牌路径下摸牌信息对应的剩余牌Ni可能会包含在对手的手牌中,这也是模拟真实玩家所能获取的信息,摸牌信息对应的剩余牌数的计算公式为:
Ni=4-n1-n2-n3
其中n1为四个玩家的弃牌中所包含Ni的张数,n2为四个玩家的副露中所包含Ni的张数,n3为自己的手牌中所包含Ni的张数。
进一步地,胡牌路径下摸牌信息的摸牌权重的计算公式为:
其中,takeingvalue表示胡牌路径下摸牌信息的摸牌权重值,Movaluei表示胡牌路径下第i张摸牌信息的摸牌概率,takeingweighti表示第i张摸牌信息的获取权重, awardi表示第i张摸牌信息对应的奖励;
需要说明的是,由于每张摸牌信息的获取权重根据不同的组合赋予不同的权值,例如对子转刻子、搭子转顺子,孤张扩展定将等情况均需对应不同的权值,同时在实际麻将玩法中,每张牌对应的奖励值也会有差异,例如1,9万奖励值和3,7万奖励值不一样,基于此,第i张摸牌信息对应的奖励的计算公式为:
其中,i的值为1~9,表示万、条、筒的牌值,a1、a2、a3分别表示不同的牌值对应的奖励;
摸牌信息的获取权重的计算公式为:
takingweight=2+G1+G2+G3+bias
其中,其中Gz表示所述有效牌从玩家z手中获取的概率,可获取记为2,不可获取记为0,其中z∈{1,2,3},bais表示校准偏差值。
步骤S05:获取每条胡牌路径的胡牌得分,并根据每条胡牌路径的胡牌得分、每条胡牌路径下各个节点对应的摸牌信息的摸牌概率和摸牌权重综合计算出所述出牌信息的期望值,选取最大期望值对应的出牌信息进行出牌决策。
需要说明的是,在本实施例中,基于全牌型的搜索对每条搜索路径需要计算其番型得分,每条胡牌路径可能有叠加的得分牌型,因此需要对所有的牌型都进行搜索计算,例如在七对中可能会包含清一色、一条龙。因此在计算胡牌得分的时候需要将胡牌路径所有包含的牌型都考虑到,所述胡牌得分的计算公式为:
Pathvalue=takingvalue×fanscore
其中,Pathvalue表示胡牌路径对应的胡牌得分,takeingvalue表示胡牌路径下摸牌信息的摸牌权重值,fanscore表示胡牌路径包含的所有牌型得分总和;
胡牌路径包含的所有牌型得分总和的计算公式为:
其中,fanscore表示胡牌路径包含的所有牌型得分总和,fanscore表示胡牌路径下第i中牌型对应的番型得分。
所述出牌信息的期望值的计算公式为:
其中,discardvalue表示出牌信息的期望值,Pathvaluei表示胡牌路径下出第i 张摸牌信息对应的胡牌得分;
在进行最后的出牌决策前,还需从所有的出牌信息对应的期望值中筛选出最大的期望值作为目标期望值,并将所述目标期望值对应的出牌信息作为最佳出牌,以根据所述最佳出牌进行出牌决策,其中获取目标期望值的计算公式为:
Optiamldiscard=max(discardsvalue)
其中,Optiamldiscard表示目标期望值,discardvalue表示出牌信息的期望值。
综上,根据上述的基于摸牌模式下的智能决策方法,通过只保留摸牌的启发式信息搜索方式,使得搜索的深度降低一半,极大地提高了出牌决策的计算速度。具体为,首先获取麻将胡牌规则,并根据胡牌规则将获取到的手牌信息进行分析,以得到搭子牌组合和对子牌组合,仅以搭子牌和对子牌所需的有效牌作为摸牌结点,以迅速扩展出多条胡牌路径,并记录下每条胡牌路径对应的出牌信息,该出牌信息均出自于废牌集合,再获取每条胡牌路径下对应的摸牌信息的摸牌概率和摸牌权重,同时根据每条胡牌路径的胡牌得分、每条胡牌路径下各个节点对应的摸牌信息的摸牌概率和摸牌权重综合计算出所述出牌信息的期望值,以确定出牌决策,无需耗费大量的计算资源,在响应速度方面具有更加明显的优势,同时对摸牌概率和胡牌得分进行全面评估,具备了快速胡牌以及得分高的优点。
请参阅图3,所示为本发明第二实施例中的基于摸牌模式下的智能决策方法,应用于计算机设备,该方法包括步骤S11至步骤S18,其中:
步骤S11:获取手牌信息,并对所述手牌信息进行拆分和组合,以得到多种手牌组合,所述手牌组合包括所有可能出现的刻子组合、顺子组合、搭子组合、对子组合以及无用牌组合;
可以理解的,刻子表示3张完全相同的组合牌,例如(4w,4w,4w);顺子表示3张序数依次递增的组合牌,例如(3w,4w,5w);对子表示2张完全相同的牌,例如(4w,4w);搭子包括AB型和AC型,表示2张序数相连或间隔一张的组合牌,向听数表示距离胡牌的最小缺牌数,胡牌的基本元素由面子和搭子组成,计算机设备进行拓展的组合信息如下:
组合1:[[[刻子集合1],[顺子集合1],[搭子集合1],[向听数1],[剩余牌1]]
组合2:[[刻子集合2],[顺子集合2],[搭子集合2],[向听数2],[剩余牌2]],
…
组合n:[[刻子集合n],[顺子集合n],[搭子集合n],[向听数n],[剩余牌n]]]。
步骤S12:获取每种手牌组合对应的向听数,并根据预设积分表获取每种手牌组合的当前总积分数,所述预设积分表由刻子组合、顺子组合、搭子组合、对子组合及各种组合对应的积分构成;
需要说明的是,虽然麻将游戏的最终目的是为了胡牌,但由于刻子组合一般比顺子组合的获取概率更低,基于此,一般情况下,刻子或对子较多的手牌对应的胡牌得分会比顺子牌较多的手牌对应的胡牌得分更高,因此,计算机设备在对手牌进行拆分组合的过程中,除了需要尽可能的减少向听数,还需要尽可能保证胡牌得分更高。因此,在本实施例中,预先会创建一份预设积分表存入计算机设备中,该预设积分表包括刻子组合、顺子组合、搭子组合、对子组合及各种组合对应的积分,一般情况下积分情况由高到低依次为:刻子组合、顺子组合、搭子组合、对子组合。
步骤S13:根据向听数以及总积分数对应的预设权重比计算每种手牌组合对应的组合分数,并选取其中最高组合分数对应的手牌组合作为目标手牌组合,将所述目标手牌组合按照麻将胡牌规则进行分析。
在本步骤中,计算机设备在选定手牌组合的过程中通过综合考虑向听数和各种组合可能对应的胡牌积分,在保证尽可能减少向听数的情况下又能保持较高胡牌得分,从而获取到对手牌信息进行拆分组合下所有涉及到的手牌组合的组合分数,再从中选取最高组合分数对应的手牌组合作为目标手牌组合,即完成对手牌信息的分析。
具体地,由于各个地区对应的麻将胡牌规则存在差异,而组合积分由于与麻将胡牌规则息息相关,麻将平台维护者可根据具体的使用情况创建预设积分表,因此在本实施例中不对预设积分表和预设权重作详细限定说明。
步骤S14:依次选取搭子组合和对子组合,并将搭子组合和对子组合对应的有效牌加入到摸牌集合中;
步骤S15:若搭子组合和对子组合均为空,则从剩余牌中逐次选取,并将选取的剩余牌对应的相邻牌加入到摸牌集合中,得到最终摸牌集合,并根据最终摸牌集合构建胡牌组合树。
需要说明的是,在构建胡牌组合树的过程中,由于仅考虑摸牌模式,胡牌组合树的各个摸牌节点对应的摸牌信息均出自摸牌集合,该摸牌集合中包含的所有有效牌一般是通过搭子组合构成顺子组合、或者对子组合构成刻子组合缺少的牌组成,若目标手牌组合中不存在搭子组合或者对子组合时,则表示当前手牌信息存在大量的孤张,此时需要将每一张孤张对应的相邻牌加入到摸牌集合中,以得到最终的摸牌集合,为构建胡牌组合树提供可能,需要说明的是,孤张B对应的相邻牌包括A牌、B牌以及C牌,即相同的孤张牌也看做相邻牌。
步骤S16:遍历所述胡牌组合树以获取当前手牌信息对应的多条胡牌路径,并记录每条胡牌路径对应的出牌信息,所述废牌集合包括所述出牌信息;
步骤S17:分别获取每条胡牌路径下各个节点对应的摸牌信息,并计算出各个节点对应的摸牌信息的摸牌概率和摸牌权重;
步骤S18:获取每条胡牌路径的胡牌得分,并根据每条胡牌路径的胡牌得分、每条胡牌路径下各个节点对应的摸牌信息的摸牌概率和摸牌权重综合计算出所述出牌信息的期望值,选取最大期望值对应的出牌信息进行出牌决策。
与现有技术相比,本实施例中提出的基于摸牌模式下的智能决策方法具有如下优点:
(1)本方案采用的是只保留摸牌的启发式信息搜索模式,搜索的深度降低一半,同时根据麻将游戏的特定规则构建的胡牌组合树,能够将大量无效的搜索路径去除,降低搜索树的复杂度,提高搜索的精准度,同时耗费的计算资源会大幅度的减少,在出牌响应速度方面具有更加明显的优势。
(2)本方案是基于摸牌模式的启发式信息搜索,不需要大量的高水平玩家用户数据进行训练,同时也不需要耗费大量的资源和时间对模型进行训练,能够在较短的时间内完成一套麻将智能决策系统并且取得较高的决策水平,对于游戏公司刚上线的麻将游戏,在没有足够多的用户数据的情况下,通过本方案也能够获得高水平的麻将智能决策系统,具有更好的普适性。
(3)本方案通过对手牌信息进行摸牌概率、摸牌权重以及胡牌得分三个方面进行全面评估,在具有更高胜率的同时能够获得更多的胡牌得分。
请参阅图3,所示为本发明第三实施例中的基于摸牌模式下的智能决策系统,应用于计算机设备,该系统包括:
手牌分析模块10,用于获取麻将胡牌规则,并根据所述麻将胡牌规则对当前手牌信息进行分析,以得到搭子牌组合、对子牌组合以及废牌集合;
进一步地,所述手牌分析模块10还包括:
拆分组合单元,用于获取手牌信息,并对所述手牌信息进行拆分和组合,以得到多种手牌组合,所述手牌组合包括所有可能出现的刻子组合、顺子组合、搭子组合、对子组合以及无用牌组合;
手牌组合评估单元,用于获取每种手牌组合对应的向听数,并根据预设积分表获取每种手牌组合的当前总积分数,所述预设积分表由刻子组合、顺子组合、搭子组合、对子组合及各种组合对应的积分构成;
目标手牌获取单元,用于根据向听数以及总积分数对应的预设权重比计算每种手牌组合对应的组合分数,并选取其中最高组合分数对应的手牌组合作为目标手牌组合,将所述目标手牌组合按照麻将胡牌规则进行分析。
摸牌扩展模块20,用于以所述搭子牌和所述对子牌所需的有效牌作为摸牌结点进行递归扩展,以建立胡牌组合树;
进一步地,所述摸牌扩展模块20还包括:
第一选取单元,用于依次选取搭子组合和对子组合,并将搭子组合和对子组合对应的有效牌加入到摸牌集合中;
第二选取单元,用于若搭子组合和对子组合均为空,则从剩余牌中逐次选取,并将选取的剩余牌对应的相邻牌加入到摸牌集合中,得到最终摸牌集合,并根据最终摸牌集合构建胡牌组合树。
出牌信息获取模块30,用于遍历所述胡牌组合树以获取当前手牌信息对应的多条胡牌路径,并记录每条胡牌路径对应的出牌信息,所述废牌集合包括所述出牌信息;
摸牌信息分析模块40,用于分别获取每条胡牌路径下各个节点对应的摸牌信息,并计算出各个节点对应的摸牌信息的摸牌概率和摸牌权重;
出牌决策模块50,用于获取每条胡牌路径的胡牌得分,并根据每条胡牌路径的胡牌得分、每条胡牌路径下各个节点对应的摸牌信息的摸牌概率和摸牌权重综合计算出所述出牌信息的期望值,选取最大期望值对应的出牌信息进行出牌决策。
进一步地,在一些可选的实施例中,所述摸牌概率的计算公式为:
其中,Movaluei表示胡牌路径下第i张摸牌信息的摸牌概率,Ni表示第i张摸牌前所述摸牌信息对应的剩余牌数,reamainnum表示总剩余牌数;
所述总剩余牌数的计算公式为:
remainnum=134-Ndiscards-Nop-Nhandscards
其中,reamainnum表示总剩余牌数,Ndiscards表示为四个玩家出牌的总张数,Nop表示四个玩家的副露包含的张数,Nhandscards自己的手牌数。
进一步地,在一些可选的实施例中,胡牌路径下摸牌信息的摸牌权重的计算公式为:
其中,takeingvalue表示胡牌路径下摸牌信息的摸牌权重值,Movaluei表示胡牌路径下第i张摸牌信息的摸牌概率,takeingweighti表示第i张摸牌信息的获取权重,awardi表示第i张摸牌信息对应的奖励;
第i张摸牌信息对应的奖励的计算公式为:
其中,i的值为1~9,表示万、条、筒的牌值,a1、a2、a3分别表示不同的牌值对应的奖励;
摸牌信息的获取权重的计算公式为:
takingweight=2+G1+G2+G3+bias
其中,其中Gz表示所述有效牌从玩家z手中获取的概率,可获取记为2,不可获取记为0,其中z∈{1,2,3},bais表示校准偏差值。
进一步地,在一些可选的实施例中,所述胡牌得分的计算公式为:
Pathvalue=takingvalue×fanscore
其中,Pathvalue表示胡牌路径对应的胡牌得分,takeingvalue表示胡牌路径下摸牌信息的摸牌权重值,fanscore表示胡牌路径包含的所有牌型得分总和;
胡牌路径包含的所有牌型得分总和的计算公式为:
其中,fanscore表示胡牌路径包含的所有牌型得分总和,fanscore表示胡牌路径下第i中牌型对应的番型得分。
进一步地,在一些可选的实施例中,所述出牌信息的期望值的计算公式为:
其中,discardvalue表示出牌信息的期望值,Pathvaluei表示胡牌路径下出第i 张摸牌信息对应的胡牌得分;
从所有的出牌信息对应的期望值中筛选出最大的期望值作为目标期望值,并将所述目标期望值对应的出牌信息作为最佳出牌,以根据所述最佳出牌进行出牌决策;
获取目标期望值的计算公式为:
Optiamldiscard=max(discardsvalue)
其中,Optiamldiscard表示目标期望值,discardvalue表示出牌信息的期望值。
综上,根据上述的基于摸牌模式下的智能决策系统,通过只保留摸牌的启发式信息搜索方式,使得搜索的深度降低一半,极大地提高了出牌决策的计算速度。具体为,首先获取麻将胡牌规则,并根据胡牌规则将获取到的手牌信息进行分析,以得到搭子牌组合和对子牌组合,仅以搭子牌和对子牌所需的有效牌作为摸牌结点,以迅速扩展出多条胡牌路径,并记录下每条胡牌路径对应的出牌信息,该出牌信息均出自于废牌集合,再获取每条胡牌路径下对应的摸牌信息的摸牌概率和摸牌权重,同时根据每条胡牌路径的胡牌得分、每条胡牌路径下各个节点对应的摸牌信息的摸牌概率和摸牌权重综合计算出所述出牌信息的期望值,以确定出牌决策,无需耗费大量的计算资源,在响应速度方面具有更加明显的优势,同时对摸牌概率和胡牌得分进行全面评估,具备了快速胡牌以及得分高的优点。
本发明另一方面还提出计算机存储介质,其上存储有一个或多个程序,该程序给处理器执行时实现上述的基于摸牌模式下的智能决策方法。
本发明另一方面还提出一种计算机设备,其中,所述计算机设备可以为但不限于麻将机、电脑、手机等能够进行虚拟麻将游戏的电子设备,计算机设备包括存储器和处理器,其中存储器用于存放计算机程序,处理器用于执行存储器上所存放的计算机程序,以实现上述的基于摸牌模式下的智能决策方法。
本领域技术人员可以理解,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM 或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或它们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA) 等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。