Science of Intelligence

INTERVIEW: Meet the Kilobots! Mohsen Raoufi introduces the SCIoI Swarm Robotics lab

Those who’ve been to our Swarm Robotics Lab have certainly seen the multitude of mini-robots lying around the tables. Those are SCIoI’s Kilobots, used by our researchers to study swarm behavior. But what exactly do they do? And how do they work? We had a chat with our researcher Mohsen Raoufi (Project 27), who shed some light on the “life” and secrets of these interesting robots.  

Why does SCIoI study swarms of robots?
I think we first need to take a step back to a more basic question: why do we use robots, in general, to understand intelligence? SCIoI follows Richard Feynman’s idea, according to which “what I cannot create, I do not understand.”Therefore, we create synthetic systems to understand intelligence regardless of whether the system is a humanoid robot, a robotic arm, a fish-like robot, or a group of many relatively simple robots. But why swarms? What do they tell us about intelligence? Collective systems (such as ant colonies, flocks of birds, or schools of fish) show intelligent behaviour in that they are able to solve relatively complex problems. For example, they’ll find a route from their nest to a food source, or escape from predators. In other words, they’ll do things that are beyond the capability of each single individual. Robotic swarms are a synthetic system that can exhibit this form of behavior, and we study them to better understand collective intelligence in nature.

How do Kilobots compare with other robots? And how do they communicate? 
They are usually very naïve and simple, as opposed for example to the more complex humanoid robots. Swarm robots are designed very minimally because their advantages lie in their numbers rather than in their individual performance. This also applies to their sensors, processor, power supply, and actuators. In that sense, their limitations resemble biological swarms, which usually have limited information about their surrounding environment and neighbours, and a relatively low processing capacity.

How do they relate and communicate with each other?
We assume that the interaction network of swarm robots is decentralized, meaning that there is no central component controlling the inter-agent flow of information. The lack of such a central component is the reason why they can only communicate locally to their neighbours. Furthermore, because their power supply is low-capacity, their communication means cannot consume much energy, and consequently, their communication range is short. As a result, each robot can only interact only with a few robots in their surroundings. This decentralized network and the limited number of neighbours are regular features observed in biological swarms.

Can they see?
There are various communication means for different swarm robots; Kilobots, for instance, use only one infra-red (IR) sensor and receive data from their neighbours that are not further than 10cm away from them. Thymio robots, however, have more powerful IR sensors besides a camera. Other swarm robot platforms have speakers/microphones, Bluetooth, WiFi, and a camera. Even though some of these robots are equipped with cameras, the computational and energy limitations are a bottleneck to perform overly complicated tasks on their processor. So, technically, yes, they can see, but what they can process from what they see usually does not exceed the basic image processing.

Can you describe one of your experiments with Kilobots?
An experiment we are currently working on regards collective estimation. A group of Kilobots is supposed to measure the light intensity of the environment and estimate the average lightness of the arena. The estimation of the light intensity can later help the collective to make the decision, for example, to leave the arena because there’s too much light, or to stay and build a nest (just in an imaginary nest selection scenario!) An individual Kilobot needs to explore, measure, and discover the arena to make an accurate estimation. A swarm of Kilobots, however, can quickly estimate the environment accurately.

The idea is similar to the so-called „wisdom of the crowd“ effect, where each individual brings some imperfect piece of information to the collective. Although each piece of information may not be accurate, the average of all these imperfect pieces can be significantly more accurate. So, if robots interact with each other and share their information with their neighbours, they can update their estimation to a more accurate one. In an abstract sense, being a member of a collective can provide more accuracy for individuals for their estimation, and thus their decision.

How many Kilobots do we have, and how many do you use in the experiments?
We recently unpacked new Kilobots, which means we currently have about 150. Among them are always a few that need to be repaired, reprogrammed, or generally maintained. So, realistically, not all 100% of them are always available at the same time, but we try to keep almost all of them active.

We are now in the stage of running tests for different sections of the experiment rather than working on the complete experimental scenario, so we do not need to run a full-scale experiment. And since each robot added to the experiment increases the workload, we now use just about 20 Kilobots at a time in order to keep the experiment as simple as possible. But we are planning to use around 100 Kilobots for the final stages of our experiment.

What can Kilobots tell us about collective intelligence?
That’s a great question, to which I am not sure I can give definitive answers. But when working with Kilobots, many more questions come up: My top candidates are:

–       Can we obtain intelligent behaviour at the collective level while the individual-level intelligence/capabilities are so restricted? Would the collective behave intelligently no matter how much “non-intelligent” the individuals are? Or is there any minimum requirement for individual-level intelligence?

–         What is the role of communication networks on collective intelligence? What happens if we break the connectivity of the communication network? Would the collective continue to behave in an intelligent way?

–         What makes a Kilobot swarm stupid? Does it hold for collectives in general?

The list goes on, but the answers are yet to come!

 

—— SRS