Anonymous crowd tracking
First Claim
1. A computer-implemented method comprising:
- obtaining current locations of a plurality of users of a plurality of mobile devices, each of the plurality of users being a user of a corresponding one of the plurality of mobile devices;
forming a plurality of crowds based on the current locations of the plurality of users, each crowd of the plurality of crowds including a number of users of the plurality of users;
for each crowd of at least one of the plurality of crowds, creating a plurality of crowd snapshots of the crowd over time, each crowd snapshot of the plurality of crowd snapshots comprising anonymized user data for users of the plurality of users that are members of the crowd at a time at which the crowd snapshot is created; and
storing, in computer readable memory, the plurality of crowd snapshots for each crowd of the at least one of the plurality of crowds.
13 Assignments
0 Petitions
Accused Products
Abstract
A system and method for tracking crowds of users are provided. In one embodiment, a central system, which includes one or more servers, operates to obtain current locations for users of mobile devices. Based on the current locations of the users, the central system forms crowds of users. As a result of movement of the users and corresponding location updates, the crowds move and change over time. In order to track at least some of the crowds, crowd snapshots for those crowds are created over time and stored. The crowd snapshots preferably maintain anonymity of the users in the crowd at the time the crowd snapshots are created. Thereafter, the crowd snapshots may be used to generate crowd tracking data for select crowds.
-
Citations
31 Claims
-
1. A computer-implemented method comprising:
-
obtaining current locations of a plurality of users of a plurality of mobile devices, each of the plurality of users being a user of a corresponding one of the plurality of mobile devices; forming a plurality of crowds based on the current locations of the plurality of users, each crowd of the plurality of crowds including a number of users of the plurality of users; for each crowd of at least one of the plurality of crowds, creating a plurality of crowd snapshots of the crowd over time, each crowd snapshot of the plurality of crowd snapshots comprising anonymized user data for users of the plurality of users that are members of the crowd at a time at which the crowd snapshot is created; and storing, in computer readable memory, the plurality of crowd snapshots for each crowd of the at least one of the plurality of crowds. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A server comprising:
-
a communication interface communicatively coupling the server to a plurality of mobile devices of a plurality of users via a network, each of the plurality of users being a user of a corresponding one of the plurality of mobile devices; and a control system associated with the communication interface and adapted to; obtain current locations of the plurality of users of the plurality of mobile devices; form a plurality of crowds based on the current locations of the plurality of users, each crowd of the plurality of crowds including a number of users of the plurality of users; for each crowd of at least one of the plurality of crowds, create a plurality of crowd snapshots of the crowd over time, each crowd snapshot of the plurality of crowd snapshots comprising anonymized user data for users of the plurality of users that are members of the crowd at a time at which the crowd snapshot is created; and store the plurality of crowd snapshots for each crowd of the at least one of the plurality of crowds.
-
-
31. A computer readable medium storing software for instructing a controller of a server to:
-
obtain current locations of a plurality of users of a plurality of mobile devices, each of the plurality of users being a user of a corresponding one of the plurality of mobile devices; form a plurality of crowds based on the current locations of the plurality of users, each crowd of the plurality of crowds including a number of users of the plurality of users; for each crowd of at least one of the plurality of crowds, create a plurality of crowd snapshots of the crowd over time, each crowd snapshot of the plurality of crowd snapshots comprising anonymized user data for users of the plurality of users that are members of the crowd at a time at which the crowd snapshot is created; and store the plurality of crowd snapshots for each crowd of the at least one of the plurality of crowds.
-
Specification