CN110555529B - 一种数据处理的方法以及相关装置 - Google Patents

一种数据处理的方法以及相关装置 Download PDF

Info

Publication number
CN110555529B
CN110555529B CN201910865634.6A CN201910865634A CN110555529B CN 110555529 B CN110555529 B CN 110555529B CN 201910865634 A CN201910865634 A CN 201910865634A CN 110555529 B CN110555529 B CN 110555529B
Authority
CN
China
Prior art keywords
player
card
state value
playing
action
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910865634.6A
Other languages
English (en)
Other versions
CN110555529A (zh
Inventor
吕有为
钟涛
毛建博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910865634.6A priority Critical patent/CN110555529B/zh
Publication of CN110555529A publication Critical patent/CN110555529A/zh
Application granted granted Critical
Publication of CN110555529B publication Critical patent/CN110555529B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请实施例公开了一种数据处理的方法以及相关装置,用于实现最终经过数据处理得到的目标出牌路径可以适用于不同的对战局面中,具有很强的通用性,并且从效益值上来决定目标出牌路径,对于玩家的手牌数据的质量要求并不是很严格。本申请实施例提供的数据处理的方法包括:获取第一玩家的第一手牌数据;基于第一手牌数据确定第一玩家的至少一个出牌动作;当至少一个出牌动作与预设麻将博弈树中的决策节点重合时,确定第二玩家、第三玩家以及第四玩家在分别接收第一玩家的至少一个出牌动作所对应的牌后的第一状态值、第二状态值以及第三状态值;基于第一状态值、第二状态值以及第三状态值确定目标出牌路径。

Description

一种数据处理的方法以及相关装置
技术领域
本申请实施例涉及计算机技术领域,具体涉及一种数据处理的方法以及相关装置。
背景技术
麻将,是一种广为流行的益智牌类游戏,它属于非完美信息的博弈。一般麻将用具由一百多张牌和若干骰子组成,传统的麻将游戏是四位玩家在桌面上当面进行,一局游戏先后由洗牌、码牌、开牌和行牌等构成。随着计算机和互联网技术的发展,麻将游戏也有了新的玩法。基于互联网的麻将游戏,由游戏运营商的服务器和不计其数的玩家个人电脑构成。玩家通过互联网连接到游戏的服务器,输入自己唯一的用户名、密码,即可参与麻将游戏。基于互联网的麻将游戏,玩家不必因找不到玩伴,凑不成一桌开局而烦恼,也不必花时间关注洗牌、码牌、计分等环节,这些都会由电脑系统准确无误地完成,玩家只需集中注意力在行牌阶段即可。
目前,基于互联网的麻将游戏通常需要由多个玩家参与到一个对局中来进行游玩,而目前存在的监督学习麻将AI系统通常需要大量的在各种不同局面下的人类对战数据来学习人类的对战,并且针对这些数据的质量要求也高,在现实中难以满足。
然而,针对目前的监督学习麻将AI系统所需要数据质量的要求较高,在现实中难以具有通用性,所适应的局面也相对局限。
发明内容
本申请实施例提供了一种数据处理的方法以及相关装置,用于实现最终经过数据处理得到的目标出牌路径可以适用于不同的对战局面中,具有很强的通用性,并且从效益值上来决定目标出牌路径,对于玩家的手牌数据的质量要求并不是很严格。
第一方面,本申请实施例提供了一种数据处理的方法,包括:
获取第一玩家的第一手牌数据;
基于所述第一手牌数据确定所述第一玩家的至少一个出牌动作;
当所述至少一个出牌动作与预设麻将博弈树中的决策节点重合时,确定第二玩家、第三玩家以及第四玩家在分别接收所述第一玩家的至少一个出牌动作所对应的牌后的第一状态值、第二状态值以及第三状态值,所述第一状态值、第二状态值以及第三状态值均用于表示所述第一玩家在执行所述至少一个出牌动作后得到的效益值;
基于所述第一状态值、第二状态值以及所述第三状态值确定目标出牌路径。
本申请实施例第二方面提供一种数据处理的装置,包括:
获取单元,获取第一玩家的第一手牌数据;
第一确定单元,用于基于所述获取单元获取到的所述第一手牌数据确定所述第一玩家的至少一个出牌动作;
第二确定单元,用于在所述至少一个出牌动作与预设麻将博弈树中的决策节点重合时,确定第二玩家、第三玩家以及第四玩家在分别接收所述第一玩家的至少一个出牌动作所对应的牌后的第一状态值、第二状态值以及第三状态值,所述第一状态值、第二状态值以及第三状态值均用于表示所述第一玩家在执行所述至少一个出牌动作后得到的效益值;
第三确定单元,用于基于所述第一状态值、第二状态值以及所述第三状态值确定目标出牌路径。
在一种可能的设计中,在本申请实施例的第二方面的一种实现方式中,所述决策节点包括玩家决策状态节点,所述第二确定单元,包括;
第一确定模块,用于当所述至少一个出牌动作与所述玩家决策状态节点重合时,确定所述第二玩家、所述第三玩家、所述第四玩家在分别接收所述第一玩家的至少一个出牌动作所对应的牌后的第一出牌动作、第二出牌动作以及第三出牌动作;
计算模块,用于计算所述第一出牌动作的第一分值、所述第二出牌动作的第二分值以及所述第三出牌动作的第三分值;
所述第一确定模块,用于确定所述第一分值为所述第一状态值、所述第二分值为所述第二状态值以及所述第三分值为所述第三状态值。
在一种可能的设计中,在本申请实施例的第二方面的一种实现方式中,所述第三确定单元,包括:
第二确定模块,用于确定所述第一状态值、第二状态值以及所述第三状态值中的最大状态值;
所述第二确定模块,用于将所述最大状态值所对应的出牌动作确定为所述目标出牌路径。
在一种可能的设计中,在本申请实施例的第二方面的一种实现方式中,所述决策节点包括规则决策节点,所述第二确定单元,包括:
第三确定模块,用于在所述至少一个出牌动作与所述规则决策节点重合时,确定所述第二玩家、所述第三玩家、所述第四玩家在分别接收所述第一玩家的至少一个出牌动作所对应的牌后的第四出牌动作、第五出牌动作以及第六出牌动作;
第二计算模块,用于计算所述第四出牌动作的第四分值、所述第五出牌动作的第五分值以及所述第六出牌动作的第六分值;
所述第三确定模块,用于将所述第四出牌动作与所述第四分值确定为所述第一状态值、将所述第五出牌动作与所述第五分值确定为所述第二状态值以及将所述第六出牌动作与所述第六分值确定为所述第三状态值。
在一种可能的设计中,在本申请实施例的第二方面的一种实现方式中,所述第三确定单元,包括:
第四确定模块,用于根据预设麻将规则确定所述第四出牌动作、所述第五出牌动作以及所述第六出牌动作中的最高优先级动作;
所述第四确定模块,用于将所述最高优先级动作所对应的出牌动作确定为所述目标出牌路径。
在一种可能的设计中,在本申请实施例的第二方面的一种实现方式中,所述数据处理的装置还包括第一处理单元;
所述第一处理单元,用于在将所述最大状态值所对应的出牌动作确定为所述目标出牌路径之后,根据预设训练模型对所述第一手牌数据进行训练,以得到第一训练结果,所述第一训练结果用于标识所述第一玩家、所述第二玩家、所述第三玩家以及所述第四玩家的效益值;根据所述第一训练结果对所述第一状态值、所述第二状态值以及所述第三状态值进行更新。
在一种可能的设计中,在本申请实施例的第二方面的一种实现方式中,还包括第二处理单元,
所述第二处理单元,用于在将所述最高优先级动作所对应的出牌动作确定为所述目标出牌路径之后,根据预设训练模型对所述第一手牌数据进行训练,以得到第二训练结果,所述第二训练结果用于标识所述第一玩家、所述第二玩家、所述第三玩家以及所述第四玩家的效益值;当将所述第二训练结果沿着所述目标出牌路径回传至所述规则决策节点时,根据所述第二训练结果对所述第一状态值、所述第二状态值以及所述第三状态值进行更新。
本申请实施例第三方面提供了一种计算机设备,包括:存储器、收发器、处理器以及总线系统;
其中,存储器用于存储程序;
处理器用于执行存储器中的程序,包括如下步骤:
获取第一玩家的第一手牌数据;
基于所述第一手牌数据确定所述第一玩家的至少一个出牌动作;
当所述至少一个出牌动作与预设麻将博弈树中的决策节点重合时,确定第二玩家、第三玩家以及第四玩家在分别接收所述第一玩家的至少一个出牌动作所对应的牌后的第一状态值、第二状态值以及第三状态值,所述第一状态值、第二状态值以及第三状态值均用于表示所述第一玩家在执行所述至少一个出牌动作后得到的效益值;
基于所述第一状态值、第二状态值以及所述第三状态值确定目标出牌路径;
总线系统用于连接存储器以及处理器,以使存储器以及处理器进行通信。
本申请实施例第四方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一方面的方法。
本申请实施例第五方面提供了一种包含指令的计算机程序产品,当其在计算机或者处理器上运行时,使得计算机或者处理器执行上述任一方面的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例中,在获取第一玩家的第一手牌数据后,基于该第一手牌数据确定出该第一玩家的至少一个出牌动作,若该出牌动作与预设麻将博弈树中的决策节点重合时,则确定出该出牌动作所对应的牌对第二玩家、第三玩家以及第四玩家的第一状态值、第二状态值以及第三状态值,而该第一状态值、第二状态值以及第三状态值可以表示出该出牌动作对于第一玩家来说所得到的效益值,即从其余玩家中反馈出每一个出牌动作对于第一玩家所产生的效益,在此基础上,基于这三者状态值来确定出第一玩家的目标出牌路径,由于预设麻将博弈树是基于博弈论的基础,使得最终经过数据处理得到的目标出牌路径可以适用于不同的对战局面中,具有很强的通用性,并且从效益值上来决定目标出牌路径,对于玩家的手牌数据的质量要求并不是很严格。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例中数据处理系统的一个架构示意图;
图2是本申请实施例中区块链的一个结构示意图;
图3是本申请实施例提供的区块链中新区块产生的示意图;
图4是本申请实施例中棋牌数据的一个示意图;
图5是本申请实施例中提供的数据处理的方法的一个实施例示意图;
图6是本申请实施例中提供的麻将博弈树的结构示意图;
图7是本申请实施例中提供的玩家决策状态节点的状态值示意图;
图8是本申请实施例中提供的规则决策节点的状态值示意图;
图9是本申请实施例中提供的回传至规则决策节点时进行状态值更新的示意图;
图10是本申请实施例中提供的数据处理的装置一个实施例示意图;
图11是本申请实施例提供的计算机设备的结构示意图。
具体实施方式
本申请实施例提供了一种数据处理的方法以及相关装置,用于实现最终经过数据处理得到的目标出牌路径可以适用于不同的对战局面中,具有很强的通用性,并且从效益值上来决定目标出牌路径,对于玩家的手牌数据的质量要求并不是很严格。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
人工智能(artificial intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习(deep learning,DL)等几大方向。
其中,深度学习是机器学习领域中一个新的研究方向,它被引入机器学习使其更接近于最初的目标——人工智能。深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,远远超过先前相关技术。深度学习在搜索技术,数据挖掘,机器学习,机器翻译,自然语言处理,多媒体学习,语音,推荐和个性化技术,以及其他相关领域都取得了很多成果。深度学习使机器模仿视听和思考等人类的活动,解决了很多复杂的模式识别难题,使得人工智能相关技术取得了很大进步。
通常,在采用深度学习方法来实现不同的功能时,例如在针对监督学习麻将AI系统中,通常需要采集不同局面下的人类对战数据,从而针对这些人类对战数据进行学习并训练,以此来学习贴合人类的实际对战情况。然而,针对现有的这种学习方式中所需要的对战数据的质量要求较为严格,能够适用的局面也具有一定的局限性。
一般来说,在深度学习技术领域中,为了能够在实际应用中适应不同的对战局面,降低对训练数据的质量要求,可以通过建立麻将博弈树,在麻将博弈树的基础上,获取第一玩家的第一手牌数据,以此对其余玩家的手牌进行猜牌、选择、扩展、模拟以及回传等操作来决定玩家的目标出牌动作,从而使得该目标出牌动作所带来的效益值对于玩家来说是最大化的。
应理解,本申请应用于数据处理确定出目标出牌路径的场景,具体地,可以用于在获取第一玩家的第一手牌数据后,基于该第一手牌数据确定出该第一玩家能够做出的至少一个出牌动作,如果该出牌动作与预设麻将博弈树中的决策节点重合时,则确定出该出牌动作所对应的牌对第二玩家、第三玩家以及第四玩家的第一状态值、第二状态值以及第三状态值,而该第一状态值、第二状态值以及第三状态值可以表示出该出牌动作对于第一玩家来说所得到的效益值,也就是从其余玩家中反馈出每一个出牌动作对于第一玩家所产生的效益,在此基础上,基于这三者状态值来确定出第一玩家的目标出牌路径,由于预设麻将博弈树是基于博弈论的基础,使得最终经过数据处理得到的目标出牌路径可以适用于不同的对战局面中,具有很强的通用性,并且从效益值上来决定目标出牌路径,对于玩家的手牌数据的质量要求并不是很严格。
本申请实施例主要应用于棋牌类应用程序,可将本申请实施例所提供的数据处理的方法部署于终端设备上,由终端设备收集玩家的手牌数据,然后基于这些手牌数据确定出玩家的目标出牌路径。请参阅图1,图1为本申请实施例中数据处理系统的一个架构示意图,如图所示,终端设备A、终端设备B、终端设备C以及终端设备D之间建立通信连接,并且每个终端设备上均安装有客户端,如:麻将客户端等,其中,所描述的终端设备A、终端设备B、终端设备C以及终端设备D包含但不仅限于平板电脑、笔记本电脑、个人电脑以及手机。
其中,图1中的数据处理系统是用于进行节点与节点之间的数据共享系统,该数据共享系统中可以包括多个节点,多个节点可以是指数据共享系统中各个服务器或者各个终端设备。每个节点在进行正常工作可以接收到输入信息,并基于接收到的输入信息维护该数据共享系统内的共享数据。为了保证数据共享系统内的信息互通,数据共享系统中的每个节点之间可以存在信息连接,节点之间可以通过上述信息连接进行信息传输。例如,当数据共享系统中的任意节点接收到出牌动作所对应的牌时,数据共享系统中的其他节点便根据共识算法获取该出牌动作所对应的牌,将该出牌动作所对应的牌作为共享数据中的数据进行存储,使得数据共享系统中全部节点上存储的数据均一致。
对于数据共享系统中的每个节点,均具有与其对应的节点标识,而且数据共享系统中的每个节点均可以存储有数据共享系统中其他节点的节点标识,以便后续根据其他节点的节点标识,将生成的区块广播至数据共享系统中的其他节点。每个节点中可维护一个如下表所示的节点标识列表,将节点名称和节点标识对应存储至该节点标识列表中。其中,节点标识可为IP(Internet Protocol,网络之间互联的协议)地址以及其他任一种能够用于标识该节点的信息,表1中仅以IP地址为例进行说明。
节点名称 节点标识
节点1 117.114.151.174
节点2 117.116.189.145
节点N 119.123.789.258
数据共享系统中的每个节点均存储一条相同的区块链。区块链由多个区块组成,参见图2,区块链由多个区块组成,创始块中包括区块头和区块主体,区块头中存储有输入信息特征值、版本号、时间戳和难度值,区块主体中存储有输入信息;创始块的下一区块以创始块为父区块,下一区块中同样包括区块头和区块主体,区块头中存储有当前区块的输入信息特征值、父区块的区块头特征值、版本号、时间戳和难度值,并以此类推,使得区块链中每个区块中存储的区块数据均与父区块中存储的区块数据存在关联,保证了区块中输入信息的安全性。
在生成区块链中的各个区块时,参见图3,区块链所在的节点在接收到输入信息时,对输入信息进行校验,完成校验后,将输入信息存储至内存池中,并更新其用于记录输入信息的哈希树;之后,将更新时间戳更新为接收到输入信息的时间,并尝试不同的随机数,多次进行特征值计算,使得计算得到的特征值可以满足下述公式:
SHA256(SHA256(version+prev_hash+merkle_root+ntime+nbits+x))<TARGET其中,SHA256为计算特征值所用的特征值算法;version(版本号)为区块链中相关区块协议的版本信息;prev_hash为当前区块的父区块的区块头特征值;merkle_root为输入信息的特征值;ntime为更新时间戳的更新时间;nbits为当前难度,在一段时间内为定值,并在超出固定时间段后再次进行确定;x为随机数;TARGET为特征值阈值,该特征值阈值可以根据nbits确定得到。
这样,当计算得到满足上述公式的随机数时,便可将信息对应存储,生成区块头和区块主体,得到当前区块。随后,区块链所在节点根据数据共享系统中其他节点的节点标识,将新生成的区块分别发送给其所在的数据共享系统中的其他节点,由其他节点对新生成的区块进行校验,并在完成校验后将新生成的区块添加至其存储的区块链中。
应理解,本申请实施例具体可应用于麻将类应用程序,玩家可以通过客户端随时随地的进行游戏,既可以和其他玩家进行对战,也可以进行单机游戏或者是托管游戏。为了便于理解,下面将结合图4对本申请实施例中的一些术语进行介绍,请参阅图4,图4为本申请实施例中棋牌数据的一个示意图,如图所示,棋牌数据可以表现为“序数牌”和“字牌”,其中,“序数牌”共有108张,“字牌”共有28张。图4中的第一行是“筒子牌”,从“一筒”到“九筒”(“一筒”、“二筒”、“三筒”、“四筒”、“五筒”、“六筒”、“七筒”、“八筒”以及“九筒”)各4张,合计36张。图4中的第二行是“条子牌”,从“一条”到“九条”(“一条”、“二条”、“三条”、“四条”、“五条”、“六条”、“七条”、“八条”以及“九条”)各4张,合计36张。图4中的第三行是“万子牌”,从“一万”到“九万”(“一万”、“二万”、“三万”、“四万”、“五万”、“六万”、“七万”、“八万”以及“九万”)各4张,合计36张。图4中的第四行是“风牌”,包括4张“东风”、4张“南风”、4张“西风”以及4张“北风”,合计16张。图4中的第五行是“箭牌”,包括4张“红中”、4张“发财”以及4张“白板”,合计12张。在麻将中,花色指万、条、筒、风(东风、西风、南风和北风)、箭(红中、发财和白板)等五种不同花色的牌。牌面面值指的是指数牌的牌面大小,如一万的牌面面值为1、一筒的牌面面值为1、九条的牌面面值为9。番种指的是国标麻将中用于计算和(胡)牌得分的牌的固定组合,共81种,如大四喜、三色三同顺、暗杠和缺一门等。手牌指的是对局玩家当前手上的牌的列表。
将上述提到的“序数牌”和“字牌”进行组合,可以得到五种标准状态,分别为“吃”、“碰”、“杠”、“听牌”以及“和牌”,其中,“吃”表示上一位玩家打出的牌与本轮需要出牌的玩家的手牌正好组成一副顺子(如“一筒”+“二筒”+“三筒”)。“碰”表示一位玩家打出一张牌与另一位玩家的手牌正好组成一副刻子(如“一条”+“一条”+“一条”),即三个完全相同的牌。“杠”表示玩家手牌已经有三张相同的牌,然后自己又抓上一张相同的牌或者其他玩家打出这张牌,使玩家手牌正好组成四个相同的牌(如“一条”+“一条”+“一条”+“一条”)。“听牌”表示玩家手牌都凑成了有用的牌,只需要再加上最后一张牌便可“和牌”,进入“听牌”阶段之后不能“吃”、“碰”或者“杠”。“和牌”也可以称为“胡牌”,常见的“和牌”牌型为m×AAA+n×ABC+DD(m、n可以为0)“AAA”即表示刻子,“ABC”即表示顺子,“DD”即表示对子,此外,还有其他牌型也能“和牌”,比如“十三幺”、“不靠”以及“组合龙”等,此处不做穷举。
为便于更好地理解本申请实施例所提出的方案,下面对本实施例中的具体流程进行介绍,请参阅图5,为本申请实施例中提供的数据处理的方法的一个实施例示意图,该方法包括:
501、获取第一玩家的第一手牌数据。
本实施例中,第一手牌数据指的是在对麻将进行码牌后或重新抓牌后第一玩家所抓取到的手牌数据。
应理解的是,在获取第一玩家的第一手牌数据后,还可以针对该第一玩家的第一手牌数据对其余玩家的手牌数据进行猜牌,即对第二玩家、第三玩家以及第四玩家所抓取到的手牌数据进行推测,猜牌的方法有多种,但最终猜牌的结果需要与麻将规则相符,从而使得最终的猜牌结果形成一棵树状结构的麻将博弈树。请参阅图6,为本申请实施例中提供的麻将博弈树的结构示意图。从图6可以看出,以玩家1的视角出发,玩家1在获取到第一手牌数据后,可以执行“和”、“吃”、“碰”、“杠”、“摸”这五种动作,其中,针对“吃”、“碰”这两种出牌动作可以有多种决策,如:针对“吃”这一动作,在把上家的牌吃进后,紧接着可以打出“一万”、“九筒”等多余牌,若是打出“一万”,针对其余的第二玩家、第三玩家以及第四玩家有可能在获取到该“一万”的牌后,也会执行不同的动作决策,如玩家2也可以吃进“一万”、碰进“一万”、杠进“一万”,又或者是直接“和牌”,也可以是打出该“一万”后重新从牌墙中摸牌;同理,针对玩家3、玩家4在获取到玩家1打出的“一万”的牌后,也可以如同玩家2的做法一样,吃进“一万”、碰进“一万”、杠进“一万”,又或者是直接“和牌”,也可以是打出该“一万”后重新从牌墙中摸牌,以此类推下去便可以得到该麻将博弈树。上述所提及的麻将规则是优先级最高的动作先执行,即“和牌”>“杠牌”>“碰牌”>“吃牌”。
需理解的是,在图6中还可以看出,由于“吃”、“碰”可以有多种不同的决策,所以在“吃”进牌、或者“碰”进牌后的所做出的动作会对其余的玩家有一点的影响,而该影响也会最终影响到自己最后是否能“和牌”,所以在“吃”进牌、或者“碰”进牌后的所做出的动作可以用图6中的规则决策节点进行标识,即图6中的菱形。而图6中的圆形则标识机会决策节点,内部标号为C,代表机会的缩写,即“摸牌”可以摸到不同的牌的可能性;另外,方形标识的是玩家决策状态节点,内部标号代表的是决策人编号,如“1”表示的是玩家1等等。
502、基于第一手牌数据确定第一玩家的至少一个出牌动作。
本实施例中,第一手牌数据在还未可以进行“和牌”之前,必然会存在至少一个多余的不利于“和牌”的牌位列在该第一手牌数据中,因此,可以针对这些多余的牌执行不同的出牌动作,从而可以确定出该第一玩家的至少一个出牌动作。例如:假设第一玩家在吃进某个牌后,所得到的第一手牌数据中有“一万、四万、五万、七万、八万、三筒、四筒、五筒、九筒、中、中、七条、八条、九条”,很明显,玩家1要想“和牌”,必定会从不是对子、顺子等牌打出,如:“一万、九筒”,所以这些牌都会对应着各自的出牌动作。
503、当至少一个出牌动作与预设麻将博弈树中的决策节点重合时,确定第二玩家、第三玩家以及第四玩家在分别接收第一玩家的至少一个出牌动作所对应的牌后的第一状态值、第二状态值以及第三状态值,第一状态值、第二状态值以及第三状态值均用于表示第一玩家在执行至少一个出牌动作后得到的效益值。
本实施例中,由于预设麻将博弈树(可以参照图6理解)中推测出了每一个打出的牌对其他玩家的影响,并且在遇到不同的决策节点时会根据不同的规则来决定每个出牌动作所能够带来的对于第一玩家来说最大化的效益值,而该效益值可以从其余的玩家,即从第二玩家、第三玩家以及第四玩家在获取到了该出牌动作对应的牌后所得到的状态值来进行反馈。
应当理解的是,不同的决策节点会决定出不同的出牌路径,因此下面将具体结合决策节点介绍如何将状态值反馈。
可选地,在另一些实施例中,决策节点可以包括玩家决策状态节点,对应地,当至少一个出牌动作与玩家决策状态节点重合时,确定第二玩家、第三玩家以及第四玩家在分别接收第一玩家的至少一个出牌动作所对应的牌后的第一状态值、第二状态值以及第三状态值,包括:确定第二玩家、第三玩家、第四玩家在分别接收第一玩家的至少一个出牌动作所对应的牌后的第一出牌动作、第二出牌动作以及第三出牌动作;计算第一出牌动作的第一分值、第二出牌动作的第二分值以及第三出牌动作的第三分值;确定第一分值为第一状态值、第二分值为第二状态值以及第三分值为第三状态值。
应理解的是,状态值可以指玩家在当前状态下所执行的出牌动作所带来的分值,分值越高,说明该出牌动作对于“和牌”的可能性就会越高,对玩家来说获取得到的效益就会越大。因此,在确定出第二玩家、第三玩家以及第四玩家在同时获取了该第一玩家所打出的牌后所做出的可能的出牌动作,分别为第一出牌动作、第二出牌动作以及第三出牌动作,从而计算该第一出牌动作所带来的第一分值、第二出牌动作所带来的第二分值、第三出牌动作所带来的第三分值,通过分值来确定出状态值。请参照图7,为本申请实施例中提供的玩家决策状态节点的状态值示意图。从图7可以看出,针对玩家1,玩家1在打出“一万”、“九筒”后,玩家2、玩家3以及玩家4会同时针对“一万”、“九筒”做出不同的出牌动作,并且会评估出每个出牌动作的分值,如:向量A=(a1,a2,a3,a4)中的值则分别表示了玩家1、玩家2、玩家3以及玩家4在针对该“一万”的牌所得到的分值,而向量B=(b1,b2,b3,b4)中的值则分别表示了玩家1、玩家2、玩家3以及玩家4在针对该“九筒”的牌所得到的分值等等。应理解的是,本实施例中所描述的向量A、向量B也还可以用于表示不同的出牌动作所得到的分值,具体本申请实施例中将不做具体限定。
可选地,在另一些实施例中,决策节点可以包括规则决策节点,对应地,当至少一个出牌动作与规则决策节点重合时,确定第二玩家、第三玩家以及第四玩家在分别接收第一玩家的至少一个出牌动作所对应的牌后的第一状态值、第二状态值以及第三状态值,包括:确定第二玩家、第三玩家、第四玩家在分别接收第一玩家的至少一个出牌动作所对应的牌后的第四出牌动作、第五出牌动作以及第六出牌动作;计算第四出牌动作的第四分值、第五出牌动作的第五分值以及第六出牌动作的第六分值;将第四出牌动作与第四分值确定为第一状态值、将第五出牌动作与第五分值确定为第二状态值以及将第六出牌动作与第六分值确定为第三状态值。
应理解的是,状态值可以指玩家在当前状态下所执行的出牌动作所带来的分值,分值越高,说明该出牌动作对于“和牌”的可能性就会越高,对玩家来说获取得到的效益就会越大。因此,在确定出第二玩家、第三玩家以及第四玩家在同时获取了该第一玩家所打出的牌后所做出的可能的出牌动作,分别为第四出牌动作、第五出牌动作以及第六出牌动作,从而计算该第四出牌动作所带来的第四分值、第五出牌动作所带来的第五分值、第六出牌动作所带来的第六分值。另外,由于规则决策节点也同样需要遵循麻将规则,即通常是优先级较高的出牌动作先执行,因此在该实施例中,可以将出牌动作与分值进行结合来确定出状态值,具体地将第四出牌动作与第四分值确定为第一状态值、将第五出牌动作与第五分值确定为第二状态值以及将第六出牌动作与第六分值确定为第三状态值。请参照图8,为本申请实施例中提供的规则决策节点的状态值示意图。从图8可以看出,针对玩家1,玩家1在打出“一万”、“九筒”后,玩家2、玩家3以及玩家4会同时针对“一万”、“九筒”做出不同的出牌动作,并且会评估出每个出牌动作的分值,如:玩家2会基于该“一万”的牌进行“摸牌”的出牌动作,而玩家3会基于该“一万”的牌进行“碰牌”的出牌动作,玩家4则会基于该“一万”的牌进行“吃牌”的出牌动作,因此分别可以形成向量C={(c1,c2,c3,c4),摸牌}、向量D={(d1,d2,d3,d4),碰牌}、向量E={(e1,e2,e3,e4),吃牌}中的值则分别表示了玩家1、玩家2、玩家3以及玩家4在针对该“一万”的牌所得到的状态值;同样地,而玩家2会基于该“九筒”的牌进行“摸牌”的出牌动作,而玩家3会基于该“九筒”的牌进行“吃牌”的出牌动作,玩家4则会基于该“九筒”的牌进行“吃牌”的出牌动作,因此分别可以形成向量F={(f1,f2,f3,f4),摸牌}、向量G={(g1,g2,g3,g4),吃牌}、向量H={(h1,h2,h3,h4),吃牌}中的值则分别表示了玩家1、玩家2、玩家3以及玩家4在针对该“九筒”的牌所得到的状态值。
504、基于第一状态值、第二状态值以及第三状态值确定目标出牌路径。
本实施例中,在确定出状态值后,可以基于每个所反馈出的第一状态值、第二状态值以及第三状态值来确定出目标出牌路径,该目标出牌路径可以用来表示第一玩家执行相应的目标出牌动作,并且可以从该目标出牌动作中得到对于自己来说最大化的效益。
可选地,在上述步骤503中的图7所描述的基础上,确定目标出牌路径可以采用以下的方式进行:确定第一状态值、第二状态值以及第三状态值中的最大状态值;将最大状态值所对应的出牌动作确定为目标出牌路径。
本实施例中,实际上是确定第一状态值、第二状态值以及第三状态值中的最大状态值,即可以从分值来确定出最大的分值,从而选择分值最大的出牌动作做为该目标出牌路径。例如,在上述图7所描述的向量A以及向量B中,若分值a1大于分值b1,那么玩家1就可以选择打出“一万”,而不是“九筒”。
可选地,在上述步骤503中的图8所描述的基础上,确定目标出牌路径可以采用以下的方式进行:根据预设麻将规则确定第四出牌动作、第五出牌动作以及第六出牌动作中的最高优先级动作;将最高优先级动作所对应的出牌动作确定为目标出牌路径。
本实施例中,由于规则决策节点也同样需要遵循麻将规则,即通常是优先级较高的出牌动作先执行,所以可以根据预设麻将规则从第四出牌动作、第五出牌动作以及第六出牌动作中确定出优先级最高的出牌动作,从而基于优先级最高的出牌动作确定为该第一玩家的目标出牌路径。例如:图8所示的例子中很明显看出玩家3在获取到该“一万”的牌所打出的出牌动作“碰牌”的优先级要比在获取到“九筒”后的出牌动作“吃牌”、玩家2在获取到“一万”和“九筒”的出牌动作“摸牌”、以及玩家4在获取到“一万”、“九筒”的出牌动作“吃牌”的优先级要高,因此,玩家1可以选择打出“一万”,而不是“九筒”。
可选地,在另一实施例中,在将最大状态值所对应的出牌动作确定为目标出牌路径之后,方法还包括:根据预设训练模型对第一手牌数据进行训练,以得到第一训练结果,第一训练结果用于标识第一玩家、第二玩家、第三玩家以及第四玩家的效益值;根据第一训练结果对第一状态值、第二状态值以及第三状态值进行更新。
本实施例中,也就是理解成,在基于玩家决策状态节点的基础上,确定出目标出牌路径后,可以通过针对该第一手牌数据中的某一阶段状态进行模型的训练,以此得到训练后的第一训练结果,该第一训练结果是一个4维的向量,每一维的向量值分别代表了第一玩家、第二玩家、第三玩家以及该第四玩家在当前状态中的真实的效益值。因此,通过将该第一训练结果按照之前确定出的目标出牌路径回传至各个做出出牌动作的节点上,使得每个节点上的状态值都能够及时的更新,即及时更新第一状态值、第二状态值以及第三状态值,从而也更新了第一玩家的状态值。
可选地,在另一实施例中,还可以在将最高优先级动作所对应的出牌动作确定为目标出牌路径之后,可以根据预设训练模型对第一手牌数据进行训练,以得到第二训练结果,第二训练结果用于标识第一玩家、第二玩家、第三玩家以及第四玩家的效益值;当将第二训练结果沿着目标出牌路径回传至规则决策节点时,根据第二训练结果对第一状态值、第二状态值以及第三状态值进行更新。
在本实施例中,应当理解的是,确定出目标出牌路径后,可以通过针对该第一手牌数据中的某一阶段状态进行模型的训练,以此得到训练后的第二训练结果,该第二训练结果是一个4维的向量,每一维的向量值分别代表了第一玩家、第二玩家、第三玩家以及该第四玩家在当前状态中的真实的效益值。因此,通过将该第二训练结果按照之前确定出的目标出牌路径回传至各个做出出牌动作的节点上,若此时在回传的过程中遇到的是规则决策节点,此时还需要将该第二训练结果反馈给其余的玩家,使得每个节点上的状态值都能够及时的更新,即及时更新第一状态值、第二状态值以及第三状态值,从而也更新了第一玩家的状态值。例如,请参阅图9,为本申请实施例中提供的回传至规则决策节点时进行状态值更新的示意图。从图9可以看出,在图8所描述的基础上,玩家3碰牌后回传第二训练结果,除了更新该目标出牌路径(虚线箭头表示)的节点外,还需要在遇到规则决策节点时对玩家2以及玩家4的“摸牌”、“吃牌”出牌动作后的状态值进行更新,即更新该第一状态值以及第三状态值,这样将训练结果进行回传来更新原来的状态值可以达到对所有的玩家的决策进行反馈。
应理解的是上述所描述的第一玩家可以指玩家1、第二玩家可以指玩家2、第三玩家可以指玩家3以及第四玩家可以指玩家4,在本实施例中将第一玩家指玩家1、第二玩家指玩家2、第三玩家指玩家3以及第四玩家指玩家4是为了详细地说明本申请中的方案,但在实际应用中,对于第一玩家、第二玩家、第三玩家以及第四玩家到底指的是对战游戏中的哪个具体玩家,本实施例中不做具体限定。
上述主要从方法的角度对本申请实施例提供的方案进行了介绍。可以理解的是为了实现上述功能,包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本申请中所公开的实施例描述的各示例的模块及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
下面对本申请实施例中的数据处理的装置进行详细描述,请参阅图10,图10为本申请实施例中提供的数据处理的装置一个实施例示意图,该数据处理的装置100可以包括:
获取单元1001,获取第一玩家的第一手牌数据;
第一确定单元1002,用于基于获取单元获取到的第一手牌数据确定第一玩家的至少一个出牌动作;
第二确定单元1003,用于在至少一个出牌动作与预设麻将博弈树中的决策节点重合时,确定第二玩家、第三玩家以及第四玩家在分别接收第一玩家的至少一个出牌动作所对应的牌后的第一状态值、第二状态值以及第三状态值,第一状态值、第二状态值以及第三状态值均用于表示第一玩家在执行至少一个出牌动作后得到的效益值;
第三确定单元1004,用于基于第一状态值、第二状态值以及第三状态值确定目标出牌路径。
可选地,在上述图10所对应的实施例的基础上,本申请实施例提供的数据处理的装置100的另一实施例中,决策节点包括玩家决策状态节点,第二确定单元1003,包括;
第一确定模块,用于当至少一个出牌动作与玩家决策状态节点重合时,确定第二玩家、第三玩家、第四玩家在分别接收第一玩家的至少一个出牌动作所对应的牌后的第一出牌动作、第二出牌动作以及第三出牌动作;
计算模块,用于计算第一出牌动作的第一分值、第二出牌动作的第二分值以及第三出牌动作的第三分值;
第一确定模块,用于确定第一分值为第一状态值、第二分值为第二状态值以及第三分值为第三状态值。
可选地,在上述图10所对应的实施例的基础上,本申请实施例提供的数据处理的装置100的另一实施例中,第三确定单元1004,包括:
第二确定模块,用于确定第一状态值、第二状态值以及第三状态值中的最大状态值;
第二确定模块,用于将最大状态值所对应的出牌动作确定为目标出牌路径。
可选地,在上述图10所对应的实施例的基础上,本申请实施例提供的数据处理的装置100的另一实施例中,决策节点包括规则决策节点,第二确定单元1003,包括:
第三确定模块,用于在至少一个出牌动作与规则决策节点重合时,确定第二玩家、第三玩家、第四玩家在分别接收第一玩家的至少一个出牌动作所对应的牌后的第四出牌动作、第五出牌动作以及第六出牌动作;
第二计算模块,用于计算第四出牌动作的第四分值、第五出牌动作的第五分值以及第六出牌动作的第六分值;
第三确定模块,用于将第四出牌动作与第四分值确定为第一状态值、将第五出牌动作与第五分值确定为第二状态值以及将第六出牌动作与第六分值确定为第三状态值。
可选地,在上述图10所对应的实施例的基础上,本申请实施例提供的数据处理的装置100的另一实施例中,第三确定单元1004,包括:
第四确定模块,用于根据预设麻将规则确定第四出牌动作、第五出牌动作以及第六出牌动作中的最高优先级动作;
第四确定模块,用于将最高优先级动作所对应的出牌动作确定为目标出牌路径。
可选地,在上述图10所对应的实施例的基础上,本申请实施例提供的数据处理的装置的另一实施例中,还可以包括第一处理单元;
第一处理单元,用于在将最大状态值所对应的出牌动作确定为目标出牌路径之后,根据预设训练模型对第一手牌数据进行训练,以得到第一训练结果,第一训练结果用于标识第一玩家、第二玩家、第三玩家以及第四玩家的效益值;根据第一训练结果对第一状态值、第二状态值以及第三状态值进行更新。
可选地,在上述图10所对应的实施例的基础上,本申请实施例提供的数据处理的装置100的另一实施例中,还包括第二处理单元,
第二处理单元,用于在将最高优先级动作所对应的出牌动作确定为目标出牌路径之后,根据预设训练模型对第一手牌数据进行训练,以得到第二训练结果,第二训练结果用于标识第一玩家、第二玩家、第三玩家以及第四玩家的效益值;当将第二训练结果沿着目标出牌路径回传至规则决策节点时,根据第二训练结果对第一状态值、第二状态值以及第三状态值进行更新。
因此,在通过获取单元1001获取第一玩家的第一手牌数据后,基于第一确定单元1002根据该第一手牌数据确定出该第一玩家的至少一个出牌动作,若该出牌动作与预设麻将博弈树中的决策节点重合时,则由第二确定单元1003确定出该出牌动作所对应的牌对第二玩家、第三玩家以及第四玩家的第一状态值、第二状态值以及第三状态值,而该第一状态值、第二状态值以及第三状态值可以表示出该出牌动作对于第一玩家来说所得到的效益值,即从其余玩家中反馈出每一个出牌动作对于第一玩家所产生的效益,在此基础上,由第三确定单元1004基于这三者状态值来确定出第一玩家的目标出牌路径,由于预设麻将博弈树是基于博弈论的基础,使得最终经过数据处理得到的目标出牌路径可以适用于不同的对战局面中,具有很强的通用性,并且从效益值上来决定目标出牌路径,对于玩家的手牌数据的质量要求并不是很严格。
上面从模块化功能实体的角度对本申请实施例中的数据处理的装置100进行描述,下面从硬件处理的角度对本申请实施例中的数据处理的装置进行描述。图11是本申请实施例提供的计算机设备的结构示意图,该计算机设备可以包括上述所描述的数据处理的装置,该计算机设备可因配置或性能不同而产生比较大的差异,该计算机设备可以至少一个处理器1101,通信线路1107,存储器1103以及至少一个通信接口1104。
处理器1101可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,服务器IC),或一个或多个用于控制本申请方案程序执行的集成电路。
通信线路1107可包括一通路,在上述组件之间传送信息。
通信接口1104,使用任何收发器一类的装置,用于与其他装置或通信网络通信,如以太网,无线接入网(radio access network,RAN),无线局域网(wireless local areanetworks,WLAN)等。
存储器1103可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储装置,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储装置,存储器可以是独立存在,通过通信线路1107与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器1103用于存储执行本申请方案的计算机执行指令,并由处理器1101来控制执行。处理器1101用于执行存储器1103中存储的计算机执行指令,从而实现本申请上述实施例提供的数据处理的方法。
可选的,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
在具体实现中,作为一种实施例,该计算机设备可以包括多个处理器,例如图11中的处理器1101和处理器1102。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个装置、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,该计算机设备还可以包括输出设备1105和输入设备1106。输出设备1105和处理器1101通信,可以以多种方式来显示信息。输入设备1106和处理器1101通信,可以以多种方式接收用户的输入。例如,输入设备1106可以是鼠标、触摸屏装置或传感装置等。
上述的该计算机设备可以是一个通用装置或者是一个专用装置。在具体实现中,该计算机设备可以是台式机、便携式电脑、nas服务器、无线终端装置、嵌入式装置或有图11中类似结构的装置。本申请实施例不限定该计算机设备的类型。
在本申请实施例中,该计算机设备所包括的处理器1101还具有以下功能:
获取第一玩家的第一手牌数据;
基于第一手牌数据确定第一玩家的至少一个出牌动作;
当至少一个出牌动作与预设麻将博弈树中的决策节点重合时,确定第二玩家、第三玩家以及第四玩家在分别接收第一玩家的至少一个出牌动作所对应的牌后的第一状态值、第二状态值以及第三状态值,第一状态值、第二状态值以及第三状态值均用于表示第一玩家在执行至少一个出牌动作后得到的效益值;
基于第一状态值、第二状态值以及第三状态值确定目标出牌路径。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只上述主要从交互的角度对本申请实施例提供的方案进行了介绍。可以理解的是为了实现上述功能,包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本申请中所公开的实施例描述的各示例的模块及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

Claims (8)

1.一种数据处理的方法,其特征在于,包括:
获取第一玩家的第一手牌数据;
基于所述第一手牌数据确定所述第一玩家的至少一个出牌动作;
当所述至少一个出牌动作与预设麻将博弈树中的决策节点重合时,确定第二玩家、第三玩家以及第四玩家在分别接收所述第一玩家的至少一个出牌动作所对应的牌后的第一状态值、第二状态值以及第三状态值,所述第一状态值、第二状态值以及第三状态值均用于表示所述第一玩家在执行所述至少一个出牌动作后得到的效益值;
所述预设麻将博弈树是基于博弈论得到的包括与麻将规则相符的猜牌结果的树状结构,所述猜牌结果为针对所述第一玩家的第一手牌数据对其余玩家的手牌数据进行猜牌后得到;
所述第一状态值是通过第二玩家在接收所述第一玩家的至少一个出牌动作所对应的牌后的第一出牌动作所能够带来的对于所述第一玩家的效益值;
所述第二状态值是通过第三玩家在接收所述第一玩家的至少一个出牌动作所对应的牌后的第二出牌动作所能够带来的对于所述第一玩家的效益值;
所述第三状态值是通过第四玩家在接收所述第一玩家的至少一个出牌动作所对应的牌后的第三出牌动作所能够带来的对于所述第一玩家的效益值;
基于所述第一状态值、第二状态值以及所述第三状态值,确定所述第一玩家在执行所述至少一个出牌动作后得到的效益值中的最大效益值;
将所述最大效益值所对应的第一玩家出牌动作确定为所述第一玩家的目标出牌路径。
2.根据权利要求1所述的方法,其特征在于,所述决策节点包括玩家决策状态节点,当所述至少一个出牌动作与预设麻将博弈树中的决策节点重合时,确定第二玩家、第三玩家以及第四玩家在分别接收所述第一玩家的至少一个出牌动作所对应的牌后的第一状态值、第二状态值以及第三状态值,包括:
当所述至少一个出牌动作与所述玩家决策状态节点重合时,确定所述第二玩家、所述第三玩家、所述第四玩家在分别接收所述第一玩家的至少一个出牌动作所对应的牌后的第一出牌动作、第二出牌动作以及第三出牌动作;
计算所述第一出牌动作的第一分值、所述第二出牌动作的第二分值以及所述第三出牌动作的第三分值;
确定所述第一分值为所述第一状态值、所述第二分值为所述第二状态值以及所述第三分值为所述第三状态值。
3.根据权利要求1所述的方法,其特征在于,所述决策节点包括规则决策节点,当所述至少一个出牌动作与预设麻将博弈树中的决策节点重合时,确定第二玩家、第三玩家以及第四玩家在分别接收所述第一玩家的至少一个出牌动作所对应的牌后的第一状态值、第二状态值以及第三状态值,包括:
当所述至少一个出牌动作与所述规则决策节点重合时,确定所述第二玩家、所述第三玩家、所述第四玩家在分别接收所述第一玩家的至少一个出牌动作所对应的牌后的第四出牌动作、第五出牌动作以及第六出牌动作;
计算所述第四出牌动作的第四分值、所述第五出牌动作的第五分值以及所述第六出牌动作的第六分值;
将所述第四出牌动作与所述第四分值确定为所述第一状态值、将所述第五出牌动作与所述第五分值确定为所述第二状态值以及将所述第六出牌动作与所述第六分值确定为所述第三状态值。
4.根据权利要求2所述的方法,其特征在于,所述将所述最大效益值所对应的第一玩家出牌动作确定为所述第一玩家的目标出牌路径之后,所述方法还包括:
根据预设训练模型对所述第一手牌数据进行训练,以得到第一训练结果,所述第一训练结果用于标识所述第一玩家、所述第二玩家、所述第三玩家以及所述第四玩家的效益值;
根据所述第一训练结果对所述第一状态值、所述第二状态值以及所述第三状态值进行更新。
5.根据权利要求3所述的方法,其特征在于,所述将所述最大效益值所对应的第一玩家出牌动作确定为所述第一玩家的目标出牌路径之后,所述方法还包括:
根据预设训练模型对所述第一手牌数据进行训练,以得到第二训练结果,所述第二训练结果用于标识所述第一玩家、所述第二玩家、所述第三玩家以及所述第四玩家的效益值;
当将所述第二训练结果沿着所述目标出牌路径回传至所述规则决策节点时,根据所述第二训练结果对所述第一状态值、所述第二状态值以及所述第三状态值进行更新。
6.根据权利要求1至5中任一所述的方法,其特征在于所述方法应用于终端设备上,所述终端设备为区块链节点设备。
7.一种计算机设备,其特征在于,所述计算机设备包括:输入/输出(I/O)接口、处理器和存储器,
所述存储器中存储有程序指令;
所述处理器用于执行存储器中存储的程序指令,执行如权利要求1至6中任一所述的方法。
8.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在计算机设备上运行时,使得所述计算机设备执行如权利要求1至6中任一项所述的方法。
CN201910865634.6A 2019-09-12 2019-09-12 一种数据处理的方法以及相关装置 Active CN110555529B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910865634.6A CN110555529B (zh) 2019-09-12 2019-09-12 一种数据处理的方法以及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910865634.6A CN110555529B (zh) 2019-09-12 2019-09-12 一种数据处理的方法以及相关装置

Publications (2)

Publication Number Publication Date
CN110555529A CN110555529A (zh) 2019-12-10
CN110555529B true CN110555529B (zh) 2022-07-08

Family

ID=68740281

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910865634.6A Active CN110555529B (zh) 2019-09-12 2019-09-12 一种数据处理的方法以及相关装置

Country Status (1)

Country Link
CN (1) CN110555529B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111265878B (zh) * 2020-01-14 2022-05-13 腾讯科技(深圳)有限公司 数据处理方法、装置、电子设备及存储介质
CN112685921B (zh) * 2021-03-12 2021-06-15 中至江西智能技术有限公司 一种高效精确搜索的麻将智能决策方法、系统及设备
CN116021517A (zh) * 2022-12-30 2023-04-28 北京新睿桥科技有限公司 一种桥牌机器人

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106339582A (zh) * 2016-08-19 2017-01-18 北京大学深圳研究生院 一种基于机器博弈技术的棋牌类游戏自动化残局生成方法
CN109508789A (zh) * 2018-06-01 2019-03-22 北京信息科技大学 预测手牌的方法、存储介质、处理器以及设备
CN109908591A (zh) * 2019-03-19 2019-06-21 网易(杭州)网络有限公司 一种虚拟对象的决策方法、模型构建方法和装置
CN109934349A (zh) * 2019-02-25 2019-06-25 重庆邮电大学 一种基于剪枝搜索的简单吃墩博弈求解方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7590589B2 (en) * 2004-09-10 2009-09-15 Hoffberg Steven M Game theoretic prioritization scheme for mobile ad hoc networks permitting hierarchal deference

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106339582A (zh) * 2016-08-19 2017-01-18 北京大学深圳研究生院 一种基于机器博弈技术的棋牌类游戏自动化残局生成方法
CN109508789A (zh) * 2018-06-01 2019-03-22 北京信息科技大学 预测手牌的方法、存储介质、处理器以及设备
CN109934349A (zh) * 2019-02-25 2019-06-25 重庆邮电大学 一种基于剪枝搜索的简单吃墩博弈求解方法
CN109908591A (zh) * 2019-03-19 2019-06-21 网易(杭州)网络有限公司 一种虚拟对象的决策方法、模型构建方法和装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A Model-Based Approach to Optimizing Ms. Pac-Man Game Strategies in Real Time;Greg Foderaro,and etc;《IEEE Transactions on Computational Intelligence and AI in Games ( Volume: 9, Issue: 2, June 2017)》;20160129;第9卷(第2期);第153-165页 *
计算机博弈的研究与发展;王亚杰等;《智能系统学报》;20161231;第11卷(第6期);第788-798页 *

Also Published As

Publication number Publication date
CN110555529A (zh) 2019-12-10

Similar Documents

Publication Publication Date Title
CN109499068B (zh) 对象的控制方法和装置、存储介质、电子装置
CN110555529B (zh) 一种数据处理的方法以及相关装置
CN109513215B (zh) 一种对象匹配方法、模型训练方法以及服务器
KR102577365B1 (ko) 플레이어의 경쟁형 게임플레이 참여 장려
CN107970608A (zh) 关卡游戏的设置方法和装置、存储介质、电子装置
CN108553903B (zh) 控制机器人玩家方法及装置
CN112016704B (zh) Ai模型训练方法、模型使用方法、计算机设备及存储介质
US20200324206A1 (en) Method and system for assisting game-play of a user using artificial intelligence (ai)
CN112791394A (zh) 游戏模型训练方法、装置、电子设备及存储介质
CN109011580A (zh) 残局牌面获取方法、装置、计算机设备及存储介质
US20230280873A1 (en) Interface display method and apparatus, device, and storage medium
CN110598853B (zh) 一种模型训练的方法、信息处理的方法以及相关装置
CN111569429A (zh) 模型训练方法、模型使用方法、计算机设备及存储介质
CN112742029B (zh) 一种模拟操作的方法、游戏测试的方法以及相关装置
CN110659023B (zh) 一种程序化内容生成的方法以及相关装置
CN110458295B (zh) 基于人工智能的棋牌关卡生成方法、训练方法及装置
CN109529358B (zh) 特征整合方法和装置及电子装置
CN111111203A (zh) 一种机器人的训练方法及装置、技能释放方法及装置
Charleer et al. Towards an open standard for gameplay metrics
CN110555480A (zh) 一种训练数据生成的方法及相关装置
CN112121441B (zh) 虚拟对象的配对方法和装置及存储介质
CN109999497B (zh) 虚拟对象的控制方法和装置、存储介质和电子装置
US11704980B2 (en) Method, apparatus, and computer storage medium for outputting virtual application object
CN109873876A (zh) 一种分布式虚拟环境的交互和计算负载均衡分配的方法
CN115944921A (zh) 游戏数据处理方法、装置、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant