IP Library Granted Patent US 9,014,717
Granted Patent B1
US 9,014,717 · App. 13/830,495 · Granted Apr 21, 2015

Methods, systems, and media for determining location information from real-time bid requests

Inventors: Foster J. Provost (New York, NY); Tina Eliassi-Rad (Jersey City, NJ); Lauren S. Moores (New York, NY)
H04W8/02H04W8/005
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 9,014,717
App. No.
13/830,495
Granted
Apr 21, 2015
Kind
B1
Abstract

Methods, systems, and media for determining location information from real-time bid requests are provided. In some implementations, a method for determining device locations is provided, the method comprising: receiving a real-time data stream that includes location proxies corresponding to devices; generating a movement graph of interconnected nodes and edges, wherein each node represents one of the location proxies and wherein each edge represents movement information between the location proxies; calculating, for a node in the movement graph, location information by applying a predictive model having weights based on the movement information; and assigning, for the node in the movement graph, a census-based identifier to the calculated location information. The census-based identifier can be used, for example, to supplement or enrich bid requests within the real-time data stream.

Claims (50)

1. A method for determining device locations, the method comprising:

receiving, using a hardware processor, real-time bid requests;

determining, from IP addresses associated with the real-time bid requests, mobile IP addresses and non-mobile IP addresses based on a radius parameter;

monitoring movement information between the mobile IP addresses and the non-mobile IP addresses;

generating a movement graph of interconnected nodes and edges, wherein each node represents one of the mobile IP addresses and the non-mobile IP addresses and wherein each edge represents the movement information between nodes;

calculating, for a node in the movement graph, location information by applying a predictive model having weights based on the movement information;

assigning, for the node in the movement graph, a census block group information to the calculated location information; and

supplementing the real-time bid request corresponding to the node with the census block group information.

2. The method of claim 1 , wherein each real-time bid request is associated with a hashed public IP address.

3. The method of claim 1 , further comprising anonymizing the IP addresses associated with the real-time bid requests by applying one or more hash functions.

4. The method of claim 1 , wherein each of the mobile IP addresses in the movement graph is associated with a time stamp.

5. The method of claim 1 , wherein the movement information includes at least one of: movement between a non-mobile IP address and another non-mobile IP address, movement between a mobile IP address and another non-mobile IP address, and movement between the non-mobile IP address and the mobile IP address.

6. The method of claim 1 , wherein the movement information includes the number of movements between two nodes and the inter-arrival times between two nodes.

7. The method of claim 6 , wherein the predictive model is a weighted-vote relational neighbor classifier with the number of movements and the inter-arrival times as the weights.

8. The method of claim 1 , wherein the calculated location information includes inferring latitude and longitude information for the node without actual location information.

9. The method of claim 1 , wherein the census block group is assigned from a plurality of census block groups by:

generating a plurality of centroids for each of the plurality of census block groups, wherein a centroid describes the census block group;

determining, for a centroid, a distance between the calculated location information and the centroid;

comparing the distance with a radius of the census block group corresponding to the centroid; and

determining, for the plurality of centroids, a census block group identifier based on the comparison.

10. The method of claim 9 , wherein the comparison further comprises a ratio of the distance to the radius of the census block group and wherein the census block group identifier corresponds to the census block group that provided the ratio having a minimum value.

11. A system for determining device locations, the system comprising:

at least one hardware processor that is configured to:

receive real-time bid requests;

determine, from IP addresses associated with the real-time bid requests, mobile IP addresses and non-mobile IP addresses based on a radius parameter;

monitor movement information between the mobile IP addresses and the non-mobile IP addresses;

generate a movement graph of interconnected nodes and edges, wherein each node represents one of the mobile IP addresses and the non-mobile LP addresses and wherein each edge represents the movement information between nodes;

calculate, for a node in the movement graph, location information by applying a predictive model having weights based on the movement information;

assign, for the node in the movement graph, a census block group information to the calculated location information; and

supplement the real-time bid request corresponding to the node with the census block group information.

12. The system of claim 11 , wherein each real-time bid request is associated with a hashed public IP address.

13. The system of claim 11 , further comprising anonymizing the IP addresses associated with the real-time bid requests by applying one or more hash functions.

14. The system of claim 11 , wherein each of the mobile IP addresses in the movement graph is associated with a time stamp.

15. The system of claim 11 , wherein the movement information includes a movement between a first non-mobile IP address and a second non-mobile IP address.

16. The system of claim 11 , wherein the movement information includes the number of movements between two nodes and the inter-arrival times between two nodes.

17. The system of claim 16 , wherein the predictive model is a weighted-vote relational neighbor classifier with the number of movements and the inter-arrival times as the weights.

18. The system of claim 11 , wherein the calculated location information includes inferring latitude and longitude information for the node without actual location information.

19. The system of claim 11 , wherein the processor is further configured to:

generating a plurality of centroids for each of the plurality of census block groups, wherein a centroid describes the census block group;

determining, for a centroid, a distance between the calculated location information and the centroid;

comparing the distance with a radius of the census block group corresponding to the centroid; and

determining, for the plurality of centroids, a census block group identifier based on the comparison.

20. The system of claim 19 , wherein the processor is further configured to:

determine a ratio of the distance to the radius of the census block group; and

determine the census block group identifier corresponding to the census block group that provided the ratio having a minimum value.

21. A method for determining device locations, the method comprising:

receiving, using a hardware processor, a real-time data stream that includes location proxies corresponding to devices;

generating a movement graph of interconnected nodes and edges, wherein each node represents one of the location proxies and wherein each edge represents movement information between the location proxies;

calculating, for a node in the movement graph, location information by applying a predictive model having weights based on the movement information; and

assigning, for the node in the movement graph, a census-based identifier to the calculated location information.

Assignments (10)
RELEASE OF SECURITY INTEREST Recorded Feb 25, 2022
From: SILICON VALLEY BANK
To: DSTILLERY, INC.; ESM ACQUISITION II, LLC
Reel/Frame 059097/0971 →
SECURITY INTEREST Recorded Feb 18, 2020
From: DSTILLERY, INC.
To: COMERICA BANK
Reel/Frame 051851/0228 →
SECURITY INTEREST Recorded Apr 14, 2017
From: DSTILLERY INC.; ESM ACQUISITION II, LLC
To: SILICON VALLEY BANK
Reel/Frame 042010/0229 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 24, 2015
From: ESM ACQUISITION II, LLC
To: DSTILLERY, INC.
Reel/Frame 035963/0873 →
RELEASE OF SECURITY INTEREST Recorded Aug 22, 2014
From: ESCALATE CAPITAL PARTNERS SBIC I, L.P.
To: DSTILLERY INC.
Reel/Frame 033592/0020 →
SECURITY INTEREST Recorded Mar 31, 2014
From: DSTILLERY, INC.
To: ESCALATE CAPITAL PARTNERS SBIC I, L.P.
Reel/Frame 032566/0176 →
SECURITY INTEREST Recorded Mar 31, 2014
From: DSTILLERY INC.; ESM ACQUISITION II, LLC
To: SILICON VALLEY BANK
Reel/Frame 032562/0268 →
MERGER Recorded Nov 6, 2013
From: EVERYSCREEN MEDIA, INC.
To: ESM ACQUISITION II, LLC
Reel/Frame 031552/0667 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 6, 2013
From: PROVOST, FOSTER J.; ELIASSI-RAD, TINA; MOORES, LAUREN S.
To: EVERYSCREEN MEDIA, INC.
Reel/Frame 031552/0657 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 5, 2013
From: PROVOST, FOSTER J.; ELIASSI-RAD, TINA; MOORES, LAUREN S.
To: EVERYSCREEN MEDIA, INC.
Reel/Frame 030551/0084 →
Continuity (1)
Provisional Application 61625003 · Apr 16, 2012