Sarsa 算法时TD算法的一种
推导TD Target
- 回顾折扣回报
U
t
U_t
Ut
- 动作价值函数
Q
π
Q_{\pi}
Qπ
- 拆解
Q
π
Q_{\pi}
Qπ,关注最后一项,其中
Q
π
(
S
t
+
1
,
A
t
+
1
)
=
U
t
+
1
Q_{\pi}(S_{t+1},A_{t+1})=U_{t+1}
Qπ(St+1,At+1)=Ut+1的期望
- 于是得到
- 其中右边期望部分,用一部分真实值替代期望,得到:
- 并将右边记为TD target :
y
t
y_t
yt,TD 算法就是尽可能的让估计值
Q
π
Q_{\pi}
Qπ接近
y
t
y_t
yt。
y t y_t yt里面有一部分是真实值,更接近真实情况。
Sarsa算法
表格形式
算法流程
- 其中
Q
π
(
s
t
+
1
,
a
t
+
1
)
Q_{\pi}(s_{t+1},a_{t+1})
Qπ(st+1,at+1)通过查表得到
神经网络形式
- 如果状态和动作很多的时候,数据量就比较大了,表格难以操作
可以训练神经网络近似动作价值函数 Q π Q_{\pi} Qπ