基于PVS搜索算法的亚马逊棋博弈系统的设计

来源 :智能计算机与应用 | 被引量 : 0次 | 上传用户:awenqqw123
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  Abstract: The game of the Amazons is a game in which the complexity stands between the game of Go and Chinese Chess. Because of the huge branching factor, it is difficult to reach higher depth in the search process.Combined with heuristic and hash technology, this paper uses the PVS algorithm, and greatly improves the pruning efficiency and the search depth. The Amazons game software developed by this technology has improved the game level effectively.
  引言
  亚马逊棋是一种颇受欢迎的较新的棋盘类游戏,其行棋规则和复杂度均介于围棋和国际象棋之间。由于亚马逊棋类设计中含有较大的分支因子,使其非常适合于搜索算法的研究。亚马逊棋的棋盘构成则如图1所示。
  研究中,将给出亚马逊棋的布棋规则可表述如下。
  (1)在10×10的棋盘上红方(白方)在A4、D1、 G1和 J4位置上摆放白方4个皇后,蓝方(或黑方)在A7、 D10、G10和 J7位置上摆放黑方4个皇后。
  (2)皇后可走棋的位置与国际象棋皇后走法的规则相同。
  (3)由红方(或白方)开始游戏,每轮下棋由2步组成:
  ① 移动摆放皇后位置,规则和国际象棋皇后走棋的规则相同。
  ② 落子后以当前皇后位置为基点设置障碍,障碍摆放点的位置和皇后可摆放点的位置相同(两者使用的规则相同)。
  (4)皇后和障碍设置的线路上不得有其它棋子或障碍。
  (5)可以完成最后一步的一方为赢家。
  根据亚马逊棋的规则计算,亚马逊棋的平均分支因子达到17 000左右。与围棋相比,仅仅只是表现在规则相对简单,及搜索深度相对较小。因此,非常适合搜索算法的研究。
  亚马逊棋的博弈系统主要由估值和搜索两大部分组成,在本文中所用的估值研究包含3个方面,分别是:灵活度、位置和领域[1-2],本文探讨的主要内容则为搜索算法,对其详述如下。
  1基于PVS算法的搜索引擎
  研究可知,由于亚马逊棋的较高复杂度,将使其难于达到较高的搜索效率。目前,常用的方法有UCTS算法[3]、哈密尔顿环方法[4]等。其中,UCTS算法可以获得较高的搜索深度,但估值的精确性较差,而相对来说,哈密尔顿环的执行效率却会偏低。
  本文采用的是基于PVS算法的搜索引擎,结合Amazons棋的特点,并且引入置换表技术和历史启发技术,该次研究旨在获得较高的搜索效率,同时能够对局面进行准确估值。
  PVS是alpha-beta剪枝搜索算法的一个变种算法,其设计重点在于除主变量节点外的其它所有节点都用一个零窗口(alpha,beta)且alpha=beta 进行搜索,遵循理念就是对浅层的节点进行整理使其基本有序,并假设第一个节点是最好的,作为主变量,展开全窗口搜索。通过零窗口搜索其它节点,判断是否存在一些节点会比当前最优值更好。如果符合alpha-beta剪枝则进行剪枝,假若失败则证明当初的节点不是主变量,即需对当前节点重新发起一次全窗口搜索,作为新的主变量。本文结合了历史启发增强和置换表技术,确保了搜索效率及速度。
  置换表技术用于在搜索到结果的情况下记录最好的评分和方法,并在下一次搜索中直接返回相同的情况,大大提高了搜索效率。通常一个局面经搜索被判定为较好时,在其后继结点中往往有一些相似的局面也是较好的。历史启发就是建立在这样一种论点之上的。在搜索过程中,每当找到好的行棋方式时,加入一个增量来记录其历史分数,而经多次搜索均认定为是好方式的历史分数即会更高。对于即将到来的节点,可根据历史评分进行排序。如此一来,更好的行走方法(历史评分行棋方法)就可位列在前面,从而确保搜索的效率。
  2实验与分析
  博弈系统的性能可以从胜负和访问的节点数这2个方面进行比较。对此可阐释分述如下。
  2.1胜负比较
  胜负上的比较是对博弈系统棋力水平的直观呈现。因为每个博弈系统的最终目的便是证实自己具有较高的棋力水平。在相同限制条件下进行博弈,就可有效评判该博弈系统的水平高低。
  首先双方博弈系统基于同一个估值函数,将PVS搜索迭代时间限定在1 s,将alpha-beta剪枝搜索算法的最大深度限定在11层。然后设置基于PVS算法的博弈系统为先手,alpha-beta剪枝算法为后手,对弈一定局数以后,先、后手互换。接着为PVS算法的博弈系统设置一个随机的开局,开始双方搏杀对弈,这些随机的开局将会为基于PVS算法的博弈系統造成一些难度。实验运行后,可以得到PVS算法的博弈系统胜率可参见表1。
  由表1可知,基于PVS算法的博弈系统在棋力上远胜于基于alpha-beta算法的效果表现。双方基于相同的估值算法,从棋力角度说明PVS算法更适用于亚马逊棋。
  2.2节点比较
  访问节点数上的比较反映了搜索算法在时间上的消耗,在公平的限制条件下,也折射出搜索算法在这个博弈游戏中的优劣。
  本文通过6次函数拟合了访问节点_行棋回合函数。通过对图表的处理分析,在公平的博弈条件限制下,PVS算法访问的节点数远超过了alpha-beta算法的最终统计数值。PVS算法的访问节点_行棋回合函数则如图2所示。   由图2中拟合的函数曲线可知,PVS算法所访问的节点在进入残局阶段前是随行棋过程逐渐增加,直至终局阶段访问节点的显著提速下降。
  alpha-beta算法的访问节点_行棋回合函数则如图3所示。
  由图3中拟合的函数曲线可知,alpha-beta算法所访问的节点在开局阶段是随行棋过程逐渐增加,行棋到中局阶段访问的节点数开始下降,并一直持续至博弈终止。
  通过研究后对比可知,PVS访问的叶子节点数远多于alpha-beta算法。究其原因即在于alpha-beta算法产生了很多剪枝,搜索的葉子节点远远少于整棵树的叶子节点,对于亚马逊棋这类走法过多、尤其开局阶段会有1 000多种走法的博弈游戏来说,并不适用。故而,在此方面,PVS算法明显占优。
  3结束语
  本文通过1 000多轮的对弈比较,利用6次函数去拟合访问节点_行棋回合函数,随即又设计做出了拟合后的函数图像,通过图像比较了2种搜索算法在这个博弈游戏中的优劣。最终结果表明,PVS算法在开局阶段与alpha-beta算法相比并未占优领先,但是随着棋局的深入,算法优势逐渐突出,在终局阶段其优势则更加明显,由此研发获得的亚马逊棋博弈系统也将具有较高水平。
  参考文献
  [1] 郭琴琴,李淑琴,包华. 亚马逊棋机器博弈系统中评估函数的研究[J]. 计算机工程与应用,2012,48(34):50-54,87.
  [2] LIEBERUM J. An evaluation function for the game of Amazons[J]. Theoretical Computer Science, 2005,349(2):230-244.
  [3] KLOETZER J. Monte-Carlo opening books for Amazons[C]//International Conference on Computers and Games. Berlin/Heidelberg: Springer-Verlag, 2011:124-135.
  [4] BURO M. Michael Buro. Simple Amazons endgames and their connection to Hamilton circuits in cubic subgrid Graphs[C]// International Conference on Computers and Games. Berlin/Heidelberg: Springer-Verlag, 2000:250-261.
其他文献
介绍了邢钢2003年10月份为适应市场燃料的供求紧张,在3#高炉进行的炉顶配加粒煤试验,试验结果既达到了缓解焦炭紧张的局面又降低了焦比和成本.
随着某城区经济的迅猛发展,越来越多的外籍人员来我区进行旅游、留学、经商等,加大了管理人员的工作量。而且对涉外人员的信息管理都是纸质存放,信息提取慢,查找难度大,使得出入境民警的工作量越来越大,出入境涉外信息管理效率低,管理性不强。极大地影响了涉外信息管理的高效性和安全性。为了提高管理效率,维护某城区管理的稳定和和谐,该城区可以结合当前的软件开发技术,进行信息系统建设,有利于提高城区的信息化建设。在
随着课程改革的深入,“说”得到了广大教师的重视,也得到了较好的落实,“听”近年来也开始受到越来越多的老师的重视。但在课堂上,我们常看见:当教师抛出问题让学生小组讨论时,满教
充分发挥规划引领约束作用,将完善应急物资保障体系建设纳入上海市"十四五"规划纲要,统筹规划上海应急物资的生产、流通、收储、调拨和紧急配送等各环节能力建设。结合上海产
本文阐述了治疗高血压的药物马来酸依那普利-非洛地平,主要介绍了马来酸依那普利、非洛地平的药学特征以及各自药代动力学的研究情况,两种药物联合使用,降压效果非常好,副作用并
根据棒材生产中冷床上卸钢装置的特点,设计了与其配套的液压系统.阐述了该液压系统油源回路和控制阀台回路的工作原理,介绍了该液压系统调试过程中易出现的问题及实际的使用
通过对转炉炉壳炉衬影响因素的分析,明确设计、施工、生产中的注意事项,可避免事故的发生、提高转炉使用寿命。
本文介绍电液伺服驱动连铸结晶器振动控制系统。与传统的结晶器振动装置相比,该系统能根据连铸工艺要求很方便地改变波形(正弦或非正弦),并能在线改变振动频率和振幅等参数,从而有
目的:建立紫外分光光度法,测定注射用氯诺昔康中氯诺昔康的含量。方法:采用紫外分光光度法,检测波长为376nm。结果:氯诺昔康在8.4μg/ml~15.6μg/ml的范围内呈良好的线性关系,r=0
通过对宣钢动力厂生产需要和设备现状的分析,为9#(1800m^3)高炉配套选用了汽拖全静叶可调压缩机,并在试运行期间对盘车作了改进,达到了较好的运行效果。