There are many things in life that seem disconnected, maybe because, apparently, they share nothing in common, maybe because their connection might not be evident, or simply because the bases to do so are still nonexistent. Yet, the latter is not the case anymore when you think of merging supercomputing and robotics.
On one side, supercomputing, also known as High-Performance Computing (HPC), is all about big problems, problems such as predicting if you can go to the beach next week or if you will have to carry your umbrella everywhere; problems such as designing a new vaccine that can intelligently adapt to each person; or to design the wings of a vehicle that will take you quickly from one country to another, or eventually to the moon or other planets; problems such as simulating the origins of the universe, to confirming that complex mathematical theory of everything; and ultimately even help selecting which kind of advertisement should be given to each person depending on keywords found in their emails.
Moreover, supercomputing is usually about power, about huge machines or computers made of thousands of units, consuming the amount of energy in a day that could keep a city up and running for a whole month. Yet, without such power — without supercomputing — such problems could not be solved in a reasonable time. For example, without supercomputing, we wouldn’t know if it will rain tomorrow. We wouldn’t be able to fly from Los Angeles to Bucaramanga in seven hours, and we wouldn’t be able to cure countless diseases, and extensive more examples. Ultimately, supercomputing is everywhere, in every aspect of our modern lives — ubiquitous. Well, except in robotics.
Robotics has been automatizing industrial activities, accurately aiding in surgery or space exploration like the NASA JPL rovers (ground drones) in Mars, all problems with something in common, a specific purpose and not so much need for computing power. Therefore, the two forces — supercomputing and robotics — have never actually been together. There have been some attempts to merge them somehow in order to optimize complex robotic tasks, such as simultaneous localization and mapping (SLAM), yet again attempting to exploit supercomputing’s power with only a single robot. This has been possible because a new trend has emerged: embedded computers running the same operating system and therefore potentially the same software we have in common desktop computers, such as the one you are using to read this — well, if you are using a Linux-based computer, Windows has its own share too, of course, but not as, for example, Ubuntu does.
All of this means that nowadays a robot, for example, a drone, with a computer on board can do a lot of things, and we seriously should stop using them only as flying cameras. So yes, a robot can be smarter nowadays. It can be used to detect plants that need treatment while flying over huge plantations, it can create real-time maps in areas affected by an earthquake, it can autonomously carry goods to your place, etc. So, guess what is the next possible and logical transition. If we have robots embedded with common computers, well, we can have a cluster of robots, technically a High Performance Robotic Computing (HPRC) cluster [1] — a set of robots that are, in fact, a supercomputer and not only used as traditional HPC for speedup of complex computing tasks, but also able to hierarchically share data, users, etc., so all of these smart and autonomous robots act as if they were one, thanks to the actual power from supercomputing, to masquerade independent entities into a single cooperative unit.
If a set of robots are acting as a supercomputer, that means they can transparently cooperate to execute a mission, optimize the creation of real-time mapping and localization, or scan extensive agriculture areas and tell the farmers which plants need some special caring, and do so faster and more optimally that one single robot could. They could create a communications system for areas without Internet coverage. If one fails to do its tasks within a mission, another one can be assigned to it, providing resilience. If you need more robots in the mission, you can just call the HPRC cluster master so it automatically includes the new member (scalability), and much more. With robotics merging with supercomputing, a whole new world is ahead of us, where supercomputing is truly everywhere — when we can talk about ubiquitous supercomputing.
Yet, transforming a set of robots into a supercomputer that moves autonomously, automatically uses its own power to solve complex robotic tasks, or requests computing power not found in all robots but elsewhere, maybe in the cloud, shares data and users transparently, offers scalability, resilience, cooperation, and more importantly can be used for anything, from entertainment to precision agriculture and all kind of applications, a new technology is required: The ARCHADE [2].
The ARCHADE is a ubiquitous supercomputing framework and middleware that combines HPC, HPRC, IoT devices (e.g. sensor networks), and people into a single system. It is a middleware, which means it sits in between two layers. First, a supercomputing infrastructure — for example, a set of robots (HPRC cluster) — interacting with a traditional supercomputer and second, mission software — for example, detecting plants needing water in a large plantation. Also, it is a framework because those using The ARCHADE won’t have to care about the underlying supercomputing infrastructure and rather can focus on writing the mission software. So to do so, The ARCHADE comes with a set of libraries (API) and templates, all part of the framework, so you can use your robotic supercomputer for any mission you want. Also, it deploys your supercomputing infrastructure automatically [3].
The technology has been used for a set of missions and applications. A demo simulator called Tigers VS Hunters [2], where two rovers, two drones, a supercomputer, and one pilot cooperate to detect hunters in an area found with tigers and protect the tigers from harm. A simulation of hundreds of aircraft that while flying their own trajectories, temporarily join to fly as an HPRC cluster of aircraft and, therefore, save fuel [4]. A 2-entities HPRC cluster, where a rover follows another autonomously while scanning an area. The same two rovers cooperating to crack a Wi-Fi router, running software being executed at both rovers, at the same time. Furthermore, very soon The ARCHADE will be used as the core technology in three projects: a precision agriculture mission to optimize the production of avocado hash, banana, and cocoa in Colombia; a new enhanced version of laser-tag, where teams made of autonomous robots and humans compete against each other; and for a home security application.
The joining of the two giant forces — supercomputing and robotics — is one that can create all kinds of new applications, only bound by what our imagination can reach, a new exciting field of High-Performance Robotic Computing and the vehicle to bring supercomputing everywhere is now here, The ARCHADE. So see, some things might be disconnected by default. Supercomputing and robotics have different backgrounds, different profiles, different scopes, but now they are not disconnected anymore.
These findings are described in the article entitled The ARCHADE: Ubiquitous Supercomputing for robotics. Part I: Philosophy, recently published in the journal Robotics and Autonomous Systems.
References:
- Leonardo Camargo-Forero, Pablo Royo & Xavier Prats. 2018 (Sep). Towards High Performance Robotic Computing. Robotics and Autonomous Systems, Vol 107. pp. 167-181. DOI: https://doi.org/10.1016/j.robot.2018.05.011.
- Leonardo Camargo-Forero, Pablo Royo & Xavier Prats. 2019 (Apr). The ARCHADE: Ubiquitous Supercomputing for robotics. Part I: Philosophy. Robotics and Autonomous Systems. Vol 114. pp. 187-198. DOI: https://doi.org/10.1016/j.robot.2019.01.006.
- Leonardo Camargo-Forero, Pablo Royo & Xavier Prats. 2017. On-board high performance computing for multi-robot aerial systems. Aerial Robots – Aerodynamics, Control and Applications, ISBN: 978-953-51-5357-3. InTech, 1-19
- Leonardo Camargo-Forero, Pablo Royo & Xavier Prats. 2018 (Sep). In: Proceedings of the 37th IEEE/AIAA Digital Avionics Systems (DASC) Conference. London (UK).