METHODS AND SYSTEMS FOR ESTIMATING LENGTH OF QUEUES BASED ON LOCATION DATA FROM MOBILE DEVICES
First Claim
1. A computer implemented method, comprising:
- identifying, by a computing device, a queue location for a resource and initializing a queue data structure and an exit data structure associated with the resource;
receiving, by the computing device, a plurality of periodic updates from a plurality of mobile devices in the queue location, each periodic update including an identification of the mobile device, a position of the mobile device, and a time of measurement;
when a mobile device is determined to have entered the queue location, storing, by the computing device, the mobile device identification, position and time of measurement at the end of a queue data structure with the time of measurement further stored as a queue entrance time;
when a mobile device is determined to be already in the queue location, updating, by the computing device, the position and time of measurement in the queue data structure;
when a mobile device is determined to have exited the queue location, moving, by the computing device, the identification, position, time of measurement and queue entrance time for the mobile device from the queue data structure to the exit data structure;
estimating, by the computing device, an average speed of the line based on an average rate of mobile devices exiting the queue location; and
estimating, by the computing device, a queue waiting time based on dividing a number of elements in the queue data structure by the average speed of the line.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems, methods and computer program products for using location data from mobile devices to estimate the length of queues for a resource are described herein. An embodiment includes identifying a queue location for a resource, receiving a plurality of periodic updates from a plurality of mobile devices in the queue location, each periodic update including an identification and a position of the mobile device and a time of measurement, and storing the identification, location and time of measurement for each device in a queue data structure. The embodiment further includes determining when a device exits the queue location and moving the stored information for that device from the queue data structure to an exit data structure. Methods are provided for using the information in the data structures to estimate the length of the queue, waiting time and the speed of the line.
32 Citations
18 Claims
-
1. A computer implemented method, comprising:
-
identifying, by a computing device, a queue location for a resource and initializing a queue data structure and an exit data structure associated with the resource; receiving, by the computing device, a plurality of periodic updates from a plurality of mobile devices in the queue location, each periodic update including an identification of the mobile device, a position of the mobile device, and a time of measurement; when a mobile device is determined to have entered the queue location, storing, by the computing device, the mobile device identification, position and time of measurement at the end of a queue data structure with the time of measurement further stored as a queue entrance time; when a mobile device is determined to be already in the queue location, updating, by the computing device, the position and time of measurement in the queue data structure; when a mobile device is determined to have exited the queue location, moving, by the computing device, the identification, position, time of measurement and queue entrance time for the mobile device from the queue data structure to the exit data structure; estimating, by the computing device, an average speed of the line based on an average rate of mobile devices exiting the queue location; and estimating, by the computing device, a queue waiting time based on dividing a number of elements in the queue data structure by the average speed of the line. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system, comprising:
-
at least one computing device; and a memory coupled to the computing device and having instructions stored thereon that, when executed by the computing device, cause the computing device; identify a queue location for a resource and initializing a queue data structure and an exit data structure associated with the resource; receive a plurality of periodic updates from a plurality of mobile devices in the queue location, each periodic update including an identification of the mobile device, a position of the mobile device, and a time of measurement; when a mobile device is determined to have entered the queue location, store the mobile device identification, position and time of measurement at the end of a queue data structure with the time of measurement further stored as a queue entrance time; when a mobile device is determined to be already in the queue location, update the position and time of measurement in the queue data structure; when a mobile device is determined to have exited the queue location, move the identification, position, time of measurement and queue entrance time for the mobile device from the queue data structure to the exit data structure; estimate an average speed of the line based on an average rate of mobile devices exiting the queue location; and estimate a queue waiting time based on dividing a number of elements in the queue data structure by the average speed of the line. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer readable storage medium having instructions encoded thereon that, when executed by a computing device, cause the computing device to:
-
identify a queue location for a resource and initializing a queue data structure and an exit data structure associated with the resource; receive a plurality of periodic updates from a plurality of mobile devices in the queue location, each periodic update including an identification of the mobile device, a position of the mobile device, and a time of measurement; when a mobile device is determined to have entered the queue location, store the mobile device identification, position and time of measurement at the end of a queue data structure with the time of measurement further stored as a queue entrance time; when a mobile device is determined to be already in the queue location, update the position and time of measurement in the queue data structure; when a mobile device is determined to have exited the queue location, move the identification, position, time of measurement and queue entrance time for the mobile device from the queue data structure to the exit data structure; estimate an average speed of the line based on an average rate of mobile devices exiting the queue location; and estimate a queue waiting time based on dividing a number of elements in the queue data structure by the average speed of the line. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification