IP Library Granted Patent US 12,699,878
Granted Patent B2
US 12,699,878 · App. 17/794,780 · Granted Aug 4, 2026

Generating implicit plans for accomplishing goals in an environment using attention operations over planning embeddings

Inventors: Samuel Ritter (London, GB); Ryan Faulkner (London, GB); David Nunes Raposo (London, GB)
Assignee: GDM Holding LLC
G06N3/045G06N3/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 12,699,878
App. No.
17/794,780
Filed
Jul 22, 2022
Granted
Aug 4, 2026
Kind
B2
Art Unit
2141
USPC
706/12
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 to accomplish a goal. In one aspect, a method comprises: generating a respective planning embedding corresponding to each of multiple experience tuples in an external memory, wherein each experience tuple characterizes interaction of the agent with the environment at a respective previous time step; processing the planning embeddings using a planning neural network to generate an implicit plan for accomplishing the goal; and selecting the action to be performed by the agent at the time step using the implicit plan.

Claims (72)

1 . A method performed by one or more data processing apparatus for selecting actions to be performed by an agent interacting with an environment to accomplish a goal, the method comprising:

receiving data identifying a task to be performed by the agent, wherein the task comprises causing a state of the environment to transition into a goal state;

generating a representation of the goal state;

generating a respective planning embedding corresponding to each of multiple experience tuples in an external memory, wherein each experience tuple characterizes an interaction of the agent with the environment at a respective previous time step, wherein generating the planning embeddings for the experience tuples comprises:

appending the same generated representation of the goal state of the environment to each of the experience tuples;

generating an implicit plan for accomplishing the goal by processing, using a planning neural network, (i) the planning embeddings, and (ii) a current observation characterizing a current state of the environment; and

selecting the action to be performed by the agent at the time step using the implicit plan, wherein:

(i) the agent is a mechanical agent, and the actions include control signals for actions taken by the mechanical agent in the environment to accomplish the goal, or

(ii) the environment includes items of equipment in a plant or facility and the agent controls actions in the environment, the actions controlling or imposing operating conditions on the items of equipment of the plant/facility, or

(iii) the agent manages distribution of tasks across computing resources in the environment, and the actions include assigning tasks to particular computing resources.

2 . The method of claim 1 , wherein processing the planning embeddings using a planning neural network to generate an implicit plan for accomplishing the goal comprises:

iteratively updating the planning embeddings, comprising, at each of a plurality of iterations, updating each planning embedding using attention over the planning embeddings; and

generating the implicit plan using the planning embeddings.

3 . The method of claim 2 , further comprising generating a respective static embedding corresponding to each of multiple experience tuples in the external memory;

wherein iteratively updating the planning embeddings further comprises, at each of the plurality of iterations:

updating each planning embedding using attention over the static embeddings.

4 . The method of claim 3 , wherein:

generating a respective planning embedding corresponding to each of multiple experience tuples in the external memory comprises:

generating a respective planning embedding only for experience tuples in the external memory characterizing interaction of the agent with the environment over a predetermined number of most recent time steps; and

generating a respective static embedding corresponding to each of multiple experience tuples in the external memory comprises:

generating a respective static embedding for every experience tuple in the external memory.

5 . The method of claim 2 , wherein updating each planning embedding using attention over the planning embeddings comprises:

processing the planning embeddings using a residual neural network block that is configured to apply a sequence of operations to the planning embeddings, the sequence of operations comprising: (i) a layer normalization operation, (ii) an attention operation, and (iii) a linear projection operation.

6 . The method of claim 5 , wherein the attention operation comprises a multi-head key-query-value attention operation over the planning embeddings.

7 . The method of claim 2 , wherein generating the implicit plan using the planning embeddings comprises:

generating the implicit plan based on: (i) the planning embeddings, and (ii) a current observation characterizing a current state of the environment.

8 . The method of claim 7 , wherein generating the implicit plan based on: (i) the planning embeddings, and (ii) a current observation characterizing a current state of the environment comprises:

for each planning embedding:

appending a representation of the current observation to the planning embedding to generate a combined embedding; and

processing the combined embedding by one or more neural network layers to generate a transformed embedding; and

generating the implicit plan based on the transformed embeddings.

9 . The method of claim 8 , wherein generating the implicit plan based on the transformed embeddings comprises:

generating the implicit plan by applying a pooling operation to the transformed embeddings.

10 . The method of claim 9 , wherein the pooling operation is a feature-wise max pooling operation.

11 . The method of claim 1 , wherein selecting the action to be performed by the agent at the time step using the implicit plan comprises:

processing an input comprising the implicit plan using an action selection neural network to generate an action selection output; and

selecting the action based on the action selection output.

12 . The method of claim 11 , wherein the action selection output comprises a respective score for each action in a set of possible actions that can be performed by the agent, and selecting the action based on the action selection output comprises sampling an action in accordance with the action scores.

13 . The method of claim 11 , wherein the action selection neural network and the planning neural network are trained using reinforcement learning techniques to maximize a cumulative measure of reward received by the agent by interacting with the environment.

14 . The method of claim 1 , wherein each experience tuple comprises: (i) a representation of an observation characterizing a state of the environment at the respective previous time step, (ii) a representation of an action performed by the agent at the respective previous time step, and (iii) a representation of an observation characterizing the state of the environment after the agent performed the action at the respective previous time step.

15 . The method of claim 1 , further comprising, after selecting the action to be performed by the agent at the time step using the implicit plan, storing an experience tuple in the external memory that characterizes interaction of the agent with the environment at a current time step.

16 . 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 accomplish a goal, the operations comprising:

receiving data identifying a task to be performed by the agent, wherein the task comprises causing a state of the environment to transition into a goal state;

generating a representation of the goal state;

generating a respective planning embedding corresponding to each of multiple experience tuples in an external memory, wherein each experience tuple characterizes an interaction of the agent with the environment at a respective previous time step, wherein generating the planning embeddings for the experience tuples comprises:

appending the same generated representation of the goal state of the environment to each of the experience tuples;

generating an implicit plan for accomplishing the goal by processing, using a planning neural network, (i) the planning embeddings, and (ii) a current observation characterizing a current state of the environment; and

selecting the action to be performed by the agent at the time step using the implicit plan, wherein:

(i) the agent is a mechanical agent, and the actions include control signals for actions taken by the mechanical agent in the environment to accomplish the goal, or

(ii) the environment includes items of equipment in a plant or facility and the agent controls actions in the environment, the actions controlling or imposing operating conditions on the items of equipment of the plant/facility, or

(iii) the agent manages distribution of tasks across computing resources in the environment, and the actions include assigning tasks to particular computing resources.

17 . 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 accomplish a goal, the operations comprising:

receiving data identifying a task to be performed by the agent, wherein the task comprises causing a state of the environment to transition into a goal state;

generating a representation of the goal state;

generating a respective planning embedding corresponding to each of multiple experience tuples in an external memory, wherein each experience tuple characterizes an interaction of the agent with the environment at a respective previous time step, wherein generating the planning embeddings for the experience tuples comprises:

appending the same generated representation of the goal state of the environment to each of the experience tuples;

generating an implicit plan for accomplishing the goal by processing, using a planning neural network, (i) the planning embeddings, and (ii) a current observation characterizing a current state of the environment; and

selecting the action to be performed by the agent at the time step using the implicit plan, wherein:

(i) the agent is a mechanical agent, and the actions include control signals for actions taken by the mechanical agent in the environment to accomplish the goal, or

(ii) the environment includes items of equipment in a plant or facility and the agent controls actions in the environment, the actions controlling or imposing operating conditions on the items of equipment of the plant/facility, or

(iii) the agent manages distribution of tasks across computing resources in the environment, and the actions include assigning tasks to particular computing resources.

18 . The non-transitory computer storage media of claim 17 , wherein processing the planning embeddings using a planning neural network to generate an implicit plan for accomplishing the goal comprises:

iteratively updating the planning embeddings, comprising, at each of a plurality of iterations, updating each planning embedding using attention over the planning embeddings; and

generating the implicit plan using the planning embeddings.

19 . The non-transitory computer storage media of claim 17 , the operations further comprising generating a respective static embedding corresponding to each of multiple experience tuples in the external memory;

wherein iteratively updating the planning embeddings further comprises, at each of the plurality of iterations:

updating each planning embedding using attention over the static embeddings.

20 . The non-transitory computer storage media of claim 19 , the operations further comprising generating a respective static embedding corresponding to each of multiple experience tuples in the external memory;

wherein iteratively updating the planning embeddings further comprises, at each of the plurality of iterations:

updating each planning embedding using attention over the static embeddings.

Assignments (2)
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 Aug 10, 2022
From: RITTER, SAMUEL; FAULKNER, RYAN; RAPOSO, DAVID NUNES
To: DEEPMIND TECHNOLOGIES LIMITED
Reel/Frame 060773/0527 →
Continuity (2)
Provisional Application 62971444 · Feb 7, 2020
Related Publication 20230101930A1 · Mar 30, 2023
References Cited (41)
US 20170024643A1 · Lillicrap · 2017 [cited by examiner]
US 20190354885A1 · Li · 2019 [cited by examiner]
CN 108027897A · 2018 [cited by applicant]
CN 108701252A · 2018 [cited by applicant]
CN 110546653A · 2019 [cited by applicant]
Kuan Fang et al. “Scene Memory Transformer for Embodied Agents in Long-Horizon Tasks” (Year: 2019). [cited by examiner]
Kuan Fang et al. âScene Memory Transformer for Embodied Agents in Long-Horizon Tasksâ (Year: 2019). [cited by examiner]
Office Action in Chinese Appln. No. 202180013484.1, mailed on May 9, 2025, 28 pages (with English translation). [cited by applicant]
Ba et al., “Layer Normalization” Submitted on Jul. 2016, arXiv:1607:06450v1, 14 pages. [cited by applicant]
Borsa et al., “Universal successor features approximators.” Submitted on Dec. 2018, arXiv:1812.07626v1, 24 pages. [cited by applicant]
Botvinick et al., “Reinforcement learning, fast and slow.” Trends in cognitive sciences 23.5, May 2019, 408-422. [cited by applicant]
Dayan, “Improving generalization for temporal difference learning: The successor representation.” Neural computation 5.4, Jul. 1993, 613-624. [cited by applicant]
Duan et al., “R1 ∧: Fast reinforcement learning via slow reinforcement learning.” Submitted on Nov. 2016, arXiv:1611.02779v2, 14 pages. [cited by applicant]
Fang et al. “Scene Memory Transformer for Embodied Agents in Long-Horizon Tasks” Submitted on Mar. 2019, arXiv:1903.03878v1, 15 pages. [cited by applicant]
Finn et al., “Model-agnostic meta-learning for fast adaptation of deep networks.” International conference on machine learning. PMLR, Jul. 2017, 10 pages. [cited by applicant]
Fortunato et al., “Generalization of reinforcement learners with working and episodic memory.” Advances in neural information processing systems 32, 2019, 10 pages. [cited by applicant]
Foster et al., “Structure in the space of value functions.” Machine Learning 49, Nov. 2002, 325-346. [cited by applicant]
Gregor et al., “Shaping belief states with generative environment models for rl.” Advances in Neural Information Processing Systems 32, 2019, 13 pages. [cited by applicant]
Guez et al., “An investigation of model-free planning.” Submitted on Jan. 2019, arXiv:1901.03559v1, 20 pages. [cited by applicant]
Gupta et al., “Cognitive mapping and planning for visual navigation.” Proceedings of the IEEE conference on computer vision and pattern recognition, 2017, 10 pages. [cited by applicant]
International Preliminary Report on Patentability in International Appln. No. PCT/EP2021/052983, mailed on Aug. 18, 2022, 10 pages. [cited by applicant]
International Search Report and Written Opinion in International Appln. No. PCT/EP2021/052983, mailed on May 20, 2021, 16 pages. [cited by applicant]
Kool et al., “Attention, learn to solve routing problems!” Submitted on Feb. 2019, arXiv:1803.08475, 25 pages. [cited by applicant]
Lake et al., “Building machines that learn and think like people.” Submitted on Nov. 2016, arXiv:1604.00289v3, 58 pages. [cited by applicant]
Lee et al., “Gated path planning networks.” Submitted on Jun. 2018, arXiv:1806.06408v1, 12 pages. [cited by applicant]
Lee et al., “Set transformer: A framework for attention-based permutation-invariant neural networks.” International conference on machine learning. PMLR, May 2019, 10 pages. [cited by applicant]
Mirowski et al., “Learning to navigate in cities without a map.” Advances in neural information processing systems 31, 2018, 12 pages. [cited by applicant]
Mirowski et al., “The streetlearn environment and dataset” Submitted on Mar. 2019, arXiv:1903.01292v1, 13 pages. [cited by applicant]
Oh et al., “Control of memory, active perception, and action in minecraft.” Submitted on May 2016, arXiv:1605.09128v1, 22 pages. [cited by applicant]
Ritter et al., “Been there, done that: Meta-learning with episodic recall.” Submitted on Jul. 2018, arXiv:1805.09692v2, 10 pages. [cited by applicant]
Savinov et al., “Semi-parametric topological memory for navigation.” Submitted on Mar. 2018, arXiv:1803.00653v1, 16 pages. [cited by applicant]
Schaul et al., “Universal value function approximators” In International Conference on Machine Learning, Jun. 2015, 9 pages. [cited by applicant]
Schrittwieser et al., “Mastering atari, go, chess and shogi by planning with a learned model.” Submitted on Feb. 2020, arXiv:1911.08265v2, 21 pages. [cited by applicant]
Sutton et al., “Horde: A scalable real-time architecture for learning knowledge from unsupervised sensorimotor interaction.” The 10th International Conference on Autonomous Agents and Multiagent Systems—vol. 2, May 2011… [cited by applicant]
Sutton et al., “Introduction to reinforcement learning” vol. 2. MIT press Cambridge, 1998, 548 pages. [cited by applicant]
Tamar et al., “Value iteration networks.” Advances in neural information processing systems 29, 2016, 9 pages. [cited by applicant]
Vaswani et al., “Attention is all you need” Submitted on Jul. 2023, arXiv:1706.03762v6, 15 pages. [cited by applicant]
Vinyals et al., “Matching networks for one shot learning” In Advances in neural information processing systems, 2016, 9 pages. [cited by applicant]
Wang et al., “Learning to reinforcement learn” Submitted on Jan. 2017, arXiv:1611.05763v3, 17 pages. [cited by applicant]
Wayne et al., “Unsupervised predictive memory in a goal-directed agent.” Submitted on Mar. 2018, arXiv:1803.10760v1, 57 pages. [cited by applicant]
Weber et al., “Imagination-augmented agents for deep reinforcement learning” Submitted on Feb. 2018, arXiv:1707.06203v2, 20 pages. [cited by applicant]