APP下载

基于势能与好奇心机制的室内环境导航研究*

2023-02-02赵东杰

传感器与微系统 2023年1期
关键词:室内环境障碍物状态

朱 林, 赵东杰, 徐 茂

(1.青岛大学 自动化学院 未来研究院,山东 青岛 266071; 2.山东省工业控制技术重点实验室,山东 青岛 266071)

0 引 言

路径规划是移动机器人执行导航任务中的重要组成部分[1,2]。对于室内环境,传统导航框架采用同步定位和地图(SLAM)[3]绘制未知环境,然后利用定位算法[4],通过路径规划模块确定机器人的当前位置并将其移动到目标位置[5,6]。传统路径规划方法包括人工势场法、基于图搜索方法、基于采样的方法[6,7]等。上述方法需要提前通过传感器建立导航地图,但构建地图是一项复杂的工作,如果环境发生改变又需要重新构建地图。所以,传统的路径规划存在地图依赖、实时性差、专家经验依赖[8]等问题。针对这种问题,人们提出了深度强化学习(deep reinforcement learning,DRL)[9]。

近年来,学术界和工业界对基于DRL的无地图导航开展深入研究并取得许多成果。Tai L等人[10]成功地将DRL应用于无地图导航,并可直接部署在真实的室内环境中。Long P等人[11]使用激光雷达作为输入,提出了一种基于近端策略优化(proximal policy optimization,PPO)的框架来避免多个机器人之间的障碍物。上述方法大多侧重于强化学习结构的改进,奖励值大多是稀疏的。通过设计合理的奖励函数,可以进一步提高强化学习的效果。

Pathak D等人[12]提出,Agent预测自身行为结果的能力可以用来衡量状态的新颖性或内在的好奇心。内在好奇心模块(intrinsic curiosity module,ICM)用于在强化学习过程中获取该信号,其预测误差可以作为一种内在奖励。从实验中可以看出,通过自我监督的方式学习到的内在奖励,可以激励Agent更好地探索当前环境,并使利用环境结构制定更有效的规划策略。

基于此,本文着重研究奖励函数设计,针对稀疏奖励下机器人实现路径规划效果不理想,本文设计出了针对于室内环境下的外部奖励;考虑到室内环境的复杂性所导致机器人容易陷入奖励局部极小值问题,本文结合ICM作为内部奖励对此类问题进行优化,在模拟环境中进行了一系列测试,证明了该模型的高效性。

1 理论背景

1.1 强化学习

将强化学习中的自主导航策略看作是一个马尔可夫决策过程(Markov decision process)[13]。在每一Step内,机器人都会接收到当前的状态信息st,动作信息at,随后过渡到下一个状态st+1,st+1遵循条件概率分布p(st+1|st,at)。机器人通过随机策略π选择动作,并在每次行动中获得奖励rt。强化学习的目标是学习最大累计回报Rt下的策略,Rt满足

Rt=

(1)

式中γ∈[0,1]为折扣因子,rt为机器人在某一时刻所获得的内在奖励与外在奖励之和。在这里,考虑回合性的强化学习情况,即在每个回合内,机器人在有限时间范围内获得的奖励最大化。

1.2 DRL

DRL与传统的强化学习不同的是,传统的强化学习受动作空间和样本空间大小的局限,且一般是离散的情境下。然而,比较复杂的、更加接近实际情况的任务则往往有着很大的状态空间和连续的动作空间。当输入激光雷达信息时,通常具有很高的维度,传统的强化学习很难处理,DRL的优势在于可以把深度学习对应的高维输入与强化学习结合起来。DRL框架如图1所示。

图1 DRL框架

对于无地图导航,DRL方法主要有2种:一种是基于价值的方法,通过更新价值函数使智能体学习到有效的策略;另一种是基于策略的方法,通过更新策略函数使智能体学习到有效的策略。本文选择基于策略的PPO算法[14]作为DRL方法。

2 本文方法

本文使用Turtlebot3作为导航机器人,由376维的激光雷达作为输入,使机器人在每一Step下获得对应信息。机器人在基于无碰撞的最优路径策略下完成路径规划任务。

2.1 外部奖励函数设计

外部奖励函数设计如下

(2)

式中φg为机器人到达目标点附近0.2 m处,判定为完成路径规划任务,同时获得正奖励80,目标点坐标更新,机器人返回初始位置并结束本回合;φo为机器人运动到距离障碍物0.1 m处,判定为任务失败,同时获得负奖励-40,目标点坐标不变,机器人返回初始位置并结束本回合。此外,根据实际室内环境大小与机器人最大线速度定义了最大步长Step,如果超过最大步长一样视为任务失败。同时,本文基于势能奖励塑造理论设计了机器人在每一状态st下的最短路径外部奖励函数和避障外部奖励函数。

2.1.1 最短路径奖励函数设计

机器人与目标点间距离的奖励函数rd

(3)

rd(st,at,st+1)=[φg(st+1)-φg(st)]×k1

(4)

式中 (xg,yg)为目标点坐标位置,(xc,yc)为机器人坐标位置,φg为机器人与目标点在欧氏空间中的直线距离;st为机器人当前状态,at为机器人在当前状态下的行为,st+1为机器人下一时刻的状态,k1为负实数。

机器人朝向目标点的奖励函数rθ

(5)

rh(st,at,st+1)=[φθ(st+1)-φθ(st)]×k2

(6)

式中φθ为机器人与目标点间的直线与机器人当前状态下的夹角,θ∈[0,π],abs为取绝对值,k2为负实数。

2.1.2 避障奖励函数设计

机器人与障碍物之间距离的奖励函数ro

(7)

ro(st,at,st+1)=[φo(st+1)-φo(st)]×k3

(8)

式中obs为激光雷达感知到的机器人与障碍物间的距离,k3为正实数。

考虑室内环境的特殊性,机器人完成任务途中需要穿过许多来自2个方向障碍物的狭窄通道,比如门、较窄的过道等。所以,本文设计了针对来自2个方向障碍物的避障奖励函数rb

(9)

rb(s,a,st+1)=[φb(st+1)-φb(st)]×k4

(10)

如图2所示,l1,l2分别为机器人车头与障碍物Obs1与障碍物Obs2的最短距离,l1与l3夹角为θ1,l2与l3夹角为θ2,l4为机器人当前朝向。一般来说,当θ1=θ2时,为机器人通过2个障碍物的最优路径,所以,将l3与l4的夹角定义为θ3得到了外部奖励函数rb。其中,k4为负实数。

图2 机器人避障最优路径示意

至此,得到了4个基于势能的外部奖励函数rd,rθ,ro,rb。基于势能的外部总奖励函数表示为

(11)

式中k(k<0)为每一步的惩罚值,用来刺激机器人完成任务。

2.2 内部奖励函数设计

图3 ICM结构

表1 Turtlebo3动作空间划分

(12)

(13)

式(12)为交叉熵损失函数表达式,式(13)为均方误差损失函数表达式。

内部奖励Ri表示为

(14)

由此,以外部奖励值与加权后的内部奖励值作为总奖励rt

(15)

其中,μi为内部奖励系数,μi>0。

2.3 PPO算法

将设计好的奖励函数结合PPO算法[14]作为DRL算法训练机器人完成导航任务。PPO的策略梯度表达式为

(16)

使用一层全连接神经网络作为状态提取层,将提取后的激光雷达状态信息与机器人当前状态作为输入,随后通过2层全连接神经网络构成的特征融合层,将特征融合后的状态分别输入Actor-Critic网络[15]。其中,Actor网络输出机器人动作概率分布πθ,然后通过SoftMax分类器得到动作at;Critic网络估计状态st处的状态值Vφ。在DRL训练中,πθ,Vφ与内部奖励中的正向模型和反向模型同时更新网络参数。算法框图如图4。

图4 算法框图

3 实验设计与结果分析

3.1 室内仿真环境搭建

考虑到机器人工作的真实环境,本文通过ROS和Gazebo搭建了2个室内仿真环境,2个环境分别模拟了2种不同的室内情景,如图5(a)和图5(b)。

图5 Gazebo搭建的室内仿真环境

环境1与环境2为12 m×12 m的封闭结构,模拟了真实室内大小。其中,环境1为静态环境,模拟了房间内杂物堆砌的场景;环境2为动态环境,模拟了两室一厅的场景,添加了2个移动的行人作为动态障碍物,增加了训练的难度。2个环境中的正方形用来表示目标点,目标点位置是随机在地图上生成的。

3.2 实验参数设置

本文的实验环境为CPU处理器、Ubuntu18.04,Python2.7,Pytorch1.12,ROS(Melodic),Gazebo9。实验参考如表2。

表2 实验参数

3.3 结果分析

将未添加外部势能奖励模型记为PPO,将添加了外部势能奖励模型记为PPOe,将添加了外部势能奖励与内部好奇心奖励模型记为PPOei,并将3种模型作为本文的实验结果作对比分析。如图6所示,在环境1、环境2中分别进行了800次、1 800次的迭代训练使得曲线达到收敛。图中平滑系数均为0.99的奖励曲线。每一回合的总奖励值越大,说明机器人在当前回合做出的正确行为越多,路径选择更优。

图6 3种模型在2个环境中的总奖励曲线

表3为3种模型在2个环境中的成功率。PPO模型在2个环境中都未能完成路径规划任务,PPOei模型相较于PPOe模型在环境1中的成功率提升了17.62 %,在环境2中成功率提升了7.77 %。

表3 3种模型在2个环境中的成功率

稀疏的外部奖励模型PPO无论是在简单环境还是复杂环境都无法完成路径规划任务,这是由于外部奖励信号弱,机器人在当前状态下得不到有价值的状态评估,因而采取盲目的探索方式进行训练;PPOe模型很好地解决了这一问题,但在训练中期发现,当机器人移动到存在多方障碍物的情况下,极易陷入奖励局部极小值,这时机器人很难逃离奖励局部极小值区域,因而会采取一种原地打转的保守策略,以避免碰到障碍物,在这种情况下,机器人很难完成任务;PPOei模型在此基础上优化了奖励局部极小值问题,从而加速了训练过程,提高了任务成功率。综上所述,PPOei模型相较于PPOe与PPO,在室内场景下表现出了更好的性能。

4 结 论

本文使用DRL方法实现机器人在室内场景下的路径规划,着重研究了奖励函数设计问题。首先证明了稀疏奖励条件下机器人实现路径规划任务的不可行性,随后设计了基于势能的外部奖励函数;针对奖励局部极小值引起的次优策略下最大奖励值过早收敛问题,使用基于ICM奖励作为奖励增强信号优化了此类问题。实验表明,PPOei模型相较于PPOe与PPO,在训练速度以及成功率上表现出了更好的性能。

猜你喜欢

室内环境障碍物状态
软装饰元素在室内环境设计中的应用
高低翻越
SelTrac®CBTC系统中非通信障碍物的设计和处理
赶飞机
状态联想
生命的另一种状态
多肉植物垂直绿化在室内环境中的应用探究
植物在航站楼室内环境中的应用
坚持是成功前的状态
室内环境下移动机器人三维视觉SLAM