Lecture 10: Actor-Critic Methods
The simplest actor-critic (QAC)
回顾 policy 梯度的概念:
1、标量指标 J ( θ ) J(\theta) J(θ),可以是 v ˉ π \bar{v}_{\pi} vˉπ 或 r ˉ π \bar{r}_{\pi} rˉπ。
2、最大化  
     
      
       
       
         J 
        
       
         ( 
        
       
         θ 
        
       
         ) 
        
       
      
        J(\theta) 
       
      
    J(θ) 的梯度上升算法为:
  
      
       
        
         
          
           
            
            
              θ 
             
             
             
               t 
              
             
               + 
              
             
               1 
              
             
            
           
          
          
           
            
             
            
              = 
             
             
             
               θ 
              
             
               t 
              
             
            
              + 
             
            
              α 
             
             
             
               ∇ 
              
             
               θ 
              
             
            
              J 
             
            
              ( 
             
             
             
               θ 
              
             
               t 
              
             
            
              ) 
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
            
              = 
             
             
             
               θ 
              
             
               t 
              
             
            
              + 
             
            
              α 
             
             
             
               E 
              
              
              
                S 
               
              
                ∼ 
               
              
                η 
               
              
                , 
               
              
                A 
               
              
                ∼ 
               
              
                π 
               
              
             
            
              [ 
             
             
             
               ∇ 
              
             
               θ 
              
             
            
              ln 
             
            
               
             
            
              π 
             
            
              ( 
             
            
              A 
             
            
              ∣ 
             
            
              S 
             
            
              , 
             
             
             
               θ 
              
             
               t 
              
             
            
              ) 
             
             
             
               q 
              
             
               π 
              
             
            
              ( 
             
            
              S 
             
            
              , 
             
            
              A 
             
            
              ) 
             
            
              ] 
             
            
           
          
         
        
       
         \begin{aligned} \theta_{t+1}& =\theta_t+\alpha\nabla_\theta J(\theta_t) \\ &=\theta_t+\alpha\mathbb{E}_{S\sim\eta,A\sim\pi}\Big[\nabla_\theta\ln\pi(A|S,\theta_t)q_\pi(S,A)\Big] \end{aligned} 
        
       
     θt+1=θt+α∇θJ(θt)=θt+αES∼η,A∼π[∇θlnπ(A∣S,θt)qπ(S,A)]
 3、随机梯度上升算法是:
  
      
       
        
         
         
           θ 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          = 
         
         
         
           θ 
          
         
           t 
          
         
        
          + 
         
        
          α 
         
         
         
           ∇ 
          
         
           θ 
          
         
        
          ln 
         
        
           
         
        
          π 
         
        
          ( 
         
         
         
           a 
          
         
           t 
          
         
        
          ∣ 
         
         
         
           s 
          
         
           t 
          
         
        
          , 
         
         
         
           θ 
          
         
           t 
          
         
        
          ) 
         
         
          
          
            q 
           
          
            t 
           
          
         
           ( 
          
          
          
            s 
           
          
            t 
           
          
         
           , 
          
          
          
            a 
           
          
            t 
           
          
         
           ) 
          
         
        
       
         \theta_{t+1}=\theta_t+\alpha\nabla_\theta\ln\pi(a_t|s_t,\theta_t){q_t(s_t,a_t)} 
        
       
     θt+1=θt+α∇θlnπ(at∣st,θt)qt(st,at)
 从以上算法中,可以看到“actor”和”critic“:
- 这个算法对应的是actor。
- 估计 q t ( s , a ) q_t(s, a) qt(s,a)的算法对应于critic。
How to get q t ( s t , a t ) q_t(s_t, a_t) qt(st,at)?
- Monte Carlo learning:如果使用MC,相应的算法称为REINFORCE或Monte Carlo policy gradient。
- Temporal-difference learning:如果使用TD,这种算法通常称为actor-critic。

- critic 对应的是“SARSA+价值函数近似”。
- actor 对应于 policy 更新算法。
- 该算法是 on-policy的。由于 policy 是随机的,因此无需使用 ε \varepsilon ε-greedy 等技术。
- 这种特定的 actor-citric 算法有时称为 Q Actor-Critic (QAC)。
- 该算法揭示了 actor-citric 方法的核心思想。 它可以扩展以生成许多其他算法。
Advantage actor-critic (A2C)
Baseline invariance
属性:policy 梯度对于附加 baseline 是不变的:
  
      
       
        
         
          
           
            
             
             
               ∇ 
              
             
               θ 
              
             
            
              J 
             
            
              ( 
             
            
              θ 
             
            
              ) 
             
            
           
          
          
           
            
             
            
              = 
             
             
             
               E 
              
              
              
                S 
               
              
                ∼ 
               
              
                η 
               
              
                , 
               
              
                A 
               
              
                ∼ 
               
              
                π 
               
              
             
            
              [ 
             
             
             
               ∇ 
              
             
               θ 
              
             
            
              ln 
             
            
               
             
            
              π 
             
            
              ( 
             
            
              A 
             
            
              ∣ 
             
            
              S 
             
            
              , 
             
             
             
               θ 
              
             
               t 
              
             
            
              ) 
             
             
             
               q 
              
             
               π 
              
             
            
              ( 
             
            
              S 
             
            
              , 
             
            
              A 
             
            
              ) 
             
            
              ] 
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
            
              = 
             
             
             
               E 
              
              
              
                S 
               
              
                ∼ 
               
              
                η 
               
              
                , 
               
              
                A 
               
              
                ∼ 
               
              
                π 
               
              
             
             
             
               [ 
              
              
              
                ∇ 
               
              
                θ 
               
              
             
               ln 
              
             
                
              
             
               π 
              
             
               ( 
              
             
               A 
              
             
               ∣ 
              
             
               S 
              
             
               , 
              
              
              
                θ 
               
              
                t 
               
              
             
               ) 
              
             
               ( 
              
              
              
                q 
               
              
                π 
               
              
             
               ( 
              
             
               S 
              
             
               , 
              
             
               A 
              
             
               ) 
              
             
               − 
              
              
              
                b 
               
              
                ( 
               
              
                S 
               
              
                ) 
               
              
             
               ) 
              
             
               ] 
              
             
            
           
          
         
        
       
         \begin{aligned} \nabla_\theta J(\theta)& =\mathbb{E}_{S\sim\eta,A\sim\pi}\bigg[\nabla_\theta\ln\pi(A|S,\theta_t)q_\pi(S,A)\bigg] \\ &=\mathbb{E}_{S\sim\eta,A\sim\pi}\left[\nabla_\theta\ln\pi(A|S,\theta_t)(q_\pi(S,A)-{b(S)})\right] \end{aligned} 
        
       
     ∇θJ(θ)=ES∼η,A∼π[∇θlnπ(A∣S,θt)qπ(S,A)]=ES∼η,A∼π[∇θlnπ(A∣S,θt)(qπ(S,A)−b(S))]
 其中,附加 baseline  
     
      
       
       
         b 
        
       
         ( 
        
       
         S 
        
       
         ) 
        
       
      
        b(S) 
       
      
    b(S) 是  
     
      
       
       
         S 
        
       
      
        S 
       
      
    S 的标量函数。
有效性证明:
  
      
       
        
         
         
           E 
          
          
          
            S 
           
          
            ∼ 
           
          
            η 
           
          
            , 
           
          
            A 
           
          
            ∼ 
           
          
            π 
           
          
         
        
          [ 
         
         
         
           ∇ 
          
         
           θ 
          
         
        
          ln 
         
        
           
         
        
          π 
         
        
          ( 
         
        
          A 
         
        
          ∣ 
         
        
          S 
         
        
          , 
         
         
         
           θ 
          
         
           t 
          
         
        
          ) 
         
        
          b 
         
        
          ( 
         
        
          S 
         
        
          ) 
         
        
          ] 
         
        
          = 
         
        
          0 
         
        
       
         \mathbb{E}_{S\sim\eta,A\sim\pi}\Big[\nabla_\theta\ln\pi(A|S,\theta_t)b(S)\Big]=0 
        
       
     ES∼η,A∼π[∇θlnπ(A∣S,θt)b(S)]=0
 上式的具体细节为:
  
      
       
        
         
          
           
            
             
             
               E 
              
              
              
                S 
               
              
                ∼ 
               
              
                η 
               
              
                , 
               
              
                A 
               
              
                ∼ 
               
              
                π 
               
              
             
             
             
               [ 
              
              
              
                ∇ 
               
              
                θ 
               
              
             
               ln 
              
             
                
              
             
               π 
              
             
               ( 
              
             
               A 
              
             
               ∣ 
              
             
               S 
              
             
               , 
              
              
              
                θ 
               
              
                t 
               
              
             
               ) 
              
             
               b 
              
             
               ( 
              
             
               S 
              
             
               ) 
              
             
               ] 
              
             
            
           
          
          
           
            
             
            
              = 
             
             
             
               ∑ 
              
              
              
                s 
               
              
                ∈ 
               
              
                S 
               
              
             
            
              η 
             
            
              ( 
             
            
              s 
             
            
              ) 
             
             
             
               ∑ 
              
              
              
                a 
               
              
                ∈ 
               
              
                A 
               
              
             
            
              π 
             
            
              ( 
             
            
              a 
             
            
              ∣ 
             
            
              s 
             
            
              , 
             
             
             
               θ 
              
             
               t 
              
             
            
              ) 
             
             
             
               ∇ 
              
             
               θ 
              
             
            
              ln 
             
            
               
             
            
              π 
             
            
              ( 
             
            
              a 
             
            
              ∣ 
             
            
              s 
             
            
              , 
             
             
             
               θ 
              
             
               t 
              
             
            
              ) 
             
            
              b 
             
            
              ( 
             
            
              s 
             
            
              ) 
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
             
              
               
                
                 
                
               
               
                
                 
                  
                 
                   = 
                  
                  
                  
                    ∑ 
                   
                   
                   
                     s 
                    
                   
                     ∈ 
                    
                   
                     S 
                    
                   
                  
                 
                   η 
                  
                 
                   ( 
                  
                 
                   s 
                  
                 
                   ) 
                  
                  
                  
                    ∑ 
                   
                   
                   
                     a 
                    
                   
                     ∈ 
                    
                   
                     A 
                    
                   
                  
                  
                  
                    ∇ 
                   
                  
                    θ 
                   
                  
                 
                   π 
                  
                 
                   ( 
                  
                 
                   a 
                  
                 
                   ∣ 
                  
                 
                   s 
                  
                 
                   , 
                  
                  
                  
                    θ 
                   
                  
                    t 
                   
                  
                 
                   ) 
                  
                 
                   b 
                  
                 
                   ( 
                  
                 
                   s 
                  
                 
                   ) 
                  
                 
                
               
              
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
            
              = 
             
             
             
               ∑ 
              
              
              
                s 
               
              
                ∈ 
               
              
                S 
               
              
             
            
              η 
             
            
              ( 
             
            
              s 
             
            
              ) 
             
            
              b 
             
            
              ( 
             
            
              s 
             
            
              ) 
             
             
             
               ∑ 
              
              
              
                a 
               
              
                ∈ 
               
              
                A 
               
              
             
             
             
               ∇ 
              
             
               θ 
              
             
            
              π 
             
            
              ( 
             
            
              a 
             
            
              ∣ 
             
            
              s 
             
            
              , 
             
             
             
               θ 
              
             
               t 
              
             
            
              ) 
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
            
              = 
             
             
             
               ∑ 
              
              
              
                s 
               
              
                ∈ 
               
              
                S 
               
              
             
            
              η 
             
            
              ( 
             
            
              s 
             
            
              ) 
             
            
              b 
             
            
              ( 
             
            
              s 
             
            
              ) 
             
             
             
               ∇ 
              
             
               θ 
              
             
             
             
               ∑ 
              
              
              
                a 
               
              
                ∈ 
               
              
                A 
               
              
             
            
              π 
             
            
              ( 
             
            
              a 
             
            
              ∣ 
             
            
              s 
             
            
              , 
             
             
             
               θ 
              
             
               t 
              
             
            
              ) 
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
             
              
               
                
                 
                 
                   = 
                  
                  
                  
                    ∑ 
                   
                   
                   
                     s 
                    
                   
                     ∈ 
                    
                   
                     S 
                    
                   
                  
                 
                   η 
                  
                 
                   ( 
                  
                 
                   s 
                  
                 
                   ) 
                  
                 
                   b 
                  
                 
                   ( 
                  
                 
                   s 
                  
                 
                   ) 
                  
                  
                  
                    ∇ 
                   
                  
                    θ 
                   
                  
                 
                   1 
                  
                 
                   = 
                  
                 
                   0 
                  
                 
                
               
              
             
            
           
          
         
        
       
         \begin{aligned} \mathbb{E}_{S\sim\eta,A\sim\pi}\left[\nabla_\theta\ln\pi(A|S,\theta_t)b(S)\right]& =\sum_{s\in\mathcal{S}}\eta(s)\sum_{a\in\mathcal{A}}\pi(a|s,\theta_t)\nabla_\theta\ln\pi(a|s,\theta_t)b(s) \\ &\begin{aligned}&=\sum_{s\in\mathcal{S}}\eta(s)\sum_{a\in\mathcal{A}}\nabla_\theta\pi(a|s,\theta_t)b(s)\end{aligned} \\ &=\sum_{s\in\mathcal{S}}\eta(s)b(s)\sum_{a\in\mathcal{A}}\nabla_\theta\pi(a|s,\theta_t) \\ &=\sum_{s\in\mathcal{S}}\eta(s)b(s)\nabla_\theta\sum_{a\in\mathcal{A}}\pi(a|s,\theta_t) \\ &\begin{aligned}=\sum_{s\in\mathcal{S}}\eta(s)b(s)\nabla_\theta1=0\end{aligned} \end{aligned} 
        
       
     ES∼η,A∼π[∇θlnπ(A∣S,θt)b(S)]=s∈S∑η(s)a∈A∑π(a∣s,θt)∇θlnπ(a∣s,θt)b(s)=s∈S∑η(s)a∈A∑∇θπ(a∣s,θt)b(s)=s∈S∑η(s)b(s)a∈A∑∇θπ(a∣s,θt)=s∈S∑η(s)b(s)∇θa∈A∑π(a∣s,θt)=s∈S∑η(s)b(s)∇θ1=0
 因此,在添加 baseline 后,对 policy 的期望没有影响。
有用性证明:
设梯度为  
     
      
       
        
        
          ∇ 
         
        
          θ 
         
        
       
         J 
        
       
         ( 
        
       
         θ 
        
       
         ) 
        
       
         = 
        
       
         E 
        
       
         [ 
        
       
         X 
        
       
         ] 
        
       
      
        \nabla_\theta J(\theta)=\mathbb{E}[X] 
       
      
    ∇θJ(θ)=E[X],其中:
  
      
       
        
        
          X 
         
        
          ( 
         
        
          S 
         
        
          , 
         
        
          A 
         
        
          ) 
         
        
          ≐ 
         
         
         
           ∇ 
          
         
           θ 
          
         
        
          ln 
         
        
           
         
        
          π 
         
        
          ( 
         
        
          A 
         
        
          ∣ 
         
        
          S 
         
        
          , 
         
         
         
           θ 
          
         
           t 
          
         
        
          ) 
         
        
          [ 
         
         
         
           q 
          
         
           π 
          
         
        
          ( 
         
        
          S 
         
        
          , 
         
        
          A 
         
        
          ) 
         
        
          − 
         
        
          b 
         
        
          ( 
         
        
          S 
         
        
          ) 
         
        
          ] 
         
        
       
         X(S,A)\doteq\nabla_\theta\ln\pi(A|S,\theta_t)[q_\pi(S,A)-b(S)] 
        
       
     X(S,A)≐∇θlnπ(A∣S,θt)[qπ(S,A)−b(S)]
 可得:
E [ X ] \mathbb{E}[X] E[X] 对于 b ( S ) b(S) b(S)是不变的。
var ( X ) \text{var}(X) var(X) 对于 b ( S ) b(S) b(S) 来说是变化的。
因为  
     
      
       
       
         tr 
        
       
          
        
       
         [ 
        
       
         var 
        
       
          
        
       
         ( 
        
       
         X 
        
       
         ) 
        
       
         ] 
        
       
         = 
        
       
         E 
        
       
         [ 
        
        
        
          X 
         
        
          T 
         
        
       
         X 
        
       
         ] 
        
       
         − 
        
        
         
         
           x 
          
         
           ˉ 
          
         
        
          T 
         
        
        
        
          x 
         
        
          ˉ 
         
        
       
      
        \operatorname{tr}[\operatorname{var}(X)]=\mathbb{E}[X^TX]-\bar{x}^T\bar{x} 
       
      
    tr[var(X)]=E[XTX]−xˉTxˉ,且
  
      
       
        
         
          
           
            
            
              E 
             
            
              [ 
             
             
             
               X 
              
             
               T 
              
             
            
              X 
             
            
              ] 
             
            
              = 
             
            
              E 
             
             
             
               [ 
              
             
               ( 
              
              
              
                ∇ 
               
              
                θ 
               
              
             
               ln 
              
             
                
              
             
               π 
              
              
              
                ) 
               
              
                T 
               
              
             
               ( 
              
              
              
                ∇ 
               
              
                θ 
               
              
             
               ln 
              
             
                
              
             
               π 
              
             
               ) 
              
             
               ( 
              
              
              
                q 
               
              
                π 
               
              
             
               ( 
              
             
               S 
              
             
               , 
              
             
               A 
              
             
               ) 
              
             
               − 
              
             
               b 
              
             
               ( 
              
             
               S 
              
             
               ) 
              
              
              
                ) 
               
              
                2 
               
              
             
               ] 
              
             
            
           
          
         
         
          
           
            
            
              = 
             
            
              E 
             
             
             
               [ 
              
             
               ∥ 
              
              
              
                ∇ 
               
              
                θ 
               
              
             
               ln 
              
             
                
              
             
               π 
              
              
              
                ∥ 
               
              
                2 
               
              
             
               ( 
              
              
              
                q 
               
              
                π 
               
              
             
               ( 
              
             
               S 
              
             
               , 
              
             
               A 
              
             
               ) 
              
             
               − 
              
             
               b 
              
             
               ( 
              
             
               S 
              
             
               ) 
              
              
              
                ) 
               
              
                2 
               
              
             
               ] 
              
             
            
           
          
         
        
       
         \begin{gathered} \mathbb{E}[X^TX] =\mathbb{E}\left[(\nabla_\theta\ln\pi)^T(\nabla_\theta\ln\pi)(q_\pi(S,A)-b(S))^2\right] \\ =\mathbb{E}\left[\|\nabla_\theta\ln\pi\|^2(q_\pi(S,A)-b(S))^2\right] \end{gathered} 
        
       
     E[XTX]=E[(∇θlnπ)T(∇θlnπ)(qπ(S,A)−b(S))2]=E[∥∇θlnπ∥2(qπ(S,A)−b(S))2]
 因此,目标为选择最佳 baseline  
     
      
       
       
         b 
        
       
      
        b 
       
      
    b 以最小化  
     
      
       
       
         var 
        
       
         ( 
        
       
         X 
        
       
         ) 
        
       
      
        \text{var}(X) 
       
      
    var(X)。
这样做的优势是:当使用随机样本来近似 E [ X ] \mathbb{E}[X] E[X] 时,估计方差也会很小。
可以最小化 
     
      
       
       
         var 
        
       
         ( 
        
       
         X 
        
       
         ) 
        
       
      
        \text{var}(X) 
       
      
    var(X) 的最佳基线是,对于任何  
     
      
       
       
         s 
        
       
         ∈ 
        
       
         S 
        
       
      
        s \in S 
       
      
    s∈S:
  
      
       
        
         
         
           b 
          
         
           ∗ 
          
         
        
          ( 
         
        
          s 
         
        
          ) 
         
        
          = 
         
         
          
           
           
             E 
            
            
            
              A 
             
            
              ∼ 
             
            
              π 
             
            
           
          
            [ 
           
          
            ∥ 
           
           
           
             ∇ 
            
           
             θ 
            
           
          
            ln 
           
          
             
           
          
            π 
           
          
            ( 
           
          
            A 
           
          
            ∣ 
           
          
            s 
           
          
            , 
           
           
           
             θ 
            
           
             t 
            
           
          
            ) 
           
           
           
             ∥ 
            
           
             2 
            
           
           
           
             q 
            
           
             π 
            
           
          
            ( 
           
          
            s 
           
          
            , 
           
          
            A 
           
          
            ) 
           
          
            ] 
           
          
          
           
           
             E 
            
            
            
              A 
             
            
              ∼ 
             
            
              π 
             
            
           
          
            [ 
           
          
            ∥ 
           
           
           
             ∇ 
            
           
             θ 
            
           
          
            ln 
           
          
             
           
          
            π 
           
          
            ( 
           
          
            A 
           
          
            ∣ 
           
          
            s 
           
          
            , 
           
           
           
             θ 
            
           
             t 
            
           
          
            ) 
           
           
           
             ∥ 
            
           
             2 
            
           
          
            ] 
           
          
         
        
          . 
         
        
       
         b^*(s)=\frac{\mathbb{E}_{A\sim\pi}[\|\nabla_\theta\ln\pi(A|s,\theta_t)\|^2q_\pi(s,A)]}{\mathbb{E}_{A\sim\pi}[\|\nabla_\theta\ln\pi(A|s,\theta_t)\|^2]}. 
        
       
     b∗(s)=EA∼π[∥∇θlnπ(A∣s,θt)∥2]EA∼π[∥∇θlnπ(A∣s,θt)∥2qπ(s,A)].
 尽管这个 baseline 是最佳的,但它很复杂。
可以删除权重  
     
      
       
       
         ∥ 
        
        
        
          ∇ 
         
        
          θ 
         
        
       
         ln 
        
       
          
        
       
         π 
        
       
         ( 
        
       
         A 
        
       
         ∣ 
        
       
         s 
        
       
         , 
        
        
        
          θ 
         
        
          t 
         
        
       
         ) 
        
        
        
          ∥ 
         
        
          2 
         
        
       
      
        \|\nabla_\theta\ln\pi(A|s,\theta_t)\|^2 
       
      
    ∥∇θlnπ(A∣s,θt)∥2 并选择次优 baseline:
  
      
       
        
        
          b 
         
        
          ( 
         
        
          s 
         
        
          ) 
         
        
          = 
         
         
         
           E 
          
          
          
            A 
           
          
            ∼ 
           
          
            π 
           
          
         
        
          [ 
         
         
         
           q 
          
         
           π 
          
         
        
          ( 
         
        
          s 
         
        
          , 
         
        
          A 
         
        
          ) 
         
        
          ] 
         
        
          = 
         
         
         
           v 
          
         
           π 
          
         
        
          ( 
         
        
          s 
         
        
          ) 
         
        
       
         b(s)=\mathbb{E}_{A\sim\pi}[q_\pi(s,A)]=v_\pi(s) 
        
       
     b(s)=EA∼π[qπ(s,A)]=vπ(s)
 这是 s 的 state value。
The algorithm of advantage actor-critic
当 b ( s ) = v π ( s ) b(s)=v_\pi(s) b(s)=vπ(s) 时,
梯度上升算法是:
  
      
       
        
         
          
           
            
            
              θ 
             
             
             
               t 
              
             
               + 
              
             
               1 
              
             
            
           
          
          
           
            
             
            
              = 
             
             
             
               θ 
              
             
               t 
              
             
            
              + 
             
            
              α 
             
            
              E 
             
            
              [ 
             
             
             
               ∇ 
              
             
               θ 
              
             
            
              ln 
             
            
               
             
            
              π 
             
            
              ( 
             
            
              A 
             
            
              ∣ 
             
            
              S 
             
            
              , 
             
             
             
               θ 
              
             
               t 
              
             
            
              ) 
             
            
              [ 
             
             
             
               q 
              
             
               π 
              
             
            
              ( 
             
            
              S 
             
            
              , 
             
            
              A 
             
            
              ) 
             
            
              − 
             
             
             
               v 
              
             
               π 
              
             
            
              ( 
             
            
              S 
             
            
              ) 
             
            
              ] 
             
            
              ] 
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
             
             
               = 
              
             
               ˙ 
              
             
             
             
               θ 
              
             
               t 
              
             
            
              + 
             
            
              α 
             
            
              E 
             
            
              [ 
             
             
             
               ∇ 
              
             
               θ 
              
             
            
              ln 
             
            
               
             
            
              π 
             
            
              ( 
             
            
              A 
             
            
              ∣ 
             
            
              S 
             
            
              , 
             
             
             
               θ 
              
             
               t 
              
             
            
              ) 
             
             
              
              
                δ 
               
              
                π 
               
              
             
               ( 
              
             
               S 
              
             
               , 
              
             
               A 
              
             
               ) 
              
             
            
              ] 
             
            
           
          
         
        
       
         \begin{aligned} \theta_{t+1}& =\theta_t+\alpha\mathbb{E}\Big[\nabla_\theta\ln\pi(A|S,\theta_t)[q_\pi(S,A)-v_\pi(S)]\Big] \\ &\dot{=}\theta_t+\alpha\mathbb{E}\Big[\nabla_\theta\ln\pi(A|S,\theta_t){\delta_\pi(S,A)}\Big] \end{aligned} 
        
       
     θt+1=θt+αE[∇θlnπ(A∣S,θt)[qπ(S,A)−vπ(S)]]=˙θt+αE[∇θlnπ(A∣S,θt)δπ(S,A)]
 其中:
  
      
       
        
         
         
           δ 
          
         
           π 
          
         
        
          ( 
         
        
          S 
         
        
          , 
         
        
          A 
         
        
          ) 
         
        
          ≐ 
         
         
         
           q 
          
         
           π 
          
         
        
          ( 
         
        
          S 
         
        
          , 
         
        
          A 
         
        
          ) 
         
        
          − 
         
         
         
           v 
          
         
           π 
          
         
        
          ( 
         
        
          S 
         
        
          ) 
         
        
       
         \delta_\pi(S,A)\doteq q_\pi(S,A)-v_\pi(S) 
        
       
     δπ(S,A)≐qπ(S,A)−vπ(S)
 该算法的随机版本是:
  
      
       
        
         
          
           
            
            
              θ 
             
             
             
               t 
              
             
               + 
              
             
               1 
              
             
            
           
          
          
           
            
             
             
              
               
                
                 
                 
                   = 
                  
                  
                  
                    θ 
                   
                  
                    t 
                   
                  
                 
                   + 
                  
                 
                   α 
                  
                  
                  
                    ∇ 
                   
                  
                    θ 
                   
                  
                 
                   ln 
                  
                 
                    
                  
                 
                   π 
                  
                 
                   ( 
                  
                  
                  
                    a 
                   
                  
                    t 
                   
                  
                 
                   ∣ 
                  
                  
                  
                    s 
                   
                  
                    t 
                   
                  
                 
                   , 
                  
                  
                  
                    θ 
                   
                  
                    t 
                   
                  
                 
                   ) 
                  
                 
                   [ 
                  
                  
                  
                    q 
                   
                  
                    t 
                   
                  
                 
                   ( 
                  
                  
                  
                    s 
                   
                  
                    t 
                   
                  
                 
                   , 
                  
                  
                  
                    a 
                   
                  
                    t 
                   
                  
                 
                   ) 
                  
                 
                   − 
                  
                  
                  
                    v 
                   
                  
                    t 
                   
                  
                 
                   ( 
                  
                  
                  
                    s 
                   
                  
                    t 
                   
                  
                 
                   ) 
                  
                 
                   ] 
                  
                 
                
               
              
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
            
              = 
             
             
             
               θ 
              
             
               t 
              
             
            
              + 
             
            
              α 
             
             
             
               ∇ 
              
             
               θ 
              
             
            
              ln 
             
            
               
             
            
              π 
             
            
              ( 
             
             
             
               a 
              
             
               t 
              
             
            
              ∣ 
             
             
             
               s 
              
             
               t 
              
             
            
              , 
             
             
             
               θ 
              
             
               t 
              
             
            
              ) 
             
             
             
               δ 
              
             
               t 
              
             
            
              ( 
             
             
             
               s 
              
             
               t 
              
             
            
              , 
             
             
             
               a 
              
             
               t 
              
             
            
              ) 
             
            
           
          
         
        
       
         \begin{aligned} \theta_{\boldsymbol{t}+1}& \begin{aligned}=\theta_t+\alpha\nabla_\theta\ln\pi(a_t|s_t,\theta_t)[q_t(s_t,a_t)-v_t(s_t)]\end{aligned} \\ &=\theta_t+\alpha\nabla_\theta\ln\pi(a_t|s_t,\theta_t)\delta_t(s_t,a_t) \end{aligned} 
        
       
     θt+1=θt+α∇θlnπ(at∣st,θt)[qt(st,at)−vt(st)]=θt+α∇θlnπ(at∣st,θt)δt(st,at)
 此外,该算法可以重新表示为:
  
      
       
        
         
          
           
            
            
              θ 
             
             
             
               t 
              
             
               + 
              
             
               1 
              
             
            
           
          
          
           
            
             
            
              = 
             
             
             
               θ 
              
             
               t 
              
             
            
              + 
             
            
              α 
             
             
             
               ∇ 
              
             
               θ 
              
             
            
              ln 
             
            
               
             
            
              π 
             
            
              ( 
             
             
             
               a 
              
             
               t 
              
             
            
              ∣ 
             
             
             
               s 
              
             
               t 
              
             
            
              , 
             
             
             
               θ 
              
             
               t 
              
             
            
              ) 
             
             
             
               δ 
              
             
               t 
              
             
            
              ( 
             
             
             
               s 
              
             
               t 
              
             
            
              , 
             
             
             
               a 
              
             
               t 
              
             
            
              ) 
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
            
              = 
             
             
             
               θ 
              
             
               t 
              
             
            
              + 
             
            
              α 
             
             
              
               
               
                 ∇ 
                
               
                 θ 
                
               
              
                π 
               
              
                ( 
               
               
               
                 a 
                
               
                 t 
                
               
              
                ∣ 
               
               
               
                 s 
                
               
                 t 
                
               
              
                , 
               
               
               
                 θ 
                
               
                 t 
                
               
              
                ) 
               
              
              
              
                π 
               
              
                ( 
               
               
               
                 a 
                
               
                 t 
                
               
              
                ∣ 
               
               
               
                 s 
                
               
                 t 
                
               
              
                , 
               
               
               
                 θ 
                
               
                 t 
                
               
              
                ) 
               
              
             
             
             
               δ 
              
             
               t 
              
             
            
              ( 
             
             
             
               s 
              
             
               t 
              
             
            
              , 
             
             
             
               a 
              
             
               t 
              
             
            
              ) 
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
            
              = 
             
             
             
               θ 
              
             
               t 
              
             
            
              + 
             
            
              α 
             
             
              
               
               
                 ( 
                
                
                 
                  
                  
                    δ 
                   
                  
                    t 
                   
                  
                 
                   ( 
                  
                  
                  
                    s 
                   
                  
                    t 
                   
                  
                 
                   , 
                  
                  
                  
                    a 
                   
                  
                    t 
                   
                  
                 
                   ) 
                  
                 
                 
                 
                   π 
                  
                 
                   ( 
                  
                  
                  
                    a 
                   
                  
                    t 
                   
                  
                 
                   ∣ 
                  
                  
                  
                    s 
                   
                  
                    t 
                   
                  
                 
                   , 
                  
                  
                  
                    θ 
                   
                  
                    t 
                   
                  
                 
                   ) 
                  
                 
                
               
                 ) 
                
               
              
                ⏟ 
               
              
              
              
                step 
               
              
                  
               
              
                size 
               
              
             
             
             
               ∇ 
              
             
               θ 
              
             
            
              π 
             
            
              ( 
             
             
             
               a 
              
             
               t 
              
             
            
              ∣ 
             
             
             
               s 
              
             
               t 
              
             
            
              , 
             
             
             
               θ 
              
             
               t 
              
             
            
              ) 
             
            
           
          
         
        
       
         \begin{aligned} \theta_{t+1}& =\theta_t+\alpha\nabla_\theta\ln\pi(a_t|s_t,\theta_t)\delta_t(s_t,a_t) \\ &=\theta_t+\alpha\frac{\nabla_\theta\pi(a_t|s_t,\theta_t)}{\pi(a_t|s_t,\theta_t)}\delta_t(s_t,a_t) \\ &=\theta_t+\alpha\underbrace{\left(\frac{{\delta_t(s_t,a_t)}}{\pi(a_t|s_t,\theta_t)}\right)}_{\textbf{step size}}\nabla_\theta\pi(a_t|s_t,\theta_t) \end{aligned} 
        
       
     θt+1=θt+α∇θlnπ(at∣st,θt)δt(st,at)=θt+απ(at∣st,θt)∇θπ(at∣st,θt)δt(st,at)=θt+αstep size 
                           
                           
                          (π(at∣st,θt)δt(st,at))∇θπ(at∣st,θt)
 步长与相对值  
     
      
       
        
        
          δ 
         
        
          t 
         
        
       
      
        \delta_t 
       
      
    δt 成正比,而不是与绝对值  
     
      
       
        
        
          q 
         
        
          t 
         
        
       
      
        q_t 
       
      
    qt 成正比,更合理。
它仍然可以很好地平衡探索和开发。
此外,优势函数由 TD error 近似:
  
      
       
        
         
         
           δ 
          
         
           t 
          
         
        
          = 
         
         
         
           q 
          
         
           t 
          
         
        
          ( 
         
         
         
           s 
          
         
           t 
          
         
        
          , 
         
         
         
           a 
          
         
           t 
          
         
        
          ) 
         
        
          − 
         
         
         
           v 
          
         
           t 
          
         
        
          ( 
         
         
         
           s 
          
         
           t 
          
         
        
          ) 
         
        
          → 
         
         
         
           r 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          + 
         
        
          γ 
         
         
         
           v 
          
         
           t 
          
         
        
          ( 
         
         
         
           s 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          ) 
         
        
          − 
         
         
         
           v 
          
         
           t 
          
         
        
          ( 
         
         
         
           s 
          
         
           t 
          
         
        
          ) 
         
        
       
         \delta_t=q_t(s_t,a_t)-v_t(s_t)\rightarrow r_{t+1}+\gamma v_t(s_{t+1})-v_t(s_t) 
        
       
     δt=qt(st,at)−vt(st)→rt+1+γvt(st+1)−vt(st)
 这个近似是合理的,因为:
  
      
       
        
        
          E 
         
        
          [ 
         
         
         
           q 
          
         
           π 
          
         
        
          ( 
         
        
          S 
         
        
          , 
         
        
          A 
         
        
          ) 
         
        
          − 
         
         
         
           v 
          
         
           π 
          
         
        
          ( 
         
        
          S 
         
        
          ) 
         
        
          ∣ 
         
        
          S 
         
        
          = 
         
         
         
           s 
          
         
           t 
          
         
        
          , 
         
        
          A 
         
        
          = 
         
         
         
           a 
          
         
           t 
          
         
        
          ] 
         
        
          = 
         
        
          E 
         
        
          [ 
         
        
          R 
         
        
          + 
         
        
          γ 
         
         
         
           v 
          
         
           π 
          
         
        
          ( 
         
         
         
           S 
          
         
           ′ 
          
         
        
          ) 
         
        
          − 
         
         
         
           v 
          
         
           π 
          
         
        
          ( 
         
        
          S 
         
        
          ) 
         
        
          ∣ 
         
        
          S 
         
        
          = 
         
         
         
           s 
          
         
           t 
          
         
        
          , 
         
        
          A 
         
        
          = 
         
         
         
           a 
          
         
           t 
          
         
        
          ] 
         
        
       
         \mathbb{E}[q_\pi(S,A)-v_\pi(S)|S=s_t,A=a_t]=\mathbb{E}\Big[R+\gamma v_\pi(S')-v_\pi(S)|S=s_t,A=a_t\Big] 
        
       
     E[qπ(S,A)−vπ(S)∣S=st,A=at]=E[R+γvπ(S′)−vπ(S)∣S=st,A=at]
 好处:只需要一个网络来近似  
     
      
       
        
        
          v 
         
        
          π 
         
        
       
         ( 
        
       
         s 
        
       
         ) 
        
       
      
        v_{\pi}(s) 
       
      
    vπ(s),而不需要两个网络来近似  
     
      
       
        
        
          q 
         
        
          π 
         
        
       
         ( 
        
       
         s 
        
       
         , 
        
       
         a 
        
       
         ) 
        
       
      
        q_{\pi}(s, a) 
       
      
    qπ(s,a) 和  
     
      
       
        
        
          v 
         
        
          π 
         
        
       
         ( 
        
       
         s 
        
       
         ) 
        
       
      
        v_{\pi}(s) 
       
      
    vπ(s)。

这是on-policy的。 由于策略 π ( θ t ) \pi(\theta_t) π(θt) 是随机的,因此无需使用 ε \varepsilon ε-greedy等技术。
Off-policy actor-critic
Illustrative examples
考虑一个随机变量 X ∈ X = { + 1 , − 1 } X \in \mathcal{X} = \{+1, −1\} X∈X={+1,−1}。
如果  
     
      
       
       
         X 
        
       
      
        X 
       
      
    X 的概率分布为  
     
      
       
        
        
          p 
         
        
          0 
         
        
       
      
        p_0 
       
      
    p0:
  
      
       
        
         
         
           p 
          
         
           0 
          
         
        
          ( 
         
        
          X 
         
        
          = 
         
        
          + 
         
        
          1 
         
        
          ) 
         
        
          = 
         
        
          0.5 
         
        
          , 
         
         
         
         
           p 
          
         
           0 
          
         
        
          ( 
         
        
          X 
         
        
          = 
         
        
          − 
         
        
          1 
         
        
          ) 
         
        
          = 
         
        
          0.5 
         
        
       
         p_0(X=+1)=0.5,\quad p_0(X=-1)=0.5 
        
       
     p0(X=+1)=0.5,p0(X=−1)=0.5
 那么 
     
      
       
       
         X 
        
       
      
        X 
       
      
    X的期望是:
  
      
       
        
         
         
           E 
          
          
          
            X 
           
          
            ∼ 
           
           
           
             p 
            
           
             0 
            
           
          
         
        
          [ 
         
        
          X 
         
        
          ] 
         
        
          = 
         
        
          ( 
         
        
          + 
         
        
          1 
         
        
          ) 
         
        
          ⋅ 
         
        
          0.5 
         
        
          + 
         
        
          ( 
         
        
          − 
         
        
          1 
         
        
          ) 
         
        
          ⋅ 
         
        
          0.5 
         
        
          = 
         
        
          0. 
         
        
       
         \mathbb{E}_{X\sim p_0}[X]=(+1)\cdot0.5+(-1)\cdot0.5=0. 
        
       
     EX∼p0[X]=(+1)⋅0.5+(−1)⋅0.5=0.
 使用样本 
     
      
       
       
         { 
        
        
        
          x 
         
        
          i 
         
        
       
         } 
        
       
      
        \{x_i\} 
       
      
    {xi}估计 
     
      
       
       
         E 
        
       
         [ 
        
       
         X 
        
       
         ] 
        
       
      
        \mathbb{E}[X] 
       
      
    E[X]:
Case 1:
根据  
     
      
       
        
        
          p 
         
        
          0 
         
        
       
      
        p_0 
       
      
    p0 生成样本  
     
      
       
       
         { 
        
        
        
          x 
         
        
          i 
         
        
       
         } 
        
       
      
        \{x_i\} 
       
      
    {xi}:
  
      
       
        
        
          E 
         
        
          [ 
         
         
         
           x 
          
         
           i 
          
         
        
          ] 
         
        
          = 
         
        
          E 
         
        
          [ 
         
        
          X 
         
        
          ] 
         
        
          , 
         
         
        
          var 
         
        
          [ 
         
         
         
           x 
          
         
           i 
          
         
        
          ] 
         
        
          = 
         
        
          var 
         
        
          [ 
         
        
          X 
         
        
          ] 
         
        
       
         \mathbb{E}[x_i]=\mathbb{E}[X],\quad\text{var}[x_i]=\text{var}[X] 
        
       
     E[xi]=E[X],var[xi]=var[X]
 然后,平均值可以收敛到期望值:
  
      
       
        
         
         
           x 
          
         
           ˉ 
          
         
        
          = 
         
         
         
           1 
          
         
           n 
          
         
         
         
           ∑ 
          
          
          
            i 
           
          
            = 
           
          
            1 
           
          
         
           n 
          
         
         
         
           x 
          
         
           i 
          
         
        
          → 
         
        
          E 
         
        
          [ 
         
        
          X 
         
        
          ] 
         
        
          , 
         
         
        
          as  
         
        
          n 
         
        
          → 
         
        
          ∞ 
         
        
       
         \bar{x}=\frac1n\sum_{i=1}^nx_i\to\mathbb{E}[X],\quad\text{as }n\to\infty 
        
       
     xˉ=n1i=1∑nxi→E[X],as n→∞
 因为:
  
      
       
        
        
          E 
         
        
          [ 
         
         
         
           x 
          
         
           ˉ 
          
         
        
          ] 
         
        
          = 
         
        
          E 
         
        
          [ 
         
        
          X 
         
        
          ] 
         
        
          , 
         
         
         
         
           v 
          
         
           a 
          
         
           r 
          
         
        
          [ 
         
         
         
           x 
          
         
           ˉ 
          
         
        
          ] 
         
        
          = 
         
         
         
           1 
          
         
           n 
          
         
         
         
           v 
          
         
           a 
          
         
           r 
          
         
        
          [ 
         
        
          X 
         
        
          ] 
         
        
       
         \mathbb{E}[\bar{x}]=\mathbb{E}[X],\quad\mathrm{var}[\bar{x}]=\frac1n\mathrm{var}[X] 
        
       
     E[xˉ]=E[X],var[xˉ]=n1var[X]
 Case 2:
样本  
     
      
       
       
         { 
        
        
        
          x 
         
        
          i 
         
        
       
         } 
        
       
      
        \{x_i\} 
       
      
    {xi} 是根据另一个分布  
     
      
       
        
        
          p 
         
        
          1 
         
        
       
      
        p_1 
       
      
    p1 生成的:
  
      
       
        
         
         
           p 
          
         
           1 
          
         
        
          ( 
         
        
          X 
         
        
          = 
         
        
          + 
         
        
          1 
         
        
          ) 
         
        
          = 
         
        
          0.8 
         
        
          , 
         
         
         
         
           p 
          
         
           1 
          
         
        
          ( 
         
        
          X 
         
        
          = 
         
        
          − 
         
        
          1 
         
        
          ) 
         
        
          = 
         
        
          0.2 
         
        
       
         p_1(X=+1)=0.8,\quad p_1(X=-1)=0.2 
        
       
     p1(X=+1)=0.8,p1(X=−1)=0.2
 期望是:
  
      
       
        
         
         
           E 
          
          
          
            X 
           
          
            ∼ 
           
           
           
             p 
            
           
             1 
            
           
          
         
        
          [ 
         
        
          X 
         
        
          ] 
         
        
          = 
         
        
          ( 
         
        
          + 
         
        
          1 
         
        
          ) 
         
        
          ⋅ 
         
        
          0.8 
         
        
          + 
         
        
          ( 
         
        
          − 
         
        
          1 
         
        
          ) 
         
        
          ⋅ 
         
        
          0.2 
         
        
          = 
         
        
          0.6 
         
        
       
         \mathbb{E}_{X\sim p_1}[X]=(+1)\cdot0.8+(-1)\cdot0.2=0.6 
        
       
     EX∼p1[X]=(+1)⋅0.8+(−1)⋅0.2=0.6
 如果使用样本的平均值,那么;
  
      
       
        
         
         
           x 
          
         
           ˉ 
          
         
        
          = 
         
         
         
           1 
          
         
           n 
          
         
         
         
           ∑ 
          
          
          
            i 
           
          
            = 
           
          
            1 
           
          
         
           n 
          
         
         
         
           x 
          
         
           i 
          
         
        
          → 
         
         
         
           E 
          
          
          
            X 
           
          
            ∼ 
           
           
           
             p 
            
           
             1 
            
           
          
         
        
          [ 
         
        
          X 
         
        
          ] 
         
        
          = 
         
        
          0.6 
         
        
          ≠ 
         
         
         
           E 
          
          
          
            X 
           
          
            ∼ 
           
           
           
             p 
            
           
             0 
            
           
          
         
        
          [ 
         
        
          X 
         
        
          ] 
         
        
       
         \bar{x}=\frac{1}{n}\sum_{i=1}^{n}x_{i}\rightarrow\mathbb{E}_{X\sim p_{1}}[X]=0.6\neq\mathbb{E}_{X\sim p_{0}}[X] 
        
       
     xˉ=n1i=1∑nxi→EX∼p1[X]=0.6=EX∼p0[X]
 使用  
     
      
       
       
         { 
        
        
        
          x 
         
        
          i 
         
        
       
         } 
        
       
         ∼ 
        
        
        
          p 
         
        
          1 
         
        
       
      
        \{x_i\} \sim p_1 
       
      
    {xi}∼p1 来估计  
     
      
       
        
        
          E 
         
         
         
           X 
          
         
           ∼ 
          
          
          
            p 
           
          
            0 
           
          
         
        
       
         [ 
        
       
         X 
        
       
         ] 
        
       
      
        \mathbb{E}_{X\sim p_0}[X] 
       
      
    EX∼p0[X] :
估计 E A ∼ π [ ∗ ] \mathbb{E}_{A\sim \pi}[*] EA∼π[∗],其中 π \pi π 是基于行为policy(behavior policy) β \beta β 样本的目标policy(target policy)。
可以通过使用重要性采样(importance sampling)技术来实现这一点。

Importance sampling
因为:
  
      
       
        
         
          
          
            E 
           
           
           
             X 
            
           
             ∼ 
            
            
            
              p 
             
            
              0 
             
            
           
          
         
           [ 
          
         
           X 
          
         
           ] 
          
         
        
          = 
         
         
         
           ∑ 
          
         
           x 
          
         
         
         
           p 
          
         
           0 
          
         
        
          ( 
         
        
          x 
         
        
          ) 
         
        
          x 
         
        
          = 
         
         
         
           ∑ 
          
         
           x 
          
         
         
         
           p 
          
         
           1 
          
         
        
          ( 
         
        
          x 
         
        
          ) 
         
         
          
           
            
             
              
              
                p 
               
              
                0 
               
              
             
               ( 
              
             
               x 
              
             
               ) 
              
             
             
              
              
                p 
               
              
                1 
               
              
             
               ( 
              
             
               x 
              
             
               ) 
              
             
            
           
             x 
            
           
          
            ⏟ 
           
          
          
          
            f 
           
          
            ( 
           
          
            x 
           
          
            ) 
           
          
         
        
          = 
         
         
          
          
            E 
           
           
           
             X 
            
           
             ∼ 
            
            
            
              p 
             
            
              1 
             
            
           
          
         
           [ 
          
         
           f 
          
         
           ( 
          
         
           X 
          
         
           ) 
          
         
           ] 
          
         
        
       
         {\mathbb{E}_{X\sim p_0}[X]}=\sum_xp_0(x)x=\sum_xp_1(x)\underbrace{\frac{p_0(x)}{p_1(x)}x}_{f(x)}={\mathbb{E}_{X\sim p_1}[f(X)]} 
        
       
     EX∼p0[X]=x∑p0(x)x=x∑p1(x)f(x) 
                   
                   
                  p1(x)p0(x)x=EX∼p1[f(X)]
 因此,我们可以估计  
     
      
       
        
        
          E 
         
         
         
           X 
          
         
           ∼ 
          
          
          
            p 
           
          
            1 
           
          
         
        
       
         [ 
        
       
         f 
        
       
         ( 
        
       
         X 
        
       
         ) 
        
       
         ] 
        
       
      
        \mathbb{E}_{X\sim p_1}[f(X)] 
       
      
    EX∼p1[f(X)] 来估计  
     
      
       
        
        
          E 
         
         
         
           X 
          
         
           ∼ 
          
          
          
            p 
           
          
            0 
           
          
         
        
       
         [ 
        
       
         X 
        
       
         ] 
        
       
      
        \mathbb{E}_{X\sim p_0}[X] 
       
      
    EX∼p0[X]。
使,
  
      
       
        
         
         
           f 
          
         
           ˉ 
          
         
        
          ≐ 
         
         
         
           1 
          
         
           n 
          
         
         
         
           ∑ 
          
          
          
            i 
           
          
            = 
           
          
            1 
           
          
         
           n 
          
         
        
          f 
         
        
          ( 
         
         
         
           x 
          
         
           i 
          
         
        
          ) 
         
        
          , 
         
         
        
           where  
         
         
         
           x 
          
         
           i 
          
         
        
          ∼ 
         
         
         
           p 
          
         
           1 
          
         
        
       
         \bar{f}\doteq\frac1n\sum_{i=1}^nf(x_i),\quad\text{ where }x_i\sim p_1 
        
       
     fˉ≐n1i=1∑nf(xi), where xi∼p1
 那么:
  
      
       
        
         
          
           
            
             
             
               E 
              
              
              
                X 
               
              
                ∼ 
               
               
               
                 p 
                
               
                 1 
                
               
              
             
            
              [ 
             
             
             
               f 
              
             
               ˉ 
              
             
            
              ] 
             
            
              = 
             
             
             
               E 
              
              
              
                X 
               
              
                ∼ 
               
               
               
                 p 
                
               
                 1 
                
               
              
             
            
              [ 
             
            
              f 
             
            
              ( 
             
            
              X 
             
            
              ) 
             
            
              ] 
             
            
           
          
         
         
          
           
            
             
              
              
                var 
               
              
                 
               
              
              
              
                X 
               
               
               
                 ∼ 
                
                
                
                  p 
                 
                
                  1 
                 
                
               
              
             
            
              [ 
             
             
             
               f 
              
             
               ˉ 
              
             
            
              ] 
             
            
              = 
             
             
             
               1 
              
             
               n 
              
             
             
              
              
                v 
               
              
                a 
               
              
                r 
               
              
              
              
                X 
               
              
                ∼ 
               
               
               
                 p 
                
               
                 1 
                
               
              
             
            
              [ 
             
            
              f 
             
            
              ( 
             
            
              X 
             
            
              ) 
             
            
              ] 
             
            
           
          
         
        
       
         \begin{gathered} \mathbb{E}_{X\sim p_1}[\bar{f}] =\mathbb{E}_{X\sim p_1}[f(X)] \\ \operatorname{var}_{X\sim_{p_{1}}}[\bar{f}] =\frac1n\mathrm{var}_{X\thicksim p_1}[f(X)] \end{gathered} 
        
       
     EX∼p1[fˉ]=EX∼p1[f(X)]varX∼p1[fˉ]=n1varX∼p1[f(X)]
 因此,  
     
      
       
        
        
          f 
         
        
          ˉ 
         
        
       
      
        \bar{f} 
       
      
    fˉ 是  
     
      
       
        
        
          E 
         
         
         
           X 
          
         
           ∼ 
          
          
          
            p 
           
          
            1 
           
          
         
        
       
         [ 
        
       
         f 
        
       
         ( 
        
       
         X 
        
       
         ) 
        
       
         ] 
        
       
         = 
        
        
        
          E 
         
         
         
           X 
          
         
           ∼ 
          
          
          
            p 
           
          
            0 
           
          
         
        
       
         [ 
        
       
         X 
        
       
         ] 
        
       
      
        \mathbb{E}_{X\sim p_1}[f(X)] = \mathbb{E}_{X\sim p_0}[X] 
       
      
    EX∼p1[f(X)]=EX∼p0[X] 的良好近似:
  
      
       
        
         
          
          
            E 
           
           
           
             X 
            
           
             ∼ 
            
            
            
              p 
             
            
              0 
             
            
           
          
         
           [ 
          
         
           X 
          
         
           ] 
          
         
        
          ≈ 
         
         
         
           f 
          
         
           ‾ 
          
         
        
          = 
         
         
         
           1 
          
         
           n 
          
         
         
         
           ∑ 
          
          
          
            i 
           
          
            = 
           
          
            1 
           
          
         
           n 
          
         
        
          f 
         
        
          ( 
         
         
         
           x 
          
         
           i 
          
         
        
          ) 
         
         
         
           = 
          
          
          
            1 
           
          
            n 
           
          
          
          
            ∑ 
           
           
           
             i 
            
           
             = 
            
           
             1 
            
           
          
            n 
           
          
          
           
            
            
              p 
             
            
              0 
             
            
           
             ( 
            
            
            
              x 
             
            
              i 
             
            
           
             ) 
            
           
           
            
            
              p 
             
            
              1 
             
            
           
             ( 
            
            
            
              x 
             
            
              i 
             
            
           
             ) 
            
           
          
          
          
            x 
           
          
            i 
           
          
         
        
       
         {\mathbb{E}_{X\sim p_0}[X]}\approx\overline{f}=\frac1n\sum_{i=1}^nf(x_i){=\frac1n\sum_{i=1}^n\frac{p_0(x_i)}{p_1(x_i)}x_i} 
        
       
     EX∼p0[X]≈f=n1i=1∑nf(xi)=n1i=1∑np1(xi)p0(xi)xi
  
     
      
       
        
         
          
          
            p 
           
          
            0 
           
          
         
           ( 
          
          
          
            x 
           
          
            i 
           
          
         
           ) 
          
         
         
          
          
            p 
           
          
            1 
           
          
         
           ( 
          
          
          
            x 
           
          
            i 
           
          
         
           ) 
          
         
        
       
      
        \frac{p_0(x_i)}{p_1(x_i)} 
       
      
    p1(xi)p0(xi)被称为重要性分数(importance weight)。
如果 p 1 ( x i ) = p 0 ( x i ) p_1(x_i) = p_0(x_i) p1(xi)=p0(xi),则重要性权重为 1,而 f ˉ \bar{f} fˉ 变为 x ˉ \bar{x} xˉ。
如果 p 0 ( x i ) ≥ p 1 ( x i ) p_0(x_i) ≥ p_1(x_i) p0(xi)≥p1(xi),则 p 0 p_0 p0 比 p 1 p_1 p1 更频繁地对 x i x_i xi 进行采样。 重要性权重(>1)可以强调这个样本的重要性。
其适用于给定 x x x很容易计算 p 0 ( x ) p_0(x) p0(x),但计算期望却很困难的情况。
例如,连续情况、 p 0 p_0 p0 的复杂表达或 p 0 p_0 p0 不表达(例如, p 0 p_0 p0 由神经网络表示)。
总结:
如果 { x 1 } ∼ p 1 \{ x_1 \} \sim p_1 {x1}∼p1,
那么:
  
      
       
        
         
          
           
            
             
             
               x 
              
             
               ˉ 
              
             
            
              = 
             
             
             
               1 
              
             
               n 
              
             
             
             
               ∑ 
              
              
              
                i 
               
              
                = 
               
              
                1 
               
              
             
               n 
              
             
             
             
               x 
              
             
               i 
              
             
            
              → 
             
             
             
               E 
              
              
              
                X 
               
              
                ∼ 
               
               
               
                 p 
                
               
                 1 
                
               
              
             
            
              [ 
             
            
              X 
             
            
              ] 
             
            
           
          
         
         
          
           
            
             
              
               
                
                 
                 
                   f 
                  
                 
                   ˉ 
                  
                 
                
                  = 
                 
                 
                 
                   1 
                  
                 
                   n 
                  
                 
                 
                 
                   ∑ 
                  
                  
                  
                    i 
                   
                  
                    = 
                   
                  
                    1 
                   
                  
                 
                   n 
                  
                 
                 
                  
                   
                   
                     p 
                    
                   
                     0 
                    
                   
                  
                    ( 
                   
                   
                   
                     x 
                    
                   
                     i 
                    
                   
                  
                    ) 
                   
                  
                  
                   
                   
                     p 
                    
                   
                     1 
                    
                   
                  
                    ( 
                   
                   
                   
                     x 
                    
                   
                     i 
                    
                   
                  
                    ) 
                   
                  
                 
                 
                 
                   x 
                  
                 
                   i 
                  
                 
                
                  → 
                 
                 
                 
                   E 
                  
                  
                  
                    X 
                   
                  
                    ∼ 
                   
                   
                   
                     p 
                    
                   
                     0 
                    
                   
                  
                 
                
                  [ 
                 
                
                  X 
                 
                
                  ] 
                 
                
               
              
             
            
           
          
         
        
       
         \begin{gathered} \bar{x}=\frac{1}{n}\sum_{i=1}^{n}x_{i}\rightarrow\mathbb{E}_{X\sim p_{1}}[X] \\ \begin{aligned}\bar{f}=\frac{1}{n}\sum_{i=1}^{n}\frac{p_{0}(x_{i})}{p_{1}(x_{i})}x_{i}\to\mathbb{E}_{{X\sim p_{0}}}[X]\end{aligned} \end{gathered} 
        
       
     xˉ=n1i=1∑nxi→EX∼p1[X]fˉ=n1i=1∑np1(xi)p0(xi)xi→EX∼p0[X]

The theorem of off-policy policy gradient
与之前的 on-policy 情况一样,需要推导 off-policy 情况下的 policy 梯度。
假设 β \beta β 是生成经验样本的 behavior policy。
目标是使用这些样本来更新target policy  
     
      
       
       
         π 
        
       
      
        \pi 
       
      
    π,以最小化指标:
  
      
       
        
        
          J 
         
        
          ( 
         
        
          θ 
         
        
          ) 
         
        
          = 
         
         
         
           ∑ 
          
          
          
            s 
           
          
            ∈ 
           
          
            S 
           
          
         
         
         
           d 
          
         
           β 
          
         
        
          ( 
         
        
          s 
         
        
          ) 
         
         
         
           v 
          
         
           π 
          
         
        
          ( 
         
        
          s 
         
        
          ) 
         
        
          = 
         
         
         
           E 
          
          
          
            S 
           
          
            ∼ 
           
           
           
             d 
            
           
             β 
            
           
          
         
        
          [ 
         
         
         
           v 
          
         
           π 
          
         
        
          ( 
         
        
          S 
         
        
          ) 
         
        
          ] 
         
        
       
         J(\theta)=\sum_{s\in\mathcal{S}}d_\beta(s)v_\pi(s)=\mathbb{E}_{S\sim d_\beta}[v_\pi(S)] 
        
       
     J(θ)=s∈S∑dβ(s)vπ(s)=ES∼dβ[vπ(S)]
 其中  
     
      
       
        
        
          d 
         
        
          β 
         
        
       
      
        d_{\beta} 
       
      
    dβ 是policy  
     
      
       
       
         β 
        
       
      
        \beta 
       
      
    β 下的平稳分布。
Theorem (Off-policy policy gradient theorem):
在 discounted 情况下, γ ∈ ( 0 , 1 ) \gamma \in (0, 1) γ∈(0,1), J ( θ ) J(\theta) J(θ) 的梯度为:
∇ θ J ( θ ) = E S ∼ ρ , A ∼ β [ π ( A ∣ S , θ ) β ( A ∣ S ) ∇ θ ln  π ( A ∣ S , θ ) q π ( S , A ) ] \nabla_\theta J(\theta)=\mathbb{E}_{S\sim\rho,A\sim\beta}\left[\frac{\pi(A|S,\theta)}{\beta(A|S)}\nabla_\theta\ln\pi(A|S,\theta)q_\pi(S,A)\right] ∇θJ(θ)=ES∼ρ,A∼β[β(A∣S)π(A∣S,θ)∇θlnπ(A∣S,θ)qπ(S,A)]
其中 β \beta β 是behavior policy, ρ \rho ρ 是 state 分布。
The algorithm of off-policy actor-critic
off-policy 的 policy 梯度对于 baseline b ( s ) b(s) b(s) 也是不变的。
特别来说:
  
      
       
        
         
         
           ∇ 
          
         
           θ 
          
         
        
          J 
         
        
          ( 
         
        
          θ 
         
        
          ) 
         
        
          = 
         
         
         
           E 
          
          
          
            S 
           
          
            ∼ 
           
          
            ρ 
           
          
            , 
           
          
            A 
           
          
            ∼ 
           
          
            β 
           
          
         
         
         
           [ 
          
          
           
           
             π 
            
           
             ( 
            
           
             A 
            
           
             ∣ 
            
           
             S 
            
           
             , 
            
           
             θ 
            
           
             ) 
            
           
           
           
             β 
            
           
             ( 
            
           
             A 
            
           
             ∣ 
            
           
             S 
            
           
             ) 
            
           
          
          
          
            ∇ 
           
          
            θ 
           
          
         
           ln 
          
         
            
          
         
           π 
          
         
           ( 
          
         
           A 
          
         
           ∣ 
          
         
           S 
          
         
           , 
          
         
           θ 
          
         
           ) 
          
          
          
            ( 
           
           
           
             q 
            
           
             π 
            
           
          
            ( 
           
          
            S 
           
          
            , 
           
          
            A 
           
          
            ) 
           
          
            − 
           
           
           
             b 
            
           
             ( 
            
           
             S 
            
           
             ) 
            
           
          
            ) 
           
          
         
           ] 
          
         
        
       
         \nabla_\theta J(\theta)=\mathbb{E}_{S\sim\rho,A\sim\beta}\left[\frac{\pi(A|S,\theta)}{\beta(A|S)}\nabla_\theta\ln\pi(A|S,\theta)\left(q_\pi(S,A)-{b(S)}\right)\right] 
        
       
     ∇θJ(θ)=ES∼ρ,A∼β[β(A∣S)π(A∣S,θ)∇θlnπ(A∣S,θ)(qπ(S,A)−b(S))]
 为了减少估计方差,我们可以选择 baseline 为  
     
      
       
       
         b 
        
       
         ( 
        
       
         S 
        
       
         ) 
        
       
         = 
        
        
        
          v 
         
        
          π 
         
        
       
         ( 
        
       
         S 
        
       
         ) 
        
       
      
        b(S) = v_{\pi}(S) 
       
      
    b(S)=vπ(S) 并得到:
  
      
       
        
         
         
           ∇ 
          
         
           θ 
          
         
        
          J 
         
        
          ( 
         
        
          θ 
         
        
          ) 
         
        
          = 
         
        
          E 
         
         
         
           [ 
          
          
           
           
             π 
            
           
             ( 
            
           
             A 
            
           
             ∣ 
            
           
             S 
            
           
             , 
            
           
             θ 
            
           
             ) 
            
           
           
           
             β 
            
           
             ( 
            
           
             A 
            
           
             ∣ 
            
           
             S 
            
           
             ) 
            
           
          
          
          
            ∇ 
           
          
            θ 
           
          
         
           ln 
          
         
            
          
         
           π 
          
         
           ( 
          
         
           A 
          
         
           ∣ 
          
         
           S 
          
         
           , 
          
         
           θ 
          
         
           ) 
          
         
           ( 
          
          
          
            q 
           
          
            π 
           
          
         
           ( 
          
         
           S 
          
         
           , 
          
         
           A 
          
         
           ) 
          
         
           − 
          
          
           
           
             v 
            
           
             π 
            
           
          
            ( 
           
          
            S 
           
          
            ) 
           
          
         
           ) 
          
         
           ] 
          
         
        
       
         \nabla_\theta J(\theta)=\mathbb{E}\left[\frac{\pi(A|S,\theta)}{\beta(A|S)}\nabla_\theta\ln\pi(A|S,\theta)\big(q_\pi(S,A)-{v_\pi(S)}\big)\right] 
        
       
     ∇θJ(θ)=E[β(A∣S)π(A∣S,θ)∇θlnπ(A∣S,θ)(qπ(S,A)−vπ(S))]
 相应的随机梯度上升算法是:
  
      
       
        
         
         
           θ 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          = 
         
         
         
           θ 
          
         
           t 
          
         
        
          + 
         
         
         
           α 
          
         
           θ 
          
         
         
          
          
            π 
           
          
            ( 
           
           
           
             a 
            
           
             t 
            
           
          
            ∣ 
           
           
           
             s 
            
           
             t 
            
           
          
            , 
           
           
           
             θ 
            
           
             t 
            
           
          
            ) 
           
          
          
          
            β 
           
          
            ( 
           
           
           
             a 
            
           
             t 
            
           
          
            ∣ 
           
           
           
             s 
            
           
             t 
            
           
          
            ) 
           
          
         
         
         
           ∇ 
          
         
           θ 
          
         
        
          ln 
         
        
           
         
        
          π 
         
        
          ( 
         
         
         
           a 
          
         
           t 
          
         
        
          ∣ 
         
         
         
           s 
          
         
           t 
          
         
        
          , 
         
         
         
           θ 
          
         
           t 
          
         
        
          ) 
         
        
          ( 
         
         
         
           q 
          
         
           t 
          
         
        
          ( 
         
         
         
           s 
          
         
           t 
          
         
        
          , 
         
         
         
           a 
          
         
           t 
          
         
        
          ) 
         
        
          − 
         
         
         
           v 
          
         
           t 
          
         
        
          ( 
         
         
         
           s 
          
         
           t 
          
         
        
          ) 
         
        
          ) 
         
        
       
         \theta_{t+1}=\theta_t+\alpha_\theta\frac{\pi(a_t|s_t,\theta_t)}{\beta(a_t|s_t)}\nabla_\theta\ln\pi(a_t|s_t,\theta_t)\big(q_t(s_t,a_t)-v_t(s_t)\big) 
        
       
     θt+1=θt+αθβ(at∣st)π(at∣st,θt)∇θlnπ(at∣st,θt)(qt(st,at)−vt(st))
 与 on-policy 案例类似:
  
      
       
        
         
         
           q 
          
         
           t 
          
         
        
          ( 
         
         
         
           s 
          
         
           t 
          
         
        
          , 
         
         
         
           a 
          
         
           t 
          
         
        
          ) 
         
        
          − 
         
         
         
           v 
          
         
           t 
          
         
        
          ( 
         
         
         
           s 
          
         
           t 
          
         
        
          ) 
         
        
          ≈ 
         
         
         
           r 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          + 
         
        
          γ 
         
         
         
           v 
          
         
           t 
          
         
        
          ( 
         
         
         
           s 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          ) 
         
        
          − 
         
         
         
           v 
          
         
           t 
          
         
        
          ( 
         
         
         
           s 
          
         
           t 
          
         
        
          ) 
         
        
          ≐ 
         
         
         
           δ 
          
         
           t 
          
         
        
          ( 
         
         
         
           s 
          
         
           t 
          
         
        
          , 
         
         
         
           a 
          
         
           t 
          
         
        
          ) 
         
        
       
         q_t(s_t,a_t)-v_t(s_t)\approx r_{t+1}+\gamma v_t(s_{t+1})-v_t(s_t)\doteq\delta_t(s_t,a_t) 
        
       
     qt(st,at)−vt(st)≈rt+1+γvt(st+1)−vt(st)≐δt(st,at)
 那么算法就变成了:
  
      
       
        
         
         
           θ 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          = 
         
         
         
           θ 
          
         
           t 
          
         
        
          + 
         
         
         
           α 
          
         
           θ 
          
         
         
          
          
            π 
           
          
            ( 
           
           
           
             a 
            
           
             t 
            
           
          
            ∣ 
           
           
           
             s 
            
           
             t 
            
           
          
            , 
           
           
           
             θ 
            
           
             t 
            
           
          
            ) 
           
          
          
          
            β 
           
          
            ( 
           
           
           
             a 
            
           
             t 
            
           
          
            ∣ 
           
           
           
             s 
            
           
             t 
            
           
          
            ) 
           
          
         
         
         
           ∇ 
          
         
           θ 
          
         
        
          ln 
         
        
           
         
        
          π 
         
        
          ( 
         
         
         
           a 
          
         
           t 
          
         
        
          ∣ 
         
         
         
           s 
          
         
           t 
          
         
        
          , 
         
         
         
           θ 
          
         
           t 
          
         
        
          ) 
         
         
         
           δ 
          
         
           t 
          
         
        
          ( 
         
         
         
           s 
          
         
           t 
          
         
        
          , 
         
         
         
           a 
          
         
           t 
          
         
        
          ) 
         
        
       
         \theta_{t+1}=\theta_t+\alpha_\theta\frac{\pi(a_t|s_t,\theta_t)}{\beta(a_t|s_t)}\nabla_\theta\ln\pi(a_t|s_t,\theta_t)\delta_t(s_t,a_t) 
        
       
     θt+1=θt+αθβ(at∣st)π(at∣st,θt)∇θlnπ(at∣st,θt)δt(st,at)
 因此:
  
      
       
        
         
         
           θ 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          = 
         
         
         
           θ 
          
         
           t 
          
         
        
          + 
         
         
         
           α 
          
         
           θ 
          
         
         
         
           ( 
          
          
           
            
            
              δ 
             
            
              t 
             
            
           
             ( 
            
            
            
              s 
             
            
              t 
             
            
           
             , 
            
            
            
              a 
             
            
              t 
             
            
           
             ) 
            
           
           
           
             β 
            
           
             ( 
            
            
            
              a 
             
            
              t 
             
            
           
             ∣ 
            
            
            
              s 
             
            
              t 
             
            
           
             ) 
            
           
          
         
           ) 
          
         
         
         
           ∇ 
          
         
           θ 
          
         
        
          π 
         
        
          ( 
         
         
         
           a 
          
         
           t 
          
         
        
          ∣ 
         
         
         
           s 
          
         
           t 
          
         
        
          , 
         
         
         
           θ 
          
         
           t 
          
         
        
          ) 
         
        
       
         \theta_{t+1}=\theta_t+\alpha_\theta\left(\frac{\delta_t(s_t,a_t)}{\beta(a_t|s_t)}\right)\nabla_\theta\pi(a_t|s_t,\theta_t) 
        
       
     θt+1=θt+αθ(β(at∣st)δt(st,at))∇θπ(at∣st,θt)

Deterministic actor-critic (DPG)
The theorem of deterministic policy gradient
之前介绍的 policy 梯度定理仅适用于随机 policy 。
如果 policy 必须是确定性的,必须推导出一个新的 policy 梯度定理。
考虑 discounted 情况下平均 state value 的指标:
  
      
       
        
        
          J 
         
        
          ( 
         
        
          θ 
         
        
          ) 
         
        
          = 
         
        
          E 
         
        
          [ 
         
         
         
           v 
          
         
           μ 
          
         
        
          ( 
         
        
          s 
         
        
          ) 
         
        
          ] 
         
        
          = 
         
         
         
           ∑ 
          
          
          
            s 
           
          
            ∈ 
           
          
            S 
           
          
         
         
         
           d 
          
         
           0 
          
         
        
          ( 
         
        
          s 
         
        
          ) 
         
         
         
           v 
          
         
           μ 
          
         
        
          ( 
         
        
          s 
         
        
          ) 
         
        
       
         J(\theta)=\mathbb{E}[v_\mu(s)]=\sum_{s\in\mathcal{S}}d_0(s)v_\mu(s) 
        
       
     J(θ)=E[vμ(s)]=s∈S∑d0(s)vμ(s)
 其中  
     
      
       
        
        
          d 
         
        
          0 
         
        
       
         ( 
        
       
         s 
        
       
         ) 
        
       
      
        d_0(s) 
       
      
    d0(s) 是满足  
     
      
       
        
        
          ∑ 
         
         
         
           s 
          
         
           ∈ 
          
         
           S 
          
         
        
        
        
          d 
         
        
          0 
         
        
       
         ( 
        
       
         s 
        
       
         ) 
        
       
         = 
        
       
         1 
        
       
      
        \sum_{s\in\mathcal{S}}d_0(s)=1 
       
      
    ∑s∈Sd0(s)=1 的概率分布。
-  d 0 d_0 d0 被选择为独立于 μ \mu μ。 这种情况下的梯度更容易计算。 
-  选择 d 0 d_0 d0 有两种特殊但重要的情况: 第一个特殊情况是 d 0 ( s 0 ) = 1 d_0(s_0) = 1 d0(s0)=1 且 d 0 ( s ≠ s 0 ) = 0 d_0(s \ne s_0) = 0 d0(s=s0)=0,其中 s 0 s_0 s0 是感兴趣的特定起始 state。 第二个特殊情况是 d 0 d_0 d0 是与 μ \mu μ 不同的 behavior policy 的平稳分布。 
Theorem (Deterministic policy gradient theorem in the discounted case):
在折扣情况下, γ ∈ ( 0 , 1 ) \gamma \in (0, 1) γ∈(0,1), J ( θ ) J(\theta) J(θ) 的梯度为:
∇ θ J ( θ ) = ∑ s ∈ S ρ μ ( s ) ∇ θ μ ( s ) ( ∇ a q μ ( s , a ) ) ∣ a = μ ( s ) = E S ∼ ρ μ [ ∇ θ μ ( S ) ( ∇ a q μ ( S , a ) ) ∣ a = μ ( S ) ] \begin{aligned} \nabla_{\theta}J(\theta)& =\sum_{s\in\mathcal{S}}\rho_{\mu}(s)\nabla_{\theta}\mu(s)\left(\nabla_{a}q_{\mu}(s,a)\right)|_{a=\mu(s)} \\ &=\mathbb{E}_{S\sim\rho_{\mu}}\left[\nabla_{\theta}\mu(S)\big(\nabla_{a}q_{\mu}(S,a)\big)|_{a=\mu(S)}\right] \end{aligned} ∇θJ(θ)=s∈S∑ρμ(s)∇θμ(s)(∇aqμ(s,a))∣a=μ(s)=ES∼ρμ[∇θμ(S)(∇aqμ(S,a))∣a=μ(S)]
The algorithm of deterministic actor-critic
基于 policy 梯度,最大化  
     
      
       
       
         J 
        
       
         ( 
        
       
         θ 
        
       
         ) 
        
       
      
        J(\theta) 
       
      
    J(θ) 的梯度上升算法为:
  
      
       
        
         
         
           θ 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          = 
         
         
         
           θ 
          
         
           t 
          
         
        
          + 
         
         
         
           α 
          
         
           θ 
          
         
         
         
           E 
          
          
          
            S 
           
          
            ∼ 
           
           
           
             ρ 
            
           
             μ 
            
           
          
         
         
         
           [ 
          
          
          
            ∇ 
           
          
            θ 
           
          
         
           μ 
          
         
           ( 
          
         
           S 
          
         
           ) 
          
         
           ( 
          
          
          
            ∇ 
           
          
            a 
           
          
          
          
            q 
           
          
            μ 
           
          
         
           ( 
          
         
           S 
          
         
           , 
          
         
           a 
          
         
           ) 
          
         
           ) 
          
          
          
            ∣ 
           
           
           
             a 
            
           
             = 
            
           
             μ 
            
           
             ( 
            
           
             S 
            
           
             ) 
            
           
          
         
           ] 
          
         
        
       
         \theta_{t+1}=\theta_{t}+\alpha_{\theta}\mathbb{E}_{S\sim\rho_{\mu}}\left[\nabla_{\theta}\mu(S)\big(\nabla_{a}q_{\mu}(S,a)\big)|_{a=\mu(S)}\right] 
        
       
     θt+1=θt+αθES∼ρμ[∇θμ(S)(∇aqμ(S,a))∣a=μ(S)]
 相应的随机梯度上升算法是:
  
      
       
        
         
         
           θ 
          
          
          
            t 
           
          
            + 
           
          
            1 
           
          
         
        
          = 
         
         
         
           θ 
          
         
           t 
          
         
        
          + 
         
         
         
           α 
          
         
           θ 
          
         
         
         
           ∇ 
          
         
           θ 
          
         
        
          μ 
         
        
          ( 
         
         
         
           s 
          
         
           t 
          
         
        
          ) 
         
        
          ( 
         
         
         
           ∇ 
          
         
           a 
          
         
         
         
           q 
          
         
           μ 
          
         
        
          ( 
         
         
         
           s 
          
         
           t 
          
         
        
          , 
         
        
          a 
         
        
          ) 
         
        
          ) 
         
         
         
           ∣ 
          
          
          
            a 
           
          
            = 
           
          
            μ 
           
          
            ( 
           
           
           
             s 
            
           
             t 
            
           
          
            ) 
           
          
         
        
       
         \theta_{t+1}=\theta_t+\alpha_\theta\nabla_\theta\mu(s_t)\big(\nabla_aq_\mu(s_t,a)\big)|_{a=\mu(s_t)} 
        
       
     θt+1=θt+αθ∇θμ(st)(∇aqμ(st,a))∣a=μ(st)

这是一种 off-policy 实现,其中 behavior policy β \beta β 可能与 μ \mu μ 不同。
β \beta β 也可以用 μ + noise \mu+ \text{noise} μ+noise 代替。
选择函数来表示 q ( s , a , w ) q(s, a, w) q(s,a,w):
- 线性函数: q ( s , a , w ) = ϕ T ( s , a ) w \begin{aligned}q(s,a,w)=\phi^T(s,a)w\end{aligned} q(s,a,w)=ϕT(s,a)w,其中 ϕ ( s , a ) \phi(s, a) ϕ(s,a) 是特征向量。
- 神经网络:深度确定性策略梯度(DDPG)方法。
Summary
- The simplest actor-critic
- Advantage actor-critic
- Off-policy actor-critic
- Deterministic actor-critic
 
 
 以上内容为B站西湖大学智能无人系统 强化学习的数学原理 公开课笔记。



















