Multi-agent coordination under sparse networking
First Claim
1. A method comprising:
- receiving, by a first robotic device, a first time-parameterized path for the first robotic device, wherein the first time-parameterized path comprises a first timeline of expected locations of the first robotic device;
receiving, by the first robotic device, an indication of a second robotic device having a second time-parameterized path that overlaps with the first time-parameterized path at a first location, wherein the second time-parameterized path comprises a second timeline of expected locations of the second robotic device;
executing, by the first robotic device, a first portion of the first time-parameterized path before reaching the first location, wherein execution of the first portion corresponds to a first rate of progress of the first robotic device along the first time-parameterized path;
receiving, by the first robotic device, a communication signal from the second robotic device indicating a second rate of progress of the second robotic device along the second time-parameterized path;
determining a difference in progress compared to a coordinated timeline between the first rate of progress and the second rate of progress; and
modifying, by the first robotic device, execution of the first time-parameterized path based on the determined difference in order to avoid a collision between the first robotic device and the second robotic device at the first location.
3 Assignments
0 Petitions
Accused Products
Abstract
A method includes receiving a first time-parameterized path for the first robotic device, and an indication of a second robotic device having a second time-parameterized path that overlaps with the first time-parameterized path at a first location. The method also includes executing, by the first robotic device, a first portion of the first time-parameterized path before reaching the first location, wherein execution of the first portion corresponds to a first rate of progress of the first robotic device along the first time-parameterized path. The first robotic device then receives a communication signal from the second robotic device indicating a second rate of progress of the second robotic device along the second time-parameterized path. The method then includes the first robotic device determining a difference between the first rate of progress and the second rate of progress, and modifying execution of the first time-parameterized path based on the determined difference.
39 Citations
19 Claims
-
1. A method comprising:
-
receiving, by a first robotic device, a first time-parameterized path for the first robotic device, wherein the first time-parameterized path comprises a first timeline of expected locations of the first robotic device; receiving, by the first robotic device, an indication of a second robotic device having a second time-parameterized path that overlaps with the first time-parameterized path at a first location, wherein the second time-parameterized path comprises a second timeline of expected locations of the second robotic device; executing, by the first robotic device, a first portion of the first time-parameterized path before reaching the first location, wherein execution of the first portion corresponds to a first rate of progress of the first robotic device along the first time-parameterized path; receiving, by the first robotic device, a communication signal from the second robotic device indicating a second rate of progress of the second robotic device along the second time-parameterized path; determining a difference in progress compared to a coordinated timeline between the first rate of progress and the second rate of progress; and modifying, by the first robotic device, execution of the first time-parameterized path based on the determined difference in order to avoid a collision between the first robotic device and the second robotic device at the first location. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system comprising:
-
a first robotic device; and a second robotic device, wherein the first robotic device is configured to; receive a first time-parameterized path for the first robotic device, wherein the first time-parameterized path comprises a first timeline of expected locations of the first robotic device; receive an indication of a second robotic device having a second time-parameterized path that overlaps with the first time-parameterized path at a first location, wherein the second time-parameterized path comprises a second timeline of expected locations of the second robotic device; execute a first portion of the first time-parameterized path before reaching the first location, wherein execution of the first portion corresponds to a first rate of progress of the first robotic device along the first time-parameterized path; receive a communication signal from the second robotic device indicating a second rate of progress of the second robotic device along the second time-parameterized path; determine a difference in progress compared to a coordinated timeline between the first rate of progress and the second rate of progress; and modify execution of the first time-parameterized path based on the determined difference in order to avoid a collision between the first robotic device and the second robotic device at the first location. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A non-transitory, computer-readable medium having instructions stored thereon that when executed, cause performance of a set of acts comprising:
-
receiving a first time-parameterized path for the first robotic device, wherein the first time-parameterized path comprises a first timeline of expected locations of the first robotic device; receiving an indication of a second robotic device having a second time-parameterized path that overlaps with the first time-parameterized path at a first location, wherein the second time-parameterized path comprises a second timeline of expected locations of the second robotic device; executing a first portion of the first time-parameterized path before reaching the first location, wherein execution of the first portion corresponds to a first rate of progress of the first robotic device along the first time-parameterized path; receiving a communication signal from the second robotic device indicating a second rate of progress of the second robotic device along the second time-parameterized path; determining a difference in progress compared to a coordinated timeline between the first rate of progress and the second rate of progress; and modifying execution of the first time-parameterized path based on the determined difference in order to avoid a collision between the first robotic device and the second robotic device at the first location. - View Dependent Claims (18, 19)
-
Specification