# US 2017/0255203 A1 · Method and apparatus for simultaneous localization and mapping of mobile robot environment

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2017/0255203 A1
- Document ID: US20170255203A1
- Status: Published application
- Kind: A1
- Application number: 15/602,012
- Filed: 2017-05-22
- Published: 2017-09-07
- Earliest claimed: 2009-08-31
- Assignees: Neato Robotics, Inc.
- Applicants: Neato Robotics, Inc.
- Inventors: Boris SOFMAN; Vladimir ERMAKOV; Mark EMMERICH; Steven ALEXANDER; Nathaniel David MONSON
- Web page: https://patentgrep.com/patent/US20170255203A1

## CPC

- G05D 1/0274: {using mapping information stored in a memory device (navigation using map-matching G01C21/30)}
- B25J 9/0003: {Home robots, i.e. small robots for domestic use}
- B25J 9/1602: {characterised by the control system, structure, architecture}
- B25J 11/0085: {Cleaning}
- G05D 1/024: {in combination with a laser (lasers per se H01S)}
- Y10S 901/01: Mobile robot
- Y10S 901/47: Optical
- G05D: SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- B25J: MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES ({manipulators specially adapted for use in surgery A61B34/70; manipulators used in cleaning hollow articles B08B9/04}; manipulators associated with rolling mills B21B39/20; manipulators associated with forging machines B21J13/10; {manipulators associated with picking-up and placing mechanisms B23P19/007}; means for holding wheels or parts thereof B60B30/00; {vehicles with ground-engaging propulsion means, e.g. walking members B62D57/02, B62D57/032; devices for picking-up and depositing articles or materials between conveyors B65G47/90, B65G47/91; manipulators with gripping or holding means for transferring packages B65H67/065}; cranes B66C; {manipulators used in the protection or supervision of pipe-line installations F17D5/00; walking equipment adapted for nuclear steam-generators F22B37/006}; manipulators specially adapted for, or associated with, nuclear reactors G21C; {apparatus used for handling wafers during manufacture or treatment of semiconductor H10P72/50})
- Y10S: TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS

## Abstract

Techniques that optimize performance of simultaneous localization and mapping (SLAM) processes for mobile devices, typically a mobile robot. In one embodiment, erroneous particles are introduced to the particle filtering process of localization. Monitoring the weights of the erroneous particles relative to the particles maintained for SLAM provides a verification that the robot is localized and detection that it is no longer localized. In another embodiment, cell-based grid mapping of a mobile robot's environment also monitors cells for changes in their probability of occupancy. Cells with a changing occupancy probability are marked as dynamic and updating of such cells to the map is suspended or modified until their individual occupancy probabilities have stabilized. In another embodiment, mapping is suspended when it is determined that the device is acquiring data regarding its physical environment in such a way that use of the data for mapping will incorporate distortions into the map, as for example when the robotic device is tilted.

## Claims

### Claim 1

A method for controlling movement of a mobile robot, the method comprising:
generating map data identifying the mobile robot's physical environment;
creating a map of the mobile robot's physical environment and recording the location of the mobile robot within the mobile robot's physical environment in response to the map data;
determining whether the mobile robot has become delocalized; and
suspending the generating of the map data while the mobile robot is delocalized.

### Claim 2 (depends on 1)

The method of claim 1 wherein the determining whether the mobile robot has become delocalized comprises distinguishing between a delocalization event and the detection of a moving object.

### Claim 3 (depends on 1)

The method of claim 1 wherein the delocalization event is a tilting of the mobile robot.

### Claim 4 (depends on 1)

The method of claim 1 wherein the determination of whether the mobile robot has become delocalized comprises determination of whether the mobile robot's position in the physical environment is erroneous.

### Claim 5 (depends on 1)

The method of claim 1 further comprising resuming the generating of map data when the mobile robot has become re-localized, with a determination that the mobile robot has become re-localized including hysteresis that provides for a period of time during which the generating of map data is stable.

### Claim 6 (depends on 1)

The method of claim 1 wherein generating map data comprises providing mobile robot position updates.

### Claim 7 (depends on 1)

The method of claim 1 wherein when the distance to an object is larger than the distance to a boundary on the map, a delocalization event is indicated.

### Claim 8 (depends on 1)

The method of claim 1 wherein determining whether the mobile robot has become delocalized comprises using the output of an accelerometer.

### Claim 9

A method for controlling movement of a mobile robot, the method comprising:
obtaining position data of objects relative to the mobile robot;
obtaining pose data of the mobile robot;
generating, from the position data and the pose data, using a SLAM algorithm, map data identifying the mobile robot's physical environment;
creating a map of the mobile robot's physical environment and recording the location of the mobile robot within the mobile robot's physical environment in response to the map data;
determining whether the mobile robot has become delocalized;
suspending the generating of the map data while the mobile robot is delocalized; and
resuming the generating of map data when the mobile robot has become re-localized, with a determination that the mobile robot has become re-localized including hysteresis that provides for a period of time during which the generating of map data is stable.

### Claim 10 (depends on 9)

The method of claim 9 wherein the position data is obtained using a laser rangefinder.

### Claim 11 (depends on 9)

The method of claim 9 wherein the determining whether the mobile robot has become delocalized comprises distinguishing between a delocalization event and the detection of a moving object.

### Claim 12 (depends on 9)

The method of claim 9 wherein the determination of whether the mobile robot has become delocalized comprises determination of whether the mobile robot's position in the physical environment is erroneous.

### Claim 13

A mobile device tracking system for a mobile device in its physical environment comprising:
a spatial sensor mounted on the mobile device and configured to scan the physical environment;
a map generator configured to generate and update a map from the spatial data, the map including the current position of the mobile device; and
a delocalization detector configured to generate a current estimate by estimating the current position within said map by generating position particles indicating at least one of position and orientation of the mobile device within its physical environment, the delocalization detector being further configured to generate and iteratively maintain a data set of said position particles to track a changing position of the mobile device within its physical environment, the delocalization detector including:
i. a particle weight assignor that assigns a weight to each position particle, the particle weight being a relative measure of the likelihood that the position particle accurately represents the current position with respect to other particles;
ii. an erroneous particle generator that introduces erroneous particles having weights that are uniformly low with respect to the weights of the position particles; and
iii. a particle weight comparator that compares the weights of the erroneous particles and the weights of the position particles and determines that the mobile device has become delocalized when a substantial number of erroneous particles have weights that are no longer uniformly low with respect to the weights of the position particles.

### Claim 14 (depends on 13)

The system of claim 13 wherein the erroneous particles comprise erroneous position particles.

### Claim 15 (depends on 13)

The system of claim 13 wherein the determination of whether the mobile device has become delocalized comprises determination of whether the mobile device's position in the physical environment is erroneous.

### Claim 16 (depends on 14)

The system of claim 14 wherein the erroneous position particles comprise erroneous inclination particles.

### Claim 17 (depends on 13)

The system of claim 13 wherein the determination of whether the mobile device has become delocalized comprises determination of whether the mobile device's inclination in the physical environment is erroneous.

### Claim 18 (depends on 17)

The system of claim 17 wherein the determination of whether the mobile device's inclination in the physical environment is erroneous comprises determination of whether a tilt event has occurred.

### Claim 19 (depends on 13)

The system of claim 13 wherein the particle weight comparator is further configured to calculate and monitor the averaged weight or the median weight of the erroneous particles over multiple iterations.

### Claim 20 (depends on 13)

The mobile device tracking system of claim 13, wherein the erroneous particle generator selects erroneous particles so as to avoid introduction of additional error into the current estimate of the current position.
