IP Library Granted Patent US 11,893,480
Granted Patent B1
US 11,893,480 · App. 16/289,531 · Granted Feb 6, 2024

Reinforcement learning with scheduled auxiliary control

Inventors: Martin Riedmiller (Balgheim, DE); Roland Hafner (Balgheim, DE)
Assignee: DeepMind Technologies Limited
G06N3/08G06N3/04G06N7/01
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,893,480
App. No.
16/289,531
Granted
Feb 6, 2024
Kind
B1
Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for reinforcement learning with scheduled auxiliary tasks. In one aspect, a method includes maintaining data specifying parameter values for a primary policy neural network and one or more auxiliary neural networks; at each of a plurality of selection time steps during a training episode comprising a plurality of time steps: receiving an observation, selecting a current task for the selection time step using a task scheduling policy, processing an input comprising the observation using the policy neural network corresponding to the selected current task to select an action to be performed by the agent in response to the observation, and causing the agent to perform the selected action.

Claims (143)

1. A method of training a primary policy neural network used to select actions performed by an agent interacting with an environment to cause the agent to perform a primary task, the method comprising:

maintaining data specifying parameter values for the primary policy neural network and one or more auxiliary policy neural networks, wherein each auxiliary policy neural network is configured to select actions to be performed by the agent to cause the agent to perform a respective auxiliary task that is different from the primary task;

maintaining data specifying, for each of a plurality of tasks that includes the primary task and each of the one or more auxiliary tasks, a respective reward estimate, wherein the respective reward estimate for each of the auxiliary tasks is an expected reward for the primary task that would be received after the auxiliary task is selected as a current task at a particular selection time step in a particular training episode given a sequence of one or more tasks that were selected at respective earlier selection time steps in the particular training episode;

controlling the agent during a training episode comprising a plurality of time steps,

the controlling comprising, at each of a plurality of selection time steps during the training episode:

receiving an observation characterizing a current state of the environment at the selection time step,

selecting, from the primary task and the one or more auxiliary tasks, a current task for the selection time step using a learned task scheduling policy that is applied to the respective reward estimates for the plurality of tasks in the maintained data,

identifying, from the primary policy neural network and the one or more auxiliary policy neural networks, the policy neural network that corresponds to the selected current task;

processing an input comprising the observation using the identified policy neural network corresponding to the selected current task to select an action to be performed by the agent in response to the observation,

causing the agent to perform the selected action,

in response to the agent performing the selected action, obtaining a respective reward for each of the tasks,

generating an experience tuple comprising data identifying the observation, the selected action, and the respective rewards for the each of the tasks, and

adding the experience tuple to training data for the primary policy neural network and the auxiliary policy neural networks;

updating the learned task scheduling policy using the rewards obtained during the training episode comprising, for each auxiliary task that was selected during the training episode, updating the maintained data for the auxiliary task based on rewards that were obtained for the primary task after the auxiliary task was selected during the task episode;

sampling an experience tuple from the training data; and

training each of the policy neural networks using the sampled experience tuple, comprising, for each policy neural network, training the policy neural network using the reward for the corresponding task in the sampled experience tuple.

2. The method of claim 1 , wherein updating the learned task scheduling policy using the rewards obtained during the training episode comprises:

for the respective task selected at each of the plurality of selection time steps, updating the maintained data based on the rewards for the primary task that were obtained while the task was selected.

3. The method of claim 1 , wherein the selection time steps occur at predetermined intervals during the training episode.

4. The method of claim 1 , further comprising, at each time step in the training episode that is not a selection time step, determining to perform the selected task from the selection time step that occurred most recently to the time step.

5. The method of claim 1 , wherein the primary policy neural network and the auxiliary policy neural networks share some parameters.

6. The method of claim 1 , wherein selecting the current task using the maintained data comprises:

determining, from the maintained data, a respective probability for each of the tasks; and

sampling the current task using the respective probabilities for the tasks.

7. The method of claim 6 , wherein, for each task i, the corresponding probability P S is equal to:

P

S

(

T

i

|

T

1

:

h

-

1

;

n

)

=

exp

(

Q

i

/

n

)

j

exp

(

Q

j

/

n

)

,

wherein h identifies the selection time step, T 1:h−1 represents the sequence of tasks that were selected at respective earlier selection time steps in the training episode, T i represents the selection of the task i as the current task for the selection time step, Q i is the expected reward for the primary task that would be received after the task i is selected as the current task for the selection time step given the sequence of tasks that were selected at respective earlier selection time steps in the training episode, Σ j represents a sum over each task j, and n is a constant positive value.

8. 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 of training a primary policy neural network used to select actions performed by an agent interacting with an environment to cause the agent to perform a primary task, the operations comprising:

maintaining data specifying parameter values for the primary policy neural network and one or more auxiliary policy neural networks, wherein each auxiliary policy neural network is configured to select actions to be performed by the agent to cause the agent to perform a respective auxiliary task that is different from the primary task;

maintaining data specifying, for each of a plurality of tasks that includes the primary task and each of the one or more auxiliary tasks, a respective reward estimate, wherein the respective reward estimate for each of the auxiliary tasks is an expected reward for the primary task that would be received after the auxiliary task is selected as a current task at a particular selection time step in a particular training episode given a sequence of one or more tasks that were selected at respective earlier selection time steps in the particular training episode;

controlling the agent during a training episode comprising a plurality of time steps,

the controlling comprising, at each of a plurality of selection time steps during the training episode:

receiving an observation characterizing a current state of the environment at the selection time step,

selecting, from the primary task and the one or more auxiliary tasks, a current task for the selection time step using a learned task scheduling policy that is applied to the respective reward estimates for the plurality of tasks in the maintained data,

identifying, from the primary policy neural network and the one or more auxiliary policy neural networks, the policy neural network that corresponds to the selected current task;

processing an input comprising the observation using the identified policy neural network corresponding to the selected current task to select an action to be performed by the agent in response to the observation,

causing the agent to perform the selected action,

in response to the agent performing the selected action, obtaining a respective reward for each of the tasks,

generating an experience tuple comprising data identifying the observation, the selected action, and the respective rewards for the each of the tasks, and

adding the experience tuple to training data for the primary policy neural network and the auxiliary policy neural networks;

updating the learned task scheduling policy using the rewards obtained during the training episode comprising, for each auxiliary task that was selected during the training episode, updating the maintained data for the auxiliary task based on rewards that were obtained for the primary task after the auxiliary task was selected during the task episode;

sampling an experience tuple from the training data; and

training each of the policy neural networks using the sampled experience tuple, comprising, for each policy neural network, training the policy neural network using the reward for the corresponding task in the sampled experience tuple.

9. The system of claim 8 , wherein updating the learned task scheduling policy using the rewards obtained during the training episode comprises:

for the respective task selected at each of the plurality of selection time steps, updating the maintained data based on the rewards for the primary task that were obtained while the task was selected.

10. The system of claim 8 , wherein the selection time steps occur at predetermined intervals during the training episode.

11. The system of claim 8 , further comprising, at each time step in the training episode that is not a selection time step, determining to perform the selected task from the selection time step that occurred most recently to the time step.

12. The system of claim 8 , wherein selecting the current task using the maintained data comprises:

determining, from the maintained data, a respective probability for each of the tasks; and

sampling the current task using the respective probabilities for the tasks.

13. The system of claim 12 , wherein, for each task i, the corresponding probability P S is equal to:

P

S

(

T

i

|

T

1

:

h

-

1

;

n

)

=

exp

(

Q

i

/

n

)

j

exp

(

Q

j

/

n

)

,

wherein h identifies the selection time step, T 1:h−1 represents the sequence of tasks that were selected at respective earlier selection time steps in the training episode, T i represents the selection of the task i as the current task for the selection time step, Q i is the expected reward for the primary task that would be received after the task i is selected as the current task for the selection time step given the sequence of tasks that were selected at respective earlier selection time steps in the training episode, Σ j represents a sum over each task j, and n is a constant positive value.

14. One or more non-transitory computer-readable storage media storing instructions that when executed by one or more computers cause the one or more computers to perform operations of training a primary policy neural network used to select actions performed by an agent interacting with an environment to cause the agent to perform a primary task, the operations comprising:

maintaining data specifying parameter values for the primary policy neural network and one or more auxiliary policy neural networks, wherein each auxiliary policy neural network is configured to select actions to be performed by the agent to cause the agent to perform a respective auxiliary task that is different from the primary task;

maintaining data specifying, for each of a plurality of tasks that includes the primary task and each of the one or more auxiliary tasks, a respective reward estimate, wherein the respective reward estimate for each of the auxiliary tasks is an expected reward for the primary task that would be received after the auxiliary task is selected as a current task at a particular selection time step in a particular training episode given a sequence of one or more tasks that were selected at respective earlier selection time steps in the particular training episode;

controlling the agent during a training episode comprising a plurality of time steps,

the controlling comprising, at each of a plurality of selection time steps during the training episode:

receiving an observation characterizing a current state of the environment at the selection time step,

selecting, from the primary task and the one or more auxiliary tasks, a current task for the selection time step using a learned task scheduling policy that is applied to the respective reward estimates for the plurality of tasks in the maintained data,

identifying, from the primary policy neural network and the one or more auxiliary policy neural networks, the policy neural network that corresponds to the selected current task;

processing an input comprising the observation using the identified policy neural network corresponding to the selected current task to select an action to be performed by the agent in response to the observation,

causing the agent to perform the selected action,

in response to the agent performing the selected action, obtaining a respective reward for each of the tasks,

generating an experience tuple comprising data identifying the observation, the selected action, and the respective rewards for the each of the tasks, and

adding the experience tuple to training data for the primary policy neural network and the auxiliary policy neural networks;

updating the learned task scheduling policy using the rewards obtained during the training episode comprising, for each auxiliary task that was selected during the training episode, updating the maintained data for the auxiliary task based on rewards that were obtained for the primary task after the auxiliary task was selected during the task episode;

sampling an experience tuple from the training data; and

training each of the policy neural networks using the sampled experience tuple, comprising, for each policy neural network, training the policy neural network using the reward for the corresponding task in the sampled experience tuple.

15. The one or more non-transitory computer-readable storage media of claim 14 , wherein updating the learned task scheduling policy using the rewards obtained during the training episode comprises:

for the respective task selected at each of the plurality of selection time steps, updating the maintained data based on the rewards for the primary task that were obtained while the task was selected.

16. The one or more non-transitory computer-readable storage media of claim 14 , wherein the selection time steps occur at predetermined intervals during the training episode.

17. The one or more non-transitory computer-readable storage media of claim 14 , further comprising, at each time step in the training episode that is not a selection time step, determining to perform the selected task from the selection time step that occurred most recently to the time step.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2025
From: DEEPMIND TECHNOLOGIES LIMITED
To: GDM HOLDING LLC
Reel/Frame 071109/0414 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 13, 2019
From: RIEDMILLER, MARTIN; HAFNER, ROLAND
To: DEEPMIND TECHNOLOGIES LIMITED
Reel/Frame 048581/0304 →
Cited By (1)
US 12,475,354