IP Library Granted Patent US 12,617,096
Granted Patent B2
US 12,617,096 · App. 18/695,751 · Granted May 5, 2026

Coordination of multiple robots using graph neural networks

Inventors: Matthew Lai (London, GB); Jonathan Karl Scholz (London, GB); Jose Enrique Chen (London, GB)
Assignee: GDM Holding LLC
B25J9/1682B25J9/161B25J9/1666
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,617,096
App. No.
18/695,751
Granted
May 5, 2026
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for controlling a plurality of robots. One of the methods includes: obtaining state data representing a current state of the environment; generating, from the state data, graph data representing a graph of the current state of the environment; processing the graph data using a graph neural network to generate a graph output that comprises a respective updated feature representation for each of the robot nodes in the graph; and selecting, based on the graph output, a respective action to be performed by each of the robots.

Claims (44)

1 . A method performed by one or more computers and for controlling a plurality of robots to cause the robots to move to a plurality of target locations in an environment, the method comprising repeatedly performing the following operations:

obtaining state data representing a current state of the environment;

generating, from the state data, graph data representing a graph of the current state of the environment, the graph comprising a plurality of nodes and a plurality of edges, wherein each edge connects a respective pair of nodes from the plurality of nodes, wherein the plurality of nodes comprises a respective robot node for each of the robots and a respective target node for each of the target locations, wherein the graph includes one or more edges between at least one of the robot nodes and at least one of the target nodes, and wherein the graph data comprises a respective initial feature representation for each of the robot nodes and for each of the target nodes;

processing the graph data using a graph neural network to generate a graph output that comprises a respective updated feature representation for each of the robot nodes;

selecting, based on the graph output, a respective action to be performed by each of the robots; and

controlling at least one of the robots using the selected actions.

2 . The method of claim 1 , wherein the environment includes one or more obstacles, wherein the graph comprises a respective obstacle node for each of the one or more obstacles, and wherein the graph data comprises a respective initial feature representation for each of the obstacle nodes.

3 . The method of claim 2 , wherein the graph includes edges between each robot node and each obstacle node.

4 . The method of claim 3 , wherein the graph does not include any edges between any two obstacle nodes.

5 . The method of claim 3 , wherein the graph does not include any edges between any obstacle node and any target node in the graph.

6 . The method of claim 1 , wherein the graph includes edges between each robot node and each other robot node.

7 . The method of claim 1 , wherein the graph includes edges between each robot node and each target node.

8 . The method of claim 1 , wherein the graph does not include any edges between any two target nodes.

9 . The method of claim 1 , wherein the graph data comprises edge data representing the edges in the graph.

10 . The method of claim 9 , wherein the graph neural network includes one or more graph layers, each of the graph layers configured to update, for any given node, the feature representation for the given node based only on feature representations for nodes that are connected to the node by an edge in the graph.

11 . The method of claim 1 , wherein selecting the respective action to be performed by each of the robots comprises:

predicting the respective action by processing the graph output.

12 . The method of claim 1 , wherein selecting the respective action to be performed by each of the robots comprises:

performing one or more planning iterations using the graph output to generate plan data; and

selecting actions using the plan data.

13 . 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 the operations of the respective method of claim 1 .

14 . A method performed by one or more computers and for controlling a plurality of robots to cause the robots to perform a task that involves moving to a plurality of target locations in an environment, the method comprising repeatedly performing the following operations:

performing a plurality of planning iterations starting from a current state of the environment to generate plan data, wherein performing each planning iteration comprises:

traversing through states of the environment starting from the current state until a leaf state of the environment is reached;

generating, from state data characterizing the leaf state, graph data representing a graph of the leaf state of the environment, the graph comprising a plurality of nodes and a plurality of edges, wherein each edge connects a respective pair of nodes from the plurality of nodes, wherein the plurality of nodes comprises a respective robot node for each of the robots and a respective target node for each of the target locations, wherein the graph includes one or more edges between at least one of the robot nodes and at least one of the target nodes, and wherein the graph data comprises a respective initial feature representation for each of the robot nodes and for each of the target nodes;

processing the graph data using a graph neural network to generate a graph output that comprises a respective updated feature representation for each of the robot nodes;

generating, from the graph output, an update to the plan data; and

updating the plan data using the generated update;

after performing the plan data, selecting an action using the plan data; and

controlling at least one of the robots using the selected actions.

15 . The method of claim 14 , wherein generating, from the graph output, an update to the plan data comprises:

generating a summary feature of the leaf state from the graph output; and

processing the summary feature using a value prediction neural network to predict a value score that represents a predicted value of being in the leaf state to successfully completing the task.

16 . The method of claim 14 , wherein generating, from the graph output, an update to the plan data comprises, for each robot node:

processing the updated feature representation for the robot node using a policy neural network to generate a policy output that defines a probability distribution over a set of possible actions to be performed by the corresponding robot node when the environment is in the leaf state.

17 . The one or more computers of claim 14 comprising one or more storage devices storing instructions that when executed by the one or more computers, cause the one or more computers to perform the operations of claim 14 .

18 . A system comprising:

one or more computers; and

one or more storage devices storing instructions that when executed by the one or more computers, cause the one or more computers to perform the operations comprising:

obtaining state data representing a current state of the environment;

generating, from the state data, graph data representing a graph of the current state of the environment, the graph comprising a plurality of nodes and a plurality of edges, wherein each edge connects a respective pair of nodes from the plurality of nodes, wherein the plurality of nodes comprises a respective robot node for each of the robots and a respective target node for each of the target locations, wherein the graph includes one or more edges between at least one of the robot nodes and at least one of the target nodes, and wherein the graph data comprises a respective initial feature representation for each of the robot nodes and for each of the target nodes;

processing the graph data using a graph neural network to generate a graph output that comprises a respective updated feature representation for each of the robot nodes;

selecting, based on the graph output, a respective action to be performed by each of the robots; and

controlling at least one of the robots using the selected actions.

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 May 3, 2024
From: LAI, MATTHEW; SCHOLZ, JONATHAN KARL; CHEN, JOSE ENRIQUE
To: DEEPMIND TECHNOLOGIES LIMITED
Reel/Frame 067311/0703 →
Continuity (2)
Provisional Application 63252799 · Oct 6, 2021
Related Publication 20250128419A1 · Apr 24, 2025
References Cited (18)
US 10217074B1 · Stallman · 2019 [cited by examiner]
US 20200143239A1 · Simonyan et al. · 2020 [cited by applicant]
US 20200398428A1 · Murray et al. · 2020 [cited by applicant]
US 20210192358A1 · Song et al. · 2021 [cited by applicant]
US 20220143836A1 · Yokota · 2022 [cited by examiner]
US 20220197288A1 · Zhao · 2022 [cited by examiner]
WO WO2021152515 · 2021 [cited by applicant]
International Preliminary Report on Patentability in International Appln. No. PCT/EP2022/075656, dated Apr. 18, 2024, 13 pages. [cited by applicant]
International Search Report and Written Opinion in International Appln. No. PCT/EP2022/075656, dated Jan. 18, 2023, 19 pages. [cited by applicant]
Khan et al., “Graph neural networks for motion planning,” CoRR, Jun. 11, 2020, arXiv:2006.06248v1, 12 pages. [cited by applicant]
Kocsis et al., “Bandit based monte-carlo planning,” European Conference on Machine-Learning, 2006, pp. 282-293. [cited by applicant]
Li et al., “Graph neural networks for decentralized multi-robot path planning,” 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems, Oct. 24, 2020, pp. 11785-11792. [cited by applicant]
Silver et al., “Mastering the game of go without human knowledge,” Nature, Oct. 19, 2017, 550:354-359. [cited by applicant]
Zhou et al., “Graph neural networks: A Review of methods and applications,” AI Open, Apr. 8, 2021, 1:57-81. [cited by applicant]
Office Action in Japanese Appln. No. 2024-521012, mailed on Apr. 22, 2025, 5 pages (with English translation). [cited by applicant]
Notice of Allowance in Japanese Appln. No. 2024-521012, mailed on Aug. 5, 2025, 5 pages (with English translation). [cited by applicant]
Office Action in Korean Appln. No. 10-2024-7010268, mailed on Feb. 9, 2026, 38 pages (with English translation). [cited by applicant]
Qingbiao et al., “Graph Neural Networks for Decentralized Multi-Robot Path Planning,” CoRR, submitted on Jul. 14, 2020, arXiv: 1912.06095v2, 8 pages. [cited by applicant]