IP Library Granted Patent US 10,723,555
Granted Patent B2
US 10,723,555 · App. 15/843,581 · Granted Jul 28, 2020

Robot inventory updates for order routing

Inventors: Chris Hance (San Jose, CA); Thibault Vrevin (San Francisco, CA)
Assignee: Google LLC
B65G1/1373B65G1/137B65G67/04G01C21/343G01C21/3407G05D1/021G06Q10/08G06Q10/083G06Q10/087G06Q10/0833G06Q10/08355G05D2201/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,723,555
App. No.
15/843,581
Granted
Jul 28, 2020
Kind
B2
Abstract

A method includes maintaining an inventory database for each warehouse of a plurality of warehouses, where a plurality of robots are deployed at each warehouse, where the inventory database for each warehouse is updated based on messages sent by the plurality of robots at the warehouse during performance of tasks by the plurality of robots at the warehouse. The method further includes receiving an order and determining, for each warehouse, a projected availability time for an item that satisfies the order to be available for pickup at the warehouse based on the inventory database for the warehouse. The method additionally includes selecting a warehouse from the plurality of warehouses based on the projected availability time determined for each warehouse. The method further includes causing at least one robot at the selected warehouse to prepare for pickup the item that satisfies the order at the selected warehouse.

Claims (49)

1. A method comprising:

maintaining, by an order routing system, an inventory database for each warehouse of a plurality of warehouses, wherein a plurality of robots are deployed at each warehouse, wherein the inventory database for each warehouse is updated based on messages sent by the plurality of robots at the warehouse during performance of tasks by the plurality of robots at the warehouse;

receiving an order;

determining, for each warehouse of the plurality of warehouses, a projected availability time for an item that satisfies the order to be available for pickup at the warehouse based on the inventory database for the warehouse;

determining a level of visibility of the order routing system into each warehouse of the plurality of warehouses, wherein the level of visibility into a warehouse is based on an amount of information available to the order routing system from the plurality of robots at the warehouse and a warehouse management system which controls the plurality of robots at the warehouse;

selecting a warehouse from the plurality of warehouses based on the projected availability time determined for each warehouse of the plurality of warehouses and on the determined level of visibility of the order routing system into each warehouse of the plurality of warehouses; and

causing at least one robot at the selected warehouse to prepare for pickup the item that satisfies the order at the selected warehouse.

2. The method of claim 1 , further comprising updating the inventory database for each warehouse based on scans of arriving inventory and deporting inventory performed at a loading dock by the plurality of robots at the warehouse.

3. The method of claim 1 , wherein the inventory database for each warehouse includes locations of inventory items within the warehouse, and wherein the projected availability time determined for each warehouse is based on the locations of the inventory items within the warehouse.

4. The method of claim 3 , further comprising, for each warehouse, updating the locations of the inventory items within the warehouse in response to detections of on-item identifiers on the inventory items by sensors on one or more of the plurality of robots.

5. The method of claim 1 , wherein the inventory database for each warehouse includes metrology information for inventory items within the warehouse, and wherein the projected availability time determined for each warehouse is based on the metrology information for the inventory items.

6. The method of claim 5 , further comprising, for each warehouse, determining the metrology information for the inventory items within the warehouse using sensor data from sensors on one or more of the plurality of robots.

7. The method of claim 1 , wherein determining the projected availability time for a warehouse comprises determining a time at which at least one robot at the warehouse is projected to move the item at the warehouse that satisfies the order to a loading dock of the warehouse.

8. The method of claim 7 , further comprising determining at least one queue of future tasks for the at least one robot, wherein the projected availability time for the warehouse is based on the at least one queue of future tasks for the at least one robot.

9. The method of claim 1 , further comprising:

receiving scheduling information for the plurality of robots at each of the plurality of warehouses; and

determining the projected availability time for each of the plurality of warehouses based on the scheduling information.

10. The method of claim 1 , further comprising:

determining, for each warehouse, a projected arrival time by which a delivery vehicle from a plurality of delivery vehicles is expected to reach the warehouse to pick up the item that satisfies the order at the warehouse; and

selecting the warehouse based on the projected arrival time determined for each warehouse.

11. The method of claim 10 , further comprising determining, for each warehouse, a projected load time by which one or more of the plurality of robots at the warehouse are expected to have loaded the item onto the delivery vehicle based on the projected arrival time for the delivery vehicle; and

selecting the warehouse based on the projected load time determined for each warehouse.

12. The method of claim 1 , wherein determining the projected availability time for each warehouse comprises running a software simulation based on a position of the item that satisfies the order in the warehouse.

13. The method of claim 1 , wherein the item that satisfies the order for the selected warehouse is not at the selected warehouse when the order is received, the method further comprising:

determining a projected arrival time for the item that satisfies the order for the selected warehouse to reach the selected warehouse; and

determining the projected availability time for the selected warehouse based on the projected arrival time.

14. The method of claim 13 , wherein the item that satisfies the order for the selected warehouse is delivered by a delivery vehicle, and wherein the projected arrival time is determined based on a scheduled route for the delivery vehicle.

15. The method of claim 13 , wherein the item that satisfies the order for the selected warehouse is delivered to the selected warehouse from a separate warehouse by a delivery vehicle, and wherein the projected arrival time is determined based scheduling information for a separate plurality of robots at the separate warehouse.

16. The method of claim 1 , further comprising associating a confidence level with the projected availability time determined for each warehouse of the plurality of warehouses based on the determined level of visibility of the order routing system into each warehouse of the plurality of warehouses, wherein selecting the warehouse is based on the confidence level associated with the projected availability time determined for each warehouse.

17. The method of claim 1 , wherein determining the level of visibility of the order routing system into each warehouse of the plurality of warehouses comprises:

determining that the order routing system is in communication with a warehouse management system of a first warehouse such that the order routing system has access to robot scheduling information at the first warehouse; and

determining that the order routing system is not in communication with a warehouse management system of a second warehouse.

18. The method of claim 1 , wherein determining the level of visibility of the order routing system into each warehouse of the plurality of warehouses comprises determining that a first warehouse is semi-automated with both robotic actors and human actors and determining that a second warehouse is fully automated.

19. A non-transitory computer readable medium having stored therein instructions executable by one or more processors to cause the one or more processors to perform functions comprising:

maintaining, by an order routing system, an inventory database for each warehouse of a plurality of warehouses, wherein a plurality of robots are deployed at each warehouse, wherein the inventory database for each warehouse is updated based on messages sent by the plurality of robots at the warehouse during performance of tasks by the plurality of robots at the warehouse;

receiving an order;

determining, for each warehouse of the plurality of warehouses, a projected availability time for an item that satisfies the order to be available for pickup at the warehouse based on the inventory database for the warehouse;

determining a level of visibility of the order routing system into each warehouse of the plurality of warehouses, wherein the level of visibility into a warehouse is based on an amount of information available to the order routing system from the plurality of robots at the warehouse and a warehouse management system which controls the plurality of robots at the warehouse;

selecting a warehouse from the plurality of warehouses based on the projected availability time determined for each warehouse of the plurality of warehouses and on the determined level of visibility of the order routing system into each warehouse of the plurality of warehouses; and

causing at least one robot at the selected warehouse to prepare for pickup the item that satisfies the order at the selected warehouse.

20. A system comprising:

a plurality of robots deployed at each of a plurality of warehouses; and

an order routing system configured to:

maintain an inventory database for each warehouse of the plurality of warehouses, wherein the inventory database for each warehouse is updated based on messages sent by the plurality of robots at the warehouse during performance of tasks by the plurality of robots at the warehouse;

receive an order;

determine, for each warehouse of the plurality of warehouses, a projected availability time for an item that satisfies the order to be available for pickup at the warehouse based on the inventory database for the warehouse;

determine a level of visibility of the order routing system into each warehouse of the plurality of warehouses, wherein the level of visibility into a warehouse is based on an amount of information available to the order routing system from the plurality of robots at the warehouse and a warehouse management system which controls the plurality of robots at the warehouse;

select a warehouse from the plurality of warehouses based on the projected availability time determined for each warehouse of the plurality of warehouses and on the determined level of visibility of the order routing system into each warehouse of the plurality of warehouses; and

cause at least one robot at the selected warehouse to prepare for pickup the item that satisfies the order at the selected warehouse.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2020
From: X DEVELOPMENT LLC
To: GOOGLE LLC
Reel/Frame 052732/0470 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2020
From: X DEVELOPMENT, LLC
To: GOOGLE LLC
Reel/Frame 052448/0011 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 15, 2017
From: HANCE, CHRIS; VREVIN, THIBAULT
To: X DEVELOPMENT LLC
Reel/Frame 044408/0080 →
Continuity (2)
Provisional Application 62551181 · Aug 28, 2017
Related Publication 20190062055A1 · Feb 28, 2019
Cited By (3)
US 12,265,400 US 12,275,606 US 12,371,063