《棋战顺序基本手艺》专题
 
残局库
 
Martin Fierz */
* 瑞士Windisch运用迷信学院(Aargau学院)
 
  不论你是否是喜欢,残局库在许多棋类中都长短常主要的。许多棋类以前被人类累积了少量知识(譬喻国际象棋、西洋跳棋等),而很多若干棋类是新降生的(或是由于不提高)因而没甚么生长。关于人类异常醒目的棋类(譬喻国际象棋),竖立残局库有个异常简朴的设施,即手工发生,选择妙手走的棋。这类要领不是咱们感兴味的,而关于一些没有实际可寻的,也许计算机足以战胜人类(譬喻西洋跳棋)的棋类,用这个要领是弗成取的。咱们将会留意一种没一些野生干预的天生残局库的要领。
 
从数据库自动天生
 
  要天生残局库,有个简朴的要领就是找一个对局数据库,依据对局效果来选择牢靠的着法。我的国际象棋顺序的残局库就是这样天生的,许多国际象棋顺序也都运用这类要领。关于国际象棋来说,有高质量的数据库,其中包孕许多高级级分棋手下的,因而你能够注定仅仅运用高级级分棋手的对局。关于每一个局势,能够天生一切着法的统计数字,譬喻这步着法的分数,下这步着法的棋手匀称品级分,这步着法失掉的匀称效果,以及用效果权衡和用棋手品级分权衡的分歧的中央。有的对局会以符号“!(好着)或“!!(妙着)作指摘,把这类指摘斟酌出来也是可行的,但我不知道是否是一些人这么做。我的国际象棋顺序的残局库只参照统计数字,使用棋手品级分最高的着法。
 
由“脱离棋谱的扩展”自动天生
 
  若是没一些人类累积的棋类实际,那末你就不能不自身盘算残局库了。任何盘算残局库的要领,都要求用称为“博弈树”的图来表述,图上的每一个结点象征一个局势。关于每一个局势,你要求盘算一切能够着法的值,因而每一个候选着法都要扩展。跟这个图表响应,你还必需找到一个要领来注定哪些结点是要求睁开的,也就是说,图表上的哪一个叶子结点要求再增增加入结点。这里我将引见一个称为“脱离棋谱的扩展”(DOEDrop-out Expansion)的要领,它是由Thomas Lincke发现的。DOE的基本头脑就是发生一个残局库,使得竞赛时能够尽能够迟地脱离棋谱。竖立残局库时有个战略,每一个局势的一些好的着法要求扩展,然后从扩展出的局势连续,这样总是会在以后结点处扩展出一些着法(譬喻流动数目的着法,也许和跟最好着法的评定差异在一定水平内的这些着法)。然则这个战略在遇到不适当的局势时往往很糟糕,使用这类残局库的顺序一般只会走残局库中最好的着法,而对手会出毛病(要注重对手所谓的毛病能够也是好的着法,仅仅是关于你的残局库而言是毛病的)。因而,残局库天生器只能对一方天生最好的一些着法,而对方应当能走好的或欠好的着法。首先,DOE天生器会要求发生一个图表,它对每一个结点的后续着法都有一个评定。然后要求一个优先函数,对每一个能够的途径(DOE限制下,一方只走最好的着法)都能够给出一个优先值,对优先级高的途径的叶子结点作扩展。这个战略使得它要做很啰嗦的并行盘算,若是你有盘算机集群,那末你能够在主机上运转DOE天生器,而众多子机上对每一个局势做准确的盘算。途径优先级的盘算一定来说对照随意,你能够用相似下面的要领来做:
 
delta = sum_of_errors(path);
depth = length(path);
priority = -delta - CONST * depth;
 
  这个优先函数会使对手的好的着法搜索得深一些,对手出毛病的着法搜索得浅一些。你能够在优先级的盘算中加入其他重点要点,譬喻权衡结点主要性的重点要点。Thomas Lincke在他的优先函数中运用过“战略数”(Conspiracy Number),我的顺序则权衡结点的单调性(Singularity),也就是说,最好和次好的着法差异很大,这条线路就搜索得深一些。
 
DOE的现状
 
  DOE是一个对照新的手艺,在西洋跳棋(我和Ed Gilbert的顺序)Awari(Thomas Lincke的顺序)中用得对照胜利。我的西洋跳棋的DOE天生器以前在一台单机上运转了近2年了,天生的残局库基本上不再有过失了(在一台很快的小我私家计算机上盘算了1年半以后),也许还能够纠正人们对这类棋类在残局上的毛病熟悉。我之以是说“基本上”,是由于现在我知道的着法中没有毛病,然则也有能够残局库的不可胜数个着法里会隐藏着几个坏的着法。半年前我和Ed Gilbert让咱们的引擎比了624盘棋,我的顺序Cake战绩是31负,剩余620盘是和棋,和棋率是那末的高!输的那局展现了我的残局库里的一个问题,现在以前修补好了。
 
  原文:http://www.fierz.ch/strategy4.htm
  译者:象棋百科全书网 (webmaster@xqbase.com)
  类型:全译
  • 上一篇 其他战略——残局库
  • 下一篇 其他战略——战略和窍门
  • 返 回 象棋百科全书——计算机象棋
  • www.xqbase.com