0


【强化学习理论】状态价值函数与动作价值函数系列公式推导

由于时常对状态价值函数与动作价值函数之间的定义区别、公式关系迷惑不清,此次进行梳理并作记录。

理解公式推导需要先了解基础定义中几个概念。

文章目录

基础定义

奖励函数

奖励函数有两种记法。

①记作

     r 
    
   
     ( 
    
   
     s 
    
   
     ) 
    
   
  
    r(s) 
   
  
r(s),表示某状态 
 
  
   
   
     s 
    
   
  
    s 
   
  
s的奖励,指:转移到该状态时能够获得的奖励的**期望**,即:

  
   
    
    
      r 
     
    
      ( 
     
    
      s 
     
    
      ) 
     
    
      = 
     
    
      E 
     
    
      [ 
     
     
     
       R 
      
     
       t 
      
     
    
      ∣ 
     
     
     
       S 
      
     
       t 
      
     
    
      = 
     
    
      s 
     
    
      ] 
     
    
   
     r(s) = \mathbb {E}[R_t | S_t = s] 
    
   
 r(s)=E[Rt​∣St​=s]

为什么是用

       R 
      
     
       t 
      
     
    
   
     R_t 
    
   
 Rt​的期望而不是直接用 
  
   
    
     
     
       R 
      
     
       t 
      
     
    
   
     R_t 
    
   
 Rt​来表示这个状态的奖励?

因为对于一个相同的状态,其采取的动作不同,获得的奖励

       R 
      
     
       t 
      
     
    
   
     R_t 
    
   
 Rt​可能不同。

②记作

     r 
    
   
     ( 
    
   
     s 
    
   
     , 
    
   
     a 
    
   
     ) 
    
   
  
    r(s, a) 
   
  
r(s,a),表示某状态 
 
  
   
   
     s 
    
   
  
    s 
   
  
s下采取动作 
 
  
   
   
     a 
    
   
  
    a 
   
  
a的奖励,指:转移到该状态并采取该动作时能够获得的奖励的**期望**,即:

  
   
    
    
      r 
     
    
      ( 
     
    
      s 
     
    
      , 
     
    
      a 
     
    
      ) 
     
    
      = 
     
    
      E 
     
    
      [ 
     
     
     
       R 
      
     
       t 
      
     
    
      ∣ 
     
     
     
       S 
      
     
       t 
      
     
    
      = 
     
    
      s 
     
    
      , 
     
     
     
       A 
      
     
       t 
      
     
    
      = 
     
    
      a 
     
    
      ] 
     
    
   
     r(s, a) = \mathbb{E}[R_t | S_t = s, A_t = a] 
    
   
 r(s,a)=E[Rt​∣St​=s,At​=a]

为什么是用

       R 
      
     
       t 
      
     
    
   
     R_t 
    
   
 Rt​的期望而不是直接用 
  
   
    
     
     
       R 
      
     
       t 
      
     
    
   
     R_t 
    
   
 Rt​来表示这个状态下采取这个动作的奖励?

因为对于一个相同的状态,即使采取的动作相同,其下一个状态

       s 
      
     
       ′ 
      
     
    
   
     s^{\prime} 
    
   
 s′也可能不同,之后获得的奖励 
  
   
    
     
     
       R 
      
      
      
        t 
       
      
        + 
       
      
        1 
       
      
     
    
   
     R_{t+1} 
    
   
 Rt+1​也可能不同,最终获得的回报 
  
   
    
     
     
       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​自然也不同。

回报

**回报 (Return)**,记作

      G 
     
    
      t 
     
    
   
  
    G_t 
   
  
Gt​,指从 
 
  
   
   
     t 
    
   
  
    t 
   
  
t时刻的状态 
 
  
   
    
    
      s 
     
    
      t 
     
    
   
  
    s_t 
   
  
st​开始,直至终止状态时,所有奖励的衰减之和,即:

  
   
    
     
      
       
        
         
         
           G 
          
         
           t 
          
         
        
          = 
         
        
       
      
      
       
        
         
         
         
           R 
          
         
           t 
          
         
        
          + 
         
        
          γ 
         
         
         
           R 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          + 
         
         
         
           γ 
          
         
           2 
          
         
         
         
           R 
          
          
          
            t 
           
          
            + 
           
          
            2 
           
          
         
        
          + 
         
        
          . 
         
        
          . 
         
        
          . 
         
        
       
      
     
     
      
       
       
         = 
        
       
      
      
       
        
         
         
         
           ∑ 
          
          
          
            k 
           
          
            = 
           
          
            0 
           
          
         
           ∞ 
          
         
         
         
           γ 
          
         
           k 
          
         
         
         
           R 
          
          
          
            t 
           
          
            + 
           
          
            k 
           
          
         
        
       
      
     
    
   
     \begin{aligned} G_t =& R_t + \gamma R_{t+1} + \gamma ^ 2 R_{t + 2} + ... \\ =& \sum_{k = 0}^{\infty} \gamma ^ k R_{t + k} \end{aligned} 
    
   
 Gt​==​Rt​+γRt+1​+γ2Rt+2​+...k=0∑∞​γkRt+k​​

价值

**价值 (value)**,是一个基于状态的概念,某个状态的价值指:从某时刻的某状态

     s 
    
   
  
    s 
   
  
s开始,直至终止状态时,累积奖励(也就是回报 
 
  
   
    
    
      G 
     
    
      t 
     
    
   
  
    G_t 
   
  
Gt​)的**期望**。

1、为什么是要用**

       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​的期望**而不能直接用 
  
   
    
     
     
       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​?

因为**对于相同的起始状态

       s 
      
     
    
      s 
     
    
  s,其 
   
    
     
      
      
        G 
       
      
        t 
       
      
     
    
      G_t 
     
    
  Gt​可以是不一样的**。想要客观地评价一个状态的价值,就要尽可能地考虑它能带来的不同的回报。

2、为什么

       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​可以是不一样的?

因为在交互进行的过程中,起始状态

       s 
      
     
       t 
      
     
    
   
     s_t 
    
   
 st​可能转到不同的状态 
  
   
    
     
     
       s 
      
     
       ′ 
      
     
    
   
     s^{\prime} 
    
   
 s′,得到的 
  
   
    
     
     
       R 
      
     
       t 
      
     
    
   
     R_t 
    
   
 Rt​也不同,最终的回报 
  
   
    
     
     
       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​自然也就不同。

价值函数

**价值函数 (value function)**,记作

     V 
    
   
     ( 
    
   
     s 
    
   
     ) 
    
   
  
    V(s) 
   
  
V(s),可以理解成一个映射关系,输入是状态 
 
  
   
   
     s 
    
   
  
    s 
   
  
s​,输出是该状态的价值,即:

  
   
    
    
      V 
     
    
      ( 
     
    
      s 
     
    
      ) 
     
    
      = 
     
    
      E 
     
    
      [ 
     
     
     
       G 
      
     
       t 
      
     
    
      ∣ 
     
     
     
       S 
      
     
       t 
      
     
    
      = 
     
    
      s 
     
    
      ] 
     
    
   
     V(s) = \mathbb{E} [G_t | S_t = s] 
    
   
 V(s)=E[Gt​∣St​=s]

奖励函数和价值函数的区别是什么?

按照我自己的理解,奖励函数是只关注状态当前能获得的收益,价值函数则关注从当前状态开始直至未来结束时的所有收益。

状态转移矩阵

状态转移矩阵,可记作

     P 
    
   
     ( 
    
    
    
      s 
     
    
      ′ 
     
    
   
     ∣ 
    
   
     s 
    
   
     ) 
    
   
  
    P(s^{\prime} | s) 
   
  
P(s′∣s),表示状态 
 
  
   
   
     s 
    
   
  
    s 
   
  
s转移到状态 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′的概率。

在状态集合有限的情况下,可以用矩阵表示;若状态集合不是有限的,则称为状态转移函数。

策略

**策略 (policy)**,记作

     π 
    
   
  
    \pi 
   
  
π。可以将策略理解成:在已知输入状态 
 
  
   
   
     s 
    
   
  
    s 
   
  
s的情况下,采取动作 
 
  
   
   
     a 
    
   
  
    a 
   
  
a的概率,即:

  
   
    
    
      π 
     
    
      ( 
     
    
      s 
     
    
      , 
     
    
      a 
     
    
      ) 
     
    
      = 
     
    
      π 
     
    
      ( 
     
    
      a 
     
    
      ∣ 
     
    
      s 
     
    
      ) 
     
    
      = 
     
    
      P 
     
    
      ( 
     
     
     
       A 
      
     
       t 
      
     
    
      = 
     
    
      a 
     
    
      ∣ 
     
     
     
       S 
      
     
       t 
      
     
    
      = 
     
    
      s 
     
    
      ) 
     
    
   
     \pi(s, a) =\pi(a | s)= P(A_t = a | S_t = s) 
    
   
 π(s,a)=π(a∣s)=P(At​=a∣St​=s)

策略

     π 
    
   
  
    \pi 
   
  
π(的取值)只与当前的状态 
 
  
   
   
     s 
    
   
  
    s 
   
  
s相关,与当前状态之前的状态无关。

对于同样的状态

     s 
    
   
  
    s 
   
  
s,使用的策略 
 
  
   
   
     π 
    
   
  
    \pi 
   
  
π不同,采取的动作 
 
  
   
   
     a 
    
   
  
    a 
   
  
a不同,价值value也就不同。

状态转移函数

状态转移函数,可记作

     P 
    
   
     ( 
    
    
    
      s 
     
    
      ′ 
     
    
   
     ∣ 
    
   
     s 
    
   
     , 
    
   
     a 
    
   
     ) 
    
   
  
    P(s^{\prime} | s, a) 
   
  
P(s′∣s,a),表示在状态 
 
  
   
   
     s 
    
   
  
    s 
   
  
s执行动作 
 
  
   
   
     a 
    
   
  
    a 
   
  
a后到达状态 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′的概率。

与状态转移矩阵相比,状态转移函数可以表示状态集合不是有限的情况。

状态转移有两种表现形式,一种是

      P 
     
    
      ( 
     
     
     
       s 
      
     
       ′ 
      
     
    
      ∣ 
     
    
      s 
     
    
      ) 
     
    
   
     P(s^{\prime} | s) 
    
   
 P(s′∣s),另一种是 
  
   
    
    
      P 
     
    
      ( 
     
     
     
       s 
      
     
       ′ 
      
     
    
      ∣ 
     
    
      s 
     
    
      , 
     
    
      a 
     
    
      ) 
     
    
   
     P(s^{\prime} | s, a) 
    
   
 P(s′∣s,a),连接两者之间的桥梁是策略 
  
   
    
    
      π 
     
    
   
     \pi 
    
   
 π,即:

   
    
     
     
       P 
      
     
       ( 
      
      
      
        s 
       
      
        ′ 
       
      
     
       ∣ 
      
     
       s 
      
     
       ) 
      
     
       = 
      
      
      
        ∑ 
       
       
       
         a 
        
       
         ∈ 
        
       
         A 
        
       
      
     
       π 
      
     
       ( 
      
     
       a 
      
     
       ∣ 
      
     
       s 
      
     
       ) 
      
     
       P 
      
     
       ( 
      
      
      
        s 
       
      
        ′ 
       
      
     
       ∣ 
      
     
       s 
      
     
       , 
      
     
       a 
      
     
       ) 
      
     
    
      P(s^{\prime} | s) = \sum_{a \in A} \pi(a | s)P(s^{\prime} | s, a) 
     
    
  P(s′∣s)=a∈A∑​π(a∣s)P(s′∣s,a)

状态价值函数

状态价值函数 (state-value function),可记作

      V 
     
    
      π 
     
    
   
     ( 
    
   
     s 
    
   
     ) 
    
   
  
    V^{\pi}(s) 
   
  
Vπ(s),表示:马尔可夫决策过程中,智能体从状态 
 
  
   
   
     s 
    
   
  
    s 
   
  
s出发,遵循策略 
 
  
   
   
     π 
    
   
  
    \pi 
   
  
π获得的回报 
 
  
   
    
    
      G 
     
    
      t 
     
    
   
  
    G_t 
   
  
Gt​的**期望**,即:

  
   
    
     
     
       V 
      
     
       π 
      
     
    
      ( 
     
    
      s 
     
    
      ) 
     
    
      = 
     
     
     
       E 
      
     
       π 
      
     
    
      [ 
     
     
     
       G 
      
     
       t 
      
     
    
      ∣ 
     
     
     
       S 
      
     
       t 
      
     
    
      = 
     
    
      t 
     
    
      ] 
     
    
   
     V^{\pi}(s) = \mathbb{E}_{\pi}[G_t | S_t = t] 
    
   
 Vπ(s)=Eπ​[Gt​∣St​=t]

看起来和价值函数很像,只不过价值函数中没有强调策略

下面这两个问题及其回答,跟理解价值时提的那两个问题和回答是相似的。

1、为什么是回报

       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​的期望而不是只用回报 
  
   
    
     
     
       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​就行了?

因为**对于同一个状态

       s 
      
     
    
      s 
     
    
  s和给定的策略 
   
    
     
     
       π 
      
     
    
      \pi 
     
    
  π,其 
   
    
     
      
      
        G 
       
      
        t 
       
      
     
    
      G_t 
     
    
  Gt​可能不同**。想要客观地评价一个状态在给定策略下的价值,就要尽可能地考虑它能带来的不同的回报。

2、为什么

       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​可以是不一样的?

因为对于同一个状态

      s 
     
    
   
     s 
    
   
 s和给定的策略 
  
   
    
    
      π 
     
    
   
     \pi 
    
   
 π,智能体在当前状态采取的动作 
  
   
    
    
      a 
     
    
   
     a 
    
   
 a可能不同(特别是当使用的策略是随机性策略时),得到的 
  
   
    
     
     
       R 
      
     
       t 
      
     
    
   
     R_t 
    
   
 Rt​不同,最终的 
  
   
    
     
     
       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​也可能不同。

动作价值函数

**动作价值函数 (action-value function)**,可记作

      Q 
     
    
      π 
     
    
   
     ( 
    
   
     s 
    
   
     , 
    
   
     a 
    
   
     ) 
    
   
  
    Q^{\pi}(s, a) 
   
  
Qπ(s,a),表示:马尔可夫决策过程中,智能体从状态 
 
  
   
   
     s 
    
   
  
    s 
   
  
s出发,根据策略 
 
  
   
   
     π 
    
   
  
    \pi 
   
  
π执行动作 
 
  
   
   
     a 
    
   
  
    a 
   
  
a,最终获得的回报 
 
  
   
    
    
      G 
     
    
      t 
     
    
   
  
    G_t 
   
  
Gt​的**期望**,即:

  
   
    
     
     
       Q 
      
     
       π 
      
     
    
      ( 
     
    
      s 
     
    
      , 
     
    
      a 
     
    
      ) 
     
    
      = 
     
    
      E 
     
    
      [ 
     
     
     
       G 
      
     
       t 
      
     
    
      ∣ 
     
     
     
       S 
      
     
       t 
      
     
    
      = 
     
    
      s 
     
    
      , 
     
     
     
       A 
      
     
       t 
      
     
    
      = 
     
    
      a 
     
    
      ] 
     
    
   
     Q^{\pi}(s, a) = \mathbb{E}[G_t | S_t = s, A_t = a] 
    
   
 Qπ(s,a)=E[Gt​∣St​=s,At​=a]

看起来和状态价值函数很像,只不过状态价值函数中没有强调动作

下面这两个问题及其回答,跟理解状态价值函数时提的那两个问题和回答是相似的。

1、为什么是回报

       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​的期望而不是只用回报 
  
   
    
     
     
       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​就行了?

因为**对于同一个状态

       s 
      
     
    
      s 
     
    
  s、给定的策略 
   
    
     
     
       π 
      
     
    
      \pi 
     
    
  π和给定的动作 
   
    
     
     
       a 
      
     
    
      a 
     
    
  a,其 
   
    
     
      
      
        G 
       
      
        t 
       
      
     
    
      G_t 
     
    
  Gt​可能不同**。想要客观地评价一个状态在给定策略下的价值,就要尽可能地考虑它能带来的不同的回报。

2、为什么

       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​可以是不一样的?

因为对于同一个状态

      s 
     
    
   
     s 
    
   
 s、给定的策略 
  
   
    
    
      π 
     
    
   
     \pi 
    
   
 π和给定的动作 
  
   
    
    
      a 
     
    
   
     a 
    
   
 a,其下一步到达的状态 
  
   
    
     
     
       s 
      
     
       ′ 
      
     
    
   
     s^{\prime} 
    
   
 s′可能不同(因为环境可能已经发生不同的变化了),智能体在不同采取的动作 
  
   
    
    
      a 
     
    
   
     a 
    
   
 a可能不同(特别是当使用的策略是随机性策略时),得到的 
  
   
    
     
     
       R 
      
     
       t 
      
     
    
   
     R_t 
    
   
 Rt​不同,最终的 
  
   
    
     
     
       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​也可能不同。

状态价值函数与动作价值函数之间的关系

关系1

       V 
      
     
       π 
      
     
    
      ( 
     
    
      s 
     
    
      ) 
     
    
      = 
     
     
     
       ∑ 
      
      
      
        a 
       
      
        ∈ 
       
      
        A 
       
      
     
    
      π 
     
    
      ( 
     
    
      a 
     
    
      ∣ 
     
    
      s 
     
    
      ) 
     
     
     
       Q 
      
     
       π 
      
     
    
      ( 
     
    
      s 
     
    
      , 
     
    
      a 
     
    
      ) 
     
    
   
     V^{\pi}(s) = \sum_{a \in A} \pi(a | s) Q^{\pi}(s, a) 
    
   
 Vπ(s)=a∈A∑​π(a∣s)Qπ(s,a)

关系1的推导基础:①状态价值函数的定义;②动作价值函数的定义。推导过程如下:

           V 
          
         
           π 
          
         
        
          ( 
         
        
          s 
         
        
          ) 
         
        
       
      
      
       
        
         
        
          = 
         
         
         
           E 
          
         
           π 
          
         
        
          [ 
         
         
         
           G 
          
         
           t 
          
         
        
          ∣ 
         
         
         
           S 
          
         
           t 
          
         
        
          = 
         
        
          s 
         
        
          ] 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
         
         
           ∑ 
          
          
          
            a 
           
          
            ∈ 
           
          
            A 
           
          
         
        
          π 
         
        
          ( 
         
        
          a 
         
        
          ∣ 
         
        
          s 
         
        
          ) 
         
         
         
           E 
          
         
           π 
          
         
        
          [ 
         
         
         
           G 
          
         
           t 
          
         
        
          ∣ 
         
         
         
           S 
          
         
           t 
          
         
        
          = 
         
        
          s 
         
        
          , 
         
         
         
           A 
          
         
           t 
          
         
        
          = 
         
        
          a 
         
        
          ] 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
         
         
           ∑ 
          
          
          
            a 
           
          
            ∈ 
           
          
            A 
           
          
         
        
          π 
         
        
          ( 
         
        
          a 
         
        
          ∣ 
         
        
          s 
         
        
          ) 
         
         
         
           Q 
          
         
           π 
          
         
        
          ( 
         
        
          s 
         
        
          , 
         
        
          a 
         
        
          ) 
         
        
       
      
     
    
   
     \begin{aligned} V^{\pi}(s) &= \mathbb {E}_{\pi}[G_t | S_t = s] \\ &= \sum_{a \in A} \pi(a | s) \mathbb{E}_{\pi}[G_t | S_t = s, A_t = a] \\ &= \sum_{a \in A} \pi(a | s) Q^{\pi}(s, a) \end{aligned} 
    
   
 Vπ(s)​=Eπ​[Gt​∣St​=s]=a∈A∑​π(a∣s)Eπ​[Gt​∣St​=s,At​=a]=a∈A∑​π(a∣s)Qπ(s,a)​

第1行使用了状态价值函数的定义;

从第2行转换到第3行的理解使用了动作价值函数的定义。

在此我就第2行为何将

      E 
     
    
      π 
     
    
   
     [ 
    
    
    
      G 
     
    
      t 
     
    
   
     ∣ 
    
    
    
      S 
     
    
      t 
     
    
   
     = 
    
   
     s 
    
   
     ] 
    
   
  
    \mathbb{E}_{\pi}[G_{t} | S_t = s] 
   
  
Eπ​[Gt​∣St​=s]转换成 
 
  
   
    
    
      ∑ 
     
     
     
       a 
      
     
       ∈ 
      
     
       A 
      
     
    
   
     π 
    
   
     ( 
    
   
     a 
    
   
     ∣ 
    
   
     s 
    
   
     ) 
    
    
    
      E 
     
    
      π 
     
    
   
     [ 
    
    
    
      G 
     
    
      t 
     
    
   
     ∣ 
    
    
    
      S 
     
    
      t 
     
    
   
     = 
    
   
     s 
    
   
     , 
    
    
    
      A 
     
    
      t 
     
    
   
     = 
    
   
     a 
    
   
     ] 
    
   
  
    \sum_{a \in A} \pi(a | s) \mathbb{E}_{\pi}[G_t | S_t = s, A_t = a] 
   
  
∑a∈A​π(a∣s)Eπ​[Gt​∣St​=s,At​=a],而不是 
 
  
   
    
    
      ∑ 
     
     
     
       a 
      
     
       ∈ 
      
     
       A 
      
     
    
   
     π 
    
   
     ( 
    
   
     a 
    
   
     ∣ 
    
   
     s 
    
   
     ) 
    
    
    
      G 
     
    
      t 
     
    
   
  
    \sum_{a \in A} \pi(a | s) G_t 
   
  
∑a∈A​π(a∣s)Gt​(这两种想法的差别只在于有没有对 
 
  
   
    
    
      G 
     
    
      t 
     
    
   
  
    G_{t} 
   
  
Gt​求期望)给出自己的解释:后者虽然看起来比较符合数学期望的公式形式:状态 
 
  
   
   
     s 
    
   
  
    s 
   
  
s根据概率 
 
  
   
   
     π 
    
   
     ( 
    
   
     a 
    
   
     ∣ 
    
   
     s 
    
   
     ) 
    
   
  
    \pi(a | s) 
   
  
π(a∣s)选择动作 
 
  
   
   
     a 
    
   
  
    a 
   
  
a后,后面乘上的对象应该就是对应的状态 
 
  
   
   
     s 
    
   
  
    s 
   
  
s采取动作 
 
  
   
   
     a 
    
   
  
    a 
   
  
a所得到的回报 
 
  
   
    
    
      G 
     
    
      t 
     
    
   
  
    G_{t} 
   
  
Gt​。但是前文在解释**动作价值函数**的定义时提到:**对于同一个状态 
  
   
    
    
      s 
     
    
   
     s 
    
   
 s、给定的策略 
  
   
    
    
      π 
     
    
   
     \pi 
    
   
 π和给定的动作 
  
   
    
    
      a 
     
    
   
     a 
    
   
 a,其 
  
   
    
     
     
       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​可能不同**。也就是说, 
 
  
   
   
     ( 
    
   
     s 
    
   
     , 
    
   
     a 
    
   
     ) 
    
   
  
    (s, a) 
   
  
(s,a)与 
 
  
   
    
    
      G 
     
    
      t 
     
    
   
  
    G_{t} 
   
  
Gt​并不是一一对应的关系,因此也无法直接相乘。此时就要找一个既能与 
 
  
   
   
     ( 
    
   
     s 
    
   
     , 
    
   
     a 
    
   
     ) 
    
   
  
    (s, a) 
   
  
(s,a)一一对应、又能概括 
 
  
   
   
     ( 
    
   
     s 
    
   
     , 
    
   
     a 
    
   
     ) 
    
   
  
    (s, a) 
   
  
(s,a)的收益的概念。这时,**动作价值**这一概念就成了不错的选择。它对 
 
  
   
   
     ( 
    
   
     s 
    
   
     , 
    
   
     a 
    
   
     ) 
    
   
  
    (s, a) 
   
  
(s,a)能对应的多个 
 
  
   
    
    
      G 
     
    
      t 
     
    
   
  
    G_{t} 
   
  
Gt​计算数学期望,近似计算出 
 
  
   
   
     ( 
    
   
     s 
    
   
     , 
    
   
     a 
    
   
     ) 
    
   
  
    (s, a) 
   
  
(s,a)的整体收益(这样看来,其实第2行也是可以省略的,直接就能推出第3行了)。

关系2

       Q 
      
     
       π 
      
     
    
      ( 
     
    
      s 
     
    
      , 
     
    
      a 
     
    
      ) 
     
    
      = 
     
    
      r 
     
    
      ( 
     
    
      s 
     
    
      , 
     
    
      a 
     
    
      ) 
     
    
      + 
     
    
      γ 
     
     
     
       ∑ 
      
      
       
       
         s 
        
       
         ′ 
        
       
      
        ∈ 
       
      
        S 
       
      
     
    
      P 
     
    
      ( 
     
     
     
       s 
      
     
       ′ 
      
     
    
      ∣ 
     
    
      s 
     
    
      , 
     
    
      a 
     
    
      ) 
     
     
     
       V 
      
     
       π 
      
     
    
      ( 
     
     
     
       s 
      
     
       ′ 
      
     
    
      ) 
     
    
   
     Q^{\pi}(s, a) = r(s, a) + \gamma \sum_{s^{\prime} \in S} P(s^{\prime} | s, a) V^{\pi}(s^{\prime}) 
    
   
 Qπ(s,a)=r(s,a)+γs′∈S∑​P(s′∣s,a)Vπ(s′)

关系2的推导基础:①动作价值函数的定义;②回报的定义;③奖励函数的定义;④状态价值函数的定义。推导过程如下:

           Q 
          
         
           π 
          
         
        
          ( 
         
        
          s 
         
        
          , 
         
        
          a 
         
        
          ) 
         
        
       
      
      
       
        
         
        
          = 
         
         
         
           E 
          
         
           π 
          
         
        
          [ 
         
         
         
           G 
          
         
           t 
          
         
        
          ∣ 
         
         
         
           S 
          
         
           t 
          
         
        
          = 
         
        
          s 
         
        
          , 
         
         
         
           A 
          
         
           t 
          
         
        
          = 
         
        
          a 
         
        
          ] 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
         
         
           E 
          
         
           π 
          
         
        
          [ 
         
         
         
           R 
          
         
           t 
          
         
        
          + 
         
        
          γ 
         
         
         
           R 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          + 
         
         
         
           γ 
          
         
           2 
          
         
         
         
           R 
          
          
          
            t 
           
          
            + 
           
          
            2 
           
          
         
        
          + 
         
        
          . 
         
        
          . 
         
        
          . 
         
        
          ∣ 
         
         
         
           S 
          
         
           t 
          
         
        
          = 
         
        
          s 
         
        
          , 
         
         
         
           A 
          
         
           t 
          
         
        
          = 
         
        
          a 
         
        
          ] 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
         
         
           E 
          
         
           π 
          
         
        
          [ 
         
         
         
           R 
          
         
           t 
          
         
        
          + 
         
        
          γ 
         
        
          ( 
         
         
         
           R 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          + 
         
        
          γ 
         
         
         
           R 
          
          
          
            t 
           
          
            + 
           
          
            2 
           
          
         
        
          + 
         
        
          . 
         
        
          . 
         
        
          . 
         
        
          ) 
         
        
          ∣ 
         
         
         
           S 
          
         
           t 
          
         
        
          = 
         
        
          s 
         
        
          , 
         
         
         
           A 
          
         
           t 
          
         
        
          = 
         
        
          a 
         
        
          ] 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
         
         
           E 
          
         
           π 
          
         
        
          [ 
         
         
         
           R 
          
         
           t 
          
         
        
          ∣ 
         
         
         
           S 
          
         
           t 
          
         
        
          = 
         
        
          s 
         
        
          , 
         
         
         
           A 
          
         
           t 
          
         
        
          = 
         
        
          a 
         
        
          ] 
         
        
          + 
         
        
          γ 
         
         
         
           E 
          
         
           π 
          
         
        
          [ 
         
         
         
           G 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          ∣ 
         
         
         
           S 
          
         
           t 
          
         
        
          = 
         
        
          s 
         
        
          , 
         
         
         
           A 
          
         
           t 
          
         
        
          = 
         
        
          a 
         
        
          ] 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
        
          r 
         
        
          ( 
         
        
          s 
         
        
          , 
         
        
          a 
         
        
          ) 
         
        
          + 
         
        
          γ 
         
         
         
           ∑ 
          
          
           
           
             s 
            
           
             ′ 
            
           
          
            ∈ 
           
          
            S 
           
          
         
        
          P 
         
        
          ( 
         
         
         
           s 
          
         
           ′ 
          
         
        
          ∣ 
         
        
          s 
         
        
          , 
         
        
          a 
         
        
          ) 
         
         
         
           E 
          
         
           π 
          
         
        
          [ 
         
         
         
           G 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          ∣ 
         
         
         
           S 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          = 
         
         
         
           s 
          
         
           ′ 
          
         
        
          ] 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
        
          r 
         
        
          ( 
         
        
          s 
         
        
          , 
         
        
          a 
         
        
          ) 
         
        
          + 
         
        
          γ 
         
         
         
           ∑ 
          
          
           
           
             s 
            
           
             ′ 
            
           
          
            ∈ 
           
          
            S 
           
          
         
        
          P 
         
        
          ( 
         
         
         
           s 
          
         
           ′ 
          
         
        
          ∣ 
         
        
          s 
         
        
          , 
         
        
          a 
         
        
          ) 
         
         
         
           V 
          
         
           π 
          
         
        
          ( 
         
         
         
           s 
          
         
           ′ 
          
         
        
          ) 
         
        
       
      
     
    
   
     \begin{aligned} Q^{\pi}(s, a) &= \mathbb{E}_{\pi}[G_t | S_t = s, A_t = a] \\ &= \mathbb{E}_{\pi}[R_t + \gamma R_{t+1} + \gamma^2R_{t+2}+ ... | S_t = s, A_t = a] \\ &= \mathbb{E}_{\pi}[R_t + \gamma (R_{t+1} + \gamma R_{t+2} + ...) | S_t = s, A_t = a] \\ &= \mathbb{E}_{\pi}[R_t | S_t = s, A_t = a] + \gamma \mathbb{E}_{\pi}[G_{t+1} | S_t = s, A_t = a] \\ &= r(s, a) + \gamma \sum_{s^{\prime} \in S} P(s^{\prime} | s, a) \mathbb{E}_{\pi}[G_{t+1} | S_{t+1} = s^{\prime}] \\ &= r(s, a) + \gamma \sum_{s^{\prime} \in S} P(s^{\prime} | s, a) V^{\pi}(s^{\prime}) \end{aligned} 
    
   
 Qπ(s,a)​=Eπ​[Gt​∣St​=s,At​=a]=Eπ​[Rt​+γRt+1​+γ2Rt+2​+...∣St​=s,At​=a]=Eπ​[Rt​+γ(Rt+1​+γRt+2​+...)∣St​=s,At​=a]=Eπ​[Rt​∣St​=s,At​=a]+γEπ​[Gt+1​∣St​=s,At​=a]=r(s,a)+γs′∈S∑​P(s′∣s,a)Eπ​[Gt+1​∣St+1​=s′]=r(s,a)+γs′∈S∑​P(s′∣s,a)Vπ(s′)​

推导过程中,第1行的等式使用了动作价值函数的定义;

第1行到第2行的转化、第3行到第4行的转化使用了回报 (Return)的定义;

第4行到第5行的转化使用了奖励函数的定义;

第5行到第6行的转化使用了状态价值函数的定义。

在此我就第5行的第2个子项为何将

      E 
     
    
      π 
     
    
   
     [ 
    
    
    
      G 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
     ∣ 
    
    
    
      S 
     
    
      t 
     
    
   
     = 
    
   
     s 
    
   
     , 
    
    
    
      A 
     
    
      t 
     
    
   
     = 
    
   
     a 
    
   
     ] 
    
   
  
    \mathbb{E}_{\pi}[G_{t+1} | S_t = s, A_t = a] 
   
  
Eπ​[Gt+1​∣St​=s,At​=a]拆解成 
 
  
   
    
    
      ∑ 
     
     
      
      
        s 
       
      
        ′ 
       
      
     
       ∈ 
      
     
       S 
      
     
    
   
     P 
    
   
     ( 
    
    
    
      s 
     
    
      ′ 
     
    
   
     ∣ 
    
   
     s 
    
   
     , 
    
   
     a 
    
   
     ) 
    
    
    
      E 
     
    
      π 
     
    
   
     [ 
    
    
    
      G 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
     ∣ 
    
    
    
      S 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
     = 
    
    
    
      s 
     
    
      ′ 
     
    
   
     ] 
    
   
  
    \sum_{s^{\prime} \in S} P(s^{\prime} | s, a) \mathbb{E}_{\pi}[G_{t+1} | S_{t+1} = s^{\prime}] 
   
  
∑s′∈S​P(s′∣s,a)Eπ​[Gt+1​∣St+1​=s′],而不是 
 
  
   
    
    
      ∑ 
     
     
      
      
        s 
       
      
        ′ 
       
      
     
       ∈ 
      
     
       S 
      
     
    
   
     P 
    
   
     ( 
    
    
    
      s 
     
    
      ′ 
     
    
   
     ∣ 
    
   
     s 
    
   
     , 
    
   
     a 
    
   
     ) 
    
    
    
      G 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
  
    \sum_{s^{\prime} \in S} P(s^{\prime} | s, a) G_{t+1} 
   
  
∑s′∈S​P(s′∣s,a)Gt+1​(这两种想法的差别只在于有没有对 
 
  
   
    
    
      G 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
  
    G_{t+1} 
   
  
Gt+1​求期望)给出自己的解释:后者虽然看起来比较符合数学期望的公式形式:状态 
 
  
   
   
     s 
    
   
  
    s 
   
  
s、动作 
 
  
   
   
     a 
    
   
  
    a 
   
  
a根据概率 
 
  
   
   
     P 
    
   
     ( 
    
    
    
      s 
     
    
      ′ 
     
    
   
     ∣ 
    
   
     s 
    
   
     , 
    
   
     a 
    
   
     ) 
    
   
  
    P(s^{\prime} | s, a) 
   
  
P(s′∣s,a)转移到状态 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′后,后面乘上的对象应该就是对应的状态 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′的回报 
 
  
   
    
    
      G 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
  
    G_{t+1} 
   
  
Gt+1​。但是前文在解释**价值**的定义时提到:**对于相同的起始状态 
  
   
    
    
      s 
     
    
   
     s 
    
   
 s,其 
  
   
    
     
     
       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​可以是不一样的**。也就是说, 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′与 
 
  
   
    
    
      G 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
  
    G_{t+1} 
   
  
Gt+1​并不是一一对应的关系,因此也无法直接相乘。此时就要找一个既能与 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′一一对应、又能概括状态 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′的收益的概念。这时,**价值**这一概念就成了不错的选择。它对 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′能对应的多个 
 
  
   
    
    
      G 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
  
    G_{t+1} 
   
  
Gt+1​计算数学期望,近似计算出状态 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′的整体收益(这样看来,其实第5行也是可以省略的,直接就能推出第6行了)。

另外,特别提醒:

            Q 
           
          
            π 
           
          
         
           ( 
          
         
           s 
          
         
           , 
          
         
           a 
          
         
           ) 
          
         
        
       
       
        
         
          
         
           = 
          
          
          
            E 
           
          
            π 
           
          
         
           [ 
          
          
          
            G 
           
          
            t 
           
          
         
           ∣ 
          
          
          
            S 
           
          
            t 
           
          
         
           = 
          
         
           s 
          
         
           , 
          
          
          
            A 
           
          
            t 
           
          
         
           = 
          
         
           a 
          
         
           ] 
          
         
        
       
      
      
       
        
         
        
       
       
        
         
          
         
           = 
          
          
          
            ∑ 
           
           
            
            
              s 
             
            
              ′ 
             
            
           
             ∈ 
            
           
             S 
            
           
          
         
           P 
          
         
           ( 
          
          
          
            s 
           
          
            ′ 
           
          
         
           ∣ 
          
         
           s 
          
         
           , 
          
         
           a 
          
         
           ) 
          
         
           E 
          
         
           [ 
          
          
          
            G 
           
           
           
             t 
            
           
             + 
            
           
             1 
            
           
          
         
           ∣ 
          
          
          
            S 
           
           
           
             t 
            
           
             + 
            
           
             1 
            
           
          
         
           = 
          
          
          
            s 
           
          
            ′ 
           
          
         
           ] 
          
         
        
       
      
     
    
      \begin{aligned} Q^{\pi}(s, a) &= \mathbb{E}_{\pi}[G_t | S_t = s, A_t = a] \\ &= \sum_{s^{\prime} \in S} P(s^{\prime} | s, a) \mathbb{E}[G_{t+1} | S_{t+1} = s^{\prime}] \end{aligned} 
     
    
  Qπ(s,a)​=Eπ​[Gt​∣St​=s,At​=a]=s′∈S∑​P(s′∣s,a)E[Gt+1​∣St+1​=s′]​

不能这样转!因为这样就没有考虑

       R 
      
     
       t 
      
     
    
   
     R_t 
    
   
 Rt​了,从 
  
   
    
     
     
       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​直接绕到了 
  
   
    
     
     
       G 
      
      
      
        t 
       
      
        + 
       
      
        1 
       
      
     
    
   
     G_{t+1} 
    
   
 Gt+1​。

贝尔曼方程 (Bellman Equation)

下式即为贝尔曼方程。

      V 
     
    
      ( 
     
    
      s 
     
    
      ) 
     
    
      = 
     
    
      r 
     
    
      ( 
     
    
      s 
     
    
      ) 
     
    
      + 
     
    
      γ 
     
     
     
       ∑ 
      
      
       
       
         s 
        
       
         ′ 
        
       
      
        ∈ 
       
      
        S 
       
      
     
    
      P 
     
    
      ( 
     
     
     
       s 
      
     
       ′ 
      
     
    
      ∣ 
     
    
      s 
     
    
      ) 
     
    
      V 
     
    
      ( 
     
     
     
       s 
      
     
       ′ 
      
     
    
      ) 
     
    
   
     V(s) = r(s) + \gamma \sum_{s^{\prime} \in S} P(s^{\prime} | s) V(s^{\prime}) 
    
   
 V(s)=r(s)+γs′∈S∑​P(s′∣s)V(s′)

与价值函数的原式相比,贝尔曼方程允许使用者在知晓奖励函数和状态转移矩阵的情况下即可计算价值函数的解析解

贝尔曼方程的推导基础:①回报的定义;②奖励函数的定义;③价值函数的定义。推导过程如下:

          V 
         
        
          ( 
         
        
          s 
         
        
          ) 
         
        
       
      
      
       
        
         
        
          = 
         
        
          E 
         
        
          [ 
         
         
         
           G 
          
         
           t 
          
         
        
          ∣ 
         
         
         
           S 
          
         
           t 
          
         
        
          = 
         
        
          s 
         
        
          ] 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
        
          E 
         
        
          [ 
         
         
         
           R 
          
         
           t 
          
         
        
          + 
         
        
          γ 
         
         
         
           R 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          + 
         
         
         
           γ 
          
         
           2 
          
         
         
         
           R 
          
          
          
            t 
           
          
            + 
           
          
            2 
           
          
         
        
          + 
         
        
          . 
         
        
          . 
         
        
          . 
         
        
          ∣ 
         
         
         
           S 
          
         
           t 
          
         
        
          = 
         
        
          s 
         
        
          ] 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
        
          E 
         
        
          [ 
         
         
         
           R 
          
         
           t 
          
         
        
          + 
         
        
          γ 
         
        
          ( 
         
         
         
           R 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          + 
         
        
          γ 
         
         
         
           R 
          
          
          
            t 
           
          
            + 
           
          
            2 
           
          
         
        
          + 
         
        
          . 
         
        
          . 
         
        
          . 
         
        
          ) 
         
        
          ∣ 
         
         
         
           S 
          
         
           t 
          
         
        
          = 
         
        
          s 
         
        
          ] 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
        
          E 
         
        
          [ 
         
         
         
           R 
          
         
           t 
          
         
        
          + 
         
        
          γ 
         
         
         
           G 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          ∣ 
         
         
         
           S 
          
         
           t 
          
         
        
          = 
         
        
          s 
         
        
          ] 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
        
          E 
         
        
          [ 
         
         
         
           R 
          
         
           t 
          
         
        
          ∣ 
         
         
         
           S 
          
         
           t 
          
         
        
          = 
         
        
          s 
         
        
          ] 
         
        
          + 
         
        
          γ 
         
        
          E 
         
        
          [ 
         
         
         
           G 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          ∣ 
         
         
         
           S 
          
         
           t 
          
         
        
          = 
         
        
          s 
         
        
          ] 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
        
          r 
         
        
          ( 
         
        
          s 
         
        
          ) 
         
        
          + 
         
        
          γ 
         
         
         
           ∑ 
          
          
           
           
             s 
            
           
             ′ 
            
           
          
            ∈ 
           
          
            S 
           
          
         
        
          P 
         
        
          ( 
         
         
         
           s 
          
         
           ′ 
          
         
        
          ∣ 
         
        
          s 
         
        
          ) 
         
        
          E 
         
        
          [ 
         
         
         
           G 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          ∣ 
         
         
         
           S 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          = 
         
         
         
           s 
          
         
           ′ 
          
         
        
          ] 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
        
          r 
         
        
          ( 
         
        
          s 
         
        
          ) 
         
        
          + 
         
        
          γ 
         
         
         
           ∑ 
          
          
           
           
             s 
            
           
             ′ 
            
           
          
            ∈ 
           
          
            S 
           
          
         
        
          P 
         
        
          ( 
         
         
         
           s 
          
         
           ′ 
          
         
        
          ∣ 
         
        
          s 
         
        
          ) 
         
        
          V 
         
        
          ( 
         
         
         
           s 
          
         
           ′ 
          
         
        
          ) 
         
        
       
      
     
    
   
     \begin{aligned} V(s) &= \mathbb{E}[G_t | S_t = s] \\ &= \mathbb{E}[R_t + \gamma R_{t + 1} + \gamma ^ 2 R_{t + 2} + ... | S_t = s] \\ &= \mathbb{E}[R_t + \gamma (R_{t + 1} + \gamma R_{t + 2} + ...) | S_t = s] \\ &= \mathbb{E}[R_t + \gamma G_{t + 1} | S_t = s] \\ &= \mathbb{E}[R_t | S_t = s] + \gamma \mathbb{E}[G_{t + 1} | S_t = s] \\ &= r(s) + \gamma \sum_{s^{\prime} \in S} P(s^{\prime} | s) \mathbb{E}[G_{t + 1} | S_{t + 1} = s^{\prime}] \\ &= r(s) + \gamma \sum_{s^{\prime} \in S} P(s^{\prime} | s) V(s^{\prime}) \end{aligned} 
    
   
 V(s)​=E[Gt​∣St​=s]=E[Rt​+γRt+1​+γ2Rt+2​+...∣St​=s]=E[Rt​+γ(Rt+1​+γRt+2​+...)∣St​=s]=E[Rt​+γGt+1​∣St​=s]=E[Rt​∣St​=s]+γE[Gt+1​∣St​=s]=r(s)+γs′∈S∑​P(s′∣s)E[Gt+1​∣St+1​=s′]=r(s)+γs′∈S∑​P(s′∣s)V(s′)​

推导过程中,第1行到第2行的转化、第3行到第4行的转化使用了回报 (Return)的定义;

第5行到第6行的转化使用了奖励函数的定义;

第6行到第7行的转化使用了价值函数的定义。

在此我就第6行的第2个子项为何将

     E 
    
   
     [ 
    
    
    
      G 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
     ∣ 
    
    
    
      S 
     
    
      t 
     
    
   
     = 
    
   
     s 
    
   
     ] 
    
   
  
    \mathbb{E}[G_{t + 1} | S_t = s] 
   
  
E[Gt+1​∣St​=s]拆解成 
 
  
   
    
    
      ∑ 
     
     
      
      
        s 
       
      
        ′ 
       
      
     
       ∈ 
      
     
       S 
      
     
    
   
     P 
    
   
     ( 
    
    
    
      s 
     
    
      ′ 
     
    
   
     ∣ 
    
   
     s 
    
   
     ) 
    
   
     E 
    
   
     [ 
    
    
    
      G 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
     ∣ 
    
    
    
      S 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
     = 
    
    
    
      s 
     
    
      ′ 
     
    
   
     ] 
    
   
  
    \sum_{s^{\prime} \in S} P(s^{\prime} | s) \mathbb{E}[G_{t + 1} | S_{t + 1} = s^{\prime}] 
   
  
∑s′∈S​P(s′∣s)E[Gt+1​∣St+1​=s′],而不是 
 
  
   
    
    
      ∑ 
     
     
      
      
        s 
       
      
        ′ 
       
      
     
       ∈ 
      
     
       S 
      
     
    
   
     P 
    
   
     ( 
    
    
    
      s 
     
    
      ′ 
     
    
   
     ∣ 
    
   
     s 
    
   
     ) 
    
    
    
      G 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
  
    \sum_{s^{\prime} \in S} P(s^{\prime} | s) G_{t + 1} 
   
  
∑s′∈S​P(s′∣s)Gt+1​(这两种想法的差别只在于有没有对 
 
  
   
    
    
      G 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
  
    G_{t+1} 
   
  
Gt+1​求期望)给出自己的解释:后者虽然看起来比较符合数学期望的公式形式:状态 
 
  
   
   
     s 
    
   
  
    s 
   
  
s根据概率 
 
  
   
   
     P 
    
   
     ( 
    
    
    
      s 
     
    
      ′ 
     
    
   
     ∣ 
    
   
     s 
    
   
     ) 
    
   
  
    P(s^{\prime} | s) 
   
  
P(s′∣s)转移到状态 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′后,后面乘上的对象应该就是对应的状态 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′的回报 
 
  
   
    
    
      G 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
  
    G_{t+1} 
   
  
Gt+1​。但是前文在解释**价值**的定义时提到:**对于相同的起始状态 
  
   
    
    
      s 
     
    
   
     s 
    
   
 s,其 
  
   
    
     
     
       G 
      
     
       t 
      
     
    
   
     G_t 
    
   
 Gt​可以是不一样的**。也就是说, 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′与 
 
  
   
    
    
      G 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
  
    G_{t+1} 
   
  
Gt+1​并不是一一对应的关系,因此也无法直接相乘。此时就要找一个既能与 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′一一对应、又能概括状态 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′的收益的概念。这时,**价值**这一概念就成了不错的选择。它对 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′能对应的多个 
 
  
   
    
    
      G 
     
     
     
       t 
      
     
       + 
      
     
       1 
      
     
    
   
  
    G_{t+1} 
   
  
Gt+1​计算数学期望,近似计算出状态 
 
  
   
    
    
      s 
     
    
      ′ 
     
    
   
  
    s^{\prime} 
   
  
s′的整体收益(这样看来,其实第6行也是可以省略的,直接就能推出第7行了)。

贝尔曼期望方程 (Bellman Expectation Equation)

其实贝尔曼期望方程即是前面的贝尔曼方程,只是在引入动作

     a 
    
   
  
    a 
   
  
a之后更加完整。

根据状态价值函数和动作价值函数的两个关系,可以推出2个价值函数的贝尔曼期望方程。

方程1

       V 
      
     
       π 
      
     
    
      ( 
     
    
      s 
     
    
      ) 
     
    
      = 
     
     
     
       ∑ 
      
      
      
        a 
       
      
        ∈ 
       
      
        A 
       
      
     
    
      π 
     
    
      ( 
     
    
      a 
     
    
      ∣ 
     
    
      s 
     
    
      ) 
     
     
     
       [ 
      
     
       r 
      
     
       ( 
      
     
       s 
      
     
       , 
      
     
       a 
      
     
       ) 
      
     
       + 
      
     
       γ 
      
      
      
        ∑ 
       
       
        
        
          s 
         
        
          ′ 
         
        
       
         ∈ 
        
       
         S 
        
       
      
     
       P 
      
     
       ( 
      
      
      
        s 
       
      
        ′ 
       
      
     
       ∣ 
      
     
       s 
      
     
       , 
      
     
       a 
      
     
       ) 
      
      
      
        V 
       
      
        π 
       
      
     
       ( 
      
      
      
        s 
       
      
        ′ 
       
      
     
       ) 
      
     
       ] 
      
     
    
   
     V^{\pi}(s) = \sum_{a \in A} \pi(a|s) \left[ r(s,a) + \gamma \sum_{s^{\prime} \in S} P(s^{\prime} | s, a) V^{\pi}(s^{\prime}) \right] 
    
   
 Vπ(s)=a∈A∑​π(a∣s)[r(s,a)+γs′∈S∑​P(s′∣s,a)Vπ(s′)]

推导过程如下:将关系2式代入关系1式,得:

           V 
          
         
           π 
          
         
        
          ( 
         
        
          s 
         
        
          ) 
         
        
       
      
      
       
        
         
        
          = 
         
         
         
           ∑ 
          
          
          
            a 
           
          
            ∈ 
           
          
            A 
           
          
         
        
          π 
         
        
          ( 
         
        
          a 
         
        
          ∣ 
         
        
          s 
         
        
          ) 
         
         
         
           Q 
          
         
           π 
          
         
        
          ( 
         
        
          s 
         
        
          , 
         
        
          a 
         
        
          ) 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
         
         
           ∑ 
          
          
          
            a 
           
          
            ∈ 
           
          
            A 
           
          
         
        
          π 
         
        
          ( 
         
        
          a 
         
        
          ∣ 
         
        
          s 
         
        
          ) 
         
         
         
           [ 
          
         
           r 
          
         
           ( 
          
         
           s 
          
         
           , 
          
         
           a 
          
         
           ) 
          
         
           + 
          
         
           γ 
          
          
          
            ∑ 
           
           
            
            
              s 
             
            
              ′ 
             
            
           
             ∈ 
            
           
             S 
            
           
          
         
           P 
          
         
           ( 
          
          
          
            s 
           
          
            ′ 
           
          
         
           ∣ 
          
         
           s 
          
         
           , 
          
         
           a 
          
         
           ) 
          
          
          
            V 
           
          
            π 
           
          
         
           ( 
          
          
          
            s 
           
          
            ′ 
           
          
         
           ) 
          
         
           ] 
          
         
        
       
      
     
    
   
     \begin{aligned} V^{\pi}(s) &= \sum_{a \in A} \pi(a|s) Q^{\pi}(s,a) \\ &= \sum_{a \in A} \pi(a|s) \left[ r(s,a) + \gamma \sum_{s^{\prime} \in S} P(s^{\prime} | s, a) V^{\pi}(s^{\prime}) \right] \end{aligned} 
    
   
 Vπ(s)​=a∈A∑​π(a∣s)Qπ(s,a)=a∈A∑​π(a∣s)[r(s,a)+γs′∈S∑​P(s′∣s,a)Vπ(s′)]​

方程2

       Q 
      
     
       π 
      
     
    
      ( 
     
    
      s 
     
    
      , 
     
    
      a 
     
    
      ) 
     
    
      = 
     
    
      r 
     
    
      ( 
     
    
      s 
     
    
      , 
     
    
      a 
     
    
      ) 
     
    
      + 
     
    
      γ 
     
     
     
       ∑ 
      
      
       
       
         s 
        
       
         ′ 
        
       
      
        ∈ 
       
      
        S 
       
      
     
    
      P 
     
    
      ( 
     
     
     
       s 
      
     
       ′ 
      
     
    
      ∣ 
     
    
      s 
     
    
      , 
     
    
      a 
     
    
      ) 
     
     
     
       ∑ 
      
      
       
       
         a 
        
       
         ′ 
        
       
      
        ∈ 
       
      
        A 
       
      
     
    
      π 
     
    
      ( 
     
     
     
       a 
      
     
       ′ 
      
     
    
      ∣ 
     
     
     
       s 
      
     
       ′ 
      
     
    
      ) 
     
     
     
       Q 
      
     
       π 
      
     
    
      ( 
     
     
     
       s 
      
     
       ′ 
      
     
    
      , 
     
     
     
       a 
      
     
       ′ 
      
     
    
      ) 
     
    
   
     Q^{\pi}(s,a) = r(s,a) + \gamma \sum_{s^{\prime} \in S}P(s^{\prime} | s, a) \sum_{a^{\prime} \in A} \pi(a^{\prime} | s^{\prime}) Q^{\pi}(s^{\prime}, a^{\prime}) 
    
   
 Qπ(s,a)=r(s,a)+γs′∈S∑​P(s′∣s,a)a′∈A∑​π(a′∣s′)Qπ(s′,a′)

推导过程如下:将关系1式代入关系2式,得:

           Q 
          
         
           π 
          
         
        
          ( 
         
        
          s 
         
        
          , 
         
        
          a 
         
        
          ) 
         
        
       
      
      
       
        
         
        
          = 
         
        
          r 
         
        
          ( 
         
        
          s 
         
        
          , 
         
        
          a 
         
        
          ) 
         
        
          + 
         
        
          γ 
         
         
         
           ∑ 
          
          
           
           
             s 
            
           
             ′ 
            
           
          
            ∈ 
           
          
            S 
           
          
         
        
          P 
         
        
          ( 
         
         
         
           s 
          
         
           ′ 
          
         
        
          ∣ 
         
        
          s 
         
        
          , 
         
        
          a 
         
        
          ) 
         
         
         
           V 
          
         
           π 
          
         
        
          ( 
         
         
         
           s 
          
         
           ′ 
          
         
        
          ) 
         
        
       
      
     
     
      
       
        
       
      
      
       
        
         
        
          = 
         
        
          r 
         
        
          ( 
         
        
          s 
         
        
          , 
         
        
          a 
         
        
          ) 
         
        
          + 
         
        
          γ 
         
         
         
           ∑ 
          
          
           
           
             s 
            
           
             ′ 
            
           
          
            ∈ 
           
          
            S 
           
          
         
        
          P 
         
        
          ( 
         
         
         
           s 
          
         
           ′ 
          
         
        
          ∣ 
         
        
          s 
         
        
          , 
         
        
          a 
         
        
          ) 
         
         
         
           ∑ 
          
          
           
           
             a 
            
           
             ′ 
            
           
          
            ∈ 
           
          
            A 
           
          
         
        
          π 
         
        
          ( 
         
         
         
           a 
          
         
           ′ 
          
         
        
          ∣ 
         
         
         
           s 
          
         
           ′ 
          
         
        
          ) 
         
         
         
           Q 
          
         
           π 
          
         
        
          ( 
         
         
         
           s 
          
         
           ′ 
          
         
        
          , 
         
         
         
           a 
          
         
           ′ 
          
         
        
          ) 
         
        
       
      
     
    
   
     \begin{aligned} Q^{\pi}(s,a) &= r(s,a) + \gamma \sum_{s^{\prime} \in S} P(s^{\prime} | s, a) V^{\pi}(s^{\prime}) \\ &=r(s,a) + \gamma \sum_{s^{\prime} \in S} P(s^{\prime} | s, a) \sum_{a^{\prime} \in A} \pi(a^{\prime}| s^{\prime})Q^{\pi}(s^{\prime},a^{\prime}) \end{aligned} 
    
   
 Qπ(s,a)​=r(s,a)+γs′∈S∑​P(s′∣s,a)Vπ(s′)=r(s,a)+γs′∈S∑​P(s′∣s,a)a′∈A∑​π(a′∣s′)Qπ(s′,a′)​

贝尔曼最优方程

待补充……

标签: 人工智能 笔记

本文转载自: https://blog.csdn.net/Mocode/article/details/130383093
版权归原作者 Mocode 所有, 如有侵权,请联系我们删除。

“【强化学习理论】状态价值函数与动作价值函数系列公式推导”的评论:

还没有评论