Page 183 - 《软件学报》2025年第5期
P. 183
杨尚东 等: 基于分组对比学习的序贯感知技能发现 2083
]
[
h(x) = E x∼p −log(x) .
2.3 稀疏奖励下的多目标导向强化学习
第 1 节提到过, 传统的基于抉择框架的分层强化学习方法在处理奖励信号较为稀疏的任务中取得的效果较
差. 当前基于技能发现的方法虽然可以在无奖励情况下学习策略, 当面对稀疏奖励任务、一个回合中存在序贯技
能组合、不同回合之间技能组合存在差异时, 往往不能训练出有效的策略 [43] . 本文研究一种稀疏奖励下的多目标
导向强化学习 (multi goal-oriented RL with sparse rewards) 问题. 下面, 我们将形式化定义该问题, 并且约定训练任
务和测试任务的具体差异.
定义 3. 稀疏奖励下的多目标导向强化学习. 基于定义 1, 该问题可以扩展成为一个七元组 ⟨S,A,R g ,T,G,ϕ,γ⟩ ,
γ 与定义 1 S 映射至目标空间
其中, S、A、T 和 中的一致, G 是目标空间, ϕ 一个映射函数, 将状态 s 从状态空间
G 内一个向量的函数, R g 是奖励函数, 与目标 g ∈ G 相关, 该奖励函数是稀疏的, 只有在智能体达到目标时, 环境才
会给出奖励信号, 即:
r, f(s t+1 ,g) ∈ [0,δ]
R g (s t ,a t , s t+1 ) = ,
0, otherwise
其中, δ 是一个比较小的正实数.
在上述定义中, 若 g 是需接近类型目标, 则可令 r = 1 , 若 g 是需躲避类型目标, 则可令 r = −1 , 二者 f(s t+1 ,g) =
||ϕ(s t+1 )−g|| 2 ; 智能体在其他状态采取动作, 不会获得奖励, 不失一般性, 这里用 0 表示, 并且值函数初始亦置为 0.
在稀疏奖励下的目标导向强化学习中, 由于目标的类型不同, 且可能存在多个目标, 则不同的目标类型会导致
{T i1 ,T i2 ,...,T im } 子任务集合, 所
不同的任务类型. 我们定义 T i 为某种任务类型, 任务类型 T i 中不同目标类型构成了
有的任务类型构成了 {T 1 ,T 2 ,...,T I } 任务类型集合. 在一个回合开始前, 智能体会被随机分配至某个初始状态 s 0 ∈ S ,
L 个目标对应的子任
环境根据从任务类型集合中采样的 T i 产生 L 个目标 {g 1 ,g 2 ,...,g L } ∈ G , 在 T i 中不同的回合,
务相同, 但每个目标的参数可能不同 (例如, 目标的坐标位置不同), 智能体需要依次完成这些目标才能完成整个任
务. 智能体训练时的任务类型和测试时的任务类型可能不同.
由于每个回合产生的目标不同, 故基于技能框架的稀疏奖励下的多目标导向强化学习的目标是学习带有嵌入
技能表征的策略 π(a | s,⃗ g,⃗z) , 使以下目标函数最大化:
[ π ( )]
V s 0 ,⃗ g,⃗z ,
E (s 0 ,⃗ g)∼ν 0
其中, ⃗ g = (g 1 ,g 2 ,...,g L ) , 是 L 个目标参数向量的拼接, ⃗z = (z 1 ,z 2 ,...,z N ) 是 N 个技能潜在参数向量的拼接, 这里的
N ⩽ L , 因为一个技能可能包含多个目标, ν 0 是回合开始时环境产生初始状态 s 0 与目标 ⃗ g 的联合分布.
3 基于分组对比学习的序贯感知技能发现方法 GCSSD
本节我们将详细介绍 GCSSD 中如何将分组对比学习融合至强化学习的策略网络中学习到具有不同技能的
嵌入表征, 以及怎样利用学习到的技能嵌入表征在具有不同序贯技能组合的测试任务中进行快速适应. GCSSD 方
法分为基于分组对比学习的技能嵌入表征、基于技能表征的强化学习训练和测试任务中的技能序贯组合 3 个部
分. 下面, 将逐一介绍算法每个部分的流程.
3.1 基于分组对比学习的技能嵌入表征
T i 中依次执行相应的技能策略. 为了判断不
在稀疏奖励下的目标导向强化学习中, 智能体需要在某任务类型
同任务类型下应该执行哪些技能以及技能的执行顺序, 我们需要用采样策略获得轨迹来评估任务类型. 先对不同
任务类型下的采样轨迹进行分段, 再根据技能分组方法对分段轨迹进行分组, 每一组相似的轨迹对应一种技能, 对
不同技能的分组轨迹进行对比学习, 来获得技能的嵌入表征. 因此, 我们将学习技能嵌入表征分为采样和对比学习
两个阶段. 下面将分别介绍这两个阶段的实现.
首先是采样阶段. 从任务类型集合中采样一个训练任务类型 T i ∈ {T 1 ,T 2 ,...,T I } , 设定初始随机采样策略