IP Library Granted Patent US 10,572,964
Granted Patent B2
US 10,572,964 · App. 15/874,143 · Granted Feb 25, 2020

Arranging a transport service for a user based on the estimated time of arrival of the user

Inventors: Nuri Kim (San Francisco, CA); Christopher Haugli (San Francisco, CA); Rachel Lin (San Francisco, CA); Hasrat Godil (San Francisco, CA); Jeffrey Wolski (San Francisco, CA); Amos Barreto (San Francisco, CA)
Assignee: Uber Technologies, Inc.
G06Q50/30
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 10,572,964
App. No.
15/874,143
Granted
Feb 25, 2020
Kind
B2
Abstract

A system and method of arranging a transport service for a user is described. The system determines a first estimated time of arrival (ETA) of a user to a specified location data point based, at least in part, on a position of a user device operated by the user. The system also determines a second ETA of a vehicle of a set of vehicles to the specified location data point. When the first ETA and the second ETA are within a predetermined amount of time of each other, the system can select a driver to provide a transport service for the user based, at least in part, on the specified location data point.

Claims (38)

1. A computer system comprising:

one or more processors;

memory resources to store a set of instructions;

wherein the one or more processors execute the set of instructions, causing the computer system to:

determine a pre-request for a transport service to be provided to a user, the pre-request specifying a start location and a destination for the user;

remotely monitor (i) a user device of the user to determine a position of the user as the user travels towards the start location, and (ii) a plurality of computing devices associated with a plurality of vehicles to determine vehicle positions of the plurality of vehicles;

repeatedly compare (i) a first estimated time of arrival (ETA) of the user to arrive at the start location based, at least in part, on the position of the user, to (ii) a second ETA associated with at least a first vehicle in the plurality of vehicles to arrive at the start location based at least in part on a vehicle position of the first vehicle;

in response to determining that the first ETA and the second ETA are within a predetermined threshold amount of time of each other, automatically select a second vehicle in the plurality of vehicles to provide the transport service for the user, the second vehicle being different than the first vehicle;

communicate the start location to a computing device of a driver of the second vehicle; and

monitor the second vehicle, using the vehicle position information from the computing device of the driver of the second vehicle, from when the second vehicle is selected to provide the transport service for the user until the second vehicle completes the transport service for the user;

wherein the executed set of instructions cause the one or more processors to further automatically select the second vehicle from the plurality of vehicles to provide the transport service for the user based on a relative position of the second vehicle with respect to the start location and an availability status of the second vehicle when the first ETA and the second ETA are determined to be within the predetermined threshold amount of time of each other.

2. The computer system of claim 1 , wherein the executed set of instructions cause the one or more processors to select the first vehicle for repeatedly comparing the first ETA with the second ETA based on an availability status of the first vehicle.

3. The computer system of claim 1 , wherein the executed set of instructions cause the one or more processors to select the first vehicle for repeatedly comparing the first ETA with the second ETA based on a position of the first vehicle relative to the start location.

4. The computer system of claim 1 , wherein the executed set of instructions cause the one or more processors to repeatedly compare the first ETA and the second ETA at varying time intervals.

5. The computer system of claim 1 , wherein the executed set of instructions cause the one or more processors to repeatedly compare the first ETA and the second ETA at decreasing time intervals, while a difference between the first ETA and the second ETA decreases as the user travels towards the start location.

6. The computer system of claim 1 , wherein the executed set of instructions cause the one or more processors to determine a rate of travel of the user based on the position of the user and a previous position of the user at a previous instance in time.

7. A method for arranging transport services, the method being implemented by one or more processors and comprising:

determining a pre-request for a transport service to be provided to a user, the pre-request specifying a start location and a destination for the user;

remotely monitoring (i) a user device of the user to determine a position of the user as the user travels towards the start location, and (ii) a plurality of computing devices associated with a plurality of vehicles to determine vehicle positions the plurality of vehicles;

repeatedly comparing (i) a first estimated time of arrival (ETA) of the user to arrive at the start location based, at least in part, on the position of the user, to (ii) a second ETA associated with at least a first vehicle in the plurality of vehicles to arrive at the start location based at least in part on a vehicle position of the first vehicle;

in response to determining that the first ETA and the second ETA are within a predetermined threshold amount of time of each other, automatically selecting a second vehicle in the plurality of vehicles to provide the transport service for the user, the second vehicle being different than the first vehicle;

communicating the start location to a computing device of a driver of the second vehicle; and

monitoring the second vehicle, using the vehicle position from the computing device of the driver of the second vehicle, from when the second vehicle is selected to provide the transport service for the user until the second vehicle completes the transport service for the user;

wherein the one or more processors automatically select the second vehicle from the plurality of vehicles to provide the transport service for the user based on a relative position of the second vehicle with respect to the start location and an availability status of the second vehicle when the first ETA and the second ETA are determined to be within the predetermined threshold amount of time of each other.

8. The method of claim 7 , wherein the one or more processors select the first vehicle for repeatedly comparing the first ETA with the second ETA based on an availability status of the first vehicle.

9. The method of claim 7 , wherein the one or more processors select the first vehicle for repeatedly comparing the first ETA with the second ETA based on a position of the first vehicle relative to the start location.

10. The method of claim 7 , wherein repeatedly comparing the first ETA and the second ETA includes comparing the first ETA and the second ETA at varying time intervals.

11. The method of claim 7 , wherein the one or more processors compare the first ETA and the second ETA at decreasing time intervals, while a difference between the first ETA and the second ETA decreases as the user travels towards the start location.

12. The method of claim 7 , further comprising determining a rate of travel of the user device based on the position of the user and a previous position of the user at a previous instance in time.

13. A non-transitory computer-readable medium storing instructions that, when executed by one or more processors of a computer system, causes the computer system to perform operations that include:

determining a pre-request for a transport service to be provided to a user, the pre-request specifying a start location and a destination for the user;

remotely monitoring (i) a user device of the user to determine a position of the user as a user travels towards the start location, and (ii) a plurality of computing devices associated with a plurality of vehicles to determine vehicle positions of the plurality of vehicles;

repeatedly comparing (i) a first estimated time of arrival (ETA) of the user to arrive at the start location based, at least in part, on the position of the user, to (ii) a second ETA associated with at least a first vehicle in the plurality of vehicles to arrive at the start location based at least in part on a vehicle position of the first vehicle;

in response to determining that the first ETA and the second ETA are within a predetermined threshold amount of time of each other, automatically selecting a second vehicle in the plurality of vehicles to provide the transport service for the user, the second vehicle being different than the first vehicle;

communicating the start location to a computing device of a driver of the second vehicle; and

monitoring the second vehicle, using the vehicle position of the second vehicle, from when the second vehicle is selected to provide the transport service for the user until the second vehicle completes the transport service for the user;

wherein the executed instructions cause the computer system to automatically select the second vehicle from the plurality of vehicles to provide the transport service for the user based on a relative position of the second vehicle with respect to the start location and an availability status of the second vehicle when the first ETA and the second ETA are determined to be within the predetermined threshold amount of time of each other.

14. The non-transitory computer-readable medium of claim 13 , wherein the executed instructions cause the computer system to select the first vehicle for repeatedly comparing the first ETA with the second ETA based on at least one of (i) a position of the first vehicle relative to the start location, or (ii) an availability status of the first vehicle.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Oct 3, 2024
From: MORGAN STANLEY SENIOR FUNDING, INC., AS ADMINISTRATIVE AGENT
To: UBER TECHNOLOGIES, INC.
Reel/Frame 069110/0508 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT (TERM LOAN) AT REEL 050767, FRAME 0076 Recorded Sep 11, 2024
From: MORGAN STANLEY SENIOR FUNDING, INC. AS ADMINISTRATIVE AGENT
To: UBER TECHNOLOGIES, INC.
Reel/Frame 069133/0167 →
RELEASE OF SECURITY INTEREST Recorded Mar 10, 2021
From: CORTLAND CAPITAL MARKET SERVICES LLC, AS ADMINISTRATIVE AGENT
To: UBER TECHNOLOGIES, INC.
Reel/Frame 055547/0404 →
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded Oct 24, 2019
From: UBER TECHNOLOGIES, INC.
To: CORTLAND CAPITAL MARKET SERVICES LLC
Reel/Frame 050817/0600 →
SECURITY INTEREST Recorded Oct 18, 2019
From: UBER TECHNOLOGIES, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 050767/0076 →
SECURITY INTEREST Recorded Oct 18, 2019
From: UBER TECHNOLOGIES, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 050767/0109 →
Cited By (13)
US 12,219,035 US 12,261,924 US 12,277,514 US 12,282,872 US 12,293,428 US 12,400,157 US 12,430,595 US 12,437,353 US 12,461,537 US 12,488,408 US 12,572,995 US 12,590,805 US 12,675,527