Noonisy
强化学习(五)
2022-09-17
阅读:315

最优值函数和最优策略

最优值函数

(1). 最优状态值函数,所有策略下产生的众多状态值函数中的最大者
$$ V^*(s)=\max_{\pi}\ \ V_\pi(s), \ \ {\forall}s\in S \tag{5-1} $$
(2). 最优动作值函数,所有策略下产生的众多动作值函数中的最大者
$$ Q^*(s,a)=\max_{\pi}\ \ Q_\pi(s,a), \ \ {\forall}(s,a) \in S\times A \tag{5-2} $$

最优策略性质

(1). 对于任何马尔科夫决策过程,至少存在一个最优策略 $\pi^*$

(2). 所有最优策略下都有最优状态值函数,$V_{\pi^*}=V^*(s)$

(3). 所有最优策略下都有最优动作值函数,$Q_{\pi^*}(s,a)=Q^*(s,a)$

贝尔曼最优性方程

对于一个策略 $\pi$,进行贪婪策略更新后,得到策略 $\pi'$,如果它就是最优策略 $\pi^*$,则可以得到两个贝尔曼最优性方程(条件)
$$ \pi \xrightarrow{贪婪更新} \pi' $$
$$ \begin{split} V_\pi(s)<V_{\pi'}(s), {\forall}s\in S \ \ \ & \pi\ 不是最优策略 \\ ~\\ V_\pi(s)=V_{\pi'}(s)=V_{\pi^*}(s), {\forall}s\in S \ \ \ & \pi^*=\pi'=\pi\ 是最优策略 \end{split} $$
1.基于状态值函数

故最优策略满足的充分条件:
$$ \begin{split} V_{\pi'}(s)=\max_{a\in A}Q_\pi(s,a)&=\max_{a\in A} \sum_{s'\in S}P(s'\mid s,a) \left[r+\gamma\cdot V_\pi(s') \right] \\ ~\\ V_{\pi^*}(s) &=\max_{a\in A} \sum_{s'\in S}P(s'\mid s,a) \left[r+\gamma\cdot V_{\pi^*}(s') \right] \end{split} \tag{5-3} $$
2.基于动作值函数

对于动作值函数的定义,公式(2-2);利用策略改进定理,公式(4-1);再由公式(2-4);
$$ \begin{split} Q_{\pi'}(s,a)&=E\left[R_{t+1}+\gamma\cdot V_{\pi'}(s')\mid S_t=s,A_t=a \right] \\ ~\\ &=E\left[R_{t+1}+\gamma\cdot \max_{a'\in A} Q_{\pi}(s',a')\mid S_t=s,A_t=a \right] \\ ~\\ &=\sum_{s'\in S}P(s'\mid s,a)\left(r+\gamma\cdot \max_{a'\in A}Q_\pi(s',a') \right) \\ ~\\ &\stackrel{\pi'=\pi}= \sum_{s'\in S}P(s'\mid s,a)\left(r+\gamma\cdot \max_{a'\in A}Q_{\pi'}(s',a') \right) \\ \end{split} $$
由于 $\pi^*=\pi=\pi'$,故
$$ Q_{\pi^*}(s,a)=\sum_{s'\in S}P(s'\mid s,a)\left(r+\gamma\cdot \max_{a'\in A}Q_{\pi^*}(s',a') \right) \tag{5-4} $$

参考

最后编辑于:2022 年 09 月 17 日 11:33
邮箱格式错误
网址请用http://或https://开头