# US 10,371,539 B2 · Determining matches using dynamic provider eligibility model

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,371,539 B2
- Document ID: US10371539B2
- Status: Granted
- Kind: B2
- Application number: 15/454,906
- Filed: 2017-03-09
- Published: 2018-09-13
- Granted: 2019-08-06
- Earliest claimed: 2017-03-09
- Assignees: Lyft, Inc.
- Applicants: Lyft, Inc.
- Inventors: Austin Broyles; Robert Anthony Farmer; Krishna Kumar Selvam
- Web page: https://patentgrep.com/patent/US10371539B2

## CPC

- G01C 21/3438: {Rendezvous; Ride sharing}
- G01C 21/362: {received from an external device or application, e.g. PDA, mobile phone or calendar application}
- G01C 21/3691: {Retrieval, searching and output of information related to real-time traffic, weather, or environmental conditions (arrangements for giving variable traffic instructions G08G1/09)}
- H04W 4/02: Services making use of location information
- H04W 4/023: {using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds}
- H04W 4/029: Location-based management or tracking services
- G06Q 2240/00: Transportation facility access, e.g. fares, tolls or parking
- G01C: MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY (measuring liquid level G01F; radio navigation, determining distance or velocity by use of propagation effects, e.g. Doppler effects, propagation time, of radio waves, analogous arrangements using other waves G01S)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

Embodiments provide techniques, including systems and methods, for determining matches of requestors and providers based on a dynamic provider eligibility model. For example, a request matching model uses an estimated arrival time for a requestor and estimated travel times for available providers to a pickup location to determine eligible providers for matching to a ride request. The matching model determines those providers that are far enough away from the request location to allow the requestor time to arrive at the pickup location without matching providers that are too far away, causing delay for the requestor and lowering the efficiency of the system by taking provider system resources from other service areas and increasing provider downtime upon matching. Additionally, embodiments provide more efficient matching processing leading to fewer canceled matched requests, fewer requests for a successful match, and fewer system resources necessary to meet requestor demand.

## Claims

### Claim 1

A system comprising:
at least one processor; and
at least one non-transitory computer-readable storage medium storing instructions thereon that, when executed by the at least one processor, cause the system to:
receive transport request information associated with a requestor computing device, the transport request information including a request location;
determine a requestor location associated with the requestor computing device;
determine a requestor arrival time to the request location based on a difference between the requestor location and the request location;
determine a set of available providers based on the requestor arrival time to the request location, the set of available providers having a travel time to the request location that is greater than the requestor arrival time; and
send the transport request information associated with the requestor computing device to a provider computing device associated with a provider from the set of available providers.

### Claim 2 (depends on 1)

The system of claim 1, wherein determining the requestor arrival time to the request location based on the difference between the requestor location and the request location comprises:
generating a navigation route from the requestor location of the requestor computing device to the request location; and
determining an estimated travel time for the navigation route based on historical travel times associated with the navigation route, wherein the requestor arrival time to the request location is based on the estimated travel time for the navigation route.

### Claim 3 (depends on 2)

The system of claim 2, wherein the transport request information includes a request time and wherein determining the requestor arrival time to the request location based on the difference between the requestor location and the request location comprises:
determining a difference between a current time and the request time;
determining the difference between the current time and the request time is greater than the estimated travel time for the navigation route; and
generating the requestor arrival time based on the difference between the current time and the request time.

### Claim 4 (depends on 1)

The system of claim 1, wherein determining the set of available providers based on the requestor arrival time to the request location comprises
determining that each of the set of available providers is associated with a travel time to the request location that is less than or equal to a maximum travel time threshold.

### Claim 5 (depends on 1)

The system of claim 1, further comprising instructions that, when executed by the at least one processor, further cause the system to:
determine a predicted provider availability for the request location based on the requestor arrival time to the request location;
detect, based on the predicted provider availability, that an additional provider which is currently unavailable is predicted to become eligible for matching prior to the requestor arrival time to the request location; and
delay a determination of the set of available providers until the additional provider becomes eligible.

### Claim 6 (depends on 1)

The system of claim 1, wherein determining the set of available providers based on the requestor arrival time to the request location comprises:
identifying a set of available provider computing devices associated with the request location, the set of available provider computing devices matching request criteria of the request, and the set of available provider computing devices being located within a threshold distance of the request location;
determining a navigation route to the request location for each of the set of available provider computing devices; and
generating, for each of the set of available provider computing devices, an estimated travel time based on the navigation route and road conditions of the navigation route; and
wherein sending the transport request information to the provider computing device is based on an estimated travel time corresponding to the provider computing device associated with the provider.

### Claim 7

A method comprising:
receiving, by a dynamic transportation matching system, transport request information associated with a requestor computing device, the transport request information including a request location;
determining, by the dynamic transportation matching system, a requestor location associated with the requestor computing device;
determining, by the dynamic transportation matching system, a requestor arrival time to the request location based on a difference between the requestor location and the request location;
determining, by the dynamic transportation matching system, a set of available providers based on the requestor arrival time to the request location, the set of available providers having a travel time to the request location that is greater than the requestor arrival time;
sending, by the dynamic transportation matching system, the transport request information associated with the requestor computing device to a provider computing device associated with a provider from the set of available providers.

### Claim 8 (depends on 7)

The method of claim 7, wherein determining the requestor arrival time to the request location based on the difference between the requestor location and the request location comprises:
generating a navigation route from a current location of the requestor computing device to the request location;
determining an estimated travel time for the navigation route based on historical travel times associated with the navigation route, wherein the requestor arrival time to the request location is based on the estimated travel time for the navigation route.

### Claim 9 (depends on 8)

The method of claim 8, wherein the transport request information includes a request time and wherein determining the requestor arrival time to the request location based on the difference between the requestor location and the request location further comprises:
determining a difference between a current time and the request time;
determining the difference between the current time and the request time is greater than the estimated travel time for the navigation route; and
generating the requestor arrival time based on the difference between the current time and the request time.

### Claim 10 (depends on 7)

The method of claim 7, wherein determining the set of available providers based on the requestor arrival time to the request location further comprises
determining that each of the set of available providers is associated with a travel time to the request location that is less than or equal to a maximum travel time threshold.

### Claim 11 (depends on 7)

The method of claim 7, further comprising:
determining a predicted provider availability for the request location based on the requestor arrival time to the request location;
detecting, based on the predicted provider availability, that an additional provider that is currently unavailable is predicted to become eligible for matching prior to the requestor arrival time to the request location; and
delaying a determination of the set of available providers until the additional provider becomes eligible.

### Claim 12 (depends on 7)

The method of claim 7, wherein determining the set of available providers based on the requestor arrival time to the request location comprises:
identifying a set of available provider computing devices associated with the request location, the set of available provider computing devices matching request criteria of the request, and the set of available provider computing devices being located within a threshold distance of the request location;
determining a navigation route to the request location for each of the set of available provider computing devices; and
generating, for each of the set of available provider computing devices, an estimated travel time based on the navigation route and road conditions of the navigation route; and
wherein sending the transport request information to the provider computing device is based on an estimated travel time corresponding to the provider computing device associated with the provider.

### Claim 13 (depends on 7)

The method of claim 7, further comprising:
determining a second requestor arrival time to the request location, wherein the second requestor arrival time is less than the requestor arrival time;
determining a second set of available providers based on the second requestor arrival time; and
selecting one of the providers from the second set of available providers.

### Claim 14

A non-transitory computer-readable medium comprising instructions that, when executed by at least one processor, cause a computing device to:
receive transport request information associated with a requestor computing device, the transport request information including a request location;
determine a requestor location associated with the requestor computing device;
determine a requestor arrival time to the request location based on a difference between the requestor location and the request location;
determine a set of available providers based on the requestor arrival time to the request location, the set of available providers having a travel time to the request location that is greater than the requestor arrival time; and
send the transport request information associated with the requestor computing device to a provider computing device associated with a provider from the set of available providers.

### Claim 15 (depends on 14)

The non-transitory computer-readable medium of claim 14, wherein determining the requestor arrival time to the request location based on the difference between the requestor location and the request location comprises:
generating a navigation route from the requestor location of the requestor computing device to the request location; and
determining an estimated travel time for the navigation route based on historical travel times associated with the navigation route, wherein the requestor arrival time to the request location is based on the estimated travel time for the navigation route.

### Claim 16 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein the transport request information includes a request time and wherein determining the requestor arrival time to the request location based on the difference between the requestor location and the request location comprises:
determining a difference between a current time and the request time;
determining the difference between the current time and the request time is greater than the estimated travel time for the navigation route; and
generating the requestor arrival time based on the difference between the current time and the request time.

### Claim 17 (depends on 14)

The non-transitory computer-readable medium of claim 14, wherein determining the set of available providers based on the requestor arrival time to the request location comprises:
determining that each of the set of available providers is associated with a travel time to the request location that is less than or equal to a maximum travel time threshold.

### Claim 18 (depends on 14)

The non-transitory computer-readable medium of claim 14, further comprising instructions that, when executed by the at least one processor, further cause the computing device to:
determine a predicted provider availability for the request location based on the requestor arrival time to the request location;
detect, based on the predicted provider availability, that an additional provider which is currently unavailable is predicted to become eligible for matching prior to the requestor arrival time to the request location; and
delay a determination of the set of available providers until the additional provider becomes eligible.

### Claim 19 (depends on 14)

The non-transitory computer-readable medium of claim 14, wherein determining the set of available providers based on the requestor arrival time to the request location comprises:
identifying a set of available provider computing devices associated with the request location, the set of available provider computing devices matching request criteria of the request, and the set of available provider computing devices being located within a threshold distance of the request location;
determining a navigation route to the request location for each of the set of available provider computing devices; and
generating an estimated travel time based on the navigation route and road conditions of the navigation route for each of the provider computing devices; and
wherein sending the transport request information to the provider computing device is based on an estimated travel time corresponding to the provider computing device associated with the provider.

### Claim 20 (depends on 14)

The non-transitory computer-readable medium of claim 14, further comprising instructions that, when executed by the at least one processor, further cause the computing device to:
determine a second requestor arrival time to the request location, wherein the second requestor arrival time is less than the requestor arrival time;
determine a second set of available providers based on the second requestor arrival time; and
select one of the providers from the second set of available providers.
