论文阅读

Butyrev L, Edelhäußer T, Mutschler C. 移动机器人运动规划的深度强化学习[J]. arXiv 预印本 arXiv:1912.09260, 2019。
文章地址


Deep Reinforcement Learning for Motion Planning of Mobile Robots

  • 论文阅读
  • 一、INTRODUCTION
  • 二、BACKGROUND ON REINFORCEMENT LEARNING
    • 2.1 马尔可夫决策过程
    • 2.2 强化学习
    • 2.3 DDPG
    • 2.4 运动学模型
    • 2.5 动态约束条件
    • 2.6 Problem Formulation
  • 三、评估
    • 3.1 模拟和训练设置
    • 3.2 RL代理的训练参数
    • 3.3 训练期间的优化
  • 四、研究结论


一、INTRODUCTION

  路径规划是移动机器人中一个著名的研究热点。根据环境的动态性质和被认为的物理约束,它很快就会变得复杂。此外,在许多现实世界的应用程序中,移动机器人面临着高度动态的环境和直接环境的频繁变化,需要快速的反应时间。
  为了解决全运动估计问题,本文使用了深度强化学习的最新进展,并教机器人实时生成服从运动学和动态约束的可行轨迹。模拟环境模拟了真实机器人平台的环境和物理约束。我们生成随机目标状态,并让一个基于深度确定性策略梯度(DDPG)[15]的深度强化学习(RL)代理在试错的基础上与模拟器交互,以解决连续状态和动作空间内的运动规划问题
  本文的主要贡献如下:
我们将问题形式化,并描述了我们的奖励系统和RL代理的实现。在模拟环境中使用深度RL代理来评估我们的方法,模拟环境也模拟秒之前的机器人和环境物理。

二、BACKGROUND ON REINFORCEMENT LEARNING

  强化学习背后的关键思想是一个与环境相互作用的代理,图2.在每个时间步中,代理接收观察st,即关于当前状态的一些(部分)信息,并根据观察选择动作。环境会奖励或惩罚这一行为:
在这里插入图片描述

2.1 马尔可夫决策过程

  一种满足马尔可夫性质的强化学习任务,即未来状态的概率不仅依赖于状态st,而不依赖于以前的事件,被称为马尔可夫决策过程(MDP)。对于一组状态,一个∈S,动作一个∈A,并奖励一个具有马尔可夫动力学的控制过程在时间t=0,1,…定义为:
在这里插入图片描述

2.2 强化学习

  我们使用状态值函数vπ(s)来表示给定策略π下的状态s的值,即给定代理从状态s开始并根据π行为的预期总奖励。因此,一个国家的价值被定义为未来折扣奖励的(预期)总和
在这里插入图片描述
  其中E[·]表示预期值,t是任何时间步长,而γ∈[0,1]是有利于即时奖励而不是未来奖励的折扣因素(这也决定了未来奖励的考虑程度)。强化学习的目标是最大化来自初始状态的预期未来折扣奖励
  策略π:S→P(A)将状态的∈S映射到∈A上可用操作的概率分布。由于代理的未来行为是由策略π定义的,状态转换是由转换动力学p(st+1|st,st,at)定义的,因此我们可以估计在任何给定状态下我们可以期望的未来奖励。
  类似地,我们可以将在策略π下执行操作的状态a的值定义为从s开始、执行操作a和策略π之后的预期返回:
在这里插入图片描述
  它被称为策略π的(状态)操作值函数。递归公式描述了状态值和继态值之间的关系,也通常被称为vπ的贝尔曼方程。学习最优动作值函数是强化学习的中心目标之一。流行的方法是动态编程、上和外策略单卡洛测量、时间差学习和Q学习。

2.3 DDPG

  基于价值的强化学习,如Q-学习,具有较差的收敛性,因为价值估计的缓慢变化对该策略具有很大的影响。相反,基于策略的强化学习会直接更新策略,但通常会收敛到局部最优值。
  Actor-critic方法结合了两个世界的最好的一方面,见图3我们没有直接估计状态动作值函数,而是使用两个独立的组件来估计状态动作值函数。当一个评论家估计了状态-动作对的价值时,一个演员采取了一个状态st,并从这个状态内估计了最佳的动作。
在这里插入图片描述

2.4 运动学模型

  虽然我们的应用假设一个差分驱动移动机器人,我们用独轮车建模机器人与更清晰的物理解释,因为两种运动学都是等价的[22]。因此,其配置由q=[xyθ]T给出,具有车轮方向θ和车轮与地面的接触点(x、y)。该运动学模型被描述为:
在这里插入图片描述
其中,ν是速度,ω是转向速度。

2.5 动态约束条件

  我们还考虑了从真实的物理机器人平台中已知的物理限制。我们限制了线性加速度∆ν和角加速度∆ωtarget通过
在这里插入图片描述
  在每个时间步长dt中。由于我们需要防止机器人翻转,我们还包括离心力限制:
在这里插入图片描述
  我们还限制转向限制在最大速度|ν|≤νmax和角速率|ω|≤ωmax。

2.6 Problem Formulation

  根据我们的运动学模型,我们描述了一个由(x,y,ν,θ)T表示的状态,其中x和y是机器人的笛卡尔坐标,ν它的线速度,和θ它的正向方向。
  要正式化我们的运动计划,请考虑图4机器人的任务是从开始状态s0到达目标状态sg。我们考虑了一个具有漂移动力学和控制输入的随机有效性的控制仿射非线性动态系统。两者都是未知的,但假设都是局部利普希茨函数,即局部常数。我们还假设控制有效性函数是有界的。
  我们的RL代理从我们的环境接收一个新的观察ot和一个针对当前和过去动作的每个时间步t的转发。我们通过=(d,θ,ΔV,Δθ,Φ,)定义一个观测值,其中(d,θ)是机器人框架中目标位置的极坐标,ΔV是电流对目标速度的残差,Δθ是(全局)电流对目标方向的残差,并且(v,Φ)是机器人的实际速度和转速。后两个环境确保了我们的代理有一个完全可观察到的环境。
  我们放松了运动规划约束,允许机器人只要其运动矢量正确,就能前后达到目标状态。因此,速度∆ν的残余值为νf−|ν|和
在这里插入图片描述
然后,我们将∆θ正常化为]−π,π]。
在这里插入图片描述

三、评估

  我们使用一个模拟器。培训我们的RL代理。V-B)。我们评估了在培训过程中代理的优化情况。在我们展示我们的基于RL的方法的效率之前。V-D)。我们还在一个复杂的用例场景中评估我们的方法。V-E)。

3.1 模拟和训练设置

  为了训练和测试我们基于rl的运动规划器,我们在OpenAIGym框架内实现了环境,即运动动力学约束、运动学模型、我们的奖励系统,以及动作、观察和状态方案。我们实现了一个步长为dt=0.1s的离散形式,并应用了以下运动学约束:
在这里插入图片描述

  为了让我们的代理学习,我们生成随机的星状态和目标状态对。我们将它们变换为开始状态在原点(0,0),其初始方向指向正x轴,并从均匀分布中采样其速度(0…vmax)。我们在与原点距离0.5m…5.0m的距离内均匀采样的位置内生成与局部帧相关的目标状态。我们也均匀地采样了目标的方向和速度。注意,我们允许向后或向前到达目标状态,即,方向然后以负速度旋转180度。
  如果代理在e<0.5的阈值内达到最终的目标状态,它将获得奖励R=100。我们使用网格搜索来评估奖励R∈{1,10,100}。如果代理需要超过200步来达到目标,我们将结束这一集。在这种情况下,最后的奖励是立即奖励rt。
  对于培训和测试,代理和模拟器都在台式机上运行,这台机器配备了IntelCorei7-7700CPU@3.60GHz(4核,8个线程)、32GB内存和一个具有8GB内存的NvidiaGeForceGTX1070。我们用Python实现了我们所有的算法。

3.2 RL代理的训练参数

  我们的DDPG代理为演员和那些有类似设计的评论家使用了两个独立的网络。两者都使用一个输入层、三个完全连接的隐藏层(每个都有200个神经元)和一个输出层。隐藏层对于近似值函数中的非线性是必要的。演员和评论家都在输入层接收观察向量。演员的输出还连接到评论家的第二层隐藏层。我们使用线性动作(ReLU)来处理批评者的输出层,并在所有其他情况下使用坦克激活。当我们以恒定值为0.1来初始化所有偏差时,我们通过从正态分布N(µ=0,σ2=0.1)和0.1中采样,通过从N采样(µ=0,σ2=0.3)来初始化评论家的权重。
  对于使用反向传播的训练,我们使用当优化器。在我们的DDPG代理中的探索使用了一个简单的ε-贪婪算法。我们通过网格搜索评估以下组合,以找到培训的最佳超参数(最佳粗体设置):学习率参与者(α∈{10−1,10−2,10−3,10−4,10−5},β1=0.9,β2=0.999,ε=10−8)学习率批评者(α∈{10−3,10−4,10−5,10−6,10−7},β1=0.9,β2=0.999,ε=10−8),折扣因子γ∈{0.5,0.8,0.9,0.95},批量大小∈{500,1000,2000}(由于与培训时间成间接比例而没有影响)、探索概率ε∈{0.5,0.75},探索变化σ∈{3.0,5.0},内存大小(50000)和软更新因子τ=0.1.
  对于该测试,我们设置了ε=0,以充分利用该策略。当参与者的直接输出是一个贪婪动作时,我们通过从以贪婪动作为平均值的正态分布中抽样来选择一个非贪婪动作:a0=N(a,σ)。训练中的方差定义了动作的随机性:随着方差的增加,我们更有可能选择随机动作。

3.3 训练期间的优化

图6显示了训练期间每个状态维的距离/误差,即位置距离、角距离∆θ和速度距离∆ν。由于我们现在只关注每个维度的优化,我们对y轴进行比例放,以百分比显示结果(最大位置距离为14.0m,最大角距离为179.7◦,最大速度距离为3.88m/s)。代理运行到第250集的虚线的剧集(直到那时)只被用来填充重播内存。它们是使用随机初始化的策略生成的。
在这里插入图片描述

四、研究结论

  本文提出了一种基于深度强化学习的运动规划方法。与之前在运动规划方面的研究相比,我们的算法并不先验或按需计算轨迹规划,而是提供了一连串的控制命令,我们可以直接使用它来控制机器人。我们的方法使用了一个奖励函数,状态表示和一个框架,我们用来训练一个深度确定性策略梯度(DDPG)代理。我们在模拟环境中评估了我们的方法,并将其与样条插值进行了比较。我们还证明了我们的方法在一个持续提供更新的目标状态的动态用例中的适用性。