6.1 TD Prediction
表格TD(0)估计 : v π v_\pi vπ
输入:要评估策略 : π \pi π
算法参数:步长 : α ∈ ( 0 , 1 ] \alpha\in (0,1] α∈(0,1]
对所有 : s ∈ S + s \in \mathbb{S}^{+} s∈S+,除了 : V ( 终 点 ) = 0 V(终点)=0 V(终点)=0,任意初始化 : V ( s ) V(s) V(s)
对每个回合循环:
初始化 : S S S
对回合的每一步循环:
A ← A \leftarrow A← 由 π \pi π 给出 S S S 的动作
采取动作 A A A,观察 R R R, S ′ S^{\prime} S′
V ( S ) ← V ( S ) + α [ R + γ V ( S ′ ) − V ( S ) ] V(S) \leftarrow V(S)+\alpha\left[R+\gamma V(S^{\prime})-V(S)\right] V(S)←V(S)+α[R+γV(S′)−V(S)]
S ← S ′ S \leftarrow S^{\prime} S←S′
直到 S S S 是终点
6.4 Sarsa: On-policy TD Control
算法参数:步长 : α ∈ ( 0 , 1 ] \alpha \in (0,1] α∈(0,1],小值 : ε > 0 \varepsilon > 0 ε>0
对所有 : s ∈ ( S ) + s \in \mathcal(S)^+ s∈(S)+, a ∈ ( A ) ( s ) a \in \mathcal(A)(s) a∈(A)(s),任意初始 Q ( s , a ) Q(s, a) Q(s,a),除了 Q ( 终 点 , ⋅ ) = 0 Q(终点, \cdot)=0 Q(终点,⋅)=0
对每一个回合循环:
初始化 : S S S
使用从 : Q Q Q 派生的策略从 S S S 中选择 A A A(例如, ε \varepsilon ε -贪婪)
对回合的每一步循环:
采取动作 : A A A,观察 : R R R, S ′ S^{\prime} S′使用从 Q Q Q 派生的策略从 S ′ S^{\prime} S′ 中选择 A ′ A^{\prime} A′(例如, ε \varepsilon ε -贪婪)
Q ( S , A ) ← Q ( S , A ) + α [ R + γ Q ( S ′ , A ′ ) − Q ( S , A ) ] Q(S, A) \leftarrow Q(S, A)+\alpha\left[R+\gamma Q\left(S^{\prime}, A^{\prime}\right)-Q(S, A)\right] Q(S,A)←Q(S,A)+α[R+γQ(S′,A′)−Q(S,A)]
S ← S ′ S \leftarrow S^{\prime} S←S′; A ← A ′ A \leftarrow A^{\prime} A←A′;
直到 S S S 是终点
6.5 Q-learning: Off-policy TD Control
算法参数:步长 : α ∈ ( 0 , 1 ] \alpha \in (0,1] α∈(0,1],小值 : ε > 0 \varepsilon > 0 ε>0
对所有 : s ∈ ( S ) + s \in \mathcal(S)^+ s∈(S)+, a ∈ ( A ) ( s ) a \in \mathcal(A)(s) a∈(A)(s),任意初始 Q ( s , a ) Q(s, a) Q(s,a),除了 Q ( 终 点 , ⋅ ) = 0 Q(终点, \cdot)=0 Q(终点,⋅)=0
对每一个回合循环:
初始化 S S S
对回合的每一步循环:
使用从 Q Q Q 派生的策略从 S S S 中选择 A A A(例如, ε \varepsilon ε -贪婪)
采取动作 A A A,观察 R R R, S ′ S^{\prime} S′
Q ( S , A ) ← Q ( S , A ) + α [ R + γ max a Q ( S ′ , a ) − Q ( S , A ) ] Q(S, A) \leftarrow Q(S, A)+\alpha\left[R+\gamma \max _{a} Q\left(S^{\prime}, a\right)-Q(S, A)\right] Q(S,A)←Q(S,A)+α[R+γmaxaQ(S′,a)−Q(S,A)]
S ← S ′ S \leftarrow S^{\prime} S←S′
直到 S S S 是终点