Generating Simulated Sensor Data For Training And Validation Of Detection Models
US-2018203445-A1 · Jul 19, 2018 · US
US10489529B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10489529-B2 |
| Application number | US-201715405649-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 13, 2017 |
| Priority date | Oct 14, 2016 |
| Publication date | Nov 26, 2019 |
| Grant date | Nov 26, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A domain specific language, or Scenario Description Language (SDL), can be used for quickly enumerating scenarios in a simulation for testing and validating interaction of an object (e.g., an autonomous vehicle) within an environment. Scenarios in a simulation are defined using one or more primitives. Primitives are used to define objects to be instantiated (such as body size, position, orientation, velocities, etc.) and/or actions to be performed by the objects in the simulation (such as wait for a period of time, goal positions, follow a particular object, etc.). The SDL enables simple creation of multiple scenarios by combining primitives combinatorially and in some examples, limiting which scenarios are created to those that correspond to combinations that provide meaningful information. Additionally, the SDL allows for instantiation to be agnostic of map features so that a particular scenario can be instantiated automatically over all possible positions within a map.
Opening claim text (preview).
What we claim is: 1. A computer-implemented method for generating a scenario in a simulation environment, the computer-implemented method comprising: receiving first instructions defining at least a first primitive that is to be instantiated in the scenario, the first primitive corresponding to an autonomous vehicle; receiving second instructions associated with one or more values to be assigned to the first primitive; creating, based at least in part on the one or more values, a set of permutations of the first primitive, each permutation of the set of permutations associated with a different value of the one or more values; instantiating, based at least in part on semantic coordinates indicative of a map topology, each of the permutations within the map topology to generate a set of scenarios, each scenario of the set of scenarios corresponding to a permutation of the set of permutations and the map topology comprising an intersection; receiving sequence instructions defining at least one of a first condition or a first behavior associated with the first primitive at a first time and at least one of a second condition or a second behavior associated with the first primitive at a second time; and determining, based at least in part on executing at least a portion of the sequence instructions, information associated with an individual scenario of the set of scenarios, the information describing how an autonomous controller associated with the autonomous vehicle responds given the individual scenario generated in the simulation environment. 2. The computer-implemented method of claim 1 , wherein the first primitive is associated with one or more of a body having a defined set of dimensions, a pose, or a mesh to render the first primitive in the simulation environment. 3. The computer-implemented method of claim 2 , wherein the pose is defined by an inertial coordinate system, a map based coordinate system, or a track based coordinate system. 4. The computer-implemented method of claim 2 , wherein the first primitive is associated with an entity behavior indicating how the first primitive is to behave in the scenario. 5. The computer-implemented method of claim 1 , wherein the second instructions further include a sequence defining an association between the first primitive and at least a second primitive, the sequence including multiple steps that are performed in sequential order. 6. The computer-implemented method of claim 5 , wherein the second primitive corresponds to a second entity. 7. The computer-implemented method of claim 6 , wherein the second entity is a static entity or a dynamic entity. 8. The computer-implemented method of claim 5 , wherein the second primitive corresponds to a third condition, an action, a fault, or a noise. 9. A system for generating scenarios in a simulation environment, the system comprising: one or more processors; one or more non-transitory computer-readable media storing instructions executable by the one or more processors, wherein the instructions program the one or more processors to perform actions comprising: receiving first instructions defining a set of primitives to be instantiated, based at least in part on semantic coordinates indicative of a map topology, in at least one scenario in the simulation environment, the map topology comprising an intersection; receiving a first sequence defining an association between individual primitives in the set of primitives; instantiating the first sequence within the simulation environment to generate a first scenario; and determining information associated with the first scenario, the information describing how an autonomous controller responds given the at least one scenario created in the simulation environment; wherein the first scenario is based at least in part on one or more of a wait condition, a follow condition, a speed condition, a distance between or near condition, or an in-region condition, and wherein determining the information associated with the first scenario comprises determining whether a first primitive of the set of primitives responded in accordance with the first sequence. 10. The system of claim 9 , wherein the first sequence includes at least one subsequence. 11. The system of claim 9 , wherein the first sequence is defined using linear temporal logic. 12. The system of claim 9 , wherein the actions further comprise: receiving an outer product associated with the first sequence, the outer product including two or more variables and two or more possible values associated with each variable of the two or more variables, each variable of the two or more variables being associated with a primitive in the set of primitives; creating a set of permutations comprising each possible combination of the two or more possible values associated with each variable of the two or more variables; instantiating each permutation of the set of permutations within the simulation environment, each permutation corresponding to a new scenario; and determining an outcome for each new scenario, the outcome being successful or unsuccessful. 13. The system of claim 9 , wherein the actions further comprise: receiving a second sequence defining a different association between the individual primitives in the set of primitives; and instantiating the second sequence within the simulation environment to generate a second scenario. 14. The system of claim 13 , wherein the actions further comprise instantiating the first sequence and the second sequence in parallel. 15. The system of claim 9 , wherein determining the information associated with the first scenario comprises validating how the autonomous controller responds given the at least one scenario created in the simulation environment. 16. The system of claim 9 , wherein determining the information associated with the first scenario comprises determining an operational space of the autonomous controller given the at least one scenario created in the simulation environment. 17. The system of claim 9 , wherein determining the information associated with the first scenario comprises generating feedback for improving at least one of operations or designs of the autonomous controller in view of how the autonomous controller responds given the at least one scenario created in the simulation environment. 18. A non-transitory computer-readable medium having a set of instructions that, when executed, cause one or more processors to perform operations comprising: receiving, as part of a sequence for generating at least one simulated scenario, a subset of possible combinations of primitives; receiving first instructions defining at least a first primitive of the primitives that is to be instantiated in the at least one scenario; creating a set of permutations, each permutation comprising one possible combination of the primitives from the subset of possible combinations of the primitives; instantiating, based at least in part on semantic coordinates indicative of a map topology, each permutation of the set of permutations within a map, each permutation corresponding to a simulated scenario of the at least one simulated scenario and the map topology comprising an intersection; receiving sequence instructions defining at least one of a first condition or a first behavior associated with the first primitive at a first time and at least one of a second condition or a second behavior associated with the first primitive at a second time; and determining, based at least in part on executing at least a portion of the se
Design optimisation, verification or simulation (optimisation, verification or simulation of circuit designs G06F30/30) · CPC title
Vehicle, aircraft or watercraft design · CPC title
Physics · mapped topic
characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours (using knowledge based models G06N5/00) · CPC title
Physics · mapped topic
Related publications grouped by family.
Answers are generated from the same data shown on this page.