Vector Quantized Models for Planning


发表时间:2021(ICML 2021)
文章要点:文章把MCTS扩展到带随机状态转移和部分可观测下。主要做法就是用VQ-VAE(参看Neural Discrete Representation Learning)自编码器来捕获一个动作可能造成的不同状态转移,然后和之前一样planning。具体来说,之前的muzero(参看Mastering atari, go, chess and shogi by planning with a learned model)的MCTS先是用一个representation function把状态转到压缩空间\(h\),然后用\(f\)来预测动作概率\(\pi\)和价值\(v\)。做了动作\(a\)以后用dynamics function \(g\)来转移到下一个\(h\)。这篇文章的思路就是,除了\(h\)之外,还有一个机会节点\(c\),这个节点也会有另一个\(f\)来预测动作概率\(\tau\)和对应的价值\(v\),VQ-VAE就在这个地方派上用场,输出一个机会节点的动作\(k\),这个\(k\)也用在\(g\)上用来真正决定下一个状态长啥样。也就是说,状态转移除了之前的策略\(\pi\)做的动作\(a\)外,先会转到一个机会节点,机会节点会做一个动作\(k\),然后经过这个动作\(k\)之后,才会真正转移到下一个状态。这样做的好处就是给planning增加了随机性。之前在\(s_t\)的时候,一个动作只能对应唯一的一个\(s_{t+1}\)。现在一个动作可以对应多个\(s_{t+1}\)了,具体的方式就是这个动作做完之后先到一个机会节点\(c\),然后\(c\)会选动作\(k\),不同的\(k\)就会得到不同的状态\(s_{t+1}\)
关于训练,和muzero类似,就多了一个拟合\(\tau\)的loss

另外,美中不足的是整个训练不是端到端的,VQ-VAE要先训练,然后再训MCTS相关的网络。
总结:这篇文章很有意思,可以多看看。如果work的话,个人感觉是planning方法向前的一大步。虽然文章中没有说加入机会节点这个概念,但是看流程图的话,我感觉就是这个意思。如果哪天能做到端到端的训练,感觉planning这条路就算是走通了,以后只要堆算力,就能解决所有问题了。
疑问:文章还说,可以对动作和时间做抽象,不用在每个时间步做planning,具体咋做的还没看出来。难道是多个动作\(a\)后面加一个动作\(k\)?感觉不是很靠谱。文章还有几个实验的设定也不是很清楚,比如worst case和neutral scenario到底指的啥?

posted @ 2021-08-16 06:39  initial_h  阅读(190)  评论(0编辑  收藏  举报