一种导航寻路方法、机器人及系统与流程

文档序号:12717346阅读:215来源:国知局
一种导航寻路方法、机器人及系统与流程

本发明涉及机器人技术领域,尤其涉及一种导航寻路方法、机器人及系统。



背景技术:

在机器人技术领域中,机器人导航寻路的应用越来越多。机器人导航寻路是自主移动机器人导航功能的重要问题之一,机器人导航寻路的目的是使机器人在应用环境中,无碰撞的到达目的地。

现有的机器人导航寻路的准确性有待提升。



技术实现要素:

本发明解决的技术问题是提升机器人导航寻路的准确性。

为解决上述技术问题,本发明实施例提供一种导航寻路方法,通过采集设备采集机器人在训练运动过程中的环境信息,并根据所述训练运动过程中的环境信息生成训练数据;利用所述训练数据采用深度强化学习的方法训练深度神经网络,以使训练后的所述深度神经网络适于根据寻路数据进行决策分析,并指示所述机器人向导航目标做寻路运动,所述寻路数据根据所述采集设备在寻路应用过程中采集的数据和所述导航目标得到。

可选的,所述采集设备包括以下一种或多种:超声采集设备、激光采集设备、雷达、红外采集设备、超宽带采集设备、摄像头和3D体感摄影机。

可选的,所述生成训练数据的过程包括:确定所述训练运动过程包含的至少一个运动操作,所述运动操作根据对应的运动数据的指示完成;确定每一运动操作的运动前状态数据和运动后状态数据,所述运动前状态数据包括所述运动操作执行前的环境信息,所述运动后状态数据包括所述运动操作执行后的环境信息;根据所述运动前状态数据和所述运动后状态数据计算反馈奖励数值;将所述运动数据及其运动前状态数据、运动后状态数据以及反馈奖励数值作为所述训练数据。

可选的,所述利用所述训练数据训练深度神经网络包括:将所述训练数据中的所述运动前状态数据送入所述深度神经网络并进行前向传播,以获取所述训练数据中的所述运动数据的价值函数值,所述运动数据的价值函数值用于评价所述机器人进行的运动操作在导航全程中对于到达训练目标的价值;将所述训练数据中的运动后状态数据送入所述深度神经网络并进行前向传播,以获得所述深度神经网络输出的各个所述运动数据的价值函数值;根据所述深度神经网络输出的各个所述运动数据的价值函数值中的最大值,以及所述运动数据的反馈奖励数值,计算目标价值函数值;根据所述训练数据、所述运动数据的价值函数值以及所述目标价值函数值进行反向传播,以更新所述深度神经网络的参数;根据上述步骤迭代更新所述深度神经网络的参数,直至所述深度神经网络达到收敛。

可选的,所述计算反馈奖励数值包括:根据所述运动前状态数据和所述运动后状态数据,分别获取所述运动操作前后所述机器人与障碍物的距离,并且分别获取所述运动操作前后所述机器人与训练目标信息的距离;根据所述运动操作前后所述机器人与障碍物的距离和所述运动操作前后所述机器人与训练目标信息的距离,计算所述反馈奖励数值。

可选的,依据以下公式计算所述反馈奖励数值r:

其中,β、δ均为调整系数,TD1表征所述运动操作前所述机器人与训练目标的距离,TD2表征所述运动操作后所述机器人与训练目标的距离,OD1表征所述机器人在执行所述运动操作之前与障碍物的距离,OD2表征所述机器人在执行所述运动操作之后与障碍物的距离。

可选的,在所述反向传播的过程中采用minibatch梯度下降法。

可选的,所述深度神经网络的输出的各个所述运动数据选自预设的运动集合。

可选的,根据贝尔曼方程计算所述目标价值函数值。

可选的,使用贪心探索算法产生所述运动数据。

可选的,所述运动前状态数据还包括以下至少一种:当前朝向信息、当前速度信息、当前加速度信息、当前位置信息、训练目标信息;所述运动后状态数据包括以下至少一种:运动后朝向信息、运动后速度信息、运动后加速度信息和运动后位置信息。

可选的,所述导航寻路方法还包括:a:将所述寻路数据送入训练后的所述深度神经网络并进行前向传播,以得到最优运动数据;b:使用所述最优运动数据指示所述机器人向导航目标做寻路运动。

可选的,所述向导航目标做寻路运动之后,还包括:

确定所述机器人是否到达导航目标,若是,则导航结束;若否,则重复执行上述步骤a和b做寻路运动,直至到达所述导航目标。

可选的,所述训练数据和所述寻路数据中均还包括地图数据。

本发明实施例还提供一种导航寻路机器人,包括:

训练数据生成单元,适于通过采集设备采集机器人在训练运动过程中的环境信息,并根据所述训练运动过程中的环境信息生成训练数据;

深度神经网络训练单元,适于利用所述训练数据采用深度强化学习的方法训练深度神经网络,以使训练后的所述深度神经网络适于根据寻路数据进行决策分析,并指示所述机器人向导航目标做寻路运动,所述寻路数据根据所述采集设备在寻路应用过程中采集的数据和所述导航目标得到。

可选的,所述训练数据生成单元包括:

运动操作确定单元,适于确定所述训练运动过程包含的至少一个运动操作,所述运动操作根据对应的运动数据的指示完成;

状态数据确定单元,适于确定每一运动操作的运动前状态数据和运动后状态数据,所述运动前状态数据包括所述运动操作执行前的环境信息,所述运动后状态数据包括所述运动操作执行后的环境信息;

反馈奖励数值计算单元,适于根据所述运动前状态数据和所述运动后状态数据计算反馈奖励数值;

训练数据确定单元,适于将所述运动数据及其运动前状态数据、运动后状态数据以及反馈奖励数值作为所述训练数据。

可选的,所述深度神经网络训练单元包括:

第一前向传播单元,适于将所述训练数据中的所述运动前状态数据送入所述深度神经网络并进行前向传播,以获取所述训练数据中的所述运动数据的价值函数值,所述运动数据的价值函数值用于评价所述机器人进行的运动操作在导航全程中对于到达训练目标的价值;

第二前向传播单元,适于将所述训练数据中的运动后状态数据送入所述深度神经网络并进行前向传播,以获得所述深度神经网络输出的各个所述运动数据的价值函数值;

目标价值函数值计算单元,适于根据所述深度神经网络输出的各个所述运动数据的价值函数值中的最大值,以及所述运动数据的反馈奖励数值,计算目标价值函数值;

参数更新单元,适于根据所述训练数据、所述运动数据的价值函数值以及所述目标价值函数值进行反向传播,以更新所述深度神经网络的参数;

迭代控制单元,适于控制所述参数更新单元基于所述第一前向传播单元、第二前向传播单元、目标价值函数值计算单元更新所述神经网络的参数,直至所述深度神经网络达到收敛。

可选的,所述反馈奖励数值计算单元包括:

距离获取单元,适于根据所述运动前状态数据和所述运动后状态数据,分别获取所述运动操作前后所述机器人与障碍物的距离,并且分别获取所述运动操作前后所述机器人与训练目标信息的距离;

运算单元,适于根据所述运动操作前后所述机器人与障碍物的距离和所述运动操作前后所述机器人与训练目标信息的距离,计算所述反馈奖励数值。

可选的,所述运算单元依据以下公式计算所述反馈奖励数值r:

其中,β、δ均为调整系数,TD1表征所述运动操作前所述机器人与训练目标的距离,TD2表征所述运动操作后所述机器人与训练目标的距离,OD1表征所述机器人在执行所述运动操作之前与障碍物的距离,OD2表征所述机器人在执行所述运动操作之后与障碍物的距离。

可选的,所述参数更新单元,适于在所述反向传播的过程中采用minibatch梯度下降法。

可选的,所述深度神经网络的输出的各个所述运动数据选自预设的运动集合。

可选的,所述目标价值函数值计算单元,适于根据贝尔曼方程计算所述目标价值函数值。

可选的,所述运动数据是利用贪心探索算法产生的。

可选的,所述运动前状态数据还包括以下至少一种:当前朝向信息、当前速度信息、当前加速度信息、当前位置信息、训练目标信息;所述运动后状态数据包括以下至少一种:运动后朝向信息、运动后速度信息、运动后加速度信息和运动后位置信息。

可选的,所述导航寻路机器人还包括寻路运动指示单元,所述寻路运动指示单元包括:

最优运动数据生成单元,适于将所述寻路数据送入训练后的所述深度神经网络并进行前向传播,以得到最优运动数据;

导航单元,适于使用所述最优运动数据指示所述机器人向导航目标做寻路运动。

可选的,所述导航寻路机器人还包括导航控制单元,适于确定所述机器人是否到达导航目标,若是,则导航结束;若否,则控制所述导航单元继续指示所述机器人向导航目标做寻路运动,直至到达所述导航目标。

可选的,所述训练数据和所述寻路数据中均还包括地图数据。

本发明实施例还提供一种导航寻路系统,包括所述导航寻路机器人,以及所述采集设备。

可选的,所述采集设备包括以下一种或多种:超声采集设备、激光采集设备、雷达、红外采集设备、超宽带采集设备、摄像头和3D体感摄影机。

与现有技术相比,本发明实施例的技术方案具有以下有益效果:

本发明实施例通过采集设备采集机器人在训练过程中的环境信息,根据所述训练运动过程中的环境信息生成训练数据,并利用所述训练数据采用深度强化学习的方法训练深度神经网络采用深度强化学习的方法,使得训练后的深度神经网络能够根据在寻路应用过程中采集的数据和导航目标进行寻路运动。由于导航寻路方法的应用环境通常较为复杂,需要在未知环境中进行导航寻路,现有的算法通常计算量较大;在本发明实施例中,采用深度强化学习的方法训练深度神经网络,深度强化学习是可以利用神经网络将深度学习与增强学习结合起来,以实现从感知到动作的端对端学习的一种算法,这种算法的重要特点是机器人可以进行自主学习,并且可以接收大量数据作为输入进行训练,从而可以避免现有技术中导航中计算量较大和准确性较差的问题。

附图说明

图1是现有技术中一种导航寻路方法的流程图;

图2是本发明实施例中一种导航寻路方法的流程图;

图3是图2中步骤S21的一种具体实现的流程图;

图4是本发明实施例中一种计算反馈奖励值的具体实现的流程图;

图5是本发明实施例中一种利用训练数据对深度神经网络进行训练的具体实现的流程图;

图6是本发明实施例中一种完成导航寻路的方法的具体实现的流程图;

图7是本发明实施例中一种导航寻路机器人的结构示意图;

图8是图7中训练数据生成单元71的一种结构示意图;

图9是图8中反馈奖励数值计算单元83的一种结构示意图;

图10是图7中的深度神经网络训练单元72的一种结构示意图。

具体实施方式

如前所述,现有的机器人导航寻路的准确性有待提升。具体而言,经发明人研究发现,现有的机器人导航寻路通常基于图1所示的如下步骤进行计算:

步骤S11,进行环境数据采集。

步骤S12,基于所述环境数据进行特征提取,以得到环境特征;

步骤S13,根据所述环境特征进行决策分析,以进行导航寻路。

在现有技术中,由于需要基于环境数据进行特征提取,并根据提取到的环境特征进行决策分析,而在特征提取的过程中不可避免会造成数据损失,故导航的准确性较差。

另外,由于导航寻路方法的应用环境通常较为复杂,需要在未知环境中进行导航寻路,现有技术中的算法需要进行大量的特征提取,决策分析时也需要大量的计算,总的计算量较大。

而在本发明实施例中,通过利用利用所述训练数据采用深度强化学习(Deep Reinforcement Learning,DRL)的方法训练深度神经网络的方式,使得使训练后的所述深度神经网络适于根据寻路数据进行决策分析,并指示所述机器人向导航目标做寻路运动。深度强化学习是可以利用神经网络将深度学习与增强学习结合起来,以实现从感知到动作的端对端学习的一种算法,这种算法的重要特点是机器人可以进行自主学习,神经网络的训练结果由神经网络的输入数据决定,从而可以避人为设定算法进行特征提取损失训练数据,进一步可以提升导航寻路的准确性。另外,由于本发明实施例中无需设计特征提取的算法,也可以减少计算量。

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

图2是本发明实施例中一种导航寻路方法的流程图,可以包括如下步骤:

步骤S21,通过采集设备采集机器人在训练运动过程中的环境信息,并根据所述训练运动过程中的环境信息生成训练数据。

步骤S22,利用所述训练数据采用深度强化学习的方法训练深度神经网络,以使训练后的所述深度神经网络适于根据寻路数据进行决策分析,并指示所述机器人向导航目标做寻路运动,所述寻路数据根据所述采集设备在寻路应用过程中采集的数据和所述导航目标得到。

其中,机器人可以是能够进行移动的设备,其能够完成的功能可以是多样的。采集设备可以装载于机器人,也可以位于机器人应用的环境中,具体可以包括以下任一种或多种:超声采集设备、激光采集设备、雷达、红外采集设备、超宽带采集设备、摄像头和3D体感摄影机。

采集设备根据信息来源可以分为主动设备和被动设备两种:通过发射测量信号,再接收测量信号反射信号的设备可以称为主动设备,如激光采集设备,雷达采集设备,超声采集设备,超宽带(Ultra Wideband,UWB)采集设备等:通过物体自身所发出的信息进行处理的模式称为被动模式,如摄像头,红外摄像头等是通过物体反射的光线获得的图像信息。

环境信息可以是通过采集设备对机器人所处的环境进行采集得到的信息,具体而言,可以包括反应机器人与环境中物体的相对关系的信息,例如可以包括反应机器人与环境中障碍物之间的信息。

当训练数据和所述寻路数据中包括地图数据时,环境信息还可以包括地图数据。其中,地图数据可以是存储于本地或云端的数据,可以指示障碍物的位置,例如墙体位置等。由于地图数据提供的障碍物位置更为精确,并且地图数据无需通过采集设备进行采集,故当训练数据和所述寻路数据中包括地图数据时,导航的效率和准确性可以得到进一步提升。

采集设备可以包括一种或多种设备,相应地,环境信息中可以包括一种或多种信息。主动设备有受外界环境影响小,结果更精确的优点,缺点是获取信息不完整,被动设备获取信息完整,速度快,但易受外界噪声影响,如容易受到光照、温度等条件的影响。

更进一步而言,每种采集设备以及对应种类的环境信息均有各自的优点或缺点,故若环境信息中包含多种的信息,例如包含一种或多种主动设备采集到的信息和一种或多种被动设备采集到的信息,可以更加准确的对深度神经网络进行训练,进一步可以更加准确的进行导航寻路。

在环境信息中包含多种信息时,更能体现本发明实施例中导航寻路方法对计算量的节省。

在现有技术中,若需要环境数据中包含多种信息,则需要进行信息融合。信息融合按照其所融合信息的抽象程度可以分为三个级别:数据层信息融合;特征层信息融合;决策层信息融合。根据具体问题,也可将这些融合混合使用。

其中,数据层信息融合所融合的是原始的环境数据,然后根据融合后数据进行特征提取,决策分析。这种方式数据损失少,精度较高,但是只能融合同种传感器的数据,融合时需要处理好传感器信息的不稳定性。

特征层信息融合所融合的对象是从原始数据中提取的特征,提取后的特征信息比原始信息跟抽象,有更高的压缩比,可以根据需求来修改特征,可以在一定程度上提高处理速度,但在融合过程中就必然会有信息丢失。

决策层信息融合是高层信息融合,可以利用各种方法进行决策分析后,对决策结果进行融合,得到最终结果。灵活性高,抗干扰能力强,但是数据信息损失严重。

可以看出,以上现有的信息融合方式都需要人为设定一定的算法或人工提取数据特征,因此必定会造成一定级别的数据损失,同时不可避免的带来人为主观因素的影响。

在本发明实施例中,利用深度强化学习的方法训练深度神经网络,可以无需人为设定算法进行特征提取,从而可以避免特征提取过程的数据损失。

深度强化学习是近年来兴起和火热的机器学习前沿算法,是利用神经网络将深度学习与增强学习结合起来从而实现从感知到动作的学习的一种算法。深度强化学习是既满足深度学习的特点,又满足强化学习的特点的一种学习方式,其中:

深度学习(Deep learning)的概念源于人工神经网络的研究,包含多隐层的多层感知器就是一种深度学习结构。深度学习可以通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示;

强化学习(Reinforcement learning)也叫增强学习,是一种智能系统从环境到行为映射的机器学习。基本原理是如果某个行为策略导致环境正的回馈奖励,那么以后产生这个行为策略的趋势便会加强。强化学习的目标是在每个离散状态发现最优策略以使期望的奖励和最大。

神经网络是一种应用类似于大脑神经突触联接的结构进行信息处理的数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。深度神经网络(deep neural network)是神经网络的一种,具有非线性程度强,逼近能力强的特点。在具体实施中,深度神经网络可以是为3至5层,或者也可以是更多层,具体可以根据导航方法的需要确定。

当环境信息中包含多种信息时,可以将根据这些信息生成的训练数据均作为深度神经网络的输入,以利用深度强化学习的方法训练深度神经网络,使得神经网络可以对寻路数据进行决策分析。这种融合方式类似于现有技术中数据层信息融合,融合的是未经过特征提取的数据,数据损失较少,精度高,同时也无只能融合同种传感器的数据的限制。

可以看出,由于本发明实施例中采用深度强化学习的方法训练深度神经网络,故本发明实施例中的环境信息中可以包括多种信息,可以包括由主动设备采集到的信息中的一种或多种,也可以包括由被动设备采集到的环境信息中的一种或多种,或者可以既包括由主动设备采集到的信息中的一种或多种同时也包括被动设备采集到的环境信息中的一种或多种。利用深度强化学习方法进行深度神经网络的训练,无需人为设定算法进行特征提取,从而可以减少计算量并提升导航寻路方法的准确性。

根据所述训练运动过程中的环境信息生成训练数据时,可以结合运动操作和运动操作前后的环境信息,以使得深度神经网络可以根据运动操作前后的环境信息和对运动操作的评价进行深度强化学习,进而可以使得训练后的深度神经网络可以根据寻路数据进行决策分析。

根据所述训练运动过程中的环境信息生成训练数据时,也可以结合运动操作和运动操作前后的环境信息以及训练目标,使得训练后的深度神经网络对运动操作的评价是结合训练目标进行的,从而可以从全局的角度评价运动操作,进一步可以使得训练后的神经网络能够更加准确的控制导航寻路过程。

具体而言,参见图3,根据所述训练运动过程中的环境信息生成训练数据可以包括如下步骤:

步骤S31,确定所述训练运动过程包含的至少一个运动操作,所述运动操作根据对应的运动数据的指示完成;

步骤S32,确定每一运动操作的运动前状态数据和运动后状态数据,所述运动前状态数据包括所述运动操作执行前的环境信息,所述运动后状态数据包括所述运动操作执行后的环境信息;

步骤S33,根据所述运动前状态数据和所述运动后状态数据计算反馈奖励数值;

步骤S34,将所述运动数据及其运动前状态数据、运动后状态数据以及反馈奖励数值作为所述训练数据。

其中,运动操作可以包括向某个朝向以某个速度行进,运动操作对应的运动数据可以是根据运动数据的指示完成的。在具体实施中,运动数据可以选自预设的运动集合,例如,预设的运动集合将平面运动方向分为64个,运动数据可以指示机器人向64个方向中任一个方向进行运动操作。

运动数据的生成有两种方式,一是随机生成的,一是在训练过程中,根据当前的深度神经网络生成的。在一个非限定例子中,可以利用贪心探索算法(ε-greedy-exploration)产生所述运动数据。可以按照概率ε进行贪心或探索的算法,其中贪心算法返回当前情况的最优解,但未必是最终最优解。

具体而言,可以按照一定概率ε使用两种方法产生运动,一是产生随机运动,一是采用深度神经网络计算获得当前的最佳的运动。根据场景不同,两种方法所占比例不同,最初开始训练时,使用随即运动的概率较高,ε较大,比如可以为0.9,随着训练进行,逐步减小ε,例如可以减小直至ε为0.1。

每一运动操作的运动前状态数据和运动后状态数据中,均可以包括对应的环境信息,如前所述,环境信息中可以包含体现机器人与环境中障碍物距离的信息。

在具体实施中,所述运动前状态数据还包括以下至少一种:当前朝向信息、当前速度信息、当前加速度信息、当前位置信息、训练目标信息,;所述运动后状态数据包括以下至少一种:运动后朝向信息、运动后速度信息、运动后加速度信息和运动后位置信息。其中,训练目标信息可以是在训练过程中设置的目标位置。训练目标位置信息和点云地图信息在运动前后保持一致。

运动前状态数据以及运动后状态数据均可以是前述采集设备采集的数据,也可以是实现建立的地图数据。

反馈奖励数值可以用来指示所述运动操作的优劣,参见图4,在具体实施中,可以通过如下步骤计算所述反馈奖励值:

步骤S41,根据所述运动前状态数据和所述运动后状态数据,分别获取所述运动操作前后所述机器人与障碍物的距离,并且分别获取所述运动操作前后所述机器人与训练目标信息的距离;

步骤S42,根据所述运动操作前后所述机器人与障碍物的距离和所述运动操作前后所述机器人与训练目标信息的距离,计算所述反馈奖励数值。

可以理解的是,根据所述训练运动过程中的环境信息生成训练数据还可以包括数据预处理的过程,根据环境信息来源不同采用不同的数据预处理方式,例如可采用的数据预处理方式有零均值化,正则化,PCA,白化(Whitening),降噪处理等。当采集设备的采样频率不一致时,可以通过缓存处理的方式,进行环境信息的预处理。

在一具体实现中,可以依据以下公式计算所述反馈奖励数值r:

其中,β、δ均为调整系数,TD1表征所述运动操作前所述机器人与训练目标的距离,TD2表征所述运动操作后所述机器人与训练目标的距离,OD1表征所述机器人在执行所述运动操作之前与障碍物的距离,OD2表征所述机器人在执行所述运动操作之后与障碍物的距离。

在得到训练数据后,可以利用训练数据对深度神经网络进行训练,在具体实施中,参见图5,可以包括如下步骤:

步骤S51,将所述训练数据中的所述运动前状态数据送入所述深度神经网络并进行前向传播,以获取所述训练数据中的所述运动数据的价值函数值,所述运动数据的价值函数值用于评价所述机器人进行的运动操作在导航全程中对于到达训练目标的价值;

步骤S52,将所述训练数据中的运动后状态数据送入所述深度神经网络并进行前向传播,以获得所述深度神经网络输出的各个所述运动数据的价值函数值;

步骤S53,根据所述深度神经网络输出的各个所述运动数据的价值函数值中的最大值,以及所述运动数据的反馈奖励数值,计算目标价值函数值;

步骤S54,根据所述训练数据、所述运动数据的价值函数值以及所述目标价值函数值进行反向传播,以更新所述深度神经网络的参数;

步骤S55,判断深度神经网络是否达到收敛,若是则结束更新,若否则根据上述步骤S51-S54迭代更新所述深度神经网络的参数,直至所述深度神经网络达到收敛。

通过深度神经网络可以得到输入运动前状态数据,可以得到输出的各个运动数据的价值函数值。价值函数值可以是对在机器人当前状态下,对各个运动数据的优劣的评价。在未经训练时,得到的价值函数值对各个运动数据的优劣的评价通常有较大偏差,对深度神经网络训练的过程,即使得价值函数值趋于准确的过程。

在具体实施中,深度神经网络输出的运动数据以及训练数据中的运动数据可以与预设的运动集合对应,在将运动前状态数据送入所述深度神经网络并进行前向传播后,可以得到对应预设的运动集合的各个运动数据的价值函数,故在步骤S51中可以获取所述训练数据中的所述运动数据的价值函数值。

在一具体实现中,在步骤S53中,可以根据贝尔曼方程计算所述目标价值函数值。贝尔曼方程(Bellman Equation)也被称作动态规划方程,是一种动态规划方法,把动态最佳化问题变成简单的子问题。具体地,依据贝尔曼方程,本发明实施例中的目标价值函数可以表示为:r+γ*Max(Q'(s',a'))。

其中,r为反馈奖励数值,可以由图3中步骤S33计算得到;γ为数值在0与1之间的贴现因子;Max(Q’(s’,a’))为所述深度神经网络输出的各个所述运动数据的价值函数值中的最大值。

在具体实施中,可以采用梯度下降法进行反向传播以更新参数,例如可以在所述反向传播的过程中采用minibatch梯度下降法。梯度下降法:是一个最优化算法,也称为最速下降法,是用负梯度方向为搜索方向的,越接近目标值,前进越慢。梯度下降法常用于机器学习中的最优化问题。梯度下降法根据每次处理的数据量分为批量梯度下降法,随机梯度下降法和minibatch梯度下降法。

为了不影响深度神经网络参数的更新,对于训练数据中未包含的与预设的运动集合对应的其他运动数据,其目标价值函数值可以直接为对应的反馈奖励数值。

在根据步骤S51至步骤S54经过有限次的迭代更新后,深度神经网络可以达到收敛,从而完成对深度神经网络的训练。

参见图6,在完成对深度神经网络的训练后,可以利用如下步骤完成导航寻路:

步骤a:将所述寻路数据送入训练后的所述深度神经网络并进行前向传播,以得到最优运动数据;

步骤b:使用所述最优运动数据指示所述机器人向导航目标做寻路运动。

其中,寻路数据的生成过程可以相同或者类似于训练数据的生成过程,导航目标类似于训练过程中的训练目标;生成寻路数据的过程同样可以包括预处理的过程。

在具体实施中,将寻路数据送入训练后的所述深度神经网络后,可以得到对应各个运动操作的运动数据的价值函数值,根据各个价值函数值,可以确定最优运动数据。

在一具体实现中,在向导航目标做寻路运动之后,还可以确定所述机器人是否到达导航目标,若是,则导航结束;若否,则重复执行上述步骤a和b做寻路运动,直至到达所述导航目标。

在本发明实施例中,通过采集设备采集在训练运动过程中的环境信息,并根据所述训练运动过程中的环境信息生成训练数据,生成训练数据的过程中环境信息并没有被提取特征,从而可以避免环境信息的损失,进而可以提升导航寻路方法的准确性。

采用深度强化学习的方式训练深度神经网络网络,直接通过深度神经网络从输入数据获得运动数据,避免了人工设计寻路避障算法,故本发明实施例中的算法不会因为环境的复杂而变得过于复杂和难以计算,因此在复杂环境中进行导航寻路时计算量更小。

由于本发明实施例中通过利用训练数据采用深度强化学习的方法训练深度神经网络,训练数据是根据环境数据生成的,而环境信息中可以包括多种信息,从而本发明实施例中的导航寻路方法可以支持多种采集设备采集到信息的融合,并且在改变采集设备的种类时,无需改变整体算法流程。

本发明实施例还提供一种导航寻路机器人,其结构示意图参见图7,可以包括:

训练数据生成单元71,适于通过采集设备采集机器人在训练运动过程中的环境信息,并根据所述训练运动过程中的环境信息生成训练数据;

深度神经网络训练单元72,适于利用所述训练数据采用深度强化学习的方法训练深度神经网络,以使训练后的所述深度神经网络适于根据寻路数据进行决策分析,并指示所述机器人向导航目标做寻路运动,所述寻路数据根据所述采集设备在寻路应用过程中采集的数据和所述导航目标得到。

导航寻路机器人可以是能够进行移动的设备,其能够完成的功能可以是多样的。采集设备可以装载于机器人,也可以位于机器人应用的环境中,具体可以包括以下任一种或多种:超声采集设备、激光采集设备、雷达、红外采集设备、超宽带采集设备、摄像头和3D体感摄影机。

采集设备可以包括一种或多种设备,相应地,环境信息中可以包括一种或多种信息。主动设备有受外界环境影响小,结果更精确的优点,缺点是获取信息不完整,被动设备获取信息完整,速度快,但易受外界噪声影响,如容易受到光照、温度等条件的影响。

更进一步而言,每种采集设备以及对应种类的环境信息均有各自的优点或缺点,故若环境信息中包含多种的信息,例如包含一种或多种主动设备采集到的信息和一种或多种被动设备采集到的信息,可以更加准确的对深度神经网络进行训练,进一步可以更加准确的进行导航寻路。

在本发明实施例中,利用深度强化学习的方法训练深度神经网络,可以无需人为设定算法进行特征提取,从而可以避免特征提取过程的数据损失。

参见图8,图7中的训练数据生成单元71可以包括:

运动操作确定单元81,适于确定所述训练运动过程包含的至少一个运动操作,所述运动操作根据对应的运动数据的指示完成;

状态数据确定单元82,适于确定每一运动操作的运动前状态数据和运动后状态数据,所述运动前状态数据包括所述运动操作执行前的环境信息,所述运动后状态数据包括所述运动操作执行后的环境信息;

反馈奖励数值计算单元83,适于根据所述运动前状态数据和所述运动后状态数据计算反馈奖励数值;

训练数据确定单元84,适于将所述运动数据及其运动前状态数据、运动后状态数据以及反馈奖励数值作为所述训练数据。

参见图9,图8中反馈奖励数值计算单元83可以包括:

距离获取单元91,适于根据所述运动前状态数据和所述运动后状态数据,分别获取所述运动操作前后所述机器人与障碍物的距离,并且分别获取所述运动操作前后所述机器人与训练目标信息的距离;

运算单元92,适于根据所述运动操作前后所述机器人与障碍物的距离和所述运动操作前后所述机器人与训练目标信息的距离,计算所述反馈奖励数值。

所述运算单元92可以依据以下公式计算所述反馈奖励数值r:

其中,β、δ均为调整系数,TD1表征所述运动操作前所述机器人与训练目标的距离,TD2表征所述运动操作后所述机器人与训练目标的距离,OD1表征所述机器人在执行所述运动操作之前与障碍物的距离,OD2表征所述机器人在执行所述运动操作之后与障碍物的距离。

参见图10,图7中的深度神经网络训练单元72可以包括:

第一前向传播单元101,适于将所述训练数据中的所述运动前状态数据送入所述深度神经网络并进行前向传播,以获取所述训练数据中的所述运动数据的价值函数值,所述运动数据的价值函数值用于评价所述机器人进行的运动操作在导航全程中对于到达训练目标的价值;

第二前向传播单元102,适于将所述训练数据中的运动后状态数据送入所述深度神经网络并进行前向传播,以获得所述深度神经网络输出的各个所述运动数据的价值函数值;

目标价值函数值计算单元103,适于根据所述深度神经网络输出的各个所述运动数据的价值函数值中的最大值,以及所述运动数据的反馈奖励数值,计算目标价值函数值;

参数更新单元104,适于根据所述训练数据、所述运动数据的价值函数值以及所述目标价值函数值进行反向传播,以更新所述深度神经网络的参数;

迭代控制单元105,适于控制所述参数更新单元104基于所述第一前向传播单元、第二前向传播单元、目标价值函数值计算单元更新所述神经网络的参数,直至所述深度神经网络达到收敛。

其中,参数更新单元104可以在所述反向传播的过程中采用minibatch梯度下降法。所述深度神经网络的输出的各个所述运动数据选自预设的运动集合。

目标价值函数值计算单元103,可以根据贝尔曼方程计算所述目标价值函数值。

本发明实施例中的运动数据是利用贪心探索算法产生的。所述运动前状态数据还可以包括以下至少一种:当前朝向信息、当前速度信息、当前加速度信息、当前位置信息、训练目标信息;所述运动后状态数据包括以下至少一种:运动后朝向信息、运动后速度信息、运动后加速度信息和运动后位置信息。

继续参见图7,导航寻路机器人还可以包括寻路运动指示单元73,寻路运动指示单元73具体可以包括:最优运动数据生成单元(图未示),适于将所述寻路数据送入训练后的所述深度神经网络并进行前向传播,以得到最优运动数据;导航单元(图未示),适于使用所述最优运动数据指示所述机器人向导航目标做寻路运动。

进一步,导航寻路机器人还可以包括导航控制单元(图未示),适于确定所述机器人是否到达导航目标,若是,则导航结束;若否,则控制所述导航单元继续指示所述机器人向导航目标做寻路运动,直至到达所述导航目标。

本发明实施例中的深度神经网络的神经网络层数范围为3至5层,或者也可以是更多层,具体可以根据导航方法的需要确定。

本发明实施例中的导航寻路机器人所涉及的名词的解释以及工作原理,可以参见导航寻路方法,在此不再赘述。

本发明实施例中的导航寻路机器人还可以包括相应的机壳、驱动机构、以及其他实现机器人具体功能的机构。导航寻路机器人中的各个单元,可以是结合外部的传感器和通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其设计成执行本文所描述功能的任何组合来实现或执行。

本发明实施例还提供一种航寻路系统,可以包括本发明实施例中的导航寻路机器人,以及采集设备。

采集设备可以部署于导航寻路机器人的应用环境中,可以根据需要部署多个采集设备。采集设备可以包括以下一种或多种:超声采集设备、激光采集设备、雷达、红外采集设备、超宽带采集设备、摄像头和3D体感摄影机。

由于导航寻路方法的应用环境通常较为复杂,需要在未知环境中进行导航寻路,现有的算法通常计算量较大;在本发明实施例中的方法、机器人及系统,采用深度强化学习的方法训练深度神经网络,深度强化学习是可以利用神经网络将深度学习与增强学习结合起来,以实现从感知到动作的端对端学习的一种算法,这种算法的重要特点是机器人可以进行自主学习,并且可以接收大量数据作为输入进行训练,从而可以避免现有技术中导航中计算量较大和准确性较差的问题。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。

虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1