我如何学习国际象棋编程?


13

基本上,我已经看到人们编写了很多国际象棋算法,并在这个论坛中提出了问题,我很想回答这些问题。我看到了代码,但无法确定它是否正确?

我本人是软件专业人员,但不熟悉国际象棋算法或与编码有关的东西。您能帮我建议我在哪里可以学到这些东西,否则我会得到解释?


3
chessprogramming.wikispaces.com是一个很好的起点。或者,如果您更喜欢阅读源代码,则Stockfish是开源的。
user1583209'4

Answers:


9

您如何解决该问题:

  • 请访问Chessprogramming.wikispaces.com。这将是您的参考站点。
  • talkchess.com上创建一个帐户。所有最好的引擎开发人员都在那里。如果存在引擎问题,而您在那找不到答案,那么您将无法在其他任何地方找到它。
  • 查看TSCP引擎源代码。TSCP是一个简单但可行的实施国际象棋引擎。比Stockfish更容易阅读。
  • 做点什么。尝试编写一个棋盘生成器。检查上面的参考站点。研究TSCP是如何做到的。
  • 将您的PERF结果与https://chessprogramming.wikispaces.com/Perft进行比较
  • 仅使用材料编写简单的职位评估。从TSCP或国际象棋编程站点复制PST表。
  • 编写一个简单的nega-max和alpha-beta搜索。
  • 了解有关UCI协议的信息
  • 添加换位表
  • 添加简单的空移动修剪

TSCP是我开始的地方,我还要补充一点,这里有一个不错的网站,可以编写
nak3c

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.