欢迎访问一起赢论文辅导网
本站动态
联系我们

手机:15327302358
邮箱:peter.lyz@163.com

Q Q:
910330594  
微信paperwinner
工作时间:9:00-24:00

博士论文
当前位置:首页 > 博士论文
基于双深度网络的安全深度强化学习方法
来源:一起赢论文网     日期:2020-01-25     浏览数:219     【 字体:

 methods to attain optimal strategies,has recently become a research hotspot in artificialintelligence.There has emerged a large amount of work on deep reinforcement learning.Forexample,deep Q network(DQN),one of the most famous models in deep reinforcement learning,is based on convolutional neural networks(CNNs)and Q-learning algorithm,directly uses theunprocessed image as the input.DQN has been applied to learn strategy in complex environmentswith high-dimensional input.However,few deep reinforcement learning algorithms considershow to ensure security during the process of learning in the unknown environment.Even more,many reinforcement learning algorithms intentionally add random exploration approaches,e.g.ε-greedy,to guarantee the diversity of data sampling so that the algorithm could obtain a betterapproximate optimal solution.Nevertheless,exploration without any security constraint is verydangerous and likely to bring with high risk of leading to disastrous results.Aiming at solvingthis problem,an algorithm,named dual deep network based secure deep reinforcement learning(DDN-SDRL),is proposed.The DDN-SDRL algorithm sets up two experience pools.The firstone is the experience pool of dangerous samples,including critical states and dangerous statesthat caused failure;and the second one is the experience pool of the secure sample,whichexcluded critical states and dangerous states.The DDN-SDRL algorithm takes advantage of anadditional deep Q network to train dangerous samples and reconstructs a new objective functionby introducing apenalty component.The new objective function is calculated by the penaltycomponent and the original network objective function.The penalty component,which is trainedby a deep Q network with samples in the critical state experience pool,is used to representcritical states before failure.As the DDN-SDRL algorithm fully uses information of critical state,dangerous state and secure state,the agent is able to improve security by avoiding most dangerousstates during the training process.The DDN-SDRL is a general mechanism of enhancing securityduring the learning and can be combined with a variety of deep network models,such as DQN,dueling deep Q network(DuDQN),and deep recurrent Q network(DRQN).In the simulatedexperiments,DQN,DuDQN and DRQN were used as original deep network respectively,and atthe same time DDN-SDRL was applied to ensure security.The results of six testing Atari 2600games,CrazyClimber,Kangaroo,KungFuMaster,Pooyan,RoadRunner and Zaxxon,indicatethat the proposed DDN-SDRL algorithm makes control safer,more stable and more effective.Itcan be concluded that the characteristics of the environment suitable for DDN-SDRL include:(1)there are many representable dangerous states that lead to failure in the environment;(2)thedifference between dangerous states and secure states is discriminative;(3)there are not too manyactions and the agent can attain improvement by self-training.In these cases,the DDN-SDRLimproves original deep network much better.Keywords  reinforcement learning;deep reinforcement learning;deep Q-network;safereinforcement learning;safe artificial intelligence;experience replay1 引 言强化学 习 (Reinforcement Learning,RL)是 一种受到动物心理学启发,并结合心理学、控制理论等相关学科而发展形成的机器学习方法[1-2],其通过智能体(Agent)的不断“试错式”学习,寻求累积奖赏最大的策略[3].强化学习获得了研究人员和产业界的关注,在优化、控制、博弈、生物医学等领域积累了大量的研究成果,也有不少的实际应用[4-6].深度学习(Deep Learning,DL)是机器学习领域一类重要的方法,其建立神经网络,模仿人脑的机制来解释数据[7].深度学习能从原始的高维数据中提取可区分的特征.近年来,深度学习已经在语音识别、图像处8期 朱 斐等:基于双深度网络的安全深度强化学习方法3181出众多良好的研究和应用[8-9].随着机器视觉设备的推广,在很多系统中,原始的状态信息以视频、图像等方式呈现.因此,如何充分利用深度学习方法,以视频、图像等数据作为原始输入,使用深度学习来提取大规模数据的抽象表征(Abstract Representation),再利用强化学习方法学习获得最优策略,从而实现“类脑”控制,是当前重要的研究方向之一.谷歌人工智能团队 DeepMind较早地将深度学习与强化学习相结合,形成了深度强化学 习 (Deep Reinforcement Learning,DRL)这 一研究方向.深度强化学习包括了强化学习和深度学习两个部分,其中深度学习部分具有感知环境信息的功能;强化学习部分通过决策完成从状态到动作的映射,并获得奖赏.深度强化学习累积了一些研究工作基础.如由强化学习中的 Q 学习(Q-Learning)方 法[10]和 卷 积 神 经 网 络 (Convolutional NeuralNetworks,CNNs)结 合 而 成 的 深 度 Q 网 络 (DeepQ-Network,DQN)[11-12]是深 度强化学习领域的一个重要方法,已被成功地用于高维度输入环境中的策略求解.Van Hasselt等人[13]在双 Q 学习(DoubleQ-Learning)[14]方法的基础上提出 了 深 度 双 Q 网络(Double Deep Q-Network,DDQN),该方法在计算目标网络的Q 值时使用两套不同的参数,有效地避免了 DQN 过高估计动作值的问题.Hausknecht等人[15]首次将长短时间记忆单元(Long-Short TermMemory,LSTM)引 入 DQN 中,提 出 了 一 种 带 有LSTM 单元的深度循环 Q 网络(Deep Recurrent Q-Network,DRQN),该网络对情节具有一定的记忆功能,在大多数 Atari 2600游戏实验环境中取得了较佳的成绩.Wang等人[16]提出了竞争深度 Q 网络(Dueling Deep Q-Network,DuDQN),利 用 CNN从原始输入中提取特征,分为优势函数(AdvantageFunction)和与动作无关的状态值函数两个通道来生成动作值函数,该方法在不改变底层强化学习方法的情况下进一步提高了 DQN 在 Atari 2600环境下的效果.在深 度 强 化 学 习 方 法 被 成 功 应 用 于 谷 歌AlphaGo[17]并在围棋比赛 中战 胜世界冠军 李 世 乭后,人们开始关注深度强化学习如何从研究迈向实际应用.然而,要完成这一阶段性的跨越还有很多工作需要完成.其中,保证决策的安全性是最重要的一项内容.有专家指出,人工智能的安全风险可能会带来严重的问题.而安全的人工智能必须保证所控制物体的安全性,降低导致危险的操作概率.2018年以来,在美国发生了一系列无人驾驶车辆安全事故,更凸显出安全在自动控制任务中的重要性.但是,目前很多人工智能的方法没有充分地做到控制风险、增加安全性,甚至有些方法在求解过程中特意加入了带有随机性质的探索性学习.而不受安全限制的探索性学习很可能会带来重大风险.如果在现实世界的任务中直接应用强化学习的方法,让 Agent进行“试错式”探索学习,所作出的决策就有可能使系统陷入危险状态.强化学习的安全性问题引起了越来越多的关注.有些研究人员开展了安全强化学习的研究工作.Berkenkamp等人[18]将控制理论中经典的李雅普诺夫函数(Lyapunov Function)引入强化学习,有效地缓解了 Agent无限制探索带来的副作用.Garcia等人[19]提出了基于策略改进的安全强化学习方法,对动作 和状态 空 间进行探索 限制.然而,这两种方法的表现难以令人满意.目前,安全深度强化学习是一个较新的研究内容.传统深度强化学习中,经典的 DQN 采用函数逼近的方法进行训练,为了去除训练过程中样本的相关性,DQN 使用经验重放(Experience Replay)的机制,以等概率的方式抽取样本更新网络.然而无差别地从经验池中采样并不能体现样本的区分度,很难辨别“好”的样本和“差”的样本,很有可能出现导致Agent陷入危险状态的样本再次被用于网络训练的情况.绝 大 部 分 深 度 强 化 学 习 方 法 没 有 采 取 预 防机制来避免 Agent陷入危 险状态.因此,必 须限制Agent无约束的探索以保障安全性.针对上述问题,本文提出基于双深度网络的安全深度强化学习(Dual Deep Network Based SecureDeep Reinforcement Learning,DDN-SDRL)方 法.DDN-SDRL方法通过分离历史经验训练导致 Agent陷入危险状态的经验样本,使其重新组成新的经验池,有效地甄别了导致 Agent陷入危险状态的样本经验;在原有网络的基础上再增加一个深度网络,采用新增的深度网络对新经验池样本进行训练,充分利用了提取出的样本;将训练结果作为惩罚项改进目标函数.DDN-SDRL 方法具有较好的通用性,能与 DQN、DuDQN、DRQN 等 网 络 相 结 合,并 在Atari 2600游戏环境中表现良好.2 背景知识2.1 强化学习在强化学习中,Agent通过与环境交互以最大4181 计  算  机  学  报 2019年是一种从环境状态映射到动作的过程.强化学习 问 题 可 以 用 马 尔 可 夫 决 策 过 程 (MarkovDecision Process,MDP)进 行 建 模,使 用 四 元 组〈X,U,P,R〉描述模型,其中:X 是状态集合,xt∈X 表示智能体在t 时刻所处状态;U 是 Agent可选动作集合,ut∈U 表示 Agent在t时刻所采取的动作;P 是状态转移函数,表示在t时刻 Agent采取动作ut转至下一状态xt+1的概率,通常形式化表示为 P(xt+1xt,ut);R 是奖赏函数,表示 Agent在t时刻的状态xt执行动作ut转移到下一状态xt+1后环境给出的立即奖赏rt+1,通常形式化表示为rt+1=R(xt,ut,xt+1).强化学习的累积奖赏是智能体从t时刻到T 时刻的累积折扣奖赏之和Rt=∑Tt′=tγt′-trt′(1)  其中,γ为折扣因子,控制着未来奖赏的影响力.强化学习的策略h:X →U 是从状态到动作的映射,即ut~h(xt).强化学习使用状态动作值函数来评估策略.状态动作值函数Qh(xt,ut)是在策略h下在当前状态xt下执行动作ut获得的期望奖赏,表示为Qh(xt,ut)=E[Rtxt=x,ut=u,h] (2)  其中,E 表示期望.贝尔曼方程在传统强化学习中有着重要作用,状态动作值函数 Qh(xt,ut)遵循贝尔曼方程.根据贝尔曼方程获得第t+1时刻的状态动作值Qt+1(x,u)为Qt+1(x,u)=Ex′~X[r+γmaxu′Qt(x′,u′)x,u](3)当t→ ∞ 时,状态动作值函数会趋向最优.即通过不断迭代,状态动作值函数最终会收敛.Q 学习是强化学习中被广泛应用的方法之一.在 Q 学习中,Q 值的计算方式为δ=rt+1+γmaxuQ(xt+1,u)-Q(xt,ut) (4)Q(xt,ut)=Q(xt,ut)+αδ (5)  其中,γ 为折扣因子,α 为学习率,δ 为 TD 误差.通过式(4)、式(5)不断迭代更新 Q 值函数,从而收敛到最优状态动作值.在实际应用中,通常状态空间和动作空间较为庞大,采用迭代算法寻找最优策略所产生的计算量较大,可行性较低.因此,需要将大规模状态空间进行泛化处理,通常采用函数逼近的泛化方法近似得到Q 值[20].例如,采用了资格迹的泛化方法为δ=rt+1+γmaxuQ(xt+1,u;θt)-Q(xt,ut;θt)(6)θt+1=θt+αδtet (7)et=γλet-1+Q(xt,ut;θt) (8)  其中,e为资格迹.2.2 深度Q网络(DQN)DQN 结合了传统强化学习的 Q 学习方法和卷积神经网络,采用经验回放机制和目标网络技术缓解了使用非线性神经网络作为函数逼近器出现的学习不稳定问题.DQN 被成功应用于 Atari 2600游戏环境中,其中部分游戏的成绩超过了人类玩家水平.DQN 结构图如图1所示.图 1 深度 Q 网络(DQN)结构示意图DQN 的输入为 4 帧经过处理的图像,大小为84×84像素,之后由3个卷积层提取特征,每层卷积操作后利用非线性激活函数 ReLU 加入非线性因素,最后经过2个全连接层处理得到输出.在深度学习中,训练数据需要满足相互独立的条件,而另一方面,强化学习的样本通过与环境交互产生,很多样本之间存在着较大的相关性.DQN 利用经验回放机制打破样本之间相关性,从而使学习稳定,Agent在每个时间步t将状态(xt)、动作(ut)、奖赏(rt)和执行动作后到达的下一个状态(xt+1)作为一个序列et=(xt,ut,rt,xt+1)保存在经验池 D={e1,e2,…,eN}中,并在训练阶段从中取出固定数量样本作为网络输入.DQN 使用两个独立的 Q 网络,即当前值网络8期 朱 斐等:基于双深度网络的安全深度强化学习方法5181018-05-22;在线出版日期:2019-03-19.本课题得到国家自然科学基金项目(61303108,61373094,61772355)、江苏省高校自然科学研究项目重大项目(17KJA520004)、符号计算与知识工程教育部重点实验室(吉林大学)项目(93K172014K04)、苏州市重点产业技术创新-前瞻性应用研究项目(SYG201804)、高校省级重点实验室(苏州大学)项目(KJS1524)、中国国家留学基金(201606920013)资助.朱 斐,博士,副教授,中国计算机学会(CCF)会员,主要研究方向为强化学习、深度强化学习和文本挖掘.E-mail:zhufei@suda.edu.cn.吴 文,硕士研究生,主要研究方向为深度强化学习.伏玉琛(通信作者),博士,教授,中国计算机学会(CCF)会员,主要研究领域为强化学习、智能信息处理.E-mail:yuchenfu@cslg.edu.cn.刘 全,博士,教授,博士生导师,中国计算机学会(CCF)高级会员,主要研究领域为智能信息处理、自动推理和机器学习.基于双深度网络的安全深度强化学习方法朱 斐1),2),3),4) 吴 文1) 伏玉琛1),5) 刘 全1),2),3)1)(苏州大学计算机科学与技术学院 江苏 苏州 215006)2)(软件新技术与产业化协同创新中心 南京 210000)3)(吉林大学符号计算与知识工程教育部重点实验室 长春 130012)4)(苏州大学江苏省计算机信息处理技术重点实验室 江苏 苏州 215006)5)(常熟理工学院计算机科学与工程学院 江苏 常熟 215500)摘 要 深度强化学习利用深度学习感知环境信息,使用强化学习求解最优决策,是当前人工智能领域的主要研究热点之一.然而,大部分深度强化学习的工作未考虑安全问题,有些方法甚至特意加入带随机性质的探索来扩展采样的覆盖面,以期望获得更好的近似最优解.可是,不受安全控制的探索性学习很可能会带来重大风险.针对上述问题,提出了一种基于双深度网络的安全深度强化学习(Dual Deep Network Based Secure Deep ReinforcementLearning,DDN-SDRL)方法.DDN-SDRL方法设计了危险样本经验池和安全样本经验池,其中危险样本经验池用于记录探索失败时的临界状态和危险状态的样本,而安全样本经验池用于记录剔除了临界状态和危险状态的样本.DDN-SDRL方法在原始网络模型上增加了一个深度 Q 网络来训练危险样本,将高维输入编码为抽象表示后再解码为特征;同时提出了惩罚项描述临界状态,并使用原始网络目标函数和惩罚项计算目标函数.DDN-SDRL方法以危险样本经验池中的样本为输入,使用深度 Q 网络训练得到惩罚项.由于 DDN-SDRL 方法利用了临界状态、危险状态及安全状态信 息,因 此 Agent可 以 通 过 避 开 危 险 状 态 的 样 本、优 先 选 取 安 全 状 态 的 样 本 来 提 高 安 全 性.DDN-SDRL方法具有通用性,能与多种深度网络模型结合.实验验证了方法的有效性.关键词 强化学习;深度强化学习;深度 Q 网络;安全深度强化学习;安全人工智能;经验回放中图法分类号 TP18   DOI号 10.11897/SP.J.1016.2019.01812A Dual Deep Network Based Secure Deep Reinforcement Learning MethodZHU Fei 1),2),3),4) WU Wen1) FU Yu-Chen1),5) LIU Quan1),2),3)1)(School of Computer Science and Technology,Soochow University,Suzhou,Jiangsu 215006)2)(Collaborative Innovation Center of Novel Software Technology and Industrialization,Nanjing 210000)3)(Key Laboratory of Symbolic Computation and Knowledge Engineering of Ministry of Education,Jilin University,Changchun 130012)4)(Provincial Key Laboratory for Computer Information Processing Technology (Soochow University),Suzhou,Jiangsu 215006)5)(School of Computer Science and Engineering,Changshu Institute of Technology,Changshu,Jiangsu 215500)Abstract  Reinforcement learning is a widely studied class of machine learning method,wherethe agent of reinforcement learning keeps continuously interacting with the environment with thegoal of getting maximal long term return.Reinforcement learning is particularly prominent inareas such as control and optimal scheduling.Deep reinforcement learning,which is able to takelarge-scale high-dimensional data,e.g.video and image,as original input data,takes advantage ofdeep learning methods to extract abstract representations of them,and then utilizes reinforcement,分别用θ 和θ-表示两种网络的参数.其中,θ 是实时更新的,θ-在每过L 步后由θ 复制得到.当前值网络和目标值网络的输出分别表示为Q(x,u|θ)和Q(x,u|θ-).损失函数由目标值函数和当前值函数的均方误差决定L(θ)=E[(Y-Q(x,u;θ))2] (9)Y=r+γmaxu′Q(x′,u′;θ-) (10)  其中,式(10)为监督学习的标签,用于近似表示值函数的优化目标.为了求解最小化损失函数,在式(9)中对参数θ求导θL(θ)=(r+γmaxu′Q(x′,u′;θ-)-Q(x,u;θ))θQ(x,u;θ) (11)可 以 采 用 随 机 梯 度 下 降 (Stochastic GradientDescent,SGD)方法更新式(11)中的参数θ.DQN 通过贪心策略更新动作值函数,用ε-贪心策略(ε-greedy)方法选择动作,即以1-ε的概率选择贪心动作,以ε的概率随机选择动作.2.3 安全强化学习近来,有研究人员开展了安全强化学习的相关研究工作.Garca等人[21]从安全的角度将 Agent在训练过程中遇到的状态进行分类并系统地阐述了强化学习中的安全性概念,认为现有安全强化学习方法主要包括改变目标函数和改进探索两类方法.第一类方法通过改变目标函数对 Agent的动作进行限制.强化学习的目标是最大化 Agent在情节中的期望奖赏,目标函数通常只是最大化奖赏Q(x,u)=r+γmaxu′Q(x′,u′) (12)然而,式 (12)忽 视 了 危 险 状 态 对 Agent的 损害.因此,第一类安全强化学习方法在目标函数中加入最小化 Agent陷入危险状态的风险项Q(x,u)=min(Q(x,u),r+γmaxu′Q(x′,u′))(13)有人以改善奖赏方差的方式改进第一类安全强化学习方法.Chow 等人[22]将风险敏感性条件引入MDP模型,建立了风险控制和决策控制的统一框架.Hans等人[23]提出一种基于级别的探索方案,一定程度上提高了 Agent探索过程的安全性.第二类方法通过外部环境信息改进探索过程.由于大多数强化学习方法在开始学习阶段有外部知识,因此通常采用ε-贪心策略作为探索策略获得状态动作空间先验知识.然而,这种方法将耗费大量的探索时间和资源,ε-贪心策略的无限制探索也有可能使 Agent陷入危险.这在大规模连续空间任务中显得尤为突出.针对这一问题,Song等人[24]通过初始化适当的Q 值改善算法效率.Pradyot等人[25]利用 Agent探索产生的经验改进探索算法,在格子世界等问题中取得了良好的效果.在安 全 深 度 强 化 学 习 方 面 也 有 一 些 研 究.Agarwal等人[26]发现,随着样本的增加,经验也在同时积累,有效地利用这些经验可以控制决策的风险、提高决策的安全性从而降低错误决策的代价.在多智能 体 的 安 全 深 度 强 化 学 习 方 面,Mhamdi等人[27]提出了一种动态安全中断机制,完成了在离散状态空间下安全中断的任务.然而,该方法在中断后缺乏学习能力,无法通过自主学习进行改进.3 基于双深度网络的安全深度强化学习本文提出一种基于双深度网络的安全深度强化学习方法.整体模型由两个网络构成,即在原始网络模型(如 DQN、DRQN、DuDQN 等)中 增 加 一 个 深度网络,用以训练临界于危险状态的临界样本和处于危险状态的危险样本,并采用双经验池方法,增加临界样本和危险样本经验池,充分利用其经验.该模型将高维输入编码为抽象表示然后再解码为特征.本节以实验环境 Atari 2600为例分析各个网络功能及网络间关系.3.1 安全深度强化学习为了将安全强化学习概念引入深度强化学习,定义相关名词.定义1. 当 Agent进入某个状态导致任务失败时,将该状态定义为危险状态,记为xd.定义2. 在危险状态xd的前Δ 个状态范围定义为安全距离,记为d.定义3. 在安全距离d 范围之内的状态定义为临界状态.在本文的实验中,安全距离定义为 m,临界状态是 Agent在游戏 失败的前 m 帧状态,危险 状态是Agent在游戏失败时的状态.3.2 图像预处理本文实验环境 Atari 2600游戏产生210×160像素的 RGB图像.考虑到灰度图像和 RGB 图像作为输入对网络训练结果影响较小,而使用灰度图像6181 计  算  机  学  报 2019年算量将会大幅减少,因此,本文将原始RGB图像处理为210×160像素的灰度图像;然后,使用降采样方法将灰度图像缩减为110×84×1的缩略图;最后,通过图像边界裁剪形成84×84×1的缩略图.经过预处理操作,在有效信息不丢失的情况下减少了计算和存储量.原始网络的输入是当前时刻最近的4帧经过预处理的图像;另一个深度网络的输入是处于临界状态和危险状态时经过预处理后的图像.3.3 模型结构及分析基于双深度网络的安全深度强化学习方法采用双网络模型架构,其中,增加的深度网络模型用于训练 Agent历史遭遇的临界状态和危险状态.训练结果用于惩罚 Agent的动作值函数.新加入的 DQN对临界状态进行有针对性的训练,从而使得临界状态样本得到充分利用,减少 Agent再次陷入危险状态的次数.使用双网络模型有两方面优点:(1)双网络模型充分利 用 了 历 史 数 据,使 Agent有 效 地 避 免 再次陷入危险状态,增加了安全性,加快了训练速度;(2)通过额外训练临界状态与危险状态并改进动作值函 数,使 得 目 标 函 数 避 免 朝 危 险 状 态 方 向 收敛.目标函数的改进提升 了 Agent探索的安全性.基于双深度网络的安全深度强化学习方法如算法1所示.算法1. 基于双深度网络的安全深度强化学习(Dual Deep Network Based Secure Deep ReinforcementLearning,DDN-SDRL)方法.输入:原始网络模型、深度网络模型、安全距离 m输出:训练完毕后的原始网络参数θ1、深度网络参数θ21.初始化:经验回放单元D、危险经验回放单元 Dd,原始网络情节结束终止奖赏rT1,深度网络情节结束终止奖赏rT2,抽样样本数量 minibatch的大小32,θ1、θ2初始化为随机较小数值2. Repeat(对每一个情节):3. 使用预处理操作()对原始图像x1进行处理,获得预处理后的图像1,1=(x1)4. Repeat(对于情节中的每个时间步):5. 用ε-贪心策略随机选择动作ut6. 执行动作ut,得到观察的图像ot+1和立即奖赏rt7. 设置xt+1=xt,形成元组xt+1,ut,ot+1,并预处理图像t+1=(xt+1)8. If到达当前情节终止状态9. y1=rT110. y2=rT211. 将(t-m,ut-m,rt-m,t-m+1)至(t,ut,rt,t+1)之间的样本存储到 Dd中12. Else13. y1=r1+γmaxu′Q(i+1,u′;θ1)-ηavg(Q(i+1,u′;θ2)),其中,使用式(12)计算Q 值14. y2=r2+γmaxu′Q(i+1,u′;θ2),其中,使用式(12)计算 Q 值15. 将(t,ut,rt,t+1)作为一个样本存储到 D 中16. End If17. 从D 中抽取 minibatch个样本送入原始网络训练18. 从Dd中抽取 minibatch个样本送入深度网络训练19. 分别对损失函数L(θ1)=(y1-Q(,u;θ1))2和L(θ2)=(y2-Q(,u;θ2))2的θ1和θ2进行梯度下降操作以更新权重20. Until智能体达到当前情节终止状态21.Until达到预期训练次数22.Returnθ1,θ2DDN-SDRL方法将 Agent与环境交互过程中产生的样本分为临界样本、危险样本和一般样本,其中,临界样 本 为 从 Agent任 务 失 败 开 始 的 倒 数 m帧,危险样本为处于危险状态的样本.这两种样本存储在经验回放单元 Dd中,一般样本存储在经验回放单元 D 中.DDN-SDRL 方法在原有 深 度网络的基础上新增了一个网络训练临界样本和危险样本,其目的在于计算临界状态对 Agent再次陷入 危险状态的影响程度.在训练过程中,原始深度神经网络和深度网络分别从 D 和Dd中抽取样本进行随机梯度下降训练.损失函数为L(θ1)=(y1-Q(x,u;θ1))2(14)  其中,y1的计算方式为y1=r1+γmaxu′Q(i+1,u′;θ1)-ηavg(Q(i+1,u′;θ2)) (15)  式(15)中ηavg(Q(i+1,u′;θ2))代表临界样本模型对当前值网络的惩罚项,η控制着深度网络模型对原始深度网络模型的影响力,avg(Q(i+1,u′;θ2)为经过深度网络训练后危险样本的平均动作值函数.无惩罚项的原目标函数根据损失函数进行梯度下降操作时易陷入局部最优,对加入惩罚项之后的式(15)进行平方操作,得到y21=[r1+γmaxu′Q(i+1,u′;θ1)-ηavg(Q(i+1,u′;θ2))]2 (16)由式(16)可以看出,加入惩罚项后的y1距离未加入惩罚项的y1相差了ηavg(Q(i+1,u′;θ2)).从二维平面来看,加入惩罚项后的y1所能取得的值为以8期 朱 斐等:基于双深度网络的安全深度强化学习方法7181r1+γmaxu′Q(i+1,u′;θ1)为圆心,ηavg(Q(i+1,u′;θ2))为半径之外的区域,因此,式(16)可使y1值在较为安全的范围之内,有效地避免进入危险状态的可能,从而保障 Agent的安全性.DDN-SDRL方法改变了目标函数(增加了惩罚项),相应地,最优函数也会 随 之 改 变.然 而,DDN-SDRL方法针对性地训练了临界样本,在危险状态边缘的状态所训练得到的最优策略会受到较大影响,使得函数避免陷入局部最优,因此可以有效限制Agent向危险状态方向探索.此外,由于安全样本距离危险状态边缘较远,目标函数惩罚项对其影响较小,保证了算法的稳定性.3.4 网络训练过程经过预处理的图像再由卷积神经网络提取特征,卷积过程为C=f∑T-1t=0Wt·Xt(+b)(17)  其中,X 为经过处理后的图像矩阵,W 为卷积核,b 为偏置向量,f 为 ReLU 激活函数,T 为卷积核数量.本文网络模型采用了3层卷积神经网络,在每层网络后又进行了非线性变换,提取图像特征.由于池化(Pooling)操作会使得提取得到的特征忽视位置信息,而在实验环境中位置信息也会对奖赏产生较大影响,因此,DDN-SDRL 方法在通过卷积神经网络提取特征后未进行池化操作.在网络的全连接层中,DDN-SDRL方法通过两层全连接层以完成最终的从状态到动作的映射.对于有 m 个输入节点n 个输出节点的全连接层而言,其更新过程可以表示为y=w·x+b (18)  其中,x∈Rn表示输入层信息,w∈Rn×m表示全连接层的参数矩阵,b∈Rn表示偏置向量.网络最终输出值为动作值函数,在 DDN-SDRL方法中,以其均值作为惩罚项.4 实验结果及分析本节首先介绍实验平台和实验过程中的主要参数.接着介绍了对比实验所使用的方法和实验环境.为了评估 DDN-SDRL方法在原始网络选择上的通用性,本文实验使用 DQN、DuDQN 和 DRQN 这3种不同的深度网络作为原始网络;分析结合这3种不同原 始 网 络 的 情 况 下,DDN-SDRL 方 法 在 Atari2600实验平台部分游戏上的效果.最后,根据实验结果分析 DDN-SDRL方法的优缺点和适用范围.4.1 实验平台及参数设置本文 采 用 的 游 戏 环 境 是 基 于 人 工 智 能 公 司OpenAI gym 工具包中的 Atari 2600 游 戏实 验 平台.Atari 2600游戏主要包括射击类、战略类、体育竞技类等方面的策略游戏,为研究人员提供了种类多样的实验环境.实验采用的处理器为Intel i7-7820X(8核),主频为3.60GHz,内存为16GB.由于模型中大多用到了卷积运算和矩阵运算,因此使用了 GTX 1080Ti图形处理器对模型进行辅助加速运算.本文在 Atari 2600游戏中选取了6个游戏进行评估,表1为相关游戏任务的简要介绍.表 1 部分 Atari游戏的简要介绍英文名称 动作数 智能体任务简述CrazyClimber(疯狂攀登者)9 Agent避开障碍物爬上高楼Kangaroo(袋鼠)18Agent通过楼梯向上爬并避开障碍物KungFuMaster(功夫大师)14 Agent需要不断击败出现的敌人Pooyan(猪小弟)6Agent躲避****并击败每一个出现的敌人RoadRunner(公路奔跑者)18 Agent在公路上躲避前后的敌人Zaxxon(空间逃脱)18 Agent驾驶飞船左右躲避障碍物为了更好地比较各方法的优劣,实验中每一种游戏都使用了相同的参数设置.鉴于在将强化学习方法应用于深度学习问题时,会导致不稳定现象的发生.本文在实验中采用了一些措施以保证模型的稳定性,主要包括:(1)由于 Agent根据Q 值选择动作所消耗的时间远大于网络传播时间,为了平衡两者差异,采用跳帧技术[28]来缓和,即在每 4 帧状态下都采取相同的动作,并以累积奖赏作为总奖赏,每过4帧再根据ε-贪心策略选择下一个动作,若在跳帧过程中 出 现 终 止 状 态 则 实 验 结 束;(2)在 Atari2600游戏环境中,不同游戏的奖赏范围波动较大,这会造成较大的得分差异,因此,实验中将正奖赏设为+1,负奖赏设为-1,其余不变.这样不仅可以更方便快捷地在不同算法间进行比较,而且简化了奖赏的设置,可以明确动作带来的优劣,使得判断更加简明;(3)为了防止策略陷入局部最优,提升算法稳定性,将损失函数进行裁剪:损失值在区间[-1,1]之外的取损失值的绝对值;损失值在[-1,1]范围8181 计  算  机  学  报 2019年

[返回]
上一篇:基于必然属性分析的粒描述
下一篇:基于假位置和Stackelberg博弈的位置匿名算法