IP Library › Granted Patent US 10,812,624
Granted Patent B2
US 10,812,624 · App. 16/131,151 · Granted Oct 20, 2020

Firmware/software over the air (FOTA) scheduling for connected vehicles

Inventors: Wei Wu (Los Gatos, CA); Hamza Dridi (Raleigh, NC); Grant Lynn Regan (Marietta, GA); Pratik Dineshkumar Gada (Milton, GA)
Assignee: Cisco Technology, Inc.
H04L67/34G06F8/65H04L67/12H04W4/023H04W4/40H04W8/24H04W72/121H04W72/1289
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,812,624
App. No.
16/131,151
Granted
Oct 20, 2020
Kind
B2
Abstract

In one embodiment, a service obtains wireless network connectivity data for a plurality of vehicles. The service clusters the plurality of vehicles into clusters based on the network connectivity data. The service determines an update schedule for the plurality of vehicles by assigning the clusters to timeslots of the schedule. The service pushes a firmware or software update to the vehicles according to the update schedule.

Claims (59)

1. A method comprising:

obtaining, by a service, wireless network connectivity data for a plurality of vehicles;

clustering, by the service, the plurality of vehicles into clusters using a machine learning-based model, wherein the machine learning-based model is trained using a first subset of the network connectivity data;

validating, by the service, the clustering of the plurality of vehicles based on an assessment of the first subset of the network connectivity data for a particular vehicle of the plurality of vehicles;

determining that a result of the validation of the clustering fails to satisfy a threshold;

re-training, by the service, the machine learning-based model using a second subset of the network connectivity data different from the first subset of the network connectivity data;

clustering, by the service, the plurality of vehicles into clusters using the re-trained machine learning-based model;

determining, by the service, an update schedule for the plurality of vehicles by assigning the clusters to timeslots of the schedule; and

pushing, by the service, a firmware or software update to the vehicles according to the update schedule.

2. The method as in claim 1 , wherein the machine learning-based model uses a record of previously accepted or rejected firmware or software updates as input.

3. The method as in claim 1 , wherein the network connectivity data comprises charging data records (CDRs) indicative of activity of the vehicles relative to a cellular network.

4. The method as in claim 1 , further comprising:

dividing the network connectivity data into a training dataset and a validation dataset;

using the training dataset to train the machine learning-based model that models network connectivity of the vehicles; and

using the validation dataset to validate the trained machine learning-based model.

5. The method as in claim 4 , further comprising:

updating, by the service, the machine learning-based model using new network connectivity data.

6. The method as in claim 1 , wherein determining the update schedule for the plurality of vehicles comprises:

assigning the vehicles to timeslots of the schedule, to maximize an estimated number of vehicles that will receive the update within a predefined period of time.

7. An apparatus, comprising:

one or more network interfaces to communicate with a network;

a processor coupled to the network interfaces and configured to execute one or more processes; and

a memory storing a process executable by the processor, the process when executed configured to:

obtain wireless network connectivity data for a plurality of vehicles;

cluster the plurality of vehicles into clusters using a machine learning-based model, wherein the machine learning-based model is trained using a first subset of the network connectivity data;

validate the clustering of the plurality of vehicles based on an assessment of the first subset of the network connectivity data for a particular vehicle of the plurality of vehicles;

determine that a result of the validation of the clustering fails to satisfy a threshold;

re-train the machine learning-based model using a second subset of the network connectivity data different from the first subset of the network connectivity data;

cluster the plurality of vehicles into clusters using the re-trained machine learning-based model;

determine an update schedule for the plurality of vehicles by assigning the clusters to timeslots of the schedule; and

push a firmware or software update to the vehicles according to the update schedule.

8. The apparatus as in claim 7 , wherein the network connectivity data comprises charging data records (CDRs) indicative of activity of the vehicles relative to a cellular network.

9. The apparatus as in claim 7 , wherein the apparatus determines the update schedule for the plurality of vehicles by:

assigning the vehicles to timeslots of the schedule, to maximize an estimated number of vehicles that will receive the update within a predefined period of time.

10. The apparatus as in claim 7 , wherein the process when executed is further configured to:

divide the network connectivity data into a training dataset and a validation dataset;

use the training dataset to train the machine learning-based model that models network connectivity of the vehicles; and

use the validation dataset to validate the trained machine learning-based model.

11. The apparatus as in claim 7 , wherein the process when executed is further configured to:

update the machine learning-based model using new network connectivity data.

12. The apparatus as in claim 7 , wherein the vehicles are autonomous or semi-autonomous vehicles.

13. A tangible, non-transitory, computer-readable medium storing program instructions that cause a device to execute a process comprising:

obtaining, by the device, wireless network connectivity data for a plurality of vehicles;

clustering, by the device, the plurality of vehicles into clusters using a machine learning-based model, wherein the machine learning-based model is trained using a first subset of the network connectivity data;

validating, by the service, the clustering of the plurality of vehicles based on an assessment of the first subset of the network connectivity data for a particular vehicle of the plurality of vehicles;

determining that a result of the validation of the clustering fails to satisfy a threshold;

re-training, by the service, the machine learning-based model using a second subset of the network connectivity data different from the first subset of the network connectivity data;

clustering, by the service, the plurality of vehicles into clusters using the re-trained machine learning-based model;

determining, by the device, an update schedule for the plurality of vehicles by assigning the clusters to timeslots of the schedule; and

pushing, by the device, a firmware or software update to the vehicles according to the update schedule.

14. The computer-readable medium as in claim 13 , wherein the network connectivity data comprises charging data records (CDRs) indicative of connectivity of the vehicles to a cellular network.

15. The computer-readable medium as in claim 13 , wherein determining the update schedule for the plurality of vehicles comprises:

assigning the vehicles to timeslots of the schedule, to maximize an estimated number of vehicles that will receive the update within a predefined period of time.

16. The computer-readable medium as in claim 13 , wherein the process further comprises:

dividing the network connectivity data into a training dataset and a validation dataset;

using the training dataset to train the machine learning-based model that models network connectivity of the vehicles; and

using the validation dataset to validate the trained machine learning-based model.

17. The computer-readable medium as in claim 16 , wherein the process further comprises:

updating, by the device, the machine learning-based model using new network connectivity data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 14, 2018
From: WU, WEI; DRIDI, HAMZA; REGAN, GRANT LYNN; GADA, PRATIK DINESHKUMAR
To: CISCO TECHNOLOGY, INC.
Reel/Frame 046874/0535 →
Continuity (1)
Related Publication 20200092396A1 · Mar 19, 2020
Cited By (1)
US 12,288,059