Planet vehicle autonomous navigation method considering ground physical characteristics

09-05-2023 дата публикации
Номер:
CN116088525A
Контакты:
Номер заявки: 10-10-20239037.7
Дата заявки: 14-02-2023

考虑地面物理特性的星球车自主导航方法

附图说明

[0035]

图1为本发明实施例中考虑地面物理特性的星球车自主导航方法的流程图;

[0036]

图2为本发明实施例中步骤100的子流程图;

[0037]

图3为本发明另一实施例中考虑地面物理特性的星球车自主导航方法的流程图;

[0038]

图4为本发明实施例中步骤121的子流程图;

[0039]

图5为本发明实施例中深度图像特征提取器的结构示意图;

[0040]

图6为本发明实施例中彩色图像特征提取器的结构示意图;

[0041]

图7为本发明实施例中视—触融合自主导航网络框架的结构示意图。

技术领域

[0001]

本发明涉及自主导航技术领域,具体而言,涉及一种考虑地面物理特性的星球车自主导航方法。

具体实施方式

[0042]

为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。

[0043]

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。

[0044]

结合图1所示,本发明实施例提供一种考虑地面物理特性的星球车自主导航方法,包括以下步骤:

[0045]

步骤100、基于深度强化学习,构建关于星球车的自主导航模型。

[0046]

具体地,由于星球车的自主导航问题在数学上属于序列决策(序贯决策)问题,而深度强化学习是解决序列决策问题的方法之一,因此,本方法可基于深度强化学习理论构建关于星球车的自主导航模型。示例性地,基于马尔可夫决策过程(Markov DecisionProcess,MDP)构建关于星球车的自主导航模型(决策过程模型),以用于根据星球车的运行状态数据得到星球车的导航运动决策。

[0047]

步骤200、获取星球车的运行状态数据。

[0048]

通过步骤200进行星球车所在环境的感知。具体地,获取星球车当前的运行状态数据;其中,运行状态数据包括星球车自身的运行参数和星球车所在环境的相应数据(如地形数据等)。

[0049]

步骤300、将运行状态数据输入自主导航模型,输出得到星球车的导航运动决策。

[0050]

具体地,将步骤200获取的星球车的运行状态数据作为自主导航模型的输入,从而根据自主导航模型输出得到星球车下一步的导航运动决策(或移动控制指令)。

[0051]

步骤400、根据导航运动决策,控制星球车运动。

[0052]

具体地,根据步骤300得到的星球车下一步的导航运动决策来控制星球车进行下一步运动,实现星球车的自主导航,提升星球车的自主程度、智能程度以及对星球的探测效率。

[0053]

这样,本方法用于实现星球车等探测车(或探测机器人)在野外、星球表面等位置的自主导航探测。通过构建关于星球车的基于深度强化学习理论的自主导航模型,将星球车的运行状态数据作为自主导航模型的输入,从而输出得到星球车下一步的导航运动决策,以用于指导(控制)星球车下一步的运动。如此,一方面,本方法实现并提升了星球车的自主导航能力,便于星球车在脱离人工决策的情况下自主进行星球探测,提升了星球车的适应能力与运动能力,提升了星球车的自主程度、智能程度以及对星球的探测效率;另一方面,本方法绕过了传统导航方法(例如采用分治法思想的导航方法,将相应问题分解为规模更小的子问题进行逐个求解)中存在的计算量大、耗时长的步骤,实现了从环境感知直接到运动决策的端到端映射,提升了星球车进行星球探测任务的执行效率。

[0054]

可选地,运行状态数据包括星球车的运行参数数据与星球车所在处的环境数据。

[0055]

本实施例中,运行状态数据包括星球车自身的运行参数数据与星球车所在处的环境数据,以保证运行状态数据能够完整涉及星球车当前的自身数据与外界环境数据,从而保证运行状态数据作为自主导航模型的输入时自主导航模型能够输出得到适用于星球车在当前环境下进行下一步运动的导航运动决策,提升星球车的自主导航能力。

[0056]

可选地,星球车的运行状态数据可通过相应传感器(或监测机构)进行采集。示例性地,星球车自身的运行参数数据可通过用于采集自身相应运行参数数据的传感器(如六维力传感器、姿态传感器等)进行采集;星球车所在处的环境数据可通过用于采集星球车外部数据的监测机构(如相机、激光测距仪、超声波传感器等)进行采集。在一些实施例中,还可是使用经过辨识得到的地面力学参数作为轮地作用状态相关数据。

[0057]

可选地,结合图1、图2所示,步骤100包括:

[0058]

步骤110、构建关于星球车的待训练自主导航模型;

[0059]

步骤120、基于深度强化学习,采用仿真平台对待训练自主导航模型进行训练,得到自主导航模型。

[0060]

具体地,先通过步骤110,构建关于星球车的待训练自主导航模型,再通过步骤120对待训练自主导航模型进行训练,即基于深度强化学习理论,采用相应的机器人仿真平台(如Gazebo、V-REP、MuJoCo、Unity、Unreal Engine4、Nvidia Isaac等)对待训练自主导航模型进行训练,从而得到经过训练的自主导航模型。示例性地,将星球车的自主导航任务建模为马尔可夫决策过程,依据ROS操作系统在Gazebo中搭建相应的仿真环境,设计强化学习状态、动作、奖励函数等,从而搭建端到端的深度强化学习算法框架,以星球车的运行状态数据为输入,以星球车的运动策略为输出,让星球车在仿真环境中交互,训练端到端自主导航网络,得到自主导航模型。如此,采用深度强化学习,赋予了星球车强大的自学习能力和自适应能力,便于星球车通过与环境交互以不断改进运动决策,从而高效地应对环境可能给星球车带来的各种风险。

[0061]

可选地,结合图2、图3所示,步骤110包括:

[0062]

步骤111、构建关于星球车的基于马尔可夫决策过程的待训练自主导航模型。

[0063]

具体地,基于深度强化学习理论,将星球车自主导航任务定义为马尔可夫决策过程问题,从而构建相应的待训练的自主导航模型(记为待训练自主导航模型),并规定自主导航模型的输入为星球车的运行状态数据,而自主导航模型的输出为星球车的导航运动决策(或移动控制指令)。如此,以便结合基于马尔可夫决策过程的自主导航模型,对星球车自主导航的状态空间、运动空间以及奖励函数等进行设计,构建出端到端的深度强化学习网络框架,设计自主导航模型的训练流程及自主导航评价指标,训练得到用于实现星球车自主导航的自主导航模型。

[0064]

待训练自主导航模型包括五元组:<S,A,P,R,γ>;其中,S表示星球车的状态空间,A表示星球车的动作空间,P和R分别表示状态转移概率和奖励函数,并分别代表星球车采取动作a∈A使状态从状态s∈S转移到下一步状态s′∈S的概率和奖赏;γ∈[0,1]为折扣因子。

[0065]

具体地,马尔可夫决策过程是在环境中模拟智能体的随机策略与回报的数学模型,遵循马尔可夫性,即在给定当前状态及过去所有状态的情况下,智能体未来状态的条件概率仅取决于当前的状态,与过去状态无关:

[0066]

p(st+1|st)=p(st+1|s0,...,st)。

[0067]

自主导航模型包含5个主要元素,用五元组表示为<S,A,P,R,γ>。其中,S表示星球车的有限状态集合(状态空间){si}(i=0,1,…t);A表示星球车的有限动作集合(动作空间){ai}(i=0,1,…t);P为基于环境的状态转移矩阵,表示星球车在t时刻状态s下采取动作a后转移到t+1时刻状态s′的概率p(st+1=s'|st=s,at=a);R为奖励函数,表示星球车在状态s下,采取动作a后环境反馈的奖励R(st=s,at=a);γ为折扣因子(衰减率),取值区间为[0,1],表示未来状态对当前状态所获奖励的重要程度。

[0068]

另外,策略π是智能体在状态s下对动作a的描述函数,一般分为确定性策略和随机性策略。确定性策略为状态空间到动作空间的映射函数,随机性策略表示在给定环境状态时,智能体选择动作a的概率π(a|s)=p(at=a|st=s)。自主导航模型的目标是求解最优策略π*,最大化环境反馈的累积奖励(回报):

[0069]

[0070]

策略的优化过程为:智能体在t时刻获取状态信息s,然后根据自身策略π计算要执行的动作a,智能体执行动作后,获取新的状态信息以及环境反馈的奖励R。智能体根据奖励来评估运动策略的好坏并更新运动策略。在与环境持续进行交互的过程中,智能体根据收集到的交互经验不断学习并改善策略。

[0071]

通常用状态值函数Vπ(s)和状态—动作值函数Qπ(s,a)评估当前智能体在给定状态下的回报期望。状态值函数表示从状态s开始,遵循当前策略π所获得回报的期望值:

[0072]

[0073]

而状态—动作值函数Qπ(s,a)表示从状态s开始,在策略π下采取动作a的回报期望值:

[0074]

[0075]

可选地,结合图2、图3所示,步骤111之后,步骤110还包括:

[0076]

步骤112、设计星球车的动作空间A、状态空间S以及奖励函数R。

[0077]

具体地,对于步骤112,要实现星球车的移动,其基本的控制指令需包括星球车车体的速度v和角速度ω。因此,星球车的动作空间A设计为A=[v,ω]T,v和ω均可在各自的取值范围内连续变化。在采用仿真系统进行仿真时,将星球车的移动控制指令设置为连续值。星球车使用Ackermann转向方式实现星球车转弯;当v=0,ω≠0时,星球车将原地转向,而当v>0,ω=0时,星球车将沿直线前进。

[0078]

星球车的状态空间S主要包含四个部分:星球车的运动状态向量、轮地作用状态向量、相机深度图像序列和相机彩色图像。其中,星球车的运动状态向量和轮地作用状态向量属于星球车自身运行参数。对于星球车的运动状态向量星球车在导航过程中,需要获取自身相对于目标点的相对距离dt以及方位θt,以确定下一步动作,确保朝着目标点的方向移动,其中相对距离dt的计算公式为:

[0079]

[0080]

式中,表示当前时刻星球车的二维坐标,表示星球车的目标点的二维坐标,由于相对距离dt一般较大,需要对该值进行归一化:

[0081]

[0082]

式中,kd表示距离调节因子,地形范围越大时,kd取值越小。

[0083]

在已知星球车偏航角的条件下,目标点相对于星球车的方位角通过下式计算:

[0084]

[0085]

同样,需要对方位角作归一化处理:

[0086]

[0087]

另外,在星球车的运动状态中,还包括当前时刻星球车车体的线速度(其表示t时刻星球车沿前进方向的线速度)、(其表示星球车沿侧向方向的线速度)和角速度ωt,以及车体滚转角和俯仰角其中,星球车的前进方向与侧向方向互相垂直。

[0088]

对于轮地作用状态向量wi=[sl,sr,zl,zrlr,PCl,PCr]T,其包括星球车左前轮的滑转率sl、右前轮的滑转率sr、左前轮的沉陷量zl、右前轮的沉陷量zr、左前轮的侧偏角βl、右前轮的侧偏角βr、左前轮的牵引力系数PCl和右前轮的牵引力系数PCr。其中,车轮的滑转率表征地形的摩擦特性,滑转率越高,说明该地形的摩擦特性越差;车轮沉陷量表征地面的承压特性,承压特性越差,车轮的沉陷量越大;车轮侧偏角表征星球车在崎岖不平的地面行驶时,车体沿侧向的打滑长度,同样反映了地面的摩擦特性;牵引力系数表示在单位载荷下能够提供给车轮的牵引力,同样可以反映地形的摩擦特性和危险程度,该系数越低,星球车移动越困难。一般情况下星球车的前轮首先接触前方地形,能够在整个车体完全陷入危险时提前感知地形的物理特性,因此选择星球车两个前轮的轮地作用数据作为状态向量。

[0089]

对于相机深度图像序列,其由星球车上机载导航相机或避障相机获取,用于感知星球车前方地形的几何障碍,如岩石障碍和坡度较大的地形等。对于相机彩色图像Ci,其由星球车上机载导航相机获取,包含比相机深度图像更丰富的信息,用于对远程地形类别进行感知。

[0090]

对于奖励函数R,其包括目标点到达奖励函数、目标点接近奖励函数、车轮沉陷惩罚函数、车轮打滑惩罚函数、车体倾覆惩罚函数和车体碰撞惩罚函数。

[0091]

具体地,强化学习的目标是最大化星球车在导航过程中的总回报,奖励函数设计的优劣直接决定了智能体(星球车)能否快速有效地学习到正确的策略。为实现星球车的主动导航,本实施例设计了六种奖励函数:目标点到达奖励函数rar、目标点接近奖励函数rap、车轮沉陷惩罚函数rz、车轮打滑惩罚函数rs、车体倾覆惩罚函数ro和车体碰撞惩罚函数rc。其中,对于rar,到达目标探测点是星球车导航的最终目的;当星球车到目标点的距离小于一定范围时,视其到达目标点,星球车将获得较大的奖励。对于rap,星球车每执行一步动作,如果其与目标点更接近,则反馈一个正奖励,而如果离目标点更远,则反馈负奖励;该奖励函数可以引导星球车尽可能朝着目标点方向并以较高的速度行驶,以获得更高的奖励。对于rz,当星球车在松软地形中移动时,车轮会出现沉陷现象;过大的沉陷量会对车轮产生较大的前进阻力,因此需要对车轮的高沉陷情况作出惩罚,从而让星球车学习规避可能给车轮造成严重沉陷的地形区域;示例性地,由于星球车前轮最先接触前方地形,可以在整车驶入沉陷量较大的区域前及时采取避障措施,因此,可选择星球车左右前轮的沉陷量对该惩罚进行量化。对于rs,星球车的车轮在松软地形区域会出现打滑现象,在滑转率过高时星球车失速严重,能量消耗较大,甚至会导致其移动能力的丧失,因此,可利用星球车的左右前轮的滑转率(sl,sr)对该车轮打滑惩罚进行量化。对于ro,星球车需要尽可能在平坦地形中行驶,崎岖地形如陡坡、沟壑等存在车体倾覆的风险,因此根据星球车姿态设计倾覆惩罚函数。对于rc,星球车车体与岩石发生碰撞是非常严重的事故,轻则划伤车体,重则对车体和车轮造成损坏,因此,为保证星球车导航的安全性,当车体检测到碰撞时,则反馈一个较大的碰撞惩罚。综上,在自主导航模型中,在某一时刻环境反馈的奖励R为这六种奖励函数之和:

[0092]

R=rar+rap+rz+rs+ro+rc

[0093]

可选地,星球车所在处的环境数据包括星球车所在处环境的深度图像和/或彩色图像。

[0094]

星球车的运动状态数据是分析星球车在当前状态下采取相应导航动作的基础。本实施例中,运动状态数据中的环境数据包括星球车所在处环境的深度图像和/或彩色图像,其中,相应的深度图像、彩色图像由相应导航相机进行获取。对于深度图像,其包含星球车前方地形大范围的几何特征等,有助于星球车提前感知地形几何障碍并采取避障行为,深度图像序列包含导航历史信息,有助于缓解环境的部分可观察性;对于彩色图像,其能够感知地形纹理,进而区分地形类别等。

[0095]

可选地,结合图2、图3所示,步骤112之后,步骤110还包括:

[0096]

步骤113、设计星球车的视—触融合自主导航网络框架;

[0097]

步骤120包括:

[0098]

步骤121、基于视—触融合自主导航网络框架,采用仿真平台对待训练自主导航模型进行训练,得到自主导航模型。

[0099]

具体地,基于星球表面地形类别不同,其物理特性也会存在较大差异,但地形类别与地形物理特性之间难以建立直接的定量映射,因此虽然彩色图像数据能够一定程度上区分地形的类型差异,但其在没有辅助信息的条件下依然无法准确预测地形的物理特性。而在感知物体物理特性方面,触觉相对视觉(深度图像、彩色图像)更具优势,对于星球车来说,其触觉表现在车轮与地面的相互作用感知方面,如车轮的滑转率、沉陷量以及轮地作用力等轮地接触状态可以表征地形物理特性;然而,轮地作用感知接触区域受限,无法与星球车周围地形的物理特性建立联系。因此,在步骤113中,通过设计星球车的视—触融合自主导航网络框架,以将星球车的视觉感知与触觉感知相融合,利用视觉(深度图像、彩色图像)来预测星球车车轮在前方地形中可能感知到的轮地作用信息,当星球车行驶到预测区域时,利用真实的轮地作用感知(触觉)对视觉预测的结果进行反馈,使得星球车能够学习地形物理特性的估计(预测),实现步骤121中待训练自主导航模型的训练。如此,便于星球车利用视觉的预测结果与触觉的结果反馈对导航策略进行优化,以学习主动规避高滑转率、高沉陷的地形区域,从而得到合适的自主导航模型,进而保证导航运动决策的合适、可靠、安全。而且,通过采用本方法,使得星球车在主动导航过程中可通过学习感知地面的物理特性,有助于星球车对由于物理特性差异所引起的车体运动状态突变做出及时反应,以提前规避承压特性差和摩擦特性不足的地形,避免星球车的车轮发生较高的滑转率和沉陷量等,极大地提高了星球车的移动安全性,为星球探测任务顺利开展提供了安全保障。

[0100]

可选地,结合图5-图7所示,视—触融合自主导航网络框架包括深度学习特征提取部分和强化学习运动决策部分;其中,深度学习特征提取部分包括深度图像特征提取器、彩色特征提取器和运动特征提取器。

[0101]

本实施例中,视—触融合自主导航网络框架用于进行待训练自主导航模型的训练。其针对星球车导航相机获取的深度图像序列,设计深度图像特征提取器。示例性地,深度图像特征提取器使用卷积神经网络(CNN)作为编码器提取星球车深度图像特征以及作为解码器进行深度图重建。在一些实施例中,采用特征提取、聚类等方面能力更强的变分自编码器来替换上述的深度图像特征提取器中的卷积编码—解码结构。

[0102]

结合图5所示,深度图像特征提取器包括编码器、注意力模块、记忆力模块等。在深度图像特征提取器中,编码器用于对导航相机获取的深度图像数据进行编码;编码器之后与注意力模块连接,该注意力模块用于模仿生物观察行为,以增加对深度图像部分区域的观察细度,让神经网络主动找出深度图像中的观察重点,筛选出相应的关键特征并进行输出。示例性地,注意力模块首先使用1×1点卷积对卷积编码器输出的特征做通道间的加权求和,输出通道数为1的特征聚合层,再输入到Sigmoid激活函数中计算特征注意力掩膜,该掩膜表征原始特征图中各区域的重要程度;然后,将注意力掩膜与原始特征图进行像素级点乘以突出关键特征,并抑制无用的特征。注意力模块之后,将注意力模块输出的二维特征图展开成一维特征向量(深度图像特征向量)。利用编码器和注意力模块对深度图像序列中的每张图像提取特征后,将这些特征向量序列合成一组,并依次输入到记忆力模块(如LSTM)中,提取带有时间信息的深度图像特征向量,该特征向量将作为后续强化学习模块的输入。

[0103]

可选地,结合图5所示,深度图像特征提取器还包括解码器,用于实现深度图重建。具体地,深度强化学习算法由于需要智能体与环境进行大量交互改进运动策略,通常存在训练效率低的问题,因此,需要在训练过程中加入辅助学习任务,与强化学习模块共享特征提取器,来引入额外计算梯度,例如在深度图像特征提取器中,引入了深度图重建任务以提升自主导航模型的训练效率。示例性地,对于深度图重建任务,设计深度图像的卷积解码器,将由注意力模块输出的特征向量(深度图像特征向量)解码为重建图像,重建图像与原始深度图像尺寸一致;通过计算重建图像与原始深度图像之间的均方误差,更新编码器、解码器和注意力模块的网络参数。如此,通过设置相应的解码器进行深度图像重建任务,以约束编码器提取尽可能多的图像特征,增加注意力模块特征筛选的空间等。

[0104]

结合图6所示,对于彩色特征提取器。示例性地,彩色特征提取器中编码器的结构与深度图像特征提取器中的编码器相似,卷积层的输入通道数由1变为3。将编码器输出的特征图展开成一维向量,并经过一层全连接层后得到彩色图像特征向量。基于彩色图像可以识别地形类别,进而区分地形物理特性的差异;在彩色特征提取器中,添加轮地作用状态预测模块作为辅助训练任务。由于星球车在未来的轮地作用不仅和前方地面的物理特性有关,还跟地形坡度等几何因素有关,例如,坡度越大,车轮的打滑程序越大,且星球车的移动控制指令对车轮状态也存在影响。因此轮地作用状态预测模块同时以彩色图像特征向量、深度图像特征向量以及星球车的移动控制指令为输入,经过两层全连接神经网络后,输出下一时刻轮地作用向量的预测均值和方差;其中,预测方差表征视觉预测结果的不确定性。而且,利用下一时刻车轮的轮地作用数据,计算视觉预测结果的误差来更新特征提取器的网络参数ψ:

[0105]

[0106]

式中,n表示轮地作用向量的维度;yi表示真实轮地作用数据,表示轮地作用向量预测均值;表示轮地作用向量预测方差。

[0107]

对于运动特征提取器,其用于星球车的运动状态向量和轮地作用状态向量的特征探测、提取。示例性地,将星球车的运动状态向量和轮地作用状态向量进行拼接后,得到星球车运动特征向量(例如得到星球车的长度为15的运动特征向量),为增加其在强化学习模块输入中的比重,将运动状态向量输入到全连接神经网络中进行升维和特征提取。星球车运动特征提取器由两层全连接神经网络构成,输入神经元个数由运动状态向量以及轮地作用状态向量长度的和决定。另外,还对神经网络隐含层的输出进行批归一化操作并使用ReLU函数进行激活。

[0108]

可选地,由于彩色图像所包含的信息量远超深度图像,彩色图像也包含了一定的环境深度信息,可以根据星球车前方地面的物理特性信息以及几何特征对下一时刻的轮地作用数据进行较为准确的预测,因此,在视—触融合自主导航网络框架的轮地作用状态预测模块中,可以是不使用深度图像特征作为输入,而直接使用彩色图像的特征来预测下一时刻的轮地作用信息。

[0109]

可选地,采用软值演员-评论家(SAC)算法作为强化学习模块训练强化学习导航策略。该算法拥有一个策略函数网络(Actor)和两个值函数网络(Critic)。Actor网络负责与环境交互,执行动作并获得奖励值,Critic网络负责评估智能体动作和好坏。Actor网络与Critic网络均由三层全连接神经网络构成。SAC算法为随机性策略,输出动作决策的均值和标准差,提供采用重参数方法,从标准正态分布中采样,获得智能体下一步的动作:

[0110]

[0111]

式中,εt表示噪声向量,其从正态分布中采样得到。

[0112]

采用经验回放机制,将连续的交互数据先存储到具有一定容量的经验缓冲池中,当缓冲池中的数据达到其容量时,从中随机抽取交互数据对模型进行训练,以打破交互数据之间的时间相关性。采用梯度下降方法更新神经网络权重参数。

[0113]

将上述设计的深度学习特征提取网络与强化学习决策网络连接,构成考虑地面物理特性的端到端视—触融合网络框架,如图7所示,将深度图像特征向量、彩色图像特征向量与以及星球车运动特征向量连接后,输入到强化学习模块中。Critic网络(Critic1、Critic2)和Actor网络共享特征提取器,在模型训练过程中,特征提取器的参数随Critic和Actor同时更新。

[0114]

可选地,将上述的SAC算法网络替换其他多种深度强化学习的决策网络,如深度Q网络(DQN)、深度确定性策略梯度算法(DDPG)、异步演员—评论家优势算法(A3C)、近端策略优化算法(PPO)、信任区域策略优化算法(TRPO)等,这些算法的网络架构均以星球车的运行状态信息为输入,以星球车的导航运动决策为输出。

[0115]

这样,通过设计视—触融合自主导航网络框架,并在自主导航网络框架中,针对星球车不同的感知状态输入设计了相应的特征提取器,分别提取相机深度图像序列、相机彩色图像、星球车运动状态和轮地作用状态的特征,即通过深度图像特征提取器进行相机深度图像序列的特征提取,通过彩色特征提取器进行相机彩色图像的特征提取,通过运动特征提取器进行星球车运动状态和轮地作用状态的特征提取。从而将星球车的视觉特征与触觉特征进行融合,输入到相应强化学习决策网络中,以训练星球车的最优自主导航策略为目标。而且,通过设计轮地作用状态预测模块,利用当前时刻的视觉感知预测下一时刻的轮地作用状态信息,提升了网络框架的鲁棒性和可解释性。

[0116]

可选地,步骤121包括:

[0117]

步骤121a、基于视—触融合自主导航网络框架和仿真平台,设计星球车自主导航的训练流程。

[0118]

具体地,在仿真平台(例如Gazebo)中构建模拟相应星球地表的场景,其中,使用不同的地形纹理贴图构建三维基础表面,不同的地形区域具有不同的地形纹理,而不同纹理表征不同的地形物理特性,承压特性较差的地形可能导致车轮出现较大的沉陷量,而剪切特性较差的地形可能导致车轮出现较大的滑转率,通过改变地形的物理特性参数,模拟火星地表不同的非几何移动危险;同时,在仿真基础表面放置大量不同大小、不同形状的仿真岩石,当作星球车导航过程中的几何障碍;通过改变仿真平台中天空背景的颜色,以模拟相应星球的大气特性等。

[0119]

可选地,由于训练端到端自主导航模型需要较大的计算量,考虑到个人主机计算能力有限,所以结合深度学习服务器设计了一种强化学习模型双主机在轨训练流程。个人主机端的模型训练流程(个人主机端仿真交互数据采集方案)如下:

[0120]

1:初始化经验缓存与自主导航模型参数(φ);建立数据共享区

[0121]

2:设置仿真场景总数S,每个场景回合训练数E;

[0122]

3:fors=1,2,…,S,do:

[0123]

4:构建仿真场景,保存场景参数;

[0124]

5:启动Gazebo仿真,启动ROS节点,订阅星球车仿真数据;

[0125]

6:for e=1,2,…,E,do:

[0126]

7:初始训练环境,获取智能体初始状态s0

[0127]

8:ifφs indo:

[0128]

9:加载模型参数,φ←φs

[0129]

10:elsedo:

[0130]

11:计算星球车下一步动作,ae←πφ(ae|se);

[0131]

12:星球车行动,状态更新,se+1←p(se+1|se,ae),获得奖励r(se,ae);

[0132]

13:经验缓存保存仿真数据,

[0133]

14:if经验缓存达到上限do:

[0134]

15:将经验缓存保存至数据共享区,

[0135]

16:      end if;

[0136]

17:    end if;

[0137]

18:end for;

[0138]

19:end for。

[0139]

服务器端的模型训练流程(服务器端自主导航模型训练方案)如下:

[0140]

1:初始化经验缓存与自主导航模型参数φs,训练次数N,批数目b;

[0141]

2:while数据共享区仿真数据更新,do:

[0142]

3:加载经验缓存,

[0143]

4:

[0144]

5:     for n=1,2,…,Ndo:

[0145]

6:       从经验缓存中随机采样b组仿真数据;

[0146]

7:更新模型参数,

[0147]

8:end for;

[0148]

9:end if;

[0149]

10:将模型参数保存至数据共享区,

[0150]

11:end while。

[0151]

这样,本方法通过设计了一种双主机自主导航模型训练方案,分为个人主机端与服务器端。其中,个人主机运行仿真系统,为星球车提供自主导航训练环境,采集并存储星球车与仿真环境的交互数据;服务器端接收来自个人主机的仿真交互数据,对端到端自主导航模型进行训练,优化模型参数,并将训练后的自主导航模型实时反馈给个人主机。个人主机端的星球车使用新训练的自主导航模型继续在仿真中采集更优质的数据。

[0152]

步骤121b、设计星球车自主导航的评价指标。

[0153]

具体地,评价指标用于评价星球车自主导航的训练流程的性能及训练结果。评价指标包括导航成功率、导航步数、导航回报、导航路径长度、车轮平均滑转率、车体平均侧倾角等。其中,对于导航成功率(SR),当星球探测无碰撞、安全到达目标点范围内时,视该次导航为成功;导航成功率是衡量自主导航方法的重要指标,用导航成功次数占总导航次数的百分比计算。对于导航步数(NS),为提高探测效率,导航任务要求星球探测行驶的时间尽量较短,星球探测需要尽可能以较高的速度和尽量少的时间步数行驶。对于导航回报(NR),由于对于基于强化学习的自主导航模型来说,完成一次导航任务所获得的总回报是衡量强化学习算法的重要指标;导航回报越大,则说明星球探测学习到的导航策略越好。对于导航路径长度(NPL),在给定起始点和目标点的情况下,星球探测的导航路径长度以直线距离最短,然而直线的路径上可能会出现各种几何与非几何障碍,星球探测为绕开障碍所多走的路程是衡量星球探测避障效率的手段,路径越短,则说明星球探测的避障效率越高。对于车轮平均滑转率(ASR),较高的滑转率会降低车轮牵引力,使得星球探测速度损失严重;星球探测在导航过程中需要尽量选择在车轮打滑程度较低的地形区域行驶;用星球探测在导航路径中的车轮平均滑转率来衡量考虑非几何危险的自主导航模型训练效果。对于车体平均侧倾角(MRA),火星地表较大的起伏可能给星球探测带来倾覆、侧滑和打滑等风险,星球探测需要尽可能选择平坦无障碍的地形行驶;侧倾角表示为星球探测的滚转角和俯仰角之和;MRA用星球探测在导航路径中的侧倾角绝对值之和的均值计算,来表征星球探测倾覆风险,该结果越小,星球探测移动越安全。

[0154]

步骤121c、根据训练流程训练待训练自主导航模型,根据评价指标对训练流程及训练结果进行评价,根据评价结果确定自主导航模型。

[0155]

具体地,根据训练流程训练待训练自主导航模型,采用评价指标对训练的结果进行评价,再根据评价的结果确定最优的自主导航模型。

[0156]

可选地,训练流程包括个人主机端仿真交互数据采集流程和服务器端自主导航模型训练流程,根据训练流程训练待训练自主导航模型包括:

[0157]

通过个人主机端为星球车提供用于进行自主导航训练的仿真环境以及采集并存储星球车与仿真环境的仿真交互数据;

[0158]

通过服务器端接收来自个人主机端的仿真交互数据,并结合仿真交互数据对待训练自主导航模型进行训练以优化待训练自主导航模型的参数。

[0159]

具体地,个人主机端运行仿真系统,为星球车提供自主导航训练环境,采集并存储星球车与仿真环境的交互数据;服务器端接收来自个人主机的仿真交互数据,对端到端自主导航模型进行训练,优化模型参数。在一些实施例中,服务器端将训练后模型参数得到的优化的自主导航模型实时反馈给个人主机,个人主机端的星球车使用新训练的自主导航模型继续在仿真中采集更优质的交互数据,并将更优质的交互数据发送到服务器端,依此循环,直至得到符合要求的模型参数及相应的自主导航模型。

[0160]

虽然本公开披露如上,但本公开的保护范围并非仅限于此。本领域技术人员在不脱离本公开的精神和范围的前提下,可进行各种变更与修改,这些变更与修改均将落入本发明的保护范围。

背景技术

[0002]

例如好奇号、毅力号和祝融号等星球车是开展星球表面科学探测任务最直接、最高效的工具。相对于轨道探测器,星球车能够对星球表面进行大面积、近距离和深入式的原位探测,对于研究星球地表形貌、内部构造、地质特性等具有重要的科学意义。

[0003]

目前,星球车的星球作业任务或多或少需要依赖人工决策。但是,由于其他星球与地球之间的距离等原因,导致例如火星的星球与地球之间的平均通信时延较长且通信带宽较低,极大限制了星球上进行探测任务的星球车向地球传输的数据量,使得地面指挥中心无法全程实时掌握星球车的运行状态;且传统的基于地面遥操作的方式极大限制了星球车的移动速度和范围。

[0004]

也就是说,依赖人工决策的星球车缺乏一定的自主导航能力,制约了星球车星球探测效率的进一步提高,影响了星球探测计划的顺利开展。而且,在星球作业任务面向地形复杂但是科学价值丰富的未知区域进发时,其对于星球车的移动安全性也将提出更高的要求,需要自主导航能力更高的星球车。

发明内容

[0005]

本发明解决的问题是:如何提升星球车的自主导航能力。

[0006]

为解决上述问题,本发明提供一种考虑地面物理特性的星球车自主导航方法,包括:

[0007]

基于深度强化学习,构建关于星球车的自主导航模型;

[0008]

获取所述星球车的运行状态数据;

[0009]

将所述运行状态数据输入所述自主导航模型,输出得到所述星球车的导航运动决策;

[0010]

根据所述导航运动决策,控制所述星球车运动。

[0011]

可选地,所述运行状态数据包括所述星球车的运行参数数据与星球车所在处的环境数据。

[0012]

可选地,所述基于深度强化学习,构建关于星球车的自主导航模型包括:

[0013]

构建关于所述星球车的待训练自主导航模型;

[0014]

基于深度强化学习,采用仿真平台对所述待训练自主导航模型进行训练,得到所述自主导航模型。

[0015]

可选地,所述构建关于所述星球车的待训练自主导航模型包括:

[0016]

构建关于所述星球车的基于马尔可夫决策过程的所述待训练自主导航模型;其中,所述待训练自主导航模型包括五元组:<S,A,P,R,γ>;

[0017]

其中,S表示所述星球车的状态空间,A表示所述星球车的动作空间,P和R分别表示状态转移概率和奖励函数,并分别代表所述星球车采取动作a∈A使状态从状态s∈S转移到下一步状态s′∈S的概率和奖赏;γ∈[0,1]为折扣因子。

[0018]

可选地,所述构建关于所述星球车的基于马尔可夫决策过程的所述待训练自主导航模型之后,所述构建关于所述星球车的待训练自主导航模型还包括:

[0019]

设计所述星球车的所述动作空间、所述状态空间以及所述奖励函数;

[0020]

其中,所述奖励函数包括:目标点到达奖励函数、目标点接近奖励函数、车轮沉陷惩罚函数、车轮打滑惩罚函数、车体倾覆惩罚函数和车体碰撞惩罚函数。

[0021]

可选地,所述设计所述星球车的所述动作空间A、所述状态空间S以及所述奖励函数R之后,所述构建关于所述星球车的待训练自主导航模型还包括:

[0022]

设计所述星球车的视—触融合自主导航网络框架;

[0023]

所述基于深度强化学习,采用仿真平台对所述待训练自主导航模型进行训练,得到所述自主导航模型包括:

[0024]

基于所述视—触融合自主导航网络框架,采用所述仿真平台对所述待训练自主导航模型进行训练,得到所述自主导航模型。

[0025]

可选地,所述环境数据包括星球车所在处环境的深度图像和/或彩色图像。

[0026]

可选地,所述视—触融合自主导航网络框架包括深度学习特征提取部分和强化学习运动决策部分;其中,深度学习特征提取部分包括深度图像特征提取器、彩色特征提取器和运动特征提取器。

[0027]

可选地,所述基于所述视—触融合自主导航网络框架,采用所述仿真平台对所述待训练自主导航模型进行训练,得到所述自主导航模型包括:

[0028]

基于所述视—触融合自主导航网络框架和所述仿真平台,设计所述星球车自主导航的训练流程;

[0029]

设计所述星球车自主导航的评价指标;

[0030]

根据所述训练流程训练所述待训练自主导航模型,根据评价指标对所述训练流程及训练结果进行评价,根据所述评价结果确定所述自主导航模型。

[0031]

可选地,所述训练流程包括个人主机端仿真交互数据采集流程和服务器端自主导航模型训练流程,所述根据所述训练流程训练所述待训练自主导航模型包括:

[0032]

通过个人主机端为星球车提供用于进行自主导航训练的仿真环境以及采集并存储星球车与所述仿真环境的仿真交互数据;

[0033]

通过服务器端接收来自个人主机端的仿真交互数据,并结合仿真交互数据对所述待训练自主导航模型进行训练以优化所述待训练自主导航模型的参数。

[0034]

本发明与现有技术相比,具有以下有益效果:通过构建关于星球车的基于深度强化学习理论的自主导航模型,将星球车的运行状态数据作为自主导航模型的输入,从而输出得到星球车下一步的导航运动决策,以用于指导(控制)星球车下一步的运动。如此,一方面,本方法实现并提升了星球车的自主导航能力,便于星球车在脱离人工决策的情况下自主进行星球探测,提升了星球车的适应能力与运动能力,提升了星球车的自主程度、智能程度以及对星球的探测效率;另一方面,本方法绕过了传统导航方法(例如采用分治法思想的导航方法,将相应问题分解为规模更小的子问题进行逐个求解)中存在的计算量大、耗时长的步骤,实现了从环境感知直接到运动决策的端到端映射,提升了星球车进行星球探测任务的执行效率。



The invention provides a planet vehicle autonomous navigation method considering ground physical characteristics, which comprises the following steps: constructing an autonomous navigation model about a planet vehicle based on deep reinforcement learning; acquiring running state data of the planet vehicle; inputting the running state data into the autonomous navigation model, and outputting to obtain a navigation motion decision of the planet vehicle; and controlling the planet vehicle to move according to the navigation motion decision. By constructing the autonomous navigation model based on the deep reinforcement learning theory, the autonomous navigation capability of the planet vehicle is realized and improved, the planet vehicle can autonomously perform planet detection without artificial decision, the adaptive capability and the movement capability of the planet vehicle are improved, and the navigation efficiency of the planet vehicle is improved. The autonomous degree, the intelligent degree and the planet detection efficiency of the planet vehicle are improved, end-to-end mapping from environment perception to motion decision making is realized, and the execution efficiency of the planet vehicle for planet detection tasks is improved.



0001.

1.一种考虑地面物理特性的星球车自主导航方法,其特征在于,包括:

基于深度强化学习,构建关于星球车的自主导航模型;

获取所述星球车的运行状态数据;

将所述运行状态数据输入所述自主导航模型,输出得到所述星球车的导航运动决策;

根据所述导航运动决策,控制所述星球车运动。

0002.

2.如权利要求1所述的考虑地面物理特性的星球车自主导航方法,其特征在于,所述运行状态数据包括所述星球车的运行参数数据与星球车所在处的环境数据。

0003.

3.如权利要求2所述的考虑地面物理特性的星球车自主导航方法,其特征在于,所述基于深度强化学习,构建关于星球车的自主导航模型包括:

构建关于所述星球车的待训练自主导航模型;

基于深度强化学习,采用仿真平台对所述待训练自主导航模型进行训练,得到所述自主导航模型。

0004.

4.如权利要求3所述的考虑地面物理特性的星球车自主导航方法,其特征在于,所述构建关于所述星球车的待训练自主导航模型包括:

构建关于所述星球车的基于马尔可夫决策过程的所述待训练自主导航模型;其中,所述待训练自主导航模型包括五元组:<S,A,P,R,γ>;

其中,S表示所述星球车的状态空间,A表示所述星球车的动作空间,P和R分别表示状态转移概率和奖励函数,并分别代表所述星球车采取动作a∈A使状态从状态s∈S转移到下一步状态s′∈S的概率和奖赏;γ∈[0,1]为折扣因子。

0005.

5.如权利要求4所述的考虑地面物理特性的星球车自主导航方法,其特征在于,所述构建关于所述星球车的基于马尔可夫决策过程的所述待训练自主导航模型之后,所述构建关于所述星球车的待训练自主导航模型还包括:

设计所述星球车的所述动作空间、所述状态空间以及所述奖励函数;

其中,所述奖励函数包括:目标点到达奖励函数、目标点接近奖励函数、车轮沉陷惩罚函数、车轮打滑惩罚函数、车体倾覆惩罚函数和车体碰撞惩罚函数。

0006.

6.如权利要求5所述的考虑地面物理特性的星球车自主导航方法,其特征在于,所述设计所述星球车的所述动作空间A、所述状态空间S以及所述奖励函数R之后,所述构建关于所述星球车的待训练自主导航模型还包括:

设计所述星球车的视—触融合自主导航网络框架;

所述基于深度强化学习,采用仿真平台对所述待训练自主导航模型进行训练,得到所述自主导航模型包括:

基于所述视—触融合自主导航网络框架,采用所述仿真平台对所述待训练自主导航模型进行训练,得到所述自主导航模型。

0007.

7.如权利要求6所述的考虑地面物理特性的星球车自主导航方法,其特征在于,所述环境数据包括星球车所在处环境的深度图像和/或彩色图像。

0008.

8.如权利要求7所述的考虑地面物理特性的星球车自主导航方法,其特征在于,所述视—触融合自主导航网络框架包括深度学习特征提取部分和强化学习运动决策部分;其中,深度学习特征提取部分包括深度图像特征提取器、彩色特征提取器和运动特征提取器。

0009.

9.如权利要求6-8中任一项所述的考虑地面物理特性的星球车自主导航方法,其特征在于,所述基于所述视—触融合自主导航网络框架,采用所述仿真平台对所述待训练自主导航模型进行训练,得到所述自主导航模型包括:

基于所述视—触融合自主导航网络框架和所述仿真平台,设计所述星球车自主导航的训练流程;

设计所述星球车自主导航的评价指标;

根据所述训练流程训练所述待训练自主导航模型,根据评价指标对所述训练流程及训练结果进行评价,根据所述评价结果确定所述自主导航模型。

0010.

10.如权利要求9所述的考虑地面物理特性的星球车自主导航方法,其特征在于,所述训练流程包括个人主机端仿真交互数据采集流程和服务器端自主导航模型训练流程,所述根据所述训练流程训练所述待训练自主导航模型包括:

通过个人主机端为星球车提供用于进行自主导航训练的仿真环境以及采集并存储星球车与所述仿真环境的仿真交互数据;

通过服务器端接收来自个人主机端的仿真交互数据,并结合仿真交互数据对所述待训练自主导航模型进行训练以优化所述待训练自主导航模型的参数。