Page 42 - 《软件学报》2024年第4期
P. 42
1620 软件学报 2024 年第 35 卷第 4 期
的研究背景, 包括第 1.1 节强化学习和第 1.2 节元学习.
1.1 强化学习
强化学习是机器学习的一种范式. 强化学习的框架如图 1 所示, 其主要包含智能体(agent)和环境
(environment)两部分. 强化学习的运行是智能体与环境两者不断交互的过程, 其中, 环境为智能体提供当前状
态(state)和数值奖励(reward), 而智能体根据已有信息(通常是当前状态)向环境输出动作(action), 环境再给出
执行动作后的状态和奖励. 如此循环, 直到任务终止(done). 在这一过程中, 智能体往往以最大化期望累积奖
励为目标进行动作选择和策略学习.
图 1 强化学习框架
强化学习的环境模型普遍基于马尔可夫决策过程(Markov decision process, MDP)构建. MDP 由一个四元
组〈S,A,R,T〉定义, 其中, S 是环境状态集合, A 是可选动作集合, 状态转移函数 T:S×A×S→[0,1]给出由状态 s 和动
作 a 转移到状态 s′的概率, 奖励函数 R:S×A×S→给出每一步的奖励数值.
智能体强化学习算法需要给出一个策略π, 策略在每个状态 s 决定动作 a 的执行与否(确定性策略)或执行
概率(非确定性策略). 经典的强化学习算法认为环境的 MDP 模型是事先给定的, 策略π的优化目标为最大化
*
期望累积折扣奖励. 设参数化策略π θ 的参数为θ, 则算法计算最优参数θ 的公式为
θ * argmax E ∑ T g = t t ] r (1)
[
θ θ π t= 0
其中, T 指代环境运行的时间步数; 折扣因子g∈[0,1]用于权衡长期奖励与短期奖励, 在 T 过大的环境中能显著
稳定强化学习算法.
智能体强化学习算法主要分为基于值函数、基于策略梯度两类.
π
π
基于值函数的强化学习算法依据状态-动作值函数 Q (s,a)决策. Q (s,a)指在状态 s 下执行动作 a 后, 继续
π
*
依据策略π决策的期望累积奖励值. 因此, 最优动作 a 即为状态 s 下取最大 Q (s,a)的动作 a:
*
a = argmaxQ π ( , ) |sa s (2)
a
π
Q (s,a)的计算则基于期望累积折扣奖励的表达式, 以贝尔曼最优方程(Bellman optimality equation)进行迭
代, 具体如下:
′′
Q π ( ,)sa = E [r g+ maxQ π ( , ) | ,]s a sa (3)
s′
k +
1
a′ k
π
在基于值函数的深度强化学习算法中, Q (s,a)由神经网络构建, 并辅以一些设计以增强算法稳定性 [23] .
该类算法在离散动作环境中表现更好, 但难以扩展到连续动作环境, 常用算法有深度 Q 网络(deep Q-network,
DQN) [23] 、双竞争深度 Q 网络(dueling double deep Q-network, D3QN) [24] 、深度递归 Q 网络(deep recurrent Q-
network, DRQN) [25] 等.
基于策略梯度的强化学习算法直接对策略函数π θ (a|s)建模并优化. 同样从期望累积折扣奖励的优化目标
出发, 策略参数θ的梯度为
π
∇ θ J(θ)=E π [Q (s,a)∇ θ logπ θ (a|s)] (4)
π
上式可以利用 REINFORCE 算法 [26] 近似估计, 其中, Q (s,a)由真实的采样轨迹(trajectory)计算, 但这样计
π
π
算 Q (s,a)的方差很大, 使策略难以提升. 演员-评论家(actor-critic, AC)框架将 Q (s,a)作为独立的评论家模块学