对动作价值函数 q ^ ( s , a , w ) ≈ q ∗ ( s , a ) \hat{q}(s,a,\mathbf{w})\approx q_*(s,a) q^(s,a,w)≈q∗(s,a) 进行参数化逼近的控制问题。半梯度Sarsa算法,使用函数逼近的持续性任务:放弃折扣,重新定义控制问题。
持续性任务:带差分价值的平均收益的情形。
现在讨论形如 S t , A t ↦ U t S_t,A_t \mapsto U_t St,At↦Ut 的更新,更新目标 U t U_t Ut 可以是对 q π q_\pi qπ 的任意近似。分幕式半梯度单步Sarsa。
延伸到控制方法。适用于连续动作,或来自大型离散集合的动作的适当技术是当前的研究热点。对于同轨策略方法,策略改进和动作选择使用相同的策略。
例 10.1 高山行车问题:重力比汽车的发动机更强。这是一个连续控制任务的简单例子。先变得更糟,再变得更好。控制方法在这种问题中往往不尽人意。为了将两个连续的状态变量转换成二值特征,我们使用网格覆盖。乐观初始值保证了最初智能体会不停的试探,直到找到解决方案。
通过使用 n步回报作为半梯度公式中的更新目标来获得分幕式半梯度 Sarsa 的 n步版本。
分幕式半梯度n步Sarsa:
可以根据伪代码自己推演一幕,加强对算法流程的熟悉,以及对算法的理解。算法顺序存储轨迹的元素。在第 n 次循环之前(即t=n-1之前),算法不计算回报来更新权值向量。从第 n 步开始(即从t=n-1开始),每一步(即每一时刻),算法先存储 t+1 时的收益和状态,以及动作(若 S t + 1 S_{t+1} St+1为非终止状态)。接着,使用最近的 n 个奖励,以及下一个状态-动作的价值估计值,计算 n步回报,并更新权重。
当 t=T-1 时,智能体停止采样动作;t≥T 时,智能体停止采样。此时智能体继续更新权值向量,直到 τ \tau τ=T-1 ,即 t=T+n-2 时。此时 G t : T + n = G t G_{t:T+n}=G_t Gt:T+n=Gt (循环t=T-2时为最后一个 n步回报,从t=T-1开始, G t : T + n G_{t:T+n} Gt:T+n变为 G t G_t Gt)。
中等程度的自举法往往能得到最好的性能。
练习 10.1:基于函数逼近的MC方法,在每幕结束后,使用回报循环更新权值向量。然而,由于MC方法不能很好地解决持续性问题,因此没有对其进行讨论。若使用MC方法处理高山行车问题,其学习速度不如半梯度方法,但是能保证收敛到或接近全局最优值。
练习 10.2:
Input: a differentiable action-value function parameterization q ^ : S × A × R d → R \hat{q}:S\times A\times \mathbb{R}^d\rightarrow \mathbb{R} q^:S×A×Rd→R
Input: a policy π \pi π (if estimating q π q_\pi qπ)
Algorithm parameters: step size α \alpha α > 0, small ϵ \epsilon ϵ > 0
Initialize value-function weights w ∈ R d \mathbf{w}\in \mathbb{R}^d w∈Rd arbitrarily (e.g., w \mathbf{w} w = 0)
Loop for each episode:
Initialize S S S
Select an action A ∼ π ( ⋅ ∣ S 0 ) A \sim \pi(·|S_0) A∼π(⋅∣S0) or ϵ \epsilon ϵ-greedy wrt q ^ ( S 0 , ⋅ , w ) \hat{q}(S_0, ·, \mathbf{w}) q^(S0,⋅,w)
Loop for each step of episode:
Take action A A A, observe R R R, S ′ S' S′
Select A ′ ∼ π ( ⋅ ∣ S ′ ) A' \sim \pi(·|S') A′∼π(⋅∣S′) or ϵ \epsilon ϵ-greedy wrt q ^ ( S ′ , ⋅ , w ) \hat{q}(S', ·, \mathbf{w}) q^(S′,⋅,w)
w ← w + α [ R + γ ∑ a π ( a ∣ S ′ ) q ^ ( S ′ , a , w ) − q ^ ( S , A , w ) ] ▽ q ^ ( S , A , w ) \mathbf{w}\leftarrow \mathbf{w}+ \alpha[R+\gamma \sum_a \pi(a|S') \hat{q}(S',a, \mathbf{w})-\hat{q}(S,A, \mathbf{w})]\bigtriangledown \hat{q}(S,A, \mathbf{w}) w←w+α[R+γ∑aπ(a∣S′)q^(S′,a,w)−q^(S,A,w)]▽q^(S,A,w)
S ← S ′ S \leftarrow S' S←S′; A ← A ′ A \leftarrow A' A←A′;
Until S S S is terminal
练习 10.3:步数越多,价值估计的方差越大,使得智能体获得不同的最优策略,导致每次运行的步数有差异。
我们已经讨论了分幕设定和折扣设定,现在我们讨论用来制定马尔可夫决策问题的目标的第三个经典设定:平均收益设定。和折扣设定一样,它被应用于持续性问题。平均收益设定不考虑任何折扣,智能体对延迟收益的重视程度与即时收益相同。由于折扣设定对函数逼近来说是有问题的,因此需要用平均收益设定来替换它。
稳态分布 μ π \mu_\pi μπ:假设对所有策略都存在并独立于起始状态。这种关于MDP的假设被称为遍历性(ergodicity)。它意味着MDP开始的位置或智能体的早期决定只具有临时效果;从长远看来,一个状态的期望值只与策略本身和MDP的转移概率有关。注:根据以上讨论细品公式。
注:在数学中,遍历性表示随机过程的一个点最终将以统一和随机的方式访问系统的状态空间的所有部分。这意味着系统的平均行为可以从“典型”点的轨迹中推断出来。等效地,来自一个过程的足够大的随机样本集合可以代表整个过程的平均统计特性。遍历性是系统的一个属性;它声明系统不能减少或分解成更小的组件。
不同种类的最优(即不同的RL方法得到的结果?)。在实际目标中,根据平均收益来对策略排序往往就够了。所有达到平均收益最大值的策略都是最优的。
μ π ( s ) = μ π ( s ′ ) \mu_\pi(s) = \mu_\pi(s') μπ(s)=μπ(s′)
平均收益设定中的回报:差分回报 → \rightarrow → 差分价值函数。
两类TD误差对应的差分形式。
差分半梯度Sarsa算法:
Input: a differentiable action-value function parameterization q ^ : S × A × R d → R \hat{q}:S\times A\times \mathbb{R}^d\rightarrow \mathbb{R} q^:S×A×Rd→R
Algorithm parameters: step size α , β \alpha, \beta α,β > 0
Initialize value-function weights w ∈ R d \mathbf{w}\in \mathbb{R}^d w∈Rd arbitrarily (e.g., w \mathbf{w} w = 0 \mathbf{0} 0)
Initialize average reward estimate R ˉ ∈ R \bar{R}\in\mathbb{R} Rˉ∈R arbitrarily (e.g., R ˉ \bar{R} Rˉ = 0)
Initialize state S S S, and action A A A
Loop for each step:
Take action A A A, observe R R R, S ′ S' S′
Select A ′ A' A′ as a function of q ^ ( S ′ , ⋅ , w ) \hat{q}(S', ·, \mathbf{w}) q^(S′,⋅,w) (e.g. ϵ \epsilon ϵ-greedy)
δ ← R − R ˉ + q ^ ( S ′ , A ′ , w ) − q ^ ( S , A , w ) \delta\leftarrow R - \bar{R} + \hat{q}(S',A', \mathbf{w})-\hat{q}(S,A, \mathbf{w}) δ←R−Rˉ+q^(S′,A′,w)−q^(S,A,w)
R ˉ ← R ˉ + β δ \bar{R} \leftarrow \bar{R} + \beta\delta Rˉ←Rˉ+βδ
w ← w + α δ ▽ q ^ ( S , A , w ) \mathbf{w}\leftarrow \mathbf{w}+ \alpha\delta\bigtriangledown \hat{q}(S,A, \mathbf{w}) w←w+αδ▽q^(S,A,w)
S ← S ′ S \leftarrow S' S←S′
A ← A ′ A \leftarrow A' A←A′
练习 10.4:
Input: a differentiable action-value function parameterization q ^ : S × A × R d → R \hat{q}:S\times A\times \mathbb{R}^d\rightarrow \mathbb{R} q^:S×A×Rd→R
Algorithm parameters: step size α , β \alpha, \beta α,β > 0
Initialize value-function weights w ∈ R d \mathbf{w}\in \mathbb{R}^d w∈Rd arbitrarily (e.g., w \mathbf{w} w = 0 \mathbf{0} 0)
Initialize average reward estimate R ˉ ∈ R \bar{R}\in\mathbb{R} Rˉ∈R arbitrarily (e.g., R ˉ \bar{R} Rˉ = 0)
Initialize state S S S
Loop for each step:
Choose A A A from S S S using policy derived from q ^ ( S ′ , ⋅ , w ) \hat{q}(S',·, \mathbf{w}) q^(S′,⋅,w) (e.g. ϵ \epsilon ϵ-greedy)
Take action A A A, observe R R R, S ′ S' S′
δ ← R − R ˉ + m a x a q ^ ( S ′ , a , w ) − q ^ ( S , A , w ) \delta\leftarrow R - \bar{R} + max_a\hat{q}(S',a, \mathbf{w})-\hat{q}(S,A, \mathbf{w}) δ←R−Rˉ+maxaq^(S′,a,w)−q^(S,A,w)
R ˉ ← R ˉ + β δ \bar{R} \leftarrow \bar{R} + \beta\delta Rˉ←Rˉ+βδ
w ← w + α δ ▽ q ^ ( S , A , w ) \mathbf{w}\leftarrow \mathbf{w}+ \alpha\delta\bigtriangledown \hat{q}(S,A, \mathbf{w}) w←w+αδ▽q^(S,A,w)
S ← S ′ S \leftarrow S' S←S′
A ← A ′ A \leftarrow A' A←A′
练习 10.5:我们还需要用于状态价值函数的权重更新的SGD公式,以及用于平均回报率 R ˉ \bar{R} Rˉ 的估计值更新的公式。
练习 10.6:整个马尔可夫过程的平均收益是1/3。然而,由于这个MDP不满足遍历性,因此状态A,B,C的差分价值会持续波动,不会收敛。
例 10.2:An Access-Control Queuing Task
练习 10.7:问题的平均收益是1/2。略。
练习 10.8:简单序列(从A开始):-1/3,-1/3,2/3,-1/3,-1/3,2/3 …
根据练习10.7中的状态价值的定义,可以得到 v π ( A ) v_\pi(A) vπ(A)=-1/3, v π ( B ) v_\pi(B) vπ(B)=0, v π ( C ) v_\pi(C) vπ(C)=1/3 。
据此,可以得到TD误差序列:0,0,0,0 …
由此可看出,因为TD误差不仅考虑了奖励的差值,还考虑了两个状态价值的差值。在价值估计稳定后,使得平均奖励的估计值也变得稳定。
对于持续性问题,采用表格型方法时折扣设定非常有用,此时状态的回报可以被分别识别和取平均。而对于采用函数逼近的情况,折扣设定没有任何作用。
假设状态没有清晰的定义,只能通过特征向量来表示。平均折扣回报:每一时刻,计算此刻以及之前所有时刻的折后回报,然后取平均。平均折扣回报和平均收益成正比。策略排序相同。折扣率毫无作用。
通过对称性论证。注:从数列求和的角度论证。由于是随机采样,我们可以视每一时刻的收益为平均收益的一个单独样本的无偏估计。每一时刻,折扣回报可以视为一个等比数列,而即时收益就是这个等比数列的第一项。根据等比数列求和公式,当采样序列无限长时,折扣回报便是即时收益的 1 / ( 1 − γ ) 1/(1-\gamma) 1/(1−γ) 倍。因为对于所有时刻都是一样的,折扣回报与即时收益都是这个比例,所以平均折扣回报是这个比例乘以平均收益。
持续性问题中折扣无用性的证明。排序准则:折后价值的概率加权和。结论:折扣率完全不影响顺序。
在使用函数逼近的控制问题中,优化折后价值函数和优化一个无折扣的平均收益效果完全相同。但是可以将折扣应用于解决方案中。
折扣控制设定困难的根本原因是,在函数逼近的情况下,我们失去了策略改进定理。此时,我们无法百分百保证策略的改进。13章-策略梯度定理。
n步版本的TD误差。n步回报的差分形式。
差分半梯度n步Sarsa算法。
练习 10.9:无偏常数步长技巧。设置一个修正系数。
关键词:参数化函数逼近,半梯度下降,控制问题,平均收益,差分。
在近似情况下,大多数策略不能用一个价值函数表示。