IP Library Granted Patent US 12,600,382
Granted Patent B2
US 12,600,382 · App. 17/714,314 · Granted Apr 14, 2026

Process scheduling based on data arrival in an autonomous vehicle

Inventors: John Hayes (Mountain View, CA); Volkmar Uhlig (Cupertino, CA)
Assignee: Applied Intuition, Inc.
B60W60/0018B60W50/02B60W50/082B60W2420/403
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,600,382
App. No.
17/714,314
Granted
Apr 14, 2026
Kind
B2
Abstract

Process scheduling based on data arrival in an autonomous vehicle, including: receiving, by a node and from one or more other nodes of a distributed automation computing system, a plurality of portions of data; generating a process schedule by scheduling, for each portion of data of the plurality of portions of data, a process for processing a corresponding portion of data within a time window, wherein an ordering of the process schedule corresponds to an order of arrival of the plurality of portions of data; and executing, during the time window, the process schedule.

Claims (55)

1 . A method comprising:

receiving, by a first compute node configured to process sensor data in an autonomous vehicle at each interval of a pipeline time window and from one or more sensor nodes of a distributed automation computing system, a first portion of sensor data in a first interval of the pipeline time window;

detecting, during the first interval of the pipeline time window, a first characteristic of the first portion of sensor data;

generating a process schedule by assigning a first model to process the first portion of sensor data within a time window, the first model selected from a plurality of models according to the first characteristic of the first portion of sensor data, wherein an ordering of the process schedule corresponds to an order of arrival of the first portion of sensor data within the sensor data;

detecting, during a second interval of the pipeline time window subsequent to the first interval of the pipeline time window, that a second portion of sensor data received during the second interval of the pipeline time window failed to arrive within a particular time constraint was received too late to be processed by the first model within the second interval of the pipeline time window;

adjusting the process schedule by assigning a second model to process the second portion of sensor data within a next interval immediately subsequent to the second interval of the pipeline time window, the second model selected from the plurality of models according to an ability of the second model to process the second portion of sensor data within a reduced processing time compared to a processing time of the first model;

executing, according to the ordering of the process schedule, the first model on the first portion of data and the second model on the second portion of data; and

executing, using a result of executing the first model on the first portion of data and a second result of executing the second model on the second portion of data, a control operation of the autonomous vehicle .

2 . A method comprising:

receiving, by a first compute node configured to process sensor data in an autonomous vehicle at each interval of a pipeline time window and from one or more sensor nodes of a distributed automation computing system, a first portion of sensor data in a first interval of the pipeline time window;

detecting, during the first interval of the pipeline time window, a first characteristic of the first portion of sensor data;

generating a process schedule by assigning a first model to process the first portion of sensor data within a time window, the first model selected from a plurality of models according to the first characteristic of the first portion of sensor data, wherein an ordering of the process schedule corresponds to an order of arrival of the first portion of sensor data within the sensor data;

detecting, during a second interval of the pipeline time window subsequent to the first interval of the pipeline time window, that a second portion of sensor data received during the second interval of the pipeline time window failed to arrive within a particular time constraint was received too late to be processed by the first model within the second interval of the pipeline time window;

adjusting the process schedule by assigning a second model to process the second portion of sensor data within a next interval immediately subsequent to the second interval of the pipeline time window, the second model selected from the plurality of models according to an ability of the second model to process the second portion of sensor data within a reduced processing time compared to a processing time of the first model;

executing, according to the ordering of the process schedule, the first model on the first portion of data and the second model on the second portion of data; and

executing, using a result of executing the first model on the first portion of data and a second result of executing the second model on the second portion of data, a control operation of the autonomous vehicle.

3 . A method comprising:

receiving, by a first compute node configured to process sensor data in an autonomous vehicle at each interval of a pipeline time window and from one or more sensor nodes of a distributed automation computing system, a first portion of sensor data in a first interval of the pipeline time window;

detecting, during the first interval of the pipeline time window, a first characteristic of the first portion of sensor data;

generating a process schedule by assigning a first model to process the first portion of sensor data within a time window, the first model selected from a plurality of models according to the first characteristic of the first portion of sensor data, wherein an ordering of the process schedule corresponds to an order of arrival of the first portion of sensor data within the sensor data;

detecting, during a second interval of the pipeline time window subsequent to the first interval of the pipeline time window, that a second portion of sensor data received during the second interval of the pipeline time window failed to arrive within a particular time constraint was received too late to be processed by the first model within the second interval of the pipeline time window;

adjusting the process schedule by assigning a second model to process the second portion of sensor data within a next interval immediately subsequent to the second interval of the pipeline time window, the second model selected from the plurality of models according to an ability of the second model to process the second portion of sensor data within a reduced processing time compared to a processing time of the first model;

executing, according to the ordering of the process schedule, the first model on the first portion of data and the second model on the second portion of data; and

executing, using a result of executing the first model on the first portion of data and a second result of executing the second model on the second portion of data, a control operation of the autonomous vehicle.

4 . The method of claim 1 , wherein the first model is assigned to maximize an amount of processing time performed within the time window.

5 . The method of claim 1 , wherein the first model is assigned according to a processing time of the first portion of sensor data by the first model.

6 . The method of claim 1 , further comprising:

detecting an arrival time of the first portion of sensor data within the first interval of the pipeline time window.

7 . The method of claim 6 , wherein the first model is executed during the first interval of the pipeline time window.

8 . The method of claim 6 , wherein the first model is executed during a next interval immediately subsequent to the first interval of the pipeline time window.

9 . The apparatus of claim 2 , wherein the first model is assigned to maximize an amount of processing time performed within the time window.

10 . The apparatus of claim 2 , wherein the first model is assigned according to a processing time of the first portion of sensor data by the first model.

11 . The apparatus of claim 2 , wherein the computer program instructions, when executed by the computer processor, cause the apparatus to perform steps further comprising:

detecting an arrival time of the first portion of sensor data within the first interval of the pipeline time window.

12 . The apparatus of claim 11 , wherein the first model is executed during the first interval of the pipeline time window.

13 . The apparatus of claim 11 , wherein the first model is executed during a next interval immediately subsequent to the first interval of the pipeline time window.

14 . The computer program product of claim 3 , wherein the first model is assigned to maximize an amount of processing time performed within the time window.

15 . The method of claim 1 , further comprising:

detecting, during a third interval of the pipeline time window subsequent to the second interval of the pipeline time window, that a third portion of sensor data received during the third interval of the pipeline time window was received too late to be processed by the first model within the third interval of the pipeline time window, and

extending, during the third interval of the pipeline time window, responsive to detecting that the third portion of sensor data was received too late, the pipeline time window to an extended pipeline time window, the extended pipeline time window allowing time for the first model to process the third portion of sensor data within the third interval.

16 . The method of claim 15 , further comprising:

detecting, during a fourth interval of the extended pipeline time window, that each compute node executing the first model is satisfying a time constraint; and

reducing, responsive to detecting that each compute node executing the first model is satisfying the time constraint, the extended pipeline time window to the pipeline time window.

17 . The apparatus of claim 2 , wherein the computer program instructions, when executed by the computer processor, cause the apparatus to perform steps further comprising:

detecting, during a third interval of the pipeline time window subsequent to the second interval of the pipeline time window, that a third portion of sensor data received during the third interval of the pipeline time window was received too late to be processed by the first model within the third interval of the pipeline time window; and

extending, during the third interval of the pipeline time window, responsive to detecting that the third portion of sensor data was received too late, the pipeline time window to an extended pipeline time window, the extended pipeline time window allowing time for the first model to process the third portion of sensor data within the third interval.

18 . The apparatus of claim 17 , wherein the computer program instructions, when executed, cause the computer system to perform steps further comprising:

detecting, during a fourth interval of the extended pipeline time window, that each compute node executing the first model is satisfying a time constraint; and

reducing, responsive to detecting that each compute node executing the first model is satisfying the time constraint, the extended pipeline time window to the pipeline time window.

19 . The computer program product of claim 3 , wherein the computer program instructions, when executed, cause the computer system to perform steps further comprising:

detecting, during a third interval of the pipeline time window subsequent to the second interval of the pipeline time window, that a third portion of sensor data received during the third interval of the pipeline time window was received too late to be processed by the first model within the third interval of the pipeline time window; and

extending, during the third interval of the pipeline time window, responsive to detecting that the third portion of sensor data was received too late, the pipeline time window to an extended pipeline time window, the extended pipeline time window allowing time for the first model to process the third portion of sensor data within the third interval.

20 . The computer program product of claim 19 , wherein the computer program instructions, when executed, cause the computer system to perform steps further comprising:

detecting, during a fourth interval of the extended pipeline time window, that each compute node executing the first model is satisfying a time constraint; and

reducing, responsive to detecting that each compute node executing the first model is satisfying the time constraint, the extended pipeline time window to the pipeline time window.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2024
From: GHOST AUTONOMY, INC.
To: APPLIED INTUITION, INC.
Reel/Frame 068982/0647 →
CHANGE OF NAME Recorded Aug 8, 2022
From: GHOST LOCOMOTION INC.
To: GHOST AUTONOMY INC.
Reel/Frame 061118/0665 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2022
From: HAYES, JOHN; UHLIG, VOLKMAR
To: GHOST LOCOMOTION INC.
Reel/Frame 059514/0810 →
Continuity (1)
Related Publication 20230322264A1 · Oct 12, 2023
References Cited (67)
US 10306430B1 · Abari · 2019 [cited by examiner]
US 10310509B1 · Ferguson · 2019 [cited by examiner]
US 10694150B2 · Ihlenburg · 2020 [cited by examiner]
US 11107230B2 · Pillai · 2021 [cited by examiner]
US 11351939B2 · Gourari · 2022 [cited by examiner]
US 11388241B1 · Myers, Jr. · 2022 [cited by examiner]
US 11681725B2 · Shemer · 2023 [cited by examiner]
US 11797022B1 · Ballantyne · 2023 [cited by examiner]
US 11805236B2 · Watson · 2023 [cited by examiner]
US 11854279B2 · Takahashi · 2023 [cited by examiner]
US 11880293B1 · Hendrix · 2024 [cited by examiner]
US 12254249B1 · Cahoon · 2025 [cited by examiner]
US 12351168B2 · Jang · 2025 [cited by examiner]
US 20020193920A1 · Miller · 2002 [cited by examiner]
US 20050113988A1 · Nasr · 2005 [cited by examiner]
US 20150092988A1 · Mitoma · 2015 [cited by examiner]
US 20180009444A1 · Grimm · 2018 [cited by examiner]
US 20190322288A1 · Hansel · 2019 [cited by examiner]
US 20200023854A1 · Horiguchi · 2020 [cited by examiner]
US 20200209861A1 · Priyadarshi · 2020 [cited by examiner]
US 20200210225A1 · Priyadarshi · 2020 [cited by examiner]
US 20200210234A1 · Priyadarshi · 2020 [cited by examiner]
US 20200225669A1 · Silva · 2020 [cited by examiner]
US 20210011908A1 · Hayes · 2021 [cited by examiner]
US 20210034412A1 · Televitckiy · 2021 [cited by examiner]
US 20210078611A1 · Hayes · 2021 [cited by examiner]
US 20210163021A1 · Frazzoli · 2021 [cited by examiner]
US 20210232829A1 · Mori · 2021 [cited by examiner]
US 20210309167A1 · Gourari · 2021 [cited by examiner]
US 20210370986A1 · Heyl · 2021 [cited by examiner]
US 20210387670A1 · Furuta · 2021 [cited by examiner]
US 20220012503A1 · Peppoloni · 2022 [cited by examiner]
US 20220116479A1 · Liu · 2022 [cited by examiner]
US 20220126875A1 · Hammoud · 2022 [cited by examiner]
US 20220148204A1 · Guizilini · 2022 [cited by examiner]
US 20220188663A1 · Appel · 2022 [cited by examiner]
US 20220198842A1 · Agarwal · 2022 [cited by examiner]
US 20220229759A1 · Wang · 2022 [cited by examiner]
US 20220283851A1 · Lee · 2022 [cited by examiner]
US 20220301206A1 · Guizilini · 2022 [cited by examiner]
US 20220340151A1 · Farag · 2022 [cited by examiner]
US 20220397673A1 · Wang · 2022 [cited by examiner]
US 20230064755A1 · Shi · 2023 [cited by examiner]
US 20230086053A1 · Azuma · 2023 [cited by examiner]
US 20230091924A1 · Dowdall · 2023 [cited by examiner]
US 20230093511A1 · Wang · 2023 [cited by examiner]
US 20230150484A1 · Zink · 2023 [cited by examiner]
US 20230281861A1 · Liu · 2023 [cited by examiner]
US 20230286539A1 · Malloch · 2023 [cited by examiner]
US 20230316769A1 · Hashimoto · 2023 [cited by examiner]
US 20230322241A1 · Hayes · 2023 [cited by examiner]
US 20230326265A1 · Law · 2023 [cited by examiner]
US 20250044983A1 · Sood · 2025 [cited by examiner]
DE 102013220506A1 · 2015 [cited by examiner]
EP 2293588A1 · 2011 [cited by examiner]
EP 3246780A1 · 2017 [cited by examiner]
EP 3629261A1 · 2020 [cited by examiner]
KR 20150011620A · 2015 [cited by examiner]
WO WO2018173909A1 · 2018 [cited by examiner]
WO WO2020138908A1 · 2020 [cited by examiner]
WO WO2022082230A2 · 2022 [cited by examiner]
WO WO2022218510A1 · 2022 [cited by examiner]
WO-2018173909-A1 machine translation (Year: 2018). [cited by examiner]
Li, Optik International Journal, Relative Pose Measurement Based on Binocular Vision (Year: 2019). [cited by examiner]
DE-102013220506-A1 machine translation (Year: 2015). [cited by examiner]
KR-20150011620-A machine translation (Year: 2015). [cited by examiner]
WO-2020138908-A1 machine translation (Year: 2020). [cited by examiner]