IP Library Patent Application 18424520
Patent Application
App. No. 18/424,520

REINFORCEMENT LEARNING BY DIRECTLY LEARNING AN ADVANTAGE FUNCTION

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 None
App. No.
18/424,520
Abstract

A system and method, implemented by one or more computers, of controlling an agent to take actions in an environment to perform a task is provided. The method comprises maintaining a value function neural network an advantage function neural network that is an estimate of a state-action advantage function representing a relative advantage of performing one possible action relative to the other possible actions. The method further comprises using the advantage function neural network to control the agent to take actions in the environment to perform the task. The method also comprises training the value function neural network and the advantage function neural network in a way that takes into account a behavior policy defined by a distribution of actions taken by the agent in training data.

Claims (70)

1 . A method, implemented by one or more computers, of controlling an agent to take actions in an environment to perform a task, the method comprising:

maintaining a value function neural network configured to process an observation at a time step to generate an estimate of a value function representing the value of the state of the environment at the time step;

maintaining an advantage function neural network configured to process an observation at a time step to generate, for one or more of a plurality of possible actions, an advantage value that is an estimate of a state-action advantage function representing a relative advantage of performing one of the possible actions in the state of the environment at the time step relative to the other possible actions; and

using the advantage function neural network to control the agent to take actions in the environment to perform the task;

the method further comprising:

obtaining training data comprising, for each of a plurality of time steps, a tuple defining: an observation characterizing a state of an environment at a time step, an action taken by an agent at the time step, a reward received in response to the action, and a subsequent observation characterizing the state of the environment at a subsequent time step; and, for each of a plurality of the tuples, either

i) training the value function neural network using the observation in the tuple and a value target dependent on the reward received; and

training the advantage function neural network using the observation and action in the tuple and an advantage target comprising a difference between the value target for the tuple and an estimated value of the state of the environment for the observation in the tuple; or

ii) training the value function neural network and the advantage function neural network using the observation and action in the tuple and a behavior dueling target dependent on a difference between a Q-value derived from the value and advantage value for the observation and action in the tuple and a Q-value target derived from the reward received; and

wherein either i) one or both of the value target and the advantage target, or ii) the Q-value, are corrected for a behavior policy of the agent, wherein the behavior policy is defined by a distribution of actions taken by the agent in the training data.

2 . The method of claim 1 wherein using the advantage function neural network to control the agent to take actions in the environment to perform the task comprises:

obtaining an observation characterizing the state of the environment at a time step;

processing the observation using the value function neural network to determine a value of the state of the environment at the time step;

processing the observation using the state-action advantage function neural network to determine, for one or more of a plurality of possible actions at the time step, an advantage value of the possible action;

optionally determining one or more Q-values for each of the one or more possible actions at the time step by summing the value at the time step and an advantage for each of the one or more possible actions derived from the respective advantage value for the possible action; and

using the one or more advantage values or the one or more Q-values to select an action to be taken by the agent and, in response to the selected action, receiving a reward.

3 . The method of claim 1 , further comprising:

maintaining a behavior policy neural network configured to process an observation at a time step to generate a behavior policy output representing the probability of an action being selected according to the behavior policy; and

correcting one or both of the value target and the advantage target based on the behavior policy output.

4 . The method of claim 3 , wherein maintaining the behavior policy neural network includes:

updating the behavior policy neural network by training the behavior policy neural network using the actions selected to be taken by the agent.

5 . The method of claim 1 , wherein correcting the value target based on the behavior policy of the agent comprises:

subtracting, from the value target, an estimate of a state-action advantage for an action, determined according to the behavior policy, for the subsequent observation in the tuple.

6 . The method of claim 1 , wherein correcting the advantage target based on the behavior policy of the agent comprises:

subtracting, from the advantage target, an estimate of a state-action advantage for an action, determined according to the behavior policy, for the subsequent observation in the tuple.

7 . The method of claim 2 , wherein the advantage for a possible action is equal to the advantage value for the possible action.

8 . The method of claim 2 , wherein deriving the advantage for a possible action comprises:

subtracting, from the advantage value for the possible action, a weighted sum of the advantage values for each of the possible actions, wherein the advantage value of each possible action is weighted by a respective probability of the possible action according to the behavior policy.

9 . The method of claim 8 , comprising training the value function neural network and the advantage function neural network based on a difference between the Q-value target and a sum of the value for the observation in the tuple and the advantage for the observation and action in the tuple.

10 . The method of claim 8 , further comprising:

maintaining a behavior policy neural network configured to process an observation at a time step to generate a behavior policy output representing the probability of an action being selected according to the behavior policy; and

correcting one or both of the value target and the advantage target based on the behavior policy output; and

determining the respective probability of the possible action according to the behavior policy from the behavior policy output.

11 . The method of claim 1 , further comprising correcting both the value target and the advantage target for the behavior policy of the agent.

12 . The method of claim 1 , wherein obtaining training data comprises:

maintaining buffer memory storing the tuples; and

adding tuples into the buffer memory based on observations of the environment, selected actions, and rewards obtained as the agent is controlled to take actions in the environment to perform the task.

13 . The method of claim 2 , wherein the advantage function neural network is configured to process an observation at a time step to generate an estimate of the state-action advantage function for each of the plurality of possible actions; the method further comprising:

processing the observation obtained at the time step using the state-action advantage function neural network to determine, for each of the plurality of possible actions at the time step, an advantage value of the possible action; and

optionally determining a Q-value for each of the one or more possible actions at the time step;

wherein using the one or more advantage values or the one or more Q-values to select an action to be taken by the agent comprises selecting the action based on the advantage value or Q-value for each of the possible actions.

14 . The method of claim 2 , wherein the advantage function neural network is configured to process an observation and an action at a time step to generate an estimate of the state-action advantage function for the action; the method further comprising:

processing observations of the environment using an action selection policy neural network, defining an action selection policy, to generate an action selection output used to select the actions performed by the agent in the environment; and

wherein using the one or more advantage values or the one or more Q-values to select an action to be taken by the agent comprises training the action selection policy neural network using either the advantage values or the Q-values.

15 . The method of claim 14 , wherein training the action selection policy neural network comprises:

using the Q-values to obtain an improved version of the action selection policy; and

training the action selection policy neural network using an objective based on the improved version of the action selection policy.

16 . The method of claim 1 , wherein the value target comprises a temporal difference value target based on a sum of the reward and a product of a discount factor and one or more Q-values for the subsequent observation; and wherein the advantage target comprises a temporal difference advantage target based on the temporal difference value target.

17 . The method of claim 16 , further comprising maintaining a target value function neural network and a target advantage function neural network that each have the same architecture as the respective value function neural network and advantage function neural network but have parameter values that are constrained to change more slowly than the respective value function neural network and advantage function neural network during training; and wherein the value target and the advantage target are determined using the target value function neural network and the target advantage function neural network respectively.

18 . The method of claim 1 , wherein the value of the state of the environment at the time step and the advantage value of the possible action are both determined without maintaining a Q-value neural network that is configured to process an observation to generate a Q-value.

19 . One or more computer-readable storage media storing instructions that when executed by one or more computers cause the one or more computers to perform operations for controlling an agent to take actions in an environment to perform a task, the operations comprising:

maintaining a value function neural network configured to process an observation at a time step to generate an estimate of a value function representing the value of the state of the environment at the time step;

maintaining an advantage function neural network configured to process an observation at a time step to generate, for one or more of a plurality of possible actions, an advantage value that is an estimate of a state-action advantage function representing a relative advantage of performing one of the possible actions in the state of the environment at the time step relative to the other possible actions; and

using the advantage function neural network to control the agent to take actions in the environment to perform the task;

the method further comprising:

obtaining training data comprising, for each of a plurality of time steps, a tuple defining: an observation characterizing a state of an environment at a time step, an action taken by an agent at the time step, a reward received in response to the action, and a subsequent observation characterizing the state of the environment at a subsequent time step; and, for each of a plurality of the tuples, either

i) training the value function neural network using the observation in the tuple and a value target dependent on the reward received; and

training the advantage function neural network using the observation and action in the tuple and an advantage target comprising a difference between the value target for the tuple and an estimated value of the state of the environment for the observation in the tuple; or

ii) training the value function neural network and the advantage function neural network using the observation and action in the tuple and a behavior dueling target dependent on a difference between a Q-value derived from the value and advantage value for the observation and action in the tuple and a Q-value target derived from the reward received; and

wherein either i) one or both of the value target and the advantage target, or ii) the Q-value, are corrected for a behavior policy of the agent, wherein the behavior policy is defined by a distribution of actions taken by the agent in the training data.

20 . A system comprising one or more computers and one or more storage devices storing instructions that when executed by one or more computers cause the one or more computers to perform operations for controlling an agent to take actions in an environment to perform a task, the operations comprising:

maintaining a value function neural network configured to process an observation at a time step to generate an estimate of a value function representing the value of the state of the environment at the time step;

maintaining an advantage function neural network configured to process an observation at a time step to generate, for one or more of a plurality of possible actions, an advantage value that is an estimate of a state-action advantage function representing a relative advantage of performing one of the possible actions in the state of the environment at the time step relative to the other possible actions; and

using the advantage function neural network to control the agent to take actions in the environment to perform the task;

the method further comprising:

obtaining training data comprising, for each of a plurality of time steps, a tuple defining: an observation characterizing a state of an environment at a time step, an action taken by an agent at the time step, a reward received in response to the action, and a subsequent observation characterizing the state of the environment at a subsequent time step; and, for each of a plurality of the tuples, either

i) training the value function neural network using the observation in the tuple and a value target dependent on the reward received; and

training the advantage function neural network using the observation and action in the tuple and an advantage target comprising a difference between the value target for the tuple and an estimated value of the state of the environment for the observation in the tuple; or

ii) training the value function neural network and the advantage function neural network using the observation and action in the tuple and a behavior dueling target dependent on a difference between a Q-value derived from the value and advantage value for the observation and action in the tuple and a Q-value target derived from the reward received; and

wherein either i) one or both of the value target and the advantage target, or ii) the Q-value, are corrected for a behavior policy of the agent, wherein the behavior policy is defined by a distribution of actions taken by the agent in the training data.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 6, 2025
From: DEEPMIND TECHNOLOGIES LIMITED
To: GDM HOLDING LLC
Reel/Frame 071498/0210 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 15, 2024
From: TANG, YUNHAO; MUNOS, REMI; ROWLAND, MARK DANIEL; VALKO, MICHAL
To: DEEPMIND TECHNOLOGIES LIMITED
Reel/Frame 066472/0446 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2024
From: TANG, YUNHAO; MUNOS, REMI; ROWLAND, MARK DANIEL; VALKO, MICHAL
To: DEEPMIND TECHNOLOGIES LIMITED
Reel/Frame 066294/0159 →