CN108292139B - 由机器人同时进行地图绘制和规划 - Google Patents
由机器人同时进行地图绘制和规划 Download PDFInfo
- Publication number
- CN108292139B CN108292139B CN201680070400.7A CN201680070400A CN108292139B CN 108292139 B CN108292139 B CN 108292139B CN 201680070400 A CN201680070400 A CN 201680070400A CN 108292139 B CN108292139 B CN 108292139B
- Authority
- CN
- China
- Prior art keywords
- robot
- path
- occupancy level
- planning
- mapping
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000013507 mapping Methods 0.000 title claims abstract description 43
- 238000000034 method Methods 0.000 claims abstract description 47
- 238000005315 distribution function Methods 0.000 claims abstract description 17
- 230000006870 function Effects 0.000 claims description 47
- 238000005259 measurement Methods 0.000 description 60
- 238000012545 processing Methods 0.000 description 40
- 230000009471 action Effects 0.000 description 11
- 238000013459 approach Methods 0.000 description 8
- 230000033001 locomotion Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 210000004027 cell Anatomy 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 239000000446 fuel Substances 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 239000005022 packaging material Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 210000000653 nervous system Anatomy 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000946 synaptic effect Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3837—Data obtained from a single source
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3863—Structures of map data
- G01C21/387—Organisation of map data, e.g. version management or database structures
- G01C21/3881—Tile-based structures
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0217—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0274—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40512—Real time path planning, trajectory generation
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40519—Motion, trajectory planning
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
- G05D1/0251—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S901/00—Robots
- Y10S901/01—Mobile robot
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Databases & Information Systems (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
一种方法由机器人基本上同时规划路径并绘制环境的地图。该方法确定地图中的位置的占用水平的均值。该方法还包括确定占用水平的概率分布函数(PDF)。该方法进一步包括基于该PDF来计算成本函数。最后,该方法包括基于成本函数来同时规划路径并绘制环境的地图。
Description
相关申请的交叉引用
本申请根据35 U.S.C.§119(e)要求于2015年12月2日提交的题为“SIMULTANEOUSMAPPING AND PLANNING BY A ROBOT(由机器人同时进行地图绘制和规划)”的美国临时专利申请No.62/262,275的权益,其公开内容通过援引全部明确纳入于此。
背景
领域
本公开的某些方面一般涉及机器学习,尤其涉及改进由机器人同时规划并绘制环境的地图的***和方法。
背景技术
机器人可被设计成高度自主地执行行为或任务。机器人可使用不同的模块和组件来执行各种任务。例如,机器人可具有用于定位、地图绘制和规划的不同组件。定位涉及对确定该机器人位于何处的问题进行求解。机器人从其传感器接收输入以理解该机器人位于环境内何处。
地图绘制涉及构建环境的表示。例如,地图绘制被用来确定环境的哪一部分被占用以及哪些部分是自由空间。此外,地图绘制可防止机器人与障碍物碰撞。
经由批处理办法生成的地图可在已遍及要绘制地图的环境搜集到多个传感器测量之后立即生成。即,在批处理办法中,要绘制地图的环境中的所有数据是在计算地图之前搜集的。然而,在一些情形中,机器人可能无法在计算地图之前搜集环境中的所有数据。
因此,在一些情形中,增量办法被指定用于生成地图。经由增量办法生成的地图可基于从机器人附近收集的初始数据来计算,并用每个新的传感器测量来更新。每个新的传感器测量可基于机器人改变其位置、从相同位置测量不同区域、或执行相同的冗余测量。对于增量办法,传感器测量是相互独立的。因此,机器人可在计算地图时使用假定。由此,在计算增量地图时可能存在一些不确定性。
规划涉及确定在机器人知晓环境的布局后如何执行任务并且该机器人将如何从点A行进至点B。即,在一些情形中,在从当前位置移至目标之前,以最低的成本从在规划阶段期间评估的多个候选轨迹中确定到目标的轨迹(例如,路径)是合乎需要的。即,机器人选择轨迹包括评估沿着多个候选轨迹中的每一者的每一个体素的预测密度。成本考虑体素的差异以及用于从当前位置行进至目标的资源。由此,当确定轨迹时,确定地图中的每一个位置的占用水平并且还确定该占用水平的概率分布函数(PDF)可以是合乎需要的。此外,基于PDF来确定成本函数以改进路径规划可以是合乎需要的。
概述
在本公开的一方面,公开了一种用于基本上同时规划路径并绘制环境的地图的方法。该方法包括确定地图中的位置的占用水平的均值。该方法还包括确定占用水平的概率分布函数(PDF)。该方法进一步包括基于该PDF来计算成本函数。该方法还进一步包括基于成本函数来同时规划路径并绘制环境的地图。
本公开的另一方面涉及一种装备,该装备包括用于确定地图中的位置的占用水平的均值的装置。该装备还包括用于确定占用水平的PDF的装置。该装备进一步包括用于基于该PDF来计算成本函数的装置。该装备还进一步包括用于基于成本函数来同时规划路径并绘制环境的地图的装置。
在本公开的另一方面,公开了一种其上记录有非瞬态程序代码的非瞬态计算机可读介质。程序代码用于基本上同时规划路径并绘制环境的地图。程序代码由处理器执行并且包括用于确定地图中的位置的占用水平的均值的程序代码。该程序代码还包括用于确定占用水平的PDF的程序代码。该程序代码还包括用于基于该PDF来计算成本函数的程序代码。该程序代码还进一步包括用于基于成本函数来同时规划路径并绘制环境的地图的程序代码。
本公开的另一方面涉及一种用于基本上同时规划路径并绘制环境的地图的装置,该装置具有存储器单元以及耦合至该存储器单元的一个或多个处理器。(诸)处理器被配置成确定地图中的位置的占用水平的均值。(诸)处理器还被配置成确定占用水平的PDF。(诸)处理器还被配置成基于该PDF来计算成本函数。(诸)处理器还被进一步配置成基于成本函数来同时规划路径并绘制环境的地图。
本公开的附加特征和优点将在下文描述。本领域技术人员应当领会,本公开可容易地被用作修改或设计用于实施与本公开相同的目的的其他结构的基础。本领域技术人员还应认识到,这样的等效构造并不脱离所附权利要求中所阐述的本公开的教导。被认为是本公开的特性的新颖特征在其组织和操作方法两方面连同进一步的目的和优点在结合附图来考虑以下描述时将被更好地理解。然而,要清楚理解的是,提供每一幅附图均仅用于解说和描述目的,且无意作为对本公开的限定的定义。
附图简述
在结合附图理解下面阐述的详细描述时,本公开的特征、本质和优点将变得更加明显,在附图中,相同附图标记始终作相应标识。
图1解说了根据本公开的某些方面的使用片上***(SOC)(包括通用处理器)来同时规划路径并绘制环境的地图的示例实现。
图2解说了根据本公开的各方面的***的示例实现。
图3A、3B和3C解说了根据本公开各方面的机器人执行测量的示例。
图4解说了根据本公开各方面的要绘制地图的环境的示例。
图5A、5B和5C解说了根据本公开的各方面的轨迹的各方面。
图6A-6G是根据本公开的各方面的经地图绘制的区域中的机器人。
图7是解说示例性设备中的不同模块/装置/组件的框图。
图8解说了根据本公开的各方面的用于由机器人来同时规划路径并绘制环境的地图的方法的流程图。
详细描述
以下结合附图阐述的详细描述旨在作为各种配置的描述,而无意表示可实践本文中所描述的概念的仅有配置。本详细描述包括具体细节以便提供对各种概念的透彻理解。然而,对于本领域技术人员将显而易见的是,没有这些具体细节也可实践这些概念。在一些实例中,以框图形式示出了众所周知的结构和组件以避免湮没此类概念。
基于本教导,本领域技术人员应领会,本公开的范围旨在覆盖本公开的任何方面,不论其是与本公开的任何其他方面相独立地还是组合地实现的。例如,可以使用所阐述的任何数目的方面来实现装置或实践方法。另外,本公开的范围旨在覆盖使用作为所阐述的本公开的各个方面的补充或者与之不同的其他结构、功能性、或者结构及功能性来实践的此类装置或方法。应当理解,所披露的本公开的任何方面可由权利要求的一个或多个元素来实施。
措辞“示例性”在本文中用于表示“用作示例、实例、或解说”。本文中描述为“示例性”的任何方面不必被解释为优于或胜过其他方面。
尽管本文描述了特定方面,但这些方面的众多变体和置换落在本公开的范围之内。虽然提到了优选方面的一些益处和优点,但本公开的范围并非旨在被限定于特定益处、用途或目标。相反,本公开的各方面旨在能宽泛地应用于不同的技术、***配置、网络和协议,其中一些作为示例在附图以及以下对优选方面的描述中解说。详细描述和附图仅仅解说本公开而非限定本公开,本公开的范围由所附权利要求及其等效技术方案来定义。
对于自主***(诸如机器人),期望构造机器人周围环境的准确地图。可经由传感器(诸如立体视觉传感器)来生成地图。此外,在为大型环境构造地图时,增大体素大小以使计算保持易于处理。
在一种配置中,为确定地图,地图可被划分成体素(例如,单元)。每个体素可具有以下状态:被占用(例如,满)、部分被占用、或空。在使用增量办法(例如,增量数据)来生成地图时,常规技术可能计算出不一致的地图,可能不计及所确定的体素占用水平的不确定性,和/或可能不确定体素的占用水平(例如,满、部分满、或空)。例如,在常规***中,在使用增量办法来计算地图时,体素要么是0(例如,空)要么是1(例如,满)。常规***在计算地图时不考虑体素的占用水平。在本公开中,占用水平可以指在空间中的占用率。此外,占用水平还可被称为占用率和/或密度。
在给定由自主设备(诸如机器人)观察到的数据的情况下,本公开的各方面确定体素的占用水平,并且还确定占用水平的概率分布函数(PDF)。另外,本公开的各方面基于PDF来确定成本函数。最后,本公开的各方面基于成本函数来规划路径并绘制环境的地图。在一种配置中,路径规划和地图绘制是同时执行的。
图1解说了根据本公开的某些方面的使用片上***(SOC)100来由机器人进行地图绘制和规划的上述方法的示例实现,该SOC 100可包括通用处理器(CPU)或多核通用处理器(CPU)102。变量(例如,神经信号和突触权重)、与计算设备相关联的***参数(例如,带有权重的神经网络)、延迟、频率槽信息、以及任务信息可被存储在与神经处理单元(NPU)108相关联的存储器块、与CPU 102相关联的存储器块、与图形处理单元(GPU)104相关联的存储器块、与数字信号处理器(DSP)106相关联的存储器块、专用存储器块118中,或可跨多个块分布。在通用处理器102处执行的指令可从与CPU 102相关联的程序存储器加载或可从专用存储器块118加载。
SOC 100还可包括为具体功能定制的附加处理块(诸如GPU 104、DSP 106、连通性块110(其可包括***长期演进(4G LTE)连通性、无执照Wi-Fi连通性、USB连通性、蓝牙连通性等))以及例如可检测和识别姿势的多媒体处理器112。在一种实现中,NPU实现在CPU、DSP、和/或GPU中。SOC 100还可包括传感器处理器114、图像信号处理器(ISP)、和/或导航120(其可包括全球定位***)。
SOC 100可基于ARM指令集。在本公开的一方面,加载到通用处理器102中的指令可包括用于确定位置的占用水平的概率分布函数(PDF)的代码。加载到通用处理器102中的指令可进一步包括用于基于PDF来计算成本函数的代码。加载到通用处理器102中的指令可进一步包括用于基于成本函数来同时规划路径并绘制环境的地图的代码。
图2解说了根据本公开的某些方面的***200的示例实现。如图2中所解说的,***200可具有可执行本文所描述的方法的各种操作的多个局部处理单元202。每个局部处理单元202可包括局部状态存储器204和可存储神经网络的参数的局部参数存储器206。另外,局部处理单元202可具有用于存储局部模型程序的局部(神经元)模型程序(LMP)存储器208、用于存储局部学习程序的局部学习程序(LLP)存储器210、以及局部连接存储器212。此外,如图2中所解说的,每个局部处理单元202可与用于为该局部处理单元的各局部存储器提供配置的配置处理器单元214对接,并且与提供各局部处理单元202之间的路由的路由连接处理单元216对接。
在一种配置中,机器学***的均值;确定占用水平的概率分布函数(PDF);基于该PDF来计算成本函数;和/或基于该成本函数来同时规划路径并绘制环境的地图。该模型包括确定装置、计算装置和/或同时进行地图绘制和规划装置。在一个方面,上述各装置可以是被配置成执行所叙述功能的通用处理器102、与通用处理器102相关联的程序存储器、存储器块118、局部处理单元202、和/或路由连接处理单元216。在另一配置中,前述装置可以是配置成执行由前述装置所叙述的功能的任何模块或任何装置。
根据本公开的某些方面,每个局部处理单元202可被配置成基于模型的一个或多个期望功能特征来确定模型的参数,以及随着所确定的参数被进一步适配、调谐和更新来使这一个或多个功能特征朝着期望的功能特征发展。
由机器人同时进行地图绘制和规划
如先前所讨论的,本公开的各方面涉及确定每个体素的占用水平以及确定所确定的占用水平的置信水平。在给定由设备(诸如机器人)(例如,自主设备)观察到的数据的情况下,置信水平可被称为体素的概率分布函数(PDF)。地图的置信水平可基于地图中的每个体素的置信水平。此外,基于PDF,机器人可以能够在具有与物体碰撞的最低可能性的情况下规划路线(例如,最安全的路线)。最安全的路线可基于成本函数来确定。
在一种配置中,地图绘制模块被指定用于设备(诸如机器人)。地图绘制模块可以是数字信号处理器(DSP)、应用处理器、图形处理单元(GPU)、和/或另一模块。可指定地图绘制模块以改善使用增量数据所生成的地图的准确性。此外,地图绘制模块可以处理体素的占用水平(例如,启用较大体素并且降低计算复杂性),和/或在地图构造中纳入传感器模型,诸如随机传感器模型。另外,地图绘制模块可以处理地图中的体素的占用水平,并且确定所确定的占用率的置信水平。最后,地图绘制模块可被用于改善不确定性情况下的规划。本公开的各方面涉及生成用于机器人的地图以及选择具有最低成本的轨迹。然而,这些地图不限于被生成用于机器人,并且还构想了用于任何类型的设备,诸如举例而言汽车、飞机、船、和/或人类。此外,在一种配置中,该设备是自主的。
图3A、3B和3C解说了根据本公开各方面的机器人执行测量的示例。图3A解说了机器人300经由机器人300的一个或多个传感器(未示出)执行测量的示例。测量可以指基于射线是否被体素截断所获得的测量。当然,本公开的各方面不限于测量射线,并且还构想了用于其他类型的测量。如图3A所示,机器人300的传感器可具有测量锥(cone)302,以使得该传感器接收来自锥302内的区域304的测量。
如图3B所示,根据本公开的一方面,机器人300可被置于要绘制地图的环境306中。要绘制地图的环境306可包括多个体素308。如图3B所示,基于由传感器作出的测量,传感器可确定测量锥302内每个体素308的占用水平。应注意,图3B的体素308用于解说目的,本公开的体素并不限于图3B中示出的体素大小或数目。
如图3C所示,根据本公开的一方面,机器人300可在不同位置处执行测量。对于增量办法,基于在第一位置处获得的测量来生成地图,并且随着机器人移至要绘制地图的环境306中的不同位置而更新所生成的地图。在不同时间(例如,不同时步)执行不同位置处的测量。例如,机器人300可在第一时间在第一位置处执行第一测量,并且在第二时间在第二位置处执行第二测量。
图4解说了根据本公开各方面的要绘制地图的环境400的示例。如图4所示,机器人(未示出)可创建要绘制地图的环境400的网格。该网格形成多个体素402。此外,在此示例中,物体404在要绘制地图的环境400内。由此,如图4所示,一些体素402为空,一些体素402A-402F被部分占用,并且一个体素402G被完全占用。
如图3B、3C和4所示,要绘制地图的环境可被表示为网格。网格中的每个单元可被称为体素。此外,如先前所讨论的,每个体素具有占用水平。占用水平可被称为占用率和/或密度。占用水平(d)可以是具有均值和方差的变量,诸如随机变量。均值指的是给定已由传感器从时步0到时步k(zo:k)收集到的测量的情况下的预期占用水平。方差指的是给定已由传感器从时步0到时步k(zo:k)收集到的测量的情况下的占用水平的确定性。
占用水平的均值可根据下式计算:
占用水平的方差可根据下式计算:
σd=Var[d|zo:k]
该均值和方差是根据所获得的所有测量(z0:k)来确定的。在常规***中,未针对体素的测量指定不确定性。例如,在常规***中,如果所报告的占用水平(例如,单元后验)是0.5,则路线规划器不能确定此0.5是由少许测量还是由数百个测量产生的。由此,该占用水平的可靠性是未知的。因此,常规***可能由于不准确的假定而导致不一致的地图。
在确定多个体素中的每个体素的占用水平(诸如平均占用水平)之后,期望确定所确定的占用水平的置信水平(例如,概率)。例如,如果多个测量已指示体素被占用,则与其中仅有一个测量已指示体素被占用的情况相比该体素被占用的概率较高。此外,如果体素的占用水平具有低置信水平(例如,置信水平低于阈值),则机器人可移至各个位置以采取附加测量来改善占用水平的置信度。
在一种配置中,更新规则被指定以确定地图(m)的体素i的占用水平(d)的概率(p)。概率(p)可被称为概率分布函数(PDF),其包括均值和方差(例如,占用水平的置信度)。在一种配置中,均值和方差可从体素的占用水平的PDF中提取。此外,可基于均值和方差来规划路径。即,基于均值和方差,为每一条路径确定成本。在一种配置中,机器人选择具有最低成本的路径。成本可基于平均占用水平、方差和/或用于遍历路径的资源。资源可以指用于遍历路径的资源,诸如燃料和/或能量。
图5A解说了具有起始位置502和结束位置504的路径500的示例。此外,如图5B所示,机器人预测将被路径500截获的体素506。如果体素506处于已绘制地图的区域中,则每一个体素506的均值和方差基于已由传感器从时步0到时步k(zo:k)收集到的测量而是已知的。
在一些情形中,一个或多个体素506可处于未绘制地图的区域中。另外,可能需要更新已绘制地图的区域中的体素506的测量。例如,体素可处于已绘制地图的区域中,然而机器人可能仅仅对该体素执行过一次测量。作为另一示例,从机器人传感器接收到的噪声数据可能不是完全可靠的。例如,被机器人传感器拾取的噪声干扰可能误导机器人在空间实际上是自由的时候确定该空间被占用。因此,可能存在体素测量中的高方差。由此,在规划路径时,机器人可确定沿着路径的时步,这些时步为机器人提供在每一个体素506处获得测量的机会。
图5C解说了时步508-524的示例,其中机器人有机会获取沿着路径500的体素506(未在图5C中示出)的测量。作为示例,路径500中的第一部分526中的从第一时步508到第六时步518的每一个时步之间的距离小于路径500的第二部分528中的从第七时步520到第九时步524的每一个时步之间的距离。即,如图5C所示,路径500的第一部分526弯曲。因此,机器人可以按降低的速度行进以循着该曲线导航。基于降低的速度,机器人可增加获取沿着该路径的测量的机会。即,路径500的第一部分526中的时步508-518之间的距离被缩短。作为第一部分526中的时步508-516之间的距离缩短的结果,测量准确性可以在第一部分526中提高。第一点与第二点之间的多个时步可指示机器人的速度。
此外,如图5C所示,路径500的第二部分528基本上是直线。因此,机器人可以沿该直线以提高的速度行进。基于提高的速度,机器人可减少获取沿着该路径的测量的机会。即,路径500的第二部分528中的时步520-524之间的距离被增加。作为第二部分528中的时步520-524之间的距离增加的结果,测量准确性可以在第二部分528中降低。
根据本公开的一方面,机器人在规划路线时不从第一点行进至第二点。例如,在规划路径500时,机器人不从起始位置502行进至结束位置504。相反,机器人确定体素(诸如图5B的体素506)并预测将沿着路径可用的时步(诸如图5C的时步508-524)。
如先前所讨论的,占用水平可基于来自每一时步的观察来更新。由此,在规划路线时,机器人确定沿着该路线的时步(例如,观察机会)的数目。时步可基于机器人的速度来预测。机器人还可以在每一时步处考虑其朝向(例如,机器人将面向的方向)。对于所预测的每一个时步,机器人可基于当前时步来预测体素的占用水平。
此外,在确定多个体素中的每个体素的占用水平(诸如平均占用水平)之后,期望确定所确定的占用水平的置信水平(例如,概率)。概率分布函数可使用所确定的占用水平。另外,基于体素的平均占用水平和方差来为每一条路径计算成本函数。机器人可确定多个路径的成本函数并且可选择具有最低成本的路径。
在一种配置中,更新规则被指定以确定地图(m)的占用水平(d)的概率(p)。概率(p)可被称为概率分布函数(PDF),其包括均值和方差(例如,占用水平的置信度)。体素i的占用水平的PDF可以如下计算:
在式1中,z0:k是将由传感器从时步0到时步k收集的所预测的测量。即,在给定从时步0到时步k的传感器测量(z0:k)的情况下,式1递归地确定时步k处的占用水平的概率(d)。该占用水平(d)是针对整个地图的。即,d是地图中所有体素的集合d1到dg,其中g是地图中的体素数目。在式1中,在给定了地图中所有体素的占用水平(d)的情况下,p(zk|d)是在时步k处获得测量(z)的可能性。此外,在式1中,p(d|z0:k-1)是在给定了从时步0到时步k-1的传感器测量(z0:k-1)的情况下,地图在时步k处的先前计算出的占用水平(d)。当然,因为机器人在确定每一条路径的成本时不沿该路径移动,所以式1的PDF基于所预测的测量。
在计算PDF后,机器人可确定在给定时步(k)处具有地图(m)的概率(p)。地图(m)包括体素i到n。在时步(k)处存在地图(m)的PDF可以如下计算:
如以上所讨论的,地图和/或每一个体素的PDF可以在每一个时步后更新。作为示例,体素可在第一时步处具有第一PDF,随后该PDF基于在第二时步处执行的测量被更新以生成第二PDF,并且第二PDF基于在第三时步处执行的测量被再次更新以生成第三PDF。可在每个时步处生成地图,以使得地图基于地图中的体素的经更新PDF被增量式地更新。式2可被表达为以聚焦于分布p(d|z0:k)的均值和方差。
如以上所讨论的,地图(m)包括体素i到n。由此,地图(m)(例如,全地图)在时步k处的的占用水平(d)可被表达为即,表示所有体素i到n在时步k处的占用水平。可基于每一个体素的PDF来为每一个体素确定平均占用水平和方差。
如先前所讨论的,在规划路线时,机器人确定将与该路线相交的体素。此外,在规划路线时,机器人还确定沿着该路线的时步(例如,观察机会)的数目由此,对于沿着路线(x)的每一个位置,机器人可确定对应于位置(x)的体素并且该机器人可以提取与该特定体素相关联的预测均值和方差。即,为沿着路径的体素预测密度的均值和方差,而不是对沿着路径的体素的均值和方差使用静态值。一旦特定时步处的所有体素的概率被知晓,即可计算下一时步中的地图的概率。
一位置处的体素(x)的均值和方差可以如下提取:
在式3中,函数返回与路径(例如,轨迹)上的一位置的体素(x)相关联的平均占用水平和方差(σd)。该位置可以是地图上或沿着轨迹的任何位置。机器人可确定哪一个体素(x)落入该位置。函数Den()可用于确定哪一个体素(x)落入该位置并返回该体素的均值和方差。在确定与该路径上的位置x的体素相关联的平均占用水平和方差(σd)后,将成本(c)与时步k处的位置(x)处的动作(u)相关联。成本函数可以是平均占用水平和方差的线性或非线性组合。因此,成本(c)可如下确定:
在式4中,时步k处的位置(x)处的平均占用水平通过α来惩罚。即,如果平均占用水平为高(例如,大于阈值),则该体素更有可能被占用。因此,为了防止冲突,平均占用水平被惩罚以防止选择路径上的具有更大占用概率的位置。
此外,在式4中,与时步k处的位置(x)相关联的体素(d)的方差(σd)通过β来惩罚。即,如果方差(σd)为高(例如,大于阈值),则存在占用测量不正确的增加的可能性。具体地,方差与测量的置信度成反比,以使得高方差指示测量(例如,占用水平)的低置信度,而低方差指示测量的高置信度。因此,为了防止碰撞或者在具有低置信度分数的情况下进入体素,方差(σd)被惩罚以防止选择路径上的具有降低的置信度分数的位置。
另外,在式4中,动作(u)通过γ来惩罚。该动作可以指资源使用或控制成本(诸如燃料)。动作(u)被惩罚以防止对资源的过度消耗。例如,路径可避免障碍物,但路径可增加用于从第一位置移至第二位置的资源量。因此,动作(u)被惩罚以防止选择增加资源(诸如燃料)的使用的路径。惩罚系数α、β和γ是可基于期望性能来调整的变量。每一惩罚系数α、β和γ可确定每一个因子(例如,均值、方差和成本)的重要性。均值可被惩罚,因为较低均值对应于较低的碰撞机率。方差可被惩罚,因为较低方差对应于较高置信度。此外,成本可被惩罚,因为低成本对应于较低燃料消耗。
可以为每一位置(x)处的每一动作(u)确定成本(c)。因此,每一条路径与一系列位置xT以及用于从第一位置xT-1移至第二位置xT的一系列动作uT-1相关联。例如,路径(诸如图5A-5C的路径500)可以如下表示:
路径=(x0,u0,x1,u1,…,xT-1,uT-1,xT)。
为沿着路径的所有位置(x)和动作(u)计算成本函数。由此,路径的成本可以如下计算:
如式5所示,路径的成本(C)是每一个位置和动作的成本函数的求和。此外,因为计算基于预测而不是实际计算,所以求和是对成本之和求平均E(例如,期望值)。在一种配置中,在计算出每一条路径的成本(C)后,机器人选择具有最低成本的路径。
图6A解说了根据本公开的一方面的已绘制地图的区域600中的机器人604的示例。已绘制地图的区域600指的是已经由机器人的传感器来绘制地图的区域。即,机器人604已经使用该机器人的传感器看见已绘制地图的区域600。此外,在已绘制地图的区域600的边界之外存在未知区域。未知区域是尚未被机器人的传感器看见的区域。已绘制地图的区域600和未知区域两者可包括障碍物602。已绘制地图的区域600中的障碍物602对于机器人可以是已知的,并且未知区域中的障碍物是未知的。机器人604具有基于机器人的朝向和/或机器人的传感器的朝向的视野606。此外,机器人604可被指示从其当前位置移至目标位置608。
图6B解说了根据本公开的一方面的已绘制地图的区域600中的机器人604的另一示例。具体地,图6B解说了机器人604从其当前位置移至目标608的轨迹的示例。在该示例中,对于所选轨迹,机器人的视野606在机器人604相对于视野606侧向移动以到达目标位置608时维持在前向视图中。此外,如图6B所示,可指定供机器人从其当前位置移至目标608的多个时步T1B-T4B。如先前所讨论的,每一个时步指的是机器人执行测量的机会。
在图6B的示例中,机器人604没有看着行进方向620,相反机器人604看着不同于行进方向620的前向方向622。由此,因为机器人604没有看着进入未知区域中的行进方向620,所以机器人604可能与未知障碍物碰撞。因此,当机器人正在视野606的方向622不同于行进方向620的情况下移至未知区域中时,该机器人所获取的测量的方差是高的。如以上针对式4讨论的,与时步k处的位置(x)相关联的体素(d)的方差(σd)通过β来惩罚。因此,在该示例中,高方差被惩罚以使得图6B的轨迹的成本是高的。具有高成本的轨迹可能是不合乎需要的。
图6C解说了根据本公开的一方面的已绘制地图的区域600中的机器人604的又一示例。具体地,图6C解说了机器人604以提高的速度从其当前位置移至目标632的轨迹的示例。在图6C的示例中,机器人视野606的方向622基本上与到目标632的行进方向630对齐。机器人的速度可以反映在机器人的初始位置和目标632之间的时步T1C-T4C的数目中。即,当前位置和目标位置之间的更少数目的时步与机器人的更快的行进速度相关。在一种配置中,通过未知区域的提高的速度(例如,快速移动)由成本函数来惩罚。即,测量机会的数目可由于机器人604的提高的速度而减少。测量机会(例如,时步T1C-T4C)的减少增大了测量的方差。如先前所讨论的,高方差被惩罚。因此,由于由图6C的轨迹的提高的速度导致的高方差,图6C的轨迹的成本是高的。
图6D解说了根据本公开的一方面的已绘制地图的区域600中的机器人604的又一示例。具体地,图6D解说了其中机器人相比于图6C的示例中用于到达目标632的时步数采取增加数目的时步的路径。另外,在图6D的示例中,机器人视野606的方向622基本上与到目标632的行进方向630对齐。增加数目的时步可以是更有利的轨迹,因为除了机器人使其视野606基本上与到目标632的行进方向630对齐之外,机器人604正以中等(例如,降低的)速度向目标632行进。
机器人的速度可以反映在机器人的初始位置和目标632之间的时步T1D-T9D的数目中。即,在图6C中,机器人使用四个时步(T1C-T4C)来到达目标632。作为对比,在图6D的当前示例中,机器人使用九个时步(T1D-T9D)来到达目标632。由于增加的时步,机器人604可增加观察次数以使得不确定性水平被降低。不确定性水平的降低导致机器人的初始位置和目标632之间的体素的观察结果的方差减小。例如,基于增加的观察,如果机器人观察到路径中的障碍物,则机器人具有足够的时间来相应地做出反应。由此,低方差是合乎需要的。因此,由于由图6D的轨迹的增加的观察导致的低方差,图6D的轨迹的成本是低的。在本示例中,机器人604无法预测未知区域中的体素的平均占用水平。由此,在确定轨迹的成本时,机器人604可假定未知区域中的体素是自由的。尽管如此,基于沿着轨迹的时步和/或机器人的朝向,机器人604可预测沿轨迹的方差。
图6E解说了根据本公开的一方面的已绘制地图的区域600中的机器人604的又一示例。在确定轨迹的成本时,机器人604还可计及传感器模型。例如,如图6E所示,基于机器人604的初始位置与目标638之间的时步数(T1E-T6E),机器人604计划以中等速度移动。此外,如图6E所示,机器人604的行进方向630基本上类似于机器人的视野606的方向622。
尽管如此,如图6E所示,机器人604所采取的时步中的某一些位于前一时步的视野606的边缘。例如,当从时步T4E移至T5E时,机器人604移至时步T4E的视野606的右侧。即,在时步T5E处,机器人604移至在前一时步(例如,时步T4E)期间未观察到的区域。在大多数情形中,传感器的边缘是不可靠的。因此,方差可由于机器人604移至视野606的边缘而增大。在一种配置中,成本函数计及沿着视野边缘的移动并且通过增大时步的方差来惩罚此类移动。方差的增大可经由计及变量(诸如机器人相对于前一时步的视野的位置)的传感器模型来提供。因此,由于由沿着视野606的边缘的移动而导致的高方差,图6E的轨迹的成本是高的。
给定机器人的状态,传感器模型预测传感器的输出。状态指代机器人在环境中的位置以及地图中的对应于机器人位置的体素的占用水平。地图可以是具有一不确定性水平的概率地图。由此,基于不确定性,传感器模型预测传感器的输出。传感器模型可如以AGHAMOHAMMADI等人的名义于2015年12月2日提交的美国临时专利申请no.62/262,339中描述的那样来实现,该临时专利申请的公开内容通过援引全部明确纳入于此。
图6F和6G解说了根据本公开的各方面的已绘制地图的区域600中的机器人604的其它示例。图6F中解说的示例包括障碍物。基于视野606,在从机器人的初始位置到目标640的轨迹期间,机器人604可观察到所有障碍物602。当在机器人的视野606中存在障碍物602时,机器人无法看穿障碍物602。具体而言,如图6G所示,障碍物602a阻挡机器人的视野606的一部分以使得机器人无法看到目标640。即,视野606的第一部分652是未被遮挡的,而第二部分650被障碍物602a遮挡。由此,因为视野606的第二部分650被遮挡,所以机器人可以按某一方差将该体素报告为被占用或者按某一方差将该体素报告为未被占用。
此外,对于视野606的对于机器人604而言是未知的第二部分650,机器人可预测它会将对应于视野606的体素报告为被占用。尽管如此,机器人604不知道它是否将能够看穿障碍物602a,因为可能不存在障碍物。即,障碍物602a的存在已被机器人604推断出。干扰可以是噪声。由此,干扰可具有某一量的方差。因此,障碍物602a在机器人604到达具有障碍物602a的体素时可能不存在。因此,在预测轨迹时,机器人604不知道它是否能看穿障碍物602a。确定障碍物602a是否可能存在也是方差的函数。
图7是解说采用处理***720的装置700(诸如机器人)的硬件实现的示例的示图。处理***720可实现成具有由总线724一般化地表示的总线架构。取决于处理***720的具体应用和总体设计约束,总线724可包括任何数目的互连总线和桥接器。总线724将各种电路链接在一起,包括一个或多个处理器和/或硬件模块(由处理器704、通信模块708、定位模块706、传感器模块702、运动力模块710以及计算机可读介质714表示)。总线724还可链接各种其他电路,诸如定时源、***设备、稳压器和功率管理电路,这些电路在本领域中是众所周知的,且因此将不再进一步描述。
装置700包括耦合到收发机716的处理***720。收发机716耦合到一个或多个天线718。收发机716使得能够在传输介质上与各种其他装置通信。处理***720包括耦合至计算机可读介质714的处理器704。处理器704负责一般性处理,包括执行存储在计算机可读介质714上的软件。软件在由处理器704执行时使处理***720执行针对任何特定装置描述的各种功能。计算机可读介质714还可被用于存储由处理器704在执行软件时操纵的数据。
传感器模块702可被用来经由传感器728获得测量。传感器728可以是用于执行测量的立体视觉传感器,诸如立体景深相机。当然,本公开的各方面并不限于立体视觉传感器,同样地还构想了用于执行测量的其他类型的传感器,诸如举例而言雷达传感器、热传感器、声纳传感器、和/或激光传感器。传感器728的测量可由处理器704、通信模块708、定位模块706、运动力模块710、计算机可读介质714以及其它模块730、732、734中的一者或多者来处理。此外,传感器728的测量可由收发机716传送给外部设备。传感器728并不限于被限定在装置700外部(如图7所示),传感器728也可被限定在装置700内。
定位模块706可被用来确定装置700的位置。定位模块706可使用GPS或其他协议来确定装置700的位置。通信模块708可使用收发机716来向外部设备发送和接收信息,诸如装置700的位置。运动力模块710可被用来向装置700提供运动力。作为示例,运动力可经由轮子712提供。当然,本公开的各方面并不限于经由轮子712提供运动力,并且还构想了用于提供位置的任何其他类型的组件。
处理***720包括用于确定地图中的位置的占用水平的均值的确定模块730。该确定模块还可确定占用水平的概率分布函数。处理***720还包括用于基于概率分布函数来计算成本函数的计算模块732。处理***720还包括用于基于成本函数来同时规划路径并绘制环境的地图的规划模块734。这些模块可以是在处理器704中运行的软件模块,驻留/存储在计算机可读介质714中的软件模块,耦合至处理器704的一个或多个硬件模块,或者上述各项的某种组合。
图8解说了用于由机器人同时规划路径并绘制环境的地图的方法800。在框802中,机器人确定地图中的位置的占用水平的均值。在框804中,机器人确定占用水平的概率分布函数(PDF)。
另外,在框806中,机器人基于PDF来计算成本函数。在一些方面,成本函数可基于从PDF获得的平均占用水平以及占用水平的方差来计算。
此外,在框808中,机器人基于成本函数来同时规划路径并绘制环境的地图。在一些方面,环境可基于平均占用水平和PDF来绘制地图。路径可基于所预测的地图来规划。
在一些方面,在框810中,机器人可任选地评估沿着多个候选轨迹中的每一者的每一个体素的预测密度。
此外,在一些方面,在框812中,机器人可任选地基于同时规划和地图绘制来选择轨迹。
在一些方面,方法800可由SOC 100(图1)或***200(图2)来执行。即,举例而言但不作为限定,方法800的每个元素可由SOC 100或***200、或者一个或多个处理器(例如,CPU 102和局部处理单元202)和/或其中包括的其他组件来执行。
以上所描述的方法的各种操作可由能够执行相应功能的任何合适的装置来执行。这些装置可包括各种硬件和/或(诸)软件组件和/或(诸)模块,包括但不限于电路、专用集成电路(ASIC)、或处理器。一般而言,在附图中有解说的操作的场合,那些操作可具有带相似编号的相应配对装置加功能组件。
如本文所使用的,术语“确定”涵盖各种各样的动作。例如,“确定”可包括演算、计算、处理、推导、研究、查找(例如,在表、数据库或其他数据结构中查找)、探知及诸如此类。另外,“确定”可包括接收(例如接收信息)、访问(例如访问存储器中的数据)、及类似动作。此外,“确定”可包括解析、选择、选取、确立及类似动作。
如本文中所使用的,引述一列项目“中的至少一个”的短语是指这些项目的任何组合,包括单个成员。作为示例,“a、b或c中的至少一个”旨在涵盖:a、b、c、a-b、a-c、b-c、以及a-b-c。
结合本公开所描述的各种解说性逻辑框、模块、以及电路可用设计成执行本文中所描述的功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列信号(FPGA)或其他可编程逻辑器件(PLD)、分立的门或晶体管逻辑、分立的硬件组件或其任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,处理器可以是任何市售的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如,DSP与微处理器的组合、多个微处理器、与DSP核心协同的一个或多个微处理器、或任何其他此类配置。
结合本公开描述的方法或算法的步骤可直接在硬件中、在由处理器执行的软件模块中、或在这两者的组合中实施。软件模块可驻留在本领域所知的任何形式的存储介质中。可使用的存储介质的一些示例包括随机存取存储器(RAM)、只读存储器(ROM)、闪存、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、寄存器、硬盘、可移动盘、CD-ROM,等等。软件模块可包括单条指令、或许多条指令,且可分布在若干不同的代码段上,分布在不同的程序间以及跨多个存储介质分布。存储介质可被耦合到处理器以使得该处理器能从/向该存储介质读写信息。替换地,存储介质可以被整合到处理器。
本文所公开的方法包括用于达成所描述的方法的一个或多个步骤或动作。这些方法步骤和/或动作可以彼此互换而不会脱离权利要求的范围。换言之,除非指定了步骤或动作的特定次序,否则具体步骤和/或动作的次序和/或使用可以改动而不会脱离权利要求的范围。
所描述的功能可在硬件、软件、固件或其任何组合中实现。如果以硬件实现,则示例硬件配置可包括设备中的处理***。处理***可以用总线架构来实现。取决于处理***的具体应用和整体设计约束,总线可包括任何数目的互连总线和桥接器。总线可将包括处理器、机器可读介质、以及总线接口的各种电路链接在一起。总线接口可用于尤其将网络适配器等经由总线连接至处理***。网络适配器可用于实现信号处理功能。对于某些方面,用户接口(例如,按键板、显示器、鼠标、操纵杆,等等)也可以被连接到总线。总线还可以链接各种其他电路,诸如定时源、***设备、稳压器、功率管理电路以及类似电路,它们在本领域中是众所周知的,因此将不再进一步描述。
处理器可负责管理总线和一般处理,包括执行存储在机器可读介质上的软件。处理器可用一个或多个通用和/或专用处理器来实现。示例包括微处理器、微控制器、DSP处理器、以及其他能执行软件的电路***。软件应当被宽泛地解释成意指指令、数据、或其任何组合,无论是被称作软件、固件、中间件、微代码、硬件描述语言、或其他。作为示例,机器可读介质可包括随机存取存储器(RAM)、闪存存储器、只读存储器(ROM)、可编程只读存储器(PROM)、可擦式可编程只读存储器(EPROM)、电可擦式可编程只读存储器(EEPROM)、寄存器、磁盘、光盘、硬驱动器、或者任何其他合适的存储介质、或其任何组合。机器可读介质可被实施在计算机程序产品中。该计算机程序产品可以包括包装材料。
在硬件实现中,机器可读介质可以是处理***中与处理器分开的一部分。然而,如本领域技术人员将容易领会的,机器可读介质或其任何部分可在处理***外部。作为示例,机器可读介质可包括传输线、由数据调制的载波、和/或与设备分开的计算机产品,所有这些都可由处理器通过总线接口来访问。替换地或补充地,机器可读介质或其任何部分可被集成到处理器中,诸如高速缓存和/或通用寄存器文件可能就是这种情形。虽然所讨论的各种组件可被描述为具有特定位置,诸如局部组件,但它们也可按各种方式来配置,诸如某些组件被配置成分布式计算***的一部分。
处理***可以被配置为通用处理***,该通用处理***具有一个或多个提供处理器功能性的微处理器、以及提供机器可读介质中的至少一部分的外部存储器,它们都通过外部总线架构与其他支持电路***链接在一起。替换地,该处理***可以包括一个或多个神经元形态处理器以用于实现本文中所描述的神经元模型和神经***模型。作为另一替换方案,处理***可以用带有集成在单块芯片中的处理器、总线接口、用户接口、支持电路***、和至少一部分机器可读介质的专用集成电路(ASIC)来实现,或者用一个或多个现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、控制器、状态机、门控逻辑、分立硬件组件、或者任何其他合适的电路***、或者能执行本公开通篇所描述的各种功能性的电路的任何组合来实现。取决于具体应用和加诸于整体***上的总设计约束,本领域技术人员将认识到如何最佳地实现关于处理***所描述的功能性。
机器可读介质可包括数个软件模块。这些软件模块包括当由处理器执行时使处理***执行各种功能的指令。这些软件模块可包括传送模块和接收模块。每个软件模块可以驻留在单个存储设备中或者跨多个存储设备分布。作为示例,当触发事件发生时,可以从硬驱动器中将软件模块加载到RAM中。在软件模块执行期间,处理器可以将一些指令加载到高速缓存中以提高访问速度。可随后将一个或多个高速缓存行加载到通用寄存器文件中以供处理器执行。在以下述及软件模块的功能性时,将理解此类功能性是在处理器执行来自该软件模块的指令时由该处理器来实现的。此外,应领会,本公开的各方面产生对处理器、计算机、机器或实现此类方面的其它***的机能的改进。
如果以软件实现,则各功能可作为一条或多条指令或代码存储在计算机可读介质上或藉其进行传送。计算机可读介质包括计算机存储介质和通信介质两者,这些介质包括促成计算机程序从一地向另一地转移的任何介质。存储介质可以是能被计算机访问的任何可用介质。作为示例而非限定,此类计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或能用于携带或存储指令或数据结构形式的期望程序代码且能被计算机访问的任何其他介质。另外,任何连接也被正当地称为计算机可读介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)、或无线技术(诸如红外(IR)、无线电、以及微波)从web网站、服务器、或其他远程源传送而来,则该同轴电缆、光纤电缆、双绞线、DSL或无线技术(诸如红外、无线电、以及微波)就被包括在介质的定义之中。如本文中所使用的盘(disk)和碟(disc)包括压缩碟(CD)、激光碟、光碟、数字多用碟(DVD)、软盘、和碟,其中盘(disk)常常磁性地再现数据,而碟(disc)用激光来光学地再现数据。因此,在一些方面,计算机可读介质可包括非瞬态计算机可读介质(例如,有形介质)。另外,对于其他方面,计算机可读介质可包括瞬态计算机可读介质(例如,信号)。上述的组合应当也被包括在计算机可读介质的范围内。
因此,某些方面可包括用于执行本文中给出的操作的计算机程序产品。例如,此类计算机程序产品可包括其上存储(和/或编码)有指令的计算机可读介质,这些指令能由一个或多个处理器执行以执行本文中所描述的操作。对于某些方面,计算机程序产品可包括包装材料。
此外,应当领会,用于执行本文中所描述的方法和技术的模块和/或其它恰适装置能由用户终端和/或基站在适用的场合下载和/或以其他方式获得。例如,此类设备能被耦合至服务器以促成用于执行本文中所描述的方法的装置的转移。替换地,本文中所描述的各种方法能经由存储装置(例如,RAM、ROM、诸如压缩碟(CD)或软盘等物理存储介质等)来提供,以使得一旦将该存储装置耦合至或提供给用户终端和/或基站,该设备就能获得各种方法。此外,可利用适于向设备提供本文中所描述的方法和技术的任何其他合适的技术。
将理解,权利要求并不被限定于以上所解说的精确配置和组件。可在以上所描述的方法和装置的布局、操作和细节上作出各种改动、更换和变形而不会脱离权利要求的范围。
Claims (20)
1.一种由机器人基本上同时规划路径并绘制环境的地图的方法,包括:
确定地图中的位置的占用水平的均值;
确定所述占用水平的概率分布函数PDF;
基于从所述PDF获得的平均占用水平和所述占用水平的方差来计算成本函数;以及
基于所述成本函数来同时规划所述路径并绘制所述环境的地图。
2.如权利要求1所述的方法,其特征在于,进一步包括基于所述平均占用水平和所述PDF来绘制所述环境的地图。
3.如权利要求1所述的方法,其特征在于,所述同时规划进一步包括评估沿着多个候选轨迹中的每一者的每一个体素的预测密度。
4.如权利要求1所述的方法,其特征在于,进一步包括基于所预测的地图来规划所述路径。
5.如权利要求1所述的方法,其特征在于,进一步包括基于所述同时规划和地图绘制来选择轨迹。
6.一种用于基本上同时规划路径并绘制环境的地图的装置,所述装置包括:
存储器;
耦合至所述存储器的至少一个处理器,所述至少一个处理器被配置成:
确定地图中的位置的占用水平的均值;
确定所述占用水平的概率分布函数PDF;
基于从所述PDF获得的平均占用水平和所述占用水平的方差来计算成本函数;以及
基于所述成本函数来同时规划所述路径并绘制所述环境的地图。
7.如权利要求6所述的装置,其特征在于,所述至少一个处理器被进一步配置成基于所述平均占用水平和所述PDF来绘制所述环境的地图。
8.如权利要求6所述的装置,其特征在于,所述至少一个处理器被进一步配置成评估沿着多个候选轨迹中的每一者的每一个体素的预测密度。
9.如权利要求6所述的装置,其特征在于,所述至少一个处理器被进一步配置成基于所预测的地图来规划所述路径。
10.如权利要求6所述的装置,其特征在于,所述至少一个处理器被进一步配置成基于所述同时规划和地图绘制来选择轨迹。
11.一种用于基本上同时规划路径并绘制环境的地图的装置,所述装置包括:
用于确定地图中的位置的占用水平的均值的装置;
用于确定所述占用水平的概率分布函数PDF的装置;
用于基于从所述PDF获得的平均占用水平和所述占用水平的方差来计算成本函数的装置;以及
用于基于所述成本函数来同时规划所述路径并绘制所述环境的地图的装置。
12.如权利要求11所述的装置,其特征在于,进一步包括用于基于所述平均占用水平和所述PDF来绘制所述环境的地图的装置。
13.如权利要求11所述的装置,其特征在于,进一步包括用于评估沿着多个候选轨迹中的每一者的每一个体素的预测密度的装置。
14.如权利要求11所述的装置,其特征在于,进一步包括用于基于所预测的地图来规划所述路径的装置。
15.如权利要求11所述的装置,其特征在于,进一步包括用于基于所述同时规划和地图绘制来选择轨迹的装置。
16.一种其上记录有程序代码的非瞬态计算机可读介质,所述程序代码在由处理器执行时使得所述处理器执行一种用于供机器人基本上同时规划路径并绘制环境的地图的方法,所述方法包括:
确定地图中的位置的占用水平的均值;
确定所述占用水平的概率分布函数PDF;
基于从所述PDF获得的平均占用水平和所述占用水平的方差来计算成本函数;以及
基于所述成本函数来同时规划所述路径并绘制所述环境的地图。
17.如权利要求16所述的非瞬态计算机可读介质,其特征在于,所述方法进一步包括基于所述平均占用水平和所述PDF来绘制所述环境的地图。
18.如权利要求16所述的非瞬态计算机可读介质,其特征在于,所述方法进一步包括评估沿着多个候选轨迹中的每一者的每一个体素的预测密度。
19.如权利要求16所述的非瞬态计算机可读介质,其特征在于,所述方法进一步包括基于所预测的地图来规划所述路径。
20.如权利要求16所述的非瞬态计算机可读介质,其特征在于,所述方法进一步包括基于所述同时规划和地图绘制来选择轨迹。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562262275P | 2015-12-02 | 2015-12-02 | |
US62/262,275 | 2015-12-02 | ||
US15/192,719 | 2016-06-24 | ||
US15/192,719 US10093021B2 (en) | 2015-12-02 | 2016-06-24 | Simultaneous mapping and planning by a robot |
PCT/US2016/060400 WO2017095591A1 (en) | 2015-12-02 | 2016-11-03 | Simultaneous mapping and planning by a robot |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108292139A CN108292139A (zh) | 2018-07-17 |
CN108292139B true CN108292139B (zh) | 2020-05-12 |
Family
ID=57589136
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680070400.7A Active CN108292139B (zh) | 2015-12-02 | 2016-11-03 | 由机器人同时进行地图绘制和规划 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10093021B2 (zh) |
EP (1) | EP3384360B1 (zh) |
CN (1) | CN108292139B (zh) |
ES (1) | ES2912908T3 (zh) |
WO (1) | WO2017095591A1 (zh) |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6598090B2 (ja) | 2015-01-26 | 2019-10-30 | デューク・ユニバーシティ | 記憶媒体、ロボット動作を計画する方法、ロボット動作を計画するハードウェア、及びロボット |
US10613546B2 (en) | 2015-12-02 | 2020-04-07 | Qualcomm Incorporated | Stochastic map-aware stereo vision sensor model |
US10372968B2 (en) * | 2016-01-22 | 2019-08-06 | Qualcomm Incorporated | Object-focused active three-dimensional reconstruction |
US11204610B2 (en) * | 2016-05-30 | 2021-12-21 | Kabushiki Kaisha Toshiba | Information processing apparatus, vehicle, and information processing method using correlation between attributes |
EP3252658B1 (en) * | 2016-05-30 | 2021-08-11 | Kabushiki Kaisha Toshiba | Information processing apparatus and information processing method |
CN109477723B (zh) | 2016-06-10 | 2023-02-21 | 杜克大学 | 自动驾驶车辆运动规划和可重新配置的运动规划处理器 |
US10043076B1 (en) | 2016-08-29 | 2018-08-07 | PerceptIn, Inc. | Visual-inertial positional awareness for autonomous and non-autonomous tracking |
US10162362B2 (en) | 2016-08-29 | 2018-12-25 | PerceptIn, Inc. | Fault tolerance to provide robust tracking for autonomous positional awareness |
US11314262B2 (en) | 2016-08-29 | 2022-04-26 | Trifo, Inc. | Autonomous platform guidance systems with task planning and obstacle avoidance |
EP3578322A4 (en) * | 2017-01-31 | 2020-08-26 | Kabushiki Kaisha Yaskawa Denki | ROBOT PATH GENERATING DEVICE AND ROBOT SYSTEM |
WO2018148574A1 (en) * | 2017-02-09 | 2018-08-16 | Google Llc | Agent navigation using visual inputs |
US10293485B2 (en) * | 2017-03-30 | 2019-05-21 | Brain Corporation | Systems and methods for robotic path planning |
US10303180B1 (en) * | 2017-04-20 | 2019-05-28 | X Development Llc | Generating and utilizing non-uniform volume measures for voxels in robotics applications |
US10940587B2 (en) * | 2017-04-28 | 2021-03-09 | Technion Research & Development Foundation Ltd. | Data association aware belief space planning and perception |
CN107861508B (zh) * | 2017-10-20 | 2021-04-20 | 纳恩博(北京)科技有限公司 | 一种移动机器人局部运动规划方法及装置 |
DE102017223632A1 (de) * | 2017-12-21 | 2019-06-27 | Continental Automotive Gmbh | System zur Berechnung einer Fehlerwahrscheinlichkeit von Fahrzeugsensordaten |
WO2019139815A1 (en) | 2018-01-12 | 2019-07-18 | Duke University | Apparatus, method and article to facilitate motion planning of an autonomous vehicle in an environment having dynamic objects |
TWI822729B (zh) * | 2018-02-06 | 2023-11-21 | 美商即時機器人股份有限公司 | 用於儲存一離散環境於一或多個處理器之一機器人之運動規劃及其改良操作之方法及設備 |
CN108491427B (zh) * | 2018-02-08 | 2021-05-18 | 中国人民解放军61540部队 | Pdf瓦片地图及制作方法 |
ES2928250T3 (es) | 2018-03-21 | 2022-11-16 | Realtime Robotics Inc | Planificación del movimiento de un robot para diversos entornos y tareas y mejora del funcionamiento del mismo |
CN109141437B (zh) * | 2018-09-30 | 2021-11-26 | 中国科学院合肥物质科学研究院 | 一种机器人全局重定位方法 |
US11256261B1 (en) * | 2018-10-16 | 2022-02-22 | Amazon Technologies, Inc. | System for movement of autonomous mobile device |
CN109359777A (zh) * | 2018-10-31 | 2019-02-19 | 西南交通大学 | 用于需求井喷下的快递企业城市配送方法 |
US11774983B1 (en) | 2019-01-02 | 2023-10-03 | Trifo, Inc. | Autonomous platform guidance systems with unknown environment mapping |
DE102019201045B4 (de) * | 2019-01-28 | 2020-11-26 | Robert Bosch Gmbh | Verfahren, Vorrichtung und Computerprogramm zum Ermitteln einer Aktion oder Trajektorie eines Roboters |
DE102019203214B4 (de) * | 2019-03-08 | 2022-01-20 | Robert Bosch Gmbh | Verfahren zum Betreiben eines Roboters in einem Multiagentensystem, Roboter und Multiagentensystem |
CN113905855B (zh) | 2019-04-17 | 2023-08-25 | 实时机器人有限公司 | 运动规划图生成用户界面、***、方法和规则 |
US11179850B2 (en) * | 2019-04-24 | 2021-11-23 | Intrinsic Innovation Llc | Robot motion planning |
EP3739361A1 (en) * | 2019-05-13 | 2020-11-18 | Aptiv Technologies Limited | Method and system for fusing occupancy maps |
US11634126B2 (en) | 2019-06-03 | 2023-04-25 | Realtime Robotics, Inc. | Apparatus, methods and articles to facilitate motion planning in environments having dynamic obstacles |
EP3993963A4 (en) | 2019-08-23 | 2022-08-24 | Realtime Robotics, Inc. | MOTION PLANNING FOR ROBOTS TO OPTIMIZE SPEED WHILE RESPECTING ACCELERATION AND JERK LIMITS |
US20210080970A1 (en) * | 2019-09-16 | 2021-03-18 | X Development Llc | Using adjustable vision component for on-demand vision data capture of areas along a predicted trajectory of a robot |
US11348332B2 (en) * | 2019-09-25 | 2022-05-31 | Toyota Research Institute, Inc. | Object location analysis |
US11288509B2 (en) * | 2019-11-12 | 2022-03-29 | Toyota Research Institute, Inc. | Fall detection and assistance |
US11713977B2 (en) * | 2019-12-19 | 2023-08-01 | Canon Kabushiki Kaisha | Information processing apparatus, information processing method, and medium |
CN111061278B (zh) * | 2019-12-31 | 2022-12-30 | 苏州极智嘉机器人有限公司 | 一种路径规划方法、装置、计算机设备及存储介质 |
TW202146189A (zh) | 2020-01-22 | 2021-12-16 | 美商即時機器人股份有限公司 | 於多機器人操作環境中之機器人之建置 |
CN111811532B (zh) * | 2020-07-02 | 2022-03-25 | 浙江大学 | 基于脉冲神经网络的路径规划方法和装置 |
US11931900B2 (en) | 2020-07-24 | 2024-03-19 | Samsung Electronics Co., Ltd. | Method of predicting occupancy of unseen areas for path planning, associated device, and network training method |
US11720117B1 (en) * | 2020-10-28 | 2023-08-08 | Amazon Technologies, Inc. | System to facilitate autonomous mobile device movement |
CN113156970B (zh) * | 2021-05-08 | 2023-06-09 | 珠海一微半导体股份有限公司 | 一种通行区域的路径融合规划方法、机器人及芯片 |
US20240142985A1 (en) * | 2022-10-28 | 2024-05-02 | Zebra Technologies Corporation | De-centralized traffic-aware navigational planning for mobile robots |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5111401A (en) * | 1990-05-19 | 1992-05-05 | The United States Of America As Represented By The Secretary Of The Navy | Navigational control system for an autonomous vehicle |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4479372B2 (ja) * | 2004-06-25 | 2010-06-09 | ソニー株式会社 | 環境地図作成方法、環境地図作成装置、及び移動型ロボット装置 |
US8965578B2 (en) * | 2006-07-05 | 2015-02-24 | Battelle Energy Alliance, Llc | Real time explosive hazard information sensing, processing, and communication for autonomous operation |
KR100791386B1 (ko) * | 2006-08-18 | 2008-01-07 | 삼성전자주식회사 | 이동 로봇의 영역 분리 방법 및 장치 |
JP4661838B2 (ja) * | 2007-07-18 | 2011-03-30 | トヨタ自動車株式会社 | 経路計画装置及び方法、コスト評価装置、並びに移動体 |
CN101413806B (zh) * | 2008-11-07 | 2011-05-25 | 湖南大学 | 一种实时数据融合的移动机器人栅格地图创建方法 |
AU2010286429B2 (en) * | 2009-08-31 | 2013-11-28 | Vorwerk & Co. Interholding Gmbh | Method and apparatus for simultaneous localization and mapping of mobile robot environment |
US8948913B2 (en) * | 2009-10-26 | 2015-02-03 | Electronics And Telecommunications Research Institute | Method and apparatus for navigating robot |
JP5560794B2 (ja) * | 2010-03-16 | 2014-07-30 | ソニー株式会社 | 制御装置、制御方法およびプログラム |
US9020637B2 (en) * | 2012-11-02 | 2015-04-28 | Irobot Corporation | Simultaneous localization and mapping for a mobile robot |
CN104154925A (zh) * | 2014-08-25 | 2014-11-19 | 正量电子科技(苏州)有限公司 | 基于射频识别的制导导航方法 |
FR3025325B1 (fr) * | 2014-09-01 | 2016-12-30 | Valeo Schalter & Sensoren Gmbh | Dispositif et procede de localisation et de cartographie |
US9630319B2 (en) * | 2015-03-18 | 2017-04-25 | Irobot Corporation | Localization and mapping using physical features |
US9868211B2 (en) * | 2015-04-09 | 2018-01-16 | Irobot Corporation | Restricting movement of a mobile robot |
-
2016
- 2016-06-24 US US15/192,719 patent/US10093021B2/en active Active
- 2016-11-03 WO PCT/US2016/060400 patent/WO2017095591A1/en active Search and Examination
- 2016-11-03 CN CN201680070400.7A patent/CN108292139B/zh active Active
- 2016-11-03 EP EP16816014.1A patent/EP3384360B1/en active Active
- 2016-11-03 ES ES16816014T patent/ES2912908T3/es active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5111401A (en) * | 1990-05-19 | 1992-05-05 | The United States Of America As Represented By The Secretary Of The Navy | Navigational control system for an autonomous vehicle |
Non-Patent Citations (1)
Title |
---|
Stochastic Collection and Replenishment (SCAR): Objective Functions;Andrew W Palmer 等;《IEEE international conference on Intelligent Robots and Systems(IROS)》;20131103;3324-3331 * |
Also Published As
Publication number | Publication date |
---|---|
EP3384360B1 (en) | 2022-04-06 |
WO2017095591A1 (en) | 2017-06-08 |
CN108292139A (zh) | 2018-07-17 |
EP3384360A1 (en) | 2018-10-10 |
US10093021B2 (en) | 2018-10-09 |
ES2912908T3 (es) | 2022-05-30 |
US20170157769A1 (en) | 2017-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108292139B (zh) | 由机器人同时进行地图绘制和规划 | |
US20170004406A1 (en) | Parallel belief space motion planner | |
CN108292138B (zh) | 随机地图知悉式立体视觉传感器模型 | |
CN112313477A (zh) | 一种车辆环境映射的方法以及相应的***、车辆和计算机程序产品 | |
US20200233061A1 (en) | Method and system for creating an inverse sensor model and method for detecting obstacles | |
KR20180093934A (ko) | 자율 시각 내비게이션 | |
JP2014219403A (ja) | 複数オブジェクトを追跡する方法及び装置 | |
CN108885719B (zh) | 基于立体视觉的随机地图生成和贝叶斯更新 | |
Kaufman et al. | Autonomous exploration by expected information gain from probabilistic occupancy grid mapping | |
Wang et al. | Bayesian-based decision-making for object search and classification | |
Huang et al. | TIP: Task-informed motion prediction for intelligent vehicles | |
EP3384359B1 (en) | Map generation based on raw stereo vision based measurements | |
US20230152092A1 (en) | Systems and Methods for Generating a Phase-Resolved Ocean Wave Forecasts with Ensemble Based Data Assimilation | |
US20240202393A1 (en) | Motion planning | |
Alyoubi et al. | Connotation of fuzzy logic system in Underwater communication systems for navy applications with data indulgence route | |
WO2021158264A2 (en) | Spatio-temporal pose/object database | |
US20220382286A1 (en) | Managing conflicting interactions between a movable device and potential obstacles | |
Moss et al. | Autonomous Vehicle Risk Assessment | |
KR102670646B1 (ko) | 물체 감지 방법 및 물체 감지 시스템 | |
Shende et al. | Toward a mission value for subsea search with bottom-type variability | |
US20230385684A1 (en) | Machine learning for management of positioning techniques and radio frequency usage | |
Haggenmiller | Non-parametric Models for Long-term Autonomy | |
Hassanpour et al. | Preventing the Impact of False Negatives on Vehicle Object Detection in Autonomous Driving A Thorough Analysis of Calibration, Thresholding, and Fusion Methods |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |