优胜从选择开始,我们是您最好的选择!—— 中州期刊联盟(新乡市博翰文化传媒有限公司)
0373-5939925
2851259250@qq.com
我要检测 我要投稿 合法期刊查询
您的位置:网站首页 > 优秀论文 > 其他论文 > 正文

采用分类经验回放的深度确定性策略梯度方法

作者:时圣苗 刘全来源:《自动化学报》日期:2022-08-29人气:744

强化学习(Reinforcement learning, RL)中, Agent采用“试错”的方式与环境进行交互, 通过从环境中获得最大化累积奖赏寻求最优策略[1]. RL算法根据Agent当前所处状态求解可执行动作, 因此RL适用于序贯决策问题的求解[2]. 利用具有感知能力的深度学习作为RL状态特征提取的工具, 二者结合形成的深度强化学习(Deep reinforcement learning, DRL)算法是目前人工智能领域研究的热点之一[3-4].

在线DRL算法采用增量式方法更新网络参数, 通过Agent与环境交互产生经验样本e=(st,at,rt,st+1), 直接将此样本用于训练网络参数, 在一次训练后立即丢弃传入的数据[5]. 然而此方法存在两个问题: 1)训练神经网络的数据要求满足独立同分布, 而强化学习中产生的数据样本之间具有时序相关性. 2)数据样本使用后立即丢弃, 使得数据无法重复利用. 针对以上问题, Mnih等[6]采用经验回放的方法, 使用经验缓冲池存储经验样本, 通过随机选取经验样本进行神经网络训练. 然而经验回放方法中未考虑不同经验样本具有不同的重要性, 随机选取无法充分利用对网络参数更新作用更大的经验样本. Schaul等[7]根据经验样本的重要性程度赋予每个样本不同的优先级, 通过频繁选取优先级高的经验样本提高神经网络训练速度. 优先级经验回放一方面增加了对经验样本赋予和更改优先级的操作, 另一方面需要扫描经验缓冲池以获取优先级高的经验样本, 因此增加了算法的时间复杂度. 与优先级经验回放不同, 本文提出的分类经验回放方法对不同重要性程度的经验样本分类存储. 将此方法应用于深度确定性策略梯度(Deep deterministic policy gradient, DDPG)算法中, 提出了采用分类经验回放的深度确定性策略梯度(Deep deterministic policy gradient with classified experience replay, CER-DDPG)方法. CER-DDPG采用两种分类方式: 1)根据经验样本中的时序差分误差(Temporal difference-error, TD-error); 2)基于立即奖赏值进行分类. 其中, TD-error代表Agent从当前状态能够获得的学习进度, RL经典算法Sarsa、Q-leaning均采用一步自举的方式计算TD-error实现算法收敛. CER-DDPG中, 将大于TD-error平均值或立即奖赏平均值的经验样本存入经验缓冲池1中, 其余存入经验缓冲池2中. 网络训练时每批次从经验缓冲池1中选取更多数量的样本, 同时为保证样本的多样性, 从经验缓冲池2中选取少量的经验样本, 以此替代优先级经验回放中频繁选取优先级高的经验样本. 分类经验回放方法具有和普通经验回放方法相同的时间复杂度, 且未增加空间复杂度.

本文主要贡献如下:

1) 采用双经验缓冲池存储经验样本, 并根据经验样本中的TD-error和立即奖赏值完成对样本的分类;

2) 从每个经验缓冲池中选取不同数量的经验样本进行网络参数更新;

3) 在具有连续动作空间的RL任务中进行实验, 结果表明, 相比随机采样的DDPG算法, 本文提出的基于时序差分误差样本分类的深度确定性策略梯度方法(DDPG with temporal difference-errer classification, TDC-DDPG)和基于立即奖赏样本分类的深度确定性策略梯度方法(DDPG with reward classification, RC-DDPG)能够取得更好的实验效果. 并与置信区域策略优化(Trust region policy optimization, TRPO)算法以及近端策略优化(Proximal policy optization, PPO)算法进行比较, 进一步证明了本文所提出算法的有效性.

马尔科夫决策过程(Markov decision process, MDP)是序贯决策的经典形式, 其中动作不仅影响到立即奖赏, 同样影响后续的状态或动作, 以及采取后续动作所获得的未来奖赏. 因此, 通常使用MDP对RL问题进行建模, 将RL问题定义为一个五元组(S,A,P,R,γ)S表示状态空间, A表示动作空间, P:S×A×S[0,1]表示状态迁移概率, R:S×AR为奖赏函数, γ为折扣因子[8]. 通过MDP可以构建Agent与环境的交互过程, 每一离散时间步t, Agent接收到来自环境的状态表示st, 在此基础上执行动作at. 该时间步之后, Agent收到来自环境反馈的标量化奖赏rt并处于下一状态st+1.

Agent执行的动作由策略π定义, 策略π为状态映射到每个动作的概率: SP(A). RL的目标为求解最优策略π, 在遵循策略π的情况下能够获得最大的累积奖赏Gt=t=tTγttr(st,at), 其中, T表示该情节终止时间步.

状态动作值函数Qπ(s,a)表示Agent在当前状态st下执行动作at, 遵循策略π所获得的期望累积奖赏


(1)

Qπ(s,a)满足具有递归属性的贝尔曼方程


(2)

迭代计算贝尔曼方程可实现值函数的收敛. 当前时刻状态动作估计值函数与更好地估计rt+1+γQπ(st+1,at+1)之间的误差称为TD-error


(3)

通过求解状态动作值函数仅局限于解决具有离散动作空间的RL问题, 面对具有连续动作空间的RL问题, 策略梯度方法提供了解决问题的方式[9].

RL算法分为基于值函数和基于策略两种方法. 基于策略的方法可以解决大状态动作空间或连续动作空间RL问题[10]. 确定性策略梯度(Deterministic policy gradient, DPG)方法以行动者−评论家(Actor-critic, AC)算法为基础, 通过行动者将状态映射到特定动作, 评论家利用贝尔曼方程实现值函数的收敛[11-12].

DDPG中, 使用深度神经网络作为非线性函数逼近器构造行动者μ(s|θθμ)和评论家Q(s,a|θQ)的网络模型. 受到深度Q网络(Deep Q-network, DQN)的启发, 设置行动者目标网络μ(s|θμ)和评论家目标网络Q(s,a|θQ). 由于DPG中行动者将状态映射到确定动作, 因此解决连续动作空间RL任务存在缺乏探索性问题[13]. DDPG算法通过添加独立于行动者网络的探索噪声Noise构造具有探索性的行动者网络μ[14]


(4)

网络模型学习时, 评论家网络通过最小化损失函数L(θQ)更新网络参数


(5)

其中,


(6)

行动者网络采用蒙特卡罗方法进行采样以逼近期望值, 可通过链式法则近似更新行动者网络参数, 如式(7)所示


(7)

目标网络采用“soft”更新方式, 通过缓慢跟踪学习的网络更新参数


(8)

“soft”更新方式使得不稳定问题更接近于监督学习, 虽减慢了目标网络参数更新速度, 但在学习过程中能够获得更好的稳定性.

DDPG同样用到了经验回放机制, 将行动者网络与环境交互产生的经验样本e=(st,at,rt,st+1)存入经验缓冲池中, 网络训练时通过从经验缓冲池中随机选取每批次经验样本用于网络参数的更新. 随机选取方式未考虑不同经验样本的重要性, 如何更有效利 用缓冲池中的样本数据成为经验回放机制面临的主要挑战.

本节将介绍CER-DDPG算法的思想和结构, 对采用的分类方法分析说明, 最后描述算法流程并分析.

经验回放机制在消除数据样本之间关联性的同时能够提高样本利用率. 在Agent与环境交互产生的经验样本中, 不同经验样本对网络训练所起作用不同, 某些经验样本比其他经验样本更能有效地促进网络模型学习. 等概率选取每一个经验样本会在简单样本上花费较多的时间, 增加了算法训练时间步数. 因此, 本文所提出的分类经验回放方法最主要的一点是对不同重要性程度经验样本分类存放, 在网络模型学习时分别从不同类别经验样本中选取每批次样本数据. 对于重要性程度高的经验样本, 每批次以较多数量选取, 同时为保证样本数据多样性, 每批次选取少量重要性程度低的经验样本.

TDC-DDPG中, 使用两个经验缓冲池存放经验样本. 初始化网络模型时, 将两个经验缓冲池中所有样本TD-error的平均值设置为0. 每产生一条新的经验样本, 首先更新所有经验样本TD-error的平均值, 再将该条样本数据的TD-error与平均值进行比较, 若该经验样本中的TD-error大于所有样本TD-error的平均值, 则将该样本存入经验缓冲池1中, 否则存入经验缓冲池2中.

RC-DDPG方法根据经验样本中的立即奖赏值进行分类, 具体分类方法与TDC-DDPG方法相同. CER-DDPG算法结构如图1所示.

图 1  CER-DDPG算法结构示意图
Fig. 1  CER-DDPG algorithm structure diagram

图1中, 在每一时间步t, 行动者网络执行动作at, 产生经验样本e=(st,at,rt,st+1)后, 首先对该样本数据进行分类, 然后再进行存储操作. 优先级经验回放中使用一个经验缓冲池存储所有经验样本, 根据样本不同重要性程度赋予每个样本不同优先级, 网络训练时扫描经验缓冲池获取经验样本, 通过更频繁地选取优先级高的样本加快网络模型训练速度. CER-DDPG方法在经验样本存储前, 将其按照重要性程度分类, 减少了赋予以及更改优先级的操作, 并且在选取每批次数据样本时从不同经验缓冲池中随机选取, 不需要扫描经验缓冲池, 能够获取高重要性程度经验样本的同时减少了算法时间复杂度.

分类经验回放中最关键的是经验样本分类的衡量标准. 本文提出的CER-DDPG方法分别采用经验样本中的TD-error和立即奖赏值对样本进行分类.

1) TD-error经验样本分类. DDPG算法中, 评论家采用时序差分误差的形式对行动者网络做出的动作选择进行评价, 网络参数更新时使用一步自举的方式计算TD-error, TD-error反映了Agent从当 前状态经验样本中的学习进度, 利用TD-error尤其适用于增量式DRL算法参数的更新. 因此, TDC-DDPG中根据经验样本TD-error进行分类, 认为TD-error大的经验样本对神经网络参数更新幅度更大, 重要性程度更高, 并将TD-error值大于平均值的经验样本存入经验缓冲池1中.

2)立即奖赏经验样本分类. 神经科学研究表明啮齿动物在清醒或睡眠期间海马体中会重播先前经历的序列, 与奖赏相关的序列会更频繁地被重播[15-16]. 受到该观点启发, RC-DDPG方法中根据经验样本中的立即奖赏值对样本进行分类, 认为立即奖赏值大的经验样本重要性程度更高, 将立即奖赏值大于平均值的经验样本存入经验缓冲池1中, 其余存入经验缓冲池2中.

为更有效地利用经验样本以及提高经验回放机制的效率, 将对经验样本的分类方法应用到DDPG算法中, 提出的CER-DDPG算法描述如算法1所示:

算法1. 采用分类经验回放的深度确定性策略梯度方法

1) 初始化行动者网络μ(s|θμ)和评论家网络Q(s,a|θQ), 目标网络参数θμθμθQθQ, 经验缓冲池D1D2, 批次抽样数量N1N2, 折扣因子γ, 最大情节数E, 每情节最大时间步Tmax.

2) forepisode=1,Edo

3) 初始化探索噪声Noise

4) 获取初始状态st

5) fort=1,Tmaxdo

6)  选择动作at=μ(st|θμ)+Noise

7)  执行动作at, 获得立即奖赏rt和下一状态st+1

8)  根据经验样本 ei=(st,at,rt,st+1)的TD-error 或rt分类并存入经验缓冲池D1D2

9)  从D1中选取N1个经验样本, D2中选取N2个经 验样本

10)  计算yi=ri+γQ(st+1,μ(st+1|θμ)|θQ)

11)  通过最小化损失函数L(θQ)更新评论家网络参数:


12)  通过策略梯度方法更新行动者网络:


13)  更新目标网络:


14) endfor

15) endfor

算法1中, 第3步为对行动者网络添加探索噪声过程, 第57步为产生经验样本的过程, 第89步为经验样本的分类和获取过程, 第1013步为网络模型学习过程.

由于不同任务中Agent每一时刻获得的立即奖赏值不同, 因此产生的经验样本TD-error和立即奖赏值存在差异, 难以采用固定数值作为分类的衡量标准. CER-DDPG方法中, 使用TD-error和立即奖赏平均值进行样本分类, 并且在产生经验样本过程中不断更新TD-error和立即奖赏平均值, 能够动态性地将不同经验样本准确分类. 分类经验回放方法相比普通经验回放方法仅增加了O(1)的时间复杂度, 可忽略不计. 优先级经验回放中根据优先级大小频繁选取优先级高的经验样本, CER-DDPG方法通过每批次从经验缓冲池1中选取较多样本数量同样能够选取到重要性程度高的样本, 与优先级经验回放相比, CER-DDPG方法效率更高.

为验证CER-DDPG方法的有效性, 在OpenAI Gym工具包中MuJoCo环境下进行实验测试. MuJoCo环境包含了一系列具有连续动作空间的RL任务, 本文分别在HalfCheetah、Ant、Humanoid、Walker、Hopper和Swimmer任务中进行测试. 实验以深度确定性策略梯度(DDPG)算法作为baseline, 分别以TD-error分类的深度确定性策略梯度(TDC-DDPG)方法和立即奖赏分类的深度确定性策略梯度(RC-DDPG)方法进行对比实验.

为保证实验对比公平性, 本文实验参数设置与参考文献中DDPG算法一致, TRPO与PPO算法来自OpenAI baselines算法集. 对行动者网络添加的噪声均使用参数相同的Ornstein-Uhlenbeck噪声分布, 每批次样本数量均相等. DDPG中, 经验缓冲池大小设置为1000000, 批次选取样本数量取N=64. TDC-DDPG和RC-DDPG中, D1D2均为500000, 批次样本数量取N1=48N2=16. 每情节最大时间步数设置为Tmax=1000, 时间步数超过1000时情节重新开始. 行动者网络学习率αμ=1×104, 评论家网络学习率αQ=1×103. 折扣因子γ=0.99, 目标网络更新时τ=0.001.

图2展示了在不同任务中3种算法的实验效果, 每个任务训练500个阶段, 每阶段包含2000个时间步, 通过对比每个训练阶段获得的平均累积奖赏衡量算法优劣.


图 2  实验效果对比图
Fig. 2  Comparison of experimental results

图2所示, 在大多数任务中TDC-DDPG和RC-DDPG算法性能优于随机选取经验样本的DDPG算法, 说明采用分类经验回放的方法能够选取到对网络模型学习更有效的经验样本, 在相同训练阶段内学习到累积奖赏更高的策略.

在HalfCheetah任务中, 通过控制双足猎豹Agent快速奔跑获取奖赏. 在网络模型训练的初始阶段中3种算法均能够取得较快学习速度. 而第20个训练阶段后, DDPG算法表现趋于平稳, TDC-DDPG和RC-DDPG算法仍然能够以较快的学习速度提升算法性能, 最终训练阶段具有明显优势.

在Humanoid和Swimmer任务中, 训练初始阶段TDC-DDPG和RC-DDPG算法优势并不显著, 随着训练时间步的增加, 在训练阶段后期算法优势逐渐明显. 因为在这两个任务中, 每一时间步Agent获得的立即奖赏值在很小的范围内波动, 导致RC-DDPG方法中两个经验缓冲池中样本类型很相近, TDC-DDPG方法根据经验样本TD-error分类, 立即奖赏值同样会影响到TD-error的大小, 因此初始训练阶段算法性能优势表现不明显. 然而在Walker任务中, 每一时间步获得的立即奖赏值大小不均导致3种算法训练得到的实验结果波动性均较大, 但本文提出方法实验效果更优.

Hopper任务通过控制双足机器人Agent向前跳跃获取奖赏. 由于状态动作空间维度低, Agent会执行一些相似动作导致经验样本相似, 因此分类经验回放方法性能提升不明显.

表1展示了500个训练阶段内3种算法在不同任务中所取得的平均奖赏值、最高奖赏值以及标准差.

表 1  连续动作任务中实验数据
Table 1  Experimental data in continuous action tasks
任务名称算法平均奖赏最高奖赏标准差
HalfCheetahDDPG3 360.325 335.231 246.40
TDC-DDPG5 349.649 220.272 368.13
RC-DDPG3 979.646 553.491 580.21
AntDDPG551.871 908.30307.86
TDC-DDPG521.421 863.99296.91
RC-DDPG772.372 971.63460.05
HumanoidDDPG404.36822.11114.38
TDC-DDPG462.65858.34108.20
RC-DDPG440.30835.75100.31
WalkerDDPG506.101 416.00243.02
TDC-DDPG521.581 919.15252.95
RC-DDPG700.573 292.62484.65
HopperDDPG422.101 224.68180.04
TDC-DDPG432.641 689.48223.61
RC-DDPG513.452 050.72257.82
SwimmerDDPG34.0663.1616.74
TDC-DDPG44.1869.4019.77
RC-DDPG38.4471.7021.59

表1可以看出, 与DDPG方法相比, TDC-DDPG和RC-DDPG方法取得的平均奖赏和最高奖赏值更高, 不同训练阶段累积奖赏值差异更大, 导致标准差更大.

为进一步证明算法的有效性, 在HalfCheetah、Ant、Humanoid和Swimmer任务中增加了与TRPO算法以及PPO算法的对比实验. 从图3可看出, TDC-DDPG和RC-DDPG方法在与最新策略梯度算法比较中同样取得了更好的实验效果.

图 3  CER-DDPG与最新策略梯度算法的实验对比
Fig. 3  Experimental comparison of CER-DDPG with the latest policy gradient algorithm

DDPG算法在解决连续动作空间RL问题上取得了巨大成功. 网络模型学习过程中, 使用经验回放机制打破了经验样本之间存在的时序相关性. 然而经验回放未考虑不同经验样本的重要性, 不能有效利用样本数据, 对样本设置优先级又增加了算法时间复杂度. 因此, 本文提出分类经验回放方法并利用经验样本的TD-error和立即奖赏值进行分类存储用于解决经验回放中存在的问题. 在具有连续状态动作空间RL任务中的实验结果表明, 本文提出的TDC-DDPG和RC-DDPG方法在连续控制任务中表现更优.


关键字:优秀论文

网络客服QQ: 沈编辑

投诉建议:0373-5939925    投诉建议QQ:

招聘合作:2851259250@qq.com (如您是期刊主编、文章高手,可通过邮件合作)

地址:河南省新乡市金穗大道东段266号中州期刊联盟 ICP备案号:豫ICP备2020036848

【免责声明】:中州期刊联盟所提供的信息资源如有侵权、违规,请及时告知。

版权所有:中州期刊联盟(新乡市博翰文化传媒有限公司)

关注”中州期刊联盟”公众号
了解论文写作全系列课程

核心期刊为何难发?

论文发表总嫌贵?

职院单位发核心?

扫描关注公众号

论文发表不再有疑惑

论文写作全系列课程

扫码了解更多

轻松写核心期刊论文

在线留言