一种不围棋最佳落子点的确定方法及确定系统技术方案

技术编号:17994845 阅读:49 留言:0更新日期:2018-05-19 12:01
本发明专利技术公开一种不围棋最佳落子点的确定方法及确定系统,确定方法包括:获取搜索次数;根据搜索次数确定是否属于第一次落子;若是生成初始的招法表;否则,判断当前落子点是否是同种颜色的棋子围成的空白点;若是剔除当前落子点上的棋子;建立线性表和二维表;获取当前落子点;根据线性表及当前落子点清空二维表中对应位置的数据;更新线性表和二维表;判断当前棋盘中是否存在同种颜色的棋子围成的空白点;否则,根据更新后的线性表及更新后的二维表,采用上限置信区间方法确定最佳落子点。本发明专利技术提供的确定方法及确定系统,能够快速高效地确定不围棋的最佳落子点。

A method for determining the best drop point of go go and its determining system

The invention discloses a method for determining the best drop point of a non go game and a determining system. The determination method includes: obtaining the search times; determining whether it belongs to the first drop according to the number of searches; if the initial wave table is generated, or whether the current drop point is a blank point enclosed by the same pigmental chessman; In addition to the chessboard of the current drop point; set up a linear table and a two-dimensional table; get the current drop point; clear the corresponding position in the two-dimensional table according to the linear table and the current drop point; update the linear and two-dimensional tables; determine whether the current chessboard has the same color of the chessmen enclosed by the chessmen; otherwise, according to the updated line. The upper bound confidence interval method is used to determine the optimal drop point. The determination method and the determination system provided by the invention can quickly and efficiently determine the best drop point of go go.

【技术实现步骤摘要】
一种不围棋最佳落子点的确定方法及确定系统
本专利技术涉及不围棋领域,特别是涉及一种不围棋最佳落子点的确定方法及确定系统。
技术介绍
随着AlphaGo的横空出世,计算机博弈成为当今社会的一个热点,人工智能AI越来越引起人们的重视。目前的不围棋人工智能AI程序大多是基于上限置信区间算法(UpperConfidenceBoundApplytoTree,UCT)动态博弈树进行搜索的。UCT算法的基本思路就是通过随机模拟,让双方进行随机下棋,最终记录获胜方,通过10万次以上的模拟获得当前局面每个招法的胜率,选择胜率最大的招法。但是,由于不围棋每一步都有可能生成“眼”,即同种颜色的棋子围成的一个空白点,每一步都要重新更新双方的可行招法,每下一步棋都需要搜索判定,因此搜索效率低下。因此,如何快速高效地确定不围棋的最佳落子点,成为本领域技术人员亟需解决的技术问题。
技术实现思路
本专利技术的目的是提供一种不围棋最佳落子点的确定方法及确定系统,能够快速高效地确定不围棋的最佳落子点。为实现上述目的,本专利技术提供了如下方案:一种不围棋最佳落子点的确定方法,所述确定方法包括:获取搜索次数;根据所述搜索次数确定当前落子动作是否属于第一次落子,获得第一判断结果;若所述第一判断结果表示当前落子动作属于第一次落子,则采用蒙特·卡罗模拟方法生成初始的招法表,所述招法表中存储有各种落子点位置;若所述第一判断结果表示当前落子动作不属于第一次落子,则判断当前落子点是否是同种颜色的棋子围成的空白点,获得第二判断结果;若所述第二判断结果表示当前落子点是同种颜色的棋子围成的空白点,则剔除所述当前落子点上的棋子;建立线性表和二维表,其中,所述线性表的各个元素为根据当前棋盘上的各棋子的位置确定的多个落子点,所述二维表中的数据为所述线性表的各元素的序号;获取当前落子点;根据所述线性表及所述当前落子点清空二维表中与所述当前落子点对应的位置的数据;用所述线性表的最后一个元素替换所述线性表中与所述当前落子点对应的元素,并将所述线性表的最后一个元素删除,获得更新后的线性表;根据更新后的线性表更新所述二维表;根据当前棋盘上的各棋子的位置判断当前棋盘中是否存在同种颜色的棋子围成的空白点,获得第三判断结果;若所述第三判断结果表示当前棋盘不存在同种颜色的棋子围成的空白点,则根据更新后的所述线性表及更新后的所述二维表,采用上限置信区间方法确定最佳落子点。可选的,所述采用上限置信区间方法确定最佳落子点,具体包括:根据更新后的所述线性表及更新后的所述二维表,采用上限置信区间方法筛选当前胜率最高的落子点;判断当前搜索时间是否等于设定的搜索阈值,获得第四判断结果;若所述第四判断结果表示当前搜索时间小于设定的搜索阈值,则更新当前搜索时间,并返回所述“根据更新后的所述线性表及更新后的所述二维表,采用上限置信区间方法筛选当前胜率最高的落子点”;若所述第四判断结果表示当前搜索时间等于设定的搜索阈值,则将所述当前胜率最高的落子点确定为最佳落子点。可选的,所述根据更新后的所述线性表及更新后的所述二维表,采用上限置信区间方法确定最佳落子点之后,还包括:根据所述最佳落子点的位置更新棋盘信息;建立第一数组和第二数组,其中,第一数组中的每个元素为由同种颜色的棋子形成的一个连通块的根节点,所述第二数组中的元素为与所述第一数组中的根节点对应的连通块周围的空白点的个数;根据更新后的棋盘信息更新所述第一数组中的根节点信息和所述第二数组中的连通块周围的空白点的个数,返回所述“判断当前落子点是否是同种颜色的棋子围成的空白点”。一种不围棋最佳落子点的确定系统,所述确定系统包括:搜索次数获取模块,用于获取搜索次数;第一判断模块,用于根据所述搜索次数确定当前落子动作是否属于第一次落子,获得第一判断结果;招法表生成模块,用于若所述第一判断结果表示当前落子动作属于第一次落子,则采用蒙特·卡罗模拟方法生成初始的招法表,所述招法表中存储有各种落子点位置;第二判断模块,用于若所述第一判断结果表示当前落子动作不属于第一次落子,则判断当前落子点是否是同种颜色的棋子围成的空白点,获得第二判断结果;剔除模块,用于若所述第二判断结果表示当前落子点是同种颜色的棋子围成的空白点,则剔除所述当前落子点上的棋子;建表模块,用于建立线性表和二维表,其中,所述线性表的各个元素为根据当前棋盘上的各棋子的位置确定的多个落子点,所述二维表中的数据为所述线性表的各元素的序号;当前落子点获取模块,用于获取当前落子点;清空模块,用于根据所述线性表及所述当前落子点清空二维表中与所述当前落子点对应的位置的数据;线性表更新模块,用于用所述线性表的最后一个元素替换所述线性表中与所述当前落子点对应的元素,并将所述线性表的最后一个元素删除,获得更新后的线性表;二维表更新模块,用于根据更新后的线性表更新所述二维表;第三判断模块,用于根据当前棋盘上的各棋子的位置判断当前棋盘中是否存在同种颜色的棋子围成的空白点,获得第三判断结果;最佳落子点确定模块,用于若所述第三判断结果表示当前棋盘不存在同种颜色的棋子围成的空白点,则根据更新后的所述线性表及更新后的所述二维表,采用上限置信区间方法确定最佳落子点。可选的,所述最佳落子点确定模块具体包括:筛选单元,用于根据更新后的所述线性表及更新后的所述二维表,采用上限置信区间方法筛选当前胜率最高的落子点;第四判断单元,用于判断当前搜索时间是否等于设定的搜索阈值,获得第四判断结果;搜索时间更新单元,用于若所述第四判断结果表示当前搜索时间小于设定的搜索阈值,则更新当前搜索时间;最佳落子点确定单元,用于若所述第四判断结果表示当前搜索时间等于设定的搜索阈值,则将所述当前胜率最高的落子点确定为最佳落子点。可选的,所述确定系统还包括:棋盘信息更新模块,用于根据所述最佳落子点的位置更新棋盘信息;数组建立模块,用于建立第一数组和第二数组,其中,第一数组中的每个元素为由同种颜色的棋子形成的一个连通块的根节点,所述第二数组中的元素为与所述第一数组中的根节点对应的连通块周围的空白点的个数;数组更新模块,用于根据更新后的棋盘信息更新所述第一数组中的根节点信息和所述第二数组中的连通块周围的空白点的个数。根据本专利技术提供的具体实施例,本专利技术公开了以下技术效果:本专利技术提供的确定方法和确定系统,根据当前棋盘上的各棋子的位置判断当前棋盘中是否存在同种颜色的棋子围成的空白点,即本专利技术可以迅速定位“眼”的位置,每一步棋只需剔除非法招法导致的落子点上的棋子。因此,本专利技术提供的确定方法和确定系统,只需要维护棋盘上不同颜色棋子的当前可行落子点,对已落子点和新形成的“眼”(同种颜色的棋子围成的空白点)进行剔除,不需要反复的执行可行招法生成功能,因此可以大大提高模拟效率,能够快速高效地确定不围棋的最佳落子点。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1为本专利技术实施例1提供的确定方法的流程图;图2为本专利技术实施例2提供的确定系统的流程图;图3为不围棋棋盘示意图。具体实施方式下面将结合本发本文档来自技高网...
一种不围棋最佳落子点的确定方法及确定系统

【技术保护点】
一种不围棋最佳落子点的确定方法,其特征在于,所述确定方法包括:获取搜索次数;根据所述搜索次数确定当前落子动作是否属于第一次落子,获得第一判断结果;若所述第一判断结果表示当前落子动作属于第一次落子,则采用蒙特·卡罗模拟方法生成初始的招法表,所述招法表中存储有各种落子点位置;若所述第一判断结果表示当前落子动作不属于第一次落子,则判断当前落子点是否是同种颜色的棋子围成的空白点,获得第二判断结果;若所述第二判断结果表示当前落子点是同种颜色的棋子围成的空白点,则剔除所述当前落子点上的棋子;建立线性表和二维表,其中,所述线性表的各个元素为根据当前棋盘上的各棋子的位置确定的多个落子点,所述二维表中的数据为所述线性表的各元素的序号;获取当前落子点;根据所述线性表及所述当前落子点清空二维表中与所述当前落子点对应的位置的数据;用所述线性表的最后一个元素替换所述线性表中与所述当前落子点对应的元素,并将所述线性表的最后一个元素删除,获得更新后的线性表;根据更新后的线性表更新所述二维表;根据当前棋盘上的各棋子的位置判断当前棋盘中是否存在同种颜色的棋子围成的空白点,获得第三判断结果;若所述第三判断结果表示当前棋盘不存在同种颜色的棋子围成的空白点,则根据更新后的所述线性表及更新后的所述二维表,采用上限置信区间方法确定最佳落子点。...

【技术特征摘要】
1.一种不围棋最佳落子点的确定方法,其特征在于,所述确定方法包括:获取搜索次数;根据所述搜索次数确定当前落子动作是否属于第一次落子,获得第一判断结果;若所述第一判断结果表示当前落子动作属于第一次落子,则采用蒙特·卡罗模拟方法生成初始的招法表,所述招法表中存储有各种落子点位置;若所述第一判断结果表示当前落子动作不属于第一次落子,则判断当前落子点是否是同种颜色的棋子围成的空白点,获得第二判断结果;若所述第二判断结果表示当前落子点是同种颜色的棋子围成的空白点,则剔除所述当前落子点上的棋子;建立线性表和二维表,其中,所述线性表的各个元素为根据当前棋盘上的各棋子的位置确定的多个落子点,所述二维表中的数据为所述线性表的各元素的序号;获取当前落子点;根据所述线性表及所述当前落子点清空二维表中与所述当前落子点对应的位置的数据;用所述线性表的最后一个元素替换所述线性表中与所述当前落子点对应的元素,并将所述线性表的最后一个元素删除,获得更新后的线性表;根据更新后的线性表更新所述二维表;根据当前棋盘上的各棋子的位置判断当前棋盘中是否存在同种颜色的棋子围成的空白点,获得第三判断结果;若所述第三判断结果表示当前棋盘不存在同种颜色的棋子围成的空白点,则根据更新后的所述线性表及更新后的所述二维表,采用上限置信区间方法确定最佳落子点。2.根据权利要求1所述的确定方法,其特征在于,所述采用上限置信区间方法确定最佳落子点,具体包括:根据更新后的所述线性表及更新后的所述二维表,采用上限置信区间方法筛选当前胜率最高的落子点;判断当前搜索时间是否等于设定的搜索阈值,获得第四判断结果;若所述第四判断结果表示当前搜索时间小于设定的搜索阈值,则更新当前搜索时间,并返回所述“根据更新后的所述线性表及更新后的所述二维表,采用上限置信区间方法筛选当前胜率最高的落子点”;若所述第四判断结果表示当前搜索时间等于设定的搜索阈值,则将所述当前胜率最高的落子点确定为最佳落子点。3.根据权利要求1所述的确定方法,其特征在于,所述根据更新后的所述线性表及更新后的所述二维表,采用上限置信区间方法确定最佳落子点之后,还包括:根据所述最佳落子点的位置更新棋盘信息;建立第一数组和第二数组,其中,第一数组中的每个元素为由同种颜色的棋子形成的一个连通块的根节点,所述第二数组中的元素为与所述第一数组中的根节点对应的连通块周围的空白点的个数;根据更新后的棋盘信息更新所述第一数组中的根节点信息和所述第二数组中的连通块周围的空白点的个数,返回所述“判断当前落子点是否是同种颜色的棋子围成的空白点”。4.一种不围棋最佳落子点的确定系统,其特征在于,所述...

【专利技术属性】
技术研发人员:游润泽吴祖龙张家瑞
申请(专利权)人:北京理工大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1