[发明专利]中国象棋基于多重优化、迭代加深剪枝的搜索方法有效
| 申请号: | 201710733645.X | 申请日: | 2017-08-24 |
| 公开(公告)号: | CN107622092B | 公开(公告)日: | 2019-11-12 |
| 发明(设计)人: | 连晓颖;张雪洁;王乐进;杨泽;朱云 | 申请(专利权)人: | 河海大学 |
| 主分类号: | G06F16/901 | 分类号: | G06F16/901;G06F16/903;A63F3/02 |
| 代理公司: | 南京经纬专利商标代理有限公司 32200 | 代理人: | 姜慧勤 |
| 地址: | 211100 江苏*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | 本发明公开了中国象棋基于多重优化、迭代加深剪枝的搜索方法,该方法是在传统的Alpha‑Beta剪枝搜索算法的基础上叠加了一系列优化搜索的方法,极大地提升了传统Alpha‑Beta算法的剪枝效率和搜索准确率。包括:(1)设计的迭代加深搜索技术可充分利用计算资源,增大剪枝几率;(2)加入开局库使系统在棋局的一开始便具有了专业的走棋风格;(3)构建状态机搜索机制,优化了各方法的执行顺序,使机器的思考更加具有条理性;(4)得到的优秀走法记录到历史表中使系统具备较强的学习能力。本发明算法与优化机制保证人工智能(Artificial Intelligent,AI)算法能智能地进行人机对战,且资源空间占用小,操作简单便捷,是一种具备高效AI算法的轻量级的人工智能中国象棋搜索方法。 | ||
| 搜索关键词: | 中国象棋 基于 多重 优化 加深 剪枝 搜索 方法 | ||
【主权项】:
1.中国象棋基于多重优化、迭代加深剪枝的搜索方法,其特征在于,包括如下步骤:步骤1,针对当前局面,清空置换表、杀手走法表以及历史表,初始化控制落子时间的计时器;步骤2,搜索对局开始前设置的开局库,若在开局库中搜索到当前局面的对应走法,则根据搜索结果进行落子,并结束搜索;否则进入下一步;步骤3,根据象棋规则得出当前局面的所有走法,并判断走法是否唯一,若唯一,则按照唯一走法进行落子,并结束搜索;否则设定迭代加深搜索的水平线i=1,极限深度为32,进入下一步;步骤4,从深度1到深度i进行迭代加深搜索;步骤5,将搜索时遇到的Beta截断或者Alpha截断的局面校验码、深度、标志、分值、走法记录在置换表中;搜索置换表,若在置换表中找到当前局面,判断深度是否和当前深度一致,若一致,则采用置换表中的走法虚拟落子形成新的局面,转步骤8,否则进入下一步;步骤6,将当前深度对应的所有走法中最优秀的两个走法作为杀手走法并记录在杀手走法表中,判断当前深度对应的杀手走法是否有效,若有效则采用杀手走法虚拟落子,转步骤8,否则进入下一步;步骤7,对当前局面生成所有的走法,排除掉置换表中的走法和杀手走法,按照历史表中的分值对剩余走法进行排序,按照排序第一的走法进行虚拟落子,进入下一步;步骤8,判断搜索的深度是否到达本次迭代加深搜索的水平线i,若是,则转步骤9,否则转步骤10;步骤9,当迭代加深搜索的深度到达水平线i时,进行静态搜索,当静态搜索结束后,判断水平线i是否到达极限深度,若是则转步骤14,否则,i=i+1,并返回步骤4;步骤10, 判断是否生成重复局面,若是重复局面,则继续判断是否发生单方面长将判负或者和棋的情况,若发生则停止本次迭代加深搜索,i=i+1,并返回步骤4;若未发生则进入下一步;若不是重复局面,也进入下一步;步骤11,尝试空步裁剪,并进入下一步;步骤12,判断是否已经杀棋,若已经杀棋则停止本次迭代加深搜索,i=i+1,返回步骤4,开始下一次迭代加深搜索,否则进入下一步;步骤13,将步骤5到步骤7中找到的走法记录到置换表和历史表中,判断水平线i是否到达极限深度,若到达则搜索结束,转步骤14;否则i=i+1,分别尝试步骤5到步骤7中找到的走法虚拟落子或执行步骤11中的空步裁剪,虚拟交换走子方,进行递归走棋,返回步骤4;步骤14,整个搜索过程结束,按最终搜索结果落子,并交换走子方,到玩家落子。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于河海大学,未经河海大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710733645.X/,转载请声明来源钻瓜专利网。
- 上一篇:一种数据库查询方法和装置
- 下一篇:一种从非结构化数据提取结构化数据的系统





