IP Library Granted Patent US 12,062,288
Granted Patent B2
US 12,062,288 · App. 16/539,850 · Granted Aug 13, 2024

Determining efficient pickup locations for transportation requests utilizing a pickup location model

Inventors: John Torres Fremlin (New York, NY); Michael Sasha Frumin (Brooklyn, NY); Dorian Anthony Goldman (Brooklyn, NY); Man Geen Harold Li (New York, NY); Akshay Ramesh Patil (Brooklyn, NY); David Halsted Riege (San Francisco, CA); Kevin Stewart (Seattle, WA); Alexander Michael Weinstein (Seattle, WA)
Assignee: Lyft, Inc.
G08G1/202G01C21/3438G01C21/3461G06F17/18
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 12,062,288
App. No.
16/539,850
Granted
Aug 13, 2024
Kind
B2
Abstract

This disclosure describes a pickup location determination system that determines a pickup location for a received transportation request by filtering out door points based on various factors and by utilizing a pickup location model to select a pickup location from the filtered door points. For example, the disclosed systems generate door points relative to intersection points within a request radius of a request location associated with a received transportation request. The disclosed systems generate potential pickup locations by filtering out door points that are impractical and/or inefficient based on proximity to other door points, locations relative to venues, locations relative to side streets, and/or locations between parallel road segments (e.g., medians). The disclosed systems further utilize a pickup location model to select a pickup location from the potential pickup locations.

Claims (86)

1. A computer-implemented method comprising:

receiving, by one or more servers, a transportation request from a requester device indicating a request location;

generating, by the one or more servers, door points for the transportation request associated with the request location by:

determining a request radius for the request location of the transportation request;

identifying a plurality of intersection points within the request radius of the request location;

determining a plurality of intersection radii for the plurality of intersection points identified within the request radius; and

generating a set of door points within an intersection radius from the plurality of intersection radii;

determining, by the one or more servers, distances between door points of the set of door points within the intersection radius;

generating a filtered set of potential pickup locations based on determining the distances between the door points by removing, from the set of door points, one or more door points that are within a threshold distance of another door point;

determining, utilizing a pickup location model to process the filtered set of potential pickup locations, a pickup location for the transportation request based on locations of available transportation providers; and

providing, by the one or more servers for display on the requester device, a pickup location interface including an indication of the pickup location.

2. The computer-implemented method of claim 1 , wherein generating the filtered set of potential pickup locations comprises:

generating a polygon defined by one or more nodes of road segments; and

filtering out door points from the set of door points that are within the polygon.

3. The computer-implemented method of claim 1 , wherein generating the filtered set of potential pickup locations comprises:

identifying a venue within the request radius of the request location; and

filtering out the one or more door points from the set of door points based on a threshold venue distance.

4. The computer-implemented method of claim 3 , wherein generating the filtered set of potential pickup locations comprises:

determining, based on an event schedule associated with the venue, that an event is taking place at the venue; and

filtering out the one or more door points from the set of door points based on determining that the event is taking place.

5. The computer-implemented method of claim 1 , wherein generating the filtered set of potential pickup locations comprises determining selection scores for the set of door points based at least in part on previous pickup locations, wherein a selection score indicates a probability of selecting a corresponding door point as a potential pickup location.

6. The computer-implemented method of claim 1 , wherein generating the filtered set of potential pickup locations comprises:

accessing a map database that includes street metadata;

determining acceptability scores for the set of door points based on the street metadata;

identifying at least one door point of the set of door points with an acceptability score that fails to satisfy a threshold acceptability score; and

filtering out the at least one door point based on the acceptability score failing to satisfy the threshold acceptability score.

7. The computer-implemented method of claim 1 , wherein generating the filtered set of potential pickup locations comprises:

identifying, from the plurality of intersection points within the request radius, a given intersection point that is within a threshold distance of an incompatible road; and

filtering out door points within an intersection radius of the given intersection point.

8. A non-transitory computer readable medium comprising instructions that, when executed by at least one processor, cause a computer device to:

receive a transportation request from a requester device indicating a request location;

generate door points for the transportation request associated with the request location by:

determining a request radius for the request location of the transportation request;

identifying a plurality of intersection points within the request radius of the request location;

determining a plurality of intersection radii for the plurality of intersection points identified within the request radius; and

generating a set of door points within an intersection radius from the plurality of intersection radii;

determine distances between door points of the set of door points within the intersection radius;

generate a filtered set of potential pickup locations based on determining the distances between the door points by removing, from the set of door points, one or more door points from the set of door points that are within a threshold distance of another door point;

determine, utilizing a pickup location model to process the filtered set of potential pickup locations, a pickup location for the transportation request based on locations of available transportation providers; and

provide, for display on a requester device, a pickup location interface including an indication of the pickup location.

9. The non-transitory computer readable medium of claim 8 , further comprising instructions that, when executed by the at least one processor, cause the computer device to generate the filtered set of potential pickup locations by:

generating a polygon defined by one or more nodes of road segments; and

filtering out door points from the set of door points that are within the polygon.

10. The non-transitory computer readable medium of claim 8 , further comprising instructions that, when executed by the at least one processor, cause the computer device to generate the filtered set of potential pickup locations by:

identifying a venue within the request radius of the request location; and

filtering out the one or more door points from the set of door points based on a threshold venue distance.

11. The non-transitory computer readable medium of claim 10 , further comprising instructions that, when executed by the at least one processor, cause the computer device to generate the filtered set of potential pickup locations by:

determining, based on an event schedule associated with the venue, that an event is taking place at the venue; and

filtering out the one or more door points from the set of door points based on determining that the event is taking place.

12. The non-transitory computer readable medium of claim 8 , further comprising instructions that, when executed by the at least one processor, cause the computer device to generate the filtered set of potential pickup locations by determining selection scores for the set of door points based at least in part on previous pickup locations, wherein a selection score indicates a probability of selecting a corresponding door point as a potential pickup location.

13. The non-transitory computer readable medium of claim 8 , further comprising instructions that, when executed by the at least one processor, cause the computer device to generate the filtered set of potential pickup locations by:

accessing a map database that includes street metadata;

determining acceptability scores for the set of door points based on the street metadata;

identifying at least one door point of the set of door points with an acceptability score that fails to satisfy a threshold acceptability score; and

filtering out the at least one door point based on the acceptability score failing to satisfy the threshold acceptability score.

14. The non-transitory computer readable medium of claim 8 , further comprising instructions that, when executed by the at least one processor, cause the computer device to generate the filtered set of potential pickup locations by:

identifying, from the plurality of intersection points within the request radius, a given intersection point that is within a threshold distance of an incompatible road; and

filtering out door points within an intersection radius of the given intersection point.

15. A system comprising:

at least one processor; and

a non-transitory computer readable medium comprising instructions that, when executed by at least one processor, cause the system to:

receive a transportation request from a requester device indicating a request location;

generate door points for the transportation request associated with the request location by:

determining a request radius for the request location of the transportation request;

identifying a plurality of intersection points within the request radius of the request location;

determining a plurality of intersection radii for the plurality of intersection points identified within the request radius; and

generating a set of door points within an intersection radius from the plurality of intersection radii;

determine distances between door points of the set of door points within the intersection radius;

generate a filtered set of potential pickup locations based on determining the distances between the door points by removing, from the set of door points, one or more door points from the set of door points that are within a threshold distance of another door point;

determine, utilizing a pickup location model to process the filtered set of potential pickup locations, a pickup location for the transportation request based on locations of available transportation providers; and

provide, for display on a requester device, a pickup location interface including an indication of the pickup location.

16. The system of claim 15 , further comprising instructions that, when executed by the at least one processor, cause the system to generate the filtered set of potential pickup locations by:

generating a polygon defined by one or more nodes of road segments; and

filtering out door points from the set of door points that are within the polygon.

17. The system of claim 15 , further comprising instructions that, when executed by the at least one processor, cause the system to generate the filtered set of potential pickup locations by:

identifying a venue within the request radius of the request location; and

filtering out the one or more door points from the set of door points based on a threshold venue distance.

18. The system of claim 17 , further comprising instructions that, when executed by the at least one processor, cause the system to generate the filtered set of potential pickup locations by:

determining, based on an event schedule associated with the venue, that an event is taking place at the venue; and

filtering out the one or more door points from the set of door points based on determining that the event is taking place.

19. The system of claim 15 , further comprising instructions that, when executed by the at least one processor, cause the system to generate the filtered set of potential pickup locations by determining selection scores for the set of door points based at least in part on previous pickup locations, wherein a selection score indicates a probability of selecting a corresponding door point as a potential pickup location.

20. The system of claim 15 , further comprising instructions that, when executed by the at least one processor, cause the system to generate the filtered set of potential pickup locations by:

accessing a map database that includes street metadata;

determining acceptability scores for the set of door points based on the street metadata;

identifying at least one door point of the set of door points with an acceptability score that fails to satisfy a threshold acceptability score; and

filtering out the at least one door point based on the acceptability score failing to satisfy the threshold acceptability score.

Assignments (2)
SECURITY INTEREST Recorded Nov 3, 2022
From: LYFT, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 061880/0237 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2019
From: FREMLIN, JOHN TORRES; FRUMIN, MICHAEL SASHA; GOLDMAN, DORIAN ANTHONY; LI, MAN GEEN HAROLD; PATIL, AKSHAY RAMESH; RIEGE, DAVID HALSTED; STEWART, KEVIN; WEINSTEIN, ALEXANDER MICHAEL
To: LYFT, INC.
Reel/Frame 050490/0033 →