Simple Alpha Zero tutorial

GitHub - suragnair/alpha-zero-general: A clean implementation based on AlphaZero for any game in any framework + tutorial + Othello/Gobang/TicTacToe/Connect4 and more

Muzero:

之所以看AlphaGo及其后续的工作,主要是注意到LLM是一个序列决策问题,可能可以通过MTCS等强化学习的方法来提升输出的可靠性。当前LLM的rlhf等其实都只是提升单步输出的效果。

Muzero训练了一个dynamic model,这个动态函数g根据当前的动作从当前状态向量映射到下一个状态向量。这就让模型可以在隐藏空间进行计划。大家都在说世界模型,这种能在隐藏状态空间中根据动作预测下一个隐藏状态的模型才是世界模型吧?
在Efficient zero里,对前一步和后一步的隐藏状态表示做了一些对齐。这其实很像于JEPA,就是JEPA不能做动作,只能是用相邻的环境无监督预训练而已。但有一点不太了解,就是JEPA里随机向量Z是怎么选的。
除了MuZero系列工作,应该还有别的有趣的工作。应该都可以结合起来,可是自己没精力仔细看和复现啊…要毕业,要找工作了
Reinforcement Learning Upside Down: Don’t Predict Rewards — Just Map Them to Actions - YouTube

几个问题:

  1. MTCS可以用于连续动作空间吗?
    1. Sampled Muzero好像是通过在连续动作空间采样几个离散动作,然后优化。改改应该是可以的
  2. 除了两个玩家交替对抗的情况,MTCS可以用于单个玩家或者多个玩家吗?
    1. 单个玩家应该可以。MuZero does YouTube 设计的对抗游戏里似乎就是单个玩家的游戏。但是仍然通过某种方式和过去的自己竞争。

其它改进

一个对muzero的改良,去除了MCTS
Muesli: MuZero without MCTS. Achieving MuZero’s state-of-the-art… | by Aznaur Aliev | Medium

如何选择深度强化学习算法?MuZero/SAC/PPO/TD3/DDPG/DQN/等(2021-04) - 知乎

对LLM来说,要学关于环境的奖励函数。

self-play
Dota 2 with Large Scale Deep Reinforcement Learning - openai | 1912.06680.pdf

DouZero: self-play 斗地主

MCTS + RL 系列技术博客(6):浅析 MCTS 算法原理演进史 - DILab决策实验室的文章 - 知乎
https://zhuanlan.zhihu.com/p/670885213