[发明专利]一种在常数时间内判断五子棋禁手和棋形属性的方法有效
申请号: | 201910686213.7 | 申请日: | 2019-07-26 |
公开(公告)号: | CN110275739B | 公开(公告)日: | 2023-03-28 |
发明(设计)人: | 路纲;吴晓军;李海霞 | 申请(专利权)人: | 陕西师范大学 |
主分类号: | G06F9/448 | 分类号: | G06F9/448;G06F16/22;G06N5/025;A63F3/00;A63F3/02 |
代理公司: | 北京前审知识产权代理有限公司 11760 | 代理人: | 张波涛;尹秀峰 |
地址: | 710062 陕西省*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 常数 时间内 判断 五子棋 和棋 属性 方法 | ||
一种在常数时间内判断五子棋禁手和棋形属性的方法,包括:S100:定义所有棋形和对应的棋形值;S200:在棋型库中用结构体矩阵存储黑白双方在行棋过程中可能遇到的所有棋型;S300:将棋型的总长度、已有的棋子数量及位置、空位置映射成二进制串,依据二进制串所代表的数值,在常数时间内在棋型库中查询到每个棋型中的空位的棋形属性;S400:通过对一个空位点在四个方向上的棋形值分析判断黑方在该空位点行棋是否是黑方的禁手,同时确定受影响的各空位点的棋形值。
技术领域
本公开属于人工智能与机器博弈技术领域,具体涉及一种快速判断禁手和棋形属性的五子棋博弈方法。
背景技术
机器博弈又称计算机博弈,被喻为人工智能皇冠上的明珠,多以下棋为例研究其规律,该领域最著名的事件是深蓝(Deep Blue)超级电脑于1997年5月以3.5∶2.5击败国际象棋世界冠军卡斯巴罗夫。
五子棋是中华民族民间传统文化的代表之一,同时也是一个典型的具有完备信息的双人零和博弈游戏。典型的计算机弈棋系统通常可分为四部分:知识表示、走法生成、评估函数、博弈树搜索。三手交换、五手两打及限制开局棋形等规则用计算机实现起来没有任何难度,编制高智能职业规则五子棋软件的关键是看它能否快速判断“禁手及棋形属性”,因为后面的各类博弈树搜索算法和棋形库匹配等人工智能(AI)技术必须以此判断为基础。在采用相同搜索算法的情况下,判断的速度越快,同等时间内搜索的范围就越大,棋力也就越强。
目前五子棋博弈方法中棋力较强的大都未公开具体方法,对关键问题,即如何定义棋形属性和怎么实现快速判断禁手和查找棋形属性均未说明。
发明内容
鉴于此,本发明提供了一种在常数时间内判断五子棋禁手和棋形属性的方法,包括如下步骤:
S100:定义所有棋形和对应的棋形值;
S200:在棋型库中用结构体矩阵存储黑白双方在行棋过程中可能遇到的所有棋型;
S300:将棋型的总长度、已有的棋子数量及位置、空位置映射成二进制串,依据二进制串所代表的数值,在常数时间内在棋型库中查询到每个棋型中的空位的棋形属性;
S400:通过对一个空位点在四个方向上的棋形值分析判断黑方在该空位点行棋是否是黑方的禁手,同时确定受影响的各空位点的棋形值。
通过上述技术方案,本方法不仅能在常数时间判断禁手,还能同时确定棋盘上各空点的棋形属性,理论时间复杂度最优,实际操作步骤少效率高,只在最初载入棋型库时有一次性读取耗时,是编制高性能五子棋人工智能软件的基础。
附图说明
图1是本发明一个实施例中所提供的一种在常数时间内判断五子棋禁手和棋形属性的方法的流程示意图;
图2是本发明一个实施例中LP[6][10]存储的部分黑棋棋型属性;
图3是本发明一个实施例中LP[6][10]的第138行的黑棋棋型定义示例图。
具体实施方式
在一个实施例中,本公开中出现的术语解释如下:
1)方向:棋盘上共有4种方向即,横(从左至右),竖(从上至下),左斜(从左上至右下),右斜(从右上至左下)。
2)正向:棋盘上任意点A的右方、下方、右下方和左下方向统称为“点A的正向”。
3)负向:棋盘上任意点A的左方、上方、左上方和右上方向统称为“点A的负向”。
4)空位:棋盘上未落子的位置称为空位。以下举例时用“□”表示棋盘上的空位,用●、○分别表示黑、白方棋子。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于陕西师范大学,未经陕西师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910686213.7/2.html,转载请声明来源钻瓜专利网。