Algorithm 目前已知的计算机象棋最佳算法?

Algorithm 目前已知的计算机象棋最佳算法?,algorithm,chess,Algorithm,Chess,我只是想知道算法的名称。。谢谢 如果你需要对人工智能算法有深入的了解,我认为这本书是最好的来源。是一个安全的起点。你看了吗 似乎是一个竞争者 游戏算法中的一个通用策略是策略,并添加了。minimax算法找到最佳移动,alpha-beta修剪防止它进入博弈树的分支,而这些分支无法产生比以前的分支更好的结果 然而,国际象棋博弈树太大,无法完全检查。这就是为什么计算机象棋引擎只检查树到一定深度,然后使用各种方法来评估位置。其中许多方法都是基于启发式的。此外,一个严肃的国际象棋程序将有一个开放库,这样它

我只是想知道算法的名称。。谢谢

如果你需要对人工智能算法有深入的了解,我认为这本书是最好的来源。

是一个安全的起点。你看了吗


似乎是一个竞争者

游戏算法中的一个通用策略是策略,并添加了。minimax算法找到最佳移动,alpha-beta修剪防止它进入博弈树的分支,而这些分支无法产生比以前的分支更好的结果


然而,国际象棋博弈树太大,无法完全检查。这就是为什么计算机象棋引擎只检查树到一定深度,然后使用各种方法来评估位置。其中许多方法都是基于启发式的。此外,一个严肃的国际象棋程序将有一个开放库,这样它就可以在开始时只需查阅该库,而不必检查游戏树。最后,许多最终的游戏都被完全解决了,这些游戏也作为一个库被编程了。

看看一些免费的国际象棋源代码,比如说狡猾的或者更好的。水果怎么样?它发挥了几乎相同的力量Rybka。但是有很多新的算法。终有一天,人类棋手将不得不说我不玩这个引擎,而这篇文章将其概括为-->

这将是一个棋类游戏算法的一部分。然而,minimax本身并不是一个国际象棋算法。在进入“算法”模式之前,大多数(但不是所有)国际象棋程序都依赖于启发式,即一个广泛的国际象棋开放库。我同意维基百科是一个好地方,但Rybka是封闭源代码,所以可能不多help@Dave:没错,但它解决了anarhikos只想学习算法名称的问题。@Tarydon-Rybka是国际象棋引擎的名称。因为它是封闭源代码,没有人(除了作者)知道它使用了哪些算法。@Dave:你赢了。我承认:)我不能否决我自己的答案,所以请你这么做好吗?@Tarydon-这是个好答案;维基百科将是这里的宝贵资源。只需编辑它并用一个算法替换Rybka。一个相当于minimax的称为negamax。不同之处在于,在树中每次深度变化时,分数都被否定。这样,两个玩家都试图最大化分数(在极小极大值中,一个玩家试图最小化分数)。我不确定这对alpha/beta窗口有什么影响。它是否只是一个单一的值?应该注意的是,位置评估函数可能是国际象棋引擎在确定其强度时最重要的一个方面。事实上,这可能是目前大多数国际象棋引擎中唯一具有新颖性的领域。例如,Rybka职位评估功能是由非常强大的玩家在5年内(如果irc)设计的。从某种意义上说,评估函数是计算机对国际象棋位置的直觉,这是任何国际象棋游戏中最重要的部分,与其他问题(如游戏中的战术)正交。@gmatt-仅部分正确。。。积极的修剪是Rybka如此强大的原因之一,这方面的研究还不算太老。扩展无用修剪、有限剃除和自适应零移动修剪是不到十年前的最新技术