Page 253 - 《软件学报》2026年第6期
P. 253

2572                                                       软件学报  2026  年第  37  卷第  6  期



                          ,
                 1. 初始化   F φ F ψ
                 2. for  i = 1 : I do
                                     {(       )       }
                                       ( j)  (j)  (j)
                 3.   从缓冲池    β 中采样   s t ,a t , s t+1  | j ∈ [1, J]
                 4.   for   j = 1 : J do
                                                       (       )
                                              (j)
                                                 (j)
                                                           (j)
                                                        (j)
                 5.    推断隐变量均值和标准差:          µ t , σ t = F φ s t ,a t , s (j)
                                                              t+1
                                      (        )
                                          [  ] 2
                                 ( j)   ( j)  ( j)
                 6.    重参数化:    h t ∼ N µ t , σ t  I
                                                (       )
                                                    (j)
                                                 ( j)
                 7.    重构可观测状态信息:        s (j)  = F ψ s t ,a t ,h t ( j)
                                          t+1
                 8.   end for
                                          1  J ∑ (  { [  ] 2 }  [  ] 2 [  ] 2  )
                 9.   计算  KL  散度项:  L KL = −  1+log σ t (j)  − µ t (j)  − σ t (j)
                                          2
                                           j=1
                                                             )
                                          1  J ∑
 
 ( j)  (  (j) 
 2
                                                      (j)
                                                         (j)
                 10.    计算重构损失项:    L recon =  
s  − F ψ s t ,a t ,h t

                                          J    t+1
                                            j=1
                 11.    根据联合损失项    L causal = w KL L KL +w recon L recon , 更新  φ 和  ψ
                 12. end for
                  4.2   基于隐变量因果模型的策略梯度算法
                    基于隐变量因果模型的策略梯度算法的网络训练方法如图                     3  所示. 在因果价值网络判定价值之前, 利用长短
                 期记忆   (long short-term memory, LSTM) 网络处理逆序的变长隐变量序列      h , 学出隐变量序列特征. 在时间序列中
                                                                          +
                                                                          t
                                                       V t  的影响应该越小, 这样的设计与折扣因子的设计是相似的. 而
                 距离当前节点越远的隐变量信息对当前节点价值
                                                 +
                 LSTM  网络处理逆序的变长隐变量序列           h , 恰能通过遗忘门将类似的记忆特点表现出来. 结合上述的隐变量序列
                                                 t
                 特征和可观测状态信息, 计算基于当前因果价值网络对当前时刻预估的价值信息. 通过因果价值网络更为准确地
                 衡量当前时刻的综合情况, 可以使动作优势估计值不受动态环境中未观测随机信息的干扰, 进而降低策略梯度的
                 方差. 基于上述描述, 基于隐变量因果模型的策略梯度算法如算法                    2  所示.

                                 V t−1             V t               V t+1
                               Critic cvf        Critic cvf        Critic cvf
                            …           LSTM              LSTM               LSTM          …
                                          h t−1             h t               h t+1



                                    μ t−1  σ t−1    t−1  μ t  t σ    t  μ t+1  σ   t+1    t+1
                                              (0,1)            (0,1)            (0,1)
                                        Causal            Causal            Causal
                                        encoder           encoder           encoder

                            …    s t−1    a t−1    s t      a t      s t+1    a t+1    s t+2  …

                                     Actor             Actor             Actor

                                   图 3 基于隐变量因果模型的策略梯度算法的网络训练方法示意图
   248   249   250   251   252   253   254   255   256   257   258