With all of the discussion happening around collaborative robots (cobots) there is, of course, a lot of talk of how these robots will interact (and possibly replace) humans in the workspace. One less discussed aspect is how these robots will collaborate with each other. But if smart factories continue to bring in cobots and the robots themselves take on increasingly more complex tasks, centralized systems will become increasingly inefficient and distributed robotics will become more critical.
“In the last 15 or so years one of the big trends in AI has been the move toward distributed AI or multi-agent systems,” Maria Gini, distinguished professor at the Department of Computer Science and Engineering at the University of Minnesota, told Design News . “These are systems in which instead of just one entity that is intelligent and makes decisions you think about multiple entities, – such as robots and programs – that somehow have a task to do and accomplish it by some form of collaboration and communication.”
|Maria Gini, renowned AI and robotics expert and upcoming ESC keynote speaker . (Image source: University of Minnesota College of Science and Engineering)|
Gini, a keynote speaker at the upcoming 2017 Embedded Systems Conference (ESC) in Minneapolis, has spent the bulk of her 30 years as an artificial intelligence and robotics researcher working in the field of distributed robotics. “I really focus more and more on how to build communities and teams of robots and on the competitive – the game theory aspects – of how they can work together.”
For Gini, the greatest advantage distributed systems offer is robustness. “If I've built my [distributed] system properly, if one robot breaks other robots can still do the work. Whereas if I have a central system then if one robot breaks maybe the system doesn't know and if it does know it has to reallocate everything. Centralized systems produce better quality solutions, but they aren't as robust to failures. A distrubuted system is more resilient.”
What makes distributed robotics particularly challenging from an AI perspective, according to Gini, is that engineers have to think of all the different ways that robots could interact and react to each other. More than simply handing off tasks from one robot to another like an assembly line, distributed robots may be called upon to course correct errors, pick up slack workloads for each other, and even figure out how to most quickly and efficiently accomplish a task.
“Imagine I have to clean a building and I have a team of people to do it with,” Gini said. “[With humans] I could say to each of them, 'Run wherever you want and pick up garbage' and after some random amount of time the building will be clean. It works, but there's no communication.” Gini said a lot of robotics is approached this same way, with each robot working independently and never taking advantage of the possibility of communication.
But with that communication comes a lot of questions in regards to process and implementation. Should all of the robots in a space be communicating