IP Library Granted Patent US 12675095
Granted Patent B2
US 12675095 · App. 18/321,827 · Granted Jul 7, 2026

Decider networks for reactive decision-making for robotic systems and applications

Inventor: Nathan Donald Ratliff (Seattle, WA)
Assignee: NVIDIA Corporation
G05B19/4155B25J9/1664G05B2219/50391
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 12675095
App. No.
18/321,827
Granted
Jul 7, 2026
Kind
B2
Abstract

In various examples, systems and methods are disclosed relating to decider networks for reactive decision-making, including for control of robotic systems. The decider networks can allow robotic systems to operate more collaboratively, such as by allowing the robotic systems to more frequently process and react to dynamic states of the environment and objects in the environment, such as to change decisions and/or paths of decision execution responsive to dynamic changes in logical states. The decider network can include a plurality of nodes having functions to process the logical states in sequence to determine actions for the robotic systems to perform.

Claims (89)

1 . A processor comprising:

one or more circuits configured to:

identify at least one state of an environment, wherein the at least one state of the environment is identified based on a world model comprising a representation of one or more objects in the environment, the at least one state comprising at least one condition corresponding to (i) progress in performing a task by a robot and (ii) at least one characteristic of the one or more objects represented in the world model, the at least one characteristic comprising at least one of a position, an orientation, or a presence of the one or more objects represented in the world model;

determine, based at least on the at least one state and using a predefined network of nodes representative of one or more actions, one or more functions, or one or more robot states corresponding to the robot in the environment, at least one action of the one or more actions for the robot to perform in furtherance of performing the task, wherein, during each cycle of operation of the robot, the determination of the at least one action is based at least on selecting a path through the predefined network of nodes by processing the at least one state identified using a representation of the predefined network of nodes along the path, from a root node, that includes at least one fixed successive node in the predefined network for one or more nodes along the path, the at least one fixed successive node representing at least one of, a predefined action or a predefined condition;

control, during at least one cycle of operation, operation of the robot according to the at least one action; and

update the world model to indicate at least one update corresponding with the one or more objects represented in the world model, the at least one update determined according to sensor data or perception data.

2 . The processor of claim 1 , wherein:

the predefined network of nodes is arranged according to an acyclic graph having the root node and a plurality of leaf nodes, the root node assigned a first function of the one or more functions, the plurality of leaf nodes each assigned a respective second function of the one or more functions, each function configured to determine an output responsive to evaluating a respective condition according to at least one of (i) the at least one state of the environment or (ii) the one or more robot states of the robot, the first function indicating the path through the predefined network of nodes to a selected leaf node of the predefined network of nodes, the second function indicating a selection of the at least one action from the one or more actions; and

the one or more circuits are configured to:

evaluate the condition of the first function of the root node to determine the path of the predefined network from the root node to the selected leaf node; and

evaluate the condition of the second function of the selected leaf node, responsive to determining the path of the predefined network from the root node to the selected leaf node, to select the at least one action.

3 . The processor of claim 1 , wherein, for each cycle of a plurality of cycles, the one or more circuits are configured to:

perform object detection to detect the one or more objects based at least on sampling one or more sensors of the environment for the sensor data;

determine the perception data comprising the at least one characteristic of the one or more objects based at least on the sensor data;

determine the at least one state for the at least one cycle of operation; and

determine the at least one action according to the at least one state for the at least one cycle of operation.

4 . The processor of claim 1 , wherein the one or more circuits are configured to:

select, based at least on a first function of a first node of the predefined network and the at least one state, one of a second node of the predefined network or a third node of the predefined network; and

determine the at least one action using the selected one of the second node or third node.

5 . The processor of claim 1 , wherein the one or more circuits are configured to:

identify in a first cycle, based at least on a first function of the root node of the predefined network, and responsive to the at least one state having a first value, a second node of the predefined network, and determine the at least one action according to a second function of the second node; and

identify in a second cycle, based at least on the first function of the root node, and responsive to the at least one state having a second value different from the first value, a third node of the predefined network, and determine the at least one action according to a third function of the third node.

6 . The processor of claim 1 , wherein the environment comprises at least one of a real-world environment or a simulated environment, and wherein selecting the path through the predefined network of nodes comprises processing the at least one state identified using a decide function on successive nodes of the predefined network of nodes along the path.

7 . The processor of claim 1 , wherein the robot comprises at least one of a robotic arm, an end effector, a vehicle controller, a collaborative robot, or a controller of a simulation agent.

8 . The processor of claim 1 , wherein the one or more circuits are configured to determine, according to the at least one action and a policy associated with the at least one action, a plurality of operations for the robot to perform.

9 . The processor of claim 1 , wherein the one or more circuits are configured to:

maintain a record of a first path through the predefined network of nodes, in a first cycle of processing the at least one state to determine the at least one action, from the root node to at least one leaf node;

determine, in a second cycle of processing the at least one state, a branch from the first path to a second path; and

perform an exit operation on each node of the predefined network of nodes from the at least one leaf node to a node associated with the branch.

10 . The processor of claim 1 , wherein the one or more circuits are configured to, for each respective cycle of a plurality of sequential cycles of processing the at least one state using the predefined network of nodes, re-evaluate the at least one state prior to determining the at least one action for the respective cycle.

11 . The processor of claim 1 , wherein the at least one state comprises a state of an object remotely positioned from the robot, and wherein the determination of the at least one action corresponding to at least one leaf node of the predefined network of nodes comprises at least one of (i) determining an enter condition, (ii) determining an exit condition, or (iii) performing a decide operation, and wherein during each cycle of operation of the robot at least one decide function or at least one exit function is performed.

12 . The processor of claim 1 , wherein the one or more circuits are configured to configure a data structure representing the predefined network of nodes, in a memory device of the one or more circuits, according to input received via a user interface.

13 . The processor of claim 1 , wherein the processor is comprised in at least one of:

a control system for an autonomous or semi-autonomous machine;

a perception system for an autonomous or semi-autonomous machine;

a system for performing simulation operations;

a system for performing digital twin operations;

a system for performing light transport simulation;

a system for performing generative AI operations;

a system for performing collaborative content creation for 3D assets;

a system for performing deep learning operations;

a system implemented using an edge device;

a system implemented using a robot;

a system implemented using a language model;

a system for performing conversational AI operations;

a system for generating synthetic data;

a system incorporating one or more virtual machines (VMs);

a system implemented at least partially in a data center; or a system implemented at least partially using cloud computing resources.

14 . A system, comprising:

one or more processors configured to identify at least one state of an environment, to determine at least one action of one or more actions for a robot to execute in order to perform a task in the environment based at least on the at least one state and using a predefined network of nodes representative of one or more robot states, one or more actions, or one or more functions corresponding to the robot, to control, during at least one cycle of operation, operation of the robot according to the at least one action, and to update a world model to indicate at least one update corresponding with one or more objects represented in the world model, the at least one update determined according to sensor data or perception data; and

wherein the at least one state of the environment is identified based on the world model comprising a representation of the one or more objects in the environment, the at least one state comprising at least one condition corresponding to (i) progress in performing the task by the robot and (ii) at least one characteristic of the one or more objects represented in the world model, the at least one characteristic comprising at least one of a position, an orientation, or a presence of the one or more objects represented in the world model;

wherein, during the each cycle of operation of the robot, the determination of the at least one action is based at least on selecting a path through the predefined network of nodes by processing the at least one state identified using a representation of the predefined network of nodes along the path, from a root node, that includes at least one fixed successive node in the predefined network for one or more nodes along the path, the at least one fixed successive node representing at least one of, a predefined action or a predefined condition.

15 . The system of claim 14 , wherein:

the predefined network of nodes is arranged according to an acyclic graph having the root node and a plurality of leaf nodes, the root node assigned a first function of the one or more functions, the plurality of leaf nodes each assigned a respective second function of the one or more functions, each function configured to determine an output responsive to evaluating a respective condition according to at least one of (i) the at least one state of the environment or (ii) the one or more robot states of the robot, the first function indicating the path through the predefined network of nodes to a selected leaf node of the predefined network of nodes, the second function indicating a selection of the at least one action from the one or more actions; and

the one or more processors are configured to, for each cycle of a plurality of cycles:

receive the at least one state for the at least one cycle of operation;

determine, based at least on evaluating the at least one state for the at least one cycle of operation using the first function of the root node, a path from the root node to a selected leaf node of the plurality of leaf nodes; and

determine the at least one action using the second function of the selected leaf node.

16 . The system of claim 14 , wherein the one or more processors are configured to:

identify in a first cycle, based at least on a first function of the root node of the predefined network, and responsive to the at least one state having a first value, a second node of the predefined network, and determine the at least one action according to a second function of the second node; and

identify in a second cycle, based at least on the first function of the root node, and responsive to the at least one state having a second value different from the first value, a third node of the predefined network, and determine the at least one action according to a third function of the third node.

17 . The system of claim 14 , wherein the environment comprises at least one of a real-world environment or a simulated environment.

18 . The system of claim 14 , wherein the system is comprised in at least one of:

a control system for an autonomous or semi-autonomous machine;

a perception system for an autonomous or semi-autonomous machine;

a system for performing simulation operations;

a system for performing digital twin operations;

a system for performing generative AI operations;

a system for performing light transport simulation;

a system for performing collaborative content creation for 3D assets;

a system for performing deep learning operations;

a system implemented using an edge device

a system implemented using a robot;

a system implemented using a language model;

a system for performing conversational AI operations;

a system for generating synthetic data;

a system incorporating one or more virtual machines (VMs);

a system implemented at least partially in a data center; or

a system implemented at least partially using cloud computing resources.

19 . A method, comprising:

performing, using one or more processors, object detection to detect one or more objects based at least on sampling one or more sensors of an environment for sensor data;

determining, using the one or more processors, perception data comprising at least one characteristic of the one or more objects based at least on the sensor data, the at least one characteristic comprising at least one of a position, an orientation, a size, a color, a motion, a temperature, a pressure of the one or more objects;

updating, during each cycle of operation using the one or more processors, a world model to indicate at least one update corresponding with the sensor data or the perception data:

identifying, using the one or more processors, at least one state of the environment, wherein the at least one state of the environment is identified based on the world model comprising a representation of the one or more objects in the environment, the at least one state comprising at least one condition corresponding to (i) progress in performing a task by a robot and (ii) the at least one characteristic of the one or more objects represented in the world model;

determining at least one action of one or more actions for the robot to complete based at least on the at least one state and using the one or more processors and a predefined network of nodes representative of the one or more actions, wherein, during each cycle of operation of the robot, the determination of the at least one action is based at least on selecting a path through the predefined network of nodes by processing the at least one state identified using a representation of the predefined network of nodes along the path, from a root node, that includes at least one fixed successive node in the predefined network for one or more nodes along the path, the at least one fixed successive node representing at least one of, a predefined action or a predefined condition; and

controlling, during at least one cycle of operation, operation of the robot, using the one or more processors, according to the at least one action.

20 . The method of claim 19 , wherein the predefined network of nodes is arranged according to an acyclic graph having the root node and a plurality of leaf nodes, and the method further comprises:

determining, using the one or more processors and based at least on a function the root node that selects one or more other nodes of the predefined network according to the at least one state, the path of the predefined network from the root node to a selected leaf node of the plurality of leaf nodes; and

determining, using the one or more processors and using a function of the selected leaf node that selects the at least one action, the at least one action.