Page 174 - 《软件学报》2021年第11期
P. 174
3500 Journal of Software 软件学报 Vol.32, No.11, November 2021
I ij= + A , i j 为激活系数,该系数利用图形邻接矩阵中潜在的节点连接性来激活核函数.
k ∑ (I kj= + , k j ∑ ) k (I k i= + A A , i k )
1.3 相关RL算法
1.3.1 情节式 Q 学习
情节式 Q 学习 [12] 是 n 步 Q 学习的一种改进算法.当这两个算法与神经网络模型相结合时,它们的区别在于:
n 步 Q 学习算法使用两个结构相同的网络模型来共同训练网络参数,即目标网络和行为网络.算法中每个情节
的持续时间固定,每隔 n 步后,计算每一步的损失函数及梯度,累计梯度,并以此更新网络参数.n 步中每一时间
步的损失函数为 (G ti+ − Q (s ti+ , ; ))a θ 2 ,其中, G ti+ ← R ti++ 1 + γ G ti+ + 1 ,i∈{0,1,2,…,n−1}.G 为累积奖赏,其初始值为
⎧ 0, s 为目标状态
G t + n ← ⎨ tn+ .
max Qs t n , ;a θ ′ − ) , s t n 不为目标状态
(
+ ⎩
a′
+
−
t 为情节开始的时刻,R 是每个时刻的立即奖赏,θ 为目标网络的参数,θ为行为网络的参数.而在情节式 Q
学习中,为了达到提高网络训练过程稳定性的目的,网络参数在一个情节结束后更新,因此仅需使用一个行为网
络模型更新网络参数即可.在情节式 Q 学习算法中,当智能体到达目标状态或总时间步数达到最大步长限制时,
一个情节终止,即每个情节的持续时间是动态变化的.计算每一时间步的损失函数和梯度,累积梯度,以此更新
可训练的网络参数.情节中每一时间步的损失函数为 (G ti+ − Q (s ti+ , ; )) ,a θ 2 其中, G ti+ ← R ti+ + 1 + γ G ti+ + 1 ,i∈ {0,1,
2,...,T −− 1}.累积奖赏 G 的初始值定义为:G T ←0,T 为情节结束的时刻.
t
1.3.2 加权双 Q 学习
在 Q 学习 [20] 的计算过程中,算法使用单估计器来估计状态-动作值,即使用最大状态-动作值来估计最大期
望状态-动作值的近似值,导致算法在随机环境中出现值被过高估计的现象.双 Q 学习 [21] 采用双估计器来避免出
现值被过高估计的现象,该算法在确定最优动作及在估计这个动作的状态-动作值时使用了两个经验集(样本集
合)互相独立的估计器,会经常出现值被过低估计的现象.加权双 Q 学习是一种基于加权双估计器的算法,其目
U
V
的是要在过高估计和过低估计之间达到平衡.加权双 Q 学习使用了两个状态-动作值函数(Q 和 Q )进行计算.
对于每一时间步的动作,算法基于这两个状态-动作值函数的线性组合,采用ε贪心策略进行选择.若其中一个值
函数要进行更新,那么在更新过程中,该值函数中的状态-动作值定义为
U
U
*
*
*
U
V
Q U,WDE (s,a )=β Q (s,a )+(1−β )Q (s,a ) (4)
U
U
*
其中,Q U,WDE 为采用加权双估计器计算得到的状态-动作值,a 为根据 Q 所得的最优动作.β ∈[0,1]为加权函数,
V
( ,
U
其具体定义为: β = | Qs a * ) Q− V ( ,s a L ) | ,c≥0,a L 为根据 Q 所得的最差动作.当β =1,即 c=0 时,Q U,WDE 等同
U
U
c+ | Q V ( ,s a * ) Q− V ( ,s a ) |
L
U
于采用单估计器得到的状态-动作值;当β =0,即 c→∞时,Q U,WDE 则等同于采用双估计器得到的状态-动作值.
2 主要成果
本节对本文所提出的主要研究成果分别进行了介绍.第 2.1 节中介绍了广义异步值迭代网络中所用的基于
状态的异步更新方法的两种实现形式及主要思想,并对网络中的一次异步值迭代过程进行了描述.第 2.2 节中
介绍了情节式加权双 Q 学习算法的主要思想.第 2.3 节介绍了新型图形卷积算子的主要思想.
2.1 广义异步值迭代网络(GAVIN)
基于 GVIN,本文提出了一种异步规划网络模型——GAVIN.该网络利用基于状态的异步更新方法,进一步
地改进了 GVIN 中的规划模块,提升了其在具有非规则图形结构任务中的规划性能及其策略在未知任务中的泛
化能力.对于输入 GAVIN 的每张非规则图形,网络所采用的基于状态的异步更新方法为图形中每个节点(即
MDP 中的状态)的优先级定义了两种具体形式.在规划模块的每一轮迭代过程中,该方法能根据优先级合理分
配各节点的规划时间.
第 1 种形式直接使用贝尔曼误差(Bellman error)来定义节点的优先级.对于 MDP 中的任一状态,其当前贝尔