IP Library Granted Patent US 11,601,553
Granted Patent B2
US 11,601,553 · App. 17/667,910 · Granted Mar 7, 2023

System and method for enhanced virtual queuing

Inventors: Daniel Bohannon (Livermore, CA); Richard Daniel Siebert (Franklin, TN); Jay Power (Franklin, TN); Matthew DiMaria (Brentwood, TN); Matthew Donaldson Moller (Petaluma, CA); Shannon Lekas (Cushing, TX)
Assignee: VIRTUAL HOLD TECHNOLOGY SOLUTIONS, LLC
H04M3/5231G06Q10/047G06Q10/06312G06Q10/06375H04L67/306H04M3/5183
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,601,553
App. No.
17/667,910
Granted
Mar 7, 2023
Kind
B2
Abstract

A system and method for managing virtual queues. A cloud-based queue service manages a plurality of queues hosted by one or more entities. The queue service is in constant communication with the entities providing queue management, queue analysis, and queue recommendations. The queue service is likewise in direct communication with queued persons. Sending periodic updates while also motivating and incentivizing punctuality and minimizing wait times based on predictive analysis. The predictive analysis uses “Big Data” and other available data resources, for which the predictions assist in the balancing of persons across multiple queues for the same event or multiple persons across a sequence of queues for sequential events.

Claims (45)

1. A system for enhanced virtual queuing, comprising:

a computing device comprising a memory, a processor, and a non-volatile data storage device;

an entity database stored on the non-volatile data storage device, the entity database comprising historical data for virtual queues;

a machine learning algorithm operating on the computing device, the machine learning algorithm configured to predict wait times and low throughput times for a plurality of times within a time period for virtual queues;

a queue manager comprising a first plurality of programming instructions stored in the memory which, when operating on the processor, causes the processor to:

establish plurality of virtual queues;

request and receive predicted wait times and predicted low throughput times from a prediction module for each of the plurality of virtual queues;

continuously or periodically receive requests to join a queue, each request comprising a requestor and contact information for the requestor;

assign each requestor to one of the queues of the plurality of virtual queues using the based in part on the predicted wait times;

send an initial update notification indicating the queue assignment to the requestor using the contact information;

during each period of predicted low throughput times, request and receive queue load balancing from a queue load balancer module;

send periodic update notifications to each requestor based on reassignment of requestors among the plurality of virtual queues by the queue load balancer; and

the queue load balancer module comprising a second plurality of programming instructions stored in the memory which, when operating on the processor, causes the processor to:

continuously measure actual wait times across the plurality of virtual queues;

receive the request for queue load balancing from the queue manager;

calculate a current queue throughput for each of the plurality of virtual queues;

for each of the plurality of virtual queues, compare the current queue throughput to the predicted low throughput time to confirm that the current queue throughput is a low throughput time;

process the actual wait times for each of the plurality of virtual queues through the machine learning algorithm to predict revised wait times and low throughput times for a plurality of times within a time period for each of the plurality of virtual queues; and

reassign requestors among the plurality of virtual queues to minimize wait times across the plurality of virtual queues; and

the prediction module comprising a third plurality of programming instructions stored in the memory which, when operating on the processor, causes the processor to:

retrieve historical data for each of the plurality of virtual queues from the entity database;

process the historical data for each of the plurality of virtual queues through the machine learning algorithm to predict wait times and low throughput times for a plurality of times within a time period for each of the plurality of virtual queues; and

send the predicted wait times to the queue manager.

2. A method for enhanced virtual queuing, comprising the steps of:

creating an entity database stored on a non-volatile data storage device of a computing device comprising a memory, a processor, and the non-volatile data storage device, the entity database comprising historical data for virtual queues;

training a machine learning algorithm operating on the computing device to predict wait times and low throughput times for a plurality of times within a time period for virtual queues;

using a queue manager operating on the computing device to:

establish plurality of virtual queues;

request and receive predicted wait times and predicted low throughput times from a prediction module operating on the computing device for each of the plurality of virtual queues;

continuously or periodically receive requests to join a queue, each request comprising a requestor and contact information for the requestor;

assign each requestor to one of the queues of the plurality of virtual queues using the based in part on the predicted wait times;

send an initial update notification indicating the queue assignment to the requestor using the contact information;

during each period of predicted low throughput times, request and receive queue load balancing from a queue load balancer module operating on the computing device;

send periodic update notifications to each requestor based on reassignment of requestors among the plurality of virtual queues by the queue load balancer;

using the queue load balancer module to:

continuously measure actual wait times across the plurality of virtual queues;

receive the request for queue load balancing from the queue manager;

calculate a current queue throughput for each of the plurality of virtual queues;

for each of the plurality of virtual queues, compare the current queue throughput to the predicted low throughput time to confirm that the current queue throughput is a low throughput time;

process the actual wait times for each of the plurality of virtual queues through the machine learning algorithm to predict revised wait times and low throughput times for a plurality of times within a time period for each of the plurality of virtual queues; and

reassign requestors among the plurality of virtual queues to minimize wait times across the plurality of virtual queues; and

using the prediction module to:

retrieve historical data for each of the plurality of virtual queues from the entity database;

process the historical data for each of the plurality of virtual queues through the machine learning algorithm to predict wait times and low throughput times for a plurality of times within a time period for each of the plurality of virtual queues; and

send the predicted wait times to the queue manager.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2022
From: BOHANNON, DANIEL; SIEBERT, RICHARD DANIEL; POWER, JAY; DIMARIA, MATTHEW; MOLLER, MATTHEW DONALDSON; LEKAS, SHANNON
To: VIRTUAL HOLD TECHNOLOGY SOLUTIONS, LLC
Reel/Frame 062089/0968 →
SUPPLEMENT NO. 1 TO GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded Oct 31, 2022
From: VIRTUAL HOLD TECHNOLOGY SOLUTIONS, LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 061808/0358 →
Continuity (14)
Continuation In Part 17667855 · Feb 9, 2022
Continuation In Part 17667034 · Feb 8, 2022
Continuation In Part 17235408 · Apr 20, 2021
Continuation 16836798 · Mar 31, 2020
Continuation 16542577 · Aug 16, 2019
Continuation In Part 17389837 · Jul 30, 2021
Continuation 16985093 · Aug 4, 2020
Continuation 16583967 · Sep 26, 2019
Continuation In Part 16542577 · Aug 16, 2019
Continuation 16523501 · Jul 26, 2019
Continuation 15411424 · Jan 20, 2017
Provisional Application 62820190 · Mar 18, 2019
Provisional Application 62828133 · Apr 2, 2019
Related Publication 20220166884A1 · May 26, 2022
Cited By (1)
US 12,610,209