SYSTEMS AND METHODS FOR CLOUD EDGE TASK PERFORMANCE AND COMPUTING USING ROBOTS
Systems and methods for cloud edge task performance and computing using robots are disclosed herein. According to at least one non-limiting exemplary embodiment, a cloud server may utilize a robotic network, comprising a plurality of robots, communicatively coupled to the cloud server to collect data, perform physical tasks, perform a computational function, or a combination thereof in a distributed fashion.
1 . A non-transitory computer readable storage medium having computer readable instructions stored thereon, that when executed by at least one controller, configure the at least one controller to,
receive an operator input comprising instructions for a robot network, the robot network comprising a plurality of independently operable robots that are communicatively coupled to each other in an environment;
transmit the instructions to at least a first sub-set of robots in the robot network such that the first sub-set of robots execute the instructions in the environment, the instructions comprising a plurality of tasks to be performed by the first sub-set of robots such that a respective task of the plurality of tasks is assigned to a respective robot of the first sub-set of robots based on bandwidth of the respective robot;
receive data collected by the first sub-set of robots during simultaneous performance of the plurality of tasks by the first sub-set of robots in the environment; and
generate an operator output based on the data collected by the first sub-set of robots.
2 . The non-transitory computer readable storage medium of claim 1 , wherein the at least one controller is further configurable to execute the computer readable instructions to,
transmit the instructions to the first sub-set of robots in the robot network only if response to the operator input is not previously stored in the memory.
3 . The non-transitory computer readable storage medium of claim 1 , wherein the transmission of the instructions to the first sub-set of robots configures the respective robot to,
navigate from a first location to a second location and collect data on one or more items at the second location, and
transmit the data collected on the one or more items to the at least one controller.
4 . The non-transitory computer readable storage medium of claim 1 , wherein the transmission of the instructions to the first sub-set of robots configures the respective robot to,
retrieve one or more items from a designated pick-up location and drop the one or more items at a designated drop-off location, and
transmit data to the at least one controller simultaneously as the one or more items are relocated from the pick-up location to the drop-off location.
5 . The non-transitory computer readable storage medium of claim 1 , wherein the transmission of the instructions to the first sub-set of robots configures the respective robot to,
receive a plurality of operator inputs, each of the plurality of operator inputs comprises a plurality of tasks to be performed by set of the plurality of robots.
6 . The non-transitory computer readable storage medium of claim 5 , wherein the respective robot of the plurality of robots performs the respective task in the plurality of tasks only if the respective task is not previously performed by a different robot assigned the respective task via a respective operator input.
7 . The non-transitory computer readable storage medium of 5 , wherein each robot updates other robots in the plurality of robots upon completion of the respective task assigned to the respective robot.
8 . The non-transitory computer readable storage medium of 1 , wherein
the respective task of the plurality of tasks are assigned based at least on functionality and capabilities of the respective robot, and
the plurality of tasks include at least one of data collection, physical tasks and computational functions.
9 . A method for distributing tasks, comprising:
receiving an operator input comprising instructions for a robot network, the robot network comprising a plurality of independently operable robots that are communicatively coupled to each other in an environment;
transmitting the instructions to at least a first sub-set of robots in the robot network such that the first sub-set of robots execute the instructions in the environment, the instructions comprising a plurality of tasks to be performed by the first sub-set of robots such that a respective task of the plurality of tasks is assigned to a respective robot of the first sub-set of robots based on bandwidth of the respective robot;
receiving data collected by the first sub-set of robots during simultaneous performance of the plurality of tasks by the first sub-set of robots in the environment; and
generating an operator output based on the data collected by the first sub-set of robots.
10 . The method of claim 9 , further comprising:
transmitting the instructions to the first sub-set of robots in the robot network only if response to the operator input is not previously stored in the memory.
11 . The method of claim 9 , further comprising:
navigating from a first location to a second location and collect data on one or more items at the second location; and
transmitting the data collected on the one or more items to at least one controller.
12 . The method of claim 9 , further comprising:
retrieving one or more items from a designated pick-up location and drop the one or more items at a designated drop-off location; and
transmitting data to the at least one controller simultaneously as the one or more items are relocated from the pick-up location to the drop-off location.
13 . The method of claim 9 , wherein the transmission of the instructions to the first sub-set of robots configures the respective robot to,
receive a plurality of operator inputs, each of the plurality of operator inputs comprises a plurality of tasks to be performed by set of the plurality of robots.
14 . The method of claim 13 , wherein the respective robot of the plurality of robots performs the respective task in the plurality of tasks only if the respective task is not previously performed by a different robot assigned the respective task via a respective operator input.
15 . The method of claim 13 , wherein each robot updates other robots in the plurality of robots upon completion of the respective task assigned to the respective robot.
16 . A system for distributing tasks, comprising:
a memory having computer readable instructions stored thereon; and
at least one controller configurable to execute the computer readable instructions to,
receive an operator input comprising instructions for a robot network, the robot network comprising a plurality of independently operable robots that are communicatively coupled to each other in an environment;
transmit the instructions to at least a first sub-set of robots in the robot network such that the first sub-set of robots execute the instructions in the environment, the instructions comprising a plurality of tasks to be performed by the first sub-set of robots such that a respective task of the plurality of tasks is assigned to a respective robot of the first sub-set of robots based on bandwidth of the respective robot;
receive data collected by the first sub-set of robots during simultaneous performance of the plurality of tasks by the first sub-set of robots in the environment; and
generate an operator output based on the data collected by the first sub-set of robots.
17 . The system of claim 16 , wherein the transmission of the instructions to the first sub-set of robots configures the respective robot to,
receive a plurality of operator inputs, each of the plurality of operator inputs comprises a plurality of tasks to be performed by set of the plurality of robots.
18 . The system of claim 17 , wherein the respective robot of the plurality of robots performs the respective task in the plurality of tasks only if the respective task is not previously performed by a different robot assigned the respective task via a respective operator input.
19 . The system of claim 17 , wherein each robot updates other robots in the plurality of robots upon completion of the respective task assigned to the respective robot.
20 . The system of claim 16 , wherein
the respective task of the plurality of tasks are assigned based at least on functionality and capabilities of the respective robot, and
the plurality of tasks include at least one of data collection, physical tasks and computational functions.