Self-Consistent Trajectory Autoencoder读书笔记

Introduction

层次强化学习(Hierarchical reinforcement learning, HRL)需要学习low-level和high-level的policy。low-level policy的训练往往需要hand-specification或者subgoal information。本文提出一种基于VAE的轨迹自编码方法(Self-consistent trajectoy autoencoder, SeCTAR),同时学习一个state doceder和policy decoder, 从而利用latent space控制low-level policy

SeCTAR

SeCTAR包含3个部分:trajectory-level encoder q ϕ ( z ∣ τ ) q_\phi(z|\tau) qϕ(zτ), state decoder p θ S D ( τ ∣ z ) p_{\theta_{SD}}(\tau|z) pθSD(τz)和 policy decoder p θ P D ( a ∣ s , z ) p_{\theta_{PD}}(a|s,z) pθPD(as,z)。目标是最大化 l o g p ( τ ) logp(\tau) logp(τ)的同时,使得state decoder 和 policy decoder得到的轨迹尽可能接近,这样就能实现在state space上进行plan,然后生成能够得到相应state trajectory的actions。这个objective可以写成下面的式子
max ⁡ l o g p ( τ ) \max \mathop{log} p(\tau) maxlogp(τ)
subject to E q ϕ [ D K L ( p θ P D ( τ ∣ z ) ∣ ∣ p θ S D ( τ ∣ z ) ) ] = 0 E_{q_\phi}[D_{KL}(p_{\theta_{PD}}(\tau|z)||p_{\theta_{SD}}(\tau|z))]=0 Eqϕ[DKL(pθPD(τz)pθSD(τz))]=0
将constraint转化为penalty并利用ELBO估计 l o g p \mathop{log} p logp得到
E q ϕ [ l o g p θ S D ( τ ∣ z ) ] − D K L ( q ϕ ( z ∣ τ ) ∣ ∣ p ( z ) ) + λ [ E q ϕ , p θ P D ( τ ∣ z ) [ l o g p θ S D ( τ ∣ z ) ] + H ( p θ P D ( τ ∣ z ) ) ] E_{q_\phi}[\mathop{log}p_{\theta_{SD}}(\tau|z)] -D_{KL}(q_\phi(z|\tau)||p(z))+\\ \lambda [E_{q_\phi,p_{\theta_{PD}}(\tau|z)}[\mathop{log} p_{\theta_{SD}}(\tau|z)]+H(p_{\theta_{PD}}(\tau|z))] Eqϕ[logpθSD(τz)]DKL(qϕ(zτ)p(z))+λ[Eqϕ,pθPD(τz)[logpθSD(τz)]+H(pθPD(τz))]
trajectory encoder和state decoder就是一个关于trajectory的VAE,而policy decoder则要求通过该policy生成的trajectory和state decoder的接近。policy decoder可以用state decoder的log likelyhood作为reward,并加上正则项,进行传统的RL训练。用trajectory进行behavior cloning能提供较好的初始化。

Hierarchical Control

SeCTAR训练完之后,根据一个latent variable z z z就可以解码得到一定步长的trajectory,之后利用random sampling和MPC(model predictive control)的方法选择z,然后解码出相应的policy,就可以进行control。这里可以类比latent space为搜索空间,state decoder为dynamic。假设总步长H,每次解码步长T,则搜索H/T个不同的 z z z作为high-level policy,而low-level policy由policy decoder得到。

Exploration for SeCTAR

在训练SeCTAR时,trajectory如果固定不变,那么decoder覆盖的范围有限,不能很好的进行探索。为此,引入探索策略 π e \pi_e πe,其优化目标为最大化trajectory的熵即 − E p θ ( τ ) [ l o g p θ ( τ ) ] -E_{p_\theta}(\tau)[\mathop{log} p_\theta(\tau)] Epθ(τ)[logpθ(τ)],而 − p θ ( τ ) -p_\theta(\tau) pθ(τ)可以用ELBO估计,作为reward对 θ \theta θ进行更新即可。每次从MPC中经历过的某个state出发,用 π e \pi_e πe采样,重新训练SeCTAR,迭代进行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值