CN107292389A - 计算机博弈策略的制定方法及装置 - Google Patents
计算机博弈策略的制定方法及装置 Download PDFInfo
- Publication number
- CN107292389A CN107292389A CN201710471723.3A CN201710471723A CN107292389A CN 107292389 A CN107292389 A CN 107292389A CN 201710471723 A CN201710471723 A CN 201710471723A CN 107292389 A CN107292389 A CN 107292389A
- Authority
- CN
- China
- Prior art keywords
- game
- strategies
- data element
- element set
- party
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/041—Abduction
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
技术领域
本发明涉及计算机游戏技术领域,特别涉及一种计算机博弈策略的制定方法及装置。
背景技术
随着个人计算机和互联网的普及,越来越多的博弈学术者和棋牌爱好者通过PC、互联网对博弈行为进行研究或参与多人竞技活动。单机或线上博弈活动,在有用户离开或掉线等无法进行博弈行为时,从用户主观意愿出发,往往希望博弈能够继续正常进行,也即,存在接替该玩家继续博弈的需求,从而产生了智能博弈,可以使得用户能够继续进行博弈,保证了游戏的持续性,智能博弈对用户研究、体验以及博弈系统都极为重要。
计算机博弈,也称机器博弈,是一个极具挑战与发展前景的计算机研究领域。现有的很多重要理论和技术方法诸如各类搜索算法及智能方法,最初的提出都是为了解决存在于棋类博弈中的某些问题。对于计算机博弈的研究最早可以追溯到半个世纪以前,在过去的五六十年里,人工智能的学者们呕心沥血地研究了计算机博弈中的包括奥赛罗、国际象棋、跳棋、五子棋、围棋等,取得了大量傲人的成果。
棋类博弈的规则特点是博弈方的局势很明朗,博弈数据元集合公开化。与棋类游戏相比较,以牌类博弈规则举例,对其他博弈方的博弈数据元集并不可知的博弈规则,有以下很明显的特点:
首先,棋类游戏各博弈方对局势的发展都是可预测的,博弈数据元集公开;而牌类游戏则大多是在固定博弈数据元总集合的前提下,对其他博弈方博弈数据元集并不可知的情况下进行;
其次,棋类博弈方一般为2人,牌类博弈则存在搭档和多人参与的概念,使得博弈策略的制定需要考虑更多的因素,需要更精准的预判;
最后,由于牌类博弈中其他博弈方数据元并不公开化,直接计算得出的策略空间非常巨大,即时间复杂度和空间复杂度都很大,因此,对博弈方法的设计要求很高。
现有技术中,提供了一种采用类似遗传算法来解决自动博弈的技术方案,解决的问题是:如何筛选出合理的博弈策略。通过计算机玩家在博弈活动中的身份采取不同的博弈策略,借助遗传算法在博弈过程中不断演化,产生更加智能的博弈策略。但是,由于该方法存在较大的局限性,无法达到学术研究和商用目的。该方法存在的主要问题如下:
1、该方法需要对牌局演化很多遍才能达到收敛效果,并不能快速制定出合理的博弈策略,学习速度过于缓慢;
2、该方法的前提是对同一牌局的演化,即要求该牌局必须固定,然后再进行很多遍策略基因杂交进化。而在实际博弈过程中,每次博弈开始时的牌局是千变万化的,所以该方法无法在新牌局开始时起到智能博弈的效果;
3、该方法生成各博弈方基因库和随机策略基因的前提是将其他博弈方不可知的博弈数据元集合公开给己方,即通过作弊的方式将各博弈方数据元集告知己方后再进行计算。
现有技术中提供的方案,实质上通过作弊的方式将各方博弈数据元集合公开化进行计算,并不存在对不可知数据元集合的估算,也即,该方式实质上是将数据元不可知的博弈规则当作数据元公开化的博弈规则来处理,这种违背博弈规则的做法,无论在学术研究还是商业运作上都是不允许的,不具有实际使用价值。
发明内容
本发明实施例提供一种计算机博弈策略的制定方法及装置,科学程度高、针对性强,智能化程度高,能够有效提升己方的胜算概率。
一方面,本发明实施例提供一种计算机博弈策略的制定方法,包括:
获取博弈数据元全集和参与博弈的已方数据元集;
根据所述博弈数据元全集和己方数据元集,估算已方之外的每个参与方的数据元集,所述己方之外的每个参与方的数据元集之和为所述己方数据元集的补集;
根据所述已方数据元集和估算的每个所述参与方的数据元集,确定所有数据项集;
根据预设的博弈规则和所述所有数据项集,构建博弈树;
采用所述博弈树制定针对当前博弈局面的博弈策略。
可选的,在构建所述博弈树之前,所述方法还包括:
从预设博弈心理库中查找是否存在与当前博弈局面匹配的博弈策略,所述预设心理库中的博弈策略包括手动输入的针对当前博弈局面的博弈策略和针对历史上每个博弈局面所制定的博弈策略;
如果存在,则确定所述与当前博弈局面匹配的博弈策略作为制定的博弈策略;
如果不存在,则在采用所述博弈树制定博弈策略后,将所述博弈策略更新存储至所述博弈心理库。
可选的,采用所述博弈树制定博弈策略,包括:
根据所述已方数据元集和估算的每个所述参与方的数据元集,计算所述博弈树的每个有效分支的存在置信度;
获取置信度阈值和目标收益;
从所述每个有效分支的存在置信度中选择置信度大于所述置信度阈值的有效分支对应的博弈策略,作为备选的博弈策略;
从所述备选的博弈策略中,选择符合所述目标收益的博弈策略,作为制定的博弈策略。
可选的,在已方之外的任一目标参与方执行博弈操作后,所述方法还包括:
获取所述目标参与方执行博弈操作的博弈数据;
根据所述博弈数据对所述目标参与方的数据元集进行缩小,并对所述博弈树中确定不存在的分支进行剪除。
可选的,在采用所述博弈树制定博弈策略后,所述方法还包括:
采用博弈策略执行博弈,并记录博弈策略的实际执行结果;
获取博弈策略在执行前的预期执行结果和实际执行结果;
根据所述预期执行结果和所述实际执行结果对比,对所述己方数据元集和已方之外的每个参与方的数据元集进行绝对收缩,并对所述已方之外的每个参与方的数据元集中各元素的存在概率进行修正,以及对所述博弈树的每个有效分支的存在置信度进行调整。
另一方面,本发明实施例提供一种计算机博弈策略的制定装置,包括:
第一获取单元,用于获取博弈数据元全集和参与博弈的已方数据元集;
估算单元,用于根据所述博弈数据元全集和己方数据元集,估算已方之外的每个参与方的数据元集,所述己方之外的每个参与方的数据元集之和为所述己方数据元集的补集;
第一确定单元,用于根据所述已方数据元集和估算的每个所述参与方的数据元集,确定所有数据项集;
构建单元,用于根据预设的博弈规则和所述所有数据项集,构建博弈树;
制定单元,用于采用所述博弈树制定针对当前博弈局面的博弈策略。
可选的,所述装置还包括:
查找单元,用于在构建所述博弈树之前,从预设博弈心理库中查找是否存在与当前博弈局面匹配的博弈策略,所述预设心理库中的博弈策略包括手动输入的针对当前博弈局面的博弈策略和针对历史上每个博弈局面所制定的博弈策略;
第二确定单元,用于在存在与当前博弈局面匹配的博弈策略时,确定所述与当前博弈局面匹配的博弈策略作为制定的博弈策略;
更新存储单元,用于在不存在与当前博弈局面匹配的博弈策略时,采用所述博弈树制定博弈策略后,将所述博弈策略更新存储至所述博弈心理库。
可选的,所述制定单元,包括:
计算模块,用于根据所述已方数据元集和估算的每个所述参与方的数据元集,计算所述博弈树的每个有效分支的存在置信度;
获取模块,用于获取置信度阈值和目标收益;
第一选择模块,用于从所述每个有效分支的存在置信度中选择置信度大于所述置信度阈值的有效分支对应的博弈策略,作为备选的博弈策略;
第二选择模块,用于从所述备选的博弈策略中,选择符合所述目标收益的博弈策略,作为制定的博弈策略。
可选的,所述装置还包括:
第二获取单元,用于在已方之外的任一目标参与方执行博弈操作后,获取所述目标参与方执行博弈操作的博弈数据;
第一修正单元,用于根据所述博弈数据对所述目标参与方的数据元集进行缩小,并对所述博弈树中确定不存在的分支进行剪除。
可选的,所述装置还包括:
执行单元,用于在采用所述博弈树制定博弈策略后,采用博弈策略执行博弈;
记录单元,用于记录博弈策略的实际执行结果;
第三获取单元,用于获取博弈策略在执行前的预期执行结果和实际执行结果;
第二修正单元,用于根据所述预期执行结果和所述实际执行结果对比,对所述己方数据元集和已方之外的每个参与方的数据元集进行绝对收缩,并对所述已方之外的每个参与方的数据元集中各元素的存在概率进行修正,以及对所述博弈树的每个有效分支的存在置信度进行调整。
本发明实施例提供的计算机博弈策略的制定方法及装置,通过获取博弈数据元全集和参与博弈的已方数据元集;根据博弈数据元全集和己方数据元集,估算已方之外的每个参与方的数据元集,其中,己方之外的每个参与方的数据元集之和为己方数据元集的补集;根据已方数据元集和估算的每个参与方的数据元集,确定所有数据项集;根据预设的博弈规则和所有数据项集,构建博弈树;采用博弈树制定针对当前博弈局面的博弈策略。该方法所制定的博弈策略科学程度高、针对性强,智能化程度高,能够有效提升己方的胜算概率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例提供的一种计算机博弈策略的制定方法的流程图;
图2为本发明实施例提供的一种计算机博弈策略的制定装置的流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
以下对本专利申请中所可能涉及或使用的名词及术语进行解释如下:
博弈规则:棋牌游戏中,参与博弈的各方制定的游戏规则,包括:博弈总数据基本元集、允许的博弈数据项、参与方式及博弈取胜的定义等;
(博弈)基本数据元集:博弈活动规定的用来进行博弈的基本数据元的集合,其中,多个博弈基本数据元构成一个博弈数据项;
(博弈)数据项集合:博弈规则规定的允许博弈方每次出示的博弈点数的集合。一个博弈数据项由多个博弈基本数据元构成,是博弈树节点基本组成部分;
预估基本数据元集:由基本数据元集、上局博弈数据项、博弈局面、博弈规则和博弈心理推测出的范围更小的博弈数据元的集合;
博弈树:根据博弈方的数据元集合和博弈规则计算出的树形博弈分支。博弈树节点,主要是遍历得出的数据项;
Alpha-Beta剪枝:常用人机博弈对抗的搜索算法,旨在减少博弈树中的搜索节点数;
分支置信度:通过预估基本数据元集合计算得出的某博弈树分支是否存在的概率;
估值函数:通过该函数的结果来确定博弈树的走向。
本专利申请的一个实施例提供了一种计算机博弈策略的制定方法,如图1所示,包括以下步骤S101-S105:
步骤S101:获取博弈数据元全集和参与博弈的已方数据元集;
步骤S102:根据博弈数据元全集和己方数据元集,估算已方之外的每个参与方的数据元集,其中,己方之外的每个参与方的数据元集之和为己方数据元集的补集;
步骤S103:根据已方数据元集和估算的每个参与方的数据元集,确定所有数据项集;
步骤S104:根据预设的博弈规则和所有数据项集,构建博弈树;
步骤S105:采用博弈树制定针对当前博弈局面的博弈策略。
本发明实施例提供的计算机博弈策略的制定方法,对其他博弈方未知博弈数据元集合的估算,能够满足大多数博弈规则。博弈常为对抗性博弈,己方对其他方包括对立方和搭档的详细数据元不会完全知悉,所谓“知己知彼,百战不殆”的实质就是,通过对未知博弈数据元集合的恰当估算,并以此制定出恰当的博弈策略,能够有效提升博弈胜算的概率,达到克敌制胜的目的。
在本发明的一个实施例中,在构建所述博弈树之前,上述计算机博弈策略的制定可以还包括以下步骤:
从预设博弈心理库中查找是否存在与当前博弈局面匹配的博弈策略,其中,预设心理库中的博弈策略包括手动输入的针对当前博弈局面的博弈策略和针对历史上每个博弈局面所制定的博弈策略;
如果存在,则确定与当前博弈局面匹配的博弈策略作为制定的博弈策略;
如果不存在,则在采用博弈树制定博弈策略后,将博弈策略更新存储至所述博弈心理库。
在本发明的一个实施例中,上述采用博弈树制定博弈策略的步骤,具体可以包括以下步骤:
根据已方数据元集和估算的每个参与方的数据元集,计算博弈树的每个有效分支的存在置信度;
获取置信度阈值和目标收益;
从每个有效分支的存在置信度中选择置信度大于置信度阈值的有效分支对应的博弈策略,作为备选的博弈策略;
从备选的博弈策略中,选择符合目标收益的博弈策略,作为制定的博弈策略。
在本发明的另外一个实施例中,在已方之外的任一目标参与方执行博弈操作后,上述计算机博弈策略的制定方法还包括:
获取所述目标参与方执行博弈操作的博弈数据;
根据所述博弈数据对所述目标参与方的数据元集进行缩小,并对所述博弈树中确定不存在的分支进行剪除。
在本发明的另外一个实施例中,在采用所述博弈树制定博弈策略后,上述计算机博弈策略的制定方法还可以包括:
采用博弈策略执行博弈,并记录博弈策略的实际执行结果;
获取博弈策略在执行前的预期执行结果和实际执行结果;
根据预期执行结果和实际执行结果对比,对己方数据元集和已方之外的每个参与方的数据元集进行绝对收缩,并对已方之外的每个参与方的数据元集中各元素的存在概率进行修正,以及对博弈树的每个有效分支的存在置信度进行调整。
由于博弈策略的制定讲求时效性,对错误的策略和预估基本数据元集及时修正。对不可知博弈数据元集的实时计算和对博弈分支存在置信度的实时修正,为具有时效性博弈策略的制定过程,符合人类对博弈局面的追溯和策略的思考过程。
以下以一个具体实施例对本专利申请提供的计算机博弈策略的制定方法的具体过程及应用进行详细介绍如下:
步骤S301:博弈开始。
读取智能程度的设置,包括博弈树遍历最大深度SearchMaxDepth,策略胜率最小置信度StrategyMinConfidence,存储数据集大小MemorySize和对特殊数据的遗忘权重MemoryWeight,分别模拟人类心算能力、风险评估和记忆能力。
步骤S302:根据已知的博弈数据构建其他用户的原始数据集PlayersDataSet,初始化各元素估值Valuations为1。在博弈过程中根据再次获取的数据和博弈局面信息进行自我修正。
步骤S303:构建博弈树GameTree。根据各用户的数据集PlayerDataSet初始值构建博弈树,故博弈树各节点权重NodeWeight初始为1。
步骤S304:判断是否轮到己方博弈。
步骤S305:如果轮到其他用户博弈(己方之外的每个参与方),则根据获得的用户博弈数据,缩小该用户的数据集PlayerDataSet元素范围,同时剪掉计算出的不可能存在的博弈树分支。
步骤S306:如果轮到己方博弈,通过各节点权重的计算结果,对博弈树进行Alpha-Beta剪枝搜索,制定策略权重StrategyWeight满足条件的博弈树分支。具体计算公式如下:
(j为分支序号,N为搜索深度MaxSearchDepth,NodeWgight为节点权重)
步骤S307:更新己方的博弈数据。例如:可以为删除已经公开的博弈数据信息等。
步骤S308:是否满足博弈结束条件。博弈结束条件,可以包括:正常的博弈结束和用户中途弃权导致博弈无法再进行的情况,具体可以参考所设置的博弈规则。
步骤S309:根据当前博弈局面,估算刚刚完成博弈行为的用户的未知数据在其数据集中存在的概率PlayerDataProbability,该概率的计算非常重要,直接影响博弈树节点权重的计算。数据存在的概率决定节点存在的概率,结合Alpha-Beta剪枝搜索到目标深度SearchMaxDepth时确定的每个节点的胜率NodeWinRate,最终才能确定策略的选择。其中,PlayerDAtaProbability与节点概率NodeProbability、节点最终权重NodeWeight之间可换算。具体关系如下:
P(Nodej)=P(Data0)*P(Data1)*...*P(Datai)
(j为博弈树节点序号,i为组成一个节点的所有数据的序号)
S310:博弈结束。
本发明实施例,通过限制记忆能力和推算能力,对自动博弈智能程度的控制。对智能程度的控制,在学术上更加方便对该方法的研究和优化;在商业上,对智能程度的控制尤为重要,实现对自动博弈智能程度的合理控制,在减少时间和空间开销方面意义重大,更重要的是通过控制智能程度才能保证各博弈方的收益均衡。本发明对智能程度的控制,能够有效模拟人类的记忆和推算能力,通过限制记忆和推算参数的设置达到控制目的。
本发明实施例提供的计算机博弈策略的制定方法,通过获取博弈数据元全集和参与博弈的已方数据元集;根据博弈数据元全集和己方数据元集,估算已方之外的每个参与方的数据元集,其中,己方之外的每个参与方的数据元集之和为己方数据元集的补集;根据已方数据元集和估算的每个参与方的数据元集,确定所有数据项集;根据预设的博弈规则和所有数据项集,构建博弈树;采用博弈树制定针对当前博弈局面的博弈策略。该方法所制定的博弈策略科学程度高、针对性强,智能化程度高,能够有效提升己方的胜算概率。
本专利申请的另外一个实施例提供了一种计算机博弈策略的制定装置,如图2所示,包括:
第一获取单元201,用于获取博弈数据元全集和参与博弈的已方数据元集;
估算单元202,用于根据博弈数据元全集和己方数据元集,估算已方之外的每个参与方的数据元集,其中,己方之外的每个参与方的数据元集之和为己方数据元集的补集;
第一确定单元203,用于根据已方数据元集和估算的每个参与方的数据元集,确定所有数据项集;
构建单元204,用于根据预设的博弈规则和所有数据项集,构建博弈树;
制定单元205,用于采用博弈树制定针对当前博弈局面的博弈策略。
可选的,上述计算机博弈策略的制定装置还可以包括:
查找单元,用于在构建博弈树之前,从预设博弈心理库中查找是否存在与当前博弈局面匹配的博弈策略,预设心理库中的博弈策略包括手动输入的针对当前博弈局面的博弈策略和针对历史上每个博弈局面所制定的博弈策略;
第二确定单元,用于在存在与当前博弈局面匹配的博弈策略时,确定与当前博弈局面匹配的博弈策略作为制定的博弈策略;
更新存储单元,用于在不存在与当前博弈局面匹配的博弈策略时,采用博弈树制定博弈策略后,将博弈策略更新存储至博弈心理库。
可选的,上述制定单元205,可以包括:
计算模块,用于根据已方数据元集和估算的每个参与方的数据元集,计算博弈树的每个有效分支的存在置信度;
获取模块,用于获取置信度阈值和目标收益;
第一选择模块,用于从每个有效分支的存在置信度中选择置信度大于置信度阈值的有效分支对应的博弈策略,作为备选的博弈策略;
第二选择模块,用于从备选的博弈策略中,选择符合目标收益的博弈策略,作为制定的博弈策略。
可选的,上述计算机博弈策略的制定装置,还可以包括:
第二获取单元,用于在已方之外的任一目标参与方执行博弈操作后,获取目标参与方执行博弈操作的博弈数据;
第一修正单元,用于根据博弈数据对目标参与方的数据元集进行缩小,并对博弈树中确定不存在的分支进行剪除。
可选的,上述计算机博弈策略的制定装置还包括:
执行单元,用于在采用博弈树制定博弈策略后,采用博弈策略执行博弈;
记录单元,用于记录博弈策略的实际执行结果;
第三获取单元,用于获取博弈策略在执行前的预期执行结果和实际执行结果;
第二修正单元,用于根据预期执行结果和实际执行结果对比,对己方数据元集和已方之外的每个参与方的数据元集进行绝对收缩,并对已方之外的每个参与方的数据元集中各元素的存在概率进行修正,以及对博弈树的每个有效分支的存在置信度进行调整。
本发明实施例提供的计算机博弈策略的制定装置,通过获取博弈数据元全集和参与博弈的已方数据元集;根据博弈数据元全集和己方数据元集,估算已方之外的每个参与方的数据元集,其中,己方之外的每个参与方的数据元集之和为己方数据元集的补集;根据已方数据元集和估算的每个参与方的数据元集,确定所有数据项集;根据预设的博弈规则和所有数据项集,构建博弈树;采用博弈树制定针对当前博弈局面的博弈策略。该方法所制定的博弈策略科学程度高、针对性强,智能化程度高,能够有效提升己方的胜算概率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种计算机博弈策略的制定方法,其特征在于,包括:
获取博弈数据元全集和参与博弈的已方数据元集;
根据所述博弈数据元全集和己方数据元集,估算已方之外的每个参与方的数据元集,所述己方之外的每个参与方的数据元集之和为所述己方数据元集的补集;
根据所述已方数据元集和估算的每个所述参与方的数据元集,确定所有数据项集;
根据预设的博弈规则和所述所有数据项集,构建博弈树;
采用所述博弈树制定针对当前博弈局面的博弈策略。
2.根据权利要求1所述的方法,其特征在于,在构建所述博弈树之前,所述方法还包括:
从预设博弈心理库中查找是否存在与当前博弈局面匹配的博弈策略,所述预设心理库中的博弈策略包括手动输入的针对当前博弈局面的博弈策略和针对历史上每个博弈局面所制定的博弈策略;
如果存在,则确定所述与当前博弈局面匹配的博弈策略作为制定的博弈策略;
如果不存在,则在采用所述博弈树制定博弈策略后,将所述博弈策略更新存储至所述博弈心理库。
3.根据权利要求1所述的方法,其特征在于,采用所述博弈树制定博弈策略,包括:
根据所述已方数据元集和估算的每个所述参与方的数据元集,计算所述博弈树的每个有效分支的存在置信度;
获取置信度阈值和目标收益;
从所述每个有效分支的存在置信度中选择置信度大于所述置信度阈值的有效分支对应的博弈策略,作为备选的博弈策略;
从所述备选的博弈策略中,选择符合所述目标收益的博弈策略,作为制定的博弈策略。
4.根据权利要求3所述的方法,其特征在于,在已方之外的任一目标参与方执行博弈操作后,所述方法还包括:
获取所述目标参与方执行博弈操作的博弈数据;
根据所述博弈数据对所述目标参与方的数据元集进行缩小,并对所述博弈树中确定不存在的分支进行剪除。
5.根据权利要求4所述的方法,其特征在于,在采用所述博弈树制定博弈策略后,所述方法还包括:
采用博弈策略执行博弈,并记录博弈策略的实际执行结果;
获取博弈策略在执行前的预期执行结果和实际执行结果;
根据所述预期执行结果和所述实际执行结果对比,对所述己方数据元集和已方之外的每个参与方的数据元集进行绝对收缩,并对所述已方之外的每个参与方的数据元集中各元素的存在概率进行修正,以及对所述博弈树的每个有效分支的存在置信度进行调整。
6.一种计算机博弈策略的制定装置,其特征在于,包括:
第一获取单元,用于获取博弈数据元全集和参与博弈的已方数据元集;
估算单元,用于根据所述博弈数据元全集和己方数据元集,估算已方之外的每个参与方的数据元集,所述己方之外的每个参与方的数据元集之和为所述己方数据元集的补集;
第一确定单元,用于根据所述已方数据元集和估算的每个所述参与方的数据元集,确定所有数据项集;
构建单元,用于根据预设的博弈规则和所述所有数据项集,构建博弈树;
制定单元,用于采用所述博弈树制定针对当前博弈局面的博弈策略。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
查找单元,用于在构建所述博弈树之前,从预设博弈心理库中查找是否存在与当前博弈局面匹配的博弈策略,所述预设心理库中的博弈策略包括手动输入的针对当前博弈局面的博弈策略和针对历史上每个博弈局面所制定的博弈策略;
第二确定单元,用于在存在与当前博弈局面匹配的博弈策略时,确定所述与当前博弈局面匹配的博弈策略作为制定的博弈策略;
更新存储单元,用于在不存在与当前博弈局面匹配的博弈策略时,采用所述博弈树制定博弈策略后,将所述博弈策略更新存储至所述博弈心理库。
8.根据权利要求6所述的装置,其特征在于,所述制定单元,包括:
计算模块,用于根据所述已方数据元集和估算的每个所述参与方的数据元集,计算所述博弈树的每个有效分支的存在置信度;
获取模块,用于获取置信度阈值和目标收益;
第一选择模块,用于从所述每个有效分支的存在置信度中选择置信度大于所述置信度阈值的有效分支对应的博弈策略,作为备选的博弈策略;
第二选择模块,用于从所述备选的博弈策略中,选择符合所述目标收益的博弈策略,作为制定的博弈策略。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第二获取单元,用于在已方之外的任一目标参与方执行博弈操作后,获取所述目标参与方执行博弈操作的博弈数据;
第一修正单元,用于根据所述博弈数据对所述目标参与方的数据元集进行缩小,并对所述博弈树中确定不存在的分支进行剪除。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
执行单元,用于在采用所述博弈树制定博弈策略后,采用博弈策略执行博弈;
记录单元,用于记录博弈策略的实际执行结果;
第三获取单元,用于获取博弈策略在执行前的预期执行结果和实际执行结果;
第二修正单元,用于根据所述预期执行结果和所述实际执行结果对比,对所述己方数据元集和已方之外的每个参与方的数据元集进行绝对收缩,并对所述已方之外的每个参与方的数据元集中各元素的存在概率进行修正,以及对所述博弈树的每个有效分支的存在置信度进行调整。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710471723.3A CN107292389A (zh) | 2017-06-20 | 2017-06-20 | 计算机博弈策略的制定方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710471723.3A CN107292389A (zh) | 2017-06-20 | 2017-06-20 | 计算机博弈策略的制定方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107292389A true CN107292389A (zh) | 2017-10-24 |
Family
ID=60097823
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710471723.3A Pending CN107292389A (zh) | 2017-06-20 | 2017-06-20 | 计算机博弈策略的制定方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107292389A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021093452A1 (zh) * | 2019-11-12 | 2021-05-20 | 腾讯科技(深圳)有限公司 | 基于人工智能的博弈业务执行方法、装置、设备及介质 |
-
2017
- 2017-06-20 CN CN201710471723.3A patent/CN107292389A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021093452A1 (zh) * | 2019-11-12 | 2021-05-20 | 腾讯科技(深圳)有限公司 | 基于人工智能的博弈业务执行方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110404265B (zh) | 一种基于博弈残局在线解算的多人非完备信息机器博弈方法、装置、系统及存储介质 | |
Gilpin et al. | Better automated abstraction techniques for imperfect information games, with application to Texas Hold'em poker | |
Billings et al. | Opponent modeling in poker | |
Lee et al. | The computational intelligence of MoGo revealed in Taiwan's computer Go tournaments | |
CN109091868B (zh) | 对战行为确定的方法、装置、计算机设备及存储介质 | |
CN110119804A (zh) | 一种基于强化学习的爱恩斯坦棋博弈算法 | |
JP6246817B2 (ja) | ゲーム処理装置、ゲーム処理方法及びコンピュータプログラム | |
CN111729300A (zh) | 基于蒙特卡洛树搜索和卷积神经网络斗地主策略研究方法 | |
Niklaus et al. | Survey of artificial intelligence for card games and its application to the Swiss game Jass | |
Świechowski | Game AI competitions: motivation for the imitation game-playing competition | |
CN114676757A (zh) | 一种多人非完备信息博弈游戏策略生成方法和装置 | |
Nkongolo | Game theory based artificial player for morabaraba game | |
CN101901304A (zh) | 斗地主游戏中计算机玩家智能算法的实现方法 | |
CN107292389A (zh) | 计算机博弈策略的制定方法及装置 | |
Franken et al. | Evolving intelligent game-playing agents | |
Shen et al. | Imperfect and cooperative guandan game system | |
Chen et al. | Challenging artificial intelligence with multiopponent and multimovement prediction for the card game Big2 | |
Guo et al. | Artificial Intelligence Algorithm for the Game of NoGo based on Value Evaluation | |
Balla et al. | PyTAG: Challenges and Opportunities for Reinforcement Learning in Tabletop Games | |
Li et al. | Speedup Training Artificial Intelligence for Mahjong via Reward Variance Reduction | |
Zafar et al. | A constructive approach for general video game level generation | |
Chen et al. | A Novel Reward Shaping Function for Single-Player Mahjong | |
Li et al. | NFSP-PER: An efficient sampling NFSP-based method with prioritized experience replay | |
Setiawan | Playing the SOS Game Using Feasible Greedy Strategy | |
Ramirez et al. | Pokerbot: Hand strength reinforcement learning |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171024 |