使用 8 x 8 阵列表示棋盘的国际象棋引擎的最大强度是多少?
What is the maximum strength of a chess engine with a board representation using an 8 by 8 array?
我正在尝试编写我的第一个国际象棋引擎,我正在使用 chessprogramming.wikispaces.com 作为资源。我的第一次尝试是使用位板,考虑到它们的性能优势,以及深蓝等流行引擎使用位板的事实;然而,我发现实施起来非常困难,并得出结论,我应该从小处着手设计我的第一个引擎。相反,我想使用 8 x 8 阵列,但我想知道我的引擎与阵列相比使用位板的强度。如果可能,请使用 8 x 8 数组提供引擎最大强度的近似国际象棋等级。
8 x 8 可能会有点慢,但是作为初学者,如果您使用 8 x 8,您的程序会更强大,因为您犯的错误会少得多,而且无论如何它都不会太高效(至少我的不是)。
因此,即使您完美地实现了两者,位板程序在 Brute-Force 树中的深度也可能比 8 x 8 深 1 层。但真正有效的东西是例如使用带移动顺序等的 Alpha Beta 算法。
具有良好 alpha beta 的 8 x 8 引擎总是会击败 alpha beta 实现不佳的位板。所以没有理由在你的第一个程序中使用位板 ;)
我正在尝试编写我的第一个国际象棋引擎,我正在使用 chessprogramming.wikispaces.com 作为资源。我的第一次尝试是使用位板,考虑到它们的性能优势,以及深蓝等流行引擎使用位板的事实;然而,我发现实施起来非常困难,并得出结论,我应该从小处着手设计我的第一个引擎。相反,我想使用 8 x 8 阵列,但我想知道我的引擎与阵列相比使用位板的强度。如果可能,请使用 8 x 8 数组提供引擎最大强度的近似国际象棋等级。
8 x 8 可能会有点慢,但是作为初学者,如果您使用 8 x 8,您的程序会更强大,因为您犯的错误会少得多,而且无论如何它都不会太高效(至少我的不是)。
因此,即使您完美地实现了两者,位板程序在 Brute-Force 树中的深度也可能比 8 x 8 深 1 层。但真正有效的东西是例如使用带移动顺序等的 Alpha Beta 算法。
具有良好 alpha beta 的 8 x 8 引擎总是会击败 alpha beta 实现不佳的位板。所以没有理由在你的第一个程序中使用位板 ;)