Image Credit: Keshab Patra
The following article was originally written by Dennis C. Joy and published here.
Novel algorithms allow real-time monitoring and dynamic task allocation to significantly improve cooperation among autonomous robots
Humans have built mechanical devices to overcome their limitations since the dawn of civilization. From the simple water wheels that were used to harness the power of flowing water, to weapons of war like the trebuchet or mangonel, that used mechanical power to hurl large boulders at enemies, humans have always resorted to machines. The Industrial Revolution and the advent of assembly line production saw robots replacing humans in various tasks in manufacturing and defence. Today, automated robots have become ubiquitous, performing tasks that may be mundane, tricky or dangerous for a human – from cleaning our dishes and building cars to clearing land mines and even exploring the cosmos.
As the complexity of tasks is increasing, multiple robots with the same features or each with a unique set of features are often deployed to perform a single task. In such tasks involving cooperation, various robots involved in performing them are required to coordinate their moves efficiently. Keshab Patra at the Indian Institute of Technology Bombay (IIT Bombay), under the guidance of Prof. Anirban Guha and Prof. Arpita Sinha, has been studying such cooperative robots. In a recently published study, Keshab and team have developed a novel technique that improves the efficiency of such robots, by helping them communicate with each other in a more efficient manner than earlier.
In their new study, the IIT Bombay team proposes three novel algorithms that help robots determine their task capability in real-time, allowing them to dynamically allocate tasks based on their individual strengths and limitations. “Imagine two similar robots carrying an object. Sometimes because of small changes in the environment, like an uneven floor or the shape of the object, one robot may have a better grip on the object than the other. Our algorithms help identify these changes and make real-time adjustments to improve performance,” explains Keshab. The algorithm identifies less capable robots, thereby enabling task reallocation or determining the number of required robots for efficient utilisation of the robot group.
The algorithms, residing on the robots and a central monitoring computer, collect data from each of the robots in the group in real-time to make decisions. The first algorithm, called TaskCapability, assesses each of the robots in the group and determines various parameters, like grip strength and stability, and assigns a value to them. Next, the second algorithm, called Online Task Capability, compares the parameters with other robots to determine which of the robots are underperforming. Finally, the third algorithm named Online Task Allocator, uses the information from the other two algorithms to determine how many robots are needed and what task each should perform.
The set of three algorithms ensures a balanced workflow where each robot contributes according to its ability, leading to an overall boost in productivity. Moreover, the real-time communication between various robots also helps to minimise the chance of errors and robot collisions, enhancing their cooperative work. Conventional algorithms, on the other hand, generally use pre-programmed robots, wherein the path and performance of the robot are programmed even before it starts the task, with very few real-time manipulations. The algorithms that do allow for dynamic task allocation also rely on complex calculations, increasing their computation time.
The team tested their new method on two well-known industrial robots – UR5 and Franka-Emika Panda. They demonstrated that the new algorithm was much faster at performing tasks than conventionally used algorithms, like Skuric and Sasaki. “Our algorithms performed 15 times faster than Skuric and 8 times faster than Sasaki when performing the same task,” exclaims Keshab. The team verified the efficiency of their algorithm with four robots in the group. An increase in the number of robots in a group could affect the performance of the third algorithm, which resides on a central computer, because communication between the robots and the computer might be delayed. However, according to Keshab, “The computational data from our four robots group study indicates we can scale it to 2-3 times without any changes in the algorithms and real-time performances.”
The new algorithm also significantly reduced the computation time of the robots by 85%, enabling real-time adjustments in cooperative operation. “Our algorithms are truly innovative compared to conventionally used ones because those (conventional) are much more computationally intensive. This makes our method much faster and more efficient in task allocation in response to real-time changes,” remarks Prof. Guha.
The new algorithms, if implemented, could significantly boost the performance of cooperative robots by speeding up the task and removing inefficient and redundant robots from the task. Imagine this in a context such as a car assembly line manufacturing, where robots work meticulously together to assemble parts of a vehicle. Each robot has unique capabilities, and to maximise efficiency it is essential to smartly distribute tasks, optimising each robot’s unique abilities.
Utilising an innovative real-time algorithm like the one proposed in the study, robots can determine and adapt their task executions according to live changes in the circumstances. Providing robots with the capability to dynamically determine their task capabilities and allocate tasks accordingly could revolutionise how tasks are assigned and performed in complex automated machines and systems.
**********************************************************
The original article academic article titled Online Capability Based Task Allocation of Cooperative Manipulators was written by IIT Bombay’s researchers and was published in the Journal of Intelligent & Robotic Systems.
The original paper can be found here.