蒙特卡洛方法求解强化学习任务——蒙特卡洛评估基本介绍
目录
上一节介绍了使用蒙特卡洛方法对状态价值函数 V π ( s ) V_\pi(s) Vπ(s)的近似求解过程。本节对蒙特卡洛评估(蒙特卡洛方法近似求解状态-动作价值函数 q π ( s , a ) q_\pi(s,a) qπ(s,a))进行基本介绍。
蒙特卡洛方法求解 q π ( s , a ) q_\pi(s,a) qπ(s,a)的优势和缺陷
求解 q π ( s , a ) q_\pi(s,a) qπ(s,a)的优势
上一节介绍了近似求解状态价值函数 V π ( s ) V_\pi(s) Vπ(s)的两种方法:首次访问型(first-visit),每次访问型(every-visit)。我们发现:求解状态-动作价值函数 q π ( s , a ) q_\pi(s,a) qπ(s,a)比求解 V π ( s ) V_\pi(s) Vπ(s)更有实际价值。
- 根据 V π ( s ) V_\pi(s) Vπ(s)和 q π ( s , a ) q_\pi(s,a) qπ(s,a)之间的关联关系,在策略 π ( a ∣ s ) \pi(a \mid s) π(a∣s)给定的条件下,可以直接通过 q π ( s , a ) q_\pi(s,a) qπ(s,a)表示 V π ( s ) V_\pi(s) Vπ(s);
V π ( s ) = ∑ a ∈ A ( s ) π ( a ∣ s ) q π ( s , a ) V_\pi(s) = \sum_{a \in \mathcal A(s)}\pi(a \mid s)q_\pi(s,a) Vπ(s)=a∈A(s)∑π(a∣s)qπ(s,a)
相反,之所以不用下一状态的状态价值函数 V π ( s ′ ) V_\pi(s') Vπ(s′)进行表示,原因在于动态特性函数 p ( s ′ , r ∣ s , a ) p(s',r \mid s,a) p(s′,r∣s,a)是未知/不完全可知;因此无法直接进行表达。
V π ( s ) = ∑ a ∈ A ( s ) π ( a ∣ s ) ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r + γ V π ( s ′ ) ] V_\pi(s) = \sum_{a \in \mathcal A(s)}\pi(a \mid s)\sum_{s',r}p(s',r \mid s,a)[r + \gamma V_\pi(s')] Vπ(s)=a∈A(s)∑π(a∣s)s′,r∑p(s′,r∣s,a)[r+γVπ(s′)] - 如果我们直接将 q π ( s , a ) q_\pi(s,a) qπ(s,a)求出,各种状态、各种动作对应的价值结果被求出后,更方便进行策略改进。
q π ( s , a ) = E π [ G t ∣ S t = s , A t = a ] q ∗ ( s , a ) = max a q π ( s , a ) = q π ( s , π ′ ( s ) ) π ′ ( s ) = arg max a q π ( s , a ) \begin{aligned} q_\pi(s,a) & = \mathbb E_{\pi}[G_t \mid S_t = s,A_t = a] \\ q_*(s,a) & = \mathop{\max}\limits_{a}q_\pi(s,a) = q_\pi(s,\pi'(s)) \\ \pi'(s) & = \mathop{\arg\max}\limits_{a} q_\pi(s,a) \end{aligned}