首页> 中国专利> 一种基于近端策略的铁路纵断面设计学习模型的构建方法

一种基于近端策略的铁路纵断面设计学习模型的构建方法

摘要

本发明公开了一种基于近端策略的铁路纵断面设计学习模型的构建方法,涉及深度强化学习理论在铁路智能选线领域的应用,是一种基于近端策略算法(Proximal Policy Optimization,PPO)的铁路纵断面方案智能设计方法。发明构建了基于近端策略优化的铁路纵断面设计学习模型,结合铁路纵断面切割线模型以及深度强化学习理论,定义了切割线模型中的状态向量、动作向量,利用奖励函数处理了铁路纵断面设计中的各种约束,同时给出了铁路纵断面成本奖励函数的形式。自动优化后的纵断面方案能综合考虑工程费用和运营环境,较好地绕避障碍物和适应地形,为工程设计人员提供前期设计参考。

著录项

  • 公开/公告号CN114861368A

    专利类型发明专利

  • 公开/公告日2022-08-05

    原文格式PDF

  • 申请/专利权人 中南大学;

    申请/专利号CN202210659378.7

  • 申请日2022-06-13

  • 分类号G06F30/17(2020.01);G06F30/27(2020.01);G06N3/04(2006.01);G06N3/08(2006.01);

  • 代理机构

  • 代理人

  • 地址 410083 湖南省长沙市岳麓区麓山南路932号

  • 入库时间 2023-06-19 16:16:00

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-09-12

    授权

    发明专利权授予

  • 2023-03-28

    实质审查的生效 IPC(主分类):G06F30/17 专利申请号:2022106593787 申请日:20220613

    实质审查的生效

  • 2022-08-05

    公开

    发明专利申请公布

说明书

技术领域

本发明涉及深度强化学习理论在铁路智能选线领域的应用,是一种基于近端策略算法(Proximal Policy Optimization,PPO)的铁路纵断面方案智能设计方法。

背景技术

强化学习是一种通过智能体与环境交互的过程中,不断学习和优化策略来最大化奖励或者实现特定目标的机器学习方法。传统的强化学习方法一般利用价值迭代、策略迭代、Q学习来求解贝尔曼最优方程。当待解决的问题所涉及的环境特别复杂的时候,智能体所处理的信息会不断增大,如果继续采用上述方法,迭代过程则会十分复杂和漫长。随着近年来深度学习的急速发展,运用深度学习的非线性特点来求解强化学习问题,则逐渐流行开来,形成了深度强化学习理论,发展出了不同的深度强化学习算法,这些深度强化学习方法已经在Atari游戏、路径规划、机器人控制等研究领域得到广泛应用,其中近端策略优化算法应用最普遍。

发明内容

本发明利用强化学习理论,构建了基于近端策略优化算法的纵断面设计学习模型,主要发明内容如下:

(1)本发明首先构建了纵断面切割线模型,设计了变坡点的运动方式,得到了变坡点坐标的计算方法,构建了强化学习问题中环境的运动学模型;并定义了纵断面切割线模型的目标函数、设计变量和约束条件,为后续强化学习要的素定义打下了理论基础;

(2)然后基于强化学习理论,结合纵断面切割线模型,定义了强化学习要素,明确了状态向量、动作向量的形式,设计了成本奖励函数和违约奖励函数,构建了纵断面智能设计的强化学习模型;

(3)最后将PPO算法引入了纵断面切割线模型,就变坡点数量优化过程中所涉及到的维度和状态更新方式问题,提出了设计有效维度的解决办法;定义了线路中桥隧的划分方式,并提出名义造价,按统一标准估算成等量土石方造价,统一了成本奖励函数,便于算法的训练;说明了基于PPO算法的纵断面强化学习模型的具体实现方法,给出了技术路线。

有效维度指对于算法输入输出向量进行特殊处理,在进行相关计算的时候,只计算对应于当前变坡点数的维度数内的数据。这样的设定保证了神经网络对输入、输出维度固定的要求,也保证了在优化过程中相应的向量维度不会溢出,同时实验证明,也不会对算法的收敛造成影响。

有效维度的使用同时带来了不同变坡点数的方案之间相互学习的难题。为此本发明提出一种重启机制。当上一个状态的变坡点数量为n

模型的内部设计步骤为:

Step1、初始化纵断面切割线模型以及近端策略优化算法,得到初始纵断面方案、初始状态向量,以初始纵断面方案作为基准方案;

Step2、输入状态向量,近端策略算法输出动作向量;

Step3、纵断面切割线模型判断变坡点数量是否改变,如改变,则重新生成最新变坡点数量的纵断面方案,并作为新的基准方案。在基准方案上叠加动作,得到新的纵断面方案;

Step4、计算新的状态向量,计算此次更新的奖励值;

Step5、记录保存s

Step6、重复Step2——Step5,一定步数后,PPO算法中神经网络开始更新网络参数,即更新策略;

Step7、达到终止条件,算法收敛,强化学习成功。

模型的技术路线图见附图1。

附图说明

图1为模型的技术路线图;

图2为深度强化学习图;

图3为PPO与环境的交互图;

图4为评论家网络更新流程图;

图5为PPO-Clip中行动者网络更新流程图。

具体实施方式

首先介绍一下深度强化学习理论。

利用深度神经网络的非线性近似来逼近强化学习问题的最优价值函数或者最优策略的方法叫做深度强化学习方法(见附图2),可以分为基于值函数的深度强化学习算法和基于策略的深度强化学习算法。

(1)基于值函数的深度强化学习算法

基于值函数的深度强化学习算法会建立一个由参数θ(即神经网络权重w和偏置项b)描述的函数

构建了价值函数的近似表示,强化学习问题就转变为求解近似价值函数参数θ。使用深度神经网络非线性近似价值函数,对于状态价值函数:

其中,非线性函数σ称为神经元的激活函数,b为偏置项。利用深度神经网络中的反向传播算法和梯度下降算法,不断迭代深度神经网络参数w、b,使得价值函数趋近于最优价值函数,可以通过常用的"ε-greedy"策略进而确定最优策略来选择执行的动作,解决强化学习问题。

(2)基于策略的深度强化学习算法

而基于策略的深度强化学习算法,则是直接利用深度神经网络非线性近似策略,通过计算策略期望总奖励来迭代策略参数进而逼近最优策略。即在解决强化学习问题的时候,采用参数为θ的深度神经网络来表示策略π,优化参数θ即是优化策略π。传统的策略梯度算法的主要思想是,在时刻t,将智能体与环境交互得到的状态s

假设基于策略π一个完整的回合(episode)是智能体从初始状态s

e={s

则回合e出现的概率为:

p

最基本的基于策略的深度强化学习算法优化的是一整个回合的策略期望总奖励。定义从初始状态s

它的期望为:

与基于值函数的深度强化学习算法不同,基于策略的深度强化学习算法一般直接采用梯度下降的方法更新策略来最大化期望总奖励。可以定义N个回合,每回合T个时间步的累计奖励的策略梯度为:

经历多个完整的回合后,利用N次采样来近似累计奖励的期望,参数θ由下式更新:

式中:

η——学习率,控制参数更新的速率;

基于值函数的深度强化学习算法和基于策略的深度强化学习算法的区别在于,前者基于环境信息输出所有动作的价值,智能体只会选择价值最大的动作,这种方法中的动作是离散的。而后者根据环境信息,输出所有可能采取动作的概率,智能体可以根据概率选择下一步的动作,每一种动作都有可能被选中,因此采用这种方法可以解决连续动作问题。

铁路纵断面设计涉及诸多因素,线路的最终走向由环境、地形、地质等因素决定,其设计方法或者设计策略无法简单地由线形模型求解得出。但是深度学习的非线性特性就可以解决这一问题,深度学习通过激活函数可以较好地建立一系列特征到结果的非线性映射关系,这就为了深度学习在选线领域的应用奠定了基础。然而,选线设计工作尤为复杂,单纯的有监督学习需要大量的带有标签的数据,在选线领域,尽管有大量的线路方案资料,一方面由于这类资料比较难转化为深度学习所能利用的量化数据,另一方面则是由于不同的地形即线路数据差别太大,难以进行有效的训练。强化学习是一种无监督学习,可以无需大量的带标签数据,让智能体自己寻找解决问题的策略。将深度学习和强化学习结合起来,是一种实现铁路选线涉及人工智能化的有潜力研究方法。

(3)常见的深度强化学习算法

深度强化学习算法经过这么多年的发展,已经拥有了不同网络结构、不同更新参数方法的算法。Minh等人提出的深度Q网络(Deep Q-Network,DQN),开创性地提出了经验回放机制,消除了样本间的相关性,同时加入目标Q值网络,提高了算法稳定性,该算法在离散动作问题表现优异;基于此改进的深度双Q网络(Deep Double Q-Network,DDQN)中有两套网络结构,即两套参数θ和θ

常见的基于策略的强化学习方法有策略梯度算法和REINFORCE算法。现在应用最广泛的深度强化学习算法集合了值函数和策略的概念,最基本的算法就是行动者——评论家(Actor-Critic,AC)算法。AC算法拥有两套网络结构,一套叫做Actor,依据概率选择行为,即策略系统;另一套叫做Critic,Critic根据Actor选择的行为对行为进行评分,即价值系统。Actor再根据Critic的评分修改自身参数,进而修改选择行为的概率。AC算法中,由于Critic网络比较难收敛,而Actor网络的更新又十分依靠Critic网络的价值判断,导致整个AC算法收敛就变得十分缓慢。

为了解决AC算法收敛慢的问题,Lillicrap等人基于确定性策略梯度(Deterministic Policy Gradient,DPG)方法,结合DQN思想,提出了一种深度确定性策略梯度(Deep Deterministic Policy Gradient,DDPG)算法。DDPG算法与AC算法一样拥有基于值函数的网络和基于策略的网络,由于引入DQN的思想,前者又拥有状态估计网络和状态现实网络,后者则拥有动作现实网络和动作估计网络。策略网络结构里,动作估计网络用来实时输出动作,供Actor在现实里执行;动作现实网络则用来更新价值网络结构。价值网络结构里的两个网络都在输出当前状态的价值,但是状态现实网络的输入来自于两个部分,一个部分是动作现实网络的输出,另一个部分是状态观测值,而状态估计网络的输入来自于动作估计网络的输出。同时DDPG也利用了经验回放机制,实验表明,DDPG在连续动作空间的任务中,各项表现比DQN要好,同时学习过程、收敛速度都比AC算法要快得多。

原始的策略梯度算法对学习率、步数等参数更加敏感,因此在某些问题上更难训练。如果一个算法设定的步数比较大,会导致算法学习到的策略一直跳动,导致不收敛;相反地,如果步数比较小,则算法训练的时间会无限拉长。为了解决这个问题,信赖域策略优化(Trust Region Policy Optimization,TRPO)算法和近端策略优化(Proximal PolicyOptimization,PPO)算法相继被提出,它们限制了新策略相对于旧策略的更新幅度,使算法更容易训练和收敛。同时PPO算法相较于TRPO算法,更容易实现,在大多数任务的表现都更为稳定,已经成为Open AI在强化学习问题上的默认算法,也成为适用性最广的深度强化学习算法之一。

本发明选用的近端策略优化(Proximal Policy Optimization,PPO)算法跟AC算法一样,是一种同时基于值和策略的深度强化学习算法,但为了限制策略更新的幅度,PPO算法拥有两个Actor网络、一个Critic网络以及保存试错数据的数据库。

如附图3所示,PPO算法拥有两个Actor网络和一个Critic网络,两个Actor网络分别为Actor_New网络和Actor_Old网络。智能体与环境交互得到状态s,输入到Actor_New网络中,然后Actor_New网络输出均值μ和方差σ,用来计算动作的正态分布,再从此分布中采样一个动作a输出到环境中,智能体实行动作a得到奖励r,并自动跳入到下一个状态s_,并作为下一次的输入s。把[(s,a,r),s_]存储到数据库中,并循环上述步骤。此过程中Actor_New不更新。

如附图4所示,训练一个完整的回合后,将最后一个时间步得到的s

V

至于Actor_New网络的更新则要利用到重要性采样理论。假设有两个分布p(x)和q(x),已知p(x)服从某一分布且不可积,且只能从q(x)中采样时,一个自变量x服从p(x)分布的函数f(x)的期望如下:

则公式(6)变为:

定义:

假设策略π和策略π′的分布相差不太远,则公式(11)变为:

将梯度变为似然函数,则公式(14)简化为:

为了保证策略π和策略π′得到的动作概率分布相差不太远,目前一共有两种方法。第一种是利用KL散度来计算得到两个分布的差异惩罚加入到PPO算法的似然函数当中,称为PPO-Penalty算法(本文称作PPO1算法),即:

第二种则是对似然函数进行一定程度的裁剪,称为PPO-Clip算法(本文称作PPO2算法),即:

要更新Actor_New网络就必须利用上述似然函数计算a_loss。将经验池中存储的所有s输入到Actor_New网络和Actor_Old网络中,输出μ

综上所述,PPO算法流程见表1:

表1 PPO算法流程

根据测试结果,PPO2的表现优于PPO1,故本发明的实际结论都使用PPO2即PPO-Clip。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号