IP Library Granted Patent US 10,310,518
Granted Patent B2
US 10,310,518 · App. 15/260,224 · Granted Jun 4, 2019

Swarm autopilot

Inventors: Tyler MacCready (Pasadena, CA); Sankaran Ramakrishnan (Glendale, CA); Thomas Zambrano (Long Beach, CA)
Assignee: Apium Inc.
G05D1/104G05D1/0206Y10S901/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 10,310,518
App. No.
15/260,224
Granted
Jun 4, 2019
Kind
B2
Abstract

A system and method for generating an artificial topography in a distributed array of robotic agents. Each robotic agent stores, and periodically updates a parameter value or “A-value” in accordance with a process including, e.g., averaging neighboring A-values, received from close neighbor robotic agents, biasing the A-value based on external commands or measured environmental parameters, and decreasing the A-value by a cooling rate factor. Averaging among neighboring robotic agents results eventually in a globally smoothed distribution of A-values. A gradient may be estimated for the distribution of A-values, and the robotic agents may be programmed to move in the direction of the gradient, toward increasing A-values. This behavior may be employed to cause the robotic agents to follow a robotic agent with a fixed, relatively large, A-value, or, if the A-values are biased by features (e.g., gradients or steps) in environmental parameters, to converge on such features.

Claims (46)

1. A method for controlling a plurality of robotic agents, the method comprising:

storing, in each of the robotic agents, a respective first parameter value;

sending, by a first robotic agent of the plurality of robotic agents, the respective first parameter value to each of a plurality of first close neighbor robotic agents of the plurality of robotic agents, each of the first close neighbor robotic agents having a distance, to the first robotic agent, less than a threshold distance,

receiving, by the first robotic agent, a respective first parameter value from each of the first close neighbor robotic agents,

calculating, by the first robotic agent, a new first parameter value, the calculating comprising calculating an average of:

the first parameter value of the first robotic agent; and

the received first parameter values;

updating the first parameter value of the first robotic agent to equal the new first parameter value;

calculating, by the first robotic agent, an estimated gradient of:

the first parameter value of the first robotic agent; and

the received first parameter values;

calculating, by the first robotic agent, a resultant virtual force vector as a sum of one or more vector quantities including the estimated gradient; and

generating, by the first robotic agent, a net thrust force, on the first robotic agent, parallel to the resultant virtual force vector.

2. The method of claim 1 , further comprising setting, by a second robotic agent different from the first robotic agent, the respective first parameter value of the second robotic agent to a value received from a central controller.

3. The method of claim 2 , further comprising, moving, by the second robotic agent, in a direction along a path received by the second agent from a central controller.

4. The method of claim 1 , wherein each of the robotic agents is configured to measure a first value of an environmental parameter.

5. The method of claim 4 , wherein the calculating of the first new parameter value further comprises calculating a function of:

the average of:

the first parameter value of the first robotic agent; and

the received first parameter values; and

the first value of the environmental parameter.

6. The method of claim 4 , further comprising receiving, by the first robotic agent, a respective value of the environmental parameter from each of the first close neighbor robotic agents, wherein

the calculating of the first new parameter value further comprises calculating a function of:

the average of:

the first parameter value of the first robotic agent; and

the received first parameter values; and

the received values of the environmental parameter.

7. The method of claim 6 , wherein the function is a weighted sum of:

the average of:

the first parameter value of the first robotic agent; and

the received first parameter values; and

a magnitude of an estimated gradient in:

the first value of the environmental parameter; and

the received values of the environmental parameter.

8. The method of claim 1 , wherein:

the sending of the respective first parameter value comprises transmitting the respective first parameter value by wireless communication, and

the receiving of the respective first parameter values comprises receiving the respective first parameter values by wireless communication.

9. The method of claim 8 , wherein the threshold distance is less than or equal to a range of the wireless communication.

10. The method of claim 1 , wherein the average is a weighted average.

11. The method of claim 1 , wherein the average is a weighted average, each term of the weighted average being weighted in inverse proportion to a distance to a first close neighbor robotic agent, of the plurality of first close neighbor robotic agents, from which the received respective first parameter value was received.

12. The method of claim 1 , wherein the calculating of the first new parameter value further comprises multiplying by a cooling rate factor, the cooling rate factor being a number greater than 0.01 and less than 0.99.

13. The method of claim 1 , wherein the calculating of the first new parameter value further comprises calculating, for a first close neighbor robotic agent, of the plurality of first close neighbor robotic agents:

a distance between the first robotic agent and the first close neighbor robotic agent;

a virtual force vector corresponding to the first close neighbor robotic agent, the virtual force vector having a magnitude that is a function of the distance between the first robotic agent and the first close neighbor robotic agent, and having a direction along a straight line connecting the first robotic agent and the first close neighbor robotic agent, the virtual force vector corresponding to:

a repulsive force when the distance between the first robotic agent and the first close neighbor robotic agent is less than an equilibrium distance; and

an attractive force when the distance between the first robotic agent and the first close neighbor robotic agent is greater than the equilibrium distance.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Jan 12, 2018
From: OCEAN LAB LLC; APIUM INC.
To: APIUM INC.
Reel/Frame 045068/0370 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2017
From: MACCREADY, TYLER; RAMAKRISHNAN, SANKARAN; ZAMBRANO, THOMAS
To: OCEAN LAB, LLC
Reel/Frame 041533/0597 →
Continuity (2)
Provisional Application 62216166 · Sep 9, 2015
Related Publication 20170068243A1 · Mar 9, 2017
Cited By (2)
US 12,608,024 US 12,674,670