IP Library › Granted Patent US 12,497,077
Granted Patent B2
US 12,497,077 · App. 17/896,778 · Granted Dec 16, 2025

Interpretable Kalman filter comprising neural network component(s) for autonomous vehicles

Inventors: John Bryan Carter (Upton, MA); Francesco Papi (Oakland, CA); Qian Song (San Mateo, CA); Zachary Sun (San Francisco, CA)
Assignee: Zoox, Inc.
B60W60/0027B60W50/0097G05B13/027G06N3/045H03H17/0257B60W2050/0022B60W2050/0028B60W2050/0052B60W2554/404
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,497,077
App. No.
17/896,778
Granted
Dec 16, 2025
Kind
B2
Abstract

A modified Kalman filter may include one or more neural networks to augment or replace components of the Kalman filter in such a way that the human interpretability of the filter's inner functions is preserved. The neural networks may include a neural network to account for bias in measurement data, a neural network to account for unknown controls in predicting a state of an object, a neural network ensemble that is trained differently based on different sensor data, a neural network for determining the Kalman gain, and/or a set of Kalman filters including various neural networks that determine independent estimated states, which may be fused using Bayesian fusion to determine a final estimated state.

Claims (91)

1 . A method comprising:

receiving sensor data indicating a measurement associated with an object;

determining, by a first neural network and based at least in part on the measurement, a bias output indicating a bias associated with the sensor data, the first neural network being trained under at least a first stage and a second stage, wherein:

the first stage comprises training the first neural network using simulated sensor data that has zero bias or a first bias less than a threshold bias, the first neural network being trained to limit an output of the first neural network to zero or a value that is less than the threshold bias; and

the second stage comprising training the first neural network using real-world sensor data and removing an output limit enforced during the first stage;

modifying the measurement, as an updated measurement, based at least in part on the bias output;

determining, by a motion model and based at least in part on a prior predicted state, a predicted state associated with the object;

determining, by a measurement model based at least in part on the prior predicted state, a predicted measurement;

determining, as part of an update operation by a Kalman filter, a first difference between the updated measurement and the predicted measurement and a second difference between the prior predicted state and the predicted state associated with the object;

determining, by a second neural network and based at least in part on the first difference and the second difference, a gain;

determining, based at least in part on the first difference, the gain, and the predicted state associated with the object, an estimated state associated with the object, the estimated state being associated with a future time; and

controlling an autonomous vehicle based at least in part on the estimated state.

2 . The method of claim 1 , wherein the second neural network comprises at least one of a transformer or a self-attention network.

3 . The method of claim 1 , wherein determining the predicted state associated with the object further comprises:

determining, by a state transition model based at least in part on the prior predicted state, a preliminary predicted state;

determining, by a third neural network and based at least in part on the prior predicted state, a correction associated with an undefined control parameter for controlling the autonomous vehicle; and

determining the predicted state associated with the object by modifying the preliminary predicted state based at least in part on the correction.

4 . The method of claim 1 , wherein:

the measurement model comprises an ensemble of sub-neural networks associated with different sensor types; and

determining the predicted measurement further comprises determining the predicted measurement by a first sub-neural network that is trained based at least in part on a first sensor type associated with both the sensor data and the first sub-neural network.

5 . The method of claim 4 , wherein:

the second neural network comprises a second ensemble of sub-neural networks; and determining the gain is further based at least in part on determining the gain by a second sub-neural network from among the second ensemble of sub-neural networks based at least in part on the sensor type associated with the sensor data.

6 . The method of claim 1 , wherein:

the estimated state is a first estimated state;

the first neural network, the motion model, the measurement model, and the second neural network are part of a first Kalman architecture;

the sensor data is first sensor data associated with a first sensor modality and the first Kalman architecture;

the method further comprises:

determining, by a second Kalman architecture, a second estimated state based at least in part on second sensor data associated with a second sensor modality different than the first sensor modality, the second Kalman architecture being associated with the second sensor modality; and

determining a final estimated state based at least in part on determining a Bayesian fusion of the first estimated state and the second estimated state; and

controlling the autonomous vehicle is based at least in part on the final estimated state.

7 . A system comprising:

one or more processors; and

a memory storing processor-executable instructions that, when executed by the one or more processors, cause the system to perform operations comprising:

receiving sensor data indicating a measurement;

determining, by a first neural network and based at least in part on the measurement, a bias output, the first neural network being trained under at least a first stage and a second stage, wherein:

the first stage comprises training the first neural network using simulated sensor data that has zero bias or a first bias less than a threshold bias, the first neural network being trained to limit an output of the first neural network to zero or a value that is less than the threshold bias, and

the second stage comprises training the first neural network using real-world sensor data and removing an output limit enforced during the first stage;

modifying the measurement, as an updated measurement, based at least in part on the bias output;

determining, by a motion model and based at least in part on a prior predicted state, a predicted state associated with an object;

determining, by a measurement model based at least in part on the prior predicted state, a predicted measurement;

determining a first difference between the updated measurement and the predicted measurement and a second difference between the prior predicted state and the predicted state associated with the object;

determining, by a second neural network and based at least in part on the first difference and the second difference, a gain;

determining, based at least in part on the first difference, the gain, and the predicted state associated with the object, an estimated state associated with the object; and

controlling an autonomous vehicle based at least in part on the estimated state.

8 . The system of claim 7 , wherein the second neural network comprises at least one of a transformer or a self-attention network.

9 . The system of claim 7 , wherein determining the predicted state associated with the object further comprises:

determining, by a state transition model based at least in part on the prior predicted state, a preliminary predicted state;

determining, by a third neural network and based at least in part on the prior predicted state, a correction associated with an undefined control parameter for controlling the autonomous vehicle; and

determining the predicted state associated with the object by modifying the preliminary predicted state based at least in part on the correction.

10 . The system of claim 7 , wherein:

the measurement model comprises an ensemble of sub-neural networks associated with different sensor types; and

determining the predicted measurement further comprises determining the predicted measurement by a first sub-neural network that is trained based at least in part on a first sensor type associated with both the sensor data and the first sub-neural network.

11 . The system of claim 10 , wherein the first sub-neural network comprises a transformer.

12 . The system of claim 10 , wherein:

the second neural network comprises a second ensemble of sub-neural networks; and determining the gain is further based at least in part on determining the gain by a second sub-neural network from among the second ensemble of sub-neural networks based at least in part on the sensor type associated with the sensor data.

13 . The system of claim 7 , wherein:

the estimated state is a first estimated state;

the first neural network, the motion model, the measurement model, and the second neural network are part of a first Kalman architecture;

the sensor data is first sensor data associated with a first sensor modality and the first Kalman architecture;

the operations further comprise:

determining, by a second Kalman architecture, a second estimated state based at least in part on second sensor data associated with a second sensor modality different than the first sensor modality, the second Kalman architecture being associated with the second sensor modality; and

determining a final estimated state based at least in part on determining a Bayesian fusion of the first estimated state and the second estimated state; and

controlling the autonomous vehicle is based at least in part on the final estimated state.

14 . A non-transitory computer-readable medium storing processor-executable instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising:

receiving sensor data indicating a measurement;

determining, by a first neural network of a Kalman filter and based at least in part on the measurement, a bias output, the first neural network being trained under at least a first stage and a second stage, wherein:

the first stage comprises training the first neural network using simulated sensor data that has zero bias or a first bias less than a threshold bias, the first neural network being trained to limit an output of the first neural network to zero or a value that is less than the threshold bias; and

the second stage comprises training the first neural network using real-world sensor data and removing an output limit enforced during the first stage;

modifying the measurement, as an updated measurement, based at least in part on the bias output;

determining, by a motion model of the Kalman filter and based at least in part on a prior predicted state, a predicted state associated with an object;

determining, by a measurement model of the Kalman filter based at least in part on the prior predicted state, a predicted measurement;

determining a first difference between the updated measurement and the predicted measurement and a second difference between the prior predicted state and the predicted state associated with the object;

determining, by a second neural network of the Kalman filter and based at least in part on the first difference and the second difference, a gain;

determining, based at least in part on the first difference, the gain, and the predicted state associated with the object, an estimated state; and

controlling an autonomous vehicle based at least in part on the estimated state.

15 . The non-transitory computer-readable medium of claim 14 , wherein the second neural network comprises at least one of a transformer or a self-attention network.

16 . The non-transitory computer-readable medium of claim 14 , wherein determining the predicted state associated with the object further comprises:

determining, by a state transition model based at least in part on the prior predicted state, a preliminary predicted state;

determining, by a third neural network and based at least in part on the prior predicted state, a correction associated with an undefined control parameter for controlling the autonomous vehicle; and

determining the predicted state associated with the object by modifying the preliminary predicted state based at least in part on the correction.

17 . The non-transitory computer-readable medium of claim 14 , wherein:

the measurement model comprises an ensemble of sub-neural networks associated with different sensor types; and

determining the predicted measurement further comprises determining the predicted measurement by a first sub-neural network that is trained based at least in part on a first sensor type associated with both the sensor data and the first sub-neural network.

18 . The non-transitory computer-readable medium of claim 14 , wherein:

the estimated state is a first estimated state;

the first neural network, the motion model, the measurement model, and the second neural network are part of a first Kalman architecture;

the sensor data is first sensor data associated with a first sensor modality and the first Kalman architecture;

the operations further comprise:

determining, by a second Kalman architecture, a second estimated state based at least in part on second sensor data associated with a second sensor modality different than the first sensor modality, the second Kalman architecture being associated with the second sensor modality; and

determining a final estimated state based at least in part on determining a Bayesian fusion of the first estimated state and the second estimated state; and

controlling the autonomous vehicle is based at least in part on the final estimated state.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 29, 2022
From: CARTER, JOHN BRYAN; PAPI, FRANCESCO; SONG, QIAN; SUN, ZACHARY
To: ZOOX, INC.
Reel/Frame 060933/0174 →
Continuity (1)
Related Publication 20240092397A1 · Mar 21, 2024
References Cited (16)
US 20180356492A1 · Hamilton · 2018 [cited by examiner]
US 20190258251A1 · Ditty · 2019 [cited by examiner]
US 20190278282A1 · Palanisamy · 2019 [cited by examiner]
US 20200148201A1 · King et al. · 2020 [cited by applicant]
US 20200372285A1 · Adams · 2020 [cited by examiner]
US 20220032709A1 · Lee et al. · 2022 [cited by applicant]
US 20220107184A1 · Omr · 2022 [cited by examiner]
US 20220326394A1 · Berntorp · 2022 [cited by examiner]
US 20220366703A1 · Sheng · 2022 [cited by examiner]
US 20230001940A1 · Doerr · 2023 [cited by examiner]
US 20230237783A1 · Banerjee · 2023 [cited by examiner]
CN 112651456A · 2021 [cited by applicant]
CN 112758097A · 2021 [cited by applicant]
CN 114084129A · 2022 [cited by applicant]
Revach et al., “KalmanNet: Neural Network Aided Kalman Filtering for Partially Known Dynamics,” Partially Presented at the IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP) 2021; Last Re… [cited by applicant]
The International Preliminary Report on Patentability mailed Mar. 13, 2025 for PCT Application No. PCT/US23/29551, 6 pages. [cited by applicant]