跳转至

mcts-cpu-validate 文档站

mcts-cpu-validate 是一个 15x15 简化围棋式自博弈与 MCTS 实验项目。它不追求把标准围棋裁判完整搬进来,而是把重点放在一条能长期跑下去的训练主线上:规则稳定、数据可复查、训练可恢复、结果可回放。

如果你想先用一句最直白的话理解这个项目,可以这样看:

它让程序自己和自己下很多盘简化棋局,把每一盘里发生了什么记下来,再用这些记录继续训练模型。训练中断了,也能从上次保存的位置继续。

如果你第一次进入这个仓库,先看这三件事:

  1. 项目不是标准围棋引擎,而是一个面向搜索与训练闭环的实验系统。
  2. Rust 和 Python 分工明确,规则和状态转移只在 Rust 里实现,训练和调度放在 Python。
  3. 运行结果必须进入 data/runs/<run_id>/,这样中断恢复、指标分析和棋谱回放才有共同输入。

这个文档站负责什么

这个文档站负责解释项目,而不是替代 specs/

  • 如果你想知道项目为什么这样分层、一个 run 目录应该长什么样、MCTS 和训练如何接起来,应该先读这里。
  • 如果你已经在实现具体功能,需要精确约束,就去读 specs/

下一步怎么读

  • 先读“项目概览”,确认这个项目在做什么、没做什么。
  • 再读“训练闭环”,确认 Rust、Python、自博弈和训练之间的输入输出。
  • 如果你准备实际运行,再看“操作指南”和“配置说明”。

如果你对这些词还不熟,可以先记住下面这几个最短解释:

  • self-play:程序自己和自己下棋,目的是产出训练数据。
  • MCTS:一种搜索方法,用来在落子前多看几步,而不是随便选一步。
  • checkpoint:训练进度存档。中断后恢复要靠它。
  • run_id:一次运行的唯一编号,用来把这一轮产生的数据放到同一个目录里。
  • bitboard:一种紧凑保存棋盘状态的方法,本项目用它提高 Rust 侧处理棋盘的效率。

文档站与根目录文档的关系

根目录文档是权威来源,文档站优先通过 symlink 把它们接进导航,不复制第二份。这样做的原因是简单的:配置说明、操作入口和主 README 如果同时维护两份,后面一定会分叉。