IP Library Granted Patent US 10,050,760
Granted Patent B2
US 10,050,760 · App. 14/963,038 · Granted Aug 14, 2018

Backend communications system for a fleet of autonomous vehicles

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,050,760
App. No.
14/963,038
Granted
Aug 14, 2018
Kind
B2
Abstract

A backend communications system can manage communications, using transmission control protocol (TCP), between a fleet of AVs in a given region and a backend system that manages transportation for the fleet of AVs. For each of the fleet of AVs, the backend communications system can select a designated one of a plurality of communication channels to transmit and receive transmission acknowledgments (ACKs). The backend communications system can transmit data packets to the fleet of AVs using any number of communication channels and receive ACKs from each of the fleet of AVs over the designated communication channel.

Claims (52)

1. A backend communication system for a fleet of autonomous vehicles (AVs), the backend communication system comprising:

one or more processors; and

one or more memory resources storing instructions that, when executed by the one or more processors, cause the backend communication system to:

manage communications, using transmission control protocol (TCP), between a fleet of AVs in a given region and a backend transport system that manages transportation for the fleet of AVs;

for each respective AV of the fleet of AVs, select one of a plurality of communication channels as a designated communication channel to transmit and receive transmission acknowledgments (ACKs) based on the designated communication channel having a highest transmission reliability of the plurality of communication channels;

transmit data packets to the fleet of AVs using one or more of the plurality of communication channels other than the designated communication channel;

in response to transmitting each respective data packet to the respective AV, initiate a timer for a predetermined period for receiving a corresponding ACK from the respective AV over the designated communication channel;

based on transmitting the data packets to the fleet of AVs, receive ACKs from each respective AV of the fleet of AVs over the designated communication channel;

receive data packets from the fleet of AVs over communication channels other than the designated communication channel; and

based on receiving the data packets from the fleet of AVs, transmit ACKs over the designated communication channel.

2. The backend communication system of claim 1 , wherein the executed instructions further cause the backend communication system to:

perform an optimization operation based on transmission cost and transmission reliability for the plurality of communication channels;

wherein the executed instructions cause the backend communication system to select the designated communication channel to transmit ACKs based on results of the optimization operation indicating that the designated communication channel comprises the highest transmission reliability of the plurality of communication channels.

3. The backend communication system of claim 2 , wherein the executed instructions further cause the backend communication system to:

based on the results of the optimization operation, select an optimal one of the plurality of communication channels to transmit data packets for each respective AV of the fleet of AVs.

4. The backend communication system of claim 3 , wherein the results of the optimization operation indicate that the optimal communication channel comprises a lowest cost channel of the plurality of communication channels.

5. The backend communication system of claim 3 , wherein the results of the optimization operation indicate that the optimal communication channel comprises a lowest cost channel above a predetermined transmission reliability threshold.

6. The backend communication system of claim 3 , wherein the executed instructions further cause the backend communication system to:

transmit network configuration commands to the respective AV to cause the respective AV to configure an on-board communication system to transmit and receive data packets over the optimal communication channel.

7. The backend communication system of claim 1 , wherein the executed instructions further cause the backend communication system to:

in response to an expiration of the timer, retransmit the respective data packet to the respective AV over the optimal communication channel and reinitiate the timer.

8. The backend communication system of claim 1 , wherein the backend communication system is a component of the backend transport system.

9. A computer-implemented method for data communications, the method being performed by one or more processors and comprising:

managing communications, using transmission control protocol (TCP), between a fleet of AVs in a given region and a backend transport system that manages transportation for the fleet of AVs;

for each respective AV of the fleet of AVs, selecting one of a plurality of communication channels as a designated communication channel to transmit and receive transmission acknowledgments (ACKs) based on the designated communication channel having a highest transmission reliability of the plurality of communication channels;

transmitting data packets to the fleet of AVs using one or more of the plurality of communication channels other than the designated communication channel;

in response to transmitting each respective data packet to the respective AV, initiating a timer for a predetermined period for receiving a corresponding ACK from the respective AV over the designated communication channel;

based on transmitting the data packets to the fleet of AVs, receiving ACKs from each respective AV of the fleet of AVs over the designated communication channel;

receiving data packets from the fleet of AVs over communication channels other than the designated communication channel; and

based on receiving the data packets from the fleet of AVs, transmitting ACKs over the designated communication channel.

10. The method of claim 9 , further comprising:

performing an optimization operation based on transmission cost and transmission reliability for the plurality of communication channels;

wherein the one or more processors select the designated communication channel to transmit ACKs based on results of the optimization operation indicating that the designated communication channel comprises the highest transmission reliability of the plurality of communication channels.

11. The method of claim 10 , further comprising:

based on the results of the optimization operation, selecting an optimal one of the plurality of communication channels to transmit data packets for each respective AV of the fleet of AVs.

12. The method of claim 11 , further comprising:

transmitting network configuration commands to the respective AV to cause the respective AV to configure an on-board communication system to transmit and receive data packets over the optimal communication channel.

13. A non-transitory computer readable medium storing instructions that, when executed by one or more processors of a backend communication system, cause the backend communication system to:

manage communications, using transmission control protocol (TCP), between a fleet of AVs in a given region and a backend transport system that manages transportation for the fleet of AVs;

for each respective AV of the fleet of AVs, select one of a plurality of communication channels as a designated communication channel to transmit and receive transmission acknowledgments (ACKs) based on the designated communication channel having a highest transmission reliability of the plurality of communication channels;

transmit data packets to the fleet of AVs using one or more of the plurality of communication channels other than the designated communication channel;

in response to transmitting each respective data packet to the respective AV, initiate a timer for a predetermined period for receiving a corresponding ACK from the respective AV over the designated communication channel;

based on transmitting the data packets to the fleet of AVs, receive ACKs from each respective AV of the fleet of AVs over the designated communication channel;

receive data packets from the fleet of AVs over communication channels other than the designated communication channel; and

based on receiving the data packets from the fleet of AVs, transmit ACKs over the designated communication channel.

14. The non-transitory computer readable medium of claim 13 , wherein the executed instructions further cause the backend communication system to:

perform an optimization operation based on transmission cost and transmission reliability for the plurality of communication channels;

wherein the executed instructions cause the backend communication system to select the designated communication channel to transmit ACKs based on results of the optimization operation indicating that the designated communication channel comprises the highest transmission reliability of the plurality of communication channels.

15. The non-transitory computer readable medium of claim 14 , wherein the executed instructions further cause the backend communication system to:

based on the results of the optimization operation, select an optimal one of the plurality of communication channels to transmit data packets for each respective AV of the fleet of AVs.

16. The non-transitory computer readable medium of claim 15 , wherein the executed instructions further cause the backend communication system to:

transmit network configuration commands to the respective AV to cause the respective AV to configure an on-board communication system to transmit and receive data packets over the optimal communication channel.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2024
From: UATC, LLC
To: AURORA OPERATIONS, INC.
Reel/Frame 067733/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CORRECT ASSIGNEE NAME PREVIOUSLY RECORDED AT REEL: 050912 FRAME: 0757. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 10, 2020
From: UBER TECHNOLOGIES, INC.
To: UATC, LLC
Reel/Frame 052133/0436 →
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY DATA PREVIOUSLY RECORDED ON REEL 050912 FRAME 0757. ASSIGNOR(S) HEREBY CONFIRMS THE RECEIVING PARTY DATA/ASSIGNEE SHOULD BE UATC, LLC. Recorded Mar 3, 2020
From: UBER TECHNOLOGIES, INC.
To: UATC, LLC
Reel/Frame 052084/0590 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 1, 2019
From: UBER TECHNOLOGIES, INC.
To: UTAC, LLC
Reel/Frame 050912/0757 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2016
From: APPARATE INTERNATIONAL C.V.
To: UBER TECHNOLOGIES, INC.
Reel/Frame 040543/0985 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 1, 2016
From: UBER TECHNOLOGIES, INC.
To: APPARATE INTERNATIONAL C.V.
Reel/Frame 040541/0940 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 7, 2016
From: ROSS, WILLIAM; AITKEN, MICHAEL
To: UBER TECHNOLOGIES, INC.
Reel/Frame 037430/0457 →
Cited By (2)
US 12,242,843 US 12,656,772