IP Library Granted Patent US 9,465,811
Granted Patent B2
US 9,465,811 · App. 14/220,493 · Granted Oct 11, 2016

Polygon-based indexing of places

Inventors: Stanislav Basovnik (Mountain View, CA); Abhinav A. Vora (San Francisco, CA)
Assignee: Facebook, Inc.
G06F17/30241
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,465,811
App. No.
14/220,493
Granted
Oct 11, 2016
Kind
B2
Abstract

In one embodiment, a method includes receiving an identification of a location. The method further includes accessing an inverted index that comprises a plurality of records, where each record corresponds to a map tile and identifies one or more places corresponding to the map tile. At least one of the places identified in the inverted index is identified in multiple records corresponding to multiple map tiles, where the map tiles collectively define an area that circumscribes the place. The method also includes identifying based on the inverted index one or more places associated with the location.

Claims (49)

1. A method comprising:

by a computing device, receiving an identification of a location;

by a computing device, accessing an inverted index that comprises a plurality of records, wherein:

each record corresponds to a map tile and identifies one or more places corresponding to the map tile; and

each place of the one or more places is modeled as a polygon that circumscribes the place, wherein:

the place corresponds to a plurality of map tiles, wherein each map tile is at least partially contained within the polygon;

each of the plurality of map tiles comprises a sample point, wherein the sample point is located within or on a border of the polygon; and

the place is identified in a plurality of records of the inverted index corresponding to the plurality of map tiles, wherein the plurality of map tiles correspond to the polygon that circumscribes the place;

by a computing device, identifying based on the inverted index one or more places associated with the location; and

by a computing device, determining a score for each of the one or more identified places associated with the location, wherein the score for a place is based at least in part on one or more physical distances between the location and one or more respective sample points of the map tiles corresponding to the place.

2. The method of claim 1 , wherein a place is associated with the location if the location is within a map tile of the plurality of map tiles that correspond to the place.

3. The method of claim 1 , wherein a place is associated with the location if the location is within a pre-determined threshold distance of one or more of the plurality of map tiles that correspond to the place.

4. The method of claim 1 , further comprising, by a computing device, accessing a forward index that corresponds to one of the places identified as being associated with the location, wherein the forward index comprises location identifiers of the map tiles that correspond to the place.

5. The method of claim 4 , further comprising, by a computing device, determining based on the forward index a shortest distance between the location and the place.

6. The method of claim 1 , wherein receiving the identification of the location comprises receiving a query that identifies the location.

7. The method of claim 6 , wherein the query identifies a particular place in addition to the location.

8. The method of claim 7 , wherein identifying based on the inverted index one or more places associated with the location comprises determining whether at least part of the particular place is located within a map tile associated with the location.

9. The method of claim 1 , wherein a distance between the location and the place is a minimum of the distances between the location and the sample points of the map tiles corresponding to the place.

10. The method of claim 1 , wherein the score for the place is further based at least in part on social-graph information associated with the place.

11. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:

receive an identification of a location;

access an inverted index that comprises a plurality of records, wherein:

each record corresponds to a map tile and identifies one or more places corresponding to the map tile; and

each place of the one or more places is modeled as a polygon that circumscribes the place, wherein:

the place corresponds to a plurality of map tiles, wherein each map tile is at least partially contained within the polygon;

each of the plurality of map tiles comprises a sample point, wherein the sample point is located within or on a border of the polygon; and

the place is identified in a plurality of records of the inverted index corresponding to the plurality of map tiles, wherein the plurality of map tiles correspond to the polygon that circumscribes the place;

identify based on the inverted index one or more places associated with the location; and

determine a score for each of the one or more identified places associated with the location, wherein the score for a place is based at least in part on one or more physical distances between the location and one or more respective sample points of the map tiles corresponding to the place.

12. The media of claim 11 , wherein a place is associated with the location if the location is within a map tile of the plurality of map tiles that correspond to the place.

13. The media of claim 11 , wherein a place is associated with the location if the location is within a pre-determined threshold distance of one or more of the plurality of map tiles that correspond to the place.

14. The media of claim 11 , wherein the software is further operable when executed to access a forward index that corresponds to one of the places identified as being associated with the location, wherein the forward index comprises location identifiers of the map tiles that correspond to the place.

15. The media of claim 14 , wherein the software is further operable when executed to determine based on the forward index a shortest distance between the location and the place.

16. The media of claim 11 , wherein receiving the identification of the location comprises receiving a query that identifies the location.

17. The media of claim 16 , wherein the query identifies a particular place in addition to the location.

18. The media of claim 11 , wherein a distance between the location and the place is a minimum of the distances between the location and the sample points of the map tiles corresponding to the place.

19. The media of claim 11 , wherein the score for the place is further based at least in part on social-graph information associated with the place.

20. A system comprising:

one or more processors; and

a memory coupled to the processors comprising instructions executable by the processors, the processors being operable when executing the instructions to:

receive an identification of a location;

access an inverted index that comprises a plurality of records, wherein:

each record corresponds to a map tile and identifies one or more places corresponding to the map tile; and

each place of the one or more places is modeled as a polygon that circumscribes the place, wherein:

the place corresponds to a plurality of map tiles, wherein each map tile is at least partially contained within the polygon;

each of the plurality of map tiles comprises a sample point, wherein the sample point is located within or on a border of the polygon; and

the place is identified in a plurality of records of the inverted index corresponding to the plurality of map tiles, wherein the plurality of map tiles correspond to the polygon that circumscribes the place;

identify based on the inverted index one or more places associated with the location; and

determine a score for each of the one or more identified places associated with the location, wherein the score for a place is based at least in part on one or more physical distances between the location and one or more respective sample points of the map tiles corresponding to the place.

Assignments (2)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2014
From: BASOVNIK, STANISLAV; VORA, ABHINAV A.
To: FACEBOOK, INC.
Reel/Frame 033031/0456 →
Continuity (1)
Related Publication 20150269250A1 · Sep 24, 2015