Bootstrap

bellman operator 和bellman equation概念区分

在阅读强化学习相关的论文时经常会遇到bellman operator和bellman equation,例如:状态动作值函数的贝尔曼等式:
在这里插入图片描述
状态动作值函数的贝尔曼算子:
在这里插入图片描述
那么这两个东西到底有什么区别呢?首先给出结论,这两个东西的等价的。证明如下:
v π ( s ) = ∑ a ∈ A π ( a ∣ s ) ( R s a + γ ∑ s ′ ∈ S P s s ′ a v π ( s ′ ) ) v_{\pi}(s)=\sum_{a \in \mathcal{A}} \pi(a \mid s)\left(\mathcal{R}_{s}^{a}+\gamma \sum_{s^{\prime} \in \mathcal{S}} \mathcal{P}_{s s^{\prime}}^{a} v_{\pi}\left(s^{\prime}\right)\right) vπ(s)=aAπ(as)(Rsa+γsSPssavπ(s))
展开
v π ( s ) = ∑ a ∈ A π ( a ∣ s ) R s a + γ ∑ a ∈ A π ( a ∣ s ) ∑ s ′ ∈ S P s s ′ a v π ( s ′ ) v_{\pi}(s)=\sum_{a \in \mathcal{A}} \pi(a \mid s)\mathcal{R}_{s}^{a}+\gamma\sum_{a \in \mathcal{A}} \pi(a \mid s) \sum_{s^{\prime} \in \mathcal{S}} \mathcal{P}_{s s^{\prime}}^{a} v_{\pi}\left(s^{\prime}\right) vπ(s)=aAπ(as)Rsa+γaAπ(as)sSPssavπ(s)
左边项可以写成
R s π = ∑ a ∈ A π ( a ∣ s ) R s a \mathcal{R}_{s}^{\pi}=\sum_{a \in \mathcal{A}} \pi(a \mid s) \mathcal{R}_{s}^{a} Rsπ=aAπ(as)Rsa
右边项可以写成
P s s ′ π = ∑ a ∈ A π ( a ∣ s ) P s s ′ a \mathcal{P}_{s s^{\prime}}^{\pi}=\sum_{a \in \mathcal{A}} \pi(a \mid s) \mathcal{P}_{s s^{\prime}}^{a} Pssπ=aAπ(as)Pssa
于是原来bellman equation变成
v π ( s ) = R s π + γ ∑ s ′ ∈ S P s s ′ π v π ( s ′ ) v_{\pi}(s)=\mathcal{R}_{s}^{\pi}+\gamma \sum_{s^{\prime} \in \mathcal{S}} \mathcal{P}_{s s^{\prime}}^{\pi} v_{\pi}\left(s^{\prime}\right) vπ(s)=Rsπ+γsSPssπvπ(s)
对于一个batch的数据,上面的式子进一步简化:
v π = R π + γ P π v π v_{\pi}=\mathcal{R}^{\pi}+\gamma \mathcal{P}^{\pi} v_{\pi} vπ=Rπ+γPπvπ
而对应的bellman operator是这样的:
T π ( v ) = R π + γ P π v \mathcal{T}^{\pi}(v)=\mathcal{R}^{\pi}+\gamma \mathcal{P}^{\pi} v Tπ(v)=Rπ+γPπv
就是用bellman operator更新v,而这个bellman operator由pi决定。和原来bellman equation中更具策略pi更新v本质上是一样的。形式的不同就是把pi提到贝尔曼算子的符号上。
那为什么要改写呢?是因为贝尔曼算子的收缩性能够用来证明v的值最后可以收敛到固定的点。所以贝尔曼算子就是用来理论推导的。

参考资料

如果有理解不对的地方,希望各位大佬批评指正!

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;