IP Library Granted Patent US 10,822,170
Granted Patent B2
US 10,822,170 · App. 16/110,014 · Granted Nov 3, 2020

Warehouse and supply-chain coordinator

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,822,170
App. No.
16/110,014
Granted
Nov 3, 2020
Kind
B2
Abstract

Systems and methods related to coordinating warehouses and supply chains are provided. Respective first and second estimated times of arrival at a loading dock of a warehouse are determined for respective first and second vehicles, where the first estimated arrival time is before the second estimated arrival time. A pallet arrangement at the loading dock is determined that includes a first pallet for the first vehicle and a second pallet for the second vehicle, where the first pallet is closer to the loading dock than the second pallet. The first estimated arrival time later changes to be after the second estimated arrival time. After the first estimated arrival time changes to be after the second estimated arrival time, a robot is instructed to modify the arrangement so that the second pallet is closer to the loading dock than the first pallet before the second estimated arrival time.

Claims (93)

1. A method, comprising:

determining a first estimated arrival time for a first vehicle at a loading dock of a warehouse;

determining a second estimated arrival time for a second vehicle at the loading dock of the warehouse, wherein the first estimated arrival time is before the second estimated arrival time;

determining a pallet arrangement at the loading dock of the warehouse, wherein the pallet arrangement comprises a first pallet associated with the first vehicle and a second pallet associated with the second vehicle, wherein the pallet arrangement comprises at least a first queue entry and a second queue entry, wherein a location of the first queue entry is closer to the loading dock than a location of the second queue entry, and wherein the first queue entry holds the first pallet and the second queue entry holds the second pallet;

after determining the pallet arrangement, determining that the first estimated arrival time has changed to be after the second estimated arrival time; and

in response to determining that the first estimated arrival time has changed to be after the second estimated arrival time, determining, based on a number of robots available to swap pallets, an amount of time to swap pallets between the first queue entry and the second queue entry;

determining whether an amount of time until the second estimated arrival time is greater than the amount of time to swap pallets; and

after determining that the amount of time until the second estimated arrival time is greater than the amount of time to swap pallets, instructing, based on the number of robots available to swap pallets, at least one available robot to modify the pallet arrangement so that the second pallet is closer to the loading dock than the first pallet before the second estimated arrival time, wherein the instructing comprises instructing the at least one available robot to:

move the second pallet from the second queue entry to the first queue entry, and

move the first pallet from the first queue entry to the second queue entry.

2. The method of claim 1 , wherein determining the first estimated arrival time comprises:

reserving a first time slot at the loading dock for the first vehicle, wherein the first time slot includes the first estimated arrival time.

3. The method of claim 2 , further comprising:

after determining that the first estimated arrival time has changed to be after the second estimated arrival time:

releasing the reservation of the first time slot at the loading dock; and

reserving a second time slot at the loading dock for the second vehicle, wherein the second time slot includes the second estimated arrival time.

4. The method of claim 3 , wherein the first estimated arrival time has changed to a third estimated arrival time, and wherein the method further comprises:

determining whether the third estimated arrival time is during the second time slot; and

after determining that the third estimated arrival time is during the second time slot, reserving a third time slot at the loading dock for the first vehicle, wherein the third time slot is immediately after the second time slot.

5. The method of claim 1 , wherein the warehouse comprises a first parking location, and wherein determining the first estimated arrival time for the first vehicle at the loading dock comprises:

granting warehouse access to the first vehicle at the first estimated arrival time;

determining whether the first vehicle has access to the loading dock at the first estimated arrival time; and

after determining that first vehicle does not have access to the loading dock at the first estimated arrival time, reserving the first parking location for the first vehicle starting at the first estimated arrival time.

6. The method of claim 5 , wherein the method further comprises:

after determining that the first estimated arrival time has changed to be after the second estimated arrival time:

revoking warehouse access to the first vehicle at the first estimated arrival time;

determining that the first estimated arrival time has changed to be a third estimated arrival time; and

granting warehouse access to the first vehicle at the third estimated arrival time.

7. The method of claim 1 , further comprising:

after the first vehicle arrives at the warehouse:

directing an inspecting robot to inspect goods carried by the first vehicle to determine whether the goods carried by the first vehicle are in conformity with a contract for the goods; and

after determining that the goods carried by the first vehicle are in conformity with the contract:

moving the goods carried by the first vehicle into the warehouse; and

sending a receipt for the goods carried by the first vehicle.

8. The method of claim 7 , further comprising:

after determining that the goods carried by the first vehicle are not in conformity with the contract, rejecting delivery of the goods carried by the first vehicle.

9. The method of claim 1 , further comprising:

after moving the first pallet from the first queue entry to the second queue entry:

associating the first queue entry with the second vehicle; and

associating the second queue entry with the first vehicle.

10. The method of claim 1 , further comprising:

after moving the first pallet from the first queue entry to the second queue entry:

determining that the second vehicle has arrived at the warehouse; and

instructing the at least one available robot to load the second vehicle with at least the second pallet in the first queue entry.

11. The method of claim 10 , wherein the pallet arrangement has a number of queue entries QE that is greater than or equal to two, and wherein the method further comprises:

after instructing the at least one available robot to load the second vehicle with at least the second pallet in the first queue entry:

instructing the at least one available robot to move pallets from the second queue entry to the first queue entry;

associating the first queue entry with the first vehicle;

determining a new vehicle that is a next vehicle to arrive at the warehouse after each vehicle associated with a queue entry;

associating the QEth queue entry with the new vehicle; and

instructing the at least one available robot to move pallets associated with the new vehicle to the QEth queue entry.

12. The method of claim 1 , further comprising:

receiving a first order to deliver a pallet of goods from the warehouse for the first vehicle via the loading dock; and

after receiving the first order to deliver the pallet of goods, instructing the at least one available robot to move the pallet of goods to the pallet arrangement at the loading dock.

13. The method of claim 12 , further comprising:

after receiving the first order to deliver the pallet of goods, receiving a second order to deliver the pallet of goods from the warehouse at a second time of delivery via a second loading dock of the warehouse;

determining whether the second order has a higher priority that the first order; and

after determining that the second order has a higher priority that the first order, instructing the at least one available robot to move the pallet of goods to the second loading dock by the second time of delivery.

14. The method of claim 1 , further comprising:

determining a first estimated departure time from the warehouse for the first vehicle;

determining a pallet of deliverable goods to be delivered via the first vehicle; and

directing the at least one available robot to take the pallet of deliverable goods to the pallet arrangement before the first estimated departure time.

15. The method of claim 1 , wherein instructing the at least one available robot to modify the pallet arrangement comprises:

instructing a first available robot to go to the first location;

instructing the first available robot to pick up the first pallet at the first location;

instructing a second available robot to go to the second location;

instructing the second available robot to pick up the second pallet at the second location;

instructing the first available robot to take the first pallet to the second location;

instructing the second available robot to take the second pallet to the first location while the first robot is taking the first pallet to the second location;

instructing the first available robot to place the first pallet at the second location; and

instructing the second available robot to place the second pallet at the first location.

16. A computing device, comprising:

one or more processors; and

data storage including at least computer-executable instructions stored thereon that, when executed by the one or more processors, cause the computing device to:

determine a first estimated arrival time for a first vehicle at a loading dock of a warehouse;

determine a second estimated arrival time for a second vehicle at the loading dock of the warehouse, wherein the first estimated arrival time is before the second estimated arrival time;

determine a pallet arrangement at the loading dock of the warehouse, wherein the pallet arrangement comprises a first pallet associated with the first vehicle and a second pallet associated with the second vehicle, wherein the pallet arrangement comprises at least a first queue entry and a second queue entry, wherein a location of the first queue entry is closer to the loading dock than a location of the second queue entry, and wherein the first queue entry holds the first pallet and the second queue entry holds the second pallet;

after determining the pallet arrangement, determine that the first estimated arrival time has changed to be after the second estimated arrival time; and

in response to determining that the first estimated arrival time has changed to be after the second estimated arrival time, determine, based on a number of robots available to swap pallets, an amount of time to swap pallets between the first queue entry and the second queue entry;

determine whether an amount of time until the second estimated arrival time is greater than the amount of time to swap pallets; and

after determining that the amount of time until the second estimated arrival time is greater than the amount of time to swap pallets, instruct, based on the number of robots available to swap pallets, at least one available robot to modify the pallet arrangement so that the second pallet is closer to the loading dock than the first pallet before the second estimated arrival time, wherein the instructing comprises instructing the at least one available robot to:

move the second pallet from the second queue entry to the first queue entry, and

move the first pallet from the first queue entry to the second queue entry.

17. A non-transitory computer readable medium having stored thereon instructions, that when executed by one or more processors of a computing device, cause the computing device to perform functions comprising:

determining a first estimated arrival time for a first vehicle at a loading dock of a warehouse;

determining a second estimated arrival time for a second vehicle at the loading dock of the warehouse, wherein the first estimated arrival time is before the second estimated arrival time;

determining a pallet arrangement at the loading dock of the warehouse, wherein the pallet arrangement comprises a first pallet associated with the first vehicle and a second pallet associated with the second vehicle, wherein the pallet arrangement comprises at least a first queue entry and a second queue entry, wherein a location of the first queue entry is closer to the loading dock than a location of the second queue entry, and wherein the first queue entry holds the first pallet and the second queue entry holds the second pallet;

after determining the pallet arrangement, determining that the first estimated arrival time has changed to be after the second estimated arrival time; and

after determining that the first estimated arrival time has changed to be after the second estimated arrival time, determining, based on a number of robots available to swap pallets, an amount of time to swap pallets between the first queue entry and the second queue entry;

determining whether an amount of time until the second estimated arrival time is greater than the amount of time to swap pallets; and

after determining that the amount of time until the second estimated arrival time is greater than the amount of time to swap pallets, instructing, based on the number of robots available to swap pallets, at least one available robot to modify the pallet arrangement so that the second pallet is closer to the loading dock than the first pallet before the second estimated arrival time, wherein the instructing comprises instructing the at least one available robot to:

move the second pallet from the second queue entry to the first queue entry, and

move the first pallet from the first queue entry to the second queue entry.

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 Aug 23, 2018
From: HANCE, CHRIS; VREVIN, THIBAULT
To: X DEVELOPMENT LLC
Reel/Frame 046683/0844 →
Continuity (2)
Provisional Application 62551181 · Aug 28, 2017
Related Publication 20190066035A1 · Feb 28, 2019
Cited By (3)
US 12,265,400 US 12,275,606 US 12,673,824