IP Library Granted Patent US 11,244,529
Granted Patent B2
US 11,244,529 · App. 16/666,109 · Granted Feb 8, 2022

Methods and apparatus for determining wait times

Inventors: Shengyang Zhang (Santa Clara, CA); Mingang Fu (Palo Alto, CA); Arun Prasad Nagarathinam (Milpitas, CA); Apeksha Mehta (Mountain View, CA); Pawan Kumar (Sunnyvale, CA); Madhavan Kandhadai Vasantham (Dublin, CA); Ankit Jasuja (San Jose, CA); Surnaik Prakash Srivastava (Santa Clara, CA); Jennifer Chen (Union City, CA); Vidyanand Krishnan (Sunnyvale, CA)
Assignee: Walmart Apollo, LLC
G07C11/00G06N20/00G06Q10/04G06Q10/06G06Q30/016G06Q30/02H04M3/5238G07C2011/04
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 11,244,529
App. No.
16/666,109
Granted
Feb 8, 2022
Kind
B2
Abstract

A system is provided and generally includes a server, an associate computing device, and a customer computing device. The server may receive data from the customer computing device indicating that a customer is picking up items from a predetermined location. The server may compute an estimated wait time for the customer based on one or more machine learning processes. In some examples, a number of unexpected customers that may arrive is determined. The machine learning process may compute the estimated wait time based on the number of unexpected customers. The machine learning process may be trained with historical data. The estimated wait time is transmitted to the customer computing device, and is displayed to the customer. In some examples, the server sends a list of customers waiting to be serviced to the associate computing device. The list may be prioritized based on estimated wait times for those customers.

Claims (65)

1. A system comprising:

a first computing device communicatively coupled to a second computing device, wherein the first computing device is configured to:

receive first data identifying an arrival time window of a customer from the second computing device;

determine a current time based on the received first data;

determine a first number of customers waiting for service;

determine a first number of associates available to assist the first number of customers;

determine an estimated number of unexpected customers that may arrive during the arrival time window based on historical data, the historical data identifying numbers of unexpected customers during a same arrival time window for previous periods of time;

determine an expected wait time for the customer based on the current time, the first number of customers waiting for service, the estimated number of unexpected customers that may arrive during the arrival time window, and the first number of associates available; and

transmit the expected wait time to the second computing device.

2. The system of claim 1 , wherein determining the expected wait time comprises applying at least one machine learning process to the current time, the first number of customers waiting for service, and the first number of associates available.

3. The system of claim 2 , wherein the at least one machine learning process is based on XGBoost.

4. The system of claim 1 , wherein the first computing device is configured to:

determine at least one historic wait time corresponding to the arrival time window over a previous period of time;

determine a second number of customers waiting for service during the at least one historic wait time;

determine a second number of associates available during the at least one historic wait time; and

determine the expected wait time for the customer based on the at least one historic wait time, the second number of customers, and the second number of associates.

5. The system of claim 1 , wherein the second computing device is configured to display the expected wait time.

6. The system of claim 1 , wherein the second computing device is configured to:

receive the expected wait time;

determine whether the expected wait time is beyond a threshold;

display a first screen if the expected wait time is beyond the threshold; and

display a second screen if the expected wait time is not beyond the threshold.

7. The system of claim 6 , wherein the first screen identifies the expected wait time.

8. The system of claim 1 , wherein the second computing device is configured to:

receive the expected wait time;

display a screen in response to receiving the expected wait time; and

in response to displaying the screen:

receive a first input identifying a parking location for the customer; and

transmit the parking location to the first computing device.

9. The system of claim 1 , wherein the second computing device is configured to:

receive the expected wait time;

display a screen in response to receiving the expected wait time; and

in response to displaying the screen:

receive a first input identifying a vehicle color for the customer; and

transmit the vehicle color to the first computing device.

10. A method comprising:

receiving first data identifying an arrival time window of a customer from a second computing device;

determining a current time based on the received first data;

determining a first number of customers waiting for service;

determining a first number of associates available to assist the first number of customers;

determine an estimated number of unexpected customers that may arrive during the arrival time window based on historical data, the historical data identifying numbers of unexpected customers during a same arrival time window for previous periods of time;

determining an expected wait time for the customer based on the current time, the first number of customers waiting for service, the estimated number of unexpected customers that may arrive during the arrival time window, and the first number of associates available; and

transmitting the expected wait time to the second computing device.

11. The method of claim 10 , wherein determining the expected wait time comprises applying at least one machine learning process to the current time, the first number of customers waiting for service, and the first number of associates available.

12. The method of claim 11 , wherein the at least one machine learning process is based on XGBoost.

13. The method of claim 10 , further comprising:

determining at least one historic wait time corresponding to the arrival time window over a previous period of time;

determining a second number of customers waiting for service during the at least one historic wait time;

determining a second number of associates available during the at least one historic wait time; and

determining the expected wait time for the customer based on the at least one historic wait time, the second number of customers, and the second number of associates.

14. A non-transitory, computer-readable storage medium comprising executable instructions that, when executed by one or more processors, cause the one or more processors to:

receive first data identifying an arrival time window of a customer from a second computing device;

determine a current time based on the received first data;

determine a first number of customers waiting for service;

determine a first number of associates available to assist the first number of customers;

determine an estimated number of unexpected customers that may arrive during the arrival time window based on historical data, the historical data identifying numbers of unexpected customers during a same arrival time window for previous periods of time;

determine an expected wait time for the customer based on the current time, the first number of customers waiting for service, the estimated number of unexpected customers that may arrive during the arrival time window, and the first number of associates available; and

transmit the expected wait time to the second computing device.

15. The non-transitory computer-readable storage medium of claim 14 wherein the executable instructions, when executed by the one or more processors, cause the one or more processors to determine the expected wait time by applying at least one machine learning process to the current time, the first number of customers waiting for service, and the first number of associates available.

16. The non-transitory computer-readable storage medium of claim 14 wherein the executable instructions, when executed by the one or more processors, cause the one or more processors to:

determine at least one historic wait time corresponding to the arrival time window over a previous period of time;

determine a second number of customers waiting for service during the at least one historic wait time;

determine a second number of associates available during the at least one historic wait time; and

determine the expected wait time for the customer based on the at least one historic wait time, the second number of customers, and the second number of associates.

17. The non-transitory computer-readable storage medium of claim 14 wherein the executable instructions, when executed by the one or more processors, cause the one or more processors to determine the estimated number of unexpected customers by applying a machine learning process to the historical data identifying numbers of customers arriving unexpectedly during the previous periods of time.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2019
From: ZHANG, SHENGYANG; FU, MINGANG; NAGARATHINAM, ARUN PRASAD; MEHTA, APEKSHA; KUMAR, PAWAN; KANDHADAI VASANTHAM, MADHAVAN; JASUJA, ANKIT; SRIVASTAVA, SURNAIK PRAKASH; CHEN, JENNIFER; KRISHNAN, VIDYANAND
To: WALMART APOLLO, LLC
Reel/Frame 050846/0362 →
Continuity (1)
Related Publication 20210125445A1 · Apr 29, 2021
Cited By (1)
US 12,282,876