《对弈程序基本技术》专题
 
搜索的不稳定性
 
Bruce Moreland /
 
没有这个,生活会更有趣
 
  当你试图写很强或很完美的程序时,搜索的不稳定性就可能出现。有很多原因可以导致不稳定性,当我讨论搜索的诸多改进方法时,顺便讨论了它们是如何导致搜索不稳定的。其他我没有讨论的搜索技巧也必须考虑不稳定的可能。
  不稳定的搜索会返回无效的值,你用(5, 25)Alpha-Beta窗口会高出边界,因此你用(24, INFINITY)重新搜索,却低出边界。这不应该发生,因为高出边界很明显说明返回值应该是25或者更高,那怎么又会低出边界呢?
  事实就是如此,很多工作可以让国际象棋程序运行得更快或更好,但是它们或许会做一些蠢事,在用不同的窗口做搜索时返回略微不同的值。如果你没有得到你所期望的值,那么你的程序可能会陷入故障,或者产生一个使你的程序走出昏着的错误。
  一些国际象棋的程序设计师没有把握好搜索不稳定性的思想,他们宁可不用非常好的搜索算法,以避免这种情况的发生,或者他们认为这样就能够避免。
  我希望有可能完全排除搜索的不稳定性,但是就目前使用的非常基本的技术而言,很存在问题。我想解决办法就是对故障作一些防御,而别去深究不稳定性的原因。
 
  原文:http://www.seanet.com/~brucemo/topics/instability.htm
  译者:象棋百科全书网 (webmaster@xqbase.com)
  类型:全译
  • 上一篇 高级搜索方法——主要变例搜索
  • 下一篇 局面评估函数——简介()
  • 返 回 象棋百科全书——电脑象棋
  • www.xqbase.com