周志华 强化学习 时序差分学习 公式推导

**爱学习的泠语啊

本文主要推导16.4.2节时序差分学习情况下的状态-动作值函数,也是刚刚学习强化学习,有问题欢迎大家反馈吐槽啊(但求别喷我哈哈哈哈)~

前面就是吧啦吧啦一顿介绍蒙特卡罗算法批量求平均的缺点,大家看书应该就能看的挺明白了,最后得到如下的值函数增量式求平均的估计办法:

Q t + 1 π ( x , a ) = Q t π ( x , a ) + 1 t + 1 ( r t + 1 − Q t π ( x , a ) ) Q_{t+1}^{\pi}(x,a)=Q_{t}^{\pi}(x,a)+\frac{1}{t+1}(r_{t+1}-Q_{t}^{\pi}(x,a)) Qt+1π(x,a)=Qtπ(x,a)+t+11(rt+1Qtπ(x,a)) 即公式(16.29)

这块大家注意哈, r t + 1 r_{t+1} rt+1指的是本次获得的Q函数采样值,而不是状态转移之后获得的奖励值

接着他搬出了公式16.10:

Q π ( x , a ) = ∑ x ∈ X P x → x ′ a ( R x → x ′ a + γ V π ( x ′ ) ) Q_{\pi}(x,a)= \sum_{x \in X}P_{x \rightarrow x'}^a(R_{x \rightarrow x'}^a+\gamma V^{\pi}(x')) Qπ(x,a)=xXPxxa(Rxxa+γVπ(x))

并将 V π ( x ′ ) V^{\pi}(x') Vπ(x)替换为 ∑ a ′ ∈ A π ( x ′ , a ′ ) Q π ( x ′ , a ′ ) \sum_{a' \in A}\pi(x',a')Q^{\pi}(x',a') aAπ(x,a)Qπ(x,a) ,这块就是将V函数拆分成两个部分,执行动作a,以及在当前状态和执行当前动作情况下的Q函数,然后全概率展开求期望,小伙伴们应该对这块很熟悉了吧~

然后我们得到了公式16.30:

Q π ( x , a ) = ∑ x ∈ X P x → x ′ a ( R x → x ′ a + γ ∑ a ′ ∈ A π ( x ′ , a ′ ) Q π ( x ′ , a ′ ) ) Q_{\pi}(x,a)= \sum_{x \in X}P_{x \rightarrow x'}^a(R_{x \rightarrow x'}^a+\gamma \sum_{a' \in A}\pi(x',a')Q^{\pi}(x',a')) Qπ(x,a)=xXPxxa(Rxxa+γaAπ(x,a)Qπ(x,a))

好了!重点来了!由上式是怎么得到公式(16.31)的呢(我在这想了好久才想(zi)明(yi)白(wei))?

我们需要搞清楚上式是在模型已知情况下的Q函数表达值,而在免模型情况下,上式中一切涉及和概率相关的表达式我们统统不知道。也就是说我们并不知道状态转移概率 P x → x ′ a P_{x \rightarrow x'}^a Pxxa,我们所能获得的全部信息都来自于下一时刻对环境信息观察所获得的采样值。而在采样时,下一时刻我们获得的奖励和转移到的状态都是确定的(虽然每次采样转移到的状态可能不一样,对应状态转移概率较大的状态出现的次数多,概率小的状态出现的次数小喽),全概率展开是不存在的。

我们要做的就是通过求取一系列采样的平均值估计值函数。我们知道什么呢?我们知道执行一次动作a由状态x转移到x’获得的奖励 R x → x ′ a R_{x \rightarrow x'}^a Rxxa,知道 Q π ( x ′ , a ′ ) Q^{\pi}(x',a') Qπ(x,a)(在执行一次策略并计算就好了),由公式16.30,去掉全概率展开(状态转移概率,求和,执行动作a’的概率)我们所能得到的一次采样值 r t + 1 r_{t+1} rt+1为:

r t + 1 = R x → x ′ a + γ Q π ( x ′ , a ′ ) r_{t+1}=R_{x \rightarrow x'}^a+\gamma Q^{\pi}(x',a') rt+1=Rxxa+γQπ(x,a)

然后我们将 r t + 1 r_{t+1} rt+1的表达式带入(16.29)就得到公式(16.31)了~

Q t + 1 π ( x , a ) = Q t π ( x , a ) + 1 t + 1 ( R x → x ′ a + γ Q π ( x ′ , a ′ ) − Q t π ( x , a ) ) Q_{t+1}^{\pi}(x,a)=Q_{t}^{\pi}(x,a)+\frac{1}{t+1}(R_{x \rightarrow x'}^a+\gamma Q^{\pi}(x',a')-Q_{t}^{\pi}(x,a)) Qt+1π(x,a)=Qtπ(x,a)+t+11(Rxxa+γQπ(x,a)Qtπ(x,a))

你可能感兴趣的:(强化学习公式推导)