这两个 TRPO 目标函数是否等效?

人工智能 强化学习 政策梯度 近端策略优化 信任区域策略优化
2021-11-16 22:30:31

TRPO 论文中,最大化的目标是(等式 14)

Esρθold,aq[πθ(a|s)q(a|s)Qθold(s,a)]

这涉及对以某种密度采样的状态的期望ρ, 本身定义为

ρπ(s)=P(s0=s)+γP(s1=s)+γ2P(s2=s)+

这似乎表明后期时间步的采样频率应该低于早期时间步,或者等效地在轨迹中均匀地采样状态,但添加一个重要性采样项γt.

然而,通常的实现只是使用由截断或连接的轨迹组成的批次,而不参考轨迹中时间步长的位置。

这类似于PPO 论文中可以看到的,将上述目标转换为(等式 3)

Et[πθ(at|st)πθold(at|st)A^t]

似乎缺少一些东西EsρEt在打折的环境中。它们真的是等价的吗?

1个回答

正如您所指出的,它们并不等同。我想你可以存储每个访问状态的时间索引,但这有两个问题。

首先,如果您根据时间索引对状态进行采样,则从重放内存中采样会变得更加麻烦并且可能会慢得多(您必须对时间索引进行采样,然后再对具有该时间索引的特定状态进行采样)。这绝对是不可取的。如果您选择添加重要性抽样项,那么如果γ不是那么接近1。

其次,虽然最初的目标很容易获得理论结果,但您可能会问自己,该目标是否真的是您想要最大化的目标。你真的更关心轨迹开始时的表现而不是结束时的表现吗?

虽然我没有严格的证据,但我认为对预期折扣奖励的更好定义是时间平均值:

η(π)=limN1Nk=1NEsk,ak,sk+1,[t=kγtkr(st)].

由于平均值的每一项都满足原始证明,因此与等式 14 的唯一区别是密度为ρ~θold(s)=limN1Nk=1Nρk,θold(s), 在哪里

ρk,θold=P(sk=s)+γP(sk+1=s)+γ2P(sk+2=s)+.
你可以注意到,对于一个大N您基本上对所有时间步都给予相同的重视。因此,通常的实现实际上优化了一些类似于我定义的复杂函数,其中您为所有样本赋予相似的权重,而不管它们对应的时间步长如何。