IP Library › Granted Patent US 12,271,201
Granted Patent B2
US 12,271,201 · App. 17/636,521 · Granted Apr 8, 2025

Performance testing for robotic systems

Inventors: John Redford (Cambridge, GB); Sebastian Kaltwang (Cambridge, GB); Blaine Rogers (Cambridge, GB); Jonathan Sadeghi (Bristol, GB); James Gunn (Cambridge, GB); Torran Elson (Bristol, GB); Adam Charytoniuk (Cambridge, GB)
Assignee: Five AI Limited
G05D1/0221B60W50/0098B60W50/0205B60W50/045B60W50/06B60W60/001B60W60/0015G05D1/0088G05D1/0214G06F30/27G06N3/02G06N3/08G06N5/025G06N7/01G06N7/023G06N20/00B60W2050/0052B60W2050/0215B60W2555/20
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,271,201
App. No.
17/636,521
Filed
Feb 18, 2022
Granted
Apr 8, 2025
Kind
B2
Art Unit
3664
USPC
701/27
Abstract

Herein, a “perception statistical performance model” (PSPM) for modelling a perception slice of a runtime stack for an autonomous vehicle or other robotic system may be used e.g. for safety/performance testing. A PSPM is configured to: receive a computed perception ground truth; determine from the perception ground truth, based on a set of learned parameters, a probabilistic perception uncertainty distribution, the parameters learned from a set of actual perception outputs generated using the perception slice to be modelled. The PSPM comprises a time-dependent model such that the perception output sampled at the current time instant depends on at least one of: an earlier one of the perception outputs sampled at a previous time instant, and an earlier one of the perception ground truths computed for a previous time instant.

Claims (52)

1. A computer system for testing and/or training a runtime stack for a robotic system, the computer system comprising:

at least one processor; and

at least one storage medium having encoded thereon executable instructions that, when executed by the at least one processor, cause the at least one processor to carry out a method comprising:

running a simulated scenario in a simulator configured to run simulated scenarios, in which a simulated agent interacts with one or more external objects, wherein the runtime stack is configured to make autonomous decisions for each simulated scenario in dependence on a time series of perception outputs computed for the simulated scenario and configured to generate a series of control signals for causing the simulated agent to execute the autonomous decisions as the simulated scenario progresses;

wherein running the simulated scenario comprises computing each perception output at least in part by:

computing a perception ground truth for a current time instant based on a current state of the simulated scenario,

applying a perception statistical performance model (PSPM) to the perception ground truth to determine a probabilistic perception uncertainty distribution for the current time instant, and

sampling the perception output from the probabilistic perception uncertainty distribution;

wherein the PSPM is for modelling a perception slice of the runtime stack and is configured to determine the probabilistic perception uncertainty distribution based on a set of parameters learned from a set of actual perception outputs generated using the perception slice to be modelled; and

wherein the PSPM comprises a time-dependent model such that the perception output sampled at the current time instant depends on at least one of: an earlier one of the perception outputs sampled at a previous time instant, or an earlier one of the perception ground truths computed for a previous time instant.

2. The computer system of claim 1 , wherein the time-dependent model is a hidden Markov model.

3. The computer system of claim 1 , wherein the modelled perception slice includes at least one filtering component, the time-dependent model for modelling a time-dependency of the filtering component.

4. The computer system of claim 1 , wherein the PSPM has a time-dependent neural network architecture.

5. The computer system of claim 4 , wherein the PSPM is configured to receive, as input(s), an earlier perception output and/or an earlier perception ground truth.

6. The computer system of claim 1 , wherein:

the PSPM is applied to the perception ground truth and one or more confounders associated with the simulated scenario, and

each confounder is a variable of the PSPM whose value characterizes a physical condition applicable to the simulated scenario and on which the probabilistic perception uncertainty distribution depends.

7. The computer system of claim 6 , wherein the one or more confounders comprise one or more of the following confounders, which at least partially determine the probabilistic uncertainty distribution from which the perception output is sampled:

an occlusion level for at least one of the external objects,

one or more lighting conditions,

an indication of time of day,

one or more weather conditions,

an indication of season,

a physical property of at least one of the external objects,

a sensor condition, for example a position of at least one of the external objects in a sensor field of view of the agent,

a number or density of the external objects;

a distance between two of the external objects,

a truncation level for at least one of the external objects,

a type of at least one of the external objects, and

an indication as to whether or not at least one of the external objects corresponds to any external object from an earlier time instant of the simulated scenario.

8. The computer system of claim 1 , wherein the method further comprises:

assessing behaviour of the simulated agent in each of the simulated scenarios by applying a set of predetermined rules.

9. The computer system of claim 8 , wherein at least some of the predetermined rules pertain to safety, and the assessing behaviour of the simulated agent comprises assessing the safety of the agent's behaviour in each of the simulated scenarios.

10. The computer system of claim 9 , wherein the method further comprises, in response to the simulated agent originally exhibiting unsafe behaviour in the simulated scenario:

re-running the simulated scenario based on a time series of perception ground truths determined for the re-run scenario, without applying the PSPM to those perception ground truths and therefore without perception errors, and

assessing whether the simulated agent exhibits unsafe behaviour in the re-run scenario.

11. The computer system of claim 1 , wherein the runtime stack is configured to make said autonomous decisions based on a second time series of perception outputs, wherein said PSPM is a first PSPM and the computer system is configured to compute the second time series of perception outputs using a second PSPM for modelling a second perception slice of the runtime stack, the first PSPM learned from data of a first sensor modality of the perception slice and the time series, and the second PSPM learned independently thereof from data of a second sensor modality of the second perception slice and the second time series.

12. The computer system of claim 1 , wherein the runtime stack is configured to make said autonomous decisions based on a second time series of perception outputs, the time series and the second time series corresponding to first and second sensor modalities respectively, wherein the modelled perception slice is configured to process sensor inputs of both sensor modalities, and both time series are computed by applying the PSPM, the PSPM learned from data of both sensor modalities for modelling any correlations therebetween within the perception slice.

13. The computer system of claim 1 , wherein the computer system is configured to apply at least one unmodelled perception component of the runtime stack to the perception outputs, thereby computing processed perception outputs, the runtime stack configured to make said autonomous decisions in dependence on the processed perception outputs, wherein the unmodelled perception component is a filtering component applied to the time series of perception outputs, the processed perception outputs being filtered perception outputs.

14. The computer system of claim 1 , wherein the method further comprises generating at least one fuzzed scenario for running in the simulator by fuzzing at least one existing scenario.

15. The computer system of claim 1 , wherein, to model false negative detections, the probabilistic perception uncertainty distribution provides a probability of successfully detecting a visible one of the external objects, which is used to determine whether or not to provide an object detection output for that external object, an external object being visible when it is within a sensor field of view of the agent in the simulated scenario, whereby detection of the visible external object is not guaranteed.

16. The computer system of claim 1 , wherein, to model false positive detections, the probabilistic uncertainty distribution provides a probability of false object detection, which is used to determine whether or not to provide a perception output for a non-existent object.

17. The computer system of claim 1 , wherein at least one of the external objects is a moving actor, the computer system comprising a prediction stack of the runtime stack configured to predict behaviour of the external actor based on the perception outputs, the runtime stack configured to make the autonomous decisions in dependence on the predicted behaviour.

18. The computer system of claim 1 , wherein the method further comprises recording details of each simulated scenario in a test database, wherein the details include decisions made by the runtime stack, the perception outputs on which those decisions were based, and behaviour of the simulated agent in executing those decisions.

19. A computer-implemented method of performance testing a runtime stack for a robotic system, the method comprising:

running, in a simulator, a simulated scenario in which a simulated agent interacts with one or more external objects, wherein the runtime stack makes autonomous decisions for the simulated scenario in dependence on a time series of perception outputs computed for the simulated scenario and generates a series of control signals for causing the simulated agent to execute the autonomous decisions as the simulated scenario progresses;

wherein each perception output is computed by:

computing a perception ground truth for a current time instant based on a current state of the simulated scenario,

applying a perception statistical performance model (PSPM) to the perception ground truth to determine a probabilistic perception uncertainty distribution for the current time instant, and

sampling the perception output from the probabilistic perception uncertainty distribution;

wherein the PSPM is for modelling a perception slice of the runtime stack and determines the probabilistic perception uncertainty distribution based on a set of parameters learned from a set of actual perception outputs generated using the perception slice to be modelled;

wherein the PSPM comprises a time-dependent model such that the perception output sampled at the current time instant depends on at least one of: an earlier one of the perception outputs sampled at a previous time instant, or an earlier one of the perception ground truths computed for a previous time instant.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2022
From: REDFORD, JOHN; KALTWANG, SEBASTIAN; ROGERS, BLAINE; SADEGHI, JONATHAN; GUNN, JAMES; ELSON, TORRAN; CHARYTONIUK, ADAM
To: FIVE AI LIMITED
Reel/Frame 059217/0673 →
Priority Claims (2)
GB 1912145 · Aug 23, 2019 · national
EP 20168311 · Apr 6, 2020 · regional
Continuity (1)
Related Publication 20220297707A1 · Sep 22, 2022
References Cited (32)
US 20130030779A1 · Leonard · 2013 [cited by applicant]
US 20180336297A1 · Sun et al. · 2018 [cited by applicant]
US 20190130056A1 · Tascione et al. · 2019 [cited by applicant]
US 20190220737A1 · Yao · 2019 [cited by applicant]
US 20190220744A1 · Yao · 2019 [cited by applicant]
US 20190310650A1 · Halder · 2019 [cited by applicant]
US 20190317510A1 · Ros Sanchez · 2019 [cited by applicant]
US 20200110853A1 · Tooley et al. · 2020 [cited by applicant]
US 20200293054A1 · George et al. · 2020 [cited by applicant]
US 20210027103A1 · Brower · 2021 [cited by applicant]
US 20220269279A1 · Redford et al. · 2022 [cited by applicant]
US 20220289218A1 · Redford et al. · 2022 [cited by applicant]
US 20220297709A1 · Redford et al. · 2022 [cited by applicant]
US 20220300810A1 · Redford et al. · 2022 [cited by applicant]
EP 1743581A1 · 2007 [cited by applicant]
WO 2021037761A1 · 2021 [cited by applicant]
WO 2021037763A1 · 2021 [cited by applicant]
WO 2021037765A1 · 2021 [cited by applicant]
WO 2021037766A1 · 2021 [cited by applicant]
International Search Report and Written Opinion mailed Nov. 19, 2020 for International Application No. PCT/EP2020/073562. [cited by applicant]
International Search Report and Written Opinion mailed Nov. 20, 2020 for International Application No. PCT/EP2020/073563. [cited by applicant]
International Search Report and Written Opinion mailed Nov. 20, 2020 for International Application No. PCT/EP2020/073565. [cited by applicant]
International Search Report and Written Opinion mailed Nov. 20, 2020 for International Application No. PCT/EP2020/073568. [cited by applicant]
International Search Report and Written Opinion mailed Nov. 20, 2020 for International Application No. PCT/EP2020/073569. [cited by applicant]
Extended European Search Report mailed Feb. 23, 2021 for European Application No. 20192250.7. [cited by applicant]
[No Author Listed], The Offline Executor: Virtual Testing and the Aurora Driver. Medium. Aug. 2019. 7 pages. https://medium.com/aurora-blog/the-offline-executor-virtual-testing-and-the-aurora-driver-51c7f5c84ale (Last a… [cited by applicant]
Berkhahn et al., Traffic Dynamics at Intersections Subject to Random Misperception. University of Hannover. 2019. 11 pages. https://www.insurance.uni-hannover.de/fileadmin/house-of-insurance/Publications/2019/vk_mk_sw_T… [cited by applicant]
Bouton et al., Safe Reinforcement Learning with Scene Decomposition for Navigating Complex Urban Environments. arXiv preprint arXiv:1904.11483. Apr. 25, 2019. 8 pages. [cited by applicant]
Gomez et al., Uncertainty-based localization in a topological robot navigation system. 2017 IEEE International Conference on Autonomous Robot Systems and Competitions (ICARSC) Apr. 26, 2017:67-72. [cited by applicant]
Mitra et al., Towards modeling of perception errors in autonomous vehicles. 2018 21st International Conference on Intelligent Transportation Systems (ITSC) Nov. 4, 2018; 3024-29. [cited by applicant]
Piazzoni et al., Modeling perception errors towards robust decision making in autonomous vehicles. arXiv preprint arXiv:2001.11695v2. Sep. 3, 2021. 11 pages. [cited by applicant]
Ping et al., Modeling driver risk perception on city roads using deep learning. IEEE Access. Nov. 6, 2018;6:68850-66. [cited by applicant]