用自我对弈训练五子棋策略

把策略-价值网络、PUCT 搜索、自我对弈和训练数据回放连成一个 AlphaZero 风格的学习环。

THE QUESTION

搜索产生的反馈,怎样变成更好的下一步策略?

QUESTION
METHOD
NEXT STEP

研究目标与实验设计

这个实验把策略价值网络、PUCT 搜索与自我对弈连接起来,观察搜索产生的更强策略如何反过来训练网络。

这里整理这项研究的出发点、实现路径、当前观察,以及下一步准备回答的问题。

01

编码棋盘并估计策略与价值

状态用当前玩家和对手的两张棋盘平面表示。PyTorch 网络由卷积主干分出策略头与价值头,分别给出落子先验和当前局面的价值估计。

↘
02

用 PUCT 把网络与树搜索结合

文章给出 PUCT 节点结构与选择、扩展、评估、回传流程,并将合法动作的网络先验归一化后用于搜索。

↘
03

从对局生成训练样本

自我对弈流程以搜索分布作为策略目标,将局面、策略分布和终局结果写入 replay buffer,再用策略与价值损失更新网络。

↘
→

当前进展与验证计划

当前实现梳理了从棋盘编码、树搜索到自我对弈数据回放的核心循环。下一步是补齐稳定训练、基线对手和固定赛制,观察 loss、胜率与搜索预算之间的关系。

研究关联与后续问题

自我对弈提供了一个紧凑的改进循环:系统产生行为,从结果中获得反馈,再更新下一轮策略。它让“如何变得更好”成为可以观察和比较的过程。

接下来要回答的问题
  • 补齐环境状态推进与完整训练脚本,让搜索、自我对弈和网络更新可以端到端复现。
  • 建立固定基线、对弈赛制和棋力曲线,区分网络学习与搜索预算各自带来的提升。
翻开智能手记:什么改变了,又怎样判断? ↗
继续阅读原始记录

Alpha Zero算法实现五子棋

打开文章 ↗
MCTS / UCT

MCTS 搜索过程与统计更新

动手搜索↗

搜索

正在载入索引…