一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于自然语言的室内自主导航的制作方法

2022-07-10 13:46:08 来源:中国专利 TAG:


1.本公开涉及计算机技术领域,尤其涉及室内自主导航,更具体地,涉及用于在任务环境中导航机器人的方法。


背景技术:

2.当前,在大多数移动机器人中使用的自主导航系统依赖于通过扫描预先建立的任务环境的细粒度地图。在导航期间,响应于接收到坐标,机器人将通过搜索算法搜索全局路径,然后基于局部观测值优化全局路径以获得最终规划路径。然而,当位于新环境中时,由于目的地坐标可能是未知的或细粒度的地图不可用,因而现有的移动机器人不能立即执行自主导航。


技术实现要素:

3.本公开的实施方式提供了一种用于在任务环境中导航机器人的方法和设备、以及非暂时性介质。
4.在第一方面,本公开的一些实施方式提供了一种用于在任务环境中导航机器人的方法。该方法包括:通过预训练的序列预测模型接收任务环境的导航图、自然语言指令以及机器人在导航图中的初始位置,其中,导航图包括指示任务环境中的位置的节点、节点的坐标以及指示位置之间的连通性的边;通过预训练的序列预测模型,依次预测机器人可执行的一系列单步行为,以将机器人从初始位置导航到目的地。
5.在第二方面,本公开的一些实施方式提供了一种电子装置,该电子装置包括至少一个处理器以及存储器,该存储器存储有可执行指令,该指令使至少一个处理器执行根据第一方面中的实施方式中的任一个的用于在任务环境中导航机器人的方法。
6.在第三方面中,本公开的一些实施方式提供了一种存储计算机程序的非暂时性计算机可读存储介质,所述计算机程序可执行使处理器执行根据第一方面中的实施方式中的任一个的用于在任务环境中导航机器人的方法。
附图说明
7.通过参考以下附图阅读非限制性实施方式的详细描述,本公开的其它特征、目的和优点将变得更加显而易见。
8.图1是根据本公开的实施方式的用于在任务环境中导航机器人的方法的流程图;
9.图2a是根据实施方式的示例性任务环境的示意图;
10.图2b是图2a所示的任务环境的示例性导航图的示意图;
11.图3是根据本公开的实施方式的用于预测一系列单步行为的方法的示意图;
12.图4是三步动作传播的示意图;
13.图5是根据本公开的实施方式的导航代理的示意图;
14.图6是根据本公开的实施方式的用于预测一系列单步行为的设备的示意性结构
图;以及
15.图7是根据本公开的实施方式的电子装置的框图。
具体实施方式
16.下面将参考附图详细描述本公开的实施方式。应理解,本文描述的具体实施方式仅用于解释相关的公开内容,而非限制本公开内容。另外,应注意,为了便于描述,在附图中仅示出了与相关公开有关的部件。
17.还应注意,本公开中的一些实施方式和本公开中的一些特征可在不冲突的基础上彼此结合。下面将参考附图并结合实施方式详细描述本公开的特征。
18.图1是根据本公开的实施方式的用于在任务环境中导航机器人的方法的流程图。在本公开的实施方式中公开的方法可由用于在任务环境中导航机器人的设备来执行,该设备可以以软件和/或硬件来实现,并且可被集成在具有计算能力的任何电子装置(诸如,服务器或终端)上。
19.如图1所示,在本公开的实施方式中公开的用于在任务环境中导航机器人的方法可包括步骤s101以及步骤s102。步骤s101通过预训练的序列预测模型接收任务环境的导航图、自然语言指令以及机器人在导航图中的初始位置;步骤s102通过预训练的序列预测模型,依次预测机器人可执行的一系列单步行为,以将机器人从初始位置导航到目的地。在下文中,将参考这两个步骤进行详细描述。
20.步骤s101:
21.机器人可被放置于环境中并需要在整个环境中导航。机器人需要在其中导航的环境被称为任务环境。任务环境可以是无法进行gps定位的环境、室内空间等。示例性任务环境在图2a中示出。
22.当机器人沿走廊行进时,机器人仅需知道其正在沿着具有正确语义的空间移动,而该空间无需具有某些几何规范(诸如路径宽度和曲率)。因此,机器人在整个任务环境中的导航可通过将任务环境表示为拓扑图来实现。拓扑图中的节点可指代语义上有意义的位置(诸如房间和走廊),而边可指示连通性。拓扑地图可用作用于在整个任务环境中导航机器人的导航图。与图2a的任务环境对应的示例性导航图在图2b中示出。
23.在一些实施方式中,利用无向边和节点坐标一起对导航图进行编码。无向边在导航图中可被示为非定向或双向的边。作为示例,在图2b中将无向边示为双向边。
24.在导航图中呈现真实的几何信息使得人们能够基于实际的在线导航进度自适应地解释环境知识。通过滤除特定导航进程中不必要的信息,这可产生更紧凑且更具方向性的路由表示。
25.在示例性场景中,正如图2a所示,当机器人位于办公室-3中并且需导航到办公室-0时,可使用自然语言的各种指令序列来指导机器人沿预期路线移动到办公室-0。作为示例,在图2a中示出预期路线。各种指令序列可包括“在离开房间后左转。向前移动,再次左转并沿走廊行进。在尽头左转并进入左边的第二个房间”、或者“离开房间。左转并到达走廊的尽头。左转并向前行进直至尽头。左转。向前移动并到达左边的第二个房间”。尽管包括相同的导航语义(即,“离开”、“左转”、“移动”、“左转”等),但这两个指令序列依赖于路线的不同分段和关键行为的排序。从办公室-3到办公室-0的导航机器人的预期路线也在图2b中示
出。图2b中所示的节点序列4-3-5
‑…
等效于图2a所示的预期路线。
26.在一些实施方式中,将包括节点、节点的坐标和节点之间的边的导航图、自然语言指令、以及机器人的初始位置或初始节点输入到预训练的序列预测模型中,以用于序列预测模型基于其生成一系列单步行为,机器人可执行一系列单步行为以导航机器人从初始位置(例如,办公室-3)到目的地(例如,办公室-0)。
27.步骤s102:
28.序列预测模型可以是利用注释的样本导航图和对应的自然语言样本指令进行预训练的神经网络模型。
29.在一些实施方式中,序列预测模型依次预测机器人可执行的一系列单步行为。
30.图3示出了根据本公开的实施方式的用于预测一系列单步行为的方法的示意图。如图3所示,用于预测一系列单步行为的方法采用三个输入:(1)具有无向边e、节点n和节点坐标x的导航图g;(2)自然导航指令i;以及(3)初始位置s∈n。序列预测模型可生成行为序列u
0:t-1
:=(u0、

、u
t-1
),机器人可执行行为序列u
0:t-1
,以如自然导航指令i中所述从s导航到目标状态g。
31.在模型的训练期间,给定训练样本目标是通过求解下式来推断反映考虑新导航查询的指令的行为序列
[0032][0033]
由于目标是高级行为规划,因而由指令描述的目标状态可仅指定目标位置,而不指定期望的行进方向。因此,在不丧失导航能力的情况下,本公开的实施方式保持简单的行为集b:={be(即,“离开”),br(即,“右转并移动”),b
l
(即,“左转并移动”),以及bf(即,“向前移动”)}。所提出的解决方案不同于在每种不同情况下(诸如“在t字路口处直行”和“在走廊上直行”)的相同移动分配单独的行为。该紧凑的行为集有助于将学习集中于将指令与导航移动相匹配,而非与特定环境相匹配,从而有效地提高了通用性。
[0034]
给定动作序列u
0:t-1
:=(u0、

、u
t-1
),机器人可在时间t采取动作u
t
并从节点n
t
迁移至n
t 1
。预期的整个导航从n0=s开始,并在目标状态n
t
=g处终止。在一些实施方式中,假定机器人始终朝移动方向行进,通过比较移动前后机器人的行进方向,可将每个动作u
t
分类为u
t
=b∈b。假设在时间t,机器人处于节点n
t
。然后,通过计算行进方向。然后,通过计算行进方向与的叉积,可将动作u
t
分类为
[0035][0036]
其中n
t 1
可始终不同于n
t-1
。特别地,在t=0时,假定机器人在房间节点s处并仅具有一个有效行为“离开”。这样,从n
t
到n
t 1
的有效转移可被表示为元组《n
t
,u
t
,n
t 1
》,其中u
t
是根据以上等式(2)推断的。还可以编码特殊行为bs(即,“停止”),该行为可由机器人在任何时间t≥t采用,以指示导航终止。
[0037]
在图3中提出的序列预测模型构造成两部分:门控循环单元(gru)组件,该gru组件
以隐藏状态h
t
的形式跟踪导航进度;以及导航代理,该导航代理选择下一动作u
t
。在每个步骤,gru组件以先前的动作u
t-1
作为输入并更新隐藏状态h
t
。导航代理结合导航进度h
t
、导航图g和指令i以选择下一动作u
t
。然后,机器人根据u
t
和由图g定义的转移模型,从n
t
移动到n
t 1
。重复相同的过程,直到导航代理选择指示到达目标的动作bs(即,“停止”)。换言之,所提出的模型解决了一系列单步动作预测问题,每个单步动作预测问题取决于先前步骤中的解。
[0038]
在一些实施方式中,对于预测期间的每个单步,通过使导航图适应于与单步对应的当前预测过程来产生适应性上下文,并且至少基于所产生的适应性上下文和自然语言指令来预测用于当前单步的单步行为。通过使导航图适应于与当前单步对应的实际预测过程,其在遵循导航指令时遵守如下观察:人类通常在局部视野上搜索相关的信息,而并非一直对整个地图给予同等的关注度。通过使导航图适应当前单步对应的实际预测过程,并基于所适应的上下文来预测用于当前单步的单步行为,指令语义与导航规划之间的灵活对应关系所面临的挑战利用了对新的且大型地图的有限扩展得以解决。
[0039]
在一些实施方式中,知识库适配可通过所谓的d-步动作传播来实现。还可采用用于实现知识库适配的其它方法。
[0040]
作为示例,图4示出了用于生成适应性上下文的3-步动作传播。是完整导航图g的子集,其仅包括取决于实际导航进度n
0:t
而在有界的前项视野中的有效导航移动。
[0041]
图g的连通性信息g:=《e,n,x》可被表示成一组元组{《n,b,n’》i},每个元组表示从具有类型b的节点n移动到具有类型b的节点n’的有效导航行为。如前述部分中所述,用于有向边《n,n’》的有效行为类型b取决于在到达n之前机器人可能的先前位置n
prev
。因此,转移《n,b,n’》可替换地表示为“先前-当前-下个”的格式《n
prev
,n,n’》,由此可根据上述等式(2)推断b。为了适应知识库g,搜索在接下来的d个步骤中可采取的有效行为。换言之,模拟从即时历史《n
t-1
,n
t
》继续的机器人移动,并记录任何有效的节点转移及其行为类型。在下文中,将这种过程称为d-步动作传播。这种过程实现为:采用《n
t-1
,n
t
》作为初始元素,对g中的有向边进行有界的广度优先搜索。每当从队列中弹出一个有向边《n
prev
,n》时,收集n中非n
prev
的所有邻居n’。对于每个n’,将《n,n’》添加到队列中并组成元组《n
prev
,n,n’》。随后将该元组转换为图格式《n,b,n’》,其中,行为类型b是根据上面的等式(2)由坐标x(n
prev
)、x(n)和x(n’)推断的。可收集n’与当前节点n
t
之间的距离处于d内的所有有效转移。这在时间步骤t处产生适应性上下文对于d-步动作传播算法的概述,参见算法1。
[0042][0043]
图5是根据本公开的实施方式的导航代理的示意图。导航代理的构建主要包括:
[0044]
上下文和指令嵌入:对导航上下文(或静态上下文中的g)和指令i进行编码。中的转移元组《n,b,n’》中的每个均被编码为长度为2|n| |b|的向量,其中|n|和|b|分别指代图g中的节点数量和有效行为数量。上下文最终被编码到大小为的矩阵中,其中l
t
表示包括在中的转移数量。指令i通过来自bert的预训练模型的令牌嵌入而被编码为大小为的矩阵,其中m表示指令中的最大令牌数。
[0045]
特征提取:特征提取是在上下文和指令嵌入两者上执行的。在一些实施方式中,使用多层双向门控循环单元(gru)来生成大小为的上下文特征其中h表示gru的隐藏大小。在一些实施方式中,同一gru用于产生大小为的指令特征
[0046]
上下文指令关注度:现在经由关注度机制在导航上下文和指令之间寻找对应关系。在一些实施方式中,使用仅上下文特征涉及指令特征的单向关注度。值得注意,在适应性上下文的设置下,关注度机制不仅类似于人们在地图上搜索路径的方式,而且还类似于人们在决定下个移动时主要关注附近环境的事实。在指令基于局部环境而非全局地标时尤其如此。
[0047]
对于的每一行计算对的关注度分布w
ti

[0048][0049]
其中表示可训练参数。然后通过以下等式计算每个转移特征的关注度向量r
ti

[0050][0051]
聚合所有的r
ti
,获得大小为的关注度矩阵r
t

[0052]
进度-感知上下文:本节结合了导航上下文指令关注度特征r
t
、以及在时间t处来自gru组件的当前隐藏状态h
t

[0053]
首先,组合和r
t
以计算混合的上下文和指令特征:
[0054][0055]
其中表示将特征维度降低到h的可训练参数。然后,注意隐藏状态h
t
到c
t
以捕获与当前导航进度相关的上下文特征。关注度权重α
t
计算如下:
[0056][0057][0058]
其中w1、是可训练参数。然后,将过程感知上下文计算为
[0059]
行为预测:最终过程感知上下文s
t
和隐藏状态h
t
被组合以在时间t处生成策略。通过将s
t
与h
t
级联并馈入完全连接层来计算原始动作概率特征
[0060][0061]
其中表示可训练参数。结果是针对每个导航行为b∈b的偏好向量,以及指示任务终止的特定停止动作bs。
[0062]
为了生成动作u
t
,应用softmax函数:
[0063][0064]ut
=argmax(softmax(o
t
))
ꢀꢀ
(9)
[0065]
在一些实施方式中,掩蔽函数的输入包括整个导航图g和直至当前步t的导航轨迹n
0:t
。该函数生成大小与相同的零向量,其中用-∞替换无效行为。为了确定某个行为b是否有效,检查是否存在满足以下条件的n
t
的邻居节点n’:
[0066]n′
≠n
t-1
and b=b(n
t-1
,n
t
,n

)by eq.(2)
ꢀꢀ
(10)
[0067]
在一些实施方式中,当n
t
=nt-1(或u
t-=bs)时,由于导航已经终止,因而在时间t强制执行停止动作。值得注意,在每个步骤t处的有效动作空间不仅由位置nt确定,而且由历史位置nt-1确定。这种设置解除了将行为语义与位置绑定的要求,从而实现了紧凑的知识表示和行为语义的灵活推测。
[0068]
进一步参考图6,作为用于预测一系列单步行为的方法的实现方式,本公开的实施方式提供了用于预测一系列单步行为的设备,并且该设备的实施方式与上述各种方法实施
方式对应,并且该设备可具体应用于各种电子装置。
[0069]
如图6所示,用于预测本实施方式的一系列单步行为的设备600包括接收单元601和预测单元602。接收单元601配置为接收任务环境的导航图、机器人的自然语言指令以及导航图中的初始位置,其中,导航图包括指示任务环境中的位置的节点、节点的坐标以及指示位置之间的连通性的边。预测单元602配置为依次预测机器人可执行的一系列单步行为,以将机器人从初始位置导航到目的地。
[0070]
在一些实施方式中,预测单元还包括适应性上下文生成子单元和预测子单元。适应性上下文生成子单元配置为:对于预测期间的每个单步,通过使导航图适应于与单步对应的当前预测过程来生成适应性上下文。预测子单元配置为至少基于所生成的适应性上下文和自然语言指令来预测用于单步的单步行为。
[0071]
在一些实施方式中,适应性上下文生成子单元还配置为:在导航图中搜索与单步对应的当前节点与除当前节点的先前节点外的邻居节点之间的有效节点转移;基于当前节点的坐标、当前节点的先前节点的坐标以及除当前节点的先前节点外的邻居节点的坐标,预测有效节点转移的行为;将邻居节点作为新的当前节点,并重复搜索和预测步骤,直至作为新的当前节点的节点与当前单步的当前节点之间的距离处于预设值内;以及将所找到的有效节点转移及其预测行为全部转换为图形格式,以生成用于每个单步的适应性上下文。
[0072]
在一些实施方式中,有效节点转移的行为是从由以下各项组成的行为集来预测的:离开、右转并移动、左转并移动、以及向前移动。
[0073]
在一些实施方式中,适应性上下文生成子单元还配置为:通过从当前节点的坐标中减去先前节点的坐标,确定机器人在当前节点处的行进方向;通过从邻居节点的坐标中减去当前节点的坐标,确定机器人在邻居节点处的行进方向;计算机器人在当前节点的行进方向与机器人在邻居节点处的行进方向的叉积;基于所计算的叉积,预测有效节点转移的单步行为。
[0074]
在一些实施方式中,预测子单元还配置为:基于所生成的适应性上下文、自然语言指令以及由门控循环单元(gru)更新的当前隐藏状态,预测用于单步的单步行为,其中,gru采用先前单步的先前单步行为作为输入并进行更新以获得当前隐藏状态。
[0075]
在一些实施方式中,用于预测一系列单步行为的设备还包括导航图创建单元,该导航图创建单元配置为:创建任务环境的拓扑图,其中,任务环境中的位置作为拓扑图的节点,并且位置之间的连接性作为拓扑图的边;将所创建的拓扑图确定为任务环境的导航图。
[0076]
设备600对应于前述方法实施方式中的步骤。因此,在上述用于预测一系列单步行为的方法中可实现的操作、特征和技术效果也适用于设备600以及其中所包括的单元,将省略其详细描述。
[0077]
根据本公开的实施方式,提供了一种电子装置和可读存储介质。
[0078]
如图7所示,示出根据本公开的实施方式的用于预测一系列单步行为的方法的电子装置的框图。电子装置旨在表示各种形式的数字计算机,诸如便携式计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机和其它合适的计算机。电子装置还可表示各种形式的移动设备,诸如个人数字处理器、蜂窝电话、智能电话、可穿戴装置和其它类似的计算设备。本文所示的部件及其连接和关系及其功能仅仅是示例,而不是旨在限制本文和/或要求保护的本公开的实施方式。
[0079]
如图7所示,电子装置包括:一个或多个处理器701、存储器702以及用于连接各种部件的接口(包括高速接口和低速接口)。各种部件使用不同的总线彼此连接,并可根据需要安装在通用主板上或以其它方法安装。处理器可处理在电子装置内执行的指令,包括存储在存储器中或存储器上的指令,以在外部输入/输出设备(诸如联接到接口的显示装置)上显示gui的图形信息。在其它实施方式中,根据需要,多个处理器和/或多个总线可连同多个存储器一起使用。类似地,可连接多个电子装置,并且这些装置提供了一些必要操作,例如作为服务器阵列、一组刀片式服务器或多处理器系统。在图7中,作为示例,使用一个处理器701。
[0080]
存储器702是本公开的实施方式中提供的非暂时性计算机可读存储介质。存储器存储可由至少一个处理器执行的指令,使得至少一个处理器执行由本公开的实施方式提供的用于预测一系列单步行为的方法。本公开的非暂时性计算机可读存储介质存储用于使计算机执行本公开的实施方式中提供的用于预测一系列单步行为的方法的计算机指令。
[0081]
作为非暂时性计算机可读存储介质的存储器702可用于存储非暂时性软件程序、非暂时性计算机可执行程序和模块,诸如与本公开的实施方式中的用于预测一系列单步行为的方法对应的程序指令/模块(例如,如图6所示的接收单元601和预测单元602)。处理器701执行存储在存储器702中的非暂时性软件程序、指令和模块,以执行服务器的各种功能应用和数据处理,即实现前述方法实施方式中的用于预测一系列单步行为的方法。
[0082]
存储器702可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统和至少一个功能所需的应用程序,以及存储数据区可存储通过使用电子装置创建的用于预测一系列单步行为的数据。另外,存储器702可包括高速随机存取存储器,并且还可包括非暂时性存储器,诸如至少一个磁盘存储装置、闪存装置或其它非暂时性固态存储装置。在一些实施方式中,存储器702可以可选地包括相对于处理器701远程设置的存储器,并且这些远程存储器可连接到电子装置以通过网络预测一系列单步行为。上述网络的示例包括但不限于互联网、内联网、局域网、移动通信网络及其组合。
[0083]
用于预测一系列单步行为的方法的电子装置还可包括输入设备703和输出设备704。处理器701、存储器702、输入设备703和输出设备704可通过总线705或其它方法连接。在图7中,作为示例,使用通过总线705的连接。
[0084]
输入设备703可接收输入的数字或字符信息,并产生与用户设置和用于预测一系列单步行为的方法的电子装置的功能控制相关的键信号输入,输入设备703例如是触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或多个鼠标按钮、轨迹球、操纵杆和其它输入设备。输出设备704可包括显示装置、辅助照明设备(例如,led)、触觉反馈设备(例如,振动马达)等。显示装置可包括但不限于液晶显示器(lcd)、发光二极管(led)显示器和等离子体显示器。在一些实施方式中,显示装置可以是触摸屏。
[0085]
本文描述的系统和技术的各种实施方式可在数字电子电路系统、集成电路系统、专用应用的专用集成电路(asic)、计算机硬件、固件、软件和/或其组合中实现。这些各种实施方式可包括:可在一个或多个计算机程序中实现,计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释。可编程处理器可以是专用或通用可编程处理器,以及可从存储器系统、至少一个输入设备和至少一个输出设备接收数据和指令,并将数据和指令传输到存储系统、至少一个输入设备和至少一个输出设备。
[0086]
这些计算程序(也称为程序、软件、软件公开或代码)包括可编程处理器的机器指令,并且可使用高级过程和/或面向对象的编程语言和/或汇编/机器语言来实现。如本文所使用的,术语“机器可读介质”和“计算机可读介质”表示用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑设备(pld)),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”表示用于向可编程处理器提供机器指令和/或数据的任何信号。
[0087]
为了提供与用户的交互,本文描述的系统和技术可在计算机上实现,该计算机具有诸如阴极射线管(crt)或液晶显示器(lcd)监视器的显示设备、以及诸如鼠标或轨迹球的键盘和定点设备,其中显示设备用于向用户显示信息,以及用户可使用键盘和定点设备向计算机提供输入。其它类型的设备也可用于提供与用户的交互。例如,提供给用户的反馈可以是任何形式的感觉反馈,诸如视觉反馈、听觉反馈或触觉反馈;并且可使用任何形式(包括声音输入、语音输入或触觉输入)来接收来自用户的输入。
[0088]
本文所述的系统和技术可在包括后端部件(例如,作为数据服务器)的计算系统中实现,或者在包括中间件部件(例如,应用服务器)的计算系统中实现,或者在包括前端部件的计算系统中实现(例如,具有图形用户界面或web浏览器的用户计算机,用户可通过图形用户界面或web浏览器用本文所述的系统和技术的实施方式进行交互)、或者在包括这种后端部件、中间件部件或前端部件的任何组合的计算系统中实现。系统的部件可通过任何数字数据通信形式或介质(例如,通信网络)互连。通信网络的示例包括局域网(lan)、广域网(wan)、互联网和区块链网络。
[0089]
计算机系统可包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器之间的关系由在相应计算机上运行且彼此具有客户端-服务器关系的计算机程序生成。
[0090]
以上描述仅提供对本公开的优选实施方式和本文中所使用的技术原理的解释。本领域技术人员应理解,本公开的发明范围不限于由上述技术特征的特定组合形成的技术方案。应当在不脱离本公开的概念的情况下,本发明的范围还涵盖由上述技术特征或其等同特征的任何组合形成的其它技术方案,例如但不限于,通过将上述特征与本公开的实施方式中公开的具有类似功能的技术特征互换而形成的技术方案。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献