Coursera 這兩周的課程完全無法讓我滿足, 看完各種疑問, 解說最表皮的那種… 可能直接看 Sutton & Barto 的書會好一些, 但我沒看

看了赵世钰老師的 RL 課程: https://www.youtube.com/watch?v=DCYPj-uVAq8&list=PLEhdbSEZZbDYwsXT1NeBZbmPCbIIqlgLS&index=29. 這才是擊中核心, 最充分理解的解說.

因此直接用趙老師的課程筆記

TD Learning of State Values

[TD algorithm 一句話]: Model-free 的 incremental Policy Evaluation

這句話長一點是這樣: 在沒有 dynamic (model) function 情況下 incremental 的方式 (不用等到 episode 結束) 解 state value 的 Bellman equation.

注意到 state value 的 Bellman equation 是用來評估給定一個策略的價值 (value)

我們先對 state value 改寫, 根據定義:

$$ \begin{align} v_\pi(s)\doteq\mathbb{E}\pi[G_t|S_t=s],\quad s\in\mathcal{S} \\=\mathbb{E}[R{t+1}+\gamma G_{t+1}|S_t=s],\quad s\in\mathcal{S} \\ \end{align} $$

注意到

$$ \begin{align*} \mathbb{E}[G_{t+1}|S_t=s]=\sum_a\pi(a|s)\sum_{s'} p(s'|s,a)v_\pi(s')\\ =\sum_{a,s'}p(s',a|s)v_\pi(s')=\sum_{s'}p(s'|s)v_\pi(s') \\ =\mathbb{E}[v_\pi(S_{t+1})|S_t=s] \end{align*} $$

代回去 (2) 得到

$$ \begin{align} \Longrightarrow v_\pi(s)=\mathbb{E}[R_{t+1}+\gamma v_\pi(S_{t+1})|S_t=s],\quad s\in\mathcal{S} \end{align} $$

RM 算法求解 Bellman Equation

套用 Robbins-Monro algorithm 來解 (3) 就能得到 TD algorithm

對某個特定的 state $s_t$, 令我們要求解的 $v_\pi(s_t)$ 為變數 $w$, 我們定義 function

$$ \begin{align} g(w)\doteq w - \mathbb{E}[R_{t+1}+\gamma v_\pi(S_{t+1})|S_t=s_t] \end{align} $$

則對 $g$ 求解 root 等價於解出 (3) 的 Bellman equation.