diff --git a/docs/chapter2/chapter2.md b/docs/chapter2/chapter2.md index 3a555fa..8368385 100644 --- a/docs/chapter2/chapter2.md +++ b/docs/chapter2/chapter2.md @@ -514,7 +514,6 @@ $$ 再来看一个例子,如果折扣因子 $\gamma=0.5$,我们可以通过式(2.17)进行迭代: $$ V^{t}_{\pi}(s)=\sum_{a} p(\pi(s)=a)\left(r(s, a)+\gamma \sum_{s^{\prime} \in S} p\left(s^{\prime} \mid s, a\right) V^{t-1}_{\pi}\left(s^{\prime}\right)\right) \tag{2.17} - $$ 其中,$t$是迭代次数。然后就可以得到它的状态价值。 @@ -677,7 +676,6 @@ $$ 对于每个状态,策略改进会得到它的新一轮的策略,对于每个状态,我们取使它得到最大值的动作,即 $$ \pi_{i+1}(s)=\underset{a}{\arg \max } ~Q_{\pi_{i}}(s, a) - $$ 如图 2.22 所示,我们可以把 Q 函数看成一个 **Q表格(Q-table)**:横轴是它的所有状态,纵轴是它的可能的动作。如果我们得到了 Q 函数,Q表格也就得到了。对于某个状态,每一列里面我们会取最大的值,最大值对应的动作就是它现在应该采取的动作。所以 arg max 操作是指在每个状态里面采取一个动作,这个动作是能使这一列的 Q 函数值最大化的动作。 @@ -697,13 +695,11 @@ $$ 当我们一直采取 arg max 操作的时候,我们会得到一个单调的递增。通过采取这种贪心操作(arg max 操作),我们就会得到更好的或者不变的策略,而不会使价值函数变差。所以当改进停止后,我们就会得到一个最佳策略。当改进停止后,我们取让 Q 函数值最大化的动作,Q 函数就会直接变成价值函数,即 $$ Q_{\pi}\left(s, \pi^{\prime}(s)\right)=\max _{a \in A} Q_{\pi}(s, a)=Q_{\pi}(s, \pi(s))=V_{\pi}(s) - $$ 我们也就可以得到**贝尔曼最优方程(Bellman optimality equation)** $$ V_{\pi}(s)=\max _{a \in A} Q_{\pi}(s, a) - $$ 贝尔曼最优方程表明:最佳策略下的一个状态的价值必须等于在这个状态下采取最好动作得到的回报的期望。 当马尔可夫决策过程满足贝尔曼最优方程的时候,整个马尔可夫决策过程已经达到最佳的状态。 @@ -711,7 +707,6 @@ $$ $$ V^{*}(s)=\max _{a} Q^{*}(s, a) \tag{2.20} - $$ 当我们取让 Q 函数值最大化的动作对应的值就是当前状态的最佳的价值函数的值。另外,我们给出 Q 函数的贝尔曼方程 @@ -784,7 +779,6 @@ Q_{k+1}(s, a)=R(s, a)+\gamma \sum_{s^{\prime} \in S} p\left(s^{\prime} \mid s, a $$ $$ - V_{k+1}(s)=\max _{a} Q_{k+1}(s, a) \tag{2.24} $$