IP Library › Granted Patent US 11,551,165
Granted Patent B1
US 11,551,165 · App. 17/713,725 · Granted Jan 10, 2023

Action selection by reinforcement learning and numerical optimization

Inventor: John Van Wicheren Reynders, III (Newton, MA)
Assignee: Latent Strategies LLC
G06Q10/047G06K9/6262G06N3/08
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,551,165
App. No.
17/713,725
Granted
Jan 10, 2023
Kind
B1
Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for selecting actions to be performed by an agent interacting with an environment. In one aspect, a method comprises, at each of one or more time steps: generating a respective action score for each action in a set of possible actions, wherein the set of possible actions comprises: (i) a plurality of atomistic actions, and (ii) one or more optimization actions, wherein each optimization action is associated with a respective objective function that measures performance of the agent on a corresponding auxiliary task; selecting an action from the set of possible actions in accordance with the action scores, wherein the selected action is an optimization action; in response to selecting the optimization action, performing a numerical optimization to identify a sequence of one or more atomistic actions that are predicted to optimize the objective function.

Claims (73)

1. A method performed by one or more computers for selecting actions to be performed by an agent interacting with an environment to cause the agent to accomplish a main task, the method comprising:

selecting an action to be performed by the agent at each time step in a sequence of time steps, comprising, at each of one or more time steps:

obtaining a current observation characterizing a current state of the environment;

processing the current observation using an action selection neural network to generate an action selection output that comprises a respective action score for each action in a set of possible actions,

wherein the set of possible actions comprises: (i) a plurality of atomistic actions, wherein each atomistic action defines a respective action that can be performed by the agent to interact with the environment, and (ii) one or more optimization actions, wherein each optimization action corresponds to a respective auxiliary task which is different than the main task;

selecting an action from the set of possible actions in accordance with the action scores, wherein the selected action is an optimization action;

in response to selecting the optimization action:

identifying an objective function that measures performance of the agent on the auxiliary task corresponding to the optimization action;

performing a numerical optimization to identify a sequence of multiple atomistic actions, from the set of possible actions, that are predicted to optimize the objective function;

mapping the optimization action onto the sequence of multiple atomistic actions that are predicted to optimize the objective function; and

selecting the sequence of atomistic actions mapped onto by the optimization action as actions to be performed by the agent to interact with the environment at a sequence of multiple time steps starting from the current time step; and

controlling the agent to cause the agent to perform the selected sequence of atomistic actions;

receiving, at each time step in the sequence of time steps, a main task reward that characterizes performance of the agent on the main task; and

training the action selection neural network based on the main task rewards using reinforcement learning techniques.

2. The method of claim 1 , wherein performing the numerical optimization comprises:

performing the numerical optimization over a space of latent variables to identify an optimal latent variable that is predicted to optimize the objective function, wherein each latent variable in the space of latent variables defines a plan for the agent to perform the auxiliary task; and

mapping the optimal latent variable onto a sequence of one or more atomistic actions that, if performed by the agent, would cause the agent to execute the plan defined by the optimal latent variable.

3. The method of claim 2 , wherein the auxiliary task comprises navigating to each location in a set of locations in the environment, and wherein each latent variable in the space of latent variables defines a respective order in which the agent should navigate to locations in the set of locations.

4. The method of claim 3 , wherein the objective function measures a distance traveled by the agent to navigate to each location in the set of locations.

5. The method of claim 2 , wherein performing the numerical optimization over the space of latent variables comprises:

performing the numerical optimization over the space of latent variables using a dynamic programming optimization technique.

6. The method of claim 1 , wherein the auxiliary task comprises optimizing a target feature of the environment.

7. The method of claim 6 , wherein the objective function is defined by a feature model that is configured to process an input sequence of atomistic actions to generate an output that defines a value of the target feature that is predicted to result from the agent performing the input sequence of atomistic actions.

8. The method of claim 7 , wherein performing the numerical optimization comprises:

performing the numerical optimization over a set of possible sequences of atomistic actions to identify an optimal sequence of atomistic actions that is predicted to optimize the feature model.

9. The method of claim 8 , wherein performing the numerical optimization over the set of possible sequences of atomistic actions comprises:

initializing a current sequence of atomistic actions; and

iteratively updating the current sequence of atomistic actions, comprising, at each optimization iteration in a sequence of optimization iterations:

processing the current sequence of atomistic actions using the feature model to generate a target feature value;

determining gradients of the target feature value with respect to the current sequence of atomistic actions; and

updating the current sequence of atomistic actions using the gradients.

10. The method of claim 7 , wherein the environment comprises an industrial facility, the target feature of the environment defines an output of a chemical process in the industrial facility, and the feature model comprises a chemical process simulation model.

11. The method of claim 7 , wherein the feature model comprises a neural network model.

12. The method of claim 1 , wherein the auxiliary task comprises maintaining a state of the environment within a set of allowable states.

13. The method of claim 12 , wherein the set of allowable states comprise states where the agent is within a threshold distance of a desired trajectory through the environment.

14. The method of claim 12 , wherein the objective function measures deviation of a state of the environment from the set of allowable states, and wherein performing the numerical optimization comprises:

obtaining a dynamics model that models dynamics of the environment; and

performing the numerical optimization to identify a sequence of atomistic actions that are predicted to optimize the objective function, using optimal control optimization techniques, subject to a constraint that the sequence of atomistic actions satisfies the dynamics model that models the dynamics of the environment.

15. The method of claim 1 , wherein at each of one or more time steps in the sequence of time steps, selecting the action to be performed by the agent at the time step comprises:

selecting an atomistic action from the set of possible actions; and

in response to selecting the atomistic action, causing the agent to perform the atomistic action at the time step.

16. The method of claim 1 , wherein the environment is a simulated environment.

17. The method of claim 1 , wherein the agent is a mechanical agent.

18. A system comprising:

one or more computers; and

one or more storage devices communicatively coupled to the one or more computers, wherein the one or more storage devices store instructions that, when executed by the one or more computers, cause the one or more computers to perform operations for selecting actions to be performed by an agent interacting with an environment to cause the agent to accomplish a main task, the operations comprising:

selecting an action to be performed by the agent at each time step in a sequence of time steps, comprising, at each of one or more time steps:

obtaining a current observation characterizing a current state of the environment;

processing the current observation using an action selection neural network to generate an action selection output that comprises a respective action score for each action in a set of possible actions,

wherein the set of possible actions comprises: (i) a plurality of atomistic actions, wherein each atomistic action defines a respective action that can be performed by the agent to interact with the environment, and (ii) one or more optimization actions, wherein each optimization action corresponds to a respective auxiliary task which is different than the main task;

selecting an action from the set of possible actions in accordance with the action scores, wherein the selected action is an optimization action;

in response to selecting the optimization action:

identifying an objective function that measures performance of the agent on the auxiliary task corresponding to the optimization action;

performing a numerical optimization to identify a sequence of multiple one or more atomistic actions, from the set of possible actions, that are predicted to optimize the objective function;

mapping the optimization action onto the sequence of multiple atomistic actions that are predicted to optimize the objective function; and

selecting the sequence of atomistic actions mapped onto by the optimization action as actions to be performed by the agent to interact with the environment at a sequence of multiple time steps starting from the current time step; and

controlling the agent to cause the agent to perform the selected sequence of atomistic actions;

receiving, at each time step in the sequence of time steps, a main task reward that characterizes performance of the agent on the main task; and

training the action selection neural network based on the main task rewards using reinforcement learning techniques.

19. One or more non-transitory computer storage media storing instructions that when executed by one or more computers cause the one or more computers to perform operations for selecting actions to be performed by an agent interacting with an environment to cause the agent to accomplish a main task, the operations comprising:

selecting an action to be performed by the agent at each time step in a sequence of time steps, comprising, at each of one or more time steps:

obtaining a current observation characterizing a current state of the environment;

processing the current observation using an action selection neural network to generate an action selection output that comprises a respective action score for each action in a set of possible actions,

wherein the set of possible actions comprises: (i) a plurality of atomistic actions, wherein each atomistic action defines a respective action that can be performed by the agent to interact with the environment, and (ii) one or more optimization actions, wherein each optimization action corresponds to a respective auxiliary task which is different than the main task;

selecting an action from the set of possible actions in accordance with the action scores, wherein the selected action is an optimization action;

in response to selecting the optimization action:

identifying an objective function that measures performance of the agent on the auxiliary task corresponding to the optimization action;

performing a numerical optimization to identify a sequence of multiple atomistic actions, from the set of possible actions, that are predicted to optimize the objective function;

mapping the optimization action onto the sequence of multiple atomistic actions that are predicted to optimize the objective function; and

selecting the sequence of atomistic actions mapped onto by the optimization action as actions to be performed by the agent to interact with the environment at a sequence of multiple one or more time steps starting from the current time step; and

controlling the agent to cause the agent to perform the selected sequence of atomistic actions;

receiving, at each time step in the sequence of time steps, a main task reward that characterizes performance of the agent on the main task; and

training the action selection neural network based on the main task rewards using reinforcement learning techniques.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2022
From: REYNDERS III, JOHN VAN WICHEREN
To: LATENT STRATEGIES LLC
Reel/Frame 059587/0532 →
Cited By (3)
US 12,468,779 US 12,572,773 US 12,608,584