2

我使用stockfish 引擎在模拟国际象棋游戏中生成最佳移动。我使用 python-chess 将 Stockfish 引擎集成到我的模拟中。目前我设置搜索操作的深度以获得最佳移动chess.engine.Limit(depth=engine_depth)

据称,Stockfish 11 的评分约为 3550。在此处输入图像描述

当然,移动的质量取决于搜索深度。在本文(http://web.ist.utl.pt/diogo.ferreira/papers/ferreira13impact.pdf)中,他们分析了搜索深度和引擎评级之间的相关性,基本结果基本上是:在此处输入图像描述 不幸的是,这篇论文来自 2013并且没有命名特定的引擎,但可以假设现在的结果要高一些。我还发现了这篇堆栈溢出文章:国际象棋引擎的深度是它的力量吗?但是那里的大多数链接都死了。

我想更深入地研究如何实现最佳移动。因为当使用深度为 20 的 Stockfish 11 时,它几乎无法战胜 chess.com 级别 10 的计算机,据传它的评分约为 2600。大多数情况下,Stockfish 会取得平局,有时可以用白色获胜。

这让我相信,刚刚给 Stockfish 的搜索深度并不是最好的方法。搜索树修剪等方面可以显着改善最佳移动的搜索结果。

有没有人有使用 Stockfish 的经验,并且可以指导我如何优化搜索以找到最佳可能移动的正确方向。理想情况下,您可以为我现在使用的 python-chess 提供一些代码。

4

0 回答 0