收藏 分销(赏)

演化算法的DQN网络参数优化方法.pdf

上传人:自信****多点 文档编号:2700830 上传时间:2024-06-04 格式:PDF 页数:13 大小:6.37MB
下载 相关 举报
演化算法的DQN网络参数优化方法.pdf_第1页
第1页 / 共13页
演化算法的DQN网络参数优化方法.pdf_第2页
第2页 / 共13页
演化算法的DQN网络参数优化方法.pdf_第3页
第3页 / 共13页
亲,该文档总共13页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、第44卷第2 期2024年4月DOI:10.16185/.2024.02.401西安工业大学学报Journal of Xian Technological University演化算法的DQN网络参数优化方法Vol.44 No.2Apr.2024http:/曹子建,郭瑞麒,贾浩文,李李骁,徐恺(西安工业大学计算机科学与工程学院,西安7 1 0 0 2 1)摘要:为了解决DQN(DeepQNetwork)在早期会出现盲目搜索、勘探利用不均并导致整个算法收敛过慢的问题,从探索前期有利于算法训练的有效信息获取与利用的角度出发,以差分演化(Differential Evolution)算法为例,提出了

2、一种基于演化算法优化DQN网络参数以加快其收敛速度的方法(DE-DQN)。首先,将DQN的网络参数编码为演化个体;其次,分别采用“运行步长”和“平均回报”两种适应度函数评价方式;利用CartPole控制问题进行仿真对比,验证了两种评价方式的有效性。最后,实验结果表明,在智能体训练50 0 0 代时所提出的改进算法,以“运行步长”为适应度函数时,在运行步长、平均回报和累计回报上分别提高了8 2.7%,1 8.1%和2 5.1%,并优于改进DQN算法;以“平均回报”为适应度函数时,在运行步长、平均回报和累计回报上分别提高了7 4.9%,1 8.5%和1 3.3%并优于改进DQN算法。这说明了DE-

3、DQN算法相较于传统的DQN及其改进算法前期能获得更多有用信息,加快收敛速度。关键词:深度强化学习;深度Q网络;收敛加速;演化算法;自动控制中图号:TP273Method for Optimizing Parameters of Deep Q Network based onCAO Zijian,GUORuiqi,JIA Haowen,LI Xiao,XU Kai(School of Computer Science and Engineering,Xian Technological University,Xian 710021,China)Abstract:The study aims t

4、o address the issues of blind search,uneven exploration-exploitation andslow convergence in the early stages of DQN(Deep Q Network).From the perspective of effectiveinformation acquisition and utilization beneficial for algorithm training and with Differential Evolution(DE)algorithm as an example,th

5、e paper presents a method named DE-DQN for optimizing theparameters of the DQN network based on evolutionary algorithms,aiming to accelerate its convergencespeed.Firstly,the network parameters of DQN are encoded as evolutionary individuals.Secondly,twofitness evaluation metrics,run length and“averag

6、e return are employed separately.The effectivenessof the two evaluation methods is verified through simulation comparisons using the CartPole control文献标志码:AEvolutionary Algorithms文章编号:1 6 7 3-9 9 6 5(2 0 2 4)0 2-0 2 1 9-1 3*收稿日期:2 0 2 3-0 6-0 8;修回日期:2 0 2 3-1 2-2 8基金资助:陕西省自然科学基础研究计划项目(2 0 2 0 JM-565

7、)。作者简介:曹子建(1 9 7 8 一),男,教授,主要研究方向为演化算法、机器学习、网络安全,E-mail:。引文格式:曹子建,郭瑞麒,贾浩文,等.演化算法的DQN网络参数优化方法 J.西安工业大学学报,2 0 2 4,44(2):2 1 9-2 3 1.CAO Zijian,GUO Ruiqi,JIA Haowen,et al.Method for Optimizing Parameters of Deep Q Net work based on EvolutionaryAlgorithmsJJ.Journal of Xian Technological University,2024,

8、44(2):219-231.220problem.Finally,the experimental results indicate that training for 5ooo generations,the proposedalgorithm increases by 82.7%,18.1%,and 25.1%in run length,average return,and cumulative return,respectively,when“run length is used as the fitness function and by 74.9%,18.5%,and 13.3%in

9、 runlength,average return,and cumulative return,respectively,when“average return is used as the fitnessfunction,outperforming the improved DQN algorithm.It is concluded that compared to traditional DQNand its improved algorithms,the DE-DQN algorithm can acquire more useful information in the earlyst

10、ages and,therefore,accelerate the convergence speed.Key words:deep reinforcement learning;deep Q network;convergence acceleration;evolution algorithms;强化学习(Reinforcement Learning,RL)作为虽然上述DQN的改进在一定程度上提高了人工智能领域的一个重要分支,已经得到广大学者算法的执行效率,但是都没有充分考虑算法在探索的高度关注,如今已将强化学习应用于智能决前期环境信息缺失导致的搜索效率低下这一问题。策 1-2、无人驾驶

11、3-4、智能控制 5等众多工程领域。对于强化学习,智能体如何获得有效的环境信息是传统的强化学习采用表格的形式存储状态转移信序贯决策问题的关键点。通常来讲,对于无监督问息,但是随着问题规模的扩大,通过表格的方式已题的训练,智能体需要通过获取更多有用信息来自经无法有效的存储问题的状态转移信息。针对较主的调整自身的行为以获得更大的回报,最终达到大连续状态空间的无模型问题,DeepMind团队于自主决策的目的。演化算法作为一种高效的启发2013年在Q学习 6 中引人了深度学习的思想,提式优化方法为加速DQN算法收敛提供了一种全出了一种基于值函数的深度Q网络(Deep Q新思路。文献 1 4提出了一种基

12、于深度强化学习Network,DQN)方法。DQN作为一种深度强化学的遗传状态分组算法,它是遗传算法和状态分组的习算法,有效的解决了状态空间连续且较大的无模结合,提高了深度强化学习在时间和资源效率方面型问题,但该算法在收敛能力上存在明显的不足。的学习性能;文献 1 5将遗传算法中的选择、变异目前影响算法收敛能力的因素主要有算法的过估和交叉模块添加到强化学习算法中,使用DQN及计问题 E8-10及探索与利用的平衡问题 1-1 3,对此已相关变体作为种群中的基本智能体,提出了血统进有众多学者对其进行了相关研究。化强化学习,一定程度上提高了DQN的算法性能。在解决DQN的过估计问题上,文献 8 提出

13、针对原始DQN算法收敛能力差的问题,有别了一种将行为选择和行为评估采用不同的值函数于上述对DQN算法的改进,文中从探索前期有利来实现的Double DQN算法;文献 9 提出了一种于算法训练的有效信息获取与利用的角度出发,提使用K个先前学习的Q值来生成当前动作估计出了一种采用DE算法为例的基于演化算法优化值,通过减少目标逼近的方差来稳定训练过程的平DQN网络参数的方法(DE-DQN)。采用演化算法均DQN算法(ADQN);文献 1 0 在传统时序差分的方式针对DQN的网络参数进行优化,通过演化(TD)的基础上提出了 N阶TD误差的概念,设计算法优胜劣汰的思想挑选出一套前期更加适合算了基于二阶T

14、D误差的双网络DQN算法,一定程法训练的网络参数,从而加快算法前期的执行效度上提高了DQN算法中值函数估计的稳定性,加率。针对CartPole-vl具体问题提出了基于“运行步长”和“平均回报”的两种适应度函数评价方式,速了算法的收敛能力。针对算法在平衡探索与利并通过实验仿真对比了两种评价方式的优劣。最后用的问题上,文献1 1 提出了一种自举DQN策在CartPole-vl环境上验证了文中所提出的DE-略,该算法使用随机值函数以计算和统计的方式实DQN算法比传统DQN算法具有更快的收敛速度。现多步的探索;文献 1 2 提出了在不同时间尺度上进行操作的层次化DQN(H-DQN)框架,为复杂环境中的

15、探索提供了有效的空间;文献 1 3 为避免使用e-贪心算法带来的缺陷,在DQN网络中增加参数噪声以使其具有更加充足的探索能力。西安工业大学学报automatic control1深度强化学习和演化算法1.1 DQN 算法起初,DeepMind早在2 0 1 3 年提出了第一代第44卷第2 期的DQN算法 7,相对于Q学习算法的改进主要不同体现在:采用神经网络的方式来替换Q表,并使用梯度下降的方式从原始数据中提取特征,从而对行为值函数(Q值)进行近似。参数为每层网络的权重及偏置,用表示采用值函数近似的方式来表示状态值函数。对于动作价值函数,Q学习所采用的是输人状态S的特征向量和动作A的方法,输出

16、对应动作的作价值Q(S,A);而DQN采用神经网络的方式只输人状态S的特征向量,动作集合有多少个动作就有多少个输出Q(S,A;,w)。这里动作是指有限的离散动作,常用于估计 S,A对的概率密度,图1 对比了Q学习与DQN的不同之处。随后,NIPS DQN在基本的 DQN算法的基础上使用了“经验回放”机制 1 6,通过创建一个经验回放池(Experience Replay Pool)来消除了数据间的相关性,图2 描述了DQN的训练流程。经验回放机制是由DeepMind团队创始人Hassabis 提出的。它将智能体与环境不断交互所产生的数据存储到一个记忆库中,在每一次网络参数更新时,均匀的从记忆曹

17、子建,等:演化算法的DQN网络参数优化方法221库中随机采样数据进行训练。由于训练样本所具有的随机性有效的打破了数据间的关联,从而使神经网络的训练收敛的更加稳定。NIPS DQN通过将训练得到的数据储存起来然后随机采样的方法降低了数据样本的相关性,提升了性能。状态(State)Q表(O-Table)动作(Action)(1)Q学习状态(State)(2)DQN图1 Q学习与DQN结构对比图Fig.1 A comparison between Q-Learning and DQN structureQ值(Q-Value)Q,值(Q-Value)Action1:Q,值(Q-Value)Action

18、m环境RewardStateMax Q(S,A;0)StateActionNextStateTerminateState batch每隔N步更新State1主网络(MainNet)CNN梯度更新TargetQbatch在Nature DQN被提出之前,利用神经网络来逼近值函数时,行为值函数Q与目标值(r十ymaxQ(s,a)所用的是同一张网络。这样就导经历回放池(ExperienceReplay)目标网络(TargeNet)CNNMaxQbatchTD误差图2 DQN结构模型Fig.2A model of DQN structure致了数据之间存在较强的关联性,一定程度上影响了网络的快速收敛。

19、为解决以上问题,NatureDQN17采用了一个新的目标网络来生成TD目222标。再通过一个专门的网络来评估策略更新参数,称为函数逼近网络。用于动作函数逼近的网络参数更新较为频繁,而用于计算TD目标的网络则按指定步数进行更新。以上的方式降低了Q值和目标Q值的相关性,从而提高了算法的性能。Na-ture DQN 采用了两个不同的网络来处理TD误差,以减少目标计算与当前值的相关性。经过对文献7 所提算法的不断优化,最终提出了受人们所熟知的DQN算法。与Q-learning类似,DQN采用的是随机梯度下降方式对神经网络的值函数进行更新,更新公式为0+1=0,+(r+maxQ(s,a;0.)-Q(s,

20、a;0,)vQ(s,a;0,)。1.2演化算法演化算法(Evolutionary Algorithms,EA)18)是一类基于自然界进化过程的优化算法。这类算法模拟了生物进化的过程,通过群体中个体的变异、交叉和选择等操作来逐步改进解的质量,从而寻找问题的最优解或者近似最优解。演化算法广泛应用于解决优化问题,如函数优化、组合优化、参数优化等。演化算法的优势在于其对问题的搜索空间的全局探索能力,以及对复杂、非线性、多模态的问题具有较强的适应性。常见的演化算法包括遗传算法(Genetic Algorithms,GA)19、进化策略(Evolution Strategies,ES)1s)、遗传规划(G

21、eneticProgramming,GP)201等。这些算法在不同的应用领域,如工程优化、机器学习 2 1-2 2、参数优化 2 3-2 4等方面都有广泛的应用。1.3差分演化算法差分演化(Differential Evolution,DE)算法于1996年文献 2 5提出,在解决优化问题中有着广泛的适用性。DE算法是在GA算法的启发下所提出的,其算法步骤与传统EA算法思想近似一致,主要由变异、交叉、选择这三个步骤所组成,在解决 NP(Nondeterministic Polynomial)难问题 2 6 上有着良好的适用性。对于解决最小化问题,可将其转换为minf()s.t.E 2 E RD

22、,式中:D为目标解空间的维数;ERD则代表可行解集。DE算法的关键步骤描述如下。变异u=ah+FX(c2一a)。西安工业大学学报对于变异算子的设定,通过在t代随机取样三个不同个体,来执行变异操作,F作为变异因子用来调控变异程度。交叉(U.,if(randb(j)CR)or j=rnbr(i)u=ati.,otherwise式中,j=1,2,.,D,CR与F功能相似,为交叉因子。选择utl if(f(ut)f(ai.,)Tc;if(f(u)f(i.,)通过选择将适应度值较好的个体进行保留,并(1)作为下一代种群的初始值。2基于DE的DQN网络收敛加速方法(DE-DQN)2.1DQN算法的局限性D

23、QN使用神经网络拟合连续状态空间,解决了Q学习算法在状态空间连续的情况下无法创建一个合适的Q表来存储所有的状态转移情况的问题。但由于DQN采用了神经网络来拟合环境中的每一个状态,而神经网络参数主要采用梯度下降法来更新,所以网络参数的训练一定程度上依赖于获取到的立即回报。DQN算法仍然存在很多局限性和缺陷 2 7-2 8,文中将从以下两个角度对DQN存在的缺陷展开论述。2.1.1较低的立即回报获取效率由于神经网络参数的训练主要依赖经验回放池中收集到的历史信息,而在DQN算法初期采集到的数据往往是未经训练的样本集,并且神经网络为随机参数初始化参数。如何更加有效的提升算法的执行效率,更多程度取决于神

24、经网络的参数。而在神经网络参数初始化阶段,往往无法保证能找到合适的参数来进行网络训练。并且由于经验回放池的存储大小有限,在算法前期,所存储的信息更多的为非训练信息,所获取到的立即回报值不一定对训练网络有效,所能正确引导智能体进行决策(2)的立即回报过少,无法有效的帮助网络收敛。并且,针对大多数问题模型而言,若属于密集回报型问题,则对算法的训练相对较好。但如果为稀疏回报问题时,大多数的状态转移对可能始终无法获得(3)有效的回报值。这样便导致算法重复了很多盲目第44卷,(4)(5)第2 期的训练,既浪费了时间也起不到应有的效果。2.1.2较低的探索效率虽然DQN采用的是在贪心算法基础上改进过的贪心

25、算法,但依旧无法达到合适的勘探效率 2 9-3 0。-贪心算法为%+1-a*=argmaxQ(s,a)m元(aS式中:m为动作数。虽然增加了值来对探索性进行一定的调控,但由于前期所学习到的经验有限,所以仍无法保证算法的执行能力。通常情况下,神经网络参数的初始化对算法前期的收敛起到了一定的把控,但前期所获得的稀疏回报往往不能满足网络的训练。较少的回报限制了探索的效率,即使是采用贪心算法也无法有效突破零回报的限制。2.2DE-DQN算法描述在 DQN中,与 Q学习的不同之处在于DQN采用神经网络替换了Q表,做到了Q学习无法实现的功能。但正如以上所述,神经网络的参数很大程度的决定着算法的收敛能力,梯

26、度下降的更新方式对计算要求较高。能够得到符合当前状态的最曹子建,等:演化算法的DQN网络参数优化方法aA,(6)三otherwisem223好输出才是神经网络的首要任务。如何有效的初始化神经网络参数信息对算法收敛起到了强有力的推动作用,但在绝大多数问题上,网络参数设定为随机初始化的方式。其无法保证初始信息对网络训练的合理性,若初始值较好,则可以促进网络的收敛,若初始值较差,则可能会增加算法的训练时长,影响其收敛速度。但对于网络参数初始化问题的本质而言,可以将其近似看作一种排列组合问题来进行分析。每一个网络参数存在多种可能性,通过普通的方式来对每一种参数的组合进行枚举是不切实际的,所以将问题建模

27、为一种组合优化问题并采用演化算法的方式来寻找最适合求解问题模型的网络参数。演化算法作为一种元启发的优化方法,已被广泛证实了其在解决NP难问题上所具有的高效性。由于元启发算法在解决组合优化问题上具有良好的适用性,所以文中提出了一种采用演化算法优化DQN网络参数以加快其收敛速度的方法。因为DE算法具有控制参数少、收敛速度快、收敛精度高及鲁棒性强的优点,所以文中采用DE作为演化算法的算法模型(DE-DQN),D E-D Q N算法框架如图3 所示。DE优化过程X,(Wi,W2.,w.)X.(Wi,W2.,w,)环境X.(Wi,W2.,W.):环境信息x,(Wi,W2.,w.)随机初始化网络参数种群输

28、出测试交将个体值逐一赋给网络最优网络参数图3 DE-DQN算法框架Fig.3Framework of DE-DQN algorithmDE-DQN的创新思想可以理解为使用DE算法在DQN算法正式训练之前对Q网络进行智能地调参。首先,将初始化演化算法的种群,这里的种群的个体是随机生成的Q网络,是最终演化目标的一个候选解。其次,进行演化操作,遍历种群内的每一个个体,进行公式(3)的变异操作,变异操作的目标是生成一个新的个体,该个体在解空间中与当前个体有足够的差异,以促使算法更好地探索整个搜索空间;每个个体进行公式(4)的交叉操作,是为了在新生成的解和原有的解之间进行权衡;利用公式(5)的选择条件,

29、根据适应度值在新生成的个体和原有个体之间进行比较,选出具有更好适应度值的个体。最后,在所有演化迭代后,将计算得到的最优个体输出给算法的正式训练部分。此外,在DE算法的使用方面,适应度函数的设置尤为关键,文中对适应度函数的评估方式针对224所采用实验的具体问题进行了设定,提出了两种适应度函数的计算方式,通过实验来对比两种方式的合理性。在传统的DE演化算法中,变异、交叉、选择这三个操作构成了算法的基本演化流程。而在演化算法方面,存在众多的算法模型及其改进,更好的改进方式对复杂问题的求解起到了更好的促1.初始化经验回放池D,可容纳N条数据;2.随机初始化当前网络和目标网络的结构;3.根据网络结构初始

30、化若干由网络参数所组成的个体a,并构成种群pop;4.对种群中的每一个个体进行评估;5.DE演化阶段(变异、交叉、选择);6.输出最优个体信息作为当前网络参数的初始化信息,并通过初始化动作值函数Q。;7.将赋给-,并通过0-初始化目标动作值函数Q;8.循环每一条轨迹,轨迹1,M9.初始化状态s1=a1通过函数对状态s1进行预处理,得到状态对应的输人特征:P1=9S1;10.循环轨迹中每个时间步:t=1,T11.以e的概率选择动作a,,否则选择行为值函数最大的动作,即:a,=argmax.Q(p(s i),a;);12.行为a.作用于模拟器,返回回报r,和下一幅图片a+1;13.令Si+1=sa

31、,i+1,继续通过函数对状态s+1进行预处理:P+1=9S+1;14.将当前转换序列(g,a t,r i,9+1)存入经验回放池中;15.从经验回放池中随机采样k个转换数据。假设其中一个转换序列为(9 i,a j,r i,9 i+1);16.TD目标y,为:y,=17.k个序列的损失函数为:J()=18.对J(0)执行梯度下降法:V0=19.更新网络参数:0=0+V0;20.每隔C步,更新一次0 取值。令-=0;21.轨迹内部循环结束22.全部轨迹循环结束输出:最优网络参数9;对于表1 中根据网络结构初始化种群个体及DE演化阶段的步骤,具体描述如下。2.3.1网络结构分析及编码方式对于算法所涉

32、及到的神经网络参数的构成,由输人层与隐藏层、隐藏层与隐藏层、隐藏层与输出层这三部分构成。由于强化学习为无监督学习问题,所以每次的网络输出同时也为下一迭代的网络输入,并由梯度下降的方式对参数进行更新。编码方式作为演化算法解决优化问题的一大西安工业大学学报进作用,这里初步采用传统DE演化的优化方式,仅针对优化问题进行验证。2.3DE-DQN 算法文中采用DE对DQN网络参数进行优化,其算法伪代码见表1。表1 DE-DQN算法伪代码Tab.1 Pseudocodes of DE-DQN Algorithm算法1:DE-DQN算法j+1是终止状态(r+maxQ(gi+1,a;0)j+1不是终止状态2(

33、3-Q(9,0,;:0);k台aJ()20,K台第44卷关键因素,合适的编码方式可以在一定程度上提升算法的优化性能。这里对神经网络参数的编码方式采用浮点型编码,其中个体的基因组成为以下四个部分:输人层与隐藏层连接的权重值;隐藏层的偏置项;隐藏层与输出层的权重值;输出层的编制项。个体的构建方式为1n2w1,i+22bi+1,wi+r-l.i+n,wH,-1,i+nbi+i-1,(7)第2 期式中:wli+1为第i层网络到第i十1 层网络的权值;bi+1为第i十1 层网络的偏置项,由于在输出层未设置偏置项,所以偏置的个数为i十n一1。通过以上的设定方式,便将神经网络的所有参数映射为一个个体,从而方

34、便后续的演化。2.3.2变异由于传统差分演化算法中的变异算子不能更好的引导个体收敛,所以采用DE/rand一to一best/1/bin变异方式来替换DE/rand/1/bin为U;(t+1)=Q,(t)+a(Qbest,j(t)一&r.;(t)+F(arg(t)-arn(t),(8)式中:i=1,2,NP,j=1,2,D;NP为种群大小;D为种群维数;F为缩放因子。通过以上步骤得到一个变异后的种群Ui。2.3.3交又采用二项式交叉的方式得到新的种群为Uj,if(randb(j)CR)or j=mbr(i)u=Qi.j,otherwise式中:CR为交叉率,通过交叉操作生成新种群ui。2.3.4

35、选择计算交叉后得到的种群u;的适应度值,通过Tab.2 Pseudocodes of the fitness function based on step length1.初始化:最大训练周期:max_iteration,经验回放池:memory,步长数组:Step2.For n=l:max_iteration3.将pop中的个体赋给DQN中的神经网络参数,生成对应个体的神经网络;4.标志位=false5.While(标志位=true)do6.步长(step)=1;累计回报R,=0;7.使用生成的神经网络选择当前状态下s,下的动作a,;8.通过将动作输人到环境得到反馈回报值r,以及下一状态si

36、+1;9.将得到的状态转系序列(s,a t,r,s r+1)存人经验回放池中;10.计算累计回报:R,=R,十r;11.状态转移:si+1sr;step=step+1;12.if st+1达到重置条件13.标志位=false;14.Break;15.Step(max_iteration)=step;16.ReturnStep曹子建,等:演化算法的DQN网络参数优化方法2.4适应度函数构建适应度函数的设定往往决定了种群的演化方向,如何在强化学习问题中设定合理的适应度函数,是算法优化的关键点。针对“CartPole-v1311实际问题提出了两种适应度函数的评价方法,分别为平均回报和运行步长,“Ca

37、rtPole-vl”会在下一节介绍。对于不同实验场景适应度函数的设定方式可能会不同,其具体设定如下。2.4.1基于运行步长的适应度函数评价方法第一种方式是针对问题模型所提出的一种适应度函数的评价方式。在规定的问题上,算法运行的步长通常是由短到长的逐渐过渡。在刚开始的训练初期,智能体必须经历必要的失败才提高算法后续的执行效率。智能体运行步数的长短可以更加直观的体现出算法的优劣,其适应度函数计算为Allep=2step:,(10)(9)式中:n为单次训练场景智能体的运行步长,其取值范围为 0,1 0 0 o;A ll_ s te p 为算法每次训练所消耗的步长总数;step为单步步长。运行步长的具

38、体评价方式设定见表2。表2 运行步长适应度函数的伪代码算法2:Fitness(运行步长)225与初始种群所得的适应度值进行比较从而挑选出优秀个体作为下一代的初始种群。2262.4.2基于平均回报的适应度函数评价方法第二种方式采用平均回报作为演化算法中的适应度评价函数,因为在算法进行训练时,若算法收敛速度越快,则获得的平均回报则会越多,当算法的收敛能力逐步提升时,平均回报值也会逐渐提升。该方法同时也可视作在第一种方式上的拓展,其适应度函数计算为Avgreward2R.Step式中:Step为每一次算法训练所消耗的步长;R,表示每次训练智能体所得到的回报值。其具体评价流程定义见表3。表3 平均回报

39、适应度函数的伪代码Tab.3 Pseudocodes of the fitness function based onaverage returns算法3:Fitness(平均回报)1.初始化:最大训练周期:max_iteration,经验回放池:memory,步长数组:Step2.For n=l:max_iteration3.将pop中的个体赋给DQN中的神经网络参数,生成对应个体的神经网络;4.标志位=false5.While(标志位=true)do6.步长(step)=1;累计回报R,=0;7.使用生成的神经网络选择当前状态下s,下的动作ai;8.通过将动作a输入到环境得到反馈回报值r.

40、以及下一状态Si+1;9.将得到的状态转系序列(si,a t,r t,s t+1)存人经验回放池中;10.计算累计回报:R,=R,十r;11.状态转移:s+1s,;step=step+1;12.If s+1达到重置条件13.标志位=false;14.Break;15.Avg(max_iteration)=R,/Step;16.ReturnAvg3实验与分析3.1实验环境介绍实验环境采用的是OpenAIGym下的开放式经典控制模型“CartPole-vl”,在原有模型的基础上对其进行了改进,并使用Matlab2018b进行仿真实现。CartPole作为一种研发和比较强化学习算西安工业大学学报法的

41、经典控制模型,具有更为复杂的状态空间和更好的适用性,其基本实验模型如图4所示。摆杆(11)小车图4CartPole-v1模型Fig.4CartPole-vl model“CartPole-v1”又称小车倒立摆模型,由底部的小车以及小车上方的摆杆组成,整个系统由十50N或一50 N的力所控制,是一个可以平衡但不能稳定的系统。通过在小车左右施加大小相同但方向相反的力,使小车在尽可能不动的情况下保持摆杆的平衡。小车固定在横轴上,因此在垂直(y)方向上无位移,仅在水平(x)方向上有位移和速度。在水平方向上,小车受到控制力、摩擦力以及摆杆支撑力水平分量的作用。其中,实验的目标是在有限的水平距离段内,通过

42、左右控制小车的移动方向来平衡小车上方的杆子。实验模型所涉及的参数信息见表46。文中对该模型环境的状态变量(State)、动作空间(Ac-tion)、倒立摆小车的运动空间、倒立摆平衡角度范围以及画面的谊染都重新进行了定义。其中状态变量(State)为4维,分别为小车位置(),小车速度(),摆杆角度(theta),摆杆角速度(theta_v)。动作分别为沿水平方向对小车的左侧或右侧施加50N的作用力,使其可以向两端进行移动。小车的移动空间为(一1 0,1 0)(游戏画面最左侧到最右侧),平衡角度范围为(一9 0,十9 0),超出移动空间或者角度范围,则认为此次控制结束。表4CartPole-vl状

43、态信息Tab.4CartPole-vl state description编号环境信息1小车的位置/m2小车的速度/ms-13杆的倾斜角度/()4杆的角速度/)第44卷X最小值最大值-10m+10m-.80+8-90+90-8+80第2 期Tab.5CartPole-vl action description动作1动作2小车左移小车右移表6 实验参数设置Tab.6Experiment parameter settings序号参数123456783.2实验结果及分析针对“CartPole-vl问题提出了两种适应度函数的评价方式,以下对比了采用这两种不同的适应度评价方式所得到的实验效果。其中DE算

44、法所采用的参数设置为:NP=10,F=0.5,CR=0.3,G=10;随着种群个数及演化代数的提升,算法在时间层面上的消耗也会响应增加,所以文中将种群个数及演化代数同时取值为1 0,通过如下的实验分析来说明算法的有效性。在文中的实验中,对比DE-DQN300DQNDouble-DQN250Dueling-DQN200150100500图6 是DE-DQN依据步长作为适应度函数评价指标并与DQN及其改进算法Double-DQN、Dueling-DQN在算法运行50 0 0 个场景时的实验结果分析,其中设置运行代数为1.0 0 0 代,并取算法运行5次的平均值作为结果输出。从图6 实验结果可以看出

45、,DE-DQN在算法曹子建,等:演化算法的DQN网络参数优化方法表5CartPole-vl动作信息名称学习率折扣因子贪心系数NP种群数/个D个体维数F缩放因子CR交叉率G演化代数/次1.000.950.900.850.800.750.700.650.60200400600800运行代数/次(a)运行步长图5采用运行步长作为适应度函数训练1 0 0 0 代的对比图Fig.5 Comparison of the four algorithms in 1000 timesteps using step length as fitness function227图的横轴代表算法的运行代数/次,每个运行

46、代数是由许多时间步(timestep)构成的,表示的是智能体从开始到结束的整个决策过程。纵轴的值为平均回报/运行步长,表示的是智能体在每个时间步上进行决策后收集的数据,根据适应度函数的设计不同,每次训练收集的数据也不同:当以平均回报取值为适应度函数时,在智能体做出动作后记录其行为0.95代来的奖励值,用于判断当前策略的好坏;当以运0.95行步长为适应度函数时,记录智能体的存活周期,*0.997用于判断当前策略是否能让智能体尽可能地探索。10,+3.2.1基于运行步长的适应度函数评价方式的实1142验分析0.5图5采用基于运行步长的适应度评价方式对o,1DE-DQN和 DQN 及其改进算法Dou

47、ble-DQN、10,+8Dueling-DQN在“CartPole-v1”环境中进行了对比,并从算法运行步长、平均回报及累积回报进行对比分析,其中设置运行代数为1 0 0 0 代,并取算法运行5次的平均值作为结果输出。由图5(a)可以看出,DE-DQN在算法起初的运行步长上,效果相比DQN略有提升。并且从图5(b)中也不难看出DE-DQN所得到的平均回报相较于DQN更多。从累计回报的角度来分析,DE-DQN依旧比DQN更具有优势,同时在整体步长及回报上优于DQN改进算法。DE-DQN1000DQNDouble-DQNDueling-DQN0200400600800运行代数/次(b)平均回报运

48、行初期,其结果无论是通过小车保持平衡的步长、平均回报还是累计回报来看,都具有更好的效果。从图6(a)可以看出,DE-DQN在算法初期相比于DQN具有一定的优势,并且在算法训练3 0 0 0代时出现了明显的提高,DE-DQN算法提升了模型的训练程度,促使小车可以运行更多的步长以保-DE-DQNDQN800FDouble-DQNDueling-DQN400F200F0200400600800运行代数/次(c)累计回报228持杆的平衡,而DQN则在算法训练50 0 0 代时才略有起色。从图6(b)平均回报的数据结果来看,DE-DQN在算法训练3 0 0 0 代时有明显提升,加速了算法的收敛,而DQN

49、则由于算法前期的盲目搜索存在收敛慢的情况。图6(c)中累计回报的结果也表明DE-DQN具有更好的效果。-DE-DQN10001.00-DE-DQNDQN800-Double-DQNDueling-DQN6004002000算法DE-DQNDQNDouble-DQNDueling-DQN3.2.2基于平均回报的适应度函数评价方式的实验分析图7 采用基于平均回报的适应度评价方式对DE-DQN和 DQN及其改进算法 Double-DQN、D u e l-DE-DQN300DQNDouble-DQN250Dueling-DQN200150W100500西安工业大学学报从表7 实验数据可以看出,DE-D

50、QN相比DQN而言,在运行步长上提高了8 2.7%,在平均回报上提升了1 8.1%,在累计回报方面提升了2 5.1%。所以由此可以得出结论,运行步长可以作为演化算法模块中的适应度函数评价方式。DQN45000.95Double-DQN0.90Dueling-DQN回0.8 550.800.750.700.650.601000200030004000运行代数/次(a)运行步长图6 采用运行步长作为适应度函数训练50 0 0 代的对比图Fig.6 Comparison of the four algorithms in 5 o00 timesteps using step length as fi

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 论文指导/设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服