# US 11,307,594 B2 · Method and system for deterministic trajectory selection based on uncertainty estimation for an autonomous agent

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,307,594 B2
- Document ID: US11307594B2
- Status: Granted
- Kind: B2
- Application number: 17/483,539
- Filed: 2021-09-23
- Published: 2022-01-13
- Granted: 2022-04-19
- Earliest claimed: 2020-06-05
- Assignees: Gatik AI Inc.
- Applicants: Gatik AI Inc.
- Inventors: Gautam Narang; Apeksha Kumavat; Arjun Narang; Kinh Tieu; Michael Smart; Marko Ilievski
- Web page: https://patentgrep.com/patent/US11307594B2

## CPC

- B60W 60/0011: {involving control alternatives for a single driving scenario, e.g. planning several paths to avoid obstacles}
- G05D 1/0219: {ensuring the processing of the whole working surface}
- G05D 1/0088: {characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours (using knowledge based models G06N5/00)}
- G05D 1/0214: {in accordance with safety or protection criteria, e.g. avoiding hazardous areas (monitoring the location of vehicles within a certain area, e.g. forbidden or allowed areas, in traffic control systems for road vehicles G08G1/13)}
- G05D 1/0221: {involving a learning process}
- G05D 1/227: Handing over between remote control and on-board control; Handing over between remote control arrangements
- G05D 1/617: Safety or protection, e.g. defining protection zones around obstacles or avoiding hazards (arrangements for controlling the position or course of two or more vehicles for avoiding collisions therebetween G05D1/693; arrangements for reacting to or preventing system or operator failure G05D1/80)
- G05D 1/648: Performing a task within a working area or space, e.g. cleaning
- G06F 18/2155: {characterised by the incorporation of unlabelled data, e.g. multiple instance learning [MIL], semi-supervised techniques using expectation-maximisation [EM] or naïve labelling}
- G06F 18/217: {Validation; Performance evaluation; Active pattern learning techniques}
- G06N 3/045: Combinations of networks
- G06N 3/0464: Convolutional networks [CNN, ConvNet]
- G06N 3/0475: Generative networks
- G06N 3/08: Learning methods
- G06N 3/084: Backpropagation, e.g. using gradient descent
- G06N 3/088: Non-supervised learning, e.g. competitive learning
- G06N 3/09: Supervised learning
- G06N 3/092: Reinforcement learning
- G06N 3/094: Adversarial learning
- G06N 20/00: Machine learning
- G06V 10/764: using classification, e.g. of video objects
- G06V 10/82: using neural networks
- G06V 20/56: exterior to a vehicle by using sensors mounted on the vehicle
- B60W 2556/20: Data confidence level
- B60W: CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- G05D: SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING

## Abstract

A system for deterministic trajectory selection based on uncertainty estimation includes a set of one or more computing systems. A method for deterministic trajectory selection includes receiving a set of inputs; determining a set of outputs; determining uncertainty parameters associated with any or all of the set of inputs and/or any or all of the set of outputs; and evaluating the uncertainty parameters and optionally triggering a process and/or action in response.

## Claims

### Claim 1

A method for trajectory determination of an autonomous agent, the method comprising:
collecting a set of inputs;
determining a first trajectory of a set of candidate trajectories based on the set of inputs, the first trajectory associated with a first uncertainty;
determining a second trajectory of the set of candidate trajectories;
determining a second uncertainty associated with the set of inputs;
comparing the first uncertainty with a first threshold, wherein in an event that the first uncertainty exceeds the first threshold, eliminating the first trajectory from the set of candidate trajectories;
comparing the second uncertainty with a second threshold, wherein in an event that the second uncertainty exceeds the second threshold, eliminating the first trajectory from the set of candidate trajectories;
determining a final trajectory for the autonomous agent based on the comparison with the set of constraints; and
implementing the final trajectory at the autonomous agent.

### Claim 2 (depends on 1)

The method of claim 1, wherein the first trajectory is a learned trajectory determined with a set of learned models.

### Claim 3 (depends on 2)

The method of claim 2, wherein the first uncertainty is determined with the set of learned models.

### Claim 4 (depends on 2)

The method of claim 2, wherein the second trajectory is a programmed trajectory.

### Claim 5 (depends on 4)

The method of claim 4, wherein the second trajectory is determined with a classical motion planner.

### Claim 6 (depends on 1)

The method of claim 1, wherein the second uncertainty is determined with an out-of-distribution detector.

### Claim 7 (depends on 6)

The method of claim 6, wherein the out-of-distribution detector comprises a generative adversarial network.

### Claim 8 (depends on 1)

The method of claim 1, wherein the first uncertainty is determined based on at least one of an aleatoric and an epistemic uncertainty.

### Claim 9 (depends on 8)

The method of claim 8, wherein the first uncertainty is determined based on the aleatoric uncertainty and the epistemic uncertainty.

### Claim 10

A method for trajectory determination of an autonomous agent, the method comprising:
receiving, at a gatekeeper module:
a set of candidate trajectories, the set of candidate trajectories comprising a first trajectory and a second trajectory;
a set of uncertainties associated with the set of candidate trajectories, wherein the set of uncertainties comprises:
a first uncertainty associated with the first trajectory; and
a second uncertainty associated with a set of inputs, wherein the set of inputs is used to determine at least one of the first and second trajectories;
comparing the set of uncertainties with a set of thresholds; and
determining a final trajectory based on the comparison; and
implementing the final trajectory at the autonomous agent.

### Claim 11 (depends on 10)

The method of claim 10, further comprising determining the set of candidate trajectories based on a set of inputs.

### Claim 12 (depends on 11)

The method of claim 11, wherein a first portion of the set of candidate trajectories is determined with a set of learned models.

### Claim 13 (depends on 12)

The method of claim 12, wherein a second portion of the set of candidate trajectories is determined with a classical motion planner.

### Claim 14 (depends on 10)

The method of claim 10, further comprising comparing the set of candidate trajectories with a set of constraints.

### Claim 15 (depends on 14)

The method of claim 14, wherein the final trajectory is further determined based on the comparison with the set of constraints.

### Claim 16 (depends on 15)

The method of claim 15, wherein the set of constraints comprises a collision-avoidance constraint.

### Claim 17 (depends on 16)

The method of claim 16, wherein the set of constraints is organized into a hierarchy of constraints, wherein the collision-avoiding constraint has a highest priority within the hierarchy.

### Claim 18 (depends on 10)

The method of claim 10, wherein the first trajectory is determined based on the set of inputs.

### Claim 19 (depends on 18)

The method of claim 18, wherein the second trajectory is determined based on the set of inputs.
