IP Library › Granted Patent US 11,577,741
Granted Patent B1
US 11,577,741 · App. 16/376,750 · Granted Feb 14, 2023

Systems and methods for testing collision avoidance systems

Inventors: Andreas Christian Reschka (Foster City, CA); Collin MacGregor (Foster City, CA)
Assignee: Zoox, Inc.
B60W50/045B60W30/0953B60W30/0956B60W2050/0031B60W2050/041
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 11,577,741
App. No.
16/376,750
Granted
Feb 14, 2023
Kind
B1
Abstract

A vehicle may include a primary system for generating data to control the vehicle and a secondary system that validates the data and/or other data to avoid collisions. For example, the primary system may localize the vehicle, detect an object around the vehicle, predict an object trajectory, and generate a trajectory for the vehicle. The secondary system may localize the vehicle, detect an object around the vehicle, predict an object trajectory, and determine a likelihood of a collision of the vehicle with the object. A simulation system may generate simulation scenarios that test aspects of the primary system and the secondary system. Simulation scenarios may include simulated vehicle control data that causes the primary system to generate a driving trajectory and simulated object data that causes the secondary system to determine a collision.

Claims (70)

1. A system comprising:

one or more processors; and

one or more computer-readable media storing instructions executable by the one or more processors, wherein the instructions, when executed, cause the system to perform acts comprising:

providing simulation data to a control system for an autonomous vehicle, the control system comprising a first system configured to generate first control signals at a first frequency and a second system configured to generate second control signals at a second frequency, the simulation data causing the control system to simulate functioning of an autonomous vehicle and including simulated vehicle control data and simulated object control data, wherein the providing the simulation data comprises:

providing the simulated vehicle control data to the first system to cause the first system to generate a first control signal of the first control signals for controlling a simulated autonomous vehicle along a trajectory in a simulated environment, and

providing the simulated object control data to the second system to cause the second system to determine a collision between the simulated autonomous vehicle controlled along the trajectory according to the first control signal and a simulated object, the second system being configured to generate a second control signal of the second control signals for controlling the simulated autonomous vehicle in response to determining the collision, the second control signal being generated prior to the first system generating a next first control signal of the first control signals at the first frequency; and

receiving, from the control system, information about a response control signal of the one or more second control signals generated by the second system in response to the simulated object control data.

2. The system of claim 1 , the acts further comprising:

determining, based at least in part on the information about the response control signal and by the second system, a simulated vehicle response trajectory;

determining, based at least in part on the simulated object control data, a simulated object trajectory; and

determining, based at least in part on the simulated vehicle response trajectory and the simulated object trajectory, a simulated outcome.

3. The system of claim 1 , wherein:

the first control signal is generated at a first time,

the next first control signal is to be generated at a second time based on the first frequency, and

the simulated object control data is determined based at least in part on the vehicle control data such that the simulated autonomous vehicle will collide with the simulated object at a third time between the first time and the second time.

4. The system of claim 1 , wherein the vehicle control data and the simulated object control data define a first scenario of a plurality of scenarios, a second scenario of the plurality of scenarios comprising at least one of a first variation of the vehicle control data or a second variation of the simulated object control data, the at least one of the first variation or the second variation selected based at least in part on a scenario threshold probability for the second scenario being equal to or below a threshold scenario probability.

5. The system of claim 4 , the acts further comprising:

determining, based at least in part on a first simulated outcome of the first scenario and a second simulated outcome of the second scenario, one or more operational limitations for an autonomous vehicle including the control system; and

controlling the autonomous vehicle based at least in part on the operational limitations.

6. A method comprising:

determining a simulation scenario associated with autonomous vehicles, the simulation scenario comprising vehicle control parameters for simulating control of a simulated autonomous vehicle and simulated object information, wherein the vehicle control parameters are based at least in part on dynamics of an autonomous vehicle to be simulated and the simulated object information is based at least in part on dynamics of an object to be simulated, and wherein the vehicle control parameters and the simulated object information cause an adversarial scenario that results in a collision of the simulated autonomous vehicle with a simulated object;

sending the vehicle control parameters to a control system of the simulated autonomous vehicle, the control system including a first system configured to determine, based at least in part on the vehicle control parameters, one or more first control signals for controlling the simulated autonomous vehicle to traverse along a first vehicle trajectory in accordance with the vehicle control parameters, wherein the first system generates the one or more first control signals at a first frequency;

sending the simulated object information to the control system, the control system including a second system configured to determine, based at least in part on the simulated object information and prior to the first system generating a next of the one or more first control signals, the presence of the simulated object impeding travel along the first vehicle trajectory, the second system further configured to generate one or more second control signals in response to a determined collision of the vehicle and the simulated object, for controlling the simulated autonomous vehicle to traverse along a response trajectory, responsive to the simulated object;

receiving, from the control system, information about the one or more second control signals; and

determining, based at least in part on the vehicle control parameters, the simulated object information, and the one or more second control signals, a simulated outcome.

7. The method of claim 6 , wherein the determining the simulated outcome comprises:

determining, based at least in part on the information about a response control signal, a simulated vehicle response trajectory;

determining, based at least in part on the object information, a simulated object trajectory; and

determining the simulated outcome based at least in part on the simulated vehicle response trajectory and the simulated object trajectory.

8. The method of claim 7 , wherein:

the simulated object information is determined based at least in part on the vehicle control parameters such that the simulated autonomous vehicle will collide with the simulated object at a first time, and

the first time is before a second time at which the first system generates a next of the one more first control signals, responsive to the simulated object.

9. The method of claim 6 , wherein the object information comprises simulated sensor data corresponding to sensor data generated by a sensor of the autonomous vehicle.

10. The method of claim 6 , wherein the vehicle control parameters and the simulated object information are generated at least in part based on one or more of:

the first vehicle trajectory comprising a vehicle speed equal to or within a threshold speed of a maximum speed of an autonomous vehicle; or

the simulated object having an object trajectory having at least one of a direction opposite to the first vehicle trajectory or an object speed equal to or within a threshold speed of a maximum speed of an object simulated by the simulated object.

11. The method of claim 6 , wherein a first scenario of a plurality of scenarios comprises first vehicle control parameters and first object information and a second scenario of the plurality of scenarios comprises second vehicle control parameters and second object information, the method further comprising:

determining, based at least in part on a first simulated outcome of the first scenario and a second simulated outcome of the second scenario, one or more operational parameters for an autonomous vehicle including the control system; and

controlling the autonomous vehicle based at least in part on the operational parameters.

12. The method of claim 11 , wherein:

the first vehicle control parameters comprise at least one of a first vehicle acceleration, a first vehicle speed, a first vehicle travel path, or a first vehicle destination;

the second vehicle control parameters comprise at least one of a second vehicle acceleration, a second vehicle speed, a second vehicle travel path, or a second vehicle destination; and

the first vehicle control parameters and the second control parameters are based at least in part on dynamic functionality of the autonomous vehicle.

13. The method of claim 11 , wherein:

the first object information comprises at least one of a first position of the simulated object, a first velocity of the simulated object, a first travel path of the simulated object; or a first time at which the first object information is available to the second system; and

the second object information comprises at least one of a second position of the simulated object, a second velocity of the simulated object, a second travel path of the simulated object, or a second time at which the second object information is available to the second system.

14. The method of claim 6 , wherein the object information is based at least in part on a simulated object type, a first simulated object type having at least one of first extents, a first maximum speed, a first range of motion, or a first maximum acceleration and a second simulated object type having at least one of second extents, a second maximum speed, a second range of motion, or a second maximum acceleration, wherein the first simulated object type or the second simulated object type comprises at least one of a pedestrian, a bicyclist, or a vehicle.

15. The method of claim 6 , wherein the determining a plurality of scenarios comprises:

determining a parameter range associated with a first parameter of the vehicle control parameters, the parameter range being based at least in part on dynamics of the autonomous vehicle;

generating a first scenario of the plurality of scenarios based at least in part on a first value of the first parameter in the parameter range; and

generating a second scenario of the plurality of scenarios based at least in part on a second value of the first parameter range.

16. One or more non-transitory computer-readable media storing instructions that, when executed, cause one or more processors to perform operations comprising:

determining a simulation scenario for testing a response of a simulated autonomous vehicle, the simulation scenario comprising:

vehicle control data indicative of an initial state of the simulated autonomous vehicle, and

object data comprising information about a simulated object to be instantiated in a simulated environment comprising the simulated autonomous vehicle,

wherein the vehicle control data and the object data are configured to cause an adversarial scenario that results in a collision of the simulated autonomous vehicle with the simulated object;

instantiating, at a first time, the simulated autonomous vehicle in the simulated environment based at least in part on the vehicle control data;

determining, by a primary system of a control system associated with the simulated autonomous vehicle, a vehicle trajectory comprising one or more first controls, the primary system being configured to determine the vehicle trajectories, including the vehicle trajectory at a first frequency;

controlling the simulated autonomous vehicle to traverse the simulated environment according to the vehicle trajectory;

sending, at a second time, the object data to the control system;

determining, by a secondary system of the control system, based at least in part on the vehicle trajectory and the object data, and prior to the primary system determining a next vehicle trajectory in accordance with the first frequency, a predicted collision;

determining, by the secondary system and based at least in part on the predicted collision, one or more second controls responsive to the predicted collision;

receiving, from the control system, information about the one or more first controls and about the one or more second controls; and

determining, based at least in part on the first controls, the object data, and the second controls a simulated outcome.

17. The one or more non-transitory computer-readable media of claim 16 ,

wherein the object data comprises an object trajectory based at least in part on the vehicle control data and determined to cause the object to collide with the simulated autonomous vehicle, and

wherein a time to collision between the simulated object and the simulated autonomous vehicle is less than an amount of time required by the primary system to modify the vehicle trajectory in response to the simulated object.

18. The one or more non-transitory computer-readable media of claim 16 , wherein the simulated scenario is one of a plurality of simulated scenarios, individual of the plurality of simulated scenarios comprising at least one of a variation of the vehicle control data or a variation of the object data.

19. The one or more non-transitory computer-readable media of claim 16 , wherein the simulated outcome comprises one of a simulated impact between the autonomous vehicle and the simulated object or a simulated avoidance of the simulated object by the autonomous vehicle.

20. The one or more non-transitory computer-readable media of claim 16 , wherein the object data comprises one or more of simulated sensor data associated with the simulated object, a representation of the simulated object, or an object classification, and the object data further comprises at least one of a position of the simulated object, a velocity of the simulated object, or a travel path of the simulated object.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2019
From: RESCHKA, ANDREAS CHRISTIAN; MACGREGOR, COLLIN
To: ZOOX, INC.
Reel/Frame 048849/0362 →
Cited By (16)
US 12,298,423 US 12,346,239 US 12,370,684 US 12,384,361 US 12,388,898 US 12,487,596 US 12,487,599 US 12,491,871 US 12,524,886 US 12,530,619 US 12,539,867 US 12,576,865 US 12,585,847 US 12,643,538 US 12,657,969 US 12,711,406