《强化学习的数学原理》(2024春)_西湖大学赵世钰 Ch7 时序差分方法 [model-free+增量] 【TD-learning:Sarsa、Q-learning】【贝尔曼期望公式】
PPT 截取有用信息。 课程网站做习题。总体 MOOC 过一遍
- 1、学堂在线 视频 + 习题
- 2、相应章节 过电子书 复习 【下载:本章 PDF 文档GitHub】
- 3、MOOC 习题
- 不理解的地方
学堂在线 课程页面链接
中国大学MOOC 课程页面链接
B 站 视频链接
PPT和书籍下载网址: 【GitHub链接】
文章目录

——————
7.1 状态值 的 TD 学习算法
P1
temporal-difference (TD) learning 时间差分学习
第 5 章 蒙特卡洛方法 model-free 方法 非增量
本章的 TD 学习 是 第二种 model-free 方法 增量式
下一章介绍 的值函数近似 基于 TD 方法。
本章 (表格) ——> 下一章 (函数表示)

用 RM 算法 求解 3 个 问题:
问题 1:
简单的均值估计问题:: 基于随机变量 X ~X~ X 的独立同分布采样数据 { x } ~\{x\}~ {x} ,计算 w = E [ X ] w=\mathbb E[\textcolor{blue}{X}] w=E[X]。
令 g ( w ) = w − E [ X ] ~g(w)=w-\mathbb E[X] g(w)=w−E[X], 将问题重新表述为 寻根问题 g ( w ) = 0 ~g(w)=0 g(w)=0
可获取的 带误差的值 g ~ ( w , η ) = w − x = ( w − E [ X ] ) + ( E [ X ] − x ) ≐ g ( w ) + η ~\textcolor{blue}{\widetilde g(w,\eta)=w-x=(w-\mathbb E[X])+(\mathbb E[X]-x)}\doteq g(w)+\eta g (w,η)=w−x=(w−E[X])+(E[X]−x)≐g(w)+η
RM 算法迭代求解公式: w k + 1 = w k − α k g ~ ( w k , η k ) = w k − α k ( w k − x k ) w_{k+1}=w_k-\alpha_k\widetilde g(w_k,\eta_k)=w_k-\alpha_k(w_k-\textcolor{blue}{x_k}) wk+1=wk−αkg (wk,ηk)=wk−αk(wk−xk)
$\doteq$ ≐ ~~~\doteq ≐
问题 2:
估计函数 v ( X ) v(X) v(X) 的均值: w = E [ v ( X ) ] w=\mathbb E[\textcolor{blue}{v(X)}] w=E[v(X)], 基于 X ~X~ X 的独立同分布采样数据 { x } ~\{x\}~ {x} 。
令 g ( w ) = w − E [ v ( X ) ] ~g(w)=w-\mathbb E[v(X)] g(w)=w−E[v(X)], 将问题重新表述为 寻根问题 g ( w ) = 0 ~g(w)=0 g(w)=0
可获取的 带误差的值 g ~ ( w , η ) = w − v ( x ) = ( w − E [ v ( X ) ] ) + ( E [ v ( X ) ] − v ( x ) ) ≐ g ( w ) + η ~\textcolor{blue}{\widetilde g(w,\eta)=w-v(x)=(w-\mathbb E[v(X)])+(\mathbb E[v(X)]-v(x))}\doteq g(w)+\eta g (w,η)=w−v(x)=(w−E[v(X)])+(E[v(X)]−v(x))≐g(w)+η
RM 算法迭代求解公式: w k + 1 = w k − α k g ~ ( w k , η k ) = w k − α k ( w k − v ( x k ) ) w_{k+1}=w_k-\alpha_k\widetilde g(w_k,\eta_k)=w_k-\alpha_k(w_k-\textcolor{blue}{v(x_k)}) wk+1=wk−αkg (wk,ηk)=wk−αk(wk−v(xk))
问题 3:
估计函数均值: w = E [ R + γ v ( X ) ] w=\mathbb E[\textcolor{blue}{R+\gamma v(X)}] w=E[R+γv(X)], 基于 X ~X~ X 的独立同分布采样数据 { x } ~\{x\}~ {x} 和 R ~R~ R 的独立同分布采样数据 { r } ~\{r\}~ {r} , γ \gamma γ 为常数。
令 g ( w ) = w − E [ R + γ v ( X ) ] ~g(w)=w-\mathbb E[R+\gamma v(X)] g(w)=w−E[R+γv(X)], 将问题重新表述为 寻根问题 g ( w ) = 0 ~g(w)=0 g(w)=0
可获取的 带误差的值 g ~ ( w , η ) = w − [ r + γ v ( x ) ] = ( w − E [ R + γ v ( X ) ] ) + ( E [ R + γ v ( X ) ] − [ r + γ v ( x ) ] ) ≐ g ( w ) + η ~\textcolor{blue}{\widetilde g(w,\eta)=w-[r + \gamma v(x)]=(w-\mathbb E[R + \gamma v(X)])+(\mathbb E[R + \gamma v(X)]-[r+\gamma v(x)])}\doteq g(w)+\eta g (w,η)=w−[r+γv(x)]=(w−E[R+γv(X)])+(E[R+γv(X)]−[r+γv(x)])≐g(w)+η
RM 算法迭代求解公式: w k + 1 = w k − α k g ~ ( w k , η k ) = w k − α k [ w k − ( r k + γ v ( x k ) ) ] w_{k+1}=w_k-\alpha_k\widetilde g(w_k,\eta_k)=w_k-\alpha_k[w_k-(\textcolor{blue}{r _k+\gamma v(x_k)})] wk+1=wk−αkg (wk,ηk)=wk−αk[wk−(rk+γv(xk))]
——————
P2
TD 算法的目标:求解 给定策略 π \pi π 的 状态值
求解了 状态值, 相当于做了 策略评估,用于后续的 策略改进。
基于 数据 / 经验。 { ( s t , r t + 1 , s t + 1 ) } \{(s_t, r_{t+1}, s_{t+1})\} {(st,rt+1,st+1)}
TD 学习算法
v t + 1 ( s t ) ⏟ 新的估计值 = v t ( s t ) ⏟ 当前估计值 − α ( s t ) ⏟ 学习率 [ v t ( s t ) − [ r t + 1 + γ v t ( s t + 1 ) ] ⏟ T D 目标 v ˉ t ] ⏞ T D 误差 δ t \underbrace{v_{t+1}(s_t)}_{\textcolor{blue}{新的估计值}}=\underbrace{v_t(s_t)}_{\textcolor{blue}{当前 估计值}}-\underbrace{\alpha(s_t)}_{\textcolor{blue}{学习率}}\overbrace{[v_t(s_t)-\underbrace{[r_{t+1}+\gamma v_t(s_{t+1})]}_{\textcolor{blue}{{\rm TD} ~目标~ \bar v_t}}]}^{\textcolor{blue}{{\rm TD} ~误差~\delta_t}} 新的估计值 vt+1(st)=当前估计值 vt(st)−学习率 α(st)[vt(st)−TD 目标 vˉt [rt+1+γvt(st+1)]] TD 误差 δt
~
v t + 1 ( s ) = v t ( s ) , ∀ s ≠ s t v_{t+1}(s)=v_t(s), ~~~~\forall~s\neq s_t~~~~ vt+1(s)=vt(s), ∀ s=st 未访问的状态 (非当前的 s t s_t st) 的值 不更新
- t = 0 , 1 , 2 , . . . t = 0, 1, 2, ... t=0,1,2,...
- v t ( s t ) v_t(s_t) vt(st): v π ( s t ) v_\pi(s_t) vπ(st) 的 状态值 估计。
- α t ( s t ) \alpha_t(s_t) αt(st): s t s_t st 在时间 t t t 的学习率。
————
在时刻 t t t,只有访问过的状态 s t s_t st 的值被更新,而未访问过的状态 s t s_t st 的值保持不变。
新的估计 v t + 1 ( s t ) v_{t+1}(s_t) vt+1(st) 是当前估计 v t ( s t ) v_t(s_t) vt(st) 和 TD 误差的组合。
如何理解 TD 目标 v ˉ t \bar v_t vˉt
- 算法 驱使 v ( s t ) v(s_t) v(st) 向 v ˉ t \bar v_t vˉt 移动
v t + 1 ( s t ) = v t ( s t ) − α t ( s t ) [ v t ( s t ) − v ˉ t ] v_{t+1}(s_t)=v_t(s_t)-\alpha_t(s_t)[v_t(s_t)-\bar v_t] vt+1(st)=vt(st)−αt(st)[vt(st)−vˉt]
v t + 1 ( s t ) − v ˉ t = v t ( s t ) − v ˉ t − α t ( s t ) [ v t ( s t ) − v ˉ t ] v_{t+1}(s_t)\textcolor{blue}{-\bar v_t}=v_t(s_t)\textcolor{blue}{-\bar v_t}-\alpha_t(s_t)[v_t(s_t)-\bar v_t] vt+1(st)−vˉt=vt(st)−vˉt−αt(st)[vt(st)−vˉt]
v t + 1 ( s t ) − v ˉ t = [ 1 − α t ( s t ) ] [ v t ( s t ) − v ˉ t ] v_{t+1}(s_t)-\bar v_t=[1-\alpha_t(s_t)][v_t(s_t)-\bar v_t] vt+1(st)−vˉt=[1−αt(st)][vt(st)−vˉt]
∣ v t + 1 ( s t ) − v ˉ t ∣ = ∣ 1 − α t ( s t ) ∣ ∣ v t ( s t ) − v ˉ t ∣ |v_{t+1}(s_t)-\bar v_t|=|1-\alpha_t(s_t)||v_t(s_t)-\bar v_t| ∣vt+1(st)−vˉt∣=∣1−αt(st)∣∣vt(st)−vˉt∣
因为 α t ( s t ) \alpha_t(s_t) αt(st) 是小的正数, 则 0 < 1 − α t ( s t ) < 1 0 < 1-\alpha_t(s_t)<1 0<1−αt(st)<1
∣ v t + 1 ( s t ) − v ˉ t ∣ ≤ ∣ v t ( s t ) − v ˉ t ∣ |v_{t+1}(s_t)-\bar v_t|\leq|v_t(s_t)-\bar v_t| ∣vt+1(st)−vˉt∣≤∣vt(st)−vˉt∣
两者越来越近。
如何理解 TD误差? δ t = v ( s t ) − [ r t + 1 + γ v ( s t + 1 ) ] \delta_t=v(s_t)-[r_{t+1}+\gamma v(s_{t+1})] δt=v(st)−[rt+1+γv(st+1)]
- 从经验 ( s t , r t + 1 , s t + 1 ) (s_t, r_{t+1},s_{t+1}) (st,rt+1,st+1) 获取的新信息。
- 两个时间步之间的差异。
- 反映了估计的 v t v_t vt 和 真实状态值 v π v_\pi vπ 之间的差距
令 δ π , t ≐ v π ( s t ) − [ r t + 1 + γ v π ( s t + 1 ) ] \delta_{\pi,t}\doteq v_\pi(s_t)-[r_{t+1}+\gamma v_\pi(s_{t+1})] δπ,t≐vπ(st)−[rt+1+γvπ(st+1)]
E [ δ π , t ∣ S t = s t ] = v π ( s t ) − E [ R t + 1 + γ v π ( S t + 1 ) ∣ S t = s t ] = 0 {\mathbb E}[\delta_{\pi,t}|S_t=s_t]=v_\pi(s_t)-{\mathbb E}[R_{t+1}+\gamma v_\pi(S_{t+1})|S_t=s_t]=0 E[δπ,t∣St=st]=vπ(st)−E[Rt+1+γvπ(St+1)∣St=st]=0

如果 δ t ≠ 0 \delta_t\neq0 δt=0, 则 v t ≠ v π v_t\neq v_\pi vt=vπ。
时序差分: 两个不同时刻。
TD学习的基本思想是根据新获得的信息修正 当前对状态值的估计。
————————————————
当前 TD 算法:仅能 估计给定策略的 状态值。
后续 TD 算法:可估计动作值,然后搜索最优策略。
——————
P3
TD 算法的目标: 在没有模型的情况下,求解 给定策略的 贝尔曼公式。model-free
贝尔曼期望方程:
策略 π \pi π 的状态值 v π ( s ) = E [ R + γ G ∣ S = s ] , s ∈ S v_\pi(s)=\mathbb E[R+\gamma G|S=s], ~~~s\in \mathcal S vπ(s)=E[R+γG∣S=s], s∈S
- G G G 是 折扣回报
由于 E [ G ∣ S = s ] = ∑ a π ( a ∣ s ) ∑ s ′ p ( s ′ ∣ s , a ) v π ( s ′ ) = E [ v π ( S ′ ) ∣ S = s ] \mathbb E[G|S=s]=\sum\limits_a\pi(a|s)\sum\limits_{s^\prime}p(s^\prime|s, a)v_\pi(s^\prime)=\mathbb E[v_\pi(S^\prime)|S=s] E[G∣S=s]=a∑π(a∣s)s′∑p(s′∣s,a)vπ(s′)=E[vπ(S′)∣S=s]
S ′ S^\prime S′: 下一状态
v π ( s ) = E [ R + γ v π ( S ′ ) ∣ S = s ] , s ∈ S v_\pi(s)=\mathbb E[R+\gamma v_\pi(S^\prime)|S=s],~~~s\in \mathcal S vπ(s)=E[R+γvπ(S′)∣S=s], s∈S
如何求解上述 贝尔曼期望方程?
已知: R R R 的样本 r r r, S ′ S^\prime S′ 的样本 s ′ s^\prime s′
带误差的观测值:
g ~ ( v ( s ) ) = v ( s ) − [ r + γ v π ( s ′ ) ] = ( v ( s ) − E [ R + γ v π ( S ′ ) ∣ s ] ) ⏟ g ( v ( s ) ) + ( E [ R + γ v π ( S ′ ) ∣ s ] − [ r + γ v π ( s ′ ) ] ) ⏟ η \begin{aligned}\widetilde g(v(s))&=v(s)-[r+\gamma v_\pi(s^\prime)]\\ &=\underbrace{\Big(v(s)-\mathbb E[R+\gamma v_\pi(S^\prime)|s]\Big)}_{g(v(s))}+\underbrace{\Big(\mathbb E[R+\gamma v_\pi(S^\prime)|s]-[r+\gamma v_\pi(s^\prime)]\Big)}_{\eta}\end{aligned} g
(v(s))=v(s)−[r+γvπ(s′)]=g(v(s))
(v(s)−E[R+γvπ(S′)∣s])+η
(E[R+γvπ(S′)∣s]−[r+γvπ(s′)])
求解 g ( v ( s ) ) = 0 g(v(s))=0 g(v(s))=0 的 RM 算法:
v k + 1 ( s ) = v k ( s ) − α k g ~ ( v k ( s ) ) = v ( s ) − α k ( v k ( s ) − [ r k + γ v π ( s k ′ ) ] ) , k = 1 , 2 , 3 , . . . \begin{aligned}v_{k+1}(s)&=v_k(s)-\alpha_k\widetilde g(v_k(s))\\ &=v(s)-\alpha_k \Big( v_k(s)-[r_k+\gamma v_\pi(s^\prime_k)]\Big), ~~~k=1, 2, 3, ...\end{aligned} vk+1(s)=vk(s)−αkg (vk(s))=v(s)−αk(vk(s)−[rk+γvπ(sk′)]), k=1,2,3,...
上述解法需要满足两个前提:有些量未知!!!
1、已知 经验集 { s , r , s ′ } \{s, r, s^\prime\} {s,r,s′}, 对于 k = 1 , 2 , 3 , . . . k=1, 2, 3,... k=1,2,3,...。——> 利用 一个 episode 的序列样本:改成 { ( s t , r t + 1 , s t + 1 } \{(s_t, r_{t+1}, s_{t+1}\} {(st,rt+1,st+1}
2、已知 任意 s ′ s^\prime s′ 的状态值 v π ( s ′ ) v_\pi(s^\prime) vπ(s′)。 ——> 用估计值 v k ( s k ′ ) v_k(s_k^\prime) vk(sk′) 代替
TD 学习的收敛性:
当对所有的 s ∈ S s\in\mathcal S s∈S, 均满足 ∑ t α t ( s ) = ∞ \sum\limits_t\alpha_t(s)=\infty t∑αt(s)=∞ 和 ∑ t α t 2 ( s ) < ∞ \sum\limits_t\alpha_t^2(s)<\infty t∑αt2(s)<∞,则当 t → ∞ t\to\infty t→∞ 时, v t ( s ) v_t(s) vt(s) 以 概率 1 收敛到 v π ( s ) v_\pi(s) vπ(s) 。

该定理表明,对于给定的策略,可以通过 TD 算法找到 状态值。
要求 每个状态 被访问足够多次。
- TD 学习 的 收敛性证明 7.1.3 P139 - P141
——————
TD 学习 和 MC 学习 都是 model-free
- Sarsa 类似于 TD 学习, 但能估计 动作值
| TD/Sarsa 学习 | MC 学习 |
|---|---|
| 在线Online:在收到奖励后立即更新 状态值/行动值。 | 离线Offline:一个 episode 修改一次。 |
| 除了 episodic tasks, 还可以处理 continuing tasks | 具有终止状态的 episodic tasks |
| Bootstrapping:值的更新依赖于先前对该值的估计。因此,它需要初始猜测。 | Non-bootstrapping:可直接估计状态/动作值,而不需要任何初始猜测。 |
| 低估计方差:随机变量更少。 R t + 1 , S t + 1 , A t + 1 R_{t+1}, S_{t+1}, A_{t+1} Rt+1,St+1,At+1 | 高估计方差:为了估计 q π ( s t , a t ) q_\pi(s_t, a_t) qπ(st,at), 需要样本 R t + 1 + γ R t + 2 + γ 2 R t + 3 + . . . R_{t+1}+\gamma R_{t+2} + \gamma ^2R_{t+3}+... Rt+1+γRt+2+γ2Rt+3+... 假设每个 episode 的长度为 L L L, 则共有 ∣ A ∣ L |\mathcal A|^L ∣A∣L 个 episodes,只通过 一个 episode 来估计这么多值, 方差必然会很大。 |
| 估计值是否有偏差和 初始猜测 和 迭代次数 有关 | 无偏估计 |
7.2 动作值 的 TD 算法: Sarsa
P4
Sarsa 算法 可以 直接估计 动作值。
如何 使用 Sarsa 来找到 最优策略。
- Sarsa 估计动作值 + 策略改进 步骤 , 即可寻找最优策略。
————————————
目标: 估计给定策略 π π π 的动作值。
一些经验: { ( s t , a t , r t + 1 , s t + 1 , a t + 1 ) } t \left\{(s_t,a_t,r_{t+1},s_{t+1}, a_{t+1})\right\}_t {(st,at,rt+1,st+1,at+1)}t
使用下面的 Sarsa 算法来估计动作值:

q t + 1 ( s t , a t ) = q t ( s t , a t ) − α t ( s t , a t ) [ q t ( s t , a t ) − [ r t + 1 + γ q t ( s t + 1 , a t + 1 ) ] ] q_{t+1}(s_t, a_t)=q_t(s_t,a_t)-\alpha_t(s_t,a_t)\Big[q_t(s_t, a_t)-[r_{t+1}+\gamma q_t(s_{t+1}, a_{t+1})]\Big] qt+1(st,at)=qt(st,at)−αt(st,at)[qt(st,at)−[rt+1+γqt(st+1,at+1)]]
q t + 1 ( s , a ) = q t ( s , a ) , ∀ ( s , a ) ≠ ( s t , a t ) q_{t+1}(s, a)=q_t(s,a), ~~~\forall~(s, a)\neq (s_t, a_t) qt+1(s,a)=qt(s,a), ∀ (s,a)=(st,at)
- t = 0 , 1 , 2 , . . . t = 0, 1, 2,... t=0,1,2,...
- q t ( s t , a t ) q_t(s_t, a_t) qt(st,at): q π ( s t , a t ) q_\pi(s_t, a_t) qπ(st,at) 的估计值。
- α t ( s t , a t ) \alpha_t(s_t, a_t) αt(st,at): 取决于 s t , a t s_t,a_t st,at 的学习率。
在时间 t t t,只有 ( s t , a t ) (s_t,a_t) (st,at) 的 q 值 被更新。
Sarsa:state-action-reward-state-action 的缩写, ( s t , a t , r r + 1 , s t + 1 , a t + 1 ) (s_t,a_t,r_{r+1},s_{t+1},a_{t+1}) (st,at,rr+1,st+1,at+1)
Sarsa 是 TD 算法的 动作值版本。
v ( s ) → q ( s , a ) v(s)\to q(s, a) v(s)→q(s,a)
Sarsa:求解 以下问题的随机近似算法。
q π ( s , a ) = E [ R + γ q π ( S ′ , A ′ ) ∣ s , a ] , ∀ s , a q_\pi(s, a)=\mathbb E[R+\gamma q_\pi(S^\prime, A^\prime)|s, a], ~~~\forall ~s, a qπ(s,a)=E[R+γqπ(S′,A′)∣s,a], ∀ s,a
这是 Bellman方程 的另一个用动作值表示的表达式。
- 电子书 证明 P143
Sarsa 学习 的收敛性:
当对所有的 ( s , a ) (s, a) (s,a), 均满足 ∑ t α t ( s , a ) = ∞ \sum\limits_t\alpha_t(s, a)=\infty t∑αt(s,a)=∞ 和 ∑ t α t 2 ( s , a ) < ∞ \sum\limits_t\alpha_t^2(s, a)<\infty t∑αt2(s,a)<∞,则当 t → ∞ t\to\infty t→∞ 时, q t ( s , a ) q_t(s, a) qt(s,a) 以 概率 1 收敛到 q π ( s , a ) q_\pi(s, a) qπ(s,a) 。

∑ t α t ( s , a ) = ∞ \sum\limits_t\alpha_t(s, a)=\infty t∑αt(s,a)=∞ 要求 每个 状态-动作对 必须被访问 无数次 或至少 足够多 次。
在 时间 t t t, 如果 ( s , a ) = ( s t , a t ) (s, a)=(s_t,a_t) (s,a)=(st,at), 则 α t ( s , a ) > 0 \alpha_t(s, a)>0 αt(s,a)>0; 否则 α t ( s , a ) = 0 \alpha_t(s, a)=0 αt(s,a)=0
对于给定策略 π \pi π, 可以通过 Sarsa 算法 计算 动作值。
————————————
7.2.2 通过 Sarsa 学习最优策略
Sarsa + 策略改进 步骤

每次迭代有两个步骤。
第一步是更新被访问 状态-动作对的 q 值。
第二步是将策略更新为 ε \varepsilon ε-greedy 策略。q 值更新步骤仅更新所访问的单个状态-动作对
在 q ( s t , a t ) q(s_t, a_t) q(st,at) 更新之后,立即更新 s t s_t st 的策略。
平衡 利用exploitation 和 探索exploration: ϵ \epsilon ϵ-greedy。 访问更多的 ( s , a ) (s, a) (s,a)
例子:寻找从特定起始状态 [左上角] 到 目标状态 的最优路径。
可行路径 or 最优路径
Sarsa 的两个变形: Expected Sarsa、 n-step Sarsa。
研究思路:从经典算法出发,推广-改进
Expected Sarsa
Sarsa:
q t + 1 ( s t , a t ) = q t ( s t , a t ) − α t ( s t , a t ) [ q t ( s t , a t ) − [ r t + 1 + γ q t ( s t + 1 , a t + 1 ) ] ] q_{t+1}(s_t, a_t)=q_t(s_t,a_t)-\alpha_t(s_t,a_t)\Big[q_t(s_t, a_t)-[r_{t+1}+\gamma q_t(s_{t+1}, a_{t+1})]\Big] qt+1(st,at)=qt(st,at)−αt(st,at)[qt(st,at)−[rt+1+γqt(st+1,at+1)]]
q t + 1 ( s , a ) = q t ( s , a ) , ∀ ( s , a ) ≠ ( s t , a t ) q_{t+1}(s, a)=q_t(s,a), ~~~\forall~(s, a)\neq (s_t, a_t) qt+1(s,a)=qt(s,a), ∀ (s,a)=(st,at)
————————
Expected Sarsa:
q t + 1 ( s t , a t ) = q t ( s t , a t ) − α t ( s t , a t ) [ q t ( s t , a t ) − [ r t + 1 + γ E [ q t ( s t + 1 , A ) ] ) ] q_{t+1}(s_t, a_t)=q_t(s_t,a_t)-\alpha_t(s_t,a_t)\Big[q_t(s_t, a_t)-[r_{t+1}+\gamma \textcolor{blue}{\mathbb E}[q_t(s_{t+1}, \textcolor{blue}{A})])\Big] qt+1(st,at)=qt(st,at)−αt(st,at)[qt(st,at)−[rt+1+γE[qt(st+1,A)])]
q t + 1 ( s , a ) = q t ( s , a ) , ∀ ( s , a ) ≠ ( s t , a t ) q_{t+1}(s, a)=q_t(s,a), ~~~\forall~(s, a)\neq (s_t, a_t) qt+1(s,a)=qt(s,a), ∀ (s,a)=(st,at)
- E [ q t ( s t + 1 , A ) ] = ∑ a π t ( a ∣ s t + 1 q t ( s t + 1 , a ) ) ≐ v t ( s t + 1 ) \mathbb E[q_t(s_{t+1}, A)]=\sum\limits_{a}\pi_t(a|s_{t+1}q_t(s_{t+1}, a))\doteq v_t(s_{t+1})~~~ E[qt(st+1,A)]=a∑πt(a∣st+1qt(st+1,a))≐vt(st+1) 【策略 π t \pi_t πt 的 q t ( s t + 1 , a ) q_t(s_{t+1}, a) qt(st+1,a) 的期望值 】
计算量比 Sarsa 大, 但由于随机参数变少, 估计方差减小。
Expected Sarsa 是一种随机近似算法,用于求解下式:
q π ( s , a ) = E [ R t + 1 + γ E A t + 1 ∼ π ( S t + 1 ) [ q π ( S t + 1 , A t + 1 ) ] ∣ S t = s , A t = a ] , ∀ s , a q_\pi(s,a)=\mathbb E[R_{t+1}+\gamma \mathbb E_{A_{t+1}\sim\pi(S_{t+1})}[q_\pi(S_{t+1}, A_{t+1})]|S_t=s, A_t=a], ~~~\forall ~s, a qπ(s,a)=E[Rt+1+γEAt+1∼π(St+1)[qπ(St+1,At+1)]∣St=s,At=a], ∀ s,a
以上方程是 Bellman 方程的另一种表达:
q π ( s , a ) = E [ R t + 1 + γ v π ( S t + 1 ) ∣ S t = s , A t = a ] q_\pi(s,a)=\mathbb E[R_{t+1}+\gamma v_\pi(S_{t+1})|S_t=s, A_t=a] qπ(s,a)=E[Rt+1+γvπ(St+1)∣St=s,At=a]
$\sim$ ∼ ~~\sim ∼
n-step Sarsa
Sarsa 和 MC 学习 是 n-step Sarsa 的两个极端情况


t + n t + n t+n 时刻 更新 ( s t , a t ) (s_t,a_t) (st,at) 时刻的 q 值。
如果 n 较大,则其性能接近 MC 学习,因此方差较大,但偏差较小。
如果 n 较小,则其性能接近 Sarsa,因此由于初始猜测和相对较低的方差,其偏差较大。
7.4 最优动作值 的 TD 学习: Q-learning
P6
Q-learning 可以直接估计 最优动作值并获得最优策略。
Sarsa:
q t + 1 ( s t , a t ) = q t ( s t , a t ) − α t ( s t , a t ) [ q t ( s t , a t ) − [ r t + 1 + γ q t ( s t + 1 , a t + 1 ) ] ] q_{t+1}(s_t, a_t)=q_t(s_t,a_t)-\alpha_t(s_t,a_t)\Big[q_t(s_t, a_t)-[r_{t+1}+\gamma q_t(s_{t+1}, a_{t+1})]\Big] qt+1(st,at)=qt(st,at)−αt(st,at)[qt(st,at)−[rt+1+γqt(st+1,at+1)]]
q t + 1 ( s , a ) = q t ( s , a ) , ∀ ( s , a ) ≠ ( s t , a t ) q_{t+1}(s, a)=q_t(s,a), ~~~\forall~(s, a)\neq (s_t, a_t) qt+1(s,a)=qt(s,a), ∀ (s,a)=(st,at)
————————
Q-learning:
q t + 1 ( s t , a t ) = q t ( s t , a t ) − α t ( s t , a t ) [ q t ( s t , a t ) − [ r t + 1 + γ max a ∈ A ( s t + 1 ) q t ( s t + 1 , a ) ] ] q_{t+1}(s_t, a_t)=q_t(s_t,a_t)-\alpha_t(s_t,a_t)\Big[q_t(s_t, a_t)-[r_{t+1}+\gamma \textcolor{blue}{\max\limits_{a\in{\mathcal A}(s_{t+1})}} q_t(s_{t+1}, \textcolor{blue}{a})]\Big] qt+1(st,at)=qt(st,at)−αt(st,at)[qt(st,at)−[rt+1+γa∈A(st+1)maxqt(st+1,a)]]
q t + 1 ( s , a ) = q t ( s , a ) , ∀ ( s , a ) ≠ ( s t , a t ) q_{t+1}(s, a)=q_t(s,a), ~~~\forall~(s, a)\neq (s_t, a_t) qt+1(s,a)=qt(s,a), ∀ (s,a)=(st,at)
- 需要对 a a a 进行优化
给定 ( s t , a t ) (s_t,a_t) (st,at),需要的经验数据:
Sarsa: ( r t + 1 , s t + 1 , a t + 1 ) (r_{t+1},s_{t+1},\textcolor{blue}{a_{t+1}}) (rt+1,st+1,at+1)
Q-learning: ( r t + 1 , s t + 1 ) (r_{t+1},s_{t+1}) (rt+1,st+1)
Q-learning 求解 用 动作值 表示的 Bellman 最优方程。
q ( s , a ) = E [ R t + 1 + γ max a q ( S t + 1 , a ) ∣ S t = s , A t = a ] , ∀ s , a q(s, a)=\mathbb E[R_{t+1}+\gamma \max\limits_a q(S_{t+1}, a)|S_t=s, A_t=a], ~~~\forall ~s, a q(s,a)=E[Rt+1+γamaxq(St+1,a)∣St=s,At=a], ∀ s,a
- 电子书 证明 上式为 贝尔曼最优公式
7.4.2 Off-policy vs on-policy
behavior policy: 和环境进行交互,然后生成 experience 样本。
target policy:不断朝 最优策略 更新。
on-policy:
- behavior policy 和 target policy 相同
- 用策略来和环境交互,得到 experience, 同时改进策略,然后用 改进的策略和环境交互。
Sarsa,MCoff-policy:
- behavior policy 和 target policy 可以不同, 也可以相同。
- 用一个策略和环境交互得到大量的经验,用这些经验不断改进一个策略,直到策略收敛。
Q-learning
——————
如何 判断 某个算法 是 on-policy 还是 off-policy?
- 算法的目标是解决什么数学问题?
- 算法需要哪些经验样本?


Sarsa:
- 求解给定策略的贝尔曼公式
- 需要

a t + 1 a_{t+1} at+1 和 策略有关。

MC: 估计 动作值

贝尔曼最优公式 不涉及 任何策略。

若 ( s t , a t ) (s_t, a_t) (st,at) 给定, 从上述两个 转移概率公式可计算 ( s t + 1 , a t + 1 ) (s_{t+1}, a_{t+1}) (st+1,at+1), 不涉及 策略。
P7
Q-learning 算法 如何 实现?
on-policy 版本: 让 目标策略 和 行为策略 相同


b: behavior
根据已有的数据 寻找最优策略
这里 不再是 ε − \varepsilon- ε−greedy。
例子: 为 每个状态 找对应的最优策略
探索性 比较强

P8
之前的内容:Q-learning 算法是什么?解决什么样的数学问题?
Sarsa 和 蒙特卡洛方法 都是 on-policy
Q-learning 是 off-policy
为什么将神经网络 和 TD 算法 结合的时候选择 Q-learning , 和 Q-learning 的 off-policy 性质有很大关系。
目标: 让 q t q_t qt 不断接近 TD target


——————————
7.6
TD-learning:Sarsa、n-step Sarsa 和 Q-learning
on-policy: 目标策略被用作行为策略来生成经验样本。
Q-learning 是 off-policy 的根本原因是,Q-learning 旨在解决 Bellman 最优性方程,而不是给定策略的 Bellman 方程。
7.7
为什么 Sarsa 的更新策略设计为 ε \varepsilon ε-greedy?
答:这是因为该策略也用于生成样本进行价值估计。产生足够的经验样本应该是探索性的。
为什么 Q-learning 的 off-policy 版本会将策略更新设为 greedy 而不是 ε \varepsilon ε-greedy?
答:这是因为目标策略不需要生成经验样本。因此,它不需要是探索性的。
习题 笔记:
Sarsa 估计的是 动作值
Q-learning 每次使用经验数据包括 ( s t , a t , s t + 1 , r t + 1 ) (s_t,a_t,s_{t+1},r_{t+1}) (st,at,st+1,rt+1)。相比 Sarsa,Q-learning 不需要 a t + 1 a_{t+1} at+1.
PDF 补充
7.1.3 TD 学习 的 收敛性

考虑 任意状态 s ∈ S s\in\mathcal S s∈S, 在 时间 t t t:
v t + 1 ( s ) = v t ( s ) − α t ( s ) ( v t ( s ) − ( r t + 1 + γ v t ( s t + 1 ) ) ) , s = s t v_{t+1}(s)=v_t(s)-\alpha_t(s)\big(v_t(s)-(r_{t+1}+\gamma v_t(s_{t+1}))\big),~~s=s_t vt+1(s)=vt(s)−αt(s)(vt(s)−(rt+1+γvt(st+1))), s=st
v t + 1 ( s ) = v t ( s ) , s ≠ s t v_{t+1}(s)=v_t(s), ~~s\neq s_t vt+1(s)=vt(s), s=st
估计误差 Δ t ( s ) = v t ( s ) − v π ( s ) \Delta_t(s)=v_t(s)-v_\pi(s) Δt(s)=vt(s)−vπ(s)
v π ( s ) v_\pi(s) vπ(s): 策略 π \pi π 下状态 s s s 的状态值 。
当 s = s t s=s_t s=st:
v t + 1 ( s ) − v π ( s ) = v t ( s ) − v π ( s ) − α t ( s ) ( v t ( s ) − v π ( s ) + v π ( s ) − ( r t + 1 + γ v t ( s t + 1 ) ) ) , s = s t v_{t+1}(s)\textcolor{blue}{-v_\pi(s)}=v_t(s)\textcolor{blue}{-v_\pi(s)}-\alpha_t(s)\big(v_t(s)\textcolor{blue}{-v_\pi(s)+v_\pi(s)}-(r_{t+1}+\gamma v_t(s_{t+1}))\big),~~s=s_t vt+1(s)−vπ(s)=vt(s)−vπ(s)−αt(s)(vt(s)−vπ(s)+vπ(s)−(rt+1+γvt(st+1))), s=st
Δ t + 1 ( s ) = Δ t ( s ) − α t ( s ) ( Δ t ( s ) + v π ( s ) − ( r t + 1 + γ v t ( s t + 1 ) ) ) = ( 1 − α t ( s ) ) Δ t ( s ) + α t ( s ) ( r t + 1 + γ v t ( s t + 1 ) − v π ( s ) ⏟ η t ( s ) ) = ( 1 − α t ( s ) ) Δ t ( s ) + α t ( s ) η t ( s ) \begin{aligned}\Delta_{t+1}(s)&=\Delta_t(s)-\alpha_t(s)\big(\Delta_t(s)+v_\pi(s)-(r_{t+1}+\gamma v_t(s_{t+1}))\big)\\ &=(1-\alpha_t(s))\Delta_t(s)+\alpha_t(s)(\underbrace{r_{t+1}+\gamma v_t(s_{t+1})-v_\pi(s)}_{\eta_t(s)})\\ &=(1-\alpha_t(s))\Delta_t(s)+\alpha_t(s)\eta_t(s)\end{aligned} Δt+1(s)=Δt(s)−αt(s)(Δt(s)+vπ(s)−(rt+1+γvt(st+1)))=(1−αt(s))Δt(s)+αt(s)(ηt(s) rt+1+γvt(st+1)−vπ(s))=(1−αt(s))Δt(s)+αt(s)ηt(s)
当 s ≠ s t s\neq s_t s=st:
v t + 1 ( s ) − v π ( s ) = v t ( s ) − v π ( s ) v_{t+1}(s)\textcolor{blue}{-v_\pi(s)}=v_t(s)\textcolor{blue}{-v_\pi(s)} vt+1(s)−vπ(s)=vt(s)−vπ(s)
Δ t + 1 ( s ) = Δ t ( s ) \Delta_{t+1}(s)=\Delta_t(s) Δt+1(s)=Δt(s)
证明
Δ t + 1 ( s ) = ( 1 − α t ( s ) ) Δ t ( s ) + α t ( s ) η t ( s ) \Delta_{t+1}(s)=(1-\alpha_t(s))\Delta_t(s)+\alpha_t(s)\eta_t(s) Δt+1(s)=(1−αt(s))Δt(s)+αt(s)ηt(s)
满足 定理 6.3 的 3 个条件。

条件 2:
对 所有的 s ∈ S s\in \cal S s∈S,有 ∣ ∣ E [ η t ( s ) ∣ H t ] ∣ ∣ ∞ ≤ γ ∣ ∣ Δ t ( s ) ∣ ∣ ∞ ||\mathbb E[\eta_t(s)|\mathcal H_t]||_\infty\leq\gamma||\Delta_t(s)||_\infty ∣∣E[ηt(s)∣Ht]∣∣∞≤γ∣∣Δt(s)∣∣∞
H t \cal H_t Ht 表示历史信息。
由马尔可夫性质, 一旦 s s s 给定, η t ( s ) = r t + 1 + γ v t ( s t + 1 − v π ( s ) ) \eta_t(s)=r_{t+1}+\gamma v_t(s_{t+1}-v_\pi(s)) ηt(s)=rt+1+γvt(st+1−vπ(s)) 或 η t ( s ) = 0 \eta_t(s)=0 ηt(s)=0, 和 历史信息无关。
对于 s ≠ s t s\neq s_t s=st: η t ( s ) = 0 \eta_t(s)=0 ηt(s)=0
∣ E [ η t ( s ) ] ∣ = 0 ≤ γ ∣ ∣ Δ t ( s ) ∣ ∣ ∞ |\mathbb E[\eta_t(s)]|=0\leq\gamma||\Delta_t(s)||_\infty ∣E[ηt(s)]∣=0≤γ∣∣Δt(s)∣∣∞
对于 s = s t s=s_t s=st:
E [ η t ( s ) ] = E [ η t ( s t ) ] = E [ r t + 1 + γ v t ( s t + 1 ) − v π ( s t ) ∣ s t ] = E [ r t + 1 + γ v t ( s t + 1 ) ∣ s t ] − v π ( s t ) \begin{aligned}\mathbb E[\eta_t(s)]&=\mathbb E[\eta_t(s_t)]\\ &=\mathbb E[r_{t+1}+\gamma v_t(s_{t+1})-v_\pi(s_t)|s_t]\\ &=\mathbb E[r_{t+1}+\gamma v_t(s_{t+1})|s_t]-v_\pi(s_t)\end{aligned} E[ηt(s)]=E[ηt(st)]=E[rt+1+γvt(st+1)−vπ(st)∣st]=E[rt+1+γvt(st+1)∣st]−vπ(st)
由于 v π ( s t ) = E [ r t + 1 + γ v π ( s t + 1 ) ∣ s t ] v_\pi(s_t)=\mathbb E[r_{t+1}+\gamma v_\pi(s_{t+1})|s_t] vπ(st)=E[rt+1+γvπ(st+1)∣st]
E [ η t ( s ) ] = E [ r t + 1 + γ v t ( s t + 1 ) ∣ s t ] − v π ( s t ) = E [ r t + 1 + γ v t ( s t + 1 ) ∣ s t ] − E [ r t + 1 + γ v π ( s t + 1 ) ∣ s t ] = γ E [ v t ( s t + 1 ) − v π ( s t + 1 ) ∣ s t ] = γ ∑ s ′ ∈ S p ( s ′ ∣ s t ) [ v t ( s ′ ) − v π ( s ′ ) ] \begin{aligned}\mathbb E[\eta_t(s)]&=\mathbb E[r_{t+1}+\gamma v_t(s_{t+1})|s_t]-v_\pi(s_t)\\ &=\mathbb E[r_{t+1}+\gamma v_t(s_{t+1})|s_t]-\mathbb E[r_{t+1}+\gamma v_\pi(s_{t+1})|s_t]\\ &=\gamma\mathbb E[v_t(s_{t+1})-v_\pi(s_{t+1})|s_t]\\ &=\gamma\sum\limits_{s^\prime\in\mathcal S}p(s^\prime|s_t)[v_t(s^\prime)-v_\pi(s^\prime)]\end{aligned} E[ηt(s)]=E[rt+1+γvt(st+1)∣st]−vπ(st)=E[rt+1+γvt(st+1)∣st]−E[rt+1+γvπ(st+1)∣st]=γE[vt(st+1)−vπ(st+1)∣st]=γs′∈S∑p(s′∣st)[vt(s′)−vπ(s′)]
∣ E [ η t ( s ) ] ∣ = γ ∣ ∑ s ′ ∈ S p ( s ′ ∣ s t ) [ v t ( s ′ ) − v π ( s ′ ) ] ∣ ≤ γ ∑ s ′ ∈ S p ( s ′ ∣ s t ) max s ′ ∈ S ∣ v t ( s ′ ) − v π ( s ′ ) ∣ = γ max s ′ ∈ S ∣ v t ( s ′ ) − v π ( s ′ ) ∣ = γ ∣ ∣ v t ( s ′ ) − v π ( s ′ ) ∣ ∣ ∞ = γ ∣ ∣ Δ t ( s ) ∣ ∣ ∞ \begin{aligned}|\mathbb E[\eta_t(s)] |&=\gamma\Big|\sum\limits_{s^\prime\in\mathcal S}p(s^\prime|s_t)[v_t(s^\prime)-v_\pi(s^\prime)]\Big|\\ &\leq\gamma\sum\limits_{s^\prime\in\mathcal S}p(s^\prime|s_t)\max\limits_{s^\prime\in\cal S}\Big|v_t(s^\prime)-v_\pi(s^\prime)\Big|\\ &=\gamma \max\limits_{s^\prime\in\cal S}\Big|v_t(s^\prime)-v_\pi(s^\prime)\Big|\\ &=\gamma ||v_t(s^\prime)-v_\pi(s^\prime)||_\infty\\ &=\gamma||\Delta_t(s)||_\infty\end{aligned} ∣E[ηt(s)]∣=γ s′∈S∑p(s′∣st)[vt(s′)−vπ(s′)] ≤γs′∈S∑p(s′∣st)s′∈Smax vt(s′)−vπ(s′) =γs′∈Smax vt(s′)−vπ(s′) =γ∣∣vt(s′)−vπ(s′)∣∣∞=γ∣∣Δt(s)∣∣∞
条件 3:
对于 s = s t s=s_t s=st:
v a r [ η t ( s ) ∣ H t ] = v a r [ r t + 1 + γ v t ( s t + 1 ) − v π ( s t ) ∣ s t ] = v a r [ r t + 1 + γ v t ( s t + 1 ) ∣ s t ] {\rm var}[\eta_t(s)|\cal H_t]={\rm var}[r_{t+1}+\gamma v_t(s_{t+1})-v_\pi(s_t)|s_t]={\rm var}[r_{t+1}+\gamma v_t(s_{t+1})|s_t] var[ηt(s)∣Ht]=var[rt+1+γvt(st+1)−vπ(st)∣st]=var[rt+1+γvt(st+1)∣st]
对于 s ≠ s t s\neq s_t s=st:
v a r [ η t ( s ) ∣ H t ] = 0 {\rm var}[\eta_t(s)|\cal H_t]=0 var[ηt(s)∣Ht]=0
由于 r t + 1 r_{t+1} rt+1 有界。
???
证明: 7.13 是贝尔曼公式 P142

动作值 的 贝尔曼公式 为:
q π ( s , a ) = ∑ r r p ( s ∣ s , a ) + γ ∑ s ′ ∑ a ′ q π ( s ′ , a ′ ) p ( s ′ ∣ s , a ) π ( a ′ ∣ s ′ ) = ∑ r r p ( s ∣ s , a ) + γ ∑ s ′ p ( s ′ ∣ s , a ) ∑ a ′ q π ( s ′ , a ′ ) π ( a ′ ∣ s ′ ) \begin{aligned}q_\pi(s, a)&=\sum\limits_rrp(s|s, a)+\gamma\sum\limits_{s^\prime}\sum\limits_{a^\prime}q_\pi(s^\prime,a^\prime)p(s^\prime|s, a)\pi(a^\prime|s^\prime)\\ &=\sum\limits_rrp(s|s, a)+\gamma\sum\limits_{s^\prime}p(s^\prime|s, a)\sum\limits_{a^\prime}q_\pi(s^\prime,a^\prime)\pi(a^\prime|s^\prime)\end{aligned} qπ(s,a)=r∑rp(s∣s,a)+γs′∑a′∑qπ(s′,a′)p(s′∣s,a)π(a′∣s′)=r∑rp(s∣s,a)+γs′∑p(s′∣s,a)a′∑qπ(s′,a′)π(a′∣s′)
这个方程建立了 动作值 之间的关系
p ( s ′ , a ′ ∣ s , a ) = p ( s ′ ∣ s , a ) p ( a ′ ∣ s ′ , s , a ) = p ( s ′ ∣ s , a ) p ( a ′ ∣ s ′ ) = p ( s ′ ∣ s , a ) π ( a ′ ∣ s ′ ) \begin{aligned}p(s^\prime,a^\prime|s, a)&=p(s^\prime|s, a)p(a^\prime|s^\prime,s,a)\\ &=p(s^\prime|s, a)p(a^\prime|s^\prime)\\ &=p(s^\prime|s, a)\pi(a^\prime|s^\prime)\end{aligned} p(s′,a′∣s,a)=p(s′∣s,a)p(a′∣s′,s,a)=p(s′∣s,a)p(a′∣s′)=p(s′∣s,a)π(a′∣s′)
q π ( s , a ) = ∑ r r p ( s ∣ s , a ) + γ ∑ s ′ ∑ a ′ q π ( s ′ , a ′ ) p ( s ′ , a ′ ∣ s , a ) q_\pi(s, a)=\sum\limits_rrp(s|s, a)+\gamma\sum\limits_{s^\prime}\sum\limits_{a^\prime}q_\pi(s^\prime,a^\prime)p(s^\prime,a^\prime|s, a) qπ(s,a)=r∑rp(s∣s,a)+γs′∑a′∑qπ(s′,a′)p(s′,a′∣s,a)
证明: 7.19 为贝尔曼最优公式 P149

根据 期望值 定义, (7.19) 可改写为:
q ( s , a ) = ∑ r p ( r ∣ s , a ) r + γ ∑ s ′ p ( s ′ ∣ s , a ) max a ∈ A ( s ′ ) q ( s ′ , a ) q(s, a)=\sum\limits_rp(r|s, a)r+\gamma\sum\limits_{s^\prime}p(s^\prime|s, a)\max\limits_{a\in\mathcal A(s^\prime)}q(s^\prime,a) q(s,a)=r∑p(r∣s,a)r+γs′∑p(s′∣s,a)a∈A(s′)maxq(s′,a)
max a ∈ A ( s ) q ( s , a ) = max a ∈ A ( s ) [ ∑ r p ( r ∣ s , a ) r + γ ∑ s ′ p ( s ′ ∣ s , a ) max a ∈ A ( s ′ ) q ( s ′ , a ) ] \textcolor{blue}{\max\limits_{a\in\mathcal A(s)}}q(s, a)=\textcolor{blue}{\max\limits_{a\in\mathcal A(s)}}\Big[\sum\limits_rp(r|s, a)r+\gamma\sum\limits_{s^\prime}p(s^\prime|s, a)\max\limits_{a\in\mathcal A(s^\prime)}q(s^\prime,a)\Big] a∈A(s)maxq(s,a)=a∈A(s)max[r∑p(r∣s,a)r+γs′∑p(s′∣s,a)a∈A(s′)maxq(s′,a)]
记 v ( s ) = max a ∈ A ( s ) q ( s , a ) v(s)=\max\limits_{a\in\mathcal A(s)}q(s, a) v(s)=a∈A(s)maxq(s,a)
v ( s ) = max a ∈ A ( s ) [ ∑ r p ( r ∣ s , a ) r + γ ∑ s ′ p ( s ′ ∣ s , a ) v ( s ′ ) ] = max π ∑ a ∈ A ( s ) π ( a ∣ s ) [ ∑ r p ( r ∣ s , a ) r + γ ∑ s ′ p ( s ′ ∣ s , a ) v ( s ′ ) ] \begin{aligned}v(s)&=\max\limits_{a\in\mathcal A(s)}\Big[\sum\limits_rp(r|s, a)r+\gamma\sum\limits_{s^\prime}p(s^\prime|s, a)v(s^\prime)\Big]\\ &=\max\limits_\pi\sum\limits_{a\in\mathcal A(s)}\pi(a|s)\Big[\sum\limits_rp(r|s, a)r+\gamma\sum\limits_{s^\prime}p(s^\prime|s, a)v(s^\prime)\Big]\end{aligned} v(s)=a∈A(s)max[r∑p(r∣s,a)r+γs′∑p(s′∣s,a)v(s′)]=πmaxa∈A(s)∑π(a∣s)[r∑p(r∣s,a)r+γs′∑p(s′∣s,a)v(s′)]
正是 第 3 章的 贝尔曼最优公式

更多推荐


所有评论(0)