IP Library Granted Patent US 10,386,851
Granted Patent B2
US 10,386,851 · App. 15/712,222 · Granted Aug 20, 2019

Multi-resolution scan matching with exclusion zones

Inventors: Thomas Moore (Edinburgh, GB); Bradley Powers (Lowell, MA)
Assignee: Locus Robotics Corp.
G05D1/0248B25J9/1666B65G1/0492B65G1/1373G01C21/206G05D1/024G05D1/0257G05D1/0274G05D2201/0216
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,386,851
App. No.
15/712,222
Granted
Aug 20, 2019
Kind
B2
Abstract

A method for navigating a robot from a current pose to a goal pose. A map represents obstacles and free space within an area for robot navigation. A matching map pyramid and an exclusion map pyramid are constructed based on the map and decimations from a highest resolution to successively lower resolutions of the map pyramids. Current pose for navigating from a current location to a goal pose along a goal path includes determining a search area and creating a search heap. Scoring of search tasks on the search heap determines a best candidate pose at a highest resolution matching map, or expands the search heap with search tasks at the next higher resolution matching map. Expanding the search heap at the next higher resolution matching map avoids search tasks that would localize the robot in an exclusion zone.

Claims (58)

1. A method for navigating a robot from a current pose to a goal pose, comprising:

receiving, by a transceiver of the robot, a map representing obstacles and free space within an area for robot navigation;

constructing, by a data processor of the robot, based on the received map, a matching map pyramid comprising a highest resolution matching map and a set of decimated matching maps at successively lower resolutions;

constructing, by the data processor of the robot, based on the received map, an exclusion map pyramid comprising a highest resolution exclusion map and a set of decimated exclusion maps at successively lower resolutions, each exclusion map including at least one exclusion zone associated with an obstacle of the received map;

receiving a goal pose for navigating a robot from its present location to the goal pose along a goal path;

scanning, by a scanner of the robot, to generate a scan indicating free space and obstacles in proximity to the robot at its present location;

finding the current pose of the robot; and

moving the robot to a next pose on the goal path in the direction of the goal pose;

wherein finding the current pose of the robot comprises:

determining, by the data processor, a search area within the received map;

creating a search heap comprising search tasks representing candidate poses at one or more resolutions of the matching map pyramid; and

comparing the search tasks on the search heap to the scan and scoring the comparison of each search task to determine a best candidate pose,

wherein if the best candidate pose is at the highest resolution matching map, the pose is selected as the current pose;

wherein if the best candidate pose is not at the highest resolution matching map the search heap is expanded based on the best candidate pose at a next highest resolution matching map; and

wherein the search heap is not expanded with search tasks with candidate poses that would localize the robot in an exclusion zone of an exclusion map at the next highest resolution exclusion map.

2. The method of claim 1 , wherein the received map comprises a simultaneous localization and mapping (SLAM) map.

3. The method of claim 1 , wherein creating the search heap and scoring the search tasks is performed by many-to-many multi-resolution scan matching (M3RSM).

4. The method of claim 1 , wherein constructing the highest resolution matching map includes increasing the size of obstacles by a quadratic decay convolution filter.

5. The method of claim 1 , wherein constructing the highest resolution exclusion map includes increasing the size of obstacles based on the radius of the robot.

6. The method of claim 1 , wherein the decimating to construct each successively lower resolution of the matching map pyramid overestimates the scan match scoring in the next higher resolution matching map.

7. The method of claim 1 , wherein the decimating to construct each successively lower resolution of the exclusion map pyramid underestimates the exclusions zones in the next higher resolution exclusion map.

8. The method of claim 7 , wherein the underestimating of the exclusion zones at a lower resolution exclusion map and the not expanding search tasks localized in exclusions zones also prevents creating search tasks in exclusion zones at higher resolutions of the exclusion pyramid.

9. The method of claim 8 , wherein the obstacles associated with the exclusion zones include one or more of walls, shelving, beams, bins, or charging stations.

10. A robot system, comprising

a laser-radar scanner;

a transceiver;

a data processor; and

a data storage device having instructions stored thereon for execution by the data processor to:

receive a map representing obstacles and free space within an area for robot navigation;

construct, based on the received map, a matching map pyramid comprising a highest resolution matching map and a set of decimated matching maps at successively lower resolutions;

construct, based on the received map, an exclusion map pyramid comprising a highest resolution exclusion map and a set of decimated exclusion maps at successively lower resolutions, each exclusion map including at least one exclusion zone associated with an obstacle of the received map;

receive a goal pose for navigating a robot from its present location to the goal pose along a goal path;

scan, by the laser-radar scanner, to generate a scan indicating free space and obstacles in proximity to the robot at its present location;

find the current pose of the robot; and

move the robot to a next pose on the goal path in the direction of the goal pose;

wherein finding the current pose of the robot comprises:

determine a search area within the received map;

create a search heap comprising search tasks representing candidate poses at one or more resolutions of the matching map pyramid;

compare the search tasks on the search heap to the scan and score the comparison of each search task to determine a best candidate pose,

wherein if the best candidate pose is at the highest resolution matching map, the pose is selected as the current pose;

wherein if the best candidate pose is not at the highest resolution matching map the search heap is expanded based on the best candidate pose at a next highest resolution matching map; and

wherein the search heap is not expanded with search tasks with candidate poses that would localize the robot in an exclusion zone of an exclusion map at the next highest resolution exclusion map.

11. The system of claim 10 , wherein the received map comprises a simultaneous localization and mapping (SLAM) map.

12. The system of claim 10 , wherein creating the search heap and scoring the search tasks is performed by many-to-many multi-resolution scan matching (M3RSM).

13. The system of claim 10 , wherein constructing the highest resolution matching map includes increasing the size of obstacles by a quadratic decay convolution filter.

14. The system of claim 10 , wherein constructing the highest resolution exclusion map includes increasing the size of obstacles based on the radius of the robot.

15. The system of claim 10 , wherein the decimating to construct each successively lower resolution of the matching map pyramid overestimates the scan match scoring in the next higher resolution matching map.

16. The system of claim 10 , wherein the decimating to construct each successively lower resolution of the exclusion map pyramid underestimates the exclusions zones in the next higher resolution exclusion map.

17. The system of claim 16 , wherein the underestimating of the exclusion zones at a lower resolution exclusion map and the not expanding search tasks localized in exclusions zones also prevents creating search tasks in exclusion zones at higher resolutions of the exclusion pyramid.

18. The system of claim 17 , wherein the obstacles associated with the exclusion zones include one or more of walls, shelving, beams, bins, or charging stations.

19. A method for determining a current pose of a robot comprising:

receiving, by a transceiver of the robot, a map representing obstacles and free space within an area for robot navigation;

constructing, by a data processor of the robot, based on the received map, a matching map pyramid comprising a highest resolution matching map and a set of decimated matching maps at successively lower resolutions;

constructing, by the data processor of the robot, based on the received map, an exclusion map pyramid comprising a highest resolution exclusion map and a set of decimated exclusion maps at successively lower resolutions, each exclusion map including at least one exclusion zone associated with an obstacle of the received map;

scanning, by a scanner of the robot, to generate a scan indicating free space and obstacles in proximity to the robot at its present location;

determining, by the data processor, a search area within the received map;

creating a search heap comprising search tasks representing candidate poses at one or more resolutions of the matching map pyramid, wherein creation of the search heap includes eliminating search tasks associated with candidate poses located in the at least one exclusion zone from the search heap; and

comparing the search tasks on the search heap to the scan and scoring the comparison of each search task to determine the current pose.

Assignments (7)
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT REEL 007759, FRAME 0295 Recorded Dec 19, 2024
From: LOCUS ROBOTICS CORP.
To: FIRST-CITIZENS BANK & TRUST COMPANY
Reel/Frame 069743/0206 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT REEL 007759, FRAME 0314 Recorded Dec 19, 2024
From: LOCUS ROBOTICS CORP.
To: FIRST-CITIZENS BANK & TRUST COMPANY
Reel/Frame 069743/0192 →
CORRECTIVE ASSIGNMENT TO CORRECT THE THE RECEIVING PARTY DATA PREVIOUSLY RECORDED ON REEL 69386 FRAME 647. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Dec 11, 2024
From: LOCUS ROBOTICS CORP.
To: HERCULES CAPITAL, INC.
Reel/Frame 069589/0575 →
SECURITY INTEREST Recorded Nov 19, 2024
From: LOCUS ROBOTICS CORP.
To: FIRST-CITIZENS BANK & TRUST COMPANY
Reel/Frame 069386/0647 →
SECURITY INTEREST Recorded Jun 22, 2022
From: LOCUS ROBOTIC CORP.
To: SILICON VALLEY BANK
Reel/Frame 060402/0874 →
SECURITY INTEREST Recorded Jun 22, 2022
From: LOCUS ROBOTIC CORP.
To: SILICON VALLEY BANK
Reel/Frame 060402/0854 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 26, 2017
From: MOORE, THOMAS; POWERS, BRADLEY
To: LOCUS ROBOTICS CORPORATION
Reel/Frame 043704/0519 →
Continuity (1)
Related Publication 20190094876A1 · Mar 28, 2019
Cited By (2)
US 12,307,915 US 12,384,457